beacon-ui 3.7.4 → 3.7.5

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/CHANGELOG.md CHANGED
@@ -5,6 +5,15 @@ All notable changes to this project will be documented in this file.
5
5
  The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
6
6
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
7
7
 
8
+ ## [3.7.5] - 2026-05-14
9
+
10
+ ### Fixed
11
+ - Button filled variant now renders isometric depth effect matching Figma: outer drop shadow (`0px 1px 8px rgba(0,0,0,0.15)`) and two inner shadows (`inset 0px 3px 4px rgba(255,255,255,0.25)` top highlight, `inset 0px -3px 4px rgba(0,0,0,0.25)` bottom shadow)
12
+ - Button filled `pressed` state border now correctly uses `--border-primary-pressed` (lighter blue) instead of `--bg-primary-pressed` (dark blue), matching Figma spec
13
+ - Button focus ring offset corrected from `2px` to `5px` to match Figma's 5px gap between button edge and focus indicator
14
+ - Button `lg` size font size updated to `--body-regular-text-size` (16px) — Figma specifies Body/Regular for large buttons across all non-default states
15
+ - Button `xs` size minimum height corrected from `28px` to `26px` to match Figma dimensions
16
+
8
17
  ## [3.7.4] - 2026-05-06
9
18
 
10
19
  ### Fixed
package/README.md CHANGED
@@ -582,7 +582,7 @@ https://beacon.uxraza.com/
582
582
 
583
583
  ## Version
584
584
 
585
- Current version: **3.7.4**
585
+ Current version: **3.7.5**
586
586
 
587
587
  ## License
588
588
 
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/components/Button.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAkC,qBAAqB,EAAgC,MAAM,OAAO,CAAC;AAI5G,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AACpE,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1D,MAAM,MAAM,gBAAgB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACrD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,eAAe,CAAC;AACxD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACxE,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAChF,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAwED,wBAAgB,MAAM,CAAC,EACrB,OAAkB,EAClB,IAAW,EACX,YAAgB,EAChB,SAAS,EACT,OAAO,EACP,aAAqB,EACrB,cAAyB,EACzB,OAAe,EACf,QAAgB,EAChB,KAAK,EAAE,SAAS,EAChB,KAAiB,EACjB,IAAe,EACf,SAAS,EACT,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,EACH,GAAG,IAAI,EACR,EAAE,WAAW,2CAwSb"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../src/components/Button.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAkC,qBAAqB,EAAgC,MAAM,OAAO,CAAC;AAI5G,MAAM,MAAM,aAAa,GAAG,QAAQ,GAAG,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;AACpE,MAAM,MAAM,UAAU,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1D,MAAM,MAAM,gBAAgB,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACrD,MAAM,MAAM,cAAc,GAAG,QAAQ,GAAG,eAAe,CAAC;AACxD,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;AACxE,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,SAAS,GAAG,UAAU,GAAG,SAAS,CAAC;AAEzE,MAAM,WAAW,WAAY,SAAQ,IAAI,CAAC,qBAAqB,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAChF,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,IAAI,CAAC,EAAE,UAAU,CAAC;IAClB,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC5B,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,cAAc,CAAC;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,QAAQ,GAAG,OAAO,CAAC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAwED,wBAAgB,MAAM,CAAC,EACrB,OAAkB,EAClB,IAAW,EACX,YAAgB,EAChB,SAAS,EACT,OAAO,EACP,aAAqB,EACrB,cAAyB,EACzB,OAAe,EACf,QAAgB,EAChB,KAAK,EAAE,SAAS,EAChB,KAAiB,EACjB,IAAe,EACf,SAAS,EACT,QAAQ,EACR,SAAS,EACT,KAAK,EACL,OAAO,EACP,YAAY,EACZ,YAAY,EACZ,OAAO,EACP,MAAM,EACN,WAAW,EACX,SAAS,EACT,GAAG,EACH,GAAG,IAAI,EACR,EAAE,WAAW,2CA0Sb"}
@@ -13,7 +13,7 @@ const CORNER_RADIUS_MAP = {
13
13
  };
14
14
  const SIZE_CONFIG = {
15
15
  xs: {
16
- height: "28px",
16
+ height: "26px",
17
17
  paddingX: "var(--spacing-200)",
18
18
  paddingY: "var(--spacing-100)",
19
19
  fontSize: "var(--body-extra-small-text-size)",
@@ -40,7 +40,7 @@ const SIZE_CONFIG = {
40
40
  height: "56px",
41
41
  paddingX: "var(--spacing-500)",
42
42
  paddingY: "var(--spacing-400)",
43
- fontSize: "var(--body-small-text-size)",
43
+ fontSize: "var(--body-regular-text-size)",
44
44
  borderWidth: "var(--border-width-25)",
45
45
  iconSize: "rg",
46
46
  },
@@ -136,6 +136,7 @@ export function Button({ variant = "filled", size = "md", cornerRadius = 2, star
136
136
  const bgTonalToken = `--bg-${colorPrefix}-tonal`;
137
137
  const bgHoverToken = `--bg-${colorPrefix}-on-hover`;
138
138
  const bgPressedToken = color === "primary" ? `--bg-${colorPrefix}-pressed` : `--bg-${colorPrefix}-on-hover`;
139
+ const borderPressedToken = color === "primary" ? `--border-${colorPrefix}-pressed` : `--bg-${colorPrefix}-on-hover`;
139
140
  const bgFocusedToken = color === "primary" ? `--bg-${colorPrefix}-on-focused` : `--bg-${colorPrefix}-on-hover`;
140
141
  const bgTonalHoverToken = color === "primary" ? `--bg-${colorPrefix}-tonal-on-hover` : `--bg-${colorPrefix}-tonal`;
141
142
  const fgToken = `--fg-${colorPrefix}`;
@@ -153,6 +154,7 @@ export function Button({ variant = "filled", size = "md", cornerRadius = 2, star
153
154
  backgroundColor: `var(${bgToken})`,
154
155
  color: "var(--fg-on-action)",
155
156
  borderColor: `var(${bgToken})`,
157
+ boxShadow: "0px 1px 8px rgba(0, 0, 0, 0.15), inset 0px 3px 4px rgba(255, 255, 255, 0.25), inset 0px -3px 4px rgba(0, 0, 0, 0.25)",
156
158
  };
157
159
  break;
158
160
  case "tonal":
@@ -223,7 +225,7 @@ export function Button({ variant = "filled", size = "md", cornerRadius = 2, star
223
225
  else if (!isLoading && currentState === "pressed") {
224
226
  if (variant === "filled") {
225
227
  stateStyles.backgroundColor = `var(${bgPressedToken})`;
226
- stateStyles.borderColor = `var(${bgPressedToken})`;
228
+ stateStyles.borderColor = `var(${borderPressedToken})`;
227
229
  }
228
230
  else if (variant === "tonal") {
229
231
  stateStyles.backgroundColor = `var(${bgTonalHoverToken})`;
@@ -238,7 +240,7 @@ export function Button({ variant = "filled", size = "md", cornerRadius = 2, star
238
240
  stateStyles.borderColor = `var(${borderToken})`;
239
241
  }
240
242
  stateStyles.outline = `2px solid var(${borderToken})`;
241
- stateStyles.outlineOffset = "2px";
243
+ stateStyles.outlineOffset = "5px";
242
244
  }
243
245
  return { ...baseStyles, ...variantStyles, ...stateStyles, ...style };
244
246
  }, [variant, sizeConfig, borderRadius, fillContainer, justifyContent, currentState, isDisabled, isLoading, color, underline, style]);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "beacon-ui",
3
- "version": "3.7.4",
3
+ "version": "3.7.5",
4
4
  "description": "Beacon Design System - Components and tokens",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",