diff --git a/webapp/IronCalc/src/components/RightDrawer/NamedRanges/EditNamedRange.tsx b/webapp/IronCalc/src/components/RightDrawer/NamedRanges/EditNamedRange.tsx index a32357b..f652ea1 100644 --- a/webapp/IronCalc/src/components/RightDrawer/NamedRanges/EditNamedRange.tsx +++ b/webapp/IronCalc/src/components/RightDrawer/NamedRanges/EditNamedRange.tsx @@ -36,18 +36,22 @@ const EditNamedRange: React.FC = ({ - {name || "New Named Range"} + + {name || t("name_manager_dialog.new_named_range")} + - Range name + + {t("name_manager_dialog.range_name")} + = ({ /> - Scope + + {t("name_manager_dialog.scope_label")} + = ({ setScope(event.target.value); }} > - + {t("name_manager_dialog.workbook")} {` ${t("name_manager_dialog.global")}`} @@ -84,11 +90,13 @@ const EditNamedRange: React.FC = ({ ))} - The scope of the named range determines where it is available. + {t("name_manager_dialog.scope_helper")} - Refers to + + {t("name_manager_dialog.refers_to")} + = ({ disableElevation onClick={onCancel} > - Cancel + {t("name_manager_dialog.cancel")} { interface NamedRangesProps { title?: string; + onClose?: () => void; definedNameList?: DefinedName[]; worksheets?: WorksheetProperties[]; updateDefinedName?: ( @@ -32,6 +33,8 @@ interface NamedRangesProps { } const NamedRanges: React.FC = ({ + title, + onClose, definedNameList = [], worksheets = [], updateDefinedName, @@ -99,7 +102,7 @@ const NamedRanges: React.FC = ({ // Show edit view if a named range is being edited or created if (editingDefinedName || isCreatingNew) { let name = ""; - let scopeName = "[global]"; + let scopeName = "[Global]"; let formula = ""; if (editingDefinedName) { @@ -107,14 +110,65 @@ const NamedRanges: React.FC = ({ scopeName = editingDefinedName.scope !== undefined ? worksheets[editingDefinedName.scope]?.name || "[unknown]" - : "[global]"; + : "[Global]"; formula = editingDefinedName.formula; } else if (isCreatingNew && selectedArea) { formula = selectedArea(); } + const headerTitle = isCreatingNew + ? t("name_manager_dialog.add_new_range") + : t("name_manager_dialog.edit_range"); + return ( + + + { + if (e.key === "Enter" || e.key === " ") { + handleCancel(); + } + }} + aria-label="Back to list" + tabIndex={0} + > + + + + {headerTitle} + {onClose && ( + + { + if (e.key === "Enter" || e.key === " ") { + onClose(); + } + }} + aria-label="Close drawer" + tabIndex={0} + > + + + + )} + = ({ return ( + {onClose && ( +
+ {title} + + { + if (e.key === "Enter" || e.key === " ") { + onClose(); + } + }} + aria-label="Close drawer" + tabIndex={0} + > + + + +
+ )} {definedNameList.length > 0 && ( {definedNameList.map((definedName) => { const scopeName = definedName.scope !== undefined - ? worksheets[definedName.scope]?.name || "[unknown]" - : "[global]"; - // Check if this named range matches the currently selected area + ? worksheets[definedName.scope]?.name || "[Unknown]" + : "[Global]"; const isSelected = currentSelectedArea !== null && normalizeRangeString(definedName.formula) === @@ -193,22 +279,14 @@ const NamedRanges: React.FC = ({ )}