@butternutbox/pawprint-native 0.10.6 → 0.10.8

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.js CHANGED
@@ -9,7 +9,7 @@ import ibmPlexSansCondensed400 from './ibm-plex-sans-condensed-400-normal.ttf';
9
9
  import ibmPlexSansCondensed500 from './ibm-plex-sans-condensed-500-normal.ttf';
10
10
  import ibmPlexSansCondensed600 from './ibm-plex-sans-condensed-600-normal.ttf';
11
11
  import ibmPlexSansCondensed700 from './ibm-plex-sans-condensed-700-normal.ttf';
12
- import React65, { createContext, forwardRef, useRef, useEffect, useState, useCallback, useMemo, useContext } from 'react';
12
+ import React66, { createContext, forwardRef, useRef, useEffect, useState, useCallback, useMemo, useContext } from 'react';
13
13
  import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
14
14
  import * as AvatarPrimitive from '@rn-primitives/avatar';
15
15
  import { Text, View, Animated, Pressable, TextInput, Easing, StyleSheet, useWindowDimensions, PanResponder, Image, ScrollView, Keyboard, ActionSheetIOS, TouchableOpacity, Platform, Modal, TouchableWithoutFeedback, FlatList, Linking, Clipboard, Alert } from 'react-native';
@@ -190,7 +190,7 @@ var VARIANT_DEFAULTS = {
190
190
  display: { size: "lg" }
191
191
  };
192
192
  var StyledText = styled50(Text)({});
193
- var Typography = React65.forwardRef(
193
+ var Typography = React66.forwardRef(
194
194
  (props, ref) => {
195
195
  const theme2 = useTheme();
196
196
  const { typography, colour } = theme2.tokens.semantics;
@@ -280,7 +280,7 @@ var StyledIconRoot = styled50(View)(({ iconDimension }) => ({
280
280
  width: iconDimension,
281
281
  height: iconDimension
282
282
  }));
283
- var Icon = React65.forwardRef(
283
+ var Icon = React66.forwardRef(
284
284
  (_a, ref) => {
285
285
  var _b = _a, {
286
286
  icon: IconComponent,
@@ -3880,7 +3880,7 @@ var AVATAR_SIZE_TO_ICON_SIZE = {
3880
3880
  md: "md",
3881
3881
  lg: "xl"
3882
3882
  };
3883
- var AvatarRoot = React65.forwardRef(
3883
+ var AvatarRoot = React66.forwardRef(
3884
3884
  (_a, ref) => {
3885
3885
  var _b = _a, {
3886
3886
  src,
@@ -3939,7 +3939,7 @@ function getVisibleDots(count, activeIndex) {
3939
3939
  const windowStart = Math.min(Math.max(activeIndex - 2, 0), count - 5);
3940
3940
  return Array.from({ length: 5 }, (_, i) => windowStart + i);
3941
3941
  }
3942
- var CarouselControls = React65.forwardRef(
3942
+ var CarouselControls = React66.forwardRef(
3943
3943
  (_a, ref) => {
3944
3944
  var _b = _a, { count, activeIndex, showBackground = true } = _b, props = __objRest(_b, ["count", "activeIndex", "showBackground"]);
3945
3945
  const theme2 = useTheme();
@@ -4026,7 +4026,7 @@ var StyledBadge = styled50(View)(({ theme: theme2, badgeVariant, badgeSize, pinn
4026
4026
  backgroundColor: backgroundColorMap[badgeVariant]
4027
4027
  }, borderRadiusStyles), positionStyles);
4028
4028
  });
4029
- var Badge = React65.forwardRef(
4029
+ var Badge = React66.forwardRef(
4030
4030
  (_a, ref) => {
4031
4031
  var _b = _a, {
4032
4032
  variant = "primary",
@@ -4101,7 +4101,7 @@ var Badge = React65.forwardRef(
4101
4101
  Badge.displayName = "Badge";
4102
4102
  var parseTokenValue6 = (value) => parseFloat(value);
4103
4103
  var StyledSpinner = styled50(View)({});
4104
- var Spinner = React65.forwardRef(
4104
+ var Spinner = React66.forwardRef(
4105
4105
  (_a, ref) => {
4106
4106
  var _b = _a, { size = "md", variant = "dark", style } = _b, rest = __objRest(_b, ["size", "variant", "style"]);
4107
4107
  const theme2 = useTheme();
@@ -4208,7 +4208,7 @@ var StyledSpinnerWrapper = styled50(View)({
4208
4208
  alignItems: "center",
4209
4209
  justifyContent: "center"
4210
4210
  });
4211
- var Button = React65.forwardRef(
4211
+ var Button = React66.forwardRef(
4212
4212
  (_a, ref) => {
4213
4213
  var _b = _a, {
4214
4214
  variant = "filled",
@@ -4240,7 +4240,7 @@ var Button = React65.forwardRef(
4240
4240
  const typographyKey = sizeToTypographyKey[size];
4241
4241
  const typography = buttons.text[typographyKey];
4242
4242
  resolveFont(typography.fontFamily, typography.fontWeight);
4243
- const [pressed, setPressed] = React65.useState(false);
4243
+ const [pressed, setPressed] = React66.useState(false);
4244
4244
  const getVariantStyles = (isPressed) => {
4245
4245
  if (variant === "filled") {
4246
4246
  const bgTokens = buttons.filledButton.colour.background[colour];
@@ -4351,7 +4351,7 @@ var StyledHint = styled50(View)(({
4351
4351
  backgroundColor: hintVariantMap[hintVariant]
4352
4352
  };
4353
4353
  });
4354
- var Hint = React65.forwardRef(
4354
+ var Hint = React66.forwardRef(
4355
4355
  (_a, ref) => {
4356
4356
  var _b = _a, { variant = "default" } = _b, rest = __objRest(_b, ["variant"]);
4357
4357
  return /* @__PURE__ */ jsx(StyledHint, __spreadValues({ ref, hintVariant: variant }, rest));
@@ -4393,7 +4393,7 @@ var StyledSpinnerWrapper2 = styled50(View)({
4393
4393
  alignItems: "center",
4394
4394
  justifyContent: "center"
4395
4395
  });
4396
- var IconButton = React65.forwardRef(
4396
+ var IconButton = React66.forwardRef(
4397
4397
  (_a, ref) => {
4398
4398
  var _b = _a, {
4399
4399
  icon: IconComponent,
@@ -4419,7 +4419,7 @@ var IconButton = React65.forwardRef(
4419
4419
  const dimension = parseTokenValue9(sizeTokens.height);
4420
4420
  const iconSizing = theme2.tokens.components.icons.sizing.icons.core;
4421
4421
  const iconDimension = parseTokenValue9(iconSizing[sizeToIconSizeToken[size]]);
4422
- const [pressed, setPressed] = React65.useState(false);
4422
+ const [pressed, setPressed] = React66.useState(false);
4423
4423
  const getVariantStyles = (isPressed) => {
4424
4424
  if (variant === "filled") {
4425
4425
  const filled = buttons.iconButton.filledButton;
@@ -4502,7 +4502,7 @@ var StyledRoot2 = styled50(View)(({ illustrationHeight }) => ({
4502
4502
  flexShrink: 0,
4503
4503
  height: illustrationHeight
4504
4504
  }));
4505
- var Illustration = React65.forwardRef(
4505
+ var Illustration = React66.forwardRef(
4506
4506
  (_a, ref) => {
4507
4507
  var _b = _a, {
4508
4508
  illustration: IllustrationComponent,
@@ -4538,7 +4538,7 @@ var StyledLabelRow = styled50(View)(({ labelGap }) => ({
4538
4538
  alignItems: "center",
4539
4539
  gap: labelGap
4540
4540
  }));
4541
- var InputLabel = React65.forwardRef(
4541
+ var InputLabel = React66.forwardRef(
4542
4542
  (_a, ref) => {
4543
4543
  var _b = _a, { optionalText, state = "default", children } = _b, rest = __objRest(_b, ["optionalText", "state", "children"]);
4544
4544
  const theme2 = useTheme();
@@ -4735,54 +4735,57 @@ ForwardRef472.category = "core";
4735
4735
  var PlayArrow = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M8 6.82v10.36c0 .79.87 1.27 1.54.84l8.14-5.18a1 1 0 0 0 0-1.69L9.54 5.98A.998.998 0 0 0 8 6.82" }) }));
4736
4736
  var ForwardRef482 = forwardRef(PlayArrow);
4737
4737
  ForwardRef482.category = "core";
4738
- var Refresh = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M17.65 6.35a7.95 7.95 0 0 0-6.48-2.31c-3.67.37-6.69 3.35-7.1 7.02C3.52 15.91 7.27 20 12 20a7.98 7.98 0 0 0 7.21-4.56c.32-.67-.16-1.44-.9-1.44-.37 0-.72.2-.88.53a5.994 5.994 0 0 1-6.8 3.31c-2.22-.49-4.01-2.3-4.48-4.52A6.002 6.002 0 0 1 12 6c1.66 0 3.14.69 4.22 1.78l-1.51 1.51c-.63.63-.19 1.71.7 1.71H19c.55 0 1-.45 1-1V6.41c0-.89-1.08-1.34-1.71-.71z" }) }));
4739
- var ForwardRef492 = forwardRef(Refresh);
4738
+ var Range = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "m5.83 12 2.46-2.46a.996.996 0 1 0-1.41-1.41L3.7 11.3a.996.996 0 0 0 0 1.41l3.18 3.17a.996.996 0 1 0 1.41-1.41zm12.34 0-2.46 2.46a.996.996 0 1 0 1.41 1.41l3.18-3.17a.996.996 0 0 0 0-1.41l-3.17-3.17a.996.996 0 1 0-1.41 1.41z" }) }));
4739
+ var ForwardRef492 = forwardRef(Range);
4740
4740
  ForwardRef492.category = "core";
4741
- var Remove = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M18 13H6c-.55 0-1-.45-1-1s.45-1 1-1h12c.55 0 1 .45 1 1s-.45 1-1 1" }) }));
4742
- var ForwardRef502 = forwardRef(Remove);
4741
+ var Refresh = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M17.65 6.35a7.95 7.95 0 0 0-6.48-2.31c-3.67.37-6.69 3.35-7.1 7.02C3.52 15.91 7.27 20 12 20a7.98 7.98 0 0 0 7.21-4.56c.32-.67-.16-1.44-.9-1.44-.37 0-.72.2-.88.53a5.994 5.994 0 0 1-6.8 3.31c-2.22-.49-4.01-2.3-4.48-4.52A6.002 6.002 0 0 1 12 6c1.66 0 3.14.69 4.22 1.78l-1.51 1.51c-.63.63-.19 1.71.7 1.71H19c.55 0 1-.45 1-1V6.41c0-.89-1.08-1.34-1.71-.71z" }) }));
4742
+ var ForwardRef502 = forwardRef(Refresh);
4743
4743
  ForwardRef502.category = "core";
4744
- var Remove_default = ForwardRef502;
4745
- var RemoveCircle = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m4 11H8c-.55 0-1-.45-1-1s.45-1 1-1h8c.55 0 1 .45 1 1s-.45 1-1 1" }) }));
4746
- var ForwardRef512 = forwardRef(RemoveCircle);
4744
+ var Remove = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M18 13H6c-.55 0-1-.45-1-1s.45-1 1-1h12c.55 0 1 .45 1 1s-.45 1-1 1" }) }));
4745
+ var ForwardRef512 = forwardRef(Remove);
4747
4746
  ForwardRef512.category = "core";
4748
- var RemoveCircle_default = ForwardRef512;
4749
- var RemoveCircleOutline = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M7 12c0 .55.45 1 1 1h8c.55 0 1-.45 1-1s-.45-1-1-1H8c-.55 0-1 .45-1 1m5-10C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8" }) }));
4750
- var ForwardRef522 = forwardRef(RemoveCircleOutline);
4747
+ var Remove_default = ForwardRef512;
4748
+ var RemoveCircle = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m4 11H8c-.55 0-1-.45-1-1s.45-1 1-1h8c.55 0 1 .45 1 1s-.45 1-1 1" }) }));
4749
+ var ForwardRef522 = forwardRef(RemoveCircle);
4751
4750
  ForwardRef522.category = "core";
4752
- var RemoveCircleOutline_default = ForwardRef522;
4753
- var Search = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M15.5 14h-.79l-.28-.27a6.5 6.5 0 0 0 1.48-5.34c-.47-2.78-2.79-5-5.59-5.34a6.505 6.505 0 0 0-7.27 7.27c.34 2.8 2.56 5.12 5.34 5.59a6.5 6.5 0 0 0 5.34-1.48l.27.28v.79l4.25 4.25c.41.41 1.08.41 1.49 0s.41-1.08 0-1.49zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14" }) }));
4754
- var ForwardRef532 = forwardRef(Search);
4751
+ var RemoveCircle_default = ForwardRef522;
4752
+ var RemoveCircleOutline = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M7 12c0 .55.45 1 1 1h8c.55 0 1-.45 1-1s-.45-1-1-1H8c-.55 0-1 .45-1 1m5-10C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2m0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8" }) }));
4753
+ var ForwardRef532 = forwardRef(RemoveCircleOutline);
4755
4754
  ForwardRef532.category = "core";
4756
- var Search_default = ForwardRef532;
4757
- var Settings = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M19.5 12c0-.23-.01-.45-.03-.68l1.86-1.41c.4-.3.51-.86.26-1.3l-1.87-3.23a.987.987 0 0 0-1.25-.42l-2.15.91c-.37-.26-.76-.49-1.17-.68l-.29-2.31c-.06-.5-.49-.88-.99-.88h-3.73c-.51 0-.94.38-1 .88l-.29 2.31c-.41.19-.8.42-1.17.68l-2.15-.91c-.46-.2-1-.02-1.25.42L2.41 8.62c-.25.44-.14.99.26 1.3l1.86 1.41a7.3 7.3 0 0 0 0 1.35l-1.86 1.41c-.4.3-.51.86-.26 1.3l1.87 3.23c.25.44.79.62 1.25.42l2.15-.91c.37.26.76.49 1.17.68l.29 2.31c.06.5.49.88.99.88h3.73c.5 0 .93-.38.99-.88l.29-2.31c.41-.19.8-.42 1.17-.68l2.15.91c.46.2 1 .02 1.25-.42l1.87-3.23c.25-.44.14-.99-.26-1.3l-1.86-1.41c.03-.23.04-.45.04-.68m-7.46 3.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5" }) }));
4758
- var ForwardRef542 = forwardRef(Settings);
4755
+ var RemoveCircleOutline_default = ForwardRef532;
4756
+ var Search = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M15.5 14h-.79l-.28-.27a6.5 6.5 0 0 0 1.48-5.34c-.47-2.78-2.79-5-5.59-5.34a6.505 6.505 0 0 0-7.27 7.27c.34 2.8 2.56 5.12 5.34 5.59a6.5 6.5 0 0 0 5.34-1.48l.27.28v.79l4.25 4.25c.41.41 1.08.41 1.49 0s.41-1.08 0-1.49zm-6 0C7.01 14 5 11.99 5 9.5S7.01 5 9.5 5 14 7.01 14 9.5 11.99 14 9.5 14" }) }));
4757
+ var ForwardRef542 = forwardRef(Search);
4759
4758
  ForwardRef542.category = "core";
4760
- var StarBorder = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "m19.65 9.04-4.84-.42-1.89-4.45c-.34-.81-1.5-.81-1.84 0L9.19 8.63l-4.83.41c-.88.07-1.24 1.17-.57 1.75l3.67 3.18-1.1 4.72c-.2.86.73 1.54 1.49 1.08l4.15-2.5 4.15 2.51c.76.46 1.69-.22 1.49-1.08l-1.1-4.73 3.67-3.18c.67-.58.32-1.68-.56-1.75M12 15.4l-3.76 2.27 1-4.28-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28z" }) }));
4761
- var ForwardRef552 = forwardRef(StarBorder);
4759
+ var Search_default = ForwardRef542;
4760
+ var Settings = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M19.5 12c0-.23-.01-.45-.03-.68l1.86-1.41c.4-.3.51-.86.26-1.3l-1.87-3.23a.987.987 0 0 0-1.25-.42l-2.15.91c-.37-.26-.76-.49-1.17-.68l-.29-2.31c-.06-.5-.49-.88-.99-.88h-3.73c-.51 0-.94.38-1 .88l-.29 2.31c-.41.19-.8.42-1.17.68l-2.15-.91c-.46-.2-1-.02-1.25.42L2.41 8.62c-.25.44-.14.99.26 1.3l1.86 1.41a7.3 7.3 0 0 0 0 1.35l-1.86 1.41c-.4.3-.51.86-.26 1.3l1.87 3.23c.25.44.79.62 1.25.42l2.15-.91c.37.26.76.49 1.17.68l.29 2.31c.06.5.49.88.99.88h3.73c.5 0 .93-.38.99-.88l.29-2.31c.41-.19.8-.42 1.17-.68l2.15.91c.46.2 1 .02 1.25-.42l1.87-3.23c.25-.44.14-.99-.26-1.3l-1.86-1.41c.03-.23.04-.45.04-.68m-7.46 3.5c-1.93 0-3.5-1.57-3.5-3.5s1.57-3.5 3.5-3.5 3.5 1.57 3.5 3.5-1.57 3.5-3.5 3.5" }) }));
4761
+ var ForwardRef552 = forwardRef(Settings);
4762
4762
  ForwardRef552.category = "core";
4763
- var StarHalf = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "m19.65 9.04-4.84-.42-1.89-4.45c-.34-.81-1.5-.81-1.84 0L9.19 8.63l-4.83.41c-.88.07-1.24 1.17-.57 1.75l3.67 3.18-1.1 4.72c-.2.86.73 1.54 1.49 1.08l4.15-2.5 4.15 2.51c.76.46 1.69-.22 1.49-1.08l-1.1-4.73 3.67-3.18c.67-.58.32-1.68-.56-1.75M12 15.4V6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28z" }) }));
4764
- var ForwardRef562 = forwardRef(StarHalf);
4763
+ var StarBorder = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "m19.65 9.04-4.84-.42-1.89-4.45c-.34-.81-1.5-.81-1.84 0L9.19 8.63l-4.83.41c-.88.07-1.24 1.17-.57 1.75l3.67 3.18-1.1 4.72c-.2.86.73 1.54 1.49 1.08l4.15-2.5 4.15 2.51c.76.46 1.69-.22 1.49-1.08l-1.1-4.73 3.67-3.18c.67-.58.32-1.68-.56-1.75M12 15.4l-3.76 2.27 1-4.28-3.32-2.88 4.38-.38L12 6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28z" }) }));
4764
+ var ForwardRef562 = forwardRef(StarBorder);
4765
4765
  ForwardRef562.category = "core";
4766
- var StarRate = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "m11.957 17.498 4.15 2.51c.76.46 1.69-.22 1.49-1.08l-1.1-4.72 3.67-3.18c.67-.58.31-1.68-.57-1.75l-4.83-.41-1.89-4.46c-.34-.81-1.5-.81-1.84 0l-1.89 4.45-4.83.41c-.88.07-1.24 1.17-.57 1.75l3.67 3.18-1.1 4.72c-.2.86.73 1.54 1.49 1.08z" }) }));
4767
- var ForwardRef572 = forwardRef(StarRate);
4766
+ var StarHalf = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "m19.65 9.04-4.84-.42-1.89-4.45c-.34-.81-1.5-.81-1.84 0L9.19 8.63l-4.83.41c-.88.07-1.24 1.17-.57 1.75l3.67 3.18-1.1 4.72c-.2.86.73 1.54 1.49 1.08l4.15-2.5 4.15 2.51c.76.46 1.69-.22 1.49-1.08l-1.1-4.73 3.67-3.18c.67-.58.32-1.68-.56-1.75M12 15.4V6.1l1.71 4.04 4.38.38-3.32 2.88 1 4.28z" }) }));
4767
+ var ForwardRef572 = forwardRef(StarHalf);
4768
4768
  ForwardRef572.category = "core";
4769
- var User = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 12a4.665 4.665 0 0 0 4.667-4.667A4.665 4.665 0 0 0 12 2.667a4.665 4.665 0 0 0-4.667 4.666A4.665 4.665 0 0 0 12 12m0-7a2.34 2.34 0 0 1 2.333 2.333A2.34 2.34 0 0 1 12 9.667a2.34 2.34 0 0 1-2.333-2.334A2.34 2.34 0 0 1 12 5m0 8.167c-3.115 0-9.333 1.563-9.333 4.666v2.334a1.17 1.17 0 0 0 1.166 1.166h16.334a1.17 1.17 0 0 0 1.166-1.166v-2.334c0-3.103-6.218-4.666-9.333-4.666M19 19H5v-1.155c.233-.84 3.85-2.345 7-2.345s6.767 1.505 7 2.333z" }) }));
4770
- var ForwardRef582 = forwardRef(User);
4769
+ var StarRate = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "m11.957 17.498 4.15 2.51c.76.46 1.69-.22 1.49-1.08l-1.1-4.72 3.67-3.18c.67-.58.31-1.68-.57-1.75l-4.83-.41-1.89-4.46c-.34-.81-1.5-.81-1.84 0l-1.89 4.45-4.83.41c-.88.07-1.24 1.17-.57 1.75l3.67 3.18-1.1 4.72c-.2.86.73 1.54 1.49 1.08z" }) }));
4770
+ var ForwardRef582 = forwardRef(StarRate);
4771
4771
  ForwardRef582.category = "core";
4772
- var Visibility = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3" }) }));
4773
- var ForwardRef592 = forwardRef(Visibility);
4772
+ var User = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 12a4.665 4.665 0 0 0 4.667-4.667A4.665 4.665 0 0 0 12 2.667a4.665 4.665 0 0 0-4.667 4.666A4.665 4.665 0 0 0 12 12m0-7a2.34 2.34 0 0 1 2.333 2.333A2.34 2.34 0 0 1 12 9.667a2.34 2.34 0 0 1-2.333-2.334A2.34 2.34 0 0 1 12 5m0 8.167c-3.115 0-9.333 1.563-9.333 4.666v2.334a1.17 1.17 0 0 0 1.166 1.166h16.334a1.17 1.17 0 0 0 1.166-1.166v-2.334c0-3.103-6.218-4.666-9.333-4.666M19 19H5v-1.155c.233-.84 3.85-2.345 7-2.345s6.767 1.505 7 2.333z" }) }));
4773
+ var ForwardRef592 = forwardRef(User);
4774
4774
  ForwardRef592.category = "core";
4775
- var Visibility_default = ForwardRef592;
4776
- var VisibilityOff = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 6.5c2.76 0 5 2.24 5 5 0 .51-.1 1-.24 1.46l3.06 3.06c1.39-1.23 2.49-2.77 3.18-4.53C21.27 7.11 17 4 12 4c-1.27 0-2.49.2-3.64.57l2.17 2.17c.47-.14.96-.24 1.47-.24M2.71 3.16a.996.996 0 0 0 0 1.41l1.97 1.97A11.9 11.9 0 0 0 1 11.5C2.73 15.89 7 19 12 19c1.52 0 2.97-.3 4.31-.82l2.72 2.72a.996.996 0 1 0 1.41-1.41L4.13 3.16c-.39-.39-1.03-.39-1.42 0M12 16.5c-2.76 0-5-2.24-5-5 0-.77.18-1.5.49-2.14l1.57 1.57c-.03.18-.06.37-.06.57 0 1.66 1.34 3 3 3 .2 0 .38-.03.57-.07L14.14 16c-.65.32-1.37.5-2.14.5m2.97-5.33a2.97 2.97 0 0 0-2.64-2.64z" }) }));
4777
- var ForwardRef602 = forwardRef(VisibilityOff);
4775
+ var Visibility = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5M12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5m0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3" }) }));
4776
+ var ForwardRef602 = forwardRef(Visibility);
4778
4777
  ForwardRef602.category = "core";
4779
- var VisibilityOff_default = ForwardRef602;
4780
- var VolumeOff = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M3.63 3.63a.996.996 0 0 0 0 1.41L7.29 8.7 7 9H4c-.55 0-1 .45-1 1v4c0 .55.45 1 1 1h3l3.29 3.29c.63.63 1.71.18 1.71-.71v-4.17l4.18 4.18c-.49.37-1.02.68-1.6.91-.36.15-.58.53-.58.92 0 .72.73 1.18 1.39.91.8-.33 1.55-.77 2.22-1.31l1.34 1.34a.996.996 0 1 0 1.41-1.41L5.05 3.63c-.39-.39-1.02-.39-1.42 0M19 12c0 .82-.15 1.61-.41 2.34l1.53 1.53c.56-1.17.88-2.48.88-3.87 0-3.83-2.4-7.11-5.78-8.4-.59-.23-1.22.23-1.22.86v.19c0 .38.25.71.61.85C17.18 6.54 19 9.06 19 12m-8.71-6.29-.17.17L12 7.76V6.41c0-.89-1.08-1.33-1.71-.7M16.5 12A4.5 4.5 0 0 0 14 7.97v1.79l2.48 2.48c.01-.08.02-.16.02-.24" }) }));
4781
- var ForwardRef612 = forwardRef(VolumeOff);
4778
+ var Visibility_default = ForwardRef602;
4779
+ var VisibilityOff = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M12 6.5c2.76 0 5 2.24 5 5 0 .51-.1 1-.24 1.46l3.06 3.06c1.39-1.23 2.49-2.77 3.18-4.53C21.27 7.11 17 4 12 4c-1.27 0-2.49.2-3.64.57l2.17 2.17c.47-.14.96-.24 1.47-.24M2.71 3.16a.996.996 0 0 0 0 1.41l1.97 1.97A11.9 11.9 0 0 0 1 11.5C2.73 15.89 7 19 12 19c1.52 0 2.97-.3 4.31-.82l2.72 2.72a.996.996 0 1 0 1.41-1.41L4.13 3.16c-.39-.39-1.03-.39-1.42 0M12 16.5c-2.76 0-5-2.24-5-5 0-.77.18-1.5.49-2.14l1.57 1.57c-.03.18-.06.37-.06.57 0 1.66 1.34 3 3 3 .2 0 .38-.03.57-.07L14.14 16c-.65.32-1.37.5-2.14.5m2.97-5.33a2.97 2.97 0 0 0-2.64-2.64z" }) }));
4780
+ var ForwardRef612 = forwardRef(VisibilityOff);
4782
4781
  ForwardRef612.category = "core";
4783
- var VolumeUp = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M3 10v4c0 .55.45 1 1 1h3l3.29 3.29c.63.63 1.71.18 1.71-.71V6.41c0-.89-1.08-1.34-1.71-.71L7 9H4c-.55 0-1 .45-1 1m13.5 2A4.5 4.5 0 0 0 14 7.97v8.05c1.48-.73 2.5-2.25 2.5-4.02M14 4.45v.2c0 .38.25.71.6.85A7 7 0 0 1 19 12c0 2.94-1.82 5.47-4.4 6.5-.36.14-.6.47-.6.85v.2c0 .63.63 1.07 1.21.85A8.98 8.98 0 0 0 21 12c0-3.84-2.4-7.11-5.79-8.4-.58-.23-1.21.22-1.21.85" }) }));
4784
- var ForwardRef622 = forwardRef(VolumeUp);
4782
+ var VisibilityOff_default = ForwardRef612;
4783
+ var VolumeOff = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M3.63 3.63a.996.996 0 0 0 0 1.41L7.29 8.7 7 9H4c-.55 0-1 .45-1 1v4c0 .55.45 1 1 1h3l3.29 3.29c.63.63 1.71.18 1.71-.71v-4.17l4.18 4.18c-.49.37-1.02.68-1.6.91-.36.15-.58.53-.58.92 0 .72.73 1.18 1.39.91.8-.33 1.55-.77 2.22-1.31l1.34 1.34a.996.996 0 1 0 1.41-1.41L5.05 3.63c-.39-.39-1.02-.39-1.42 0M19 12c0 .82-.15 1.61-.41 2.34l1.53 1.53c.56-1.17.88-2.48.88-3.87 0-3.83-2.4-7.11-5.78-8.4-.59-.23-1.22.23-1.22.86v.19c0 .38.25.71.61.85C17.18 6.54 19 9.06 19 12m-8.71-6.29-.17.17L12 7.76V6.41c0-.89-1.08-1.33-1.71-.7M16.5 12A4.5 4.5 0 0 0 14 7.97v1.79l2.48 2.48c.01-.08.02-.16.02-.24" }) }));
4784
+ var ForwardRef622 = forwardRef(VolumeOff);
4785
4785
  ForwardRef622.category = "core";
4786
+ var VolumeUp = (props, ref) => /* @__PURE__ */ jsx(Svg, __spreadProps2(__spreadValues2(__spreadProps2(__spreadValues2({ xmlns: "http://www.w3.org/2000/svg", width: 24, height: 24 }, { fill: props.color || "currentColor" }), { viewBox: "0 0 24 24", ref }), props), { children: /* @__PURE__ */ jsx(Path, { d: "M3 10v4c0 .55.45 1 1 1h3l3.29 3.29c.63.63 1.71.18 1.71-.71V6.41c0-.89-1.08-1.34-1.71-.71L7 9H4c-.55 0-1 .45-1 1m13.5 2A4.5 4.5 0 0 0 14 7.97v8.05c1.48-.73 2.5-2.25 2.5-4.02M14 4.45v.2c0 .38.25.71.6.85A7 7 0 0 1 19 12c0 2.94-1.82 5.47-4.4 6.5-.36.14-.6.47-.6.85v.2c0 .63.63 1.07 1.21.85A8.98 8.98 0 0 0 21 12c0-3.84-2.4-7.11-5.79-8.4-.58-.23-1.21.22-1.21.85" }) }));
4787
+ var ForwardRef632 = forwardRef(VolumeUp);
4788
+ ForwardRef632.category = "core";
4786
4789
  var parseTokenValue12 = (value) => parseFloat(value);
4787
4790
  var StyledInputWrapper = styled50(Animated.View)(({ theme: theme2, isDisabled, containerWidth, containerHeight }) => {
4788
4791
  const { spacing, colour, borderRadius, size } = theme2.tokens.components.inputs;
@@ -4798,7 +4801,10 @@ var StyledInputWrapper = styled50(Animated.View)(({ theme: theme2, isDisabled, c
4798
4801
  flexShrink: containerWidth !== void 0 ? 0 : void 0
4799
4802
  };
4800
4803
  });
4801
- var StyledInput = styled50(TextInput)(({ theme: theme2 }) => {
4804
+ var StyledInput = styled50(TextInput)(({
4805
+ theme: theme2,
4806
+ hasInlineHelp
4807
+ }) => {
4802
4808
  var _a, _b;
4803
4809
  const { colour, field } = theme2.tokens.components.inputs;
4804
4810
  const typography = field.placeholder.default;
@@ -4808,7 +4814,7 @@ var StyledInput = styled50(TextInput)(({ theme: theme2 }) => {
4808
4814
  );
4809
4815
  const fontSize = parseTokenValue12(typography.fontSize);
4810
4816
  const letterSpacing = ((_a = typography.letterSpacing) == null ? void 0 : _a.endsWith("%")) ? parseFloat(typography.letterSpacing) / 100 * fontSize : parseFloat((_b = typography.letterSpacing) != null ? _b : "0");
4811
- return __spreadValues({
4817
+ return __spreadValues(__spreadValues({
4812
4818
  flex: 1,
4813
4819
  minWidth: 0,
4814
4820
  minHeight: 0,
@@ -4817,7 +4823,7 @@ var StyledInput = styled50(TextInput)(({ theme: theme2 }) => {
4817
4823
  fontFamily,
4818
4824
  fontSize,
4819
4825
  letterSpacing
4820
- }, {
4826
+ }, hasInlineHelp ? { position: "relative", top: -8 } : {}), {
4821
4827
  outlineStyle: "none",
4822
4828
  outlineWidth: 0,
4823
4829
  outlineColor: "transparent"
@@ -4832,7 +4838,7 @@ var StyledIconSlot = styled50(View)({
4832
4838
  justifyContent: "center",
4833
4839
  flexShrink: 0
4834
4840
  });
4835
- var InputField = React65.forwardRef(
4841
+ var InputField = React66.forwardRef(
4836
4842
  (_a, ref) => {
4837
4843
  var _b = _a, {
4838
4844
  leadingIcon,
@@ -4842,6 +4848,7 @@ var InputField = React65.forwardRef(
4842
4848
  hideStateIcons,
4843
4849
  containerWidth,
4844
4850
  containerHeight,
4851
+ hasInlineHelp,
4845
4852
  style,
4846
4853
  editable,
4847
4854
  onFocus,
@@ -4854,6 +4861,7 @@ var InputField = React65.forwardRef(
4854
4861
  "hideStateIcons",
4855
4862
  "containerWidth",
4856
4863
  "containerHeight",
4864
+ "hasInlineHelp",
4857
4865
  "style",
4858
4866
  "editable",
4859
4867
  "onFocus",
@@ -4976,7 +4984,8 @@ var InputField = React65.forwardRef(
4976
4984
  placeholderTextColor: colour.field.text.placeholder,
4977
4985
  editable,
4978
4986
  onFocus: handleFocus,
4979
- onBlur: handleBlur
4987
+ onBlur: handleBlur,
4988
+ hasInlineHelp
4980
4989
  }, rest)
4981
4990
  ),
4982
4991
  trailingIcon && /* @__PURE__ */ jsx(StyledIconSlot, { children: trailingIcon }),
@@ -4988,7 +4997,7 @@ var InputField = React65.forwardRef(
4988
4997
  }
4989
4998
  );
4990
4999
  InputField.displayName = "Input.Field";
4991
- var InputText = React65.forwardRef(
5000
+ var InputText = React66.forwardRef(
4992
5001
  (_a, ref) => {
4993
5002
  var _b = _a, { placeholderTextColor } = _b, rest = __objRest(_b, ["placeholderTextColor"]);
4994
5003
  const theme2 = useTheme();
@@ -5007,7 +5016,7 @@ var StyledDescriptionRow = styled50(View)({
5007
5016
  flexDirection: "row",
5008
5017
  alignItems: "center"
5009
5018
  });
5010
- var InputDescription = React65.forwardRef(
5019
+ var InputDescription = React66.forwardRef(
5011
5020
  (_a, ref) => {
5012
5021
  var _b = _a, { state = "default", children } = _b, rest = __objRest(_b, ["state", "children"]);
5013
5022
  const theme2 = useTheme();
@@ -5027,7 +5036,7 @@ var StyledErrorRow = styled50(View)({
5027
5036
  flexDirection: "row",
5028
5037
  alignItems: "center"
5029
5038
  });
5030
- var InputError = React65.forwardRef(
5039
+ var InputError = React66.forwardRef(
5031
5040
  (_a, ref) => {
5032
5041
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
5033
5042
  const theme2 = useTheme();
@@ -5050,7 +5059,7 @@ var StyledRoot3 = styled50(View)(({ theme: theme2 }) => {
5050
5059
  gap: parseTokenValue13(spacing.gap)
5051
5060
  };
5052
5061
  });
5053
- var InputRoot = React65.forwardRef(
5062
+ var InputRoot = React66.forwardRef(
5054
5063
  (_a, ref) => {
5055
5064
  var _b = _a, {
5056
5065
  label,
@@ -5094,7 +5103,7 @@ var Input = Object.assign(InputRoot, {
5094
5103
  Description: InputDescription,
5095
5104
  Error: InputError
5096
5105
  });
5097
- var Link = React65.forwardRef(
5106
+ var Link = React66.forwardRef(
5098
5107
  (_a, ref) => {
5099
5108
  var _b = _a, {
5100
5109
  size = "md",
@@ -7692,7 +7701,7 @@ var StyledRoot4 = styled50(View)({
7692
7701
  justifyContent: "center",
7693
7702
  flexShrink: 0
7694
7703
  });
7695
- var Logo = React65.forwardRef(
7704
+ var Logo = React66.forwardRef(
7696
7705
  (_a, ref) => {
7697
7706
  var _b = _a, { brand, variant = "primary", "aria-label": ariaLabel } = _b, rest = __objRest(_b, ["brand", "variant", "aria-label"]);
7698
7707
  const effectiveVariant = brand === "bcorp" ? "primary" : variant;
@@ -7727,8 +7736,12 @@ var StyledFieldTextWrapper = styled50(View)({
7727
7736
  flexShrink: 0,
7728
7737
  justifyContent: "center"
7729
7738
  });
7730
- var NumberInputField = React65.forwardRef((_a, ref) => {
7731
- var _b = _a, { fieldText } = _b, props = __objRest(_b, ["fieldText"]);
7739
+ var StyledInputContainer = styled50(View)(({ hasInlineHelp }) => ({
7740
+ flexDirection: "column",
7741
+ gap: hasInlineHelp ? 2 : 0
7742
+ }));
7743
+ var NumberInputField = React66.forwardRef((_a, ref) => {
7744
+ var _b = _a, { fieldText, inlineHelpText } = _b, props = __objRest(_b, ["fieldText", "inlineHelpText"]);
7732
7745
  const theme2 = useTheme();
7733
7746
  const { colour, description } = theme2.tokens.components.inputs;
7734
7747
  const fieldSize = parseTokenValue14(
@@ -7740,15 +7753,47 @@ var NumberInputField = React65.forwardRef((_a, ref) => {
7740
7753
  keyboardType: "numeric",
7741
7754
  hideStateIcons: true,
7742
7755
  containerWidth: fieldSize,
7743
- containerHeight: fieldSize,
7756
+ containerHeight: inlineHelpText ? void 0 : fieldSize,
7757
+ hasInlineHelp: !!inlineHelpText,
7744
7758
  ref,
7745
7759
  style: { textAlign: "center" }
7746
7760
  }, props)
7747
7761
  );
7748
- if (!fieldText) {
7749
- return inputElement;
7750
- }
7751
- return /* @__PURE__ */ jsxs(StyledFieldGroup, { children: [
7762
+ const fieldContent = inlineHelpText && fieldText ? /* @__PURE__ */ jsxs(StyledFieldGroup, { children: [
7763
+ /* @__PURE__ */ jsxs(StyledInputContainer, { hasInlineHelp: true, children: [
7764
+ inputElement,
7765
+ /* @__PURE__ */ jsx(
7766
+ View,
7767
+ {
7768
+ style: {
7769
+ position: "absolute",
7770
+ bottom: 4,
7771
+ left: 0,
7772
+ width: fieldSize,
7773
+ display: "flex",
7774
+ justifyContent: "center",
7775
+ alignItems: "center"
7776
+ },
7777
+ children: /* @__PURE__ */ jsx(
7778
+ Typography,
7779
+ {
7780
+ token: description.text.default,
7781
+ color: colour.description.default,
7782
+ children: inlineHelpText
7783
+ }
7784
+ )
7785
+ }
7786
+ )
7787
+ ] }),
7788
+ /* @__PURE__ */ jsx(StyledFieldTextWrapper, { children: /* @__PURE__ */ jsx(
7789
+ Typography,
7790
+ {
7791
+ token: description.text.default,
7792
+ color: colour.description.default,
7793
+ children: fieldText
7794
+ }
7795
+ ) })
7796
+ ] }) : fieldText ? /* @__PURE__ */ jsxs(StyledFieldGroup, { children: [
7752
7797
  inputElement,
7753
7798
  /* @__PURE__ */ jsx(StyledFieldTextWrapper, { children: /* @__PURE__ */ jsx(
7754
7799
  Typography,
@@ -7758,7 +7803,31 @@ var NumberInputField = React65.forwardRef((_a, ref) => {
7758
7803
  children: fieldText
7759
7804
  }
7760
7805
  ) })
7761
- ] });
7806
+ ] }) : inlineHelpText ? /* @__PURE__ */ jsxs(StyledInputContainer, { hasInlineHelp: true, children: [
7807
+ inputElement,
7808
+ /* @__PURE__ */ jsx(
7809
+ View,
7810
+ {
7811
+ style: {
7812
+ position: "absolute",
7813
+ bottom: 4,
7814
+ width: fieldSize,
7815
+ display: "flex",
7816
+ justifyContent: "center",
7817
+ alignItems: "center"
7818
+ },
7819
+ children: /* @__PURE__ */ jsx(
7820
+ Typography,
7821
+ {
7822
+ token: description.text.default,
7823
+ color: colour.description.default,
7824
+ children: inlineHelpText
7825
+ }
7826
+ )
7827
+ }
7828
+ )
7829
+ ] }) : inputElement;
7830
+ return fieldContent;
7762
7831
  });
7763
7832
  NumberInputField.displayName = "NumberInput.Field";
7764
7833
  var parseTokenValue15 = (value) => parseFloat(value);
@@ -7768,7 +7837,7 @@ var StyledRoot5 = styled50(View)(({ theme: theme2 }) => {
7768
7837
  gap: parseTokenValue15(spacing.gap)
7769
7838
  };
7770
7839
  });
7771
- var NumberInputRoot = React65.forwardRef(
7840
+ var NumberInputRoot = React66.forwardRef(
7772
7841
  (_a, ref) => {
7773
7842
  var _b = _a, {
7774
7843
  label,
@@ -7778,6 +7847,7 @@ var NumberInputRoot = React65.forwardRef(
7778
7847
  optionalText,
7779
7848
  onValueChange,
7780
7849
  fieldText,
7850
+ inlineHelpText,
7781
7851
  children
7782
7852
  } = _b, inputProps = __objRest(_b, [
7783
7853
  "label",
@@ -7787,6 +7857,7 @@ var NumberInputRoot = React65.forwardRef(
7787
7857
  "optionalText",
7788
7858
  "onValueChange",
7789
7859
  "fieldText",
7860
+ "inlineHelpText",
7790
7861
  "children"
7791
7862
  ]);
7792
7863
  if (children) {
@@ -7799,7 +7870,8 @@ var NumberInputRoot = React65.forwardRef(
7799
7870
  __spreadValues({
7800
7871
  state,
7801
7872
  onChangeText: onValueChange,
7802
- fieldText
7873
+ fieldText,
7874
+ inlineHelpText
7803
7875
  }, inputProps)
7804
7876
  ),
7805
7877
  description && /* @__PURE__ */ jsx(InputDescription, { state, children: description }),
@@ -7860,7 +7932,7 @@ var StyledContent = styled50(View)(({ contentGap }) => ({
7860
7932
  flex: 1,
7861
7933
  minWidth: 0
7862
7934
  }));
7863
- var Switch = React65.forwardRef(
7935
+ var Switch = React66.forwardRef(
7864
7936
  (_a, ref) => {
7865
7937
  var _b = _a, {
7866
7938
  label,
@@ -7880,7 +7952,7 @@ var Switch = React65.forwardRef(
7880
7952
  const theme2 = useTheme();
7881
7953
  const { size, colour, opacity, borderWidth, spacing, typography } = theme2.tokens.components.switch;
7882
7954
  const isControlled = controlledChecked !== void 0;
7883
- const [internalChecked, setInternalChecked] = React65.useState(defaultChecked);
7955
+ const [internalChecked, setInternalChecked] = React66.useState(defaultChecked);
7884
7956
  const isChecked = isControlled ? controlledChecked : internalChecked;
7885
7957
  const controlWidth = parseTokenValue16(size.control.width);
7886
7958
  const controlHeight = parseTokenValue16(size.control.height);
@@ -7986,7 +8058,7 @@ var StyledTag = styled50(View)(({ theme: theme2, tagVariant, tagSize }) => {
7986
8058
  backgroundColor: backgroundColorMap[tagVariant]
7987
8059
  };
7988
8060
  });
7989
- var Tag = React65.forwardRef(
8061
+ var Tag = React66.forwardRef(
7990
8062
  (_a, ref) => {
7991
8063
  var _b = _a, { variant = "primary", size = "medium", icon, children } = _b, rest = __objRest(_b, ["variant", "size", "icon", "children"]);
7992
8064
  const theme2 = useTheme();
@@ -8086,7 +8158,7 @@ var IconWrapper2 = styled50(View)(({ side }) => {
8086
8158
  zIndex: 1
8087
8159
  };
8088
8160
  });
8089
- var TextAreaField = React65.forwardRef(
8161
+ var TextAreaField = React66.forwardRef(
8090
8162
  (_a, ref) => {
8091
8163
  var _b = _a, {
8092
8164
  leadingIcon,
@@ -8279,7 +8351,7 @@ var StyledCharCountWrapper = styled50(View)(({ charCountGap, charCountPadding })
8279
8351
  gap: charCountGap,
8280
8352
  paddingLeft: charCountPadding
8281
8353
  }));
8282
- var TextAreaLabel = React65.forwardRef(
8354
+ var TextAreaLabel = React66.forwardRef(
8283
8355
  (_a, ref) => {
8284
8356
  var _b = _a, {
8285
8357
  optionalText,
@@ -8343,7 +8415,7 @@ var StyledRoot6 = styled50(View)(({ theme: theme2 }) => {
8343
8415
  gap: parseTokenValue20(spacing.gap)
8344
8416
  };
8345
8417
  });
8346
- var TextAreaRoot = React65.forwardRef(
8418
+ var TextAreaRoot = React66.forwardRef(
8347
8419
  (_a, ref) => {
8348
8420
  var _b = _a, {
8349
8421
  label,
@@ -8370,8 +8442,8 @@ var TextAreaRoot = React65.forwardRef(
8370
8442
  "defaultValue",
8371
8443
  "onChangeText"
8372
8444
  ]);
8373
- const [charCount, setCharCount] = React65.useState(0);
8374
- React65.useEffect(() => {
8445
+ const [charCount, setCharCount] = React66.useState(0);
8446
+ React66.useEffect(() => {
8375
8447
  if (value !== void 0) {
8376
8448
  setCharCount(String(value).length);
8377
8449
  } else if (defaultValue !== void 0) {
@@ -8424,7 +8496,7 @@ var TextArea = Object.assign(TextAreaRoot, {
8424
8496
  Description: InputDescription,
8425
8497
  Error: InputError
8426
8498
  });
8427
- var AccordionContext = React65.createContext({
8499
+ var AccordionContext = React66.createContext({
8428
8500
  openValues: [],
8429
8501
  toggle: () => {
8430
8502
  },
@@ -8455,7 +8527,7 @@ var StyledDivider = styled50(View)(({ dividerColor, dividerMarginTop }) => ({
8455
8527
  backgroundColor: dividerColor,
8456
8528
  marginTop: dividerMarginTop
8457
8529
  }));
8458
- var AccordionItem = React65.forwardRef(
8530
+ var AccordionItem = React66.forwardRef(
8459
8531
  (_a, ref) => {
8460
8532
  var _b = _a, { title, children, value, disabled: itemDisabled } = _b, rest = __objRest(_b, ["title", "children", "value", "disabled"]);
8461
8533
  const theme2 = useTheme();
@@ -8465,7 +8537,7 @@ var AccordionItem = React65.forwardRef(
8465
8537
  toggle,
8466
8538
  disabled: rootDisabled,
8467
8539
  size
8468
- } = React65.useContext(AccordionContext);
8540
+ } = React66.useContext(AccordionContext);
8469
8541
  const itemValue = value != null ? value : title;
8470
8542
  const isOpen = openValues.includes(itemValue);
8471
8543
  const isDisabled = itemDisabled || rootDisabled;
@@ -8526,7 +8598,7 @@ var AccordionItem = React65.forwardRef(
8526
8598
  }
8527
8599
  );
8528
8600
  AccordionItem.displayName = "Accordion.Item";
8529
- var AccordionRoot = React65.forwardRef(
8601
+ var AccordionRoot = React66.forwardRef(
8530
8602
  (_a, ref) => {
8531
8603
  var _b = _a, {
8532
8604
  children,
@@ -8548,11 +8620,11 @@ var AccordionRoot = React65.forwardRef(
8548
8620
  const theme2 = useTheme();
8549
8621
  const { accordion } = theme2.tokens.components;
8550
8622
  const isControlled = controlledValue !== void 0;
8551
- const [internalValue, setInternalValue] = React65.useState(
8623
+ const [internalValue, setInternalValue] = React66.useState(
8552
8624
  defaultValue != null ? defaultValue : []
8553
8625
  );
8554
8626
  const openValues = isControlled ? controlledValue : internalValue;
8555
- const toggle = React65.useCallback(
8627
+ const toggle = React66.useCallback(
8556
8628
  (itemValue) => {
8557
8629
  const isOpen = openValues.includes(itemValue);
8558
8630
  let next;
@@ -8570,7 +8642,7 @@ var AccordionRoot = React65.forwardRef(
8570
8642
  },
8571
8643
  [openValues, multiple, isControlled, onValueChange]
8572
8644
  );
8573
- const ctx = React65.useMemo(
8645
+ const ctx = React66.useMemo(
8574
8646
  () => ({ openValues, toggle, disabled, size }),
8575
8647
  [openValues, toggle, disabled, size]
8576
8648
  );
@@ -8700,7 +8772,7 @@ function buildDelayedEntering(variant, delayMs) {
8700
8772
  b.delay(delayMs);
8701
8773
  return b;
8702
8774
  }
8703
- var Animated5 = React65.forwardRef(
8775
+ var Animated5 = React66.forwardRef(
8704
8776
  (_a, ref) => {
8705
8777
  var _b = _a, { variant = "fade", delay, exit = true, children } = _b, props = __objRest(_b, ["variant", "delay", "exit", "children"]);
8706
8778
  const delayMs = delay !== void 0 && delay > 0 ? Math.round(delay * 1e3) : 0;
@@ -8718,7 +8790,7 @@ var Animated5 = React65.forwardRef(
8718
8790
  }
8719
8791
  );
8720
8792
  Animated5.displayName = "Animated";
8721
- var DrawerContext = React65.createContext({
8793
+ var DrawerContext = React66.createContext({
8722
8794
  isOpen: false,
8723
8795
  modalVisible: false,
8724
8796
  openDrawer: () => {
@@ -8728,9 +8800,9 @@ var DrawerContext = React65.createContext({
8728
8800
  onExitComplete: () => {
8729
8801
  }
8730
8802
  });
8731
- var useDrawerContext = () => React65.useContext(DrawerContext);
8803
+ var useDrawerContext = () => React66.useContext(DrawerContext);
8732
8804
  var FADE_DURATION = 220;
8733
- var DrawerOverlay = React65.forwardRef(({ accessible = false }, _ref) => {
8805
+ var DrawerOverlay = React66.forwardRef(({ accessible = false }, _ref) => {
8734
8806
  const theme2 = useTheme();
8735
8807
  const { isOpen, closeDrawer } = useDrawerContext();
8736
8808
  const opacity = useRef(new Animated.Value(0)).current;
@@ -8764,12 +8836,14 @@ var DrawerOverlay = React65.forwardRef(({ accessible = false }, _ref) => {
8764
8836
  );
8765
8837
  });
8766
8838
  DrawerOverlay.displayName = "Drawer.Overlay";
8767
- var DrawerDragContext = React65.createContext(null);
8768
- var useDrawerDragContext = () => React65.useContext(DrawerDragContext);
8769
- var DrawerFooterContext = React65.createContext(false);
8770
- var useDrawerFooterContext = () => React65.useContext(DrawerFooterContext);
8771
- var DrawerHeaderContext = React65.createContext(null);
8772
- var useDrawerHeaderContext = () => React65.useContext(DrawerHeaderContext);
8839
+ var DrawerDragContext = React66.createContext(null);
8840
+ var useDrawerDragContext = () => React66.useContext(DrawerDragContext);
8841
+ var DrawerMeasureContext = React66.createContext(null);
8842
+ var useDrawerMeasureContext = () => React66.useContext(DrawerMeasureContext);
8843
+ var DrawerFooterContext = React66.createContext(false);
8844
+ var useDrawerFooterContext = () => React66.useContext(DrawerFooterContext);
8845
+ var DrawerHeaderContext = React66.createContext(null);
8846
+ var useDrawerHeaderContext = () => React66.useContext(DrawerHeaderContext);
8773
8847
  var OPEN_DURATION = 320;
8774
8848
  var CLOSE_DURATION = 220;
8775
8849
  var DISMISS_THRESHOLD = 80;
@@ -8805,7 +8879,7 @@ var StyledPanel2 = styled50(View)(
8805
8879
  overflow: "hidden"
8806
8880
  })
8807
8881
  );
8808
- var DrawerContent = React65.forwardRef(
8882
+ var DrawerContent = React66.forwardRef(
8809
8883
  (_a, ref) => {
8810
8884
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
8811
8885
  var _a2;
@@ -8815,6 +8889,7 @@ var DrawerContent = React65.forwardRef(
8815
8889
  const { isOpen, closeDrawer, onExitComplete } = useDrawerContext();
8816
8890
  const { height: windowHeight } = useWindowDimensions();
8817
8891
  const maxHeight = windowHeight * 0.9;
8892
+ const bodyMaxHeight = windowHeight - 300;
8818
8893
  const closeDrawerRef = useRef(closeDrawer);
8819
8894
  useEffect(() => {
8820
8895
  closeDrawerRef.current = closeDrawer;
@@ -8886,19 +8961,60 @@ var DrawerContent = React65.forwardRef(
8886
8961
  }, [isOpen, runEntry, runExit]);
8887
8962
  const onLayout = useCallback(
8888
8963
  ({ nativeEvent }) => {
8964
+ if (entryRanRef.current) return;
8889
8965
  const h = nativeEvent.layout.height;
8890
8966
  const capped = Math.min(h, maxHeight);
8891
- if (capped !== panelHeightRef.current && capped > 0) {
8967
+ if (capped <= 0) return;
8968
+ if (capped !== panelHeightRef.current) {
8892
8969
  setPanelHeight(capped);
8893
8970
  panelHeightRef.current = capped;
8894
8971
  }
8895
- if (isOpenRef.current && !entryRanRef.current && capped > 0) {
8896
- panelHeightRef.current = capped;
8972
+ if (isOpenRef.current) {
8897
8973
  runEntry();
8898
8974
  }
8899
8975
  },
8900
8976
  [runEntry, maxHeight]
8901
8977
  );
8978
+ const chromeRef = useRef(0);
8979
+ const bodyContentRef = useRef(0);
8980
+ const applyDesiredHeight = useCallback(() => {
8981
+ const chrome = chromeRef.current;
8982
+ const content = bodyContentRef.current;
8983
+ const current = panelHeightRef.current;
8984
+ if (chrome <= 0 || content <= 0 || current <= 0) return;
8985
+ const desired = Math.min(
8986
+ chrome + Math.min(content, bodyMaxHeight),
8987
+ maxHeight
8988
+ );
8989
+ if (Math.abs(desired - current) > 1) {
8990
+ panelHeightRef.current = desired;
8991
+ setPanelHeight(desired);
8992
+ }
8993
+ }, [maxHeight, bodyMaxHeight]);
8994
+ const setBodyFrameHeight = useCallback(
8995
+ (frameHeight) => {
8996
+ if (chromeRef.current <= 0) {
8997
+ const current = panelHeightRef.current;
8998
+ if (frameHeight > 0 && current > frameHeight) {
8999
+ chromeRef.current = current - frameHeight;
9000
+ }
9001
+ }
9002
+ applyDesiredHeight();
9003
+ },
9004
+ [applyDesiredHeight]
9005
+ );
9006
+ const setBodyContentHeight = useCallback(
9007
+ (contentHeight) => {
9008
+ if (contentHeight <= 0) return;
9009
+ bodyContentRef.current = contentHeight;
9010
+ applyDesiredHeight();
9011
+ },
9012
+ [applyDesiredHeight]
9013
+ );
9014
+ const measureContextValue = useMemo(
9015
+ () => ({ setBodyFrameHeight, setBodyContentHeight }),
9016
+ [setBodyFrameHeight, setBodyContentHeight]
9017
+ );
8902
9018
  const panResponder = useRef(
8903
9019
  PanResponder.create({
8904
9020
  // Claim the responder as soon as a touch starts on the grabber so the
@@ -8957,16 +9073,16 @@ var DrawerContent = React65.forwardRef(
8957
9073
  () => ({ panHandlers: panResponder.panHandlers }),
8958
9074
  [panResponder.panHandlers]
8959
9075
  );
8960
- const hasFooter = React65.Children.toArray(children).some(
8961
- (child) => React65.isValidElement(child) && child.type.displayName === "Drawer.Footer"
9076
+ const hasFooter = React66.Children.toArray(children).some(
9077
+ (child) => React66.isValidElement(child) && child.type.displayName === "Drawer.Footer"
8962
9078
  );
8963
- const headerChild = React65.Children.toArray(children).find(
8964
- (child) => React65.isValidElement(child) && child.type.displayName === "Drawer.Header"
9079
+ const headerChild = React66.Children.toArray(children).find(
9080
+ (child) => React66.isValidElement(child) && child.type.displayName === "Drawer.Header"
8965
9081
  );
8966
9082
  const headerContextValue = headerChild != null ? {
8967
9083
  variant: (_a2 = headerChild.props.variant) != null ? _a2 : "titleAndText"
8968
9084
  } : null;
8969
- return /* @__PURE__ */ jsx(DrawerHeaderContext.Provider, { value: headerContextValue, children: /* @__PURE__ */ jsx(DrawerFooterContext.Provider, { value: hasFooter, children: /* @__PURE__ */ jsx(DrawerDragContext.Provider, { value: dragContextValue, children: /* @__PURE__ */ jsx(
9085
+ return /* @__PURE__ */ jsx(DrawerHeaderContext.Provider, { value: headerContextValue, children: /* @__PURE__ */ jsx(DrawerFooterContext.Provider, { value: hasFooter, children: /* @__PURE__ */ jsx(DrawerMeasureContext.Provider, { value: measureContextValue, children: /* @__PURE__ */ jsx(DrawerDragContext.Provider, { value: dragContextValue, children: /* @__PURE__ */ jsx(
8970
9086
  Animated.View,
8971
9087
  {
8972
9088
  style: [
@@ -8996,7 +9112,7 @@ var DrawerContent = React65.forwardRef(
8996
9112
  })
8997
9113
  )
8998
9114
  }
8999
- ) }) }) });
9115
+ ) }) }) }) });
9000
9116
  }
9001
9117
  );
9002
9118
  DrawerContent.displayName = "Drawer.Content";
@@ -9024,7 +9140,7 @@ var StyledBar = styled50(View)(({ barWidth, barHeight, barBorderRadius, barColor
9024
9140
  borderRadius: barBorderRadius,
9025
9141
  backgroundColor: barColor
9026
9142
  }));
9027
- var DrawerGrabber = React65.forwardRef(
9143
+ var DrawerGrabber = React66.forwardRef(
9028
9144
  (props, ref) => {
9029
9145
  var _a;
9030
9146
  const theme2 = useTheme();
@@ -9052,7 +9168,7 @@ var DrawerGrabber = React65.forwardRef(
9052
9168
  );
9053
9169
  DrawerGrabber.displayName = "Drawer.Grabber";
9054
9170
  var parseTokenValue24 = (value) => parseFloat(value);
9055
- var DrawerClose = React65.forwardRef(
9171
+ var DrawerClose = React66.forwardRef(
9056
9172
  (_a, ref) => {
9057
9173
  var _b = _a, { "aria-label": ariaLabel = "Close" } = _b, props = __objRest(_b, ["aria-label"]);
9058
9174
  const theme2 = useTheme();
@@ -9165,8 +9281,8 @@ var StyledTitleContent = styled50(View)(
9165
9281
  function splitChildren(children) {
9166
9282
  let closeChild = null;
9167
9283
  const otherChildren = [];
9168
- React65.Children.forEach(children, (child) => {
9169
- if (React65.isValidElement(child) && child.type === DrawerClose) {
9284
+ React66.Children.forEach(children, (child) => {
9285
+ if (React66.isValidElement(child) && child.type === DrawerClose) {
9170
9286
  closeChild = child;
9171
9287
  } else {
9172
9288
  otherChildren.push(child);
@@ -9174,7 +9290,7 @@ function splitChildren(children) {
9174
9290
  });
9175
9291
  return { closeChild, otherChildren };
9176
9292
  }
9177
- var DrawerHeader = React65.forwardRef(
9293
+ var DrawerHeader = React66.forwardRef(
9178
9294
  (_a, ref) => {
9179
9295
  var _b = _a, { variant = "titleAndText", imageSource, children } = _b, props = __objRest(_b, ["variant", "imageSource", "children"]);
9180
9296
  var _a2, _b2, _c, _d, _e, _f;
@@ -9261,7 +9377,7 @@ var DrawerHeader = React65.forwardRef(
9261
9377
  }
9262
9378
  );
9263
9379
  DrawerHeader.displayName = "Drawer.Header";
9264
- var DrawerTitle = React65.forwardRef(
9380
+ var DrawerTitle = React66.forwardRef(
9265
9381
  (_a, ref) => {
9266
9382
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
9267
9383
  const theme2 = useTheme();
@@ -9277,7 +9393,7 @@ var DrawerTitle = React65.forwardRef(
9277
9393
  }
9278
9394
  );
9279
9395
  DrawerTitle.displayName = "Drawer.Title";
9280
- var DrawerDescription = React65.forwardRef(
9396
+ var DrawerDescription = React66.forwardRef(
9281
9397
  (_a, ref) => {
9282
9398
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
9283
9399
  const theme2 = useTheme();
@@ -9299,31 +9415,56 @@ var StyledScrollView = styled50(ScrollView)(
9299
9415
  bodyPaddingHorizontal,
9300
9416
  bodyPaddingRight,
9301
9417
  bodyGap,
9302
- bodyMaxHeight,
9303
9418
  bodyPaddingBottom
9304
9419
  }) => ({
9420
+ // flex: 1 fills the bounded panel so the ScrollView can scroll. The panel
9421
+ // (DrawerContent) is the single height authority — the body must NOT set
9422
+ // its own maxHeight, or it would cap independently of the panel and corrupt
9423
+ // the panel's chrome measurement.
9305
9424
  flex: 1,
9306
9425
  paddingLeft: bodyPaddingHorizontal,
9307
9426
  paddingRight: bodyPaddingRight,
9308
9427
  gap: bodyGap,
9309
- maxHeight: bodyMaxHeight,
9310
9428
  paddingBottom: bodyPaddingBottom
9311
9429
  })
9312
9430
  );
9313
- var DrawerBody = React65.forwardRef(
9431
+ var DrawerBody = React66.forwardRef(
9314
9432
  (_a, ref) => {
9315
- var _b = _a, { children, contentContainerStyle } = _b, props = __objRest(_b, ["children", "contentContainerStyle"]);
9433
+ var _b = _a, {
9434
+ children,
9435
+ contentContainerStyle,
9436
+ onLayout,
9437
+ onContentSizeChange
9438
+ } = _b, props = __objRest(_b, [
9439
+ "children",
9440
+ "contentContainerStyle",
9441
+ "onLayout",
9442
+ "onContentSizeChange"
9443
+ ]);
9316
9444
  const theme2 = useTheme();
9317
9445
  const { spacing } = theme2.tokens.components.drawer;
9318
9446
  const { buttons } = theme2.tokens.components;
9319
9447
  const { content } = spacing;
9320
9448
  const headerContext = useDrawerHeaderContext();
9321
9449
  const footerContext = useDrawerFooterContext();
9322
- const { height: windowHeight } = useWindowDimensions();
9450
+ const measureContext = useDrawerMeasureContext();
9323
9451
  const gap = parseTokenValue26(content.slot.gap);
9324
9452
  const horizontalPadding = parseTokenValue26(content.slot.horizontalPadding);
9325
9453
  const topPadding = parseTokenValue26(content.slot.verticalPadding);
9326
- const bodyMaxHeight = windowHeight - 300;
9454
+ const handleLayout = useCallback(
9455
+ (event) => {
9456
+ measureContext == null ? void 0 : measureContext.setBodyFrameHeight(event.nativeEvent.layout.height);
9457
+ onLayout == null ? void 0 : onLayout(event);
9458
+ },
9459
+ [measureContext, onLayout]
9460
+ );
9461
+ const handleContentSizeChange = useCallback(
9462
+ (width, height) => {
9463
+ measureContext == null ? void 0 : measureContext.setBodyContentHeight(height);
9464
+ onContentSizeChange == null ? void 0 : onContentSizeChange(width, height);
9465
+ },
9466
+ [measureContext, onContentSizeChange]
9467
+ );
9327
9468
  const paddingRight = headerContext === null ? parseTokenValue26(spacing.close.right.md) + parseTokenValue26(buttons.size.sm.height) : horizontalPadding;
9328
9469
  const bodyPaddingBottom = !footerContext ? parseTokenValue26(theme2.tokens.semantics.dimensions.spacing["2xl"]) : 0;
9329
9470
  return /* @__PURE__ */ jsx(
@@ -9333,8 +9474,9 @@ var DrawerBody = React65.forwardRef(
9333
9474
  bodyPaddingHorizontal: horizontalPadding,
9334
9475
  bodyPaddingRight: paddingRight,
9335
9476
  bodyGap: gap,
9336
- bodyMaxHeight,
9337
9477
  bodyPaddingBottom,
9478
+ onLayout: handleLayout,
9479
+ onContentSizeChange: handleContentSizeChange,
9338
9480
  contentContainerStyle: [
9339
9481
  {
9340
9482
  gap,
@@ -9357,7 +9499,7 @@ var StyledFooter = styled50(View)(({ footerPaddingTop, footerPaddingHorizontal,
9357
9499
  paddingHorizontal: footerPaddingHorizontal,
9358
9500
  paddingBottom: footerPaddingBottom
9359
9501
  }));
9360
- var DrawerFooter = React65.forwardRef(
9502
+ var DrawerFooter = React66.forwardRef(
9361
9503
  (_a, ref) => {
9362
9504
  var _b = _a, { children } = _b, props = __objRest(_b, ["children"]);
9363
9505
  const theme2 = useTheme();
@@ -9379,7 +9521,7 @@ var DrawerFooter = React65.forwardRef(
9379
9521
  }
9380
9522
  );
9381
9523
  DrawerFooter.displayName = "Drawer.Footer";
9382
- var DrawerRoot = React65.forwardRef(
9524
+ var DrawerRoot = React66.forwardRef(
9383
9525
  (_a, ref) => {
9384
9526
  var _b = _a, {
9385
9527
  open: controlledOpen,
@@ -9420,15 +9562,15 @@ var DrawerRoot = React65.forwardRef(
9420
9562
  }
9421
9563
  );
9422
9564
  DrawerRoot.displayName = "Drawer";
9423
- var DrawerTrigger = React65.forwardRef(
9565
+ var DrawerTrigger = React66.forwardRef(
9424
9566
  ({ children }, ref) => {
9425
- const { openDrawer } = React65.useContext(DrawerContext);
9567
+ const { openDrawer } = React66.useContext(DrawerContext);
9426
9568
  return /* @__PURE__ */ jsx(Slot, { ref, onPress: openDrawer, children });
9427
9569
  }
9428
9570
  );
9429
9571
  DrawerTrigger.displayName = "Drawer.Trigger";
9430
9572
  var DrawerPortal = ({ children, topContent }) => {
9431
- const { modalVisible, closeDrawer } = React65.useContext(DrawerContext);
9573
+ const { modalVisible, closeDrawer } = React66.useContext(DrawerContext);
9432
9574
  if (!modalVisible) return null;
9433
9575
  return /* @__PURE__ */ jsx(
9434
9576
  Modal,
@@ -9499,7 +9641,7 @@ var StyledButtonGroup = styled50(View)(({ groupDirection, groupAlign, groupJusti
9499
9641
  gap: groupGap,
9500
9642
  width: "100%"
9501
9643
  }, groupDirection === "column" ? { maxWidth: 520 } : {}));
9502
- var ButtonDock = React65.forwardRef(
9644
+ var ButtonDock = React66.forwardRef(
9503
9645
  (_a, ref) => {
9504
9646
  var _b = _a, { variant = "stacked", leadingContent, description, children } = _b, rest = __objRest(_b, ["variant", "leadingContent", "description", "children"]);
9505
9647
  const theme2 = useTheme();
@@ -9579,7 +9721,7 @@ var StyledButtonRow = styled50(View)(({ rowDirection, rowAlign, rowGap }) => __s
9579
9721
  var StyledChildSlot = styled50(View)(
9580
9722
  ({ slotInline }) => __spreadValues({}, slotInline ? { flex: 1, minWidth: 0 } : { width: "100%", alignSelf: "stretch" })
9581
9723
  );
9582
- var ButtonGroup = React65.forwardRef(
9724
+ var ButtonGroup = React66.forwardRef(
9583
9725
  (_a, ref) => {
9584
9726
  var _b = _a, { layout = "stacked", description, children } = _b, rest = __objRest(_b, ["layout", "description", "children"]);
9585
9727
  const theme2 = useTheme();
@@ -9601,9 +9743,9 @@ var ButtonGroup = React65.forwardRef(
9601
9743
  rowGap: parseTokenValue29(
9602
9744
  isInline ? buttonGroup.spacing.sideBySide.gap : buttonGroup.spacing.stacked.gap
9603
9745
  ),
9604
- children: React65.Children.map(children, (child, index) => {
9605
- if (!React65.isValidElement(child)) return child;
9606
- return /* @__PURE__ */ jsx(StyledChildSlot, { slotInline: isInline, children: React65.cloneElement(
9746
+ children: React66.Children.map(children, (child, index) => {
9747
+ if (!React66.isValidElement(child)) return child;
9748
+ return /* @__PURE__ */ jsx(StyledChildSlot, { slotInline: isInline, children: React66.cloneElement(
9607
9749
  child,
9608
9750
  {
9609
9751
  fullWidth: true
@@ -9678,7 +9820,7 @@ var StyledIllustration = styled50(View)(({ illustrationSize }) => ({
9678
9820
  height: illustrationSize,
9679
9821
  overflow: "hidden"
9680
9822
  }));
9681
- var Checkbox = React65.forwardRef(
9823
+ var Checkbox = React66.forwardRef(
9682
9824
  (_a, ref) => {
9683
9825
  var _b = _a, {
9684
9826
  variant = "standalone",
@@ -9705,7 +9847,7 @@ var Checkbox = React65.forwardRef(
9705
9847
  const { checkbox } = theme2.tokens.components;
9706
9848
  const { dimensions: dimensions3 } = theme2.tokens.semantics;
9707
9849
  const isControlled = controlledChecked !== void 0;
9708
- const [internalChecked, setInternalChecked] = React65.useState(defaultChecked);
9850
+ const [internalChecked, setInternalChecked] = React66.useState(defaultChecked);
9709
9851
  const isChecked = isControlled ? controlledChecked : internalChecked;
9710
9852
  const handleCheckedChange = (checked) => {
9711
9853
  if (!isControlled) {
@@ -9800,7 +9942,7 @@ var StyledGroup = styled50(View)(({ groupDirection, groupGap }) => ({
9800
9942
  flexDirection: groupDirection,
9801
9943
  gap: groupGap
9802
9944
  }));
9803
- var CheckboxGroup = React65.forwardRef(
9945
+ var CheckboxGroup = React66.forwardRef(
9804
9946
  (_a, ref) => {
9805
9947
  var _b = _a, { orientation = "vertical", children } = _b, rest = __objRest(_b, ["orientation", "children"]);
9806
9948
  const theme2 = useTheme();
@@ -9818,7 +9960,7 @@ var CheckboxGroup = React65.forwardRef(
9818
9960
  }
9819
9961
  );
9820
9962
  CheckboxGroup.displayName = "CheckboxGroup";
9821
- var CopyFieldInput = React65.forwardRef(
9963
+ var CopyFieldInput = React66.forwardRef(
9822
9964
  (_a, ref) => {
9823
9965
  var _b = _a, {
9824
9966
  onCopy,
@@ -9837,19 +9979,19 @@ var CopyFieldInput = React65.forwardRef(
9837
9979
  "editable",
9838
9980
  "defaultValue"
9839
9981
  ]);
9840
- const [internalValue, setInternalValue] = React65.useState(
9982
+ const [internalValue, setInternalValue] = React66.useState(
9841
9983
  typeof defaultValue === "string" ? defaultValue : ""
9842
9984
  );
9843
- const [copied, setCopied] = React65.useState(false);
9844
- const timeoutRef = React65.useRef(
9985
+ const [copied, setCopied] = React66.useState(false);
9986
+ const timeoutRef = React66.useRef(
9845
9987
  void 0
9846
9988
  );
9847
- React65.useEffect(() => {
9989
+ React66.useEffect(() => {
9848
9990
  if (defaultValue !== void 0 && value === void 0) {
9849
9991
  setInternalValue(typeof defaultValue === "string" ? defaultValue : "");
9850
9992
  }
9851
9993
  }, [defaultValue, value]);
9852
- React65.useEffect(() => {
9994
+ React66.useEffect(() => {
9853
9995
  return () => {
9854
9996
  if (timeoutRef.current) {
9855
9997
  clearTimeout(timeoutRef.current);
@@ -9916,7 +10058,7 @@ var StyledRoot8 = styled50(View)(({ theme: theme2 }) => {
9916
10058
  gap: parseTokenValue32(spacing.gap)
9917
10059
  };
9918
10060
  });
9919
- var CopyFieldRoot = React65.forwardRef(
10061
+ var CopyFieldRoot = React66.forwardRef(
9920
10062
  (_a, ref) => {
9921
10063
  var _b = _a, {
9922
10064
  label,
@@ -9984,7 +10126,7 @@ var useCopyField = (options = {}) => {
9984
10126
  onCopy: handleCopy
9985
10127
  };
9986
10128
  };
9987
- var FilterTabContext = React65.createContext({
10129
+ var FilterTabContext = React66.createContext({
9988
10130
  size: "sm",
9989
10131
  selectedValues: [],
9990
10132
  toggle: () => {
@@ -10023,7 +10165,7 @@ var StyledItem2 = styled50(Pressable)(
10023
10165
  flexShrink: 0
10024
10166
  })
10025
10167
  );
10026
- var FilterTabItem = React65.forwardRef(
10168
+ var FilterTabItem = React66.forwardRef(
10027
10169
  (_a, ref) => {
10028
10170
  var _b = _a, {
10029
10171
  value,
@@ -10043,7 +10185,7 @@ var FilterTabItem = React65.forwardRef(
10043
10185
  "accessibilityLabel"
10044
10186
  ]);
10045
10187
  const theme2 = useTheme();
10046
- const { size, selectedValues, toggle } = React65.useContext(FilterTabContext);
10188
+ const { size, selectedValues, toggle } = React66.useContext(FilterTabContext);
10047
10189
  const isSelected = selectedValues.includes(value);
10048
10190
  const isIconOnly = !!IconOnlyIcon && !label;
10049
10191
  const isActive = isSelected && !disabled;
@@ -10117,7 +10259,7 @@ var FilterTabItem = React65.forwardRef(
10117
10259
  }
10118
10260
  );
10119
10261
  FilterTabItem.displayName = "FilterTab.Item";
10120
- var FilterTabRoot = React65.forwardRef(
10262
+ var FilterTabRoot = React66.forwardRef(
10121
10263
  (_a, ref) => {
10122
10264
  var _b = _a, {
10123
10265
  size = "sm",
@@ -10137,9 +10279,9 @@ var FilterTabRoot = React65.forwardRef(
10137
10279
  const theme2 = useTheme();
10138
10280
  const { filterTabs } = theme2.tokens.components;
10139
10281
  const isControlled = controlledValue !== void 0;
10140
- const [internalValue, setInternalValue] = React65.useState(defaultValue);
10282
+ const [internalValue, setInternalValue] = React66.useState(defaultValue);
10141
10283
  const selectedValues = isControlled ? controlledValue : internalValue;
10142
- const toggle = React65.useCallback(
10284
+ const toggle = React66.useCallback(
10143
10285
  (itemValue) => {
10144
10286
  let next;
10145
10287
  if (multiple) {
@@ -10152,7 +10294,7 @@ var FilterTabRoot = React65.forwardRef(
10152
10294
  },
10153
10295
  [selectedValues, isControlled, onValueChange, multiple]
10154
10296
  );
10155
- const contextValue = React65.useMemo(
10297
+ const contextValue = React66.useMemo(
10156
10298
  () => ({ size, selectedValues, toggle }),
10157
10299
  [size, selectedValues, toggle]
10158
10300
  );
@@ -10184,6 +10326,7 @@ var StyledFieldWrapper = styled50(View)(
10184
10326
  }) => __spreadValues({
10185
10327
  alignItems: "center",
10186
10328
  justifyContent: "center",
10329
+ position: "relative",
10187
10330
  width: fullWidth ? "100%" : fieldMinWidth,
10188
10331
  minWidth: fieldMinWidth,
10189
10332
  height: fieldHeight,
@@ -10195,25 +10338,33 @@ var StyledFieldWrapper = styled50(View)(
10195
10338
  overflow: "hidden"
10196
10339
  }, fullWidth && { flex: 1 })
10197
10340
  );
10198
- var StyledTextInput = styled50(TextInput)(({ inputColor, inputFontFamily, inputFontWeight, inputFontSize }) => __spreadProps(__spreadValues({
10199
- textAlign: "center",
10200
- outlineStyle: "none",
10201
- padding: 0,
10202
- minWidth: 0,
10203
- minHeight: 0,
10204
- width: "100%",
10205
- height: "100%",
10206
- color: inputColor,
10207
- fontFamily: inputFontFamily
10208
- }, inputFontWeight ? { fontWeight: inputFontWeight } : {}), {
10209
- fontSize: inputFontSize
10210
- }));
10341
+ var StyledTextInput = styled50(TextInput)(
10342
+ ({
10343
+ inputColor,
10344
+ inputFontFamily,
10345
+ inputFontWeight,
10346
+ inputFontSize,
10347
+ hasInlineHelp
10348
+ }) => __spreadValues(__spreadProps(__spreadValues({
10349
+ textAlign: "center",
10350
+ outlineStyle: "none",
10351
+ padding: 0,
10352
+ minWidth: 0,
10353
+ minHeight: 0,
10354
+ width: "100%",
10355
+ height: "100%",
10356
+ color: inputColor,
10357
+ fontFamily: inputFontFamily
10358
+ }, inputFontWeight ? { fontWeight: inputFontWeight } : {}), {
10359
+ fontSize: inputFontSize
10360
+ }), hasInlineHelp ? { position: "relative", top: -8 } : {})
10361
+ );
10211
10362
  var StyledRow = styled50(View)(({ rowGap }) => ({
10212
10363
  flexDirection: "row",
10213
10364
  alignItems: "center",
10214
10365
  gap: rowGap
10215
10366
  }));
10216
- var NumberFieldInput = React65.forwardRef(
10367
+ var NumberFieldInput = React66.forwardRef(
10217
10368
  (_a, ref) => {
10218
10369
  var _b = _a, {
10219
10370
  fieldSize = "lg",
@@ -10228,6 +10379,7 @@ var NumberFieldInput = React65.forwardRef(
10228
10379
  decrementDisabled = false,
10229
10380
  min,
10230
10381
  max,
10382
+ inlineHelpText,
10231
10383
  style,
10232
10384
  onFocus,
10233
10385
  onBlur,
@@ -10247,6 +10399,7 @@ var NumberFieldInput = React65.forwardRef(
10247
10399
  "decrementDisabled",
10248
10400
  "min",
10249
10401
  "max",
10402
+ "inlineHelpText",
10250
10403
  "style",
10251
10404
  "onFocus",
10252
10405
  "onBlur",
@@ -10258,9 +10411,9 @@ var NumberFieldInput = React65.forwardRef(
10258
10411
  const theme2 = useTheme();
10259
10412
  const tokens3 = theme2.tokens.components.numberField;
10260
10413
  const inputTokens3 = theme2.tokens.components.inputs;
10261
- const [isFocused, setIsFocused] = React65.useState(false);
10262
- const [isEdited, setIsEdited] = React65.useState(false);
10263
- const initialValueRef = React65.useRef((_a2 = value != null ? value : defaultValue) != null ? _a2 : "");
10414
+ const [isFocused, setIsFocused] = React66.useState(false);
10415
+ const [isEdited, setIsEdited] = React66.useState(false);
10416
+ const initialValueRef = React66.useRef((_a2 = value != null ? value : defaultValue) != null ? _a2 : "");
10264
10417
  const isLarge = fieldSize === "lg";
10265
10418
  const sizeTokens = isLarge ? tokens3.spacing.large : tokens3.spacing.small;
10266
10419
  const buttonSize = isLarge ? "lg" : "sm";
@@ -10277,14 +10430,14 @@ var NumberFieldInput = React65.forwardRef(
10277
10430
  if (isEdited) return tokens3.colour.field.border.edited;
10278
10431
  return tokens3.colour.field.border.default;
10279
10432
  };
10280
- const handleFocus = React65.useCallback(
10433
+ const handleFocus = React66.useCallback(
10281
10434
  (e) => {
10282
10435
  setIsFocused(true);
10283
10436
  onFocus == null ? void 0 : onFocus(e);
10284
10437
  },
10285
10438
  [onFocus]
10286
10439
  );
10287
- const handleBlur = React65.useCallback(
10440
+ const handleBlur = React66.useCallback(
10288
10441
  (e) => {
10289
10442
  setIsFocused(false);
10290
10443
  if (value != null && onChangeText) {
@@ -10303,7 +10456,7 @@ var NumberFieldInput = React65.forwardRef(
10303
10456
  const numericValue = value != null ? Number(value) : Number(defaultValue != null ? defaultValue : 0);
10304
10457
  const isAtMin = min != null && numericValue <= min;
10305
10458
  const isAtMax = max != null && numericValue >= max;
10306
- const handleChangeText = React65.useCallback(
10459
+ const handleChangeText = React66.useCallback(
10307
10460
  (text) => {
10308
10461
  setIsEdited(text !== initialValueRef.current);
10309
10462
  onChangeText == null ? void 0 : onChangeText(text);
@@ -10325,7 +10478,7 @@ var NumberFieldInput = React65.forwardRef(
10325
10478
  disabled: disabled || decrementDisabled || isAtMin
10326
10479
  }
10327
10480
  ),
10328
- /* @__PURE__ */ jsx(
10481
+ /* @__PURE__ */ jsxs(
10329
10482
  StyledFieldWrapper,
10330
10483
  {
10331
10484
  fieldBgColor: tokens3.colour.field.background.default,
@@ -10335,24 +10488,48 @@ var NumberFieldInput = React65.forwardRef(
10335
10488
  fieldHeight,
10336
10489
  fieldPaddingHorizontal,
10337
10490
  fullWidth,
10338
- children: /* @__PURE__ */ jsx(
10339
- StyledTextInput,
10340
- __spreadValues({
10341
- ref,
10342
- inputColor: tokens3.colour.field.text.default,
10343
- inputFontFamily: resolvedInputFontFamily,
10344
- inputFontWeight: resolvedInputFontFamily === typographyToken.fontFamily ? typographyToken.fontWeight : void 0,
10345
- inputFontSize: parseTokenValue34(typographyToken.fontSize),
10346
- keyboardType: "numeric",
10347
- editable: !disabled,
10348
- onFocus: handleFocus,
10349
- onBlur: handleBlur,
10350
- onChangeText: handleChangeText,
10351
- defaultValue,
10352
- value,
10353
- style
10354
- }, rest)
10355
- )
10491
+ children: [
10492
+ /* @__PURE__ */ jsx(
10493
+ StyledTextInput,
10494
+ __spreadValues({
10495
+ ref,
10496
+ inputColor: tokens3.colour.field.text.default,
10497
+ inputFontFamily: resolvedInputFontFamily,
10498
+ inputFontWeight: resolvedInputFontFamily === typographyToken.fontFamily ? typographyToken.fontWeight : void 0,
10499
+ inputFontSize: parseTokenValue34(typographyToken.fontSize),
10500
+ hasInlineHelp: !!inlineHelpText,
10501
+ keyboardType: "numeric",
10502
+ editable: !disabled,
10503
+ onFocus: handleFocus,
10504
+ onBlur: handleBlur,
10505
+ onChangeText: handleChangeText,
10506
+ defaultValue,
10507
+ value,
10508
+ style
10509
+ }, rest)
10510
+ ),
10511
+ inlineHelpText && /* @__PURE__ */ jsx(
10512
+ View,
10513
+ {
10514
+ style: {
10515
+ position: "absolute",
10516
+ bottom: 4,
10517
+ width: fieldMinWidth,
10518
+ display: "flex",
10519
+ justifyContent: "center",
10520
+ alignItems: "center"
10521
+ },
10522
+ children: /* @__PURE__ */ jsx(
10523
+ Typography,
10524
+ {
10525
+ token: inputTokens3.description.text.default,
10526
+ color: inputTokens3.colour.description.default,
10527
+ children: inlineHelpText
10528
+ }
10529
+ )
10530
+ }
10531
+ )
10532
+ ]
10356
10533
  }
10357
10534
  ),
10358
10535
  showIncrementButton && /* @__PURE__ */ jsx(
@@ -10378,7 +10555,7 @@ var StyledRoot10 = styled50(View)(({ rootGap, fullWidth }) => __spreadValues({
10378
10555
  var StyledLabelGroup = styled50(View)(({ labelGap }) => ({
10379
10556
  gap: labelGap
10380
10557
  }));
10381
- var NumberField = React65.forwardRef(
10558
+ var NumberField = React66.forwardRef(
10382
10559
  (_a, ref) => {
10383
10560
  var _b = _a, {
10384
10561
  label,
@@ -10493,9 +10670,9 @@ var NumberField = React65.forwardRef(
10493
10670
  );
10494
10671
  NumberField.displayName = "NumberField";
10495
10672
  var HIT_SLOP = 12;
10496
- var PasswordFieldInput = React65.forwardRef((_a, ref) => {
10673
+ var PasswordFieldInput = React66.forwardRef((_a, ref) => {
10497
10674
  var _b = _a, { onValueChange, value, state, editable } = _b, inputFieldProps = __objRest(_b, ["onValueChange", "value", "state", "editable"]);
10498
- const [showPassword, setShowPassword] = React65.useState(false);
10675
+ const [showPassword, setShowPassword] = React66.useState(false);
10499
10676
  const handleValueChange = (newValue) => {
10500
10677
  onValueChange == null ? void 0 : onValueChange(newValue);
10501
10678
  };
@@ -10540,7 +10717,7 @@ var StyledErrorRow2 = styled50(View)(({ gap }) => ({
10540
10717
  alignItems: "center",
10541
10718
  gap
10542
10719
  }));
10543
- var PasswordFieldError = React65.forwardRef((_a, ref) => {
10720
+ var PasswordFieldError = React66.forwardRef((_a, ref) => {
10544
10721
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
10545
10722
  const theme2 = useTheme();
10546
10723
  const { listItem } = theme2.tokens.components.validationList;
@@ -10579,7 +10756,7 @@ var StyledRequirementItem = styled50(View)(
10579
10756
  gap: itemGap
10580
10757
  })
10581
10758
  );
10582
- var PasswordFieldRequirements = React65.forwardRef((_a, ref) => {
10759
+ var PasswordFieldRequirements = React66.forwardRef((_a, ref) => {
10583
10760
  var _b = _a, { requirements } = _b, rest = __objRest(_b, ["requirements"]);
10584
10761
  const theme2 = useTheme();
10585
10762
  const { listItem, list } = theme2.tokens.components.validationList;
@@ -10635,7 +10812,7 @@ var StyledRoot11 = styled50(View)(({ theme: theme2 }) => {
10635
10812
  gap: parseTokenValue38(spacing.gap)
10636
10813
  };
10637
10814
  });
10638
- var PasswordFieldRoot = React65.forwardRef(
10815
+ var PasswordFieldRoot = React66.forwardRef(
10639
10816
  (_a, ref) => {
10640
10817
  var _b = _a, {
10641
10818
  label,
@@ -10770,7 +10947,7 @@ var StyledIndicator = styled50(View)(({ indicatorBorderRadius, indicatorBgColor
10770
10947
  backgroundColor: indicatorBgColor
10771
10948
  }));
10772
10949
  var clamp = (value, min, max) => Math.max(min, Math.min(max, value));
10773
- var Progress = React65.forwardRef(
10950
+ var Progress = React66.forwardRef(
10774
10951
  (_a, ref) => {
10775
10952
  var _b = _a, {
10776
10953
  value = 0,
@@ -10898,6 +11075,9 @@ var StyledIndicator2 = styled50(View)(({ indicatorSize, indicatorBgColor }) => (
10898
11075
  backgroundColor: indicatorBgColor
10899
11076
  }));
10900
11077
  var StyledTextContent = styled50(View)(({ textContentGap }) => ({
11078
+ // Take the row's remaining width so long label/subText wraps within the tile
11079
+ // instead of pushing the trailing asset past the tile's edge.
11080
+ flex: 1,
10901
11081
  flexDirection: "column",
10902
11082
  gap: textContentGap
10903
11083
  }));
@@ -10910,7 +11090,7 @@ var StyledTagWrapper = styled50(View)(
10910
11090
  paddingTop: tagTopPadding
10911
11091
  })
10912
11092
  );
10913
- var Radio = React65.forwardRef(
11093
+ var Radio = React66.forwardRef(
10914
11094
  (_a, ref) => {
10915
11095
  var _b = _a, {
10916
11096
  variant = "standalone",
@@ -11014,7 +11194,7 @@ var Radio = React65.forwardRef(
11014
11194
  }
11015
11195
  );
11016
11196
  Radio.displayName = "Radio";
11017
- var RadioTile = React65.forwardRef(
11197
+ var RadioTile = React66.forwardRef(
11018
11198
  (props, ref) => /* @__PURE__ */ jsx(Radio, __spreadProps(__spreadValues({ ref }, props), { variant: "tile" }))
11019
11199
  );
11020
11200
  RadioTile.displayName = "RadioTile";
@@ -11023,7 +11203,7 @@ var StyledRadioGroup = styled50(View)(({ groupDirection, groupGap }) => ({
11023
11203
  flexDirection: groupDirection,
11024
11204
  gap: groupGap
11025
11205
  }));
11026
- var RadioGroupRoot = React65.forwardRef(
11206
+ var RadioGroupRoot = React66.forwardRef(
11027
11207
  (_a, ref) => {
11028
11208
  var _b = _a, {
11029
11209
  name: _name,
@@ -11050,11 +11230,11 @@ var RadioGroupRoot = React65.forwardRef(
11050
11230
  const optionsFirstValue = (_a2 = options == null ? void 0 : options[0]) == null ? void 0 : _a2.value;
11051
11231
  const derivedDefaultValue = defaultValue != null ? defaultValue : optionsFirstValue;
11052
11232
  const isControlled = value !== void 0;
11053
- const [internalValue, setInternalValue] = React65.useState(
11233
+ const [internalValue, setInternalValue] = React66.useState(
11054
11234
  derivedDefaultValue != null ? derivedDefaultValue : ""
11055
11235
  );
11056
11236
  const currentValue = isControlled ? value : internalValue;
11057
- const handleSelect = React65.useCallback(
11237
+ const handleSelect = React66.useCallback(
11058
11238
  (newValue) => {
11059
11239
  if (!isControlled) {
11060
11240
  setInternalValue(newValue);
@@ -11075,9 +11255,9 @@ var RadioGroupRoot = React65.forwardRef(
11075
11255
  option.value
11076
11256
  ));
11077
11257
  }
11078
- return React65.Children.map(children, (child) => {
11079
- if (!React65.isValidElement(child)) return child;
11080
- return React65.cloneElement(child, {
11258
+ return React66.Children.map(children, (child) => {
11259
+ if (!React66.isValidElement(child)) return child;
11260
+ return React66.cloneElement(child, {
11081
11261
  selected: currentValue === child.props.value,
11082
11262
  onSelect: handleSelect,
11083
11263
  disabled: disabled || child.props.disabled
@@ -11102,11 +11282,11 @@ var RadioGroup = Object.assign(RadioGroupRoot, {
11102
11282
  Radio,
11103
11283
  Tile: RadioTile
11104
11284
  });
11105
- var SearchFieldInput = React65.forwardRef((_a, ref) => {
11285
+ var SearchFieldInput = React66.forwardRef((_a, ref) => {
11106
11286
  var _b = _a, { onClear, onValueChange, value, state } = _b, inputFieldProps = __objRest(_b, ["onClear", "onValueChange", "value", "state"]);
11107
- const [internalValue, setInternalValue] = React65.useState("");
11108
- const inputRef = React65.useRef(null);
11109
- React65.useImperativeHandle(ref, () => inputRef.current);
11287
+ const [internalValue, setInternalValue] = React66.useState("");
11288
+ const inputRef = React66.useRef(null);
11289
+ React66.useImperativeHandle(ref, () => inputRef.current);
11110
11290
  const handleValueChange = (newValue) => {
11111
11291
  setInternalValue(newValue);
11112
11292
  onValueChange == null ? void 0 : onValueChange(newValue);
@@ -11152,7 +11332,7 @@ var StyledRoot13 = styled50(View)(({ theme: theme2 }) => {
11152
11332
  gap: parseTokenValue42(spacing.gap)
11153
11333
  };
11154
11334
  });
11155
- var SearchFieldRoot = React65.forwardRef(
11335
+ var SearchFieldRoot = React66.forwardRef(
11156
11336
  (_a, ref) => {
11157
11337
  var _b = _a, {
11158
11338
  label,
@@ -11282,7 +11462,7 @@ var ScrollIndicatorGradient = ({
11282
11462
  side,
11283
11463
  color
11284
11464
  }) => {
11285
- const uid = React65.useId();
11465
+ const uid = React66.useId();
11286
11466
  const gradientId = `sc-scroll-indicator-${side}-${uid}`;
11287
11467
  const isTrailing = side === "trailing";
11288
11468
  return /* @__PURE__ */ jsx(View, { style: StyleSheet.absoluteFill, pointerEvents: "none", children: /* @__PURE__ */ jsxs(Svg, { width: "100%", height: "100%", preserveAspectRatio: "none", children: [
@@ -11365,7 +11545,7 @@ var SegmentedControlItemBase = ({
11365
11545
  }
11366
11546
  );
11367
11547
  };
11368
- var SegmentedControlItem = React65.forwardRef(
11548
+ var SegmentedControlItem = React66.forwardRef(
11369
11549
  (_props, _ref) => {
11370
11550
  return null;
11371
11551
  }
@@ -11381,10 +11561,10 @@ var IntrinsicTrack = (_a) => {
11381
11561
  "renderItems",
11382
11562
  "forwardedRef"
11383
11563
  ]);
11384
- const scrollRef = React65.useRef(null);
11385
- const [containerWidth, setContainerWidth] = React65.useState(0);
11386
- const [contentWidth, setContentWidth] = React65.useState(0);
11387
- const [scrollX, setScrollX] = React65.useState(0);
11564
+ const scrollRef = React66.useRef(null);
11565
+ const [containerWidth, setContainerWidth] = React66.useState(0);
11566
+ const [contentWidth, setContentWidth] = React66.useState(0);
11567
+ const [scrollX, setScrollX] = React66.useState(0);
11388
11568
  const epsilon = 2;
11389
11569
  const maxScroll = Math.max(0, contentWidth - containerWidth);
11390
11570
  const canScrollLeft = scrollX > epsilon;
@@ -11480,7 +11660,7 @@ var IntrinsicTrack = (_a) => {
11480
11660
  })
11481
11661
  );
11482
11662
  };
11483
- var SegmentedControlRoot = React65.forwardRef(
11663
+ var SegmentedControlRoot = React66.forwardRef(
11484
11664
  (_a, ref) => {
11485
11665
  var _b = _a, {
11486
11666
  options,
@@ -11504,18 +11684,18 @@ var SegmentedControlRoot = React65.forwardRef(
11504
11684
  const { spacing, borderRadius, colour } = theme2.tokens.components.segmentedControl;
11505
11685
  const { dimensions: dimensions3 } = theme2.tokens.semantics;
11506
11686
  const optionsFirstValue = (_a2 = options == null ? void 0 : options[0]) == null ? void 0 : _a2.value;
11507
- const childrenArray = React65.Children.toArray(children);
11687
+ const childrenArray = React66.Children.toArray(children);
11508
11688
  const firstChildValue = childrenArray.map((child) => {
11509
- if (!React65.isValidElement(child)) return void 0;
11689
+ if (!React66.isValidElement(child)) return void 0;
11510
11690
  return child.props.value;
11511
11691
  }).find((v) => typeof v === "string");
11512
11692
  const derivedDefaultValue = (_b2 = defaultValue != null ? defaultValue : optionsFirstValue) != null ? _b2 : firstChildValue;
11513
11693
  const isControlled = typeof value === "string";
11514
- const [uncontrolledValue, setUncontrolledValue] = React65.useState(
11694
+ const [uncontrolledValue, setUncontrolledValue] = React66.useState(
11515
11695
  () => derivedDefaultValue != null ? derivedDefaultValue : ""
11516
11696
  );
11517
11697
  const currentValue = isControlled ? value : uncontrolledValue;
11518
- const handleSelect = React65.useCallback(
11698
+ const handleSelect = React66.useCallback(
11519
11699
  (newValue) => {
11520
11700
  if (!isControlled) {
11521
11701
  setUncontrolledValue(newValue);
@@ -11541,7 +11721,7 @@ var SegmentedControlRoot = React65.forwardRef(
11541
11721
  ));
11542
11722
  }
11543
11723
  return childrenArray.map((child) => {
11544
- if (!React65.isValidElement(child)) return child;
11724
+ if (!React66.isValidElement(child)) return child;
11545
11725
  const childProps = child.props;
11546
11726
  return /* @__PURE__ */ jsx(
11547
11727
  SegmentedControlItemBase,
@@ -11612,7 +11792,7 @@ var StyledArrowIcon = styled50(Animated.View)({
11612
11792
  alignItems: "center",
11613
11793
  justifyContent: "center"
11614
11794
  });
11615
- var SelectFieldTrigger = React65.forwardRef(
11795
+ var SelectFieldTrigger = React66.forwardRef(
11616
11796
  (_a, ref) => {
11617
11797
  var _b = _a, {
11618
11798
  state = "default",
@@ -11711,7 +11891,7 @@ var SelectFieldTrigger = React65.forwardRef(
11711
11891
  }
11712
11892
  );
11713
11893
  SelectFieldTrigger.displayName = "SelectField.Trigger";
11714
- var SelectFieldValue = React65.forwardRef(
11894
+ var SelectFieldValue = React66.forwardRef(
11715
11895
  (_a, ref) => {
11716
11896
  var _b = _a, { placeholder } = _b, rest = __objRest(_b, ["placeholder"]);
11717
11897
  const theme2 = useTheme();
@@ -11755,7 +11935,7 @@ var StyledContentInner = styled50(View)(({ theme: theme2 }) => {
11755
11935
  overflow: "hidden"
11756
11936
  };
11757
11937
  });
11758
- var SelectFieldContent = React65.forwardRef((_a, ref) => {
11938
+ var SelectFieldContent = React66.forwardRef((_a, ref) => {
11759
11939
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
11760
11940
  const theme2 = useTheme();
11761
11941
  const { spacing } = theme2.tokens.components.inputs;
@@ -11830,7 +12010,7 @@ var StyledHintText = styled50(Text)(({ theme: theme2 }) => {
11830
12010
  flexShrink: 0
11831
12011
  };
11832
12012
  });
11833
- var SelectFieldItem = React65.forwardRef(
12013
+ var SelectFieldItem = React66.forwardRef(
11834
12014
  (_a, ref) => {
11835
12015
  var _b = _a, { value, leadingIcon, hintText, children, disabled, isSelected } = _b, rest = __objRest(_b, ["value", "leadingIcon", "hintText", "children", "disabled", "isSelected"]);
11836
12016
  const theme2 = useTheme();
@@ -11882,7 +12062,7 @@ var StyledRoot14 = styled50(View)(({ theme: theme2 }) => {
11882
12062
  gap: parseTokenValue47(spacing.gap)
11883
12063
  };
11884
12064
  });
11885
- var SelectFieldRoot = React65.forwardRef(
12065
+ var SelectFieldRoot = React66.forwardRef(
11886
12066
  (_a, ref) => {
11887
12067
  var _b = _a, {
11888
12068
  label,
@@ -11917,15 +12097,15 @@ var SelectFieldRoot = React65.forwardRef(
11917
12097
  "searchPlaceholder",
11918
12098
  "noResultsText"
11919
12099
  ]);
11920
- const [isOpen, setIsOpen] = React65.useState(false);
11921
- const [showContent, setShowContent] = React65.useState(false);
11922
- const [internalValue, setInternalValue] = React65.useState(
12100
+ const [isOpen, setIsOpen] = React66.useState(false);
12101
+ const [showContent, setShowContent] = React66.useState(false);
12102
+ const [internalValue, setInternalValue] = React66.useState(
11923
12103
  defaultValue != null ? defaultValue : null
11924
12104
  );
11925
- const [searchQuery, setSearchQuery] = React65.useState("");
11926
- const [clearKey, setClearKey] = React65.useState(0);
11927
- const searchInputRef = React65.useRef(null);
11928
- React65.useEffect(() => {
12105
+ const [searchQuery, setSearchQuery] = React66.useState("");
12106
+ const [clearKey, setClearKey] = React66.useState(0);
12107
+ const searchInputRef = React66.useRef(null);
12108
+ React66.useEffect(() => {
11929
12109
  if (!isOpen) {
11930
12110
  setShowContent(false);
11931
12111
  return;
@@ -11958,8 +12138,8 @@ var SelectFieldRoot = React65.forwardRef(
11958
12138
  keyboardSub.remove();
11959
12139
  };
11960
12140
  }, [isOpen, searchable]);
11961
- const isCompound = React65.Children.toArray(children).some(
11962
- (child) => React65.isValidElement(child) && child.type === SelectFieldContent
12141
+ const isCompound = React66.Children.toArray(children).some(
12142
+ (child) => React66.isValidElement(child) && child.type === SelectFieldContent
11963
12143
  );
11964
12144
  if (isCompound) {
11965
12145
  return /* @__PURE__ */ jsx(StyledRoot14, __spreadProps(__spreadValues({ ref }, rest), { children }));
@@ -11974,11 +12154,11 @@ var SelectFieldRoot = React65.forwardRef(
11974
12154
  if (!open) setSearchQuery("");
11975
12155
  };
11976
12156
  const currentValue = value !== void 0 ? value : internalValue;
11977
- const allItems = React65.Children.toArray(children);
12157
+ const allItems = React66.Children.toArray(children);
11978
12158
  const filteredItems = searchable ? allItems.filter((child) => {
11979
12159
  var _a2;
11980
12160
  if (!searchQuery) return true;
11981
- if (React65.isValidElement(child) && child.type === SelectFieldItem) {
12161
+ if (React66.isValidElement(child) && child.type === SelectFieldItem) {
11982
12162
  const label2 = String(
11983
12163
  (_a2 = child.props.children) != null ? _a2 : ""
11984
12164
  );
@@ -12047,10 +12227,10 @@ var SelectFieldRoot = React65.forwardRef(
12047
12227
  ] })),
12048
12228
  showContent && /* @__PURE__ */ jsxs(SelectFieldContent, { children: [
12049
12229
  filteredItems.map((child) => {
12050
- if (React65.isValidElement(child) && child.type === SelectFieldItem) {
12230
+ if (React66.isValidElement(child) && child.type === SelectFieldItem) {
12051
12231
  const selectedValue = currentValue && typeof currentValue === "object" && "value" in currentValue ? currentValue.value : currentValue;
12052
12232
  const childProps = child.props;
12053
- return React65.cloneElement(
12233
+ return React66.cloneElement(
12054
12234
  child,
12055
12235
  {
12056
12236
  isSelected: childProps.value === selectedValue
@@ -12217,7 +12397,7 @@ var useIconAnimation = () => {
12217
12397
  iconAnimationStyles
12218
12398
  };
12219
12399
  };
12220
- var NativeSelectPicker = React65.forwardRef(
12400
+ var NativeSelectPicker = React66.forwardRef(
12221
12401
  (_a, ref) => {
12222
12402
  var _b = _a, {
12223
12403
  items,
@@ -12376,7 +12556,7 @@ var StyledLabelSlot = styled50(View)(({ labelSlotGap }) => ({
12376
12556
  gap: labelSlotGap,
12377
12557
  flexShrink: 0
12378
12558
  }));
12379
- var Slider = React65.forwardRef(
12559
+ var Slider = React66.forwardRef(
12380
12560
  (_a, ref) => {
12381
12561
  var _b = _a, {
12382
12562
  value: controlledValue,
@@ -12411,7 +12591,7 @@ var Slider = React65.forwardRef(
12411
12591
  const { slider, buttons } = theme2.tokens.components;
12412
12592
  const { dimensions: dimensions3 } = theme2.tokens.semantics;
12413
12593
  const isControlled = controlledValue !== void 0;
12414
- const [internalValue, setInternalValue] = React65.useState(defaultValue);
12594
+ const [internalValue, setInternalValue] = React66.useState(defaultValue);
12415
12595
  const currentValue = isControlled ? controlledValue : internalValue;
12416
12596
  const thumbSize = parseTokenValue48(buttons.size.md.height);
12417
12597
  const trackHeight = parseTokenValue48(slider.sizing.track.height);
@@ -12794,7 +12974,7 @@ var StyledCloseButton = styled50(Pressable)({
12794
12974
  flexShrink: 0,
12795
12975
  padding: 0
12796
12976
  });
12797
- var Notification = React65.forwardRef(
12977
+ var Notification = React66.forwardRef(
12798
12978
  (props, ref) => {
12799
12979
  const _a = props, {
12800
12980
  variant = "inline",
@@ -13138,7 +13318,7 @@ function NibTriangle({
13138
13318
  }
13139
13319
  );
13140
13320
  }
13141
- var Tooltip = React65.forwardRef(
13321
+ var Tooltip = React66.forwardRef(
13142
13322
  (_a, ref) => {
13143
13323
  var _b = _a, { text, alignment = "middle", position = "bottom", children } = _b, props = __objRest(_b, ["text", "alignment", "position", "children"]);
13144
13324
  const theme2 = useTheme();
@@ -13226,8 +13406,8 @@ var Tooltip = React65.forwardRef(
13226
13406
  return bubble;
13227
13407
  }
13228
13408
  if (Platform.OS === "web") {
13229
- const child = React65.isValidElement(children) ? children : null;
13230
- const trigger = child ? React65.cloneElement(child, {
13409
+ const child = React66.isValidElement(children) ? children : null;
13410
+ const trigger = child ? React66.cloneElement(child, {
13231
13411
  onPress: () => {
13232
13412
  var _a2, _b2;
13233
13413
  (_b2 = (_a2 = child.props).onPress) == null ? void 0 : _b2.call(_a2);
@@ -13304,7 +13484,7 @@ var StyledInsightContent = styled50(View)(
13304
13484
  gap: contentGap
13305
13485
  })
13306
13486
  );
13307
- var MessageCardInsight = React65.forwardRef(
13487
+ var MessageCardInsight = React66.forwardRef(
13308
13488
  (_a, ref) => {
13309
13489
  var _b = _a, { variant = "standalone", icon, illustration, title, children } = _b, rest = __objRest(_b, ["variant", "icon", "illustration", "title", "children"]);
13310
13490
  const theme2 = useTheme();
@@ -13415,7 +13595,7 @@ var StyledBannerCopy = styled50(View)(({ copyGap }) => ({
13415
13595
  gap: copyGap,
13416
13596
  width: "100%"
13417
13597
  }));
13418
- var MessageCardBanner = React65.forwardRef(
13598
+ var MessageCardBanner = React66.forwardRef(
13419
13599
  (_a, ref) => {
13420
13600
  var _b = _a, {
13421
13601
  colourScheme = "primary",
@@ -13449,7 +13629,7 @@ var MessageCardBanner = React65.forwardRef(
13449
13629
  accessibilityRole: "summary"
13450
13630
  }, rest), {
13451
13631
  children: [
13452
- (media == null ? void 0 : media.type) === "illustration" ? /* @__PURE__ */ jsx(StyledBannerIllustrationSlot, { children: React65.createElement(media.illustration, {
13632
+ (media == null ? void 0 : media.type) === "illustration" ? /* @__PURE__ */ jsx(StyledBannerIllustrationSlot, { children: React66.createElement(media.illustration, {
13453
13633
  width: 108,
13454
13634
  height: 108
13455
13635
  }) }) : (media == null ? void 0 : media.type) === "image" ? /* @__PURE__ */ jsx(
@@ -13548,29 +13728,32 @@ function defaultGetDateState(date) {
13548
13728
  function getDefaultMonthLabel(year, month, locale) {
13549
13729
  return format(new Date(year, month, 1), "MMMM yyyy", { locale });
13550
13730
  }
13551
- var StyledContainer3 = styled50(View)(({ containerGap, containerMaxWidth }) => ({
13731
+ var StyledContainer3 = styled50(View)(({ containerMaxWidth }) => ({
13552
13732
  flexDirection: "column",
13553
- gap: containerGap,
13733
+ // Fill the parent by default (capped by maxWidth) so consumers don't need a
13734
+ // wrapper. Overridable via the `style` prop.
13735
+ width: "100%",
13554
13736
  maxWidth: containerMaxWidth
13555
13737
  }));
13556
13738
  var StyledMonthHeader = styled50(View)(
13557
- ({ headerGap }) => ({
13739
+ ({ headerGap, datesGap }) => ({
13558
13740
  flexDirection: "row",
13559
13741
  alignItems: "center",
13560
- gap: headerGap
13742
+ gap: headerGap,
13743
+ // Gap between the month header and the dates grid.
13744
+ marginBottom: datesGap
13561
13745
  })
13562
13746
  );
13563
- var StyledWeekRow = styled50(View)({
13564
- flexDirection: "row"
13747
+ var StyledWeekRow = styled50(View)(({ weekGap }) => ({
13748
+ flexDirection: "row",
13749
+ // Gap between the week-day header and the month header.
13750
+ marginBottom: weekGap
13751
+ }));
13752
+ var StyledWeekCell = styled50(View)({
13753
+ flex: 1,
13754
+ alignItems: "center",
13755
+ justifyContent: "center"
13565
13756
  });
13566
- var StyledWeekCell = styled50(View)(
13567
- ({ cellHeight }) => ({
13568
- flex: 1,
13569
- alignItems: "center",
13570
- justifyContent: "center",
13571
- height: cellHeight
13572
- })
13573
- );
13574
13757
  var StyledDatesGrid = styled50(View)(({ rowGap }) => ({
13575
13758
  flexDirection: "column",
13576
13759
  gap: rowGap
@@ -13606,7 +13789,7 @@ var StyledIndicator3 = styled50(View)(
13606
13789
  justifyContent: "center"
13607
13790
  })
13608
13791
  );
13609
- var DatePicker = React65.forwardRef(
13792
+ var DatePicker = React66.forwardRef(
13610
13793
  (_a, ref) => {
13611
13794
  var _b = _a, {
13612
13795
  year,
@@ -13652,7 +13835,8 @@ var DatePicker = React65.forwardRef(
13652
13835
  const dt = datePicker.dateItem;
13653
13836
  const [slideDir, setSlideDir] = useState("forward");
13654
13837
  const {
13655
- containerGap,
13838
+ weekGap,
13839
+ datesGap,
13656
13840
  containerMaxWidth,
13657
13841
  headerGap,
13658
13842
  cellHeight,
@@ -13663,7 +13847,10 @@ var DatePicker = React65.forwardRef(
13663
13847
  rowGap
13664
13848
  } = useMemo(
13665
13849
  () => ({
13666
- containerGap: parseTokenValue52(datePicker.spacing.gap),
13850
+ // Gap between the week-day header and the month header.
13851
+ weekGap: parseTokenValue52(datePicker.spacing.gap),
13852
+ // Gap between the month header and the dates grid.
13853
+ datesGap: parseTokenValue52(theme2.tokens.semantics.dimensions.spacing.md),
13667
13854
  containerMaxWidth: parseTokenValue52(dt.size.width) * 7,
13668
13855
  headerGap: parseTokenValue52(datePicker.month.spacing.gap),
13669
13856
  cellHeight: parseTokenValue52(dt.size.height),
@@ -13673,7 +13860,7 @@ var DatePicker = React65.forwardRef(
13673
13860
  disabledOpacity: parseTokenValue52(dt.opacity.disabled),
13674
13861
  rowGap: parseTokenValue52(datePicker.dates.spacing.gap)
13675
13862
  }),
13676
- [datePicker, dt]
13863
+ [datePicker, dt, theme2]
13677
13864
  );
13678
13865
  const resolvedGetDateState = useCallback(
13679
13866
  (date) => {
@@ -13783,11 +13970,10 @@ var DatePicker = React65.forwardRef(
13783
13970
  StyledContainer3,
13784
13971
  __spreadProps(__spreadValues({
13785
13972
  ref,
13786
- containerGap,
13787
13973
  containerMaxWidth
13788
13974
  }, rest), {
13789
13975
  children: [
13790
- showWeekHeader && /* @__PURE__ */ jsx(StyledWeekRow, { accessibilityElementsHidden: true, children: weekDayLabels.map((label) => /* @__PURE__ */ jsx(StyledWeekCell, { cellHeight, children: /* @__PURE__ */ jsx(
13976
+ showWeekHeader && /* @__PURE__ */ jsx(StyledWeekRow, { weekGap, accessibilityElementsHidden: true, children: weekDayLabels.map((label) => /* @__PURE__ */ jsx(StyledWeekCell, { children: /* @__PURE__ */ jsx(
13791
13977
  Typography,
13792
13978
  {
13793
13979
  token: datePicker.week.typography,
@@ -13796,13 +13982,13 @@ var DatePicker = React65.forwardRef(
13796
13982
  children: label
13797
13983
  }
13798
13984
  ) }, label)) }),
13799
- /* @__PURE__ */ jsxs(StyledMonthHeader, { headerGap, children: [
13985
+ /* @__PURE__ */ jsxs(StyledMonthHeader, { headerGap, datesGap, children: [
13800
13986
  /* @__PURE__ */ jsx(View, { style: { opacity: showPrevControl ? 1 : 0 }, children: /* @__PURE__ */ jsx(
13801
13987
  IconButton,
13802
13988
  {
13803
13989
  icon: KeyboardArrowLeft_default,
13804
13990
  variant: "filled",
13805
- size: "sm",
13991
+ size: "md",
13806
13992
  colour: "primary",
13807
13993
  "aria-label": "Previous month",
13808
13994
  onPress: showPrevControl ? handlePrevMonth : void 0,
@@ -13823,7 +14009,7 @@ var DatePicker = React65.forwardRef(
13823
14009
  {
13824
14010
  icon: KeyboardArrowRight_default,
13825
14011
  variant: "filled",
13826
- size: "sm",
14012
+ size: "md",
13827
14013
  colour: "primary",
13828
14014
  "aria-label": "Next month",
13829
14015
  onPress: showNextControl ? handleNextMonth : void 0,
@@ -14003,7 +14189,7 @@ var StyledPointer = styled50(Svg)(
14003
14189
  opacity: pointerVisible ? 1 : 0
14004
14190
  })
14005
14191
  );
14006
- var PictureSelector = React65.forwardRef(
14192
+ var PictureSelector = React66.forwardRef(
14007
14193
  (_a, ref) => {
14008
14194
  var _b = _a, {
14009
14195
  label,
@@ -14030,7 +14216,7 @@ var PictureSelector = React65.forwardRef(
14030
14216
  const { pictureSelector } = theme2.tokens.components;
14031
14217
  const { pictureButton } = pictureSelector;
14032
14218
  const isControlled = value !== void 0;
14033
- const [internalValue, setInternalValue] = React65.useState(defaultValue);
14219
+ const [internalValue, setInternalValue] = React66.useState(defaultValue);
14034
14220
  const selectedValue = isControlled ? value : internalValue;
14035
14221
  const selectedItem = items.find((item) => item.value === selectedValue);
14036
14222
  const hasInsight = Boolean(
@@ -14214,7 +14400,7 @@ var InlineCount = styled50(View)(({ countGap }) => ({
14214
14400
  alignItems: "center",
14215
14401
  gap: countGap
14216
14402
  }));
14217
- var Countdown = React65.forwardRef(
14403
+ var Countdown = React66.forwardRef(
14218
14404
  (_a, ref) => {
14219
14405
  var _b = _a, {
14220
14406
  layout = "stacked",
@@ -14293,7 +14479,7 @@ var Countdown = React65.forwardRef(
14293
14479
  InlineGroup,
14294
14480
  {
14295
14481
  groupGap: parseTokenValue54(countdown.countdownGroup.spacing.gap),
14296
- children: units.map((unit, index) => /* @__PURE__ */ jsxs(React65.Fragment, { children: [
14482
+ children: units.map((unit, index) => /* @__PURE__ */ jsxs(React66.Fragment, { children: [
14297
14483
  index > 0 && colon(`colon-${unit.key}`),
14298
14484
  /* @__PURE__ */ jsxs(
14299
14485
  InlineCount,
@@ -14336,7 +14522,7 @@ var Countdown = React65.forwardRef(
14336
14522
  ref,
14337
14523
  rootGap: parseTokenValue54(countdown.spacing.gap)
14338
14524
  }, rest), {
14339
- children: units.map((unit, index) => /* @__PURE__ */ jsxs(React65.Fragment, { children: [
14525
+ children: units.map((unit, index) => /* @__PURE__ */ jsxs(React66.Fragment, { children: [
14340
14526
  index > 0 && colon(`colon-${unit.key}`),
14341
14527
  /* @__PURE__ */ jsxs(
14342
14528
  StackedItem,
@@ -14424,7 +14610,7 @@ var BadgeIcon = styled50(View)(({ theme: theme2 }) => {
14424
14610
  flexShrink: 0
14425
14611
  };
14426
14612
  });
14427
- var Badge2 = React65.forwardRef(
14613
+ var Badge2 = React66.forwardRef(
14428
14614
  (_a, ref) => {
14429
14615
  var _b = _a, { icon, text } = _b, rest = __objRest(_b, ["icon", "text"]);
14430
14616
  return /* @__PURE__ */ jsxs(BadgeContainer, __spreadProps(__spreadValues({ ref }, rest), { children: [
@@ -14442,7 +14628,7 @@ var StyledGrid = styled50(View)(({ theme: theme2 }) => {
14442
14628
  "grid-row-gap": spacing.xl
14443
14629
  };
14444
14630
  });
14445
- var Grid = React65.forwardRef(
14631
+ var Grid = React66.forwardRef(
14446
14632
  (_a, ref) => {
14447
14633
  var _b = _a, { children, xs = 1, md = 2, lg = 3 } = _b, rest = __objRest(_b, ["children", "xs", "md", "lg"]);
14448
14634
  const { width } = useWindowDimensions();
@@ -14541,7 +14727,7 @@ var PricingContainer = styled50(View)(({ theme: theme2 }) => {
14541
14727
  width: "100%"
14542
14728
  };
14543
14729
  });
14544
- var _ProductListingCard = React65.forwardRef(
14730
+ var _ProductListingCard = React66.forwardRef(
14545
14731
  (_a, ref) => {
14546
14732
  var _b = _a, {
14547
14733
  image,
@@ -14583,7 +14769,7 @@ var _ProductListingCard = React65.forwardRef(
14583
14769
  accessibilityLabel: imageAlt,
14584
14770
  accessible: true
14585
14771
  }
14586
- ) : React65.isValidElement(image) ? image : /* @__PURE__ */ jsx(
14772
+ ) : React66.isValidElement(image) ? image : /* @__PURE__ */ jsx(
14587
14773
  StyledImage2,
14588
14774
  {
14589
14775
  source: image,
@@ -14729,7 +14915,7 @@ var StyledNoneBanner = styled50(View)(({ theme: theme2 }) => {
14729
14915
  borderBottomRightRadius: radiusMd
14730
14916
  };
14731
14917
  });
14732
- var ProductDisplayCard = React65.forwardRef(
14918
+ var ProductDisplayCard = React66.forwardRef(
14733
14919
  (_a, ref) => {
14734
14920
  var _b = _a, {
14735
14921
  title,
@@ -14859,9 +15045,9 @@ var ProductDisplayCard = React65.forwardRef(
14859
15045
  }
14860
15046
  );
14861
15047
  ProductDisplayCard.displayName = "ProductDisplayCard";
14862
- var TabNavigationContext = React65.createContext(void 0);
15048
+ var TabNavigationContext = React66.createContext(void 0);
14863
15049
  var useTabNavigationContext = () => {
14864
- const context = React65.useContext(TabNavigationContext);
15050
+ const context = React66.useContext(TabNavigationContext);
14865
15051
  if (!context) {
14866
15052
  throw new Error(
14867
15053
  "TabNavigation.List, TabNavigation.Tab and TabNavigation.Panel must be used within a TabNavigation component."
@@ -14900,7 +15086,7 @@ var StyledTab = styled50(Pressable)(
14900
15086
  borderBottomColor: tabBorderColor
14901
15087
  }, tabFlex !== void 0 ? { flex: tabFlex } : { flexShrink: 0 })
14902
15088
  );
14903
- var TabNavigationList = React65.forwardRef(
15089
+ var TabNavigationList = React66.forwardRef(
14904
15090
  (_a, ref) => {
14905
15091
  var _b = _a, { children } = _b, rest = __objRest(_b, ["children"]);
14906
15092
  const { layout } = useTabNavigationContext();
@@ -14919,7 +15105,7 @@ var TabNavigationList = React65.forwardRef(
14919
15105
  }
14920
15106
  );
14921
15107
  TabNavigationList.displayName = "TabNavigation.List";
14922
- var TabNavigationTab = React65.forwardRef(
15108
+ var TabNavigationTab = React66.forwardRef(
14923
15109
  (_a, ref) => {
14924
15110
  var _b = _a, { value, disabled = false, icon, avatar, children } = _b, rest = __objRest(_b, ["value", "disabled", "icon", "avatar", "children"]);
14925
15111
  const { layout } = useTabNavigationContext();
@@ -14955,7 +15141,7 @@ var TabNavigationTab = React65.forwardRef(
14955
15141
  }
14956
15142
  );
14957
15143
  TabNavigationTab.displayName = "TabNavigation.Tab";
14958
- var TabNavigationPanel = React65.forwardRef(
15144
+ var TabNavigationPanel = React66.forwardRef(
14959
15145
  (_a, ref) => {
14960
15146
  var _b = _a, { value, children } = _b, rest = __objRest(_b, ["value", "children"]);
14961
15147
  const { animation } = useTabNavigationContext();
@@ -14963,7 +15149,7 @@ var TabNavigationPanel = React65.forwardRef(
14963
15149
  }
14964
15150
  );
14965
15151
  TabNavigationPanel.displayName = "TabNavigation.Panel";
14966
- var TabNavigationRoot = React65.forwardRef(
15152
+ var TabNavigationRoot = React66.forwardRef(
14967
15153
  (_a, ref) => {
14968
15154
  var _b = _a, {
14969
15155
  value,
@@ -14981,11 +15167,11 @@ var TabNavigationRoot = React65.forwardRef(
14981
15167
  "children"
14982
15168
  ]);
14983
15169
  const isControlled = typeof value === "string";
14984
- const [uncontrolledValue, setUncontrolledValue] = React65.useState(
15170
+ const [uncontrolledValue, setUncontrolledValue] = React66.useState(
14985
15171
  () => defaultValue != null ? defaultValue : ""
14986
15172
  );
14987
15173
  const currentValue = isControlled ? value : uncontrolledValue;
14988
- const handleValueChange = React65.useCallback(
15174
+ const handleValueChange = React66.useCallback(
14989
15175
  (newValue) => {
14990
15176
  if (!isControlled) {
14991
15177
  setUncontrolledValue(newValue);
@@ -14994,7 +15180,7 @@ var TabNavigationRoot = React65.forwardRef(
14994
15180
  },
14995
15181
  [isControlled, onValueChange]
14996
15182
  );
14997
- const contextValue = React65.useMemo(
15183
+ const contextValue = React66.useMemo(
14998
15184
  () => ({ layout, animation }),
14999
15185
  [layout, animation]
15000
15186
  );