diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml new file mode 100644 index 0000000..84bdaeb --- /dev/null +++ b/.github/workflows/check.yml @@ -0,0 +1,18 @@ +name: Check +on: + workflow_dispatch: + push: + +jobs: + check: + name: Check + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v6 + - uses: pnpm/action-setup@v6 + - uses: actions/setup-node@v6 + with: + node-version-file: ".nvmrc" + cache: "pnpm" + - run: pnpm install --frozen-lockfile + - run: pnpm check-all diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 9b8b109..f713459 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -30,8 +30,8 @@ jobs: - uses: pnpm/action-setup@v6 - uses: actions/setup-node@v6 with: - node-version-file: '.nvmrc' - cache: 'pnpm' + node-version-file: ".nvmrc" + cache: "pnpm" - run: pnpm install --frozen-lockfile - run: pnpm build:all-widgets # TODO: replace this step with a CDN upload once the target is decided. diff --git a/README.md b/README.md index 75f0f84..c9d37d4 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,6 @@ ORG_ID=atb pnpm start Then open http://localhost:3001/widget/preview - ## How it works The widget is a vanilla JS library with no framework dependencies. Host websites @@ -71,7 +70,10 @@ Each build produces four files per organization, output to Include the following in your HTML, ```html - + ``` ```html @@ -82,10 +84,10 @@ Include the following in your HTML, ``` diff --git a/package.json b/package.json index 93c864e..c9f4e49 100644 --- a/package.json +++ b/package.json @@ -10,8 +10,10 @@ "build:widget": "sh ./scripts/build-widget.sh", "build:all-widgets": "sh ./scripts/build-all-widgets.sh", "start": "node server.mts", + "typecheck": "tsc --noEmit", "format": "prettier --write .", - "format:check": "prettier --check ." + "format:check": "prettier --check .", + "check-all": "pnpm typecheck && pnpm format:check && pnpm build:all-widgets" }, "engines": { "node": ">=24.0.0" diff --git a/src/styles/assistant.module.css b/src/styles/assistant.module.css index 2f9545f..22530d4 100644 --- a/src/styles/assistant.module.css +++ b/src/styles/assistant.module.css @@ -4,13 +4,13 @@ align-items: center; } .container { - background-color: token('color.background.neutral.1.background'); + background-color: token("color.background.neutral.1.background"); height: 100%; position: relative; display: grid; grid-template-areas: - 'main' - 'alternatives'; + "main" + "alternatives"; width: 100%; max-width: var(--maxPageWidth); } @@ -19,14 +19,14 @@ grid-area: main; display: grid; grid-template-columns: 1fr 1fr; - grid-gap: token('spacing.xLarge'); + grid-gap: token("spacing.xLarge"); width: 100%; max-width: var(--maxPageWidth); - padding: token('spacing.xLarge'); + padding: token("spacing.xLarge"); margin: 0 auto; - margin-top: token('spacing.large'); - background-color: token('color.background.neutral.0.background'); - border-radius: token('border.radius.regular'); + margin-top: token("spacing.large"); + background-color: token("color.background.neutral.0.background"); + border-radius: token("border.radius.regular"); } .input { @@ -45,35 +45,35 @@ } .heading { - color: token('color.background.accent.0.foreground.primary'); - margin-bottom: token('spacing.medium'); + color: token("color.background.accent.0.foreground.primary"); + margin-bottom: token("spacing.medium"); } .alternativesWrapper { grid-area: alternatives; width: 100%; - background-color: token('color.background.neutral.0.background'); - padding: token('spacing.xLarge'); + background-color: token("color.background.neutral.0.background"); + padding: token("spacing.xLarge"); max-width: var(--maxPageWidth); margin: 0 auto; - border-radius: 0 0 token('border.radius.regular') - token('border.radius.regular'); + border-radius: 0 0 token("border.radius.regular") + token("border.radius.regular"); } .alternatives { display: flex; flex-direction: column; - gap: token('spacing.medium'); - padding: token('spacing.large'); + gap: token("spacing.medium"); + padding: token("spacing.large"); width: 100%; max-width: var(--maxPageWidth); margin: 0 auto; margin-bottom: 5.75rem; display: flex; flex-direction: column; - gap: token('spacing.large'); - background-color: token('color.background.neutral.2.background'); - border-radius: token('border.radius.regular'); + gap: token("spacing.large"); + background-color: token("color.background.neutral.2.background"); + border-radius: token("border.radius.regular"); } .buttons { @@ -81,35 +81,35 @@ align-self: end; display: flex; justify-content: flex-end; - gap: token('spacing.medium'); + gap: token("spacing.medium"); width: 100%; max-width: var(--maxPageWidth); margin: 0 auto; - padding: token('spacing.medium') token('spacing.large') token('spacing.large') - token('spacing.large'); + padding: token("spacing.medium") token("spacing.large") token("spacing.large") + token("spacing.large"); z-index: 10; position: absolute; left: 0; right: 0; - background-color: token('color.background.neutral.0.background'); - border-radius: 0 0 token('border.radius.regular') - token('border.radius.regular'); + background-color: token("color.background.neutral.0.background"); + border-radius: 0 0 token("border.radius.regular") + token("border.radius.regular"); } .searchInputButton { height: var(--height); border: none; - background-color: token('color.background.neutral.0.background'); - border: token('border.width.slim') solid - token('color.foreground.dynamic.disabled'); - padding: token('spacing.small'); + background-color: token("color.background.neutral.0.background"); + border: token("border.width.slim") solid + token("color.foreground.dynamic.disabled"); + padding: token("spacing.small"); border-radius: 50%; cursor: pointer; display: flex; align-items: center; position: absolute; top: 50%; - right: token('spacing.medium'); + right: token("spacing.medium"); transform: translate(0, -50%); z-index: 100; } @@ -121,16 +121,16 @@ @media (max-width: 650px) { .container { grid-template-areas: - 'main' - 'buttons' - 'alternatives'; + "main" + "buttons" + "alternatives"; } .main { display: flex; flex-direction: column; - padding-bottom: token('spacing.xLarge') !important; - border-radius: token('border.radius.regular') token('border.radius.regular') + padding-bottom: token("spacing.xLarge") !important; + border-radius: token("border.radius.regular") token("border.radius.regular") 0 0; } @@ -142,11 +142,11 @@ } .alternativesWrapper { - padding: token('spacing.small'); + padding: token("spacing.small"); } .alternatives { - padding: token('spacing.medium'); + padding: token("spacing.medium"); } .removeAllBorderRadius { @@ -154,7 +154,7 @@ } .container { - padding: token('spacing.medium'); + padding: token("spacing.medium"); } .walkSpeedSegments { @@ -166,22 +166,22 @@ margin: 0 auto; width: 100%; max-width: var(--maxPageWidth); - padding: token('spacing.xLarge'); + padding: token("spacing.xLarge"); display: flex; flex-direction: column; - gap: token('spacing.medium'); + gap: token("spacing.medium"); } .tripResults { display: flex; flex-direction: column; - gap: token('spacing.large'); + gap: token("spacing.large"); } .nonTransitResult { display: flex; flex-wrap: wrap; - gap: token('spacing.medium'); + gap: token("spacing.medium"); } .spanColumns { @@ -189,6 +189,6 @@ } .removeBorderRadiusBottom { - border-radius: token('border.radius.regular') token('border.radius.regular') 0 + border-radius: token("border.radius.regular") token("border.radius.regular") 0 0; } diff --git a/src/styles/search.module.css b/src/styles/search.module.css index 1d9fc42..4a6a33e 100644 --- a/src/styles/search.module.css +++ b/src/styles/search.module.css @@ -5,15 +5,15 @@ min-width: 20rem; display: flex; position: relative; - border-radius: token('border.radius.regular'); - background-color: token('color.background.neutral.0.background'); - box-shadow: 0 0 0 token('border.width.slim') - token('color.foreground.dynamic.disabled'); + border-radius: token("border.radius.regular"); + background-color: token("color.background.neutral.0.background"); + box-shadow: 0 0 0 token("border.width.slim") + token("color.foreground.dynamic.disabled"); } .container:focus-within { outline: 0; - box-shadow: inset 0 0 0 token('border.width.medium') - token('color.interactive.2.outline.background'); + box-shadow: inset 0 0 0 token("border.width.medium") + token("color.interactive.2.outline.background"); } .container:not(:only-child):first-child { @@ -30,8 +30,8 @@ top: calc(100%); border-top-left-radius: 0; border-top-right-radius: 0; - width: calc(100% + 2 * token('border.width.slim')); - margin-left: calc(-1 * token('border.width.slim')); + width: calc(100% + 2 * token("border.width.slim")); + margin-left: calc(-1 * token("border.width.slim")); } .label { @@ -40,7 +40,7 @@ min-width: 3.5rem; display: flex; align-items: center; - padding: token('spacing.medium'); + padding: token("spacing.medium"); border-bottom-left-radius: 0.75rem; border-top-left-radius: 0.75rem; } @@ -51,33 +51,33 @@ .input { height: var(--height); - padding: token('spacing.small'); + padding: token("spacing.small"); border: none; background: none; width: 100%; border-radius: 0; - color: token('color.foreground.dynamic.primary'); + color: token("color.foreground.dynamic.primary"); outline: 0; } .input::placeholder { - color: token('color.foreground.dynamic.secondary'); + color: token("color.foreground.dynamic.secondary"); opacity: 1; } .menu { width: 100%; - background-color: token('color.background.neutral.0.background'); + background-color: token("color.background.neutral.0.background"); border-radius: 0.75rem; - border: token('border.width.slim') solid - token('color.background.neutral.3.background'); + border: token("border.width.slim") solid + token("color.background.neutral.3.background"); position: absolute; - top: calc(100% + token('spacing.xSmall')); + top: calc(100% + token("spacing.xSmall")); overflow: hidden; max-height: 20rem; overflow-y: auto; z-index: 100; - padding: token('spacing.medium'); + padding: token("spacing.medium"); } .menu:empty { display: none; @@ -86,20 +86,20 @@ .stopPlaceCheckbox { display: flex; align-items: center; - padding: token('spacing.xSmall'); + padding: token("spacing.xSmall"); cursor: pointer; } .item { - padding: token('spacing.medium'); + padding: token("spacing.medium"); display: flex; align-items: center; - gap: token('spacing.medium'); + gap: token("spacing.medium"); cursor: pointer; } .item:has(> .menuHeading) { - margin-top: token('spacing.small'); + margin-top: token("spacing.small"); } .menuHeading { @@ -107,11 +107,11 @@ } .itemHighlighted { - color: token('color.interactive.2.hover.foreground.primary'); - background-color: token('color.interactive.2.hover.background'); - outline: token('border.width.medium') solid - token('color.interactive.2.outline.background'); - border-radius: token('border.radius.small'); + color: token("color.interactive.2.hover.foreground.primary"); + background-color: token("color.interactive.2.hover.background"); + outline: token("border.width.medium") solid + token("color.interactive.2.outline.background"); + border-radius: token("border.radius.small"); } .itemIcon { diff --git a/src/styles/selector.module.css b/src/styles/selector.module.css index d3c87f4..0810420 100644 --- a/src/styles/selector.module.css +++ b/src/styles/selector.module.css @@ -6,10 +6,10 @@ .options { display: grid; grid-template-columns: repeat(var(--number-of-options), minmax(0, 1fr)); - padding: token('spacing.xSmall'); - background: token('color.background.neutral.0.background'); - border: 1px solid token('color.foreground.dynamic.disabled'); - border-radius: token('border.radius.regular'); + padding: token("spacing.xSmall"); + background: token("color.background.neutral.0.background"); + border: 1px solid token("color.foreground.dynamic.disabled"); + border-radius: token("border.radius.regular"); align-items: center; width: fit-content; } @@ -34,13 +34,13 @@ align-items: center; justify-content: center; cursor: pointer; - padding: token('spacing.small'); + padding: token("spacing.small"); } .option__text { z-index: 2; line-height: 1; - color: token('color.foreground.dynamic.primary'); + color: token("color.foreground.dynamic.primary"); } .dateAndTimeSelectorsWrapper { @@ -49,7 +49,7 @@ .dateAndTimeSelectors { display: flex; - gap: token('spacing.medium'); + gap: token("spacing.medium"); overflow: hidden; /* TODO: Spacing not in variables. Use variable instead? */ margin-top: 0.375rem; @@ -58,10 +58,10 @@ .dateSelector, .timeSelector { --height: 2.75rem; - border-radius: token('border.radius.regular'); + border-radius: token("border.radius.regular"); overflow: hidden; - background-color: token('color.background.neutral.0.background'); - border: 1px solid token('color.foreground.dynamic.disabled'); + background-color: token("color.background.neutral.0.background"); + border: 1px solid token("color.foreground.dynamic.disabled"); display: flex; justify-content: space-between; } @@ -69,19 +69,19 @@ .dateSelector label, .timeSelector label, .timeSelectorLabel { - padding: token('spacing.medium'); + padding: token("spacing.medium"); padding-right: 0; height: var(--height); min-width: 3rem; } -.dateSelector input[type='date'], -.timeSelector input[type='time'] { +.dateSelector input[type="date"], +.timeSelector input[type="time"] { height: var(--height); - padding: token('spacing.medium'); + padding: token("spacing.medium"); border: none; background-color: transparent; - color: token('color.background.neutral.0.foreground.primary'); + color: token("color.background.neutral.0.foreground.primary"); flex: 1; border-top-right-radius: 0.75rem; border-bottom-right-radius: 0.75rem; @@ -94,56 +94,56 @@ .timeSelectorInput { height: var(--height); - padding: token('spacing.medium'); - color: token('color.background.neutral.0.foreground.primary'); + padding: token("spacing.medium"); + color: token("color.background.neutral.0.foreground.primary"); border-top-right-radius: 0.75rem; border-bottom-right-radius: 0.75rem; display: flex; } .timeSelectorSegment:focus { - background: token('color.background.neutral.2.background'); + background: token("color.background.neutral.2.background"); } .calendarButton { - background-color: token('color.background.neutral.0.background'); + background-color: token("color.background.neutral.0.background"); border: none; border-top-right-radius: 0.75rem; border-bottom-right-radius: 0.75rem; - padding: token('spacing.xSmall') token('spacing.medium'); + padding: token("spacing.xSmall") token("spacing.medium"); cursor: pointer; margin: 2px 0; } -.dateSelector input[type='date']:focus, -.timeSelector input[type='time']:focus { +.dateSelector input[type="date"]:focus, +.timeSelector input[type="time"]:focus { outline: 0; } .dateSelector:focus-within, .timeSelector:focus-within { - box-shadow: inset 0 0 0 token('border.width.medium') - token('color.interactive.2.outline.background'); + box-shadow: inset 0 0 0 token("border.width.medium") + token("color.interactive.2.outline.background"); } .calendarDialog { - padding: token('spacing.xSmall'); - background: token('color.background.neutral.0.background'); + padding: token("spacing.xSmall"); + background: token("color.background.neutral.0.background"); box-shadow: 0.2rem 0.2rem 0.3rem rgba(0, 0, 0, 0.15); } .calendarDialog__header { display: flex; - gap: token('spacing.medium'); + gap: token("spacing.medium"); justify-content: center; align-items: center; - padding: token('spacing.small'); + padding: token("spacing.small"); } .calendarDialog__title { - composes: typo-heading__m from '@atb/theme/typography.module.css'; + composes: typo-heading__m from "@atb/theme/typography.module.css"; } .calendarDialog__headerButtons { background: none; border: none; - padding: token('spacing.xSmall') token('spacing.medium'); + padding: token("spacing.xSmall") token("spacing.medium"); cursor: pointer; } @@ -152,7 +152,7 @@ } .calendarGrid__cell { - padding: token('spacing.xSmall') token('spacing.medium'); + padding: token("spacing.xSmall") token("spacing.medium"); cursor: pointer; text-align: center; } @@ -161,18 +161,18 @@ cursor: default; } .calendarGrid__cell[data-selected] { - background-color: token('color.interactive.2.active.background'); - color: token('color.interactive.2.active.foreground.primary'); + background-color: token("color.interactive.2.active.background"); + color: token("color.interactive.2.active.foreground.primary"); font-weight: bold; - border-radius: token('border.radius.small'); + border-radius: token("border.radius.small"); } :global(.dark) .dateSelector - input[type='date']::-webkit-calendar-picker-indicator, + input[type="date"]::-webkit-calendar-picker-indicator, :global(.dark) .timeSelector - input[type='time']::-webkit-calendar-picker-indicator { + input[type="time"]::-webkit-calendar-picker-indicator { filter: invert(1); } @@ -190,6 +190,6 @@ .timePickerButton { background-color: transparent; border: none; - padding: token('spacing.xSmall') token('spacing.medium'); + padding: token("spacing.xSmall") token("spacing.medium"); cursor: pointer; } diff --git a/src/widget.module.css b/src/widget.module.css index 9f19ccc..6f632ec 100644 --- a/src/widget.module.css +++ b/src/widget.module.css @@ -1,4 +1,4 @@ -@import '@atb/theme/theme.css'; +@import "@atb/theme/theme.css"; @value assistant: "./styles/assistant.module.css"; @value search: "./styles/search.module.css"; @value selector: "./styles/selector.module.css"; @@ -20,7 +20,7 @@ } .wrapper { - background-color: token('color.background.neutral.0.background'); + background-color: token("color.background.neutral.0.background"); box-sizing: border-box; } .wrapper * { @@ -47,34 +47,34 @@ list-style-position: inside; padding: 0; margin: 0; - gap: token('spacing.xLarge'); - color: token('color.background.accent.0.foreground.primary'); + gap: token("spacing.xLarge"); + color: token("color.background.accent.0.foreground.primary"); } .tabs a { text-decoration: none; display: block; - padding-bottom: token('spacing.medium'); - color: token('color.background.accent.0.foreground.primary'); - border-bottom: 1px solid token('color.foreground.dynamic.secondary'); + padding-bottom: token("spacing.medium"); + color: token("color.background.accent.0.foreground.primary"); + border-bottom: 1px solid token("color.foreground.dynamic.secondary"); box-sizing: border-box; } a.tabSelected { text-decoration: none; - border-bottom: 2px solid token('color.foreground.dynamic.primary'); + border-bottom: 2px solid token("color.foreground.dynamic.primary"); font-weight: var(--baseTypo-body__m__strong-fontWeight, 500); } .tabs a:hover { - color: token('color.background.accent.1.foreground.primary'); + color: token("color.background.accent.1.foreground.primary"); } .tabs a:active { - color: token('color.background.accent.0.foreground.primary'); + color: token("color.background.accent.0.foreground.primary"); } .main { composes: main from assistant; margin-top: 0; - padding-top: token('spacing.large'); + padding-top: token("spacing.large"); padding-left: 0; padding-right: 0; padding-bottom: 2.75rem; @@ -102,7 +102,7 @@ a.tabSelected { } .search_container { composes: container from search; - background-color: token('color.background.neutral.0.background'); + background-color: token("color.background.neutral.0.background"); } .search_inputContainer { composes: inputContainer from search; @@ -119,7 +119,7 @@ a.tabSelected { } .search_input::placeholder { - color: token('color.foreground.dynamic.secondary'); + color: token("color.foreground.dynamic.secondary"); opacity: 1; } @@ -160,10 +160,11 @@ a.tabSelected { composes: option__input from selector; } .selector_option__input:checked + .selector_option__label { - color: token('color.foreground.dynamic.primary'); - background: token('color.interactive.0.active.background'); - border-radius: token('border.radius.regular'); - border: token('border.width.medium') solid token('color.interactive.2.outline.background'); + color: token("color.foreground.dynamic.primary"); + background: token("color.interactive.0.active.background"); + border-radius: token("border.radius.regular"); + border: token("border.width.medium") solid + token("color.interactive.2.outline.background"); } .selector_dateAndTimeSelectorsWrapper { @@ -187,7 +188,7 @@ a.tabSelected { .buttonGroup { display: flex; justify-content: end; - background-color: token('color.background.neutral.0.background'); + background-color: token("color.background.neutral.0.background"); } .button, @@ -205,14 +206,14 @@ a.tabSelected { display: flex; flex-wrap: nowrap; - gap: token('spacing.small'); + gap: token("spacing.small"); background: transparent; color: currentColor; transition: all 100ms ease-in; - padding: token('spacing.medium'); - border-radius: token('border.radius.circle'); + padding: token("spacing.medium"); + border-radius: token("border.radius.circle"); } .button span, .buttonLightOutline span { @@ -221,64 +222,64 @@ a.tabSelected { } .button { - color: token('color.foreground.inverse.primary'); - background-color: token('color.interactive.0.default.background'); + color: token("color.foreground.inverse.primary"); + background-color: token("color.interactive.0.default.background"); } .button:visited { - color: token('color.foreground.dynamic.primary'); - background-color: token('color.interactive.0.active.background'); - box-shadow: inset 0 0 0 token('border.width.slim') - token('color.interactive.0.default.foreground.primary'); + color: token("color.foreground.dynamic.primary"); + background-color: token("color.interactive.0.active.background"); + box-shadow: inset 0 0 0 token("border.width.slim") + token("color.interactive.0.default.foreground.primary"); } .button:hover { - color: token('color.foreground.dynamic.primary'); - background-color: token('color.interactive.0.active.background'); + color: token("color.foreground.dynamic.primary"); + background-color: token("color.interactive.0.active.background"); } .button:active { - background-color: token('color.interactive.0.active.background'); - color: token('color.interactive.0.active.foreground.primary'); + background-color: token("color.interactive.0.active.background"); + color: token("color.interactive.0.active.foreground.primary"); } .button:disabled, .button.button--disabled { - background-color: token('color.interactive.0.disabled.background'); - color: token('color.interactive.0.disabled.foreground.primary'); + background-color: token("color.interactive.0.disabled.background"); + color: token("color.interactive.0.disabled.foreground.primary"); } .button:focus { outline: 0; - box-shadow: inset 0 0 0 token('border.width.medium') - token('color.interactive.0.outline.background'); + box-shadow: inset 0 0 0 token("border.width.medium") + token("color.interactive.0.outline.background"); } /* Interactive button 0 bordered alternative background. */ .buttonLightOutline, .buttonLightOutline:visited { - background-color: token('color.interactive.0.default.background'); - color: token('color.interactive.0.default.foreground.primary'); - box-shadow: inset 0 0 0 token('border.width.slim') - token('color.interactive.0.default.foreground.primary'); + background-color: token("color.interactive.0.default.background"); + color: token("color.interactive.0.default.foreground.primary"); + box-shadow: inset 0 0 0 token("border.width.slim") + token("color.interactive.0.default.foreground.primary"); } .buttonLightOutline:hover { - background-color: token('color.interactive.0.hover.background'); - color: token('color.interactive.0.hover.foreground.primary'); + background-color: token("color.interactive.0.hover.background"); + color: token("color.interactive.0.hover.foreground.primary"); } .buttonLightOutline:active { - background-color: token('color.interactive.1.hover.background'); - color: token('color.interactive.1.active.foreground.primary'); + background-color: token("color.interactive.1.hover.background"); + color: token("color.interactive.1.active.foreground.primary"); } .buttonLightOutline:disabled, .buttonLightOutline.button--disabled { - background-color: token('color.interactive.0.disabled.background'); - color: token('color.interactive.0.disabled.foreground.primary'); + background-color: token("color.interactive.0.disabled.background"); + color: token("color.interactive.0.disabled.foreground.primary"); } .buttonLightOutline:focus { outline: 0; - box-shadow: inset 0 0 0 token('border.width.medium') - token('color.interactive.0.active.background'); + box-shadow: inset 0 0 0 token("border.width.medium") + token("color.interactive.0.active.background"); } /* Autocomplete */ @@ -287,15 +288,15 @@ a.tabSelected { composes: item from search; } .listItem:not(:last-child) { - border-bottom: 1px solid token('color.border.primary.background'); + border-bottom: 1px solid token("color.border.primary.background"); } -.listItem[aria-selected='true'], +.listItem[aria-selected="true"], .listItem:hover { - color: token('color.interactive.2.hover.foreground.primary'); - background-color: token('color.interactive.2.hover.background'); - outline: token('border.width.medium') solid - token('color.interactive.2.outline.background'); - border-radius: token('border.radius.small'); + color: token("color.interactive.2.hover.foreground.primary"); + background-color: token("color.interactive.2.hover.background"); + outline: token("border.width.medium") solid + token("color.interactive.2.outline.background"); + border-radius: token("border.radius.small"); } .itemTitle { @@ -321,15 +322,15 @@ a.tabSelected { left: 0; list-style-position: inside; margin: 0; - background-color: token('color.background.neutral.0.background'); + background-color: token("color.background.neutral.0.background"); } .messageBox { - background: token('color.status.error.primary.background'); - color: token('color.status.error.primary.foreground.primary'); + background: token("color.status.error.primary.background"); + color: token("color.status.error.primary.foreground.primary"); display: flex; - padding: token('spacing.medium'); - border-radius: token('border.radius.regular'); + padding: token("spacing.medium"); + border-radius: token("border.radius.regular"); } .messageBox[hidden] { display: none; @@ -346,8 +347,8 @@ a.tabSelected { } /* Change the layout to a single column layout instead of the default layout. */ -[data-layout='singleColumn'], -[data-layout='compact'] { +[data-layout="singleColumn"], +[data-layout="compact"] { .main { grid-template-columns: 1fr; } @@ -359,6 +360,6 @@ a.tabSelected { } } -[data-layout='compact'] .buttonGroup { +[data-layout="compact"] .buttonGroup { justify-content: start; }