diff --git a/vehicle-data-platform/apps/web/src/v2/productionEntry.test.ts b/vehicle-data-platform/apps/web/src/v2/productionEntry.test.ts index 1f7f1399..bb3b5b8e 100644 --- a/vehicle-data-platform/apps/web/src/v2/productionEntry.test.ts +++ b/vehicle-data-platform/apps/web/src/v2/productionEntry.test.ts @@ -411,6 +411,13 @@ describe('V2 production entry', () => { expect(workspaceStyles).toContain('grid-template-columns: minmax(210px, .62fr) minmax(0, 1.38fr);'); expect(workspaceStyles).toContain('.v2-vehicle-record-v3 .v2-vehicle-command-card .v2-live-grid {'); expect(workspaceStyles).toContain('.v2-vehicle-mobile-actions-sidesheet .v2-vehicle-mobile-actions-list {'); + expect(workspaceStyles).toContain('.v2-access-table-v3 > .semi-card-body {'); + expect(workspaceStyles).toContain('grid-template-columns: 112px minmax(0, 1fr);'); + expect(workspaceStyles).toContain('.v2-access-mobile-card-content {'); + expect(workspaceStyles).toContain('grid-template-columns: minmax(142px, .72fr) minmax(0, 1.28fr);'); + expect(workspaceStyles).toContain('.v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet > .semi-card-body {'); + expect(workspaceStyles).toContain('.v2-access-governance .v2-access-governance-summary.semi-card {'); + expect(workspaceStyles).toContain('.v2-access-mobile-filter-form > div {'); expect(corePageSources.MonitorPage).not.toContain(' .v2-workspace-command-bar, + .v2-access-mobile-discovery > .v2-mobile-filter-toggle.semi-button { + height: 46px; + min-height: 46px; + margin: 0; + } + + .v2-access-discovery-shell > .v2-workspace-command-bar { + border: 1px solid #dce6f2; + border-radius: 9px; + padding: 5px 6px 5px 10px; + } + + .v2-access-command-bar .v2-workspace-command-copy { + gap: 1px; + } + + .v2-access-command-bar .v2-workspace-command-copy > .semi-typography:first-child { + font-size: 12px; + } + + .v2-access-command-bar .v2-workspace-command-copy > .semi-typography:last-child, + .v2-access-command-bar .v2-workspace-command-status, + .v2-access-command-bar .v2-workspace-command-meta { + display: none; + } + + .v2-access-command-bar .v2-workspace-command-actions { + gap: 4px; + } + + .v2-access-command-bar .v2-workspace-command-actions > .semi-button { + min-height: 34px; + height: 34px; + padding-inline: 8px !important; + } + + .v2-access-mobile-discovery { + display: block; + } + + .v2-access-mobile-discovery > .v2-mobile-filter-toggle.semi-button { + width: 100%; + border-radius: 9px; + padding: 5px 9px; + } + + .v2-access-workspace-v3, + .v2-access-table-v3.semi-card, + .v2-access-table-v3 > .semi-card-body { + height: 100%; + min-height: 0; + } + + .v2-access-table-v3 > .semi-card-body { + display: grid; + grid-template-columns: 112px minmax(0, 1fr); + grid-template-rows: minmax(0, 1fr) 38px; + } + + .v2-access-table-v3 > .semi-card-body > .v2-workspace-panel-header { + display: none; + } + + .v2-access-status-tabs { + min-height: 0; + grid-column: 1; + grid-row: 1; + grid-template-columns: minmax(0, 1fr); + grid-template-rows: repeat(4, minmax(0, 1fr)); + border-right: 1px solid #e4eaf2; + border-bottom: 0; + } + + .v2-access-status-tabs .v2-metric-action.semi-button { + height: auto; + min-height: 0; + padding: 3px 8px; + } + + .v2-access-status-tabs .v2-metric-action + .v2-metric-action::before { + inset: 0 8px auto; + width: auto; + height: 1px; + } + + .v2-access-status-tabs .v2-metric-action-content { + justify-content: flex-start; + gap: 5px; + } + + .v2-access-status-tabs small { + font-size: 8px; + } + + .v2-access-status-tabs strong { + margin-left: auto; + font-size: 12px; + } + + .v2-access-table-scroll-v3.is-mobile-scroll { + min-height: 0; + grid-column: 2; + grid-row: 1; + overflow-y: auto; + } + + .v2-access-mobile-list { + gap: 4px; + padding: 4px; + } + + .v2-access-mobile-card.semi-card { + border-radius: 8px; + contain-intrinsic-size: auto 62px; + } + + .v2-access-mobile-card-content { + display: grid; + grid-template-columns: minmax(142px, .72fr) minmax(0, 1.28fr); + grid-template-rows: auto auto; + align-items: center; + gap: 2px 7px; + padding: 5px 7px; + } + + .v2-access-mobile-card-content > header { + min-width: 0; + grid-column: 1; + grid-row: 1; + gap: 4px; + } + + .v2-access-mobile-card-content > header > span:first-child { + min-width: 0; + } + + .v2-access-mobile-card-content > header strong { + font-size: 12px; + line-height: 1.15; + } + + .v2-access-mobile-card-content > header small { + margin-top: 1px; + font-size: 7px; + line-height: 1.15; + } + + .v2-access-mobile-card-content > header .v2-access-connection-tag.semi-tag { + min-height: 18px; + padding-inline: 4px; + font-size: 7px; + } + + .v2-access-mobile-card-content > p { + min-width: 0; + grid-column: 1; + grid-row: 2; + font-size: 8px; + line-height: 11px; + } + + .v2-access-mobile-protocols { + min-width: 0; + grid-column: 2; + grid-row: 1 / 3; + grid-template-columns: repeat(3, minmax(0, 1fr)); + align-self: stretch; + gap: 3px; + padding-top: 0; + } + + .v2-access-mobile-list .v2-access-protocol-cell { + align-content: center; + gap: 1px 3px; + border-radius: 5px; + padding: 3px 4px; + } + + .v2-access-mobile-list .v2-access-protocol-label, + .v2-access-mobile-list .v2-access-protocol-cell > span, + .v2-access-mobile-list .v2-access-protocol-cell > strong { + font-size: 7px; + line-height: 9px; + } + + .v2-access-mobile-list .v2-access-protocol-cell > span i { + width: 4px; + height: 4px; + } + + .v2-access-table-v3 > .semi-card-body > footer:has(.v2-table-pagination-controls) { + min-height: 38px; + grid-column: 1 / -1; + grid-row: 2; + padding: 2px 6px; + } + + .v2-access-table-v3 > .semi-card-body > footer .v2-table-pagination-button.semi-button, + .v2-access-table-v3 > .semi-card-body > footer .v2-table-pagination-current { + height: 30px; + min-height: 30px; + } + + .v2-access-detail-sidesheet.semi-sidesheet-bottom .semi-sidesheet-inner, + .v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-inner, + .v2-access-mobile-filter-sidesheet.semi-sidesheet-bottom .semi-sidesheet-inner { + height: 100dvh !important; + max-height: 100dvh; + border-radius: 0; + } + + :is( + .v2-access-detail-sidesheet, + .v2-access-governance-sidesheet, + .v2-access-mobile-filter-sidesheet + ).semi-sidesheet-bottom .semi-sidesheet-header { + min-height: 54px; + padding: 7px 12px; + } + + .v2-access-detail-sidesheet.semi-sidesheet-bottom .semi-sidesheet-body { + overflow: hidden; + padding: 0; + } + + .v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet.semi-card, + .v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet > .semi-card-body { + height: 100%; + min-height: 0; + } + + .v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet > .semi-card-body { + display: grid; + grid-template-columns: minmax(220px, .75fr) minmax(0, 1.25fr); + grid-template-rows: auto auto minmax(0, 1fr) auto; + overflow: hidden; + background: #f5f8fc; + } + + .v2-access-detail-sidesheet .v2-access-inspector-focus.semi-card { + min-width: 0; + grid-column: 1; + grid-row: 1; + margin: 6px 5px 0 6px; + } + + .v2-access-detail-sidesheet .v2-access-inspector-focus > .semi-card-body { + min-height: 76px; + gap: 7px; + padding: 8px 9px !important; + } + + .v2-access-detail-sidesheet .v2-access-inspector-focus strong { + font-size: 11px; + line-height: 1.3; + } + + .v2-access-detail-sidesheet .v2-access-inspector-focus span, + .v2-access-detail-sidesheet .v2-access-inspector-focus b { + font-size: 8px; + line-height: 1.3; + } + + .v2-access-detail-sidesheet .v2-access-health-strip { + min-width: 0; + grid-column: 1; + grid-row: 2; + margin: 5px 5px 0 6px; + } + + .v2-access-detail-sidesheet .v2-access-health-strip > span { + gap: 2px; + padding: 6px 4px; + } + + .v2-access-detail-sidesheet .v2-access-health-strip small { + font-size: 7px; + } + + .v2-access-detail-sidesheet .v2-access-health-strip strong { + font-size: 10px; + } + + .v2-access-detail-sidesheet .v2-access-mobile-profile { + min-width: 0; + min-height: 32px; + grid-column: 1; + grid-row: 3; + align-self: start; + margin: 5px 5px 0 6px; + border: 1px solid #e0e7ef; + border-radius: 8px; + padding: 5px 7px; + } + + .v2-access-detail-sidesheet .v2-access-mobile-profile small, + .v2-access-detail-sidesheet .v2-access-mobile-profile strong { + font-size: 8px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-heading { + min-height: 38px; + grid-column: 2; + grid-row: 1; + border-left: 1px solid #dfe7f0; + padding: 5px 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-heading strong { + font-size: 11px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-heading small { + font-size: 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-heading .semi-tag { + min-height: 19px; + padding-inline: 5px; + font-size: 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-details.semi-card-group { + min-height: 0; + grid-column: 2; + grid-row: 2 / 5; + grid-template-columns: repeat(2, minmax(0, 1fr)); + align-content: start; + overflow-y: auto; + gap: 5px; + border-left: 1px solid #dfe7f0; + padding: 5px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-detail.semi-card { + min-width: 0; + border-radius: 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-detail.is-expanded { + grid-column: 1 / -1; + } + + .v2-access-detail-sidesheet .v2-access-protocol-detail > .semi-card-header { + min-height: 32px; + padding-inline: 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-detail > .semi-card-header .semi-card-header-wrapper-title strong { + font-size: 9px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-detail .v2-access-protocol-tag.semi-tag { + min-height: 18px; + padding-inline: 4px; + font-size: 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-glance { + grid-template-columns: repeat(4, minmax(0, 1fr)); + } + + .v2-access-detail-sidesheet .v2-access-protocol-glance > span { + gap: 2px; + padding: 5px 6px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-glance small { + font-size: 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-glance strong { + font-size: 8px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-toggle.semi-button { + min-height: 27px; + height: 27px; + font-size: 8px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-missing { + min-height: 52px; + gap: 2px; + padding: 7px; + } + + .v2-access-detail-sidesheet .v2-access-protocol-missing span, + .v2-access-detail-sidesheet .v2-access-protocol-missing small { + font-size: 8px; + } + + .v2-access-detail-sidesheet .v2-access-inspector-v3.is-sheet > .semi-card-body > footer { + min-width: 0; + grid-column: 1; + grid-row: 4; + padding: 5px 7px; + font-size: 7px; + } + + .v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-body { + overflow: hidden; + padding: 5px; + } + + .v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-footer { + min-height: 48px; + padding: 5px 8px; + } + + .v2-access-governance-sidesheet.semi-sidesheet-bottom .semi-sidesheet-footer .semi-button { + width: min(180px, 100%); + min-height: 36px; + margin-left: auto; + } + + .v2-access-governance { + height: 100%; + min-height: 0; + grid-template-columns: minmax(150px, .35fr) minmax(0, 1fr); + grid-template-rows: minmax(0, 1fr) auto; + gap: 5px; + } + + .v2-access-governance .v2-access-governance-summary.semi-card { + height: 100%; + min-height: 0; + grid-column: 1; + grid-row: 1 / 3; + } + + .v2-access-governance .v2-access-governance-summary > .semi-card-body { + height: 100%; + grid-template-columns: minmax(0, 1fr); + grid-template-rows: repeat(3, minmax(0, 1fr)); + } + + .v2-access-governance .v2-access-governance-summary > .semi-card-body > div { + align-content: center; + gap: 3px; + padding: 7px 9px; + } + + .v2-access-governance .v2-access-governance-summary > .semi-card-body > div + div { + border-top: 1px solid var(--v2-border); + border-left: 0; + } + + .v2-access-governance .v2-access-governance-summary strong { + font-size: 14px; + } + + .v2-access-governance .v2-access-identity-queue-v3 { + min-height: 0; + grid-column: 2; + grid-row: 1; + overflow: auto; + } + + .v2-access-governance .v2-access-settings { + min-height: 0; + grid-column: 2; + grid-row: 2; + } + + .v2-access-governance .v2-access-identity-queue-v3 .semi-collapse-header, + .v2-access-governance .v2-access-settings .semi-collapse-header { + min-height: 44px; + padding: 5px 8px; + } + + .v2-access-governance .v2-access-collapse-title { + gap: 5px; + } + + .v2-access-governance .v2-access-collapse-title small { + display: none; + } + + .v2-access-governance .v2-access-collapse-title strong { + font-size: 10px; + } + + .v2-access-governance .v2-access-collapse-title > .semi-tag { + min-height: 18px; + padding-inline: 5px; + font-size: 7px; + } + + .v2-access-governance .v2-access-identity-grid { + gap: 4px; + padding: 4px; + } + + .v2-access-governance .v2-access-identity-card > .semi-card-body { + display: grid; + grid-template-columns: minmax(110px, .55fr) minmax(130px, .7fr) minmax(0, 1fr); + align-items: stretch; + } + + .v2-access-governance .v2-access-identity-card header, + .v2-access-governance .v2-access-identity-facts, + .v2-access-governance .v2-access-identity-card footer { + min-width: 0; + border: 0; + border-radius: 0; + padding: 6px 7px; + } + + .v2-access-governance .v2-access-identity-facts, + .v2-access-governance .v2-access-identity-card footer { + border-left: 1px solid #e7edf4; + } + + .v2-access-governance .v2-access-identity-facts { + grid-template-columns: repeat(2, minmax(0, 1fr)); + } + + .v2-access-governance .v2-access-identity-facts > span { + padding: 0 4px; + } + + .v2-access-governance .v2-access-identity-card footer strong { + font-size: 8px; + line-height: 1.3; + } + + .v2-access-mobile-filter-sidesheet.semi-sidesheet-bottom .semi-sidesheet-body { + padding: 7px; + } + + .v2-access-mobile-filter-sidesheet.semi-sidesheet-bottom .semi-sidesheet-footer { + padding: 6px 9px; + } + + .v2-access-mobile-filter-form { + gap: 7px; + padding: 8px; + } + + .v2-access-mobile-filter-form > header { + display: none; + } + + .v2-access-mobile-filter-form > div { + grid-template-columns: repeat(4, minmax(0, 1fr)); + gap: 7px; + } + + .v2-access-mobile-filter-form > div > label.is-search, + .v2-access-mobile-filter-form > div > label:last-child { + grid-column: auto; + } + + .v2-access-mobile-filter-form > div > label { + gap: 4px; + font-size: 9px; + } + + .v2-access-mobile-filter-form > div > label > .semi-input-wrapper, + .v2-access-mobile-filter-form > div > label > .semi-select { + min-height: 38px; + } + + .v2-access-mobile-filter-footer > .semi-button { + min-height: 36px; + } +}