@vygruppen/spor-react 12.22.0 → 12.22.2

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/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@vygruppen/spor-react",
3
3
  "type": "module",
4
- "version": "12.22.0",
4
+ "version": "12.22.2",
5
5
  "exports": {
6
6
  ".": {
7
7
  "types": "./dist/index.d.ts",
@@ -68,8 +68,8 @@
68
68
  "vitest": "^0.26.3",
69
69
  "vitest-axe": "^0.1.0",
70
70
  "vitest-canvas-mock": "^0.2.2",
71
- "@vygruppen/eslint-config": "2.1.0",
72
- "@vygruppen/tsconfig": "0.1.1"
71
+ "@vygruppen/tsconfig": "0.1.1",
72
+ "@vygruppen/eslint-config": "2.1.0"
73
73
  },
74
74
  "peerDependencies": {
75
75
  "react": ">=18.0.0 <19.0.0",
@@ -13,6 +13,7 @@ import {
13
13
  WarningFill24Icon,
14
14
  } from "@vygruppen/spor-icon-react";
15
15
  import { forwardRef } from "react";
16
+ import { VisuallyHidden } from "react-aria";
16
17
 
17
18
  import { createTexts, useTranslation } from "../i18n";
18
19
  import { AlertProps } from "./Alert";
@@ -30,7 +31,10 @@ export const AlertIcon = forwardRef<SVGSVGElement, AlertIconProps>(
30
31
  const { t } = useTranslation();
31
32
 
32
33
  return (
33
- <Box ref={ref} aria-label={t(texts[variant as keyof typeof texts])}>
34
+ <Box ref={ref}>
35
+ <VisuallyHidden>
36
+ {t(texts[variant as keyof typeof texts])}
37
+ </VisuallyHidden>
34
38
  {CustomAlertIcon ? (
35
39
  <CustomAlertIcon color={`alert.${variant}.icon`} />
36
40
  ) : (
@@ -90,7 +90,7 @@ const SwitchButton = chakra(
90
90
  defineRecipe({
91
91
  base: {
92
92
  position: "absolute !important",
93
- zIndex: "docked !important",
93
+ zIndex: "101 !important",
94
94
  // eslint-disable-next-line spor/use-semantic-tokens
95
95
  bg: "bg !important",
96
96
  outlineWidth: "1px !important",
@@ -107,7 +107,7 @@ const SwitchButton = chakra(
107
107
  },
108
108
  vertical: {
109
109
  top: "calc(50% - 15px)",
110
- right: "12px",
110
+ right: "3rem",
111
111
  transform: "rotate(90deg)",
112
112
  },
113
113
  },
@@ -2,6 +2,7 @@ import {
2
2
  Combobox,
3
3
  ComboboxItemProps,
4
4
  ComboboxRootProps,
5
+ useCombobox,
5
6
  useComboboxContext,
6
7
  useFilter,
7
8
  useListCollection,
@@ -24,6 +25,8 @@ type Props = {
24
25
  leftIcon?: React.ReactNode;
25
26
  filteredExternally?: boolean;
26
27
  loading?: boolean;
28
+ emptyLabel?: React.ReactNode;
29
+ openOnFocus?: boolean;
27
30
  } & Omit<ComboboxRootProps, "collection"> &
28
31
  FieldProps;
29
32
 
@@ -40,6 +43,9 @@ export const Autocomplete = ({
40
43
  filteredExternally,
41
44
  loading,
42
45
  disabled,
46
+ emptyLabel,
47
+ openOnClick = true,
48
+ openOnFocus = true,
43
49
  ...rest
44
50
  }: Props) => {
45
51
  const { contains } = useFilter({ sensitivity: "base" });
@@ -64,26 +70,29 @@ export const Autocomplete = ({
64
70
  [children, collection.items],
65
71
  );
66
72
 
73
+ const combobox = useCombobox({
74
+ collection,
75
+ openOnClick,
76
+ onInputValueChange: (event) => {
77
+ if (!filteredExternally) {
78
+ filter(event.inputValue);
79
+ }
80
+ onInputValueChange?.(event);
81
+ },
82
+ positioning: {
83
+ placement: "bottom",
84
+ offset: {
85
+ mainAxis: 3,
86
+ crossAxis: -1,
87
+ },
88
+ flip: false,
89
+ },
90
+ disabled,
91
+ ...rest,
92
+ });
93
+
67
94
  return (
68
- <Combobox.Root
69
- {...rest}
70
- collection={collection}
71
- onInputValueChange={(event) => {
72
- if (!filteredExternally) {
73
- filter(event.inputValue);
74
- }
75
- onInputValueChange?.(event);
76
- }}
77
- positioning={{
78
- placement: "bottom",
79
- offset: {
80
- mainAxis: 3,
81
- crossAxis: -1,
82
- },
83
- flip: false,
84
- }}
85
- disabled={disabled}
86
- >
95
+ <Combobox.RootProvider value={combobox}>
87
96
  <Combobox.Control>
88
97
  <Combobox.Input asChild>
89
98
  <Input
@@ -95,17 +104,22 @@ export const Autocomplete = ({
95
104
  helperText={helperText}
96
105
  errorText={errorText}
97
106
  required={required}
107
+ onFocus={() => {
108
+ if (openOnFocus) combobox.setOpen(true);
109
+ }}
98
110
  />
99
111
  </Combobox.Input>
100
112
  <Combobox.IndicatorGroup>
101
- <Combobox.ClearTrigger asChild>
113
+ <Combobox.ClearTrigger asChild aria-label={t(texts.clearValue)}>
102
114
  <CloseButton size="xs" />
103
115
  </Combobox.ClearTrigger>
104
116
  </Combobox.IndicatorGroup>
105
117
  </Combobox.Control>
106
118
  <Combobox.Positioner>
107
119
  <Combobox.Content>
108
- <Combobox.Empty>{!loading && t(texts.noItemsFound)}</Combobox.Empty>
120
+ <Combobox.Empty>
121
+ {!loading && (emptyLabel ?? t(texts.noItemsFound))}
122
+ </Combobox.Empty>
109
123
  {loading ? (
110
124
  <ColorSpinner width="1.5rem" p="2" />
111
125
  ) : (
@@ -113,7 +127,7 @@ export const Autocomplete = ({
113
127
  )}
114
128
  </Combobox.Content>
115
129
  </Combobox.Positioner>
116
- </Combobox.Root>
130
+ </Combobox.RootProvider>
117
131
  );
118
132
  };
119
133
 
@@ -206,4 +220,10 @@ const texts = createTexts({
206
220
  sv: "Inga resultat",
207
221
  en: "No results found",
208
222
  },
223
+ clearValue: {
224
+ nb: "Tøm verdi",
225
+ nn: "Tøm verdi",
226
+ sv: "Rensa värde",
227
+ en: "Clear value",
228
+ },
209
229
  });
@@ -129,7 +129,9 @@ export const Field = React.forwardRef<HTMLDivElement, FieldProps>(
129
129
  </FloatingLabel>
130
130
  )}
131
131
  {errorText && (
132
- <ChakraField.ErrorText>{errorText}</ChakraField.ErrorText>
132
+ <ChakraField.ErrorText aria-live="polite">
133
+ {errorText}
134
+ </ChakraField.ErrorText>
133
135
  )}
134
136
  </ChakraField.Root>
135
137
  {helperText && (
@@ -19,14 +19,14 @@ const floatingLabelStyles = defineStyle({
19
19
  },
20
20
 
21
21
  pos: "absolute",
22
- transition: "position",
22
+ transition: "top 160ms ease, font-size 160ms ease",
23
23
 
24
24
  top: "0.9rem",
25
25
  color: "text",
26
26
  fontSize: ["mobile.sm", "desktop.sm"],
27
27
 
28
28
  "&[data-float]": {
29
- fontSize: ["mobile.xs", "desktop.xs"],
29
+ fontSize: ["mobile.2xs", "desktop.2xs"],
30
30
  color: "text",
31
31
  top: "0.3rem",
32
32
  },
@@ -107,7 +107,7 @@ export const Input = forwardRef<HTMLInputElement, InputProps>(
107
107
  id={props.id}
108
108
  labelAsChild={labelAsChild}
109
109
  label={
110
- <Flex fontSize={fontSize ?? "mobile.md"}>
110
+ <Flex>
111
111
  <Box visibility="hidden">{startElement}</Box>
112
112
  {label}
113
113
  </Flex>
@@ -119,6 +119,7 @@ export const Input = forwardRef<HTMLInputElement, InputProps>(
119
119
  <InputElement
120
120
  pointerEvents="none"
121
121
  paddingX={2}
122
+ aria-hidden="true"
122
123
  fontSize={fontSize ?? "mobile.md"}
123
124
  >
124
125
  {startElement}
@@ -107,7 +107,6 @@ export const NumericStepper = React.forwardRef<
107
107
  <Field
108
108
  css={styles.root}
109
109
  width="auto"
110
- id={idProperty}
111
110
  ref={ref}
112
111
  label={label}
113
112
  helperText={helperText}
@@ -133,7 +132,6 @@ export const NumericStepper = React.forwardRef<
133
132
  }
134
133
  }}
135
134
  disabled={disabled || value <= minValue}
136
- id={value <= minValue ? undefined : idProperty}
137
135
  />
138
136
  {withInput ? (
139
137
  <Input
@@ -142,7 +140,7 @@ export const NumericStepper = React.forwardRef<
142
140
  name={nameProperty}
143
141
  value={value}
144
142
  disabled={disabled}
145
- id={value === 0 ? undefined : idProperty}
143
+ id={idProperty}
146
144
  css={styles.input}
147
145
  width={`${Math.max(value.toString().length + 1, 3)}ch`}
148
146
  aria-live="assertive"
@@ -189,7 +187,6 @@ export const NumericStepper = React.forwardRef<
189
187
  )}
190
188
  onClick={() => onChange(Math.min(value + clampedStepSize, maxValue))}
191
189
  disabled={disabled || value >= maxValue}
192
- id={value >= maxValue ? undefined : idProperty}
193
190
  />
194
191
  </Field>
195
192
  );
@@ -27,94 +27,102 @@ const Path = chakra("path", fillRecipe);
27
27
 
28
28
  const SVGGroup = chakra("g", fillRecipe);
29
29
 
30
- type VyLogoProps = ComponentProps<typeof SvgBox>;
30
+ type VyLogoBaseProps = ComponentProps<typeof SvgBox>;
31
+ type VyLogoProps = VyLogoBaseProps & {
32
+ /** mono = black in light mode, white in dark mode */
33
+ variant?: "default" | "mono";
34
+ };
35
+
36
+ export const VyLogo = forwardRef<SVGSVGElement, VyLogoProps>(
37
+ ({ variant = "default", ...props }, ref) => {
38
+ const id = useId();
31
39
 
32
- export const VyLogo = forwardRef<SVGSVGElement, VyLogoProps>((props, ref) => {
33
- const id = useId();
40
+ const fillForAccent = variant === "mono" ? "main" : "accent";
34
41
 
35
- return (
36
- <SvgBox ref={ref} viewBox="0 0 107 54" {...props}>
37
- <title>Vy logo</title>
38
- <Path
39
- fillRule="evenodd"
40
- clipRule="evenodd"
41
- d="M79.97 33.44a.04.04 0 0 0 0-.08 5.76 5.76 0 0 1-2.32-.85c-1.56-1-2.79-2.9-3.83-6.07L68.14 7.16c-1.18-4.04-3.42-5.85-5.48-6.6a8.36 8.36 0 0 0-2.88-.52h-1.44a.04.04 0 0 0 0 .08c.57.09 1.18.24 1.8.5 1.92.8 3.92 2.63 5.06 6.54l5.61 19.07c1.06 3.3 2.31 5.27 3.92 6.3 1.01.64 2.17.9 3.5.9h1.74Z"
42
- fill="main"
43
- />
44
- <mask
45
- id={`${id}-a`}
46
- style={{ maskType: "alpha" }}
47
- maskUnits="userSpaceOnUse"
48
- x="0"
49
- y="0"
50
- width="94"
51
- height="54"
52
- >
42
+ return (
43
+ <SvgBox ref={ref} viewBox="0 0 107 54" {...props}>
44
+ <title>Vy logo</title>
53
45
  <Path
54
46
  fillRule="evenodd"
55
47
  clipRule="evenodd"
56
- d="M0 .03h93.26v53.65H0V.03Z"
48
+ d="M79.97 33.44a.04.04 0 0 0 0-.08 5.76 5.76 0 0 1-2.32-.85c-1.56-1-2.79-2.9-3.83-6.07L68.14 7.16c-1.18-4.04-3.42-5.85-5.48-6.6a8.36 8.36 0 0 0-2.88-.52h-1.44a.04.04 0 0 0 0 .08c.57.09 1.18.24 1.8.5 1.92.8 3.92 2.63 5.06 6.54l5.61 19.07c1.06 3.3 2.31 5.27 3.92 6.3 1.01.64 2.17.9 3.5.9h1.74Z"
57
49
  fill="main"
58
50
  />
59
- </mask>
60
- <SVGGroup
61
- mask={`url(#${id}-a)`}
62
- fillRule="evenodd"
63
- clipRule="evenodd"
64
- fill="main"
65
- >
66
- <Path d="M84.57 33.44a.04.04 0 0 0 .01-.08c-2.34-.3-3.85-3.59-4.68-6.38-.88-2.93-4.04-13.63-5.92-19.82C72.08.94 66.2.05 63.54.04a.04.04 0 0 0-.01.08c2.49.34 6.02 1.85 7.55 7.04 1.34 4.55 5.6 19.03 5.76 19.51 1.02 3.03 2.22 4.85 3.73 5.83a6.3 6.3 0 0 0 3.54.94h.46ZM23.28 53.68h-.72c-2.12 0-4.68-1.08-6.09-6.04L3.8 4.37C3.04 1.77 1.93.47.03.15A.04.04 0 0 1 .04.07h1.9c2.54 0 3.92 1.27 4.8 4.3 0 0 11.72 39.78 12.79 43.54.78 2.78 1.7 4.67 3.13 5.43.23.13.42.2.62.26a.04.04 0 0 1 0 .08ZM18.99 5.99C17.77 1.79 15.87.04 12.37.04h-1.71a.04.04 0 0 0 0 .08c2.73.39 4.32 2.19 5.39 5.87 0 0 10.49 35.72 11.85 40.4l1.44-4.87L18.99 6Z" />
67
- <Path d="M24.26 53.68h1.24c1.57 0 2.69-.41 3.52-1.1 1.37-1.1 1.99-2.93 2.56-4.86.09-.29 11.2-37.95 11.59-39.42 1.32-4.97 4.27-7.13 7.43-7.9a12.2 12.2 0 0 1 1.58-.28.04.04 0 0 0 0-.08h-1.4c-4.15 0-8.8 1.65-10.56 8.26-.63 2.38-11.5 39.13-11.58 39.42-.57 1.93-1.23 3.96-2.59 5.07-.56.45-1.06.7-1.8.81a.04.04 0 0 0 0 .08ZM81.3 27.76l6.53-21.78C88.89 2.3 90.49.5 93.23.11a.04.04 0 0 0-.01-.08H91.5c-3.5 0-5.4 1.76-6.62 5.95l-5.05 16.97s1.33 4.46 1.46 4.8Z" />
68
- </SVGGroup>
69
- <Path
70
- fillRule="evenodd"
71
- clipRule="evenodd"
72
- d="M98.49.07h-1.82c-2.98 0-4.6 1.49-5.63 5.06l-6.52 21.79a18.22 18.22 0 0 1-1.67 3.96c.57.78 1.17 1.26 1.76 1.38 1.13-.96 2.06-2.75 2.89-5.46l6.49-21.67c.9-3.1 2.23-4.63 4.5-4.98a.04.04 0 0 0 0-.08Z"
73
- fill="accent"
74
- />
75
- <Path
76
- fillRule="evenodd"
77
- clipRule="evenodd"
78
- d="M85.25 34.53h-2.93L78.58 46.9c-1.82 6.1 1.05 6.73 2.15 6.73h2.31a.04.04 0 0 0 .01-.09c-1.25-.3-2.96-1.6-1.45-6.64l3.65-12.37ZM102.35.11c.02 0 .03-.02.03-.04a.04.04 0 0 0-.04-.04h-.4c-2.54 0-3.92 1.27-4.8 4.3 0 0-5 16.82-6.57 22.03-1.57 5.2-2.65 6.6-4.78 6.97l-.11.03a.04.04 0 0 0 0 .08h1.45c3.72 0 5.1-2.48 6.41-6.84l7.5-25.07c.19-.6.7-1.23 1.31-1.42Z"
79
- fill="main"
80
- />
81
- <mask
82
- id={`${id}-b`}
83
- style={{ maskType: "alpha" }}
84
- maskUnits="userSpaceOnUse"
85
- x="29"
86
- y="0"
87
- width="78"
88
- height="54"
89
- >
90
- <Path
51
+ <mask
52
+ id={`${id}-a`}
53
+ style={{ maskType: "alpha" }}
54
+ maskUnits="userSpaceOnUse"
55
+ x="0"
56
+ y="0"
57
+ width="94"
58
+ height="54"
59
+ >
60
+ <Path
61
+ fillRule="evenodd"
62
+ clipRule="evenodd"
63
+ d="M0 .03h93.26v53.65H0V.03Z"
64
+ fill="main"
65
+ />
66
+ </mask>
67
+ <SVGGroup
68
+ mask={`url(#${id}-a)`}
91
69
  fillRule="evenodd"
92
70
  clipRule="evenodd"
93
- d="M29.55.04H106v53.64H29.55V.04Z"
94
71
  fill="main"
95
- />
96
- </mask>
97
- <SVGGroup mask={`url(#${id}-b)`} fillRule="evenodd" clipRule="evenodd">
72
+ >
73
+ <Path d="M84.57 33.44a.04.04 0 0 0 .01-.08c-2.34-.3-3.85-3.59-4.68-6.38-.88-2.93-4.04-13.63-5.92-19.82C72.08.94 66.2.05 63.54.04a.04.04 0 0 0-.01.08c2.49.34 6.02 1.85 7.55 7.04 1.34 4.55 5.6 19.03 5.76 19.51 1.02 3.03 2.22 4.85 3.73 5.83a6.3 6.3 0 0 0 3.54.94h.46ZM23.28 53.68h-.72c-2.12 0-4.68-1.08-6.09-6.04L3.8 4.37C3.04 1.77 1.93.47.03.15A.04.04 0 0 1 .04.07h1.9c2.54 0 3.92 1.27 4.8 4.3 0 0 11.72 39.78 12.79 43.54.78 2.78 1.7 4.67 3.13 5.43.23.13.42.2.62.26a.04.04 0 0 1 0 .08ZM18.99 5.99C17.77 1.79 15.87.04 12.37.04h-1.71a.04.04 0 0 0 0 .08c2.73.39 4.32 2.19 5.39 5.87 0 0 10.49 35.72 11.85 40.4l1.44-4.87L18.99 6Z" />
74
+ <Path d="M24.26 53.68h1.24c1.57 0 2.69-.41 3.52-1.1 1.37-1.1 1.99-2.93 2.56-4.86.09-.29 11.2-37.95 11.59-39.42 1.32-4.97 4.27-7.13 7.43-7.9a12.2 12.2 0 0 1 1.58-.28.04.04 0 0 0 0-.08h-1.4c-4.15 0-8.8 1.65-10.56 8.26-.63 2.38-11.5 39.13-11.58 39.42-.57 1.93-1.23 3.96-2.59 5.07-.56.45-1.06.7-1.8.81a.04.04 0 0 0 0 .08ZM81.3 27.76l6.53-21.78C88.89 2.3 90.49.5 93.23.11a.04.04 0 0 0-.01-.08H91.5c-3.5 0-5.4 1.76-6.62 5.95l-5.05 16.97s1.33 4.46 1.46 4.8Z" />
75
+ </SVGGroup>
98
76
  <Path
99
- d="m88.2 34.45-3.96 13.46c-1.54 5.18.9 5.72 1.83 5.72h2.26a.04.04 0 0 0 0-.09c-1.05-.27-2.44-1.4-1.18-5.63l4.43-15.02c-.7.71-1.88 1.37-3.38 1.56ZM93.71 53.63c.02 0 .04-.02.04-.05a.04.04 0 0 0-.03-.04c-.9-.25-2.02-1.24-.96-4.77 0 0 12.4-42.2 13.08-44.6a3.1 3.1 0 0 0-2.47-4.1c-.02 0-.06-.02-.07.01-.01.04.03.06.04.06.3.16.63.52.45 1.14L89.84 48.77c-1.32 4.4.76 4.86 1.55 4.86h2.32ZM74.1 33.44a.04.04 0 0 0 0-.08 5.77 5.77 0 0 1-2.3-.83c-1.64-1.04-2.9-3.06-3.98-6.5-.1-.29-5.37-18.25-5.55-18.87-1.12-3.8-2.91-5.63-4.68-6.46a7.06 7.06 0 0 0-3.04-.66H53a.04.04 0 0 0-.02.08c.3.05 4.32.17 6.35 7.04 2.03 6.86 4.46 15.07 5.28 17.97 1.77 6.26 4.07 8.3 7.75 8.3h1.73Z"
100
- fill="main"
77
+ fillRule="evenodd"
78
+ clipRule="evenodd"
79
+ d="M98.49.07h-1.82c-2.98 0-4.6 1.49-5.63 5.06l-6.52 21.79a18.22 18.22 0 0 1-1.67 3.96c.57.78 1.17 1.26 1.76 1.38 1.13-.96 2.06-2.75 2.89-5.46l6.49-21.67c.9-3.1 2.23-4.63 4.5-4.98a.04.04 0 0 0 0-.08Z"
80
+ fill={fillForAccent}
101
81
  />
102
82
  <Path
103
- d="M55.43 2.4c-1.48 1.27-2.7 3.16-3.44 5.9-.07.29-11.08 37.74-11.32 38.55-.93 3.12-1.7 6.21-5.2 6.75a.04.04 0 0 0 0 .08h.7l.6-.01c3.56-.14 5.33-1.66 6.85-6.82L54.94 8.3c.44-1.44.96-3.08 1.7-4.52-.15-.25-.7-.96-1.2-1.38Z"
83
+ fillRule="evenodd"
84
+ clipRule="evenodd"
85
+ d="M85.25 34.53h-2.93L78.58 46.9c-1.82 6.1 1.05 6.73 2.15 6.73h2.31a.04.04 0 0 0 .01-.09c-1.25-.3-2.96-1.6-1.45-6.64l3.65-12.37ZM102.35.11c.02 0 .03-.02.03-.04a.04.04 0 0 0-.04-.04h-.4c-2.54 0-3.92 1.27-4.8 4.3 0 0-5 16.82-6.57 22.03-1.57 5.2-2.65 6.6-4.78 6.97l-.11.03a.04.04 0 0 0 0 .08h1.45c3.72 0 5.1-2.48 6.41-6.84l7.5-25.07c.19-.6.7-1.23 1.31-1.42Z"
104
86
  fill="main"
105
87
  />
88
+ <mask
89
+ id={`${id}-b`}
90
+ style={{ maskType: "alpha" }}
91
+ maskUnits="userSpaceOnUse"
92
+ x="29"
93
+ y="0"
94
+ width="78"
95
+ height="54"
96
+ >
97
+ <Path
98
+ fillRule="evenodd"
99
+ clipRule="evenodd"
100
+ d="M29.55.04H106v53.64H29.55V.04Z"
101
+ fill="main"
102
+ />
103
+ </mask>
104
+ <SVGGroup mask={`url(#${id}-b)`} fillRule="evenodd" clipRule="evenodd">
105
+ <Path
106
+ d="m88.2 34.45-3.96 13.46c-1.54 5.18.9 5.72 1.83 5.72h2.26a.04.04 0 0 0 0-.09c-1.05-.27-2.44-1.4-1.18-5.63l4.43-15.02c-.7.71-1.88 1.37-3.38 1.56ZM93.71 53.63c.02 0 .04-.02.04-.05a.04.04 0 0 0-.03-.04c-.9-.25-2.02-1.24-.96-4.77 0 0 12.4-42.2 13.08-44.6a3.1 3.1 0 0 0-2.47-4.1c-.02 0-.06-.02-.07.01-.01.04.03.06.04.06.3.16.63.52.45 1.14L89.84 48.77c-1.32 4.4.76 4.86 1.55 4.86h2.32ZM74.1 33.44a.04.04 0 0 0 0-.08 5.77 5.77 0 0 1-2.3-.83c-1.64-1.04-2.9-3.06-3.98-6.5-.1-.29-5.37-18.25-5.55-18.87-1.12-3.8-2.91-5.63-4.68-6.46a7.06 7.06 0 0 0-3.04-.66H53a.04.04 0 0 0-.02.08c.3.05 4.32.17 6.35 7.04 2.03 6.86 4.46 15.07 5.28 17.97 1.77 6.26 4.07 8.3 7.75 8.3h1.73Z"
107
+ fill="main"
108
+ />
109
+ <Path
110
+ d="M55.43 2.4c-1.48 1.27-2.7 3.16-3.44 5.9-.07.29-11.08 37.74-11.32 38.55-.93 3.12-1.7 6.21-5.2 6.75a.04.04 0 0 0 0 .08h.7l.6-.01c3.56-.14 5.33-1.66 6.85-6.82L54.94 8.3c.44-1.44.96-3.08 1.7-4.52-.15-.25-.7-.96-1.2-1.38Z"
111
+ fill="main"
112
+ />
113
+ <Path
114
+ d="M53.78 1.44a4.64 4.64 0 0 0-4.17.93A10.79 10.79 0 0 0 46.19 8L34.53 47.72c-.58 1.93-1.2 3.75-2.56 4.87-.62.5-1.4.86-2.39 1.01a.04.04 0 0 0 0 .08h1.8c1.57 0 2.69-.41 3.53-1.1 1.36-1.1 1.98-2.93 2.56-4.86L49.05 8.3c.73-2.74 1.95-4.63 3.43-5.9.43-.36.88-.68 1.35-.95l-.05-.01Z"
115
+ fill={fillForAccent}
116
+ />
117
+ </SVGGroup>
106
118
  <Path
107
- d="M53.78 1.44a4.64 4.64 0 0 0-4.17.93A10.79 10.79 0 0 0 46.19 8L34.53 47.72c-.58 1.93-1.2 3.75-2.56 4.87-.62.5-1.4.86-2.39 1.01a.04.04 0 0 0 0 .08h1.8c1.57 0 2.69-.41 3.53-1.1 1.36-1.1 1.98-2.93 2.56-4.86L49.05 8.3c.73-2.74 1.95-4.63 3.43-5.9.43-.36.88-.68 1.35-.95l-.05-.01Z"
108
- fill="accent"
119
+ fillRule="evenodd"
120
+ clipRule="evenodd"
121
+ d="M26.55 50.33a9.09 9.09 0 0 1-1.24-2.7c-.44-1.54-12.46-42.5-12.46-42.5C11.82 1.56 10.2.07 7.22.07H5.4a.04.04 0 0 0 0 .08C7.67.5 9 2.04 9.9 5.13l12.46 42.5c.65 2.28 1.53 3.74 2.5 4.65.7-.4 1.29-1.05 1.69-1.95Z"
122
+ fill="main"
109
123
  />
110
- </SVGGroup>
111
- <Path
112
- fillRule="evenodd"
113
- clipRule="evenodd"
114
- d="M26.55 50.33a9.09 9.09 0 0 1-1.24-2.7c-.44-1.54-12.46-42.5-12.46-42.5C11.82 1.56 10.2.07 7.22.07H5.4a.04.04 0 0 0 0 .08C7.67.5 9 2.04 9.9 5.13l12.46 42.5c.65 2.28 1.53 3.74 2.5 4.65.7-.4 1.29-1.05 1.69-1.95Z"
115
- fill="main"
116
- />
117
- </SvgBox>
118
- );
119
- });
124
+ </SvgBox>
125
+ );
126
+ },
127
+ );
120
128
  VyLogo.displayName = "VyLogo";
@@ -8,12 +8,13 @@ export const attachedInputsRecipe = defineRecipe({
8
8
  "& select": {
9
9
  borderEndRadius: 0,
10
10
  },
11
+
11
12
  "& > *": {
12
13
  position: "relative",
13
- zIndex: 0,
14
+ zIndex: 100,
14
15
  },
15
16
  "& > *:focus-within": {
16
- zIndex: 1,
17
+ zIndex: 101,
17
18
  },
18
19
  },
19
20
  variants: {
@@ -16,7 +16,6 @@ export const comboboxSlotRecipe = defineSlotRecipe({
16
16
  label: {
17
17
  fontWeight: "medium",
18
18
  userSelect: "none",
19
- textStyle: "sm",
20
19
  },
21
20
 
22
21
  input: {
@@ -6,8 +6,6 @@ export const textStyles = defineTextStyles({
6
6
  value: {
7
7
  fontSize: [
8
8
  tokens.font.style.xxl["font-size"].mobile,
9
- null,
10
- null,
11
9
  tokens.font.style.xxl["font-size"].desktop,
12
10
  ],
13
11
  fontFamily: tokens.font.style.xxl["font-family"],
@@ -18,8 +16,6 @@ export const textStyles = defineTextStyles({
18
16
  value: {
19
17
  fontSize: [
20
18
  tokens.font.style["xl-display"]["font-size"].mobile,
21
- null,
22
- null,
23
19
  tokens.font.style["xl-display"]["font-size"].desktop,
24
20
  ],
25
21
  fontFamily: tokens.font.style["xl-display"]["font-family"],
@@ -30,8 +26,6 @@ export const textStyles = defineTextStyles({
30
26
  value: {
31
27
  fontSize: [
32
28
  tokens.font.style["xl-sans"]["font-size"].mobile,
33
- null,
34
- null,
35
29
  tokens.font.style["xl-sans"]["font-size"].desktop,
36
30
  ],
37
31
  fontFamily: tokens.font.style["xl-sans"]["font-family"],
@@ -42,8 +36,6 @@ export const textStyles = defineTextStyles({
42
36
  value: {
43
37
  fontSize: [
44
38
  tokens.font.style.lg["font-size"].mobile,
45
- null,
46
- null,
47
39
  tokens.font.style.lg["font-size"].desktop,
48
40
  ],
49
41
  fontFamily: tokens.font.style.lg["font-family"],
@@ -54,8 +46,6 @@ export const textStyles = defineTextStyles({
54
46
  value: {
55
47
  fontSize: [
56
48
  tokens.font.style["md-lg"]["font-size"].mobile,
57
- null,
58
- null,
59
49
  tokens.font.style["md-lg"]["font-size"].desktop,
60
50
  ],
61
51
  fontFamily: tokens.font.style["md-lg"]["font-family"],
@@ -66,8 +56,6 @@ export const textStyles = defineTextStyles({
66
56
  value: {
67
57
  fontSize: [
68
58
  tokens.font.style.md["font-size"].mobile,
69
- null,
70
- null,
71
59
  tokens.font.style.md["font-size"].desktop,
72
60
  ],
73
61
  fontFamily: tokens.font.style.md["font-family"],
@@ -78,8 +66,6 @@ export const textStyles = defineTextStyles({
78
66
  value: {
79
67
  fontSize: [
80
68
  tokens.font.style.sm["font-size"].mobile,
81
- null,
82
- null,
83
69
  tokens.font.style.sm["font-size"].desktop,
84
70
  ],
85
71
  fontFamily: tokens.font.style.sm["font-family"],
@@ -90,8 +76,6 @@ export const textStyles = defineTextStyles({
90
76
  value: {
91
77
  fontSize: [
92
78
  tokens.font.style.xs["font-size"].mobile,
93
- null,
94
- null,
95
79
  tokens.font.style.xs["font-size"].desktop,
96
80
  ],
97
81
  fontFamily: tokens.font.style.xs["font-family"],
@@ -102,8 +86,6 @@ export const textStyles = defineTextStyles({
102
86
  value: {
103
87
  fontSize: [
104
88
  tokens.font.style["2xs"]["font-size"].mobile,
105
- null,
106
- null,
107
89
  tokens.font.style["2xs"]["font-size"].desktop,
108
90
  ],
109
91
  fontFamily: tokens.font.style["2xs"]["font-family"],