@vygruppen/spor-react 12.24.11 → 12.24.12

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/dist/index.mjs CHANGED
@@ -73,7 +73,7 @@ var warnAboutMismatchingIcon = ({
73
73
  };
74
74
  var Accordion = forwardRef(
75
75
  (props, ref) => {
76
- const { variant = "core", children, gap = 2, ...rest } = props;
76
+ const { variant = "core", children, gap = 2, css, ...rest } = props;
77
77
  const recipe = useSlotRecipe({ key: "accordion" });
78
78
  const styles = recipe({ variant });
79
79
  return /* @__PURE__ */ jsx(
@@ -81,7 +81,7 @@ var Accordion = forwardRef(
81
81
  {
82
82
  ...rest,
83
83
  ref,
84
- css: styles.root,
84
+ css: { ...styles.root, ...css },
85
85
  variant,
86
86
  children: /* @__PURE__ */ jsx(Stack, { gap, children })
87
87
  }
@@ -93,28 +93,42 @@ var AccordionItemTrigger = forwardRef(function AccordionItemTrigger2(props, ref)
93
93
  startElement,
94
94
  children,
95
95
  headingLevel,
96
+ css,
96
97
  showChevron = true,
97
98
  ...rest
98
99
  } = props;
99
100
  warnAboutMismatchingIcon({ icon: startElement });
100
101
  const recipe = useSlotRecipe({ key: "accordion" });
101
102
  const styles = recipe();
102
- return /* @__PURE__ */ jsx(Box, { as: headingLevel, children: /* @__PURE__ */ jsxs(Accordion$1.ItemTrigger, { ...rest, ref, css: styles.itemTrigger, children: [
103
- /* @__PURE__ */ jsxs(HStack, { flex: "1", gap: 1, textAlign: "start", width: "full", children: [
104
- startElement && startElement,
105
- children
106
- ] }),
107
- showChevron && /* @__PURE__ */ jsx(Accordion$1.ItemIndicator, { children: /* @__PURE__ */ jsx(DropdownDownFill24Icon, {}) })
108
- ] }) });
103
+ return /* @__PURE__ */ jsx(Box, { as: headingLevel, children: /* @__PURE__ */ jsxs(
104
+ Accordion$1.ItemTrigger,
105
+ {
106
+ ...rest,
107
+ ref,
108
+ css: { ...styles.itemTrigger, ...css },
109
+ children: [
110
+ /* @__PURE__ */ jsxs(HStack, { flex: "1", gap: 1, textAlign: "start", width: "full", children: [
111
+ startElement && startElement,
112
+ children
113
+ ] }),
114
+ showChevron && /* @__PURE__ */ jsx(Accordion$1.ItemIndicator, { children: /* @__PURE__ */ jsx(DropdownDownFill24Icon, {}) })
115
+ ]
116
+ }
117
+ ) });
109
118
  });
110
119
  var AccordionItemContent = forwardRef(function AccordionItemContent2(props, ref) {
111
- const { children, "aria-labelledby": ariaLabelledBy, ...otherProps } = props;
120
+ const {
121
+ children,
122
+ css,
123
+ "aria-labelledby": ariaLabelledBy,
124
+ ...otherProps
125
+ } = props;
112
126
  const recipe = useSlotRecipe({ key: "accordion" });
113
127
  const styles = recipe();
114
128
  return /* @__PURE__ */ jsx(
115
129
  Accordion$1.ItemContent,
116
130
  {
117
- css: styles.itemContent,
131
+ css: { ...styles.itemContent, ...css },
118
132
  "aria-labelledby": ariaLabelledBy,
119
133
  children: /* @__PURE__ */ jsx(Accordion$1.ItemBody, { ...otherProps, ref, children })
120
134
  }
@@ -324,6 +338,7 @@ var ProgressBar = forwardRef(
324
338
  isActive = true,
325
339
  showValueText = false,
326
340
  height = "0.5rem",
341
+ css,
327
342
  ...rest
328
343
  }, ref) => {
329
344
  const recipe = useSlotRecipe({ key: "progressbar" });
@@ -332,21 +347,30 @@ var ProgressBar = forwardRef(
332
347
  label,
333
348
  delay: labelRotationDelay
334
349
  });
335
- return /* @__PURE__ */ jsxs(Progress.Root, { css: styles.container, ref, value, ...rest, children: [
336
- /* @__PURE__ */ jsx(
337
- Progress.Track,
338
- {
339
- height,
340
- css: isActive ? styles.background : styles.disabledBackground,
341
- children: /* @__PURE__ */ jsx(Progress.Range, { css: styles.progress })
342
- }
343
- ),
344
- label && /* @__PURE__ */ jsx(Progress.Label, { css: styles.description, children: currentLoadingText }),
345
- showValueText && /* @__PURE__ */ jsxs(Progress.ValueText, { children: [
350
+ return /* @__PURE__ */ jsxs(
351
+ Progress.Root,
352
+ {
353
+ css: { ...styles.container, ...css },
354
+ ref,
346
355
  value,
347
- "%"
348
- ] })
349
- ] });
356
+ ...rest,
357
+ children: [
358
+ /* @__PURE__ */ jsx(
359
+ Progress.Track,
360
+ {
361
+ height,
362
+ css: isActive ? styles.background : styles.disabledBackground,
363
+ children: /* @__PURE__ */ jsx(Progress.Range, { css: styles.progress })
364
+ }
365
+ ),
366
+ label && /* @__PURE__ */ jsx(Progress.Label, { css: styles.description, children: currentLoadingText }),
367
+ showValueText && /* @__PURE__ */ jsxs(Progress.ValueText, { children: [
368
+ value,
369
+ "%"
370
+ ] })
371
+ ]
372
+ }
373
+ );
350
374
  }
351
375
  );
352
376
  ProgressBar.displayName = "ProgressBar";
@@ -1147,24 +1171,40 @@ var Alert = forwardRef((props, ref) => {
1147
1171
  if (!open)
1148
1172
  return null;
1149
1173
  return /* @__PURE__ */ jsxs(Alert$1.Root, { ref, ...props, children: [
1150
- /* @__PURE__ */ jsxs(Alert$1.Content, { flexDirection: title ? "column" : "row", children: [
1151
- /* @__PURE__ */ jsxs(HStack, { gap: "1", alignItems: "flex-start", children: [
1152
- showIndicator && /* @__PURE__ */ jsx(Alert$1.Indicator, { asChild: true, children: /* @__PURE__ */ jsx(AlertIcon, { variant: props.variant ?? "info", customIcon: icon }) }),
1153
- title && /* @__PURE__ */ jsx(Alert$1.Title, { paddingRight: closable ? 6 : 0, children: title })
1154
- ] }),
1155
- children && /* @__PURE__ */ jsx(
1156
- Alert$1.Description,
1157
- {
1158
- width: "100%",
1159
- paddingLeft: title ? 0.5 : 0,
1160
- paddingRight: closable ? 6 : 0,
1161
- children
1162
- }
1163
- )
1164
- ] }),
1174
+ /* @__PURE__ */ jsxs(
1175
+ Alert$1.Content,
1176
+ {
1177
+ flexDirection: title ? "column" : "row",
1178
+ "data-part": "content",
1179
+ children: [
1180
+ /* @__PURE__ */ jsxs(HStack, { gap: "1", alignItems: "flex-start", children: [
1181
+ showIndicator && /* @__PURE__ */ jsx(Alert$1.Indicator, { asChild: true, children: /* @__PURE__ */ jsx(AlertIcon, { variant: props.variant ?? "info", customIcon: icon }) }),
1182
+ title && /* @__PURE__ */ jsx(
1183
+ Alert$1.Title,
1184
+ {
1185
+ paddingRight: closable ? 6 : 0,
1186
+ "data-part": "title",
1187
+ children: title
1188
+ }
1189
+ )
1190
+ ] }),
1191
+ children && /* @__PURE__ */ jsx(
1192
+ Alert$1.Description,
1193
+ {
1194
+ width: "100%",
1195
+ paddingLeft: title ? 0.5 : 0,
1196
+ paddingRight: closable ? 6 : 0,
1197
+ "data-part": "description",
1198
+ children
1199
+ }
1200
+ )
1201
+ ]
1202
+ }
1203
+ ),
1165
1204
  closable && /* @__PURE__ */ jsx(
1166
1205
  CloseButton,
1167
1206
  {
1207
+ "data-part": "close-button",
1168
1208
  size: "xs",
1169
1209
  position: "absolute",
1170
1210
  top: "1.5",
@@ -1332,15 +1372,22 @@ var texts6 = createTexts({
1332
1372
  }
1333
1373
  });
1334
1374
  var Breadcrumb = forwardRef(
1335
- ({ children, ...props }, ref) => {
1375
+ ({ children, css, ...props }, ref) => {
1336
1376
  const validChildren = React20__default.Children.toArray(children).filter(
1337
1377
  (element) => React20__default.isValidElement(element)
1338
1378
  );
1339
- return /* @__PURE__ */ jsx(Breadcrumb$1.Root, { ref, ...props, children: /* @__PURE__ */ jsx(Breadcrumb$1.List, { children: validChildren.map((child, index) => {
1379
+ return /* @__PURE__ */ jsx(Breadcrumb$1.Root, { ref, ...props, css, children: /* @__PURE__ */ jsx(Breadcrumb$1.List, { "data-part": "list", children: validChildren.map((child, index) => {
1340
1380
  const isLast = index === validChildren.length - 1;
1341
1381
  return /* @__PURE__ */ jsxs(React20__default.Fragment, { children: [
1342
- /* @__PURE__ */ jsx(Breadcrumb$1.Item, { children: child }),
1343
- !isLast && /* @__PURE__ */ jsx(Breadcrumb$1.Separator, { "aria-hidden": "true", children: /* @__PURE__ */ jsx(DropdownRightFill18Icon, {}) })
1382
+ /* @__PURE__ */ jsx(Breadcrumb$1.Item, { "data-part": "item", children: child }),
1383
+ !isLast && /* @__PURE__ */ jsx(
1384
+ Breadcrumb$1.Separator,
1385
+ {
1386
+ "aria-hidden": "true",
1387
+ "data-part": "separator",
1388
+ children: /* @__PURE__ */ jsx(DropdownRightFill18Icon, {})
1389
+ }
1390
+ )
1344
1391
  ] }, index);
1345
1392
  }) }) });
1346
1393
  }
@@ -1602,6 +1649,7 @@ function CalendarCell({ date, currentMonth }) {
1602
1649
  children: /* @__PURE__ */ jsx(
1603
1650
  Box,
1604
1651
  {
1652
+ "data-part": "calendar-cell",
1605
1653
  width: "100%",
1606
1654
  height: "100%",
1607
1655
  display: "flex",
@@ -1662,7 +1710,7 @@ function CalendarGrid({ offset = {} }) {
1662
1710
  state
1663
1711
  );
1664
1712
  const weeksInMonth = getWeeksInMonth(startDate, locale);
1665
- return /* @__PURE__ */ jsxs("table", { ...gridProps, cellPadding: "0", children: [
1713
+ return /* @__PURE__ */ jsxs("table", { ...gridProps, cellPadding: "0", "data-part": "calendar-grid", children: [
1666
1714
  /* @__PURE__ */ jsx("thead", { ...headerProps, children: /* @__PURE__ */ jsx("tr", { children: weekDays[language].map((day, index) => /* @__PURE__ */ jsx("th", { children: /* @__PURE__ */ jsx(
1667
1715
  Text3,
1668
1716
  {
@@ -1679,6 +1727,7 @@ function CalendarGrid({ offset = {} }) {
1679
1727
  paddingTop: 0.5,
1680
1728
  textAlign: "center",
1681
1729
  fontWeight: "bold",
1730
+ "data-part": "calendar-table-heading",
1682
1731
  children: day
1683
1732
  },
1684
1733
  index
@@ -1713,63 +1762,72 @@ function CalendarHeader({ dualView }) {
1713
1762
  function handleNext() {
1714
1763
  state.focusNextPage();
1715
1764
  }
1716
- return /* @__PURE__ */ jsxs(Flex, { flex: 1, alignItems: "center", paddingBottom: 4, children: [
1717
- /* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx("h2", { children: calendarProps["aria-label"] }) }),
1718
- /* @__PURE__ */ jsx(
1719
- IconButton,
1720
- {
1721
- size: "md",
1722
- onClick: handlePrevious,
1723
- variant: "ghost",
1724
- marginLeft: 1,
1725
- disabled: prevButtonProps.isDisabled,
1726
- "aria-label": t(texts7.previousMonth),
1727
- icon: /* @__PURE__ */ jsx(icons_exports.DropdownLeftFill24Icon, {})
1728
- }
1729
- ),
1730
- /* @__PURE__ */ jsx(
1731
- Text3,
1732
- {
1733
- "aria-hidden": true,
1734
- flex: 1,
1735
- fontWeight: "bold",
1736
- fontSize: "sm",
1737
- textAlign: "center",
1738
- children: capitalizeFirstLetter(
1739
- monthDateFormatter.format(
1740
- state.visibleRange.start.toDate(state.timeZone)
1741
- )
1742
- )
1743
- }
1744
- ),
1745
- dualView && /* @__PURE__ */ jsx(
1746
- Text3,
1747
- {
1748
- "aria-hidden": true,
1749
- flex: 1,
1750
- fontWeight: "bold",
1751
- fontSize: "sm",
1752
- textAlign: "center",
1753
- children: capitalizeFirstLetter(
1754
- monthDateFormatter.format(
1755
- state.visibleRange.start.add({ months: 1 }).toDate(state.timeZone)
1756
- )
1765
+ return /* @__PURE__ */ jsxs(
1766
+ Flex,
1767
+ {
1768
+ flex: 1,
1769
+ alignItems: "center",
1770
+ paddingBottom: 4,
1771
+ "data-part": "calendar-header",
1772
+ children: [
1773
+ /* @__PURE__ */ jsx(VisuallyHidden, { children: /* @__PURE__ */ jsx("h2", { children: calendarProps["aria-label"] }) }),
1774
+ /* @__PURE__ */ jsx(
1775
+ IconButton,
1776
+ {
1777
+ size: "md",
1778
+ onClick: handlePrevious,
1779
+ variant: "ghost",
1780
+ marginLeft: 1,
1781
+ disabled: prevButtonProps.isDisabled,
1782
+ "aria-label": t(texts7.previousMonth),
1783
+ icon: /* @__PURE__ */ jsx(icons_exports.DropdownLeftFill24Icon, {})
1784
+ }
1785
+ ),
1786
+ /* @__PURE__ */ jsx(
1787
+ Text3,
1788
+ {
1789
+ "aria-hidden": true,
1790
+ flex: 1,
1791
+ fontWeight: "bold",
1792
+ fontSize: "sm",
1793
+ textAlign: "center",
1794
+ children: capitalizeFirstLetter(
1795
+ monthDateFormatter.format(
1796
+ state.visibleRange.start.toDate(state.timeZone)
1797
+ )
1798
+ )
1799
+ }
1800
+ ),
1801
+ dualView && /* @__PURE__ */ jsx(
1802
+ Text3,
1803
+ {
1804
+ "aria-hidden": true,
1805
+ flex: 1,
1806
+ fontWeight: "bold",
1807
+ fontSize: "sm",
1808
+ textAlign: "center",
1809
+ children: capitalizeFirstLetter(
1810
+ monthDateFormatter.format(
1811
+ state.visibleRange.start.add({ months: 1 }).toDate(state.timeZone)
1812
+ )
1813
+ )
1814
+ }
1815
+ ),
1816
+ /* @__PURE__ */ jsx(
1817
+ IconButton,
1818
+ {
1819
+ size: "md",
1820
+ onClick: handleNext,
1821
+ marginRight: 1,
1822
+ variant: "ghost",
1823
+ disabled: nextButtonProps.isDisabled,
1824
+ "aria-label": t(texts7.nextMonth),
1825
+ icon: /* @__PURE__ */ jsx(icons_exports.DropdownRightFill24Icon, {})
1826
+ }
1757
1827
  )
1758
- }
1759
- ),
1760
- /* @__PURE__ */ jsx(
1761
- IconButton,
1762
- {
1763
- size: "md",
1764
- onClick: handleNext,
1765
- marginRight: 1,
1766
- variant: "ghost",
1767
- disabled: nextButtonProps.isDisabled,
1768
- "aria-label": t(texts7.nextMonth),
1769
- icon: /* @__PURE__ */ jsx(icons_exports.DropdownRightFill24Icon, {})
1770
- }
1771
- )
1772
- ] });
1828
+ ]
1829
+ }
1830
+ );
1773
1831
  }
1774
1832
  var texts7 = createTexts({
1775
1833
  previousMonth: {
@@ -1785,22 +1843,32 @@ var texts7 = createTexts({
1785
1843
  sv: "N\xE4sta m\xE5nad"
1786
1844
  }
1787
1845
  });
1788
- function Calendar({ dualView }) {
1846
+ function Calendar({ dualView, css }) {
1789
1847
  const { calendarProps, ref } = useCalendar();
1790
- return /* @__PURE__ */ jsxs(Box, { width: "fit-content", ref, ...calendarProps, children: [
1791
- /* @__PURE__ */ jsx(CalendarHeader, { dualView }),
1792
- /* @__PURE__ */ jsxs(Flex, { alignItems: "flex-start", children: [
1793
- /* @__PURE__ */ jsx(Box, { paddingRight: dualView ? 4 : 0, children: /* @__PURE__ */ jsx(CalendarGrid, {}) }),
1794
- dualView && /* @__PURE__ */ jsx(
1795
- Box,
1796
- {
1797
- paddingLeft: 4,
1798
- borderLeft: ["1px solid var(--spor-colors-outline-disabled)"],
1799
- children: /* @__PURE__ */ jsx(CalendarGrid, { offset: { months: 1 } })
1800
- }
1801
- )
1802
- ] })
1803
- ] });
1848
+ return /* @__PURE__ */ jsxs(
1849
+ Box,
1850
+ {
1851
+ width: "fit-content",
1852
+ ref,
1853
+ ...calendarProps,
1854
+ css,
1855
+ "data-part": "root",
1856
+ children: [
1857
+ /* @__PURE__ */ jsx(CalendarHeader, { dualView }),
1858
+ /* @__PURE__ */ jsxs(Flex, { alignItems: "flex-start", children: [
1859
+ /* @__PURE__ */ jsx(Box, { paddingRight: dualView ? 4 : 0, children: /* @__PURE__ */ jsx(CalendarGrid, {}) }),
1860
+ dualView && /* @__PURE__ */ jsx(
1861
+ Box,
1862
+ {
1863
+ paddingLeft: 4,
1864
+ borderLeft: ["1px solid var(--spor-colors-outline-disabled)"],
1865
+ children: /* @__PURE__ */ jsx(CalendarGrid, { offset: { months: 1 } })
1866
+ }
1867
+ )
1868
+ ] })
1869
+ ]
1870
+ }
1871
+ );
1804
1872
  }
1805
1873
  function ScrollCalendar(boxProps) {
1806
1874
  const { state, calendarProps, ref, startValue } = useCalendar();
@@ -2079,6 +2147,7 @@ function CalendarCell2({
2079
2147
  ref,
2080
2148
  css: styles.dateCell,
2081
2149
  hidden: isOutsideVisibleRange,
2150
+ "data-part": "calendar-cell",
2082
2151
  children: date.day
2083
2152
  }
2084
2153
  ) });
@@ -2111,8 +2180,8 @@ function CalendarGrid2({
2111
2180
  key: "datePicker"
2112
2181
  });
2113
2182
  const styles = recipe({ variant });
2114
- return /* @__PURE__ */ jsxs(Box, { as: "table", ...gridProps, css: styles.box, children: [
2115
- /* @__PURE__ */ jsx("thead", { ...headerProps, children: /* @__PURE__ */ jsx("tr", { children: weekDays2[language].map((day, index) => {
2183
+ return /* @__PURE__ */ jsxs(Box, { as: "table", ...gridProps, css: styles.box, "data-part": "calendar-grid", children: [
2184
+ /* @__PURE__ */ jsx("thead", { ...headerProps, children: /* @__PURE__ */ jsx("tr", { "data-part": "calendar-table-heading", children: weekDays2[language].map((day, index) => {
2116
2185
  return /* @__PURE__ */ jsx(
2117
2186
  Text3,
2118
2187
  {
@@ -2177,30 +2246,39 @@ function CalendarHeader2({
2177
2246
  );
2178
2247
  const areAllOtherYearsDisabled = isPreviousYearDisabled && isNextYearDisabled;
2179
2248
  const isYearPickerVisible = showYearNavigation && !areAllOtherYearsDisabled;
2180
- return /* @__PURE__ */ jsxs(Flex, { alignItems: "center", paddingBottom: "4", justifyContent: "space-between", children: [
2181
- /* @__PURE__ */ jsx(
2182
- CalendarNavigator,
2183
- {
2184
- title: title || (isYearPickerVisible ? monthTitle : monthAndYearTitle),
2185
- unit: "month",
2186
- onPrevious: () => state.setFocusedDate(state.focusedDate.subtract({ months: 1 })),
2187
- onNext: () => state.setFocusedDate(state.focusedDate.add({ months: 1 })),
2188
- isNextDisabled: !state.isPreviousVisibleRangeInvalid,
2189
- isPreviousDisabled: !state.isNextVisibleRangeInvalid
2190
- }
2191
- ),
2192
- isYearPickerVisible && /* @__PURE__ */ jsx(
2193
- CalendarNavigator,
2194
- {
2195
- title: jsDate.getFullYear().toString(),
2196
- unit: "year",
2197
- onPrevious: () => state.setFocusedDate(state.focusedDate.subtract({ years: 1 })),
2198
- onNext: () => state.setFocusedDate(state.focusedDate.add({ years: 1 })),
2199
- isPreviousDisabled: isPreviousYearDisabled,
2200
- isNextDisabled: isNextYearDisabled
2201
- }
2202
- )
2203
- ] });
2249
+ return /* @__PURE__ */ jsxs(
2250
+ Flex,
2251
+ {
2252
+ alignItems: "center",
2253
+ paddingBottom: "4",
2254
+ justifyContent: "space-between",
2255
+ "data-part": "calendar-header",
2256
+ children: [
2257
+ /* @__PURE__ */ jsx(
2258
+ CalendarNavigator,
2259
+ {
2260
+ title: title || (isYearPickerVisible ? monthTitle : monthAndYearTitle),
2261
+ unit: "month",
2262
+ onPrevious: () => state.setFocusedDate(state.focusedDate.subtract({ months: 1 })),
2263
+ onNext: () => state.setFocusedDate(state.focusedDate.add({ months: 1 })),
2264
+ isNextDisabled: !state.isPreviousVisibleRangeInvalid,
2265
+ isPreviousDisabled: !state.isNextVisibleRangeInvalid
2266
+ }
2267
+ ),
2268
+ isYearPickerVisible && /* @__PURE__ */ jsx(
2269
+ CalendarNavigator,
2270
+ {
2271
+ title: jsDate.getFullYear().toString(),
2272
+ unit: "year",
2273
+ onPrevious: () => state.setFocusedDate(state.focusedDate.subtract({ years: 1 })),
2274
+ onNext: () => state.setFocusedDate(state.focusedDate.add({ years: 1 })),
2275
+ isPreviousDisabled: isPreviousYearDisabled,
2276
+ isNextDisabled: isNextYearDisabled
2277
+ }
2278
+ )
2279
+ ]
2280
+ }
2281
+ );
2204
2282
  }
2205
2283
  var capitalize = (string_ = "") => string_.charAt(0).toUpperCase() + string_.slice(1);
2206
2284
  var CalendarNavigator = ({
@@ -2274,6 +2352,7 @@ var texts8 = createTexts({
2274
2352
  function Calendar2({
2275
2353
  showYearNavigation,
2276
2354
  variant,
2355
+ css,
2277
2356
  ...props
2278
2357
  }) {
2279
2358
  const { t } = useTranslation();
@@ -2290,10 +2369,18 @@ function Calendar2({
2290
2369
  const { calendarProps } = useCalendar$1(props, state);
2291
2370
  const calendarAriaLabel = calendarProps["aria-label"];
2292
2371
  const ariaLabel = t(texts9.calendar) + (calendarAriaLabel ? ` ${calendarAriaLabel}` : "");
2293
- return /* @__PURE__ */ jsxs(Box, { ...calendarProps, "aria-label": ariaLabel, css: styles.box, children: [
2294
- /* @__PURE__ */ jsx(CalendarHeader2, { state, showYearNavigation }),
2295
- /* @__PURE__ */ jsx(CalendarGrid2, { variant, state })
2296
- ] });
2372
+ return /* @__PURE__ */ jsxs(
2373
+ Box,
2374
+ {
2375
+ ...calendarProps,
2376
+ "aria-label": ariaLabel,
2377
+ css: { ...styles.box, ...css },
2378
+ children: [
2379
+ /* @__PURE__ */ jsx(CalendarHeader2, { state, showYearNavigation }),
2380
+ /* @__PURE__ */ jsx(CalendarGrid2, { variant, state })
2381
+ ]
2382
+ }
2383
+ );
2297
2384
  }
2298
2385
  var texts9 = createTexts({
2299
2386
  calendar: {
@@ -2507,6 +2594,7 @@ var DatePicker = forwardRef(
2507
2594
  invalid = false,
2508
2595
  helperText,
2509
2596
  positioning,
2597
+ css,
2510
2598
  ...props
2511
2599
  }, externalRef) => {
2512
2600
  const chakraFieldProps = useFieldContext();
@@ -2544,7 +2632,8 @@ var DatePicker = forwardRef(
2544
2632
  {
2545
2633
  ...calendarProps,
2546
2634
  variant,
2547
- showYearNavigation
2635
+ showYearNavigation,
2636
+ css
2548
2637
  }
2549
2638
  ) }) }) });
2550
2639
  return /* @__PURE__ */ jsx(I18nProvider, { locale, children: /* @__PURE__ */ jsx(
@@ -2554,6 +2643,7 @@ var DatePicker = forwardRef(
2554
2643
  display: "inline-flex",
2555
2644
  flexDirection: "column",
2556
2645
  width,
2646
+ css,
2557
2647
  children: /* @__PURE__ */ jsxs(Popover$1.Root, { ...dialogProps, positioning, children: [
2558
2648
  /* @__PURE__ */ jsx(
2559
2649
  Field3,
@@ -4613,6 +4703,7 @@ var Switch = forwardRef(
4613
4703
  invalid,
4614
4704
  errorText,
4615
4705
  helperText,
4706
+ css,
4616
4707
  ...rest
4617
4708
  } = props;
4618
4709
  const recipe = useSlotRecipe({ key: "switch" });
@@ -4626,6 +4717,7 @@ var Switch = forwardRef(
4626
4717
  helperText,
4627
4718
  required: props.required,
4628
4719
  id: rest.id,
4720
+ css,
4629
4721
  children: /* @__PURE__ */ jsxs(
4630
4722
  Switch$1.Root,
4631
4723
  {
@@ -5963,7 +6055,7 @@ var ProgressDot = ({ isActive }) => {
5963
6055
  }
5964
6056
  );
5965
6057
  };
5966
- var ProgressIndicator = forwardRef(({ numberOfSteps, activeStep }, ref) => {
6058
+ var ProgressIndicator = forwardRef(({ numberOfSteps, activeStep, css }, ref) => {
5967
6059
  const { t } = useTranslation();
5968
6060
  const recipe = useSlotRecipe({
5969
6061
  key: "progressIndicator"
@@ -5972,18 +6064,24 @@ var ProgressIndicator = forwardRef(({ numberOfSteps, activeStep }, ref) => {
5972
6064
  return /* @__PURE__ */ jsx(
5973
6065
  Box,
5974
6066
  {
5975
- css: styles.root,
6067
+ css: { ...styles.root, ...css },
5976
6068
  role: "progressbar",
5977
6069
  "aria-valuemin": 1,
5978
6070
  "aria-valuemax": numberOfSteps,
5979
6071
  "aria-valuenow": activeStep,
5980
6072
  "aria-valuetext": t(texts26.stepsOf(activeStep, numberOfSteps)),
5981
6073
  ref,
5982
- children: /* @__PURE__ */ jsx(Box, { css: styles.container, children: Array.from({ length: numberOfSteps }, (_, index) => /* @__PURE__ */ jsx(
5983
- ProgressDot,
6074
+ children: /* @__PURE__ */ jsx(Box, { css: { ...styles.container, ...css }, children: Array.from({ length: numberOfSteps }, (_, index) => /* @__PURE__ */ jsx(
6075
+ Box,
5984
6076
  {
5985
- "aria-valuenow": index + 1,
5986
- isActive: activeStep === index + 1
6077
+ "data-part": activeStep === index + 1 ? "current-step" : "step",
6078
+ children: /* @__PURE__ */ jsx(
6079
+ ProgressDot,
6080
+ {
6081
+ "aria-valuenow": index + 1,
6082
+ isActive: activeStep === index + 1
6083
+ }
6084
+ )
5987
6085
  },
5988
6086
  index
5989
6087
  )) })
@@ -6142,7 +6240,8 @@ var Stepper = forwardRef(
6142
6240
  heading,
6143
6241
  headingLevel,
6144
6242
  variant,
6145
- disabled
6243
+ disabled,
6244
+ css
6146
6245
  } = props;
6147
6246
  const recipe = useSlotRecipe({ key: "stepper" });
6148
6247
  const style = recipe({ variant });
@@ -6150,14 +6249,14 @@ var Stepper = forwardRef(
6150
6249
  const activeStep = Number(activeStepAsStringOrNumber);
6151
6250
  const { t } = useTranslation();
6152
6251
  const hideBackButtonOnFirstStep = activeStep === 1 && !onBackButtonClick;
6153
- return /* @__PURE__ */ jsx(Box, { css: style.root, ref, children: /* @__PURE__ */ jsx(
6252
+ return /* @__PURE__ */ jsx(Box, { css: { ...style.root, ...css }, ref, children: /* @__PURE__ */ jsx(
6154
6253
  StepperProvider,
6155
6254
  {
6156
6255
  onClick,
6157
6256
  activeStep,
6158
6257
  variant,
6159
6258
  numberOfSteps,
6160
- children: /* @__PURE__ */ jsxs(Box, { css: style.container, children: [
6259
+ children: /* @__PURE__ */ jsxs(Box, { css: style.container, "data-part": "root", children: [
6161
6260
  /* @__PURE__ */ jsx(Box, { css: style.innerContainer, children: /* @__PURE__ */ jsxs(
6162
6261
  Flex,
6163
6262
  {
@@ -6183,8 +6282,17 @@ var Stepper = forwardRef(
6183
6282
  }
6184
6283
  }
6185
6284
  ),
6186
- heading && /* @__PURE__ */ jsx(Text3, { variant: "sm", as: headingLevel, css: style.title, children: heading }),
6187
- /* @__PURE__ */ jsx(Box, { css: style.stepCounter, children: t(texts27.stepsOf(activeStep, numberOfSteps)) })
6285
+ heading && /* @__PURE__ */ jsx(
6286
+ Text3,
6287
+ {
6288
+ variant: "sm",
6289
+ as: headingLevel,
6290
+ css: style.title,
6291
+ "data-part": "title",
6292
+ children: heading
6293
+ }
6294
+ ),
6295
+ /* @__PURE__ */ jsx(Box, { css: style.stepCounter, "data-part": "step-counter", children: t(texts27.stepsOf(activeStep, numberOfSteps)) })
6188
6296
  ]
6189
6297
  }
6190
6298
  ) }),
@@ -6234,7 +6342,7 @@ var StepperStep = ({
6234
6342
  _dark: "whiteAlpha.200"
6235
6343
  };
6236
6344
  const disabled = state !== "active" && disabledOverride || state === "disabled";
6237
- return /* @__PURE__ */ jsxs(Box, { css: style.stepContainer, children: [
6345
+ return /* @__PURE__ */ jsxs(Box, { css: style.stepContainer, "data-part": "step-container", children: [
6238
6346
  stepNumber > 1 && /* @__PURE__ */ jsx(
6239
6347
  DropdownRightFill18Icon,
6240
6348
  {
@@ -6264,6 +6372,7 @@ var StepperStep = ({
6264
6372
  "aria-current": state === "active" ? "step" : void 0,
6265
6373
  css: state === "active" ? style.stepButton._currentStep : style.stepButton,
6266
6374
  fontWeight: state === "active" ? "bold" : void 0,
6375
+ "data-part": "step-button",
6267
6376
  children
6268
6377
  }
6269
6378
  )