From 46ee110f3afb81b785ddbde599cb71cb7392ece8 Mon Sep 17 00:00:00 2001 From: PelayoFelgueroso Date: Fri, 31 Oct 2025 10:47:34 +0100 Subject: [PATCH 1/2] Refactor utility functions to ensure default values are returned for undefined parameters --- packages/lib/src/action-icon/utils.ts | 23 ++++++++++++----------- 1 file changed, 12 insertions(+), 11 deletions(-) diff --git a/packages/lib/src/action-icon/utils.ts b/packages/lib/src/action-icon/utils.ts index dcaac2924..4fc932bfe 100644 --- a/packages/lib/src/action-icon/utils.ts +++ b/packages/lib/src/action-icon/utils.ts @@ -92,32 +92,33 @@ const modeColorMap = { error: "var(--color-fg-error-medium)", }; -export const getColor = (color: ActionIconPropTypes["color"]) => (color ? contextualColorMap[color].text : undefined); +export const getColor = (color: ActionIconPropTypes["color"]) => + color && contextualColorMap[color] ? contextualColorMap[color].text : contextualColorMap.transparent.text; + export const getBackgroundColor = (color: ActionIconPropTypes["color"]) => - color ? contextualColorMap[color].background : undefined; + color && contextualColorMap[color] ? contextualColorMap[color].background : contextualColorMap.transparent.background; export const getBorderRadius = (shape: ActionIconPropTypes["shape"], size: ActionIconPropTypes["size"]) => { if (shape === "circle") { return "100%"; } if (shape === "square") { - return size ? borderRadiusMap[size] : "var(--border-radius-m)"; + return size && borderRadiusMap[size] ? borderRadiusMap[size] : "var(--border-radius-m)"; } return "100%"; }; -export const getSize = (size: ActionIconPropTypes["size"]) => { - if (!size) return "var(--height-xl)"; - return sizeMap[size] ?? "var(--height-xl)"; -}; +export const getSize = (size: ActionIconPropTypes["size"]) => + size && sizeMap[size] ? sizeMap[size] : "var(--height-xl)"; -export const getIconSize = (size: ActionIconPropTypes["size"]) => (size ? iconSizeMap[size] : "var(--height-s)"); +export const getIconSize = (size: ActionIconPropTypes["size"]) => + size && iconSizeMap[size] ? iconSizeMap[size] : "var(--height-s)"; export const getBorderWidth = (size: ActionIconPropTypes["size"]) => - size ? borderWidthMap[size] : "var(--border-width-s)"; + size && borderWidthMap[size] ? borderWidthMap[size] : "var(--border-width-s)"; export const getOutlineWidth = (size: ActionIconPropTypes["size"]) => - size ? outlineWidthMap[size] : "var(--border-width-m)"; + size && outlineWidthMap[size] ? outlineWidthMap[size] : "var(--border-width-m)"; export const getModeColor = (mode: Required["status"]["mode"]) => - mode ? modeColorMap[mode] : "var(--color-fg-neutral-strong)"; + mode && modeColorMap[mode] ? modeColorMap[mode] : "var(--color-fg-neutral-strong)"; From 4f3934baa08306dd030ade3a37414f33c6b38399 Mon Sep 17 00:00:00 2001 From: PelayoFelgueroso Date: Fri, 31 Oct 2025 11:18:13 +0100 Subject: [PATCH 2/2] Fix color assignment logic and ensure tabIndex is always set in DxcActionIcon --- packages/lib/src/avatar/Avatar.tsx | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/packages/lib/src/avatar/Avatar.tsx b/packages/lib/src/avatar/Avatar.tsx index 3a6039614..bc4ef62f3 100644 --- a/packages/lib/src/avatar/Avatar.tsx +++ b/packages/lib/src/avatar/Avatar.tsx @@ -97,7 +97,11 @@ const DxcAvatar = memo(