ropav 0.1.7 → 0.1.9
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.
- package/README.md +5 -4
- package/dist/ancestry.js +136 -0
- package/dist/calendar.css +184 -0
- package/dist/calendar.js +739 -0
- package/dist/calendar2.js +37 -0
- package/dist/chevron-left.js +12 -0
- package/dist/color-picker.js +38 -88
- package/dist/combobox.css +251 -0
- package/dist/combobox.js +410 -0
- package/dist/components/calendar/calendar.d.ts +30 -0
- package/dist/components/calendar/calendarBehavior.d.ts +49 -0
- package/dist/components/calendar/index.d.ts +3 -0
- package/dist/components/calendar/index.js +3 -0
- package/dist/components/calendar/types.d.ts +56 -0
- package/dist/components/calendar/useCalendar.d.ts +24 -0
- package/dist/components/color-picker/useColorPickerDrag.d.ts +1 -1
- package/dist/components/color-picker/useColorPickerSaturation.d.ts +1 -1
- package/dist/components/color-picker/useColorPickerSlider.d.ts +1 -1
- package/dist/components/combobox/combobox.d.ts +29 -0
- package/dist/components/combobox/comboboxModel.d.ts +4 -0
- package/dist/components/combobox/index.d.ts +3 -0
- package/dist/components/combobox/index.js +2 -0
- package/dist/components/combobox/types.d.ts +43 -0
- package/dist/components/combobox/useCombobox.d.ts +45 -0
- package/dist/components/date-picker/date-picker.d.ts +33 -0
- package/dist/components/date-picker/datePickerModel.d.ts +10 -0
- package/dist/components/date-picker/index.d.ts +4 -0
- package/dist/components/date-picker/index.js +2 -0
- package/dist/components/date-picker/types.d.ts +59 -0
- package/dist/components/date-picker/useDatePicker.d.ts +29 -0
- package/dist/components/date-picker/useDatePickerValueState.d.ts +21 -0
- package/dist/components/dropdown-menu/dropdown-menu-content.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdown-menu-sub-content.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdown-menu.d.ts +2 -2
- package/dist/components/dropdown-menu/dropdownMenuContext.d.ts +7 -18
- package/dist/components/dropdown-menu/dropdownMenuInteraction.d.ts +3 -3
- package/dist/components/dropdown-menu/dropdownMenuInteractionTypes.d.ts +58 -29
- package/dist/components/dropdown-menu/useDropdownMenuDataController.d.ts +4 -3
- package/dist/components/dropdown-menu/useDropdownMenuDataRegistration.d.ts +6 -4
- package/dist/components/dropdown-menu/useDropdownMenuPresentation.d.ts +3 -4
- package/dist/components/dropdown-menu/useDropdownMenuTargetBindings.d.ts +5 -5
- package/dist/components/dropzone/dropzone.d.ts +31 -0
- package/dist/components/dropzone/dropzoneModel.d.ts +16 -0
- package/dist/components/dropzone/index.d.ts +3 -0
- package/dist/components/dropzone/index.js +2 -0
- package/dist/components/dropzone/types.d.ts +56 -0
- package/dist/components/dropzone/useDropzone.d.ts +25 -0
- package/dist/components/file-input/file-input.d.ts +29 -0
- package/dist/components/file-input/index.d.ts +3 -0
- package/dist/components/file-input/index.js +2 -0
- package/dist/components/file-input/types.d.ts +37 -0
- package/dist/components/file-input/useFileInput.d.ts +15 -0
- package/dist/components/floating/index.js +1 -1
- package/dist/components/floating/useFloatingPosition.d.ts +1 -13
- package/dist/components/floating/useFloatingTargetLifecycle.d.ts +32 -0
- package/dist/components/floating/useHoverDisclosure.d.ts +10 -0
- package/dist/components/hover-card/hover-card.d.ts +25 -0
- package/dist/components/hover-card/index.d.ts +3 -0
- package/dist/components/hover-card/index.js +2 -0
- package/dist/components/hover-card/types.d.ts +45 -0
- package/dist/components/hover-card/useHoverCard.d.ts +22 -0
- package/dist/components/hover-card/useHoverCardDisclosure.d.ts +19 -0
- package/dist/components/multi-select/index.d.ts +3 -0
- package/dist/components/multi-select/index.js +2 -0
- package/dist/components/multi-select/multi-select.d.ts +30 -0
- package/dist/components/multi-select/multiSelectModel.d.ts +3 -0
- package/dist/components/multi-select/types.d.ts +49 -0
- package/dist/components/multi-select/useMultiSelect.d.ts +46 -0
- package/dist/components/number-input/useNumberInput.d.ts +1 -3
- package/dist/components/popover/usePopoverBindings.d.ts +3 -6
- package/dist/components/scroll-area/useScrollArea.d.ts +4 -4
- package/dist/components/scroll-area/useScrollAreaAttributes.d.ts +3 -3
- package/dist/components/scroll-area/useScrollAreaPointer.d.ts +1 -1
- package/dist/components/segmented-control/index.d.ts +3 -0
- package/dist/components/segmented-control/index.js +2 -0
- package/dist/components/segmented-control/segmented-control.d.ts +26 -0
- package/dist/components/segmented-control/types.d.ts +47 -0
- package/dist/components/segmented-control/useSegmentedControl.d.ts +15 -0
- package/dist/components/select/useSelect.d.ts +31 -19
- package/dist/components/slider/useRangeSlider.d.ts +1 -1
- package/dist/components/slider/useRangeSliderPointer.d.ts +1 -1
- package/dist/components/slider/useSlider.d.ts +1 -1
- package/dist/components/slider/useSliderPointer.d.ts +15 -0
- package/dist/components/slider/useSliderValueState.d.ts +1 -0
- package/dist/components/tags-input/index.d.ts +3 -0
- package/dist/components/tags-input/index.js +2 -0
- package/dist/components/tags-input/tags-input.d.ts +27 -0
- package/dist/components/tags-input/tagsInputModel.d.ts +12 -0
- package/dist/components/tags-input/types.d.ts +37 -0
- package/dist/components/tags-input/useTagsInput.d.ts +23 -0
- package/dist/components/toolbar/index.d.ts +3 -0
- package/dist/components/toolbar/index.js +2 -0
- package/dist/components/toolbar/toolbar.d.ts +24 -0
- package/dist/components/toolbar/types.d.ts +12 -0
- package/dist/components/toolbar/useToolbar.d.ts +7 -0
- package/dist/components/tooltip/useTooltipTargetBindings.d.ts +12 -0
- package/dist/date-picker.css +49 -0
- package/dist/date-picker.js +811 -0
- package/dist/dialog.js +9 -20
- package/dist/direction.js +6 -0
- package/dist/dropdown-menu.css +21 -3
- package/dist/dropdown-menu.js +341 -261
- package/dist/dropzone.css +135 -0
- package/dist/dropzone.js +431 -0
- package/dist/file-input.css +135 -0
- package/dist/file-input.js +198 -0
- package/dist/focusNavigation.js +12 -6
- package/dist/hover-card.css +80 -0
- package/dist/hover-card.js +402 -0
- package/dist/index.d.ts +10 -0
- package/dist/index.js +15 -3
- package/dist/internal/composables/useOverlayLayer.d.ts +12 -0
- package/dist/modal.js +1 -1
- package/dist/multi-select.css +316 -0
- package/dist/multi-select.js +481 -0
- package/dist/nativeChoice.js +169 -0
- package/dist/number-input.css +18 -18
- package/dist/number-input.js +36 -38
- package/dist/pagination.js +1 -10
- package/dist/pointerSession.js +130 -0
- package/dist/popover.css +21 -3
- package/dist/popover.js +37 -62
- package/dist/scroll-area.js +52 -62
- package/dist/segmented-control.css +176 -0
- package/dist/segmented-control.js +382 -0
- package/dist/select.css +50 -48
- package/dist/select.js +121 -271
- package/dist/slider.css +78 -69
- package/dist/slider.js +161 -145
- package/dist/tags-input.css +197 -0
- package/dist/tags-input.js +380 -0
- package/dist/toolbar.css +15 -0
- package/dist/toolbar.js +143 -0
- package/dist/tooltip.js +35 -30
- package/dist/useEditableOptionList.js +216 -0
- package/dist/useFlatOptionCollection.js +134 -0
- package/dist/useFloatingPosition.js +4 -160
- package/dist/useFloatingTargetLifecycle.js +127 -0
- package/dist/useFormControl.js +1 -0
- package/dist/{floating.js → useHoverDisclosure.js} +338 -421
- package/dist/useNativeChoiceTransaction.js +46 -0
- package/dist/useNativeFileSelection.js +86 -0
- package/dist/useOverlayZIndex.js +246 -15
- package/dist/utils/date.d.ts +13 -0
- package/dist/utils/dateAvailability.d.ts +7 -0
- package/dist/utils/dom/ancestry.d.ts +1 -0
- package/dist/utils/dom/direction.d.ts +2 -0
- package/dist/utils/dom/files.d.ts +3 -0
- package/dist/utils/dom/focusNavigation.d.ts +4 -1
- package/dist/utils/dom/nativeChoice.d.ts +17 -0
- package/dist/utils/dom/pointerSession.d.ts +20 -0
- package/dist/utils/dom/scroll.d.ts +2 -1
- package/dist/utils/optionFilter.d.ts +5 -0
- package/docs/public-floating-api.md +7 -4
- package/docs/public-styles-api.md +28 -12
- package/package.json +68 -40
- package/src/styles/_mixins.scss +26 -0
- package/src/styles/styles-manifest.json +1 -2
- package/dist/components/floating/hoverDisclosureInteractionModel.d.ts +0 -42
- package/dist/components/floating/useHoverDisclosureInteractions.d.ts +0 -32
- package/dist/components/floating/useHoverDisclosureOpenState.d.ts +0 -25
- package/dist/components/floating/useHoverDisclosureTargetBinding.d.ts +0 -27
- package/dist/components/select/useSelectNativeControl.d.ts +0 -9
- package/dist/components/select/useSelectNativeValue.d.ts +0 -9
- package/dist/pointer.js +0 -9
- package/dist/utils/dom/pointer.d.ts +0 -2
- package/docs/code-architecture.md +0 -118
package/dist/slider.js
CHANGED
|
@@ -11,8 +11,8 @@ import { o as splitCompatibilityAttributes, t as composeEventHandlers } from "./
|
|
|
11
11
|
import { n as mergeAriaIdRefs } from "./aria.js";
|
|
12
12
|
import { t as useControlState } from "./useControlState.js";
|
|
13
13
|
import { t as toCssLength } from "./css.js";
|
|
14
|
-
import { n as isMatchingPointer, t as getPointerId } from "./pointer.js";
|
|
15
14
|
import { t as createRafScheduler } from "./rafScheduler.js";
|
|
15
|
+
import { t as createPointerSession } from "./pointerSession.js";
|
|
16
16
|
import { t as getFloatingOffsetStyle } from "./floatingOffset.js";
|
|
17
17
|
import { n as resolveTooltipColorStyleWithContrast, r as useDelayedOpen, t as tooltip_default } from "./tooltip.js";
|
|
18
18
|
import { applyVShow, child, computed, createComponent, createFor, createIf, createSlot, createTemplateRefSetter, defineVaporComponent, extend, next, nextTick, on, onBeforeUnmount, onMounted, ref, renderEffect, setClass, setDynamicProps, setInsertionState, setProp, setStyle, setText, template, toDisplayString, toRef, txt, unref, useId, useSlots, watch } from "vue";
|
|
@@ -112,6 +112,63 @@ function getSliderTooltipAnchor(tooltip) {
|
|
|
112
112
|
return typeof tooltip === "object" && tooltip.anchor === "pointer" ? "pointer" : "thumb";
|
|
113
113
|
}
|
|
114
114
|
//#endregion
|
|
115
|
+
//#region src/components/slider/useSliderPointer.ts
|
|
116
|
+
function readPointerGeometry(track, orientation) {
|
|
117
|
+
const vertical = orientation === "vertical";
|
|
118
|
+
const thumbTravelRect = track.querySelector(".rp-slider__thumb")?.getBoundingClientRect();
|
|
119
|
+
const rect = thumbTravelRect && (vertical ? thumbTravelRect.height > 0 : thumbTravelRect.width > 0) ? thumbTravelRect : track.getBoundingClientRect();
|
|
120
|
+
const length = vertical ? rect.height : rect.width;
|
|
121
|
+
if (length <= 0) return;
|
|
122
|
+
return {
|
|
123
|
+
length,
|
|
124
|
+
start: vertical ? rect.bottom : rect.left,
|
|
125
|
+
vertical
|
|
126
|
+
};
|
|
127
|
+
}
|
|
128
|
+
function getPointerValue(event, geometry, bounds, step) {
|
|
129
|
+
const pointerPosition = geometry.vertical ? event.clientY : event.clientX;
|
|
130
|
+
const ratio = clamp((geometry.vertical ? geometry.start - pointerPosition : pointerPosition - geometry.start) / geometry.length, 0, 1);
|
|
131
|
+
return normalizeSliderValue(bounds.min + ratio * (bounds.max - bounds.min), bounds.min, bounds.max, step);
|
|
132
|
+
}
|
|
133
|
+
function useSliderPointer(options) {
|
|
134
|
+
function refreshGeometry(currentSession) {
|
|
135
|
+
const geometry = readPointerGeometry(currentSession.track, options.orientation());
|
|
136
|
+
if (!geometry) return false;
|
|
137
|
+
currentSession.geometry = geometry;
|
|
138
|
+
return true;
|
|
139
|
+
}
|
|
140
|
+
function updateFromPointer(event, currentSession) {
|
|
141
|
+
options.updateValue(getPointerValue(event, currentSession.geometry, options.bounds.value, options.step.value));
|
|
142
|
+
}
|
|
143
|
+
const pointerSession = createPointerSession({
|
|
144
|
+
onStart(event, currentSession) {
|
|
145
|
+
event.preventDefault();
|
|
146
|
+
options.inputRef.value?.focus({ preventScroll: true });
|
|
147
|
+
updateFromPointer(event, currentSession);
|
|
148
|
+
},
|
|
149
|
+
onUpdate: updateFromPointer,
|
|
150
|
+
refreshGeometry
|
|
151
|
+
});
|
|
152
|
+
function onPointerDown(event) {
|
|
153
|
+
return pointerSession.start(event, () => {
|
|
154
|
+
if (options.disabled()) return;
|
|
155
|
+
const track = event.currentTarget;
|
|
156
|
+
if (!track) return;
|
|
157
|
+
const geometry = readPointerGeometry(track, options.orientation());
|
|
158
|
+
if (!geometry) return;
|
|
159
|
+
return {
|
|
160
|
+
state: {
|
|
161
|
+
geometry,
|
|
162
|
+
track
|
|
163
|
+
},
|
|
164
|
+
target: track
|
|
165
|
+
};
|
|
166
|
+
});
|
|
167
|
+
}
|
|
168
|
+
onBeforeUnmount(pointerSession.stop);
|
|
169
|
+
return { onPointerDown };
|
|
170
|
+
}
|
|
171
|
+
//#endregion
|
|
115
172
|
//#region src/components/slider/useSliderPointerPreview.ts
|
|
116
173
|
function getPreviewRect(track, vertical) {
|
|
117
174
|
const travelRect = track.querySelector(".rp-slider__travel")?.getBoundingClientRect();
|
|
@@ -122,9 +179,7 @@ function useSliderPointerPreview(options) {
|
|
|
122
179
|
const dragging = ref(false);
|
|
123
180
|
const previewAvailable = ref(false);
|
|
124
181
|
const previewValue = ref(options.initialValue);
|
|
125
|
-
let
|
|
126
|
-
let dragPointerId;
|
|
127
|
-
let dragTrack = null;
|
|
182
|
+
let disposing = false;
|
|
128
183
|
let pendingPreview;
|
|
129
184
|
const previewScheduler = createRafScheduler(applyScheduledPreview, () => pendingPreview?.track.ownerDocument.defaultView);
|
|
130
185
|
function updateFromPointer(pointer, track) {
|
|
@@ -158,43 +213,36 @@ function useSliderPointerPreview(options) {
|
|
|
158
213
|
previewScheduler.cancel();
|
|
159
214
|
pendingPreview = void 0;
|
|
160
215
|
}
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
216
|
+
const pointerSession = createPointerSession({
|
|
217
|
+
endUpdate: "event",
|
|
218
|
+
onStart(event, track) {
|
|
219
|
+
cancelScheduledPreview();
|
|
220
|
+
dragging.value = true;
|
|
221
|
+
updateFromPointer(event, track);
|
|
222
|
+
},
|
|
223
|
+
onStop() {
|
|
224
|
+
dragging.value = false;
|
|
225
|
+
if (!disposing) options.onStateChange();
|
|
226
|
+
},
|
|
227
|
+
onUpdate(event, track) {
|
|
228
|
+
if (updateFromPointer(event, track) && event.type === "pointermove") options.onStateChange();
|
|
229
|
+
}
|
|
230
|
+
});
|
|
169
231
|
function onPointerMove(event) {
|
|
170
|
-
if (dragging.value
|
|
232
|
+
if (dragging.value) return;
|
|
171
233
|
const track = event.currentTarget;
|
|
172
234
|
if (track) schedulePreview(event, track);
|
|
173
235
|
}
|
|
174
|
-
function onWindowPointerMove(event) {
|
|
175
|
-
if (!isMatchingPointer(event, dragPointerId)) return;
|
|
176
|
-
if (dragTrack) schedulePreview(event, dragTrack);
|
|
177
|
-
}
|
|
178
|
-
function onPointerEnd(event) {
|
|
179
|
-
if (!isMatchingPointer(event, dragPointerId)) return;
|
|
180
|
-
cancelScheduledPreview();
|
|
181
|
-
if (dragTrack) updateFromPointer(event, dragTrack);
|
|
182
|
-
dragging.value = false;
|
|
183
|
-
removeDragListeners();
|
|
184
|
-
options.onStateChange();
|
|
185
|
-
}
|
|
186
236
|
function onPointerDown(event) {
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
dragView?.addEventListener("pointercancel", onPointerEnd);
|
|
197
|
-
return true;
|
|
237
|
+
return pointerSession.start(event, () => {
|
|
238
|
+
if (options.disabled()) return;
|
|
239
|
+
const track = event.currentTarget;
|
|
240
|
+
if (!track) return;
|
|
241
|
+
return {
|
|
242
|
+
state: track,
|
|
243
|
+
target: track
|
|
244
|
+
};
|
|
245
|
+
});
|
|
198
246
|
}
|
|
199
247
|
function onTrackEnter(event) {
|
|
200
248
|
if (!options.enabled()) return;
|
|
@@ -207,7 +255,8 @@ function useSliderPointerPreview(options) {
|
|
|
207
255
|
if (!dragging.value && options.enabled()) cancelScheduledPreview();
|
|
208
256
|
}
|
|
209
257
|
onBeforeUnmount(() => {
|
|
210
|
-
|
|
258
|
+
disposing = true;
|
|
259
|
+
pointerSession.stop();
|
|
211
260
|
cancelScheduledPreview();
|
|
212
261
|
});
|
|
213
262
|
return {
|
|
@@ -365,7 +414,11 @@ function useSliderValueState(props, onChange) {
|
|
|
365
414
|
function onInput(event) {
|
|
366
415
|
if (control.disabled) return;
|
|
367
416
|
const input = event.target;
|
|
368
|
-
|
|
417
|
+
updateValue(input.valueAsNumber);
|
|
418
|
+
}
|
|
419
|
+
function updateValue(value) {
|
|
420
|
+
if (control.disabled) return;
|
|
421
|
+
controllable.setValue(normalizeSliderValue(value, bounds.value.min, bounds.value.max, nativeStep.value));
|
|
369
422
|
}
|
|
370
423
|
useFormControl({
|
|
371
424
|
elements: () => [inputRef.value],
|
|
@@ -399,7 +452,8 @@ function useSliderValueState(props, onChange) {
|
|
|
399
452
|
markItems,
|
|
400
453
|
hasMarkLabels,
|
|
401
454
|
trackSlotProps,
|
|
402
|
-
onInput
|
|
455
|
+
onInput,
|
|
456
|
+
updateValue
|
|
403
457
|
};
|
|
404
458
|
}
|
|
405
459
|
//#endregion
|
|
@@ -444,6 +498,19 @@ function useSlider(props, onChange) {
|
|
|
444
498
|
invalid: valueState.control.invalid
|
|
445
499
|
}));
|
|
446
500
|
const trackStyle = computed(() => getSliderTrackStyle(props, valueState.valuePercent.value, tooltipState.tooltipPercent.value));
|
|
501
|
+
const pointerState = useSliderPointer({
|
|
502
|
+
bounds: valueState.bounds,
|
|
503
|
+
disabled: () => valueState.control.disabled,
|
|
504
|
+
inputRef: valueState.inputRef,
|
|
505
|
+
orientation: () => props.orientation,
|
|
506
|
+
step: valueState.nativeStep,
|
|
507
|
+
updateValue: valueState.updateValue
|
|
508
|
+
});
|
|
509
|
+
function onTrackPointerDown(event) {
|
|
510
|
+
const started = pointerState.onPointerDown(event);
|
|
511
|
+
tooltipState.onTooltipPointerDown(event);
|
|
512
|
+
return started;
|
|
513
|
+
}
|
|
447
514
|
return {
|
|
448
515
|
inputRef: valueState.inputRef,
|
|
449
516
|
focus: valueState.focus,
|
|
@@ -478,7 +545,7 @@ function useSlider(props, onChange) {
|
|
|
478
545
|
tooltipFormattedValue: tooltipState.tooltipFormattedValue,
|
|
479
546
|
tooltipContent: tooltipState.tooltipContent,
|
|
480
547
|
onInput: valueState.onInput,
|
|
481
|
-
|
|
548
|
+
onTrackPointerDown,
|
|
482
549
|
onTooltipPointerMove: tooltipState.onTooltipPointerMove,
|
|
483
550
|
onTooltipTrackEnter: tooltipState.onTooltipTrackEnter,
|
|
484
551
|
onTooltipTrackLeave: tooltipState.onTooltipTrackLeave,
|
|
@@ -489,17 +556,17 @@ function useSlider(props, onChange) {
|
|
|
489
556
|
}
|
|
490
557
|
//#endregion
|
|
491
558
|
//#region src/components/slider/slider.vue?vue&type=script&setup=true&vapor=true&lang.ts
|
|
492
|
-
var t0$2 = template("<span data-v-
|
|
493
|
-
var t1$2 = template("<span data-v-
|
|
494
|
-
var t2$2 = template("<span data-v-
|
|
495
|
-
var t3$2 = template("<span data-v-
|
|
496
|
-
var t4$2 = template("<span data-v-
|
|
497
|
-
var t5$1 = template("<span data-v-
|
|
498
|
-
var t6$1 = template("<span data-v-
|
|
499
|
-
var t7$1 = template("<span data-v-
|
|
500
|
-
var t8$1 = template("<span data-v-
|
|
559
|
+
var t0$2 = template("<span data-v-0fbfb274>");
|
|
560
|
+
var t1$2 = template("<span data-v-0fbfb274 class=rp-slider__header>");
|
|
561
|
+
var t2$2 = template("<span data-v-0fbfb274 class=\"rp-slider__track-layer rp-slider__track-underlay\"aria-hidden=true>");
|
|
562
|
+
var t3$2 = template("<span data-v-0fbfb274 class=\"rp-slider__track-layer rp-slider__track-overlay\"aria-hidden=true>");
|
|
563
|
+
var t4$2 = template("<span data-v-0fbfb274 class=rp-slider__travel aria-hidden=true>", 2);
|
|
564
|
+
var t5$1 = template("<span data-v-0fbfb274> ");
|
|
565
|
+
var t6$1 = template("<span data-v-0fbfb274><span data-v-0fbfb274 class=rp-slider__mark-dot></span>");
|
|
566
|
+
var t7$1 = template("<span data-v-0fbfb274 class=rp-slider__marks aria-hidden=true>");
|
|
567
|
+
var t8$1 = template("<span data-v-0fbfb274 class=rp-slider__tooltip-anchor aria-hidden=true></span>", 2);
|
|
501
568
|
var t9$1 = template(" ");
|
|
502
|
-
var t10 = template("<label data-v-
|
|
569
|
+
var t10 = template("<label data-v-0fbfb274><span data-v-0fbfb274><span data-v-0fbfb274 class=rp-slider__rail aria-hidden=true></span><!><span data-v-0fbfb274></span><!><input data-v-0fbfb274><!><span data-v-0fbfb274><span data-v-0fbfb274 class=rp-slider__thumb-content>", 1);
|
|
503
570
|
//#endregion
|
|
504
571
|
//#region src/components/slider/slider.vue
|
|
505
572
|
var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE__ */ defineVaporComponent({
|
|
@@ -562,7 +629,7 @@ var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
562
629
|
const slots = useSlots();
|
|
563
630
|
const props = __props;
|
|
564
631
|
const emit = __emit;
|
|
565
|
-
const { inputRef, focus, control, nativeMin, nativeMax, nativeStep, rootClass, normalizedValue, valuePercent, formattedValue, ariaValueText, markItems, thumbMode, trackSlotProps, trackStyle, trackHovered, dragging, tooltipVisible, tooltipOpen, tooltipAnchor, tooltipPlacement, tooltipId, tooltipColor, tooltipAutoContrast, tooltipContrastColor, tooltipOffset, tooltipOpenDelay, tooltipArrow, tooltipValue, tooltipPercent, tooltipFormattedValue, tooltipContent, onInput,
|
|
632
|
+
const { inputRef, focus, control, nativeMin, nativeMax, nativeStep, rootClass, normalizedValue, valuePercent, formattedValue, ariaValueText, markItems, thumbMode, trackSlotProps, trackStyle, trackHovered, dragging, tooltipVisible, tooltipOpen, tooltipAnchor, tooltipPlacement, tooltipId, tooltipColor, tooltipAutoContrast, tooltipContrastColor, tooltipOffset, tooltipOpenDelay, tooltipArrow, tooltipValue, tooltipPercent, tooltipFormattedValue, tooltipContent, onInput, onTrackPointerDown, onTooltipPointerMove, onTooltipTrackEnter, onTooltipTrackLeave, onTooltipFocusIn, onTooltipFocusOut, onTooltipKeydown } = useSlider(props, (value) => emit("update:modelValue", value));
|
|
566
633
|
const { getPartAttrs, getRootAttrs } = useStylesApi(props, "root");
|
|
567
634
|
const rootAttrs = computed(() => getRootAttrs({
|
|
568
635
|
class: [rootClass.value, { "rp-slider--custom-thumb": Boolean(slots.thumb) }],
|
|
@@ -749,7 +816,7 @@ var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
749
816
|
}
|
|
750
817
|
});
|
|
751
818
|
});
|
|
752
|
-
on(n45, "pointerdown", (e) => unref(
|
|
819
|
+
on(n45, "pointerdown", (e) => unref(onTrackPointerDown)(e));
|
|
753
820
|
on(n45, "pointerenter", (e) => unref(onTooltipTrackEnter)(e));
|
|
754
821
|
on(n45, "pointerleave", (e) => unref(onTooltipTrackLeave)(e));
|
|
755
822
|
on(n45, "pointermove", (e) => unref(onTooltipPointerMove)(e));
|
|
@@ -758,7 +825,7 @@ var slider_default = /*#__PURE__*/ _plugin_vue_export_helper_default(/* @__PURE_
|
|
|
758
825
|
on(n45, "keydown", (e) => unref(onTooltipKeydown)(e));
|
|
759
826
|
return n48;
|
|
760
827
|
}
|
|
761
|
-
}), [["__scopeId", "data-v-
|
|
828
|
+
}), [["__scopeId", "data-v-0fbfb274"]]);
|
|
762
829
|
//#endregion
|
|
763
830
|
//#region src/components/slider/useRangeSliderTooltipCollision.ts
|
|
764
831
|
var TOOLTIP_COLLISION_GAP = 4;
|
|
@@ -1240,113 +1307,62 @@ function getRangeSliderPointerValue(pointer, geometry, bounds) {
|
|
|
1240
1307
|
//#endregion
|
|
1241
1308
|
//#region src/components/slider/useRangeSliderPointer.ts
|
|
1242
1309
|
function useRangeSliderPointer(options) {
|
|
1243
|
-
|
|
1244
|
-
let pendingPointerEvent;
|
|
1245
|
-
let geometryDirty = false;
|
|
1246
|
-
function refreshGeometry() {
|
|
1247
|
-
const currentSession = session;
|
|
1248
|
-
if (!currentSession) return false;
|
|
1249
|
-
if (!geometryDirty) return true;
|
|
1310
|
+
function refreshGeometry(currentSession) {
|
|
1250
1311
|
const geometry = options.getPointerGeometry(currentSession.track);
|
|
1251
1312
|
if (geometry === void 0) return false;
|
|
1252
|
-
geometryDirty = false;
|
|
1253
1313
|
currentSession.geometry = geometry;
|
|
1254
1314
|
return true;
|
|
1255
1315
|
}
|
|
1256
|
-
function
|
|
1257
|
-
if (
|
|
1258
|
-
const event = pendingPointerEvent;
|
|
1259
|
-
pendingPointerEvent = void 0;
|
|
1260
|
-
if (event && isCurrentPointer(event)) updateFromPointer(event);
|
|
1261
|
-
}
|
|
1262
|
-
const updateScheduler = createRafScheduler(applyScheduledUpdate, () => session?.view);
|
|
1263
|
-
function flushScheduledUpdate() {
|
|
1264
|
-
updateScheduler.cancel();
|
|
1265
|
-
applyScheduledUpdate();
|
|
1266
|
-
}
|
|
1267
|
-
function scheduleUpdate() {
|
|
1268
|
-
if (session) updateScheduler.schedule();
|
|
1269
|
-
}
|
|
1270
|
-
function onGeometryChange() {
|
|
1271
|
-
if (!session) return;
|
|
1272
|
-
geometryDirty = true;
|
|
1273
|
-
scheduleUpdate();
|
|
1274
|
-
}
|
|
1275
|
-
function stopDragging() {
|
|
1276
|
-
const stoppedSession = session;
|
|
1277
|
-
if (!stoppedSession) return;
|
|
1278
|
-
stoppedSession.view?.removeEventListener("pointermove", onPointerMove);
|
|
1279
|
-
stoppedSession.view?.removeEventListener("pointerup", onPointerEnd);
|
|
1280
|
-
stoppedSession.view?.removeEventListener("pointercancel", onPointerEnd);
|
|
1281
|
-
stoppedSession.view?.removeEventListener("resize", onGeometryChange);
|
|
1282
|
-
stoppedSession.view?.removeEventListener("scroll", onGeometryChange, true);
|
|
1283
|
-
updateScheduler.cancel();
|
|
1284
|
-
pendingPointerEvent = void 0;
|
|
1285
|
-
geometryDirty = false;
|
|
1286
|
-
session = void 0;
|
|
1287
|
-
options.endDrag(stoppedSession.thumb);
|
|
1288
|
-
}
|
|
1289
|
-
function switchDraggingThumb(nextThumb) {
|
|
1290
|
-
const currentSession = session;
|
|
1291
|
-
if (!currentSession || currentSession.thumb === nextThumb) return;
|
|
1316
|
+
function switchDraggingThumb(currentSession, nextThumb) {
|
|
1317
|
+
if (currentSession.thumb === nextThumb) return;
|
|
1292
1318
|
const previousThumb = currentSession.thumb;
|
|
1293
1319
|
currentSession.thumb = nextThumb;
|
|
1294
1320
|
options.transferDrag(previousThumb, nextThumb);
|
|
1295
1321
|
options.setActiveThumb(nextThumb);
|
|
1296
1322
|
options.transferFocusedThumb(currentSession.track, previousThumb, nextThumb);
|
|
1297
1323
|
}
|
|
1298
|
-
function updateFromPointer(event) {
|
|
1299
|
-
const currentSession = session;
|
|
1300
|
-
if (!currentSession) return;
|
|
1324
|
+
function updateFromPointer(event, currentSession) {
|
|
1301
1325
|
const value = options.getPointerValue(event, currentSession.geometry);
|
|
1302
1326
|
if (value == null) return;
|
|
1303
|
-
switchDraggingThumb(options.updateThumb(currentSession.thumb, value, currentSession.anchorValue));
|
|
1304
|
-
}
|
|
1305
|
-
|
|
1306
|
-
|
|
1307
|
-
|
|
1308
|
-
|
|
1309
|
-
|
|
1310
|
-
|
|
1311
|
-
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1315
|
-
|
|
1316
|
-
|
|
1317
|
-
|
|
1318
|
-
}
|
|
1327
|
+
switchDraggingThumb(currentSession, options.updateThumb(currentSession.thumb, value, currentSession.anchorValue));
|
|
1328
|
+
}
|
|
1329
|
+
const pointerSession = createPointerSession({
|
|
1330
|
+
onStart(event, currentSession) {
|
|
1331
|
+
event.preventDefault();
|
|
1332
|
+
options.setActiveThumb(currentSession.thumb);
|
|
1333
|
+
options.focusThumb(currentSession.track, currentSession.thumb);
|
|
1334
|
+
options.startDrag(currentSession.thumb);
|
|
1335
|
+
switchDraggingThumb(currentSession, options.updateThumb(currentSession.thumb, currentSession.initialValue, currentSession.anchorValue));
|
|
1336
|
+
},
|
|
1337
|
+
onStop(currentSession) {
|
|
1338
|
+
options.endDrag(currentSession.thumb);
|
|
1339
|
+
},
|
|
1340
|
+
onUpdate: updateFromPointer,
|
|
1341
|
+
refreshGeometry
|
|
1342
|
+
});
|
|
1319
1343
|
function onTrackPointerDown(event) {
|
|
1320
|
-
|
|
1321
|
-
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1326
|
-
|
|
1327
|
-
|
|
1328
|
-
|
|
1329
|
-
|
|
1330
|
-
|
|
1331
|
-
|
|
1332
|
-
|
|
1333
|
-
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1337
|
-
|
|
1338
|
-
|
|
1339
|
-
};
|
|
1340
|
-
options.startDrag(thumb);
|
|
1341
|
-
switchDraggingThumb(options.updateThumb(thumb, pointerValue, session.anchorValue));
|
|
1342
|
-
const view = session?.view;
|
|
1343
|
-
view?.addEventListener("pointermove", onPointerMove);
|
|
1344
|
-
view?.addEventListener("pointerup", onPointerEnd);
|
|
1345
|
-
view?.addEventListener("pointercancel", onPointerEnd);
|
|
1346
|
-
view?.addEventListener("resize", onGeometryChange);
|
|
1347
|
-
view?.addEventListener("scroll", onGeometryChange, true);
|
|
1344
|
+
return pointerSession.start(event, () => {
|
|
1345
|
+
if (options.disabled()) return;
|
|
1346
|
+
const track = event.currentTarget;
|
|
1347
|
+
if (!track) return;
|
|
1348
|
+
const geometry = options.getPointerGeometry(track);
|
|
1349
|
+
if (geometry === void 0) return;
|
|
1350
|
+
const initialValue = options.getPointerValue(event, geometry);
|
|
1351
|
+
if (initialValue == null) return;
|
|
1352
|
+
const thumb = options.getThumb(event, initialValue);
|
|
1353
|
+
return {
|
|
1354
|
+
state: {
|
|
1355
|
+
anchorValue: options.getAnchorValue(thumb),
|
|
1356
|
+
geometry,
|
|
1357
|
+
initialValue,
|
|
1358
|
+
thumb,
|
|
1359
|
+
track
|
|
1360
|
+
},
|
|
1361
|
+
target: track
|
|
1362
|
+
};
|
|
1363
|
+
});
|
|
1348
1364
|
}
|
|
1349
|
-
onBeforeUnmount(
|
|
1365
|
+
onBeforeUnmount(pointerSession.stop);
|
|
1350
1366
|
return { onTrackPointerDown };
|
|
1351
1367
|
}
|
|
1352
1368
|
//#endregion
|
|
@@ -0,0 +1,197 @@
|
|
|
1
|
+
@layer ropav.components {
|
|
2
|
+
.rp-tags-input[data-v-9fbac28f] {
|
|
3
|
+
--_rp-tags-input-height: var(--rp-size-control-md);
|
|
4
|
+
--_rp-tags-input-padding-x: calc(var(--rp-size-control-md) / 3);
|
|
5
|
+
--_rp-tags-input-font-size: var(--rp-font-size-md);
|
|
6
|
+
--_rp-tags-input-radius: var(--rp-radius-sm);
|
|
7
|
+
--_rp-tags-input-invalid-border: var(--rp-color-red-outline);
|
|
8
|
+
--_rp-tags-input-invalid-ring: color-mix(in srgb, var(--rp-color-red-outline) 32%, transparent);
|
|
9
|
+
position: relative;
|
|
10
|
+
display: inline-flex;
|
|
11
|
+
align-items: center;
|
|
12
|
+
box-sizing: border-box;
|
|
13
|
+
min-width: 180px;
|
|
14
|
+
min-height: var(--_rp-tags-input-height);
|
|
15
|
+
padding: var(--rp-spacing-1) var(--_rp-tags-input-padding-x);
|
|
16
|
+
gap: var(--rp-spacing-2);
|
|
17
|
+
font-family: var(--rp-font-family);
|
|
18
|
+
font-size: var(--_rp-tags-input-font-size);
|
|
19
|
+
font-weight: var(--rp-font-weight-normal);
|
|
20
|
+
line-height: 1;
|
|
21
|
+
background-color: var(--rp-color-control-bg);
|
|
22
|
+
border: var(--rp-border-width-thin) solid var(--rp-color-control-border);
|
|
23
|
+
border-radius: var(--_rp-tags-input-radius);
|
|
24
|
+
cursor: text;
|
|
25
|
+
transition: border-color var(--rp-transition-fast), box-shadow var(--rp-transition-fast);
|
|
26
|
+
}
|
|
27
|
+
.rp-tags-input[data-v-9fbac28f]:hover:not(.rp-tags-input--disabled):not(.rp-tags-input--invalid) {
|
|
28
|
+
border-color: var(--rp-color-control-border-hover);
|
|
29
|
+
}
|
|
30
|
+
.rp-tags-input[data-v-9fbac28f]:focus-within:not(.rp-tags-input--disabled):not(.rp-tags-input--invalid) {
|
|
31
|
+
border-color: var(--rp-color-control-border-focus);
|
|
32
|
+
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--rp-color-focus-ring);
|
|
33
|
+
}
|
|
34
|
+
.rp-tags-input__native[data-v-9fbac28f] {
|
|
35
|
+
position: absolute;
|
|
36
|
+
width: 1px;
|
|
37
|
+
height: 1px;
|
|
38
|
+
padding: 0;
|
|
39
|
+
margin: -1px;
|
|
40
|
+
overflow: hidden;
|
|
41
|
+
clip: rect(0, 0, 0, 0);
|
|
42
|
+
white-space: nowrap;
|
|
43
|
+
border-width: 0;
|
|
44
|
+
}
|
|
45
|
+
.rp-tags-input--size-xs[data-v-9fbac28f] {
|
|
46
|
+
--_rp-tags-input-height: var(--rp-size-control-xs);
|
|
47
|
+
--_rp-tags-input-padding-x: calc(var(--rp-size-control-xs) / 3);
|
|
48
|
+
--_rp-tags-input-font-size: var(--rp-font-size-xs);
|
|
49
|
+
}
|
|
50
|
+
.rp-tags-input--size-sm[data-v-9fbac28f] {
|
|
51
|
+
--_rp-tags-input-height: var(--rp-size-control-sm);
|
|
52
|
+
--_rp-tags-input-padding-x: calc(var(--rp-size-control-sm) / 3);
|
|
53
|
+
--_rp-tags-input-font-size: var(--rp-font-size-sm);
|
|
54
|
+
}
|
|
55
|
+
.rp-tags-input--size-md[data-v-9fbac28f] {
|
|
56
|
+
--_rp-tags-input-height: var(--rp-size-control-md);
|
|
57
|
+
--_rp-tags-input-padding-x: calc(var(--rp-size-control-md) / 3);
|
|
58
|
+
--_rp-tags-input-font-size: var(--rp-font-size-md);
|
|
59
|
+
}
|
|
60
|
+
.rp-tags-input--size-lg[data-v-9fbac28f] {
|
|
61
|
+
--_rp-tags-input-height: var(--rp-size-control-lg);
|
|
62
|
+
--_rp-tags-input-padding-x: calc(var(--rp-size-control-lg) / 3);
|
|
63
|
+
--_rp-tags-input-font-size: var(--rp-font-size-lg);
|
|
64
|
+
}
|
|
65
|
+
.rp-tags-input--size-xl[data-v-9fbac28f] {
|
|
66
|
+
--_rp-tags-input-height: var(--rp-size-control-xl);
|
|
67
|
+
--_rp-tags-input-padding-x: calc(var(--rp-size-control-xl) / 3);
|
|
68
|
+
--_rp-tags-input-font-size: var(--rp-font-size-xl);
|
|
69
|
+
}
|
|
70
|
+
.rp-tags-input--radius-xs[data-v-9fbac28f] {
|
|
71
|
+
--_rp-tags-input-radius: var(--rp-radius-xs);
|
|
72
|
+
}
|
|
73
|
+
.rp-tags-input--radius-sm[data-v-9fbac28f] {
|
|
74
|
+
--_rp-tags-input-radius: var(--rp-radius-sm);
|
|
75
|
+
}
|
|
76
|
+
.rp-tags-input--radius-md[data-v-9fbac28f] {
|
|
77
|
+
--_rp-tags-input-radius: var(--rp-radius-md);
|
|
78
|
+
}
|
|
79
|
+
.rp-tags-input--radius-lg[data-v-9fbac28f] {
|
|
80
|
+
--_rp-tags-input-radius: var(--rp-radius-lg);
|
|
81
|
+
}
|
|
82
|
+
.rp-tags-input--radius-xl[data-v-9fbac28f] {
|
|
83
|
+
--_rp-tags-input-radius: var(--rp-radius-xl);
|
|
84
|
+
}
|
|
85
|
+
.rp-tags-input--disabled[data-v-9fbac28f] {
|
|
86
|
+
opacity: var(--rp-opacity-disabled);
|
|
87
|
+
cursor: not-allowed;
|
|
88
|
+
}
|
|
89
|
+
.rp-tags-input--readonly[data-v-9fbac28f] {
|
|
90
|
+
background-color: var(--rp-color-control-readonly-bg);
|
|
91
|
+
}
|
|
92
|
+
.rp-tags-input--invalid[data-v-9fbac28f] {
|
|
93
|
+
border-color: var(--_rp-tags-input-invalid-border);
|
|
94
|
+
}
|
|
95
|
+
.rp-tags-input--invalid[data-v-9fbac28f]:focus-within:not(.rp-tags-input--disabled) {
|
|
96
|
+
border-color: var(--_rp-tags-input-invalid-border);
|
|
97
|
+
box-shadow: 0 0 0 var(--rp-border-width-medium) var(--_rp-tags-input-invalid-ring);
|
|
98
|
+
}
|
|
99
|
+
.rp-tags-input__tags[data-v-9fbac28f] {
|
|
100
|
+
display: flex;
|
|
101
|
+
flex: 1;
|
|
102
|
+
flex-wrap: wrap;
|
|
103
|
+
align-items: center;
|
|
104
|
+
min-width: 0;
|
|
105
|
+
gap: var(--rp-spacing-1);
|
|
106
|
+
}
|
|
107
|
+
.rp-tags-input__tag[data-v-9fbac28f] {
|
|
108
|
+
display: inline-flex;
|
|
109
|
+
align-items: center;
|
|
110
|
+
box-sizing: border-box;
|
|
111
|
+
max-width: 100%;
|
|
112
|
+
min-height: calc(var(--_rp-tags-input-height) - var(--rp-spacing-3));
|
|
113
|
+
padding-inline: var(--rp-spacing-2) var(--rp-spacing-1);
|
|
114
|
+
gap: var(--rp-spacing-1);
|
|
115
|
+
color: var(--rp-color-control-fg);
|
|
116
|
+
background-color: var(--rp-color-default-hover);
|
|
117
|
+
border-radius: var(--_rp-tags-input-radius);
|
|
118
|
+
}
|
|
119
|
+
.rp-tags-input__tag-label[data-v-9fbac28f] {
|
|
120
|
+
overflow: hidden;
|
|
121
|
+
text-overflow: ellipsis;
|
|
122
|
+
white-space: nowrap;
|
|
123
|
+
}
|
|
124
|
+
.rp-tags-input__tag-remove[data-v-9fbac28f] {
|
|
125
|
+
display: inline-flex;
|
|
126
|
+
align-items: center;
|
|
127
|
+
justify-content: center;
|
|
128
|
+
padding: 0;
|
|
129
|
+
font: inherit;
|
|
130
|
+
background: none;
|
|
131
|
+
border: none;
|
|
132
|
+
cursor: pointer;
|
|
133
|
+
color: inherit;
|
|
134
|
+
opacity: 0.6;
|
|
135
|
+
flex-shrink: 0;
|
|
136
|
+
transition: opacity var(--rp-transition-fast);
|
|
137
|
+
}
|
|
138
|
+
.rp-tags-input__tag-remove[data-v-9fbac28f]:hover {
|
|
139
|
+
opacity: 1;
|
|
140
|
+
}
|
|
141
|
+
.rp-tags-input__tag-remove svg[data-v-9fbac28f] {
|
|
142
|
+
width: 100%;
|
|
143
|
+
height: 100%;
|
|
144
|
+
}
|
|
145
|
+
.rp-tags-input__tag-remove[data-v-9fbac28f] {
|
|
146
|
+
width: 1em;
|
|
147
|
+
height: 1em;
|
|
148
|
+
}
|
|
149
|
+
.rp-tags-input__tag-remove[data-v-9fbac28f]:disabled {
|
|
150
|
+
cursor: not-allowed;
|
|
151
|
+
}
|
|
152
|
+
.rp-tags-input__input[data-v-9fbac28f] {
|
|
153
|
+
box-sizing: border-box;
|
|
154
|
+
flex: 1 0 4rem;
|
|
155
|
+
width: 4rem;
|
|
156
|
+
min-width: 4rem;
|
|
157
|
+
min-height: calc(var(--_rp-tags-input-height) - var(--rp-spacing-2));
|
|
158
|
+
padding: 0;
|
|
159
|
+
border: none;
|
|
160
|
+
outline: none;
|
|
161
|
+
background: transparent;
|
|
162
|
+
font: inherit;
|
|
163
|
+
color: var(--rp-color-control-fg);
|
|
164
|
+
line-height: 1;
|
|
165
|
+
}
|
|
166
|
+
.rp-tags-input__input[data-v-9fbac28f]::placeholder {
|
|
167
|
+
color: var(--rp-color-control-placeholder);
|
|
168
|
+
}
|
|
169
|
+
.rp-tags-input__input[data-v-9fbac28f]:disabled {
|
|
170
|
+
cursor: not-allowed;
|
|
171
|
+
}
|
|
172
|
+
.rp-tags-input__clear[data-v-9fbac28f] {
|
|
173
|
+
padding: 0;
|
|
174
|
+
font: inherit;
|
|
175
|
+
background: none;
|
|
176
|
+
border: none;
|
|
177
|
+
cursor: pointer;
|
|
178
|
+
display: inline-flex;
|
|
179
|
+
align-items: center;
|
|
180
|
+
width: 1em;
|
|
181
|
+
height: 1em;
|
|
182
|
+
flex-shrink: 0;
|
|
183
|
+
}
|
|
184
|
+
.rp-tags-input__clear svg[data-v-9fbac28f] {
|
|
185
|
+
width: 100%;
|
|
186
|
+
height: 100%;
|
|
187
|
+
}
|
|
188
|
+
.rp-tags-input__clear[data-v-9fbac28f] {
|
|
189
|
+
flex-shrink: 0;
|
|
190
|
+
color: var(--rp-color-control-icon);
|
|
191
|
+
transform: translateX(var(--rp-spacing-1));
|
|
192
|
+
transition: color var(--rp-transition-fast);
|
|
193
|
+
}
|
|
194
|
+
.rp-tags-input__clear[data-v-9fbac28f]:hover {
|
|
195
|
+
color: var(--rp-color-control-fg);
|
|
196
|
+
}
|
|
197
|
+
}
|