From f7c2cf41061a135c0b3004e801375da8d3669170 Mon Sep 17 00:00:00 2001 From: RachelElysia <71795832+RachelElysia@users.noreply.github.com> Date: Tue, 28 Jul 2026 13:52:48 -0700 Subject: [PATCH] =?UTF-8?q?Fleet=20UI:=20PR=20#49292=20follow-up=20?= =?UTF-8?q?=E2=80=94=20buttons,=208px=20gaps,=20focus=20ring=20(#50049)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ActionsDropdown/ActionsDropdown.tsx | 13 +++++++++++-- frontend/components/ActionsDropdown/_styles.scss | 2 +- .../CertificateInstallDetailsModal.tsx | 1 - .../SoftwareInstallDetailsModal.tsx | 1 - .../SoftwareIpaInstallDetailsModal.tsx | 2 -- .../SoftwareScriptDetailsModal.tsx | 1 - .../SoftwareUninstallDetailsModal.tsx | 1 - .../VppInstallDetailsModal.tsx | 2 -- .../PlatformWrapper/PlatformWrapper.tsx | 1 - frontend/components/BackButton/BackButton.tsx | 2 +- frontend/components/LiveQuery/SelectTargets.tsx | 1 - frontend/components/Modal/_styles.scss | 4 ++-- frontend/components/ModalFooter/_styles.scss | 2 +- frontend/components/Pagination/Pagination.tsx | 2 +- .../TableContainer/DataTable/_styles.scss | 8 +++----- frontend/components/TableContainer/_styles.scss | 9 +-------- .../components/buttons/ActionButtons/_styles.scss | 6 ++---- .../buttons/RevealButton/RevealButton.tsx | 5 +---- .../components/buttons/RevealButton/_styles.scss | 1 - frontend/components/forms/LoginForm/LoginForm.tsx | 2 +- frontend/components/icons/ChevronLeft.tsx | 2 +- .../components/ActivityFeedFilters/_styles.scss | 2 +- .../DashboardPage/cards/ChartCard/ChartCard.tsx | 2 +- .../SoftwareFilters/SoftwareFilters.tsx | 1 - .../DashboardPage/cards/ChartCard/_styles.scss | 15 --------------- .../ActivityFeedAutomationsModal.tsx | 1 - .../cards/DiskEncryption/DiskEncryption.tsx | 1 - .../components/ScriptListItem/_styles.scss | 2 +- .../BootstrapAdvancedOptions.tsx | 1 - .../SetupExperienceScriptCard/_styles.scss | 2 +- .../AdvancedOptionsForm/AdvancedOptionsForm.tsx | 1 - .../SetupAssistantProfileCard/_styles.scss | 2 +- .../FleetAppDetailsForm/_styles.scss | 2 +- .../FleetAppDetailsModal/FleetAppDetailsModal.tsx | 3 ++- .../SelfServiceCategoriesPage.tsx | 4 ++-- frontend/pages/SoftwarePage/_styles.scss | 2 +- .../PackageAdvancedOptions.tsx | 1 - .../components/forms/PackageForm/_styles.scss | 2 +- .../forms/SoftwareAndroidForm/_styles.scss | 2 +- .../components/forms/SoftwareVppForm/_styles.scss | 2 +- .../OktaConditionalAccessModal.tsx | 3 ++- .../components/modals/RenewCertModal/_styles.scss | 2 +- .../TeamDetailsWrapper/TeamDetailsWrapper.tsx | 3 --- .../DownloadFileButtons/DownloadABMKey.tsx | 2 +- .../DownloadFileButtons/DownloadCSR.tsx | 2 +- frontend/pages/hosts/ManageHostsPage/_styles.scss | 4 ++-- .../CustomLabelGroupHeading/_styles.scss | 2 +- .../SettingUpYourDevice/SettingUpYourDevice.tsx | 1 - .../hosts/details/cards/HostHeader/_styles.scss | 2 +- .../policies/ManagePoliciesPage/_styles.scss | 5 +---- .../CalendarEventsModal/CalendarEventsModal.tsx | 1 - .../OtherWorkflowsModal/OtherWorkflowsModal.tsx | 2 -- .../components/PoliciesTable/_styles.scss | 2 +- .../pages/queries/ManageQueriesPage/_styles.scss | 2 +- .../queries/details/QueryDetailsPage/_styles.scss | 2 +- .../components/EditQueryForm/EditQueryForm.tsx | 2 -- .../SaveNewQueryModal/SaveNewQueryModal.tsx | 1 - .../pages/queries/live/LiveQueryPage/_styles.scss | 6 +----- frontend/styles/global/_global.scss | 4 ++-- frontend/styles/var/padding.scss | 3 ++- 60 files changed, 58 insertions(+), 109 deletions(-) diff --git a/frontend/components/ActionsDropdown/ActionsDropdown.tsx b/frontend/components/ActionsDropdown/ActionsDropdown.tsx index 6b88c40d1c..c3a2ade700 100644 --- a/frontend/components/ActionsDropdown/ActionsDropdown.tsx +++ b/frontend/components/ActionsDropdown/ActionsDropdown.tsx @@ -237,6 +237,7 @@ const ActionsDropdown = ({ ...provided, display: "flex", flexDirection: "row", + gap: "8px", width: "max-content", // Need minHeight to override default minHeight: variant === "secondary" ? "28px" : "32px", // Match button height @@ -277,9 +278,17 @@ const ActionsDropdown = ({ }), // Same ring Button's :focus-visible draws — only for keyboard tabbing, // never a mouse click (see isKeyboardFocus above). + // + // Drawn INSIDE the control (via outline + negative offset) rather than + // as an outset box-shadow. An outset shadow renders as a full-contrast + // 1px halo on the page background, and for the bordered `secondary` + // variant it stacks against the existing 1px grey border → reads as a + // ~2px band. Sitting inside the box overlays the border pixel and + // matches Button's own `::after` focus ring visual weight. ...(state.isFocused && isKeyboardFocus && { - boxShadow: `0 0 0 1px ${COLORS["core-fleet-black"]}`, + outline: `1px solid ${COLORS["core-fleet-black"]}`, + outlineOffset: "-1px", }), }), placeholder: (provided, state) => ({ @@ -293,7 +302,7 @@ const ActionsDropdown = ({ variant === "subdued" || variant === "secondary" ? "600" : undefined, lineHeight: "normal", paddingLeft: 0, - marginTop: "1px", + margin: 0, ...(state.isDisabled && { filter: "grayscale(0.5)", opacity: 0.5, diff --git a/frontend/components/ActionsDropdown/_styles.scss b/frontend/components/ActionsDropdown/_styles.scss index f91a43abed..f5e6ed540b 100644 --- a/frontend/components/ActionsDropdown/_styles.scss +++ b/frontend/components/ActionsDropdown/_styles.scss @@ -11,7 +11,7 @@ align-items: center; button .children-wrapper { - gap: $pad-xsmall; + gap: $pad-small; .actions-dropdown__icon svg { transition: transform 0.25s ease; diff --git a/frontend/components/ActivityDetails/InstallDetails/CertificateInstallDetailsModal/CertificateInstallDetailsModal.tsx b/frontend/components/ActivityDetails/InstallDetails/CertificateInstallDetailsModal/CertificateInstallDetailsModal.tsx index ff103e0d60..4345d067ca 100644 --- a/frontend/components/ActivityDetails/InstallDetails/CertificateInstallDetailsModal/CertificateInstallDetailsModal.tsx +++ b/frontend/components/ActivityDetails/InstallDetails/CertificateInstallDetailsModal/CertificateInstallDetailsModal.tsx @@ -57,7 +57,6 @@ const CertificateInstallDetailsModal = ({ hideText="Details" caretPosition="after" onClick={() => setShowDetails((prev) => !prev)} - variant="secondary" /> {showDetails && ( diff --git a/frontend/pages/hosts/details/cards/HostHeader/_styles.scss b/frontend/pages/hosts/details/cards/HostHeader/_styles.scss index 6d98620901..c7487f7018 100644 --- a/frontend/pages/hosts/details/cards/HostHeader/_styles.scss +++ b/frontend/pages/hosts/details/cards/HostHeader/_styles.scss @@ -73,6 +73,6 @@ display: flex; flex-direction: row; align-items: center; - gap: $pad-medium; + gap: $gap-action-elements; } } diff --git a/frontend/pages/policies/ManagePoliciesPage/_styles.scss b/frontend/pages/policies/ManagePoliciesPage/_styles.scss index a664134a15..12255d6821 100644 --- a/frontend/pages/policies/ManagePoliciesPage/_styles.scss +++ b/frontend/pages/policies/ManagePoliciesPage/_styles.scss @@ -60,10 +60,7 @@ &__action-button-container { display: flex; align-items: flex-start; - } - - &__advanced-button { - margin-right: $pad-medium; + gap: $gap-action-elements; } &__sandbox-info { diff --git a/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/CalendarEventsModal/CalendarEventsModal.tsx b/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/CalendarEventsModal/CalendarEventsModal.tsx index 463fbf0665..247af5332e 100644 --- a/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/CalendarEventsModal/CalendarEventsModal.tsx +++ b/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/CalendarEventsModal/CalendarEventsModal.tsx @@ -195,7 +195,6 @@ const CalendarEventsModal = forwardRef< showText="Example payload" caretPosition="after" onClick={() => setShowExamplePayload(!showExamplePayload)} - variant="secondary" /> {showExamplePayload && renderExamplePayload()} diff --git a/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/OtherWorkflowsModal/OtherWorkflowsModal.tsx b/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/OtherWorkflowsModal/OtherWorkflowsModal.tsx index 99a613353c..1cd30cf3f5 100644 --- a/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/OtherWorkflowsModal/OtherWorkflowsModal.tsx +++ b/frontend/pages/policies/ManagePoliciesPage/components/AutomationsModal/components/OtherWorkflowsModal/OtherWorkflowsModal.tsx @@ -293,7 +293,6 @@ const OtherWorkflowsModal = forwardRef< showText="Show example ticket" caretPosition="after" onClick={() => setShowExampleTicket(!showExampleTicket)} - variant="secondary" /> {showExampleTicket && ( setShowExamplePayload(!showExamplePayload)} - variant="secondary" /> {showExamplePayload && } diff --git a/frontend/pages/policies/ManagePoliciesPage/components/PoliciesTable/_styles.scss b/frontend/pages/policies/ManagePoliciesPage/components/PoliciesTable/_styles.scss index 502bd176ae..d6e4c58870 100644 --- a/frontend/pages/policies/ManagePoliciesPage/components/PoliciesTable/_styles.scss +++ b/frontend/pages/policies/ManagePoliciesPage/components/PoliciesTable/_styles.scss @@ -32,7 +32,7 @@ &__filter-dropdowns { display: flex; align-items: center; - gap: $pad-medium; + gap: $gap-table-elements; } &__platform-dropdown { diff --git a/frontend/pages/queries/ManageQueriesPage/_styles.scss b/frontend/pages/queries/ManageQueriesPage/_styles.scss index aff2d0acde..38f1bedba4 100644 --- a/frontend/pages/queries/ManageQueriesPage/_styles.scss +++ b/frontend/pages/queries/ManageQueriesPage/_styles.scss @@ -42,7 +42,7 @@ &__action-button-container { display: flex; - gap: $pad-small; + gap: $gap-action-elements; } .queries-table { diff --git a/frontend/pages/queries/details/QueryDetailsPage/_styles.scss b/frontend/pages/queries/details/QueryDetailsPage/_styles.scss index 1568a35d59..dc99939fa6 100644 --- a/frontend/pages/queries/details/QueryDetailsPage/_styles.scss +++ b/frontend/pages/queries/details/QueryDetailsPage/_styles.scss @@ -20,7 +20,7 @@ display: flex; justify-content: flex-end; min-width: max-content; - gap: $pad-medium; + gap: $gap-action-elements; } &__query-name { diff --git a/frontend/pages/queries/edit/components/EditQueryForm/EditQueryForm.tsx b/frontend/pages/queries/edit/components/EditQueryForm/EditQueryForm.tsx index ec2736a583..2ad456bdb8 100644 --- a/frontend/pages/queries/edit/components/EditQueryForm/EditQueryForm.tsx +++ b/frontend/pages/queries/edit/components/EditQueryForm/EditQueryForm.tsx @@ -538,7 +538,6 @@ const EditQueryForm = ({ hideText="Hide SQL" showText="Show SQL" onClick={() => setShowQueryEditor(!showQueryEditor)} - variant="secondary" /> )} {showQueryEditor && ( @@ -782,7 +781,6 @@ const EditQueryForm = ({ showText="Advanced options" caretPosition="after" onClick={toggleAdvancedOptions} - variant="secondary" /> {showAdvancedOptions && ( <> diff --git a/frontend/pages/queries/edit/components/SaveNewQueryModal/SaveNewQueryModal.tsx b/frontend/pages/queries/edit/components/SaveNewQueryModal/SaveNewQueryModal.tsx index 290180a5e9..177eeed267 100644 --- a/frontend/pages/queries/edit/components/SaveNewQueryModal/SaveNewQueryModal.tsx +++ b/frontend/pages/queries/edit/components/SaveNewQueryModal/SaveNewQueryModal.tsx @@ -339,7 +339,6 @@ const SaveNewQueryModal = ({ showText="Advanced options" caretPosition="after" onClick={toggleAdvancedOptions} - variant="secondary" /> {showAdvancedOptions && ( <> diff --git a/frontend/pages/queries/live/LiveQueryPage/_styles.scss b/frontend/pages/queries/live/LiveQueryPage/_styles.scss index 5d89b12e51..3b6761cb8f 100644 --- a/frontend/pages/queries/live/LiveQueryPage/_styles.scss +++ b/frontend/pages/queries/live/LiveQueryPage/_styles.scss @@ -52,13 +52,9 @@ margin-top: 30px; display: flex; align-items: center; - - button:not(:first-of-type) { - margin-left: 16px; - } + gap: $gap-action-elements; } &__targets-total-count { - margin-left: 16px; font-size: $x-small; display: flex; align-items: center; diff --git a/frontend/styles/global/_global.scss b/frontend/styles/global/_global.scss index 25f7c49004..a724f5ffba 100644 --- a/frontend/styles/global/_global.scss +++ b/frontend/styles/global/_global.scss @@ -138,12 +138,12 @@ form, .button-wrap { margin: 0; display: flex; - gap: $pad-medium; + gap: $gap-action-elements; &--center { margin: 0; display: flex; - gap: $pad-medium; + gap: $gap-action-elements; justify-content: center; } } diff --git a/frontend/styles/var/padding.scss b/frontend/styles/var/padding.scss index db287c8edb..f54d2fafed 100644 --- a/frontend/styles/var/padding.scss +++ b/frontend/styles/var/padding.scss @@ -19,7 +19,8 @@ $gap-page-component-inner-responsiveness: $pad-smedium; $gap-form: $pad-large; $gap-form-component: $pad-small; $gap-data-sets: $pad-medium; -$gap-table-elements: $pad-medium; +$gap-table-elements: $pad-small; +$gap-action-elements: $pad-small; $gap-modal-component: $pad-large; $gap-icon-text: $pad-small; $table-cell-padding: $pad-large;