From 46635a5d1473d38634455069c5b168db2f2cc878 Mon Sep 17 00:00:00 2001 From: Aaron Casanova <32409546+aaronccasanova@users.noreply.github.com> Date: Thu, 14 Sep 2023 13:45:26 -0700 Subject: [PATCH 1/8] Move token-groups to base theme directory --- polaris-tokens/src/index.ts | 22 +++++++-------- polaris-tokens/src/themes/base.ts | 28 ------------------- .../{token-groups => themes/base}/border.ts | 7 +++-- .../base}/breakpoints.ts | 4 +-- .../{token-groups => themes/base}/color.ts | 9 +++--- .../src/{token-groups => themes/base}/font.ts | 7 +++-- .../{token-groups => themes/base}/height.ts | 6 ++-- polaris-tokens/src/themes/base/index.ts | 28 +++++++++++++++++++ .../{token-groups => themes/base}/motion.ts | 4 +-- .../{token-groups => themes/base}/shadow.ts | 5 ++-- .../{token-groups => themes/base}/space.ts | 7 +++-- .../{token-groups => themes/base}/width.ts | 6 ++-- .../{token-groups => themes/base}/zIndex.ts | 4 +-- polaris-tokens/src/utilities.ts | 2 +- .../pages/api/tokens/v0/index.tsx | 2 +- 15 files changed, 73 insertions(+), 68 deletions(-) delete mode 100644 polaris-tokens/src/themes/base.ts rename polaris-tokens/src/{token-groups => themes/base}/border.ts (92%) rename polaris-tokens/src/{token-groups => themes/base}/breakpoints.ts (92%) rename polaris-tokens/src/{token-groups => themes/base}/color.ts (98%) rename polaris-tokens/src/{token-groups => themes/base}/font.ts (94%) rename polaris-tokens/src/{token-groups => themes/base}/height.ts (90%) create mode 100644 polaris-tokens/src/themes/base/index.ts rename polaris-tokens/src/{token-groups => themes/base}/motion.ts (96%) rename polaris-tokens/src/{token-groups => themes/base}/shadow.ts (96%) rename polaris-tokens/src/{token-groups => themes/base}/space.ts (91%) rename polaris-tokens/src/{token-groups => themes/base}/width.ts (90%) rename polaris-tokens/src/{token-groups => themes/base}/zIndex.ts (88%) diff --git a/polaris-tokens/src/index.ts b/polaris-tokens/src/index.ts index c9727021bf7..99934a1caca 100644 --- a/polaris-tokens/src/index.ts +++ b/polaris-tokens/src/index.ts @@ -1,6 +1,6 @@ export * from './metadata'; export * from './utilities'; -export {breakpointsAliases} from './token-groups/breakpoints'; +export {breakpointsAliases} from './themes/base/breakpoints'; export type { TokenGroup, Tokens, @@ -17,13 +17,13 @@ export type { BorderTokenName, BorderRadiusScale, BorderWidthScale, -} from './token-groups/border'; +} from './themes/base/border'; export type { BreakpointsTokenGroup, BreakpointsTokenName, BreakpointsAlias, -} from './token-groups/breakpoints'; +} from './themes/base/breakpoints'; export type { ColorTokenGroup, @@ -32,7 +32,7 @@ export type { ColorBorderAlias, ColorIconAlias, ColorTextAlias, -} from './token-groups/color'; +} from './themes/base/color'; export type { FontTokenGroup, @@ -40,41 +40,41 @@ export type { FontSizeScale, FontLineHeightScale, FontWeightAlias, -} from './token-groups/font'; +} from './themes/base/font'; export type { HeightTokenGroup, HeightTokenName, HeightScale, -} from './token-groups/height'; +} from './themes/base/height'; export type { MotionTokenGroup, MotionTokenName, MotionDurationScale, MotionKeyframesAlias, -} from './token-groups/motion'; +} from './themes/base/motion'; export type { ShadowTokenGroup, ShadowTokenName, ShadowAlias, -} from './token-groups/shadow'; +} from './themes/base/shadow'; export type { SpaceTokenGroup, SpaceTokenName, SpaceScale, -} from './token-groups/space'; +} from './themes/base/space'; export type { WidthTokenGroup, WidthTokenName, WidthScale, -} from './token-groups/width'; +} from './themes/base/width'; export type { ZIndexTokenGroup, ZIndexTokenName, ZIndexZScale, -} from './token-groups/zIndex'; +} from './themes/base/zIndex'; diff --git a/polaris-tokens/src/themes/base.ts b/polaris-tokens/src/themes/base.ts deleted file mode 100644 index e91c21af57d..00000000000 --- a/polaris-tokens/src/themes/base.ts +++ /dev/null @@ -1,28 +0,0 @@ -import {createExact, tokensToRems} from '../utilities'; -import {border} from '../token-groups/border'; -import {breakpoints} from '../token-groups/breakpoints'; -import {color} from '../token-groups/color'; -import {font} from '../token-groups/font'; -import {height} from '../token-groups/height'; -import {motion} from '../token-groups/motion'; -import {shadow} from '../token-groups/shadow'; -import {space} from '../token-groups/space'; -import {width} from '../token-groups/width'; -import {zIndex} from '../token-groups/zIndex'; - -import type {MetaThemeShape} from './types'; - -const createMetaThemeBase = createExact(); - -export const metaThemeBase = createMetaThemeBase({ - breakpoints: tokensToRems(breakpoints), - border: tokensToRems(border), - color, - font: tokensToRems(font), - height: tokensToRems(height), - motion, - shadow: tokensToRems(shadow), - space: tokensToRems(space), - width: tokensToRems(width), - zIndex, -}); diff --git a/polaris-tokens/src/token-groups/border.ts b/polaris-tokens/src/themes/base/border.ts similarity index 92% rename from polaris-tokens/src/token-groups/border.ts rename to polaris-tokens/src/themes/base/border.ts index 9a0c7d13049..21d11fe9698 100644 --- a/polaris-tokens/src/token-groups/border.ts +++ b/polaris-tokens/src/themes/base/border.ts @@ -1,5 +1,6 @@ -import {size} from '../size'; -import type {Experimental, MetadataProperties} from '../types'; +import {size} from '../../size'; +import type {Experimental} from '../../types'; +import type {MetaTokenProperties} from '../types'; type BorderRadiusScaleExperimental = Experimental<'0' | '1_5'>; @@ -46,7 +47,7 @@ export type BorderTokenGroup = { }; export const border: { - [TokenName in BorderTokenName]: MetadataProperties; + [TokenName in BorderTokenName]: MetaTokenProperties; } = { 'border-radius-0': { value: size[0], diff --git a/polaris-tokens/src/token-groups/breakpoints.ts b/polaris-tokens/src/themes/base/breakpoints.ts similarity index 92% rename from polaris-tokens/src/token-groups/breakpoints.ts rename to polaris-tokens/src/themes/base/breakpoints.ts index 76fc182219f..4dd3b2d96d8 100644 --- a/polaris-tokens/src/token-groups/breakpoints.ts +++ b/polaris-tokens/src/themes/base/breakpoints.ts @@ -1,4 +1,4 @@ -import type {MetadataProperties} from '../types'; +import type {MetaTokenProperties} from '../types'; // NOTE: Order is important here: smallest -> largest // Exporting as const means it will be typed as a Tuple instead of string[] @@ -14,7 +14,7 @@ export type BreakpointsTokenGroup = { }; export const breakpoints: { - [TokenName in BreakpointsTokenName]: MetadataProperties; + [TokenName in BreakpointsTokenName]: MetaTokenProperties; } = { 'breakpoints-xs': { value: '0px', diff --git a/polaris-tokens/src/token-groups/color.ts b/polaris-tokens/src/themes/base/color.ts similarity index 98% rename from polaris-tokens/src/token-groups/color.ts rename to polaris-tokens/src/themes/base/color.ts index 60890d87213..f040652db85 100644 --- a/polaris-tokens/src/token-groups/color.ts +++ b/polaris-tokens/src/themes/base/color.ts @@ -1,6 +1,7 @@ -import type {MetadataProperties, Experimental} from '../types'; -import * as colors from '../colors'; -import * as colorsExperimental from '../colors-experimental'; +import type {Experimental} from '../../types'; +import type {MetaTokenProperties} from '../types'; +import * as colors from '../../colors'; +import * as colorsExperimental from '../../colors-experimental'; export type ColorBackgroundAlias = | 'bg' @@ -215,7 +216,7 @@ export type ColorTokenGroup = { }; export const color: { - [TokenName in ColorTokenName]: MetadataProperties; + [TokenName in ColorTokenName]: MetaTokenProperties; } = { 'color-bg-inverse': { value: colors.gray[900], diff --git a/polaris-tokens/src/token-groups/font.ts b/polaris-tokens/src/themes/base/font.ts similarity index 94% rename from polaris-tokens/src/token-groups/font.ts rename to polaris-tokens/src/themes/base/font.ts index 9b63c4c42a5..1a80dff4dc8 100644 --- a/polaris-tokens/src/token-groups/font.ts +++ b/polaris-tokens/src/themes/base/font.ts @@ -1,5 +1,6 @@ -import {size} from '../size'; -import type {MetadataProperties, Experimental} from '../types'; +import {size} from '../../size'; +import type {Experimental} from '../../types'; +import type {MetaTokenProperties} from '../types'; type FontFamilyAlias = 'sans' | 'mono'; @@ -55,7 +56,7 @@ export type FontTokenGroup = { }; export const font: { - [TokenName in FontTokenName]: MetadataProperties; + [TokenName in FontTokenName]: MetaTokenProperties; } = { 'font-family-sans': { value: diff --git a/polaris-tokens/src/token-groups/height.ts b/polaris-tokens/src/themes/base/height.ts similarity index 90% rename from polaris-tokens/src/token-groups/height.ts rename to polaris-tokens/src/themes/base/height.ts index bff3bb4060e..91367149592 100644 --- a/polaris-tokens/src/token-groups/height.ts +++ b/polaris-tokens/src/themes/base/height.ts @@ -1,5 +1,5 @@ -import {size} from '../size'; -import type {MetadataProperties} from '../types'; +import {size} from '../../size'; +import type {MetaTokenProperties} from '../types'; export type HeightScale = | '0' @@ -30,7 +30,7 @@ export type HeightTokenGroup = { }; export const height: { - [TokenName in HeightTokenName]: MetadataProperties; + [TokenName in HeightTokenName]: MetaTokenProperties; } = { 'height-0': { value: size[0], diff --git a/polaris-tokens/src/themes/base/index.ts b/polaris-tokens/src/themes/base/index.ts new file mode 100644 index 00000000000..b94d978b47e --- /dev/null +++ b/polaris-tokens/src/themes/base/index.ts @@ -0,0 +1,28 @@ +import {createExact, tokensToRems} from '../../utilities'; +import type {MetaThemeShape} from '../types'; + +import {breakpoints} from './breakpoints'; +import {color} from './color'; +import {font} from './font'; +import {height} from './height'; +import {motion} from './motion'; +import {shadow} from './shadow'; +import {space} from './space'; +import {width} from './width'; +import {zIndex} from './zIndex'; +import {border} from './border'; + +const createMetaThemeBase = createExact(); + +export const metaThemeBase = createMetaThemeBase({ + breakpoints: tokensToRems(breakpoints), + border: tokensToRems(border), + color, + font: tokensToRems(font), + height: tokensToRems(height), + motion, + shadow: tokensToRems(shadow), + space: tokensToRems(space), + width: tokensToRems(width), + zIndex, +}); diff --git a/polaris-tokens/src/token-groups/motion.ts b/polaris-tokens/src/themes/base/motion.ts similarity index 96% rename from polaris-tokens/src/token-groups/motion.ts rename to polaris-tokens/src/themes/base/motion.ts index 6bf7428badd..f03feaae4c8 100644 --- a/polaris-tokens/src/token-groups/motion.ts +++ b/polaris-tokens/src/themes/base/motion.ts @@ -1,4 +1,4 @@ -import type {MetadataProperties} from '../types'; +import type {MetaTokenProperties} from '../types'; export type MotionDurationScale = | '0' @@ -39,7 +39,7 @@ export type MotionTokenGroup = { }; export const motion: { - [TokenName in MotionTokenName]: MetadataProperties; + [TokenName in MotionTokenName]: MetaTokenProperties; } = { 'motion-duration-0': { value: '0ms', diff --git a/polaris-tokens/src/token-groups/shadow.ts b/polaris-tokens/src/themes/base/shadow.ts similarity index 96% rename from polaris-tokens/src/token-groups/shadow.ts rename to polaris-tokens/src/themes/base/shadow.ts index c8461b0b547..868628f4f71 100644 --- a/polaris-tokens/src/token-groups/shadow.ts +++ b/polaris-tokens/src/themes/base/shadow.ts @@ -1,4 +1,5 @@ -import type {MetadataProperties, Experimental} from '../types'; +import type {Experimental} from '../../types'; +import type {MetaTokenProperties} from '../types'; type ShadowAliasExperimental = Experimental< | 'bevel' @@ -37,7 +38,7 @@ export type ShadowTokenGroup = { }; export const shadow: { - [TokenName in ShadowTokenName]: MetadataProperties; + [TokenName in ShadowTokenName]: MetaTokenProperties; } = { 'shadow-inset-lg': { value: 'inset 0px 0px 7px 2px rgba(31, 33, 36, 0.18)', diff --git a/polaris-tokens/src/token-groups/space.ts b/polaris-tokens/src/themes/base/space.ts similarity index 91% rename from polaris-tokens/src/token-groups/space.ts rename to polaris-tokens/src/themes/base/space.ts index e7097e00d3d..c937cd1c8c5 100644 --- a/polaris-tokens/src/token-groups/space.ts +++ b/polaris-tokens/src/themes/base/space.ts @@ -1,5 +1,6 @@ -import {size} from '../size'; -import type {MetadataProperties, Experimental} from '../types'; +import {size} from '../../size'; +import type {Experimental} from '../../types'; +import type {MetaTokenProperties} from '../types'; type SpaceScaleExperimental = Experimental<'1_5'>; @@ -46,7 +47,7 @@ export type SpaceTokenGroup = { }; export const space: { - [TokenName in SpaceTokenName]: MetadataProperties; + [TokenName in SpaceTokenName]: MetaTokenProperties; } = { 'space-0': { value: size[0], diff --git a/polaris-tokens/src/token-groups/width.ts b/polaris-tokens/src/themes/base/width.ts similarity index 90% rename from polaris-tokens/src/token-groups/width.ts rename to polaris-tokens/src/themes/base/width.ts index 242b6c29740..32f47f84771 100644 --- a/polaris-tokens/src/token-groups/width.ts +++ b/polaris-tokens/src/themes/base/width.ts @@ -1,5 +1,5 @@ -import {size} from '../size'; -import type {MetadataProperties} from '../types'; +import {size} from '../../size'; +import type {MetaTokenProperties} from '../types'; export type WidthScale = | '0' @@ -30,7 +30,7 @@ export type WidthTokenGroup = { }; export const width: { - [TokenName in WidthTokenName]: MetadataProperties; + [TokenName in WidthTokenName]: MetaTokenProperties; } = { 'width-0': { value: size[0], diff --git a/polaris-tokens/src/token-groups/zIndex.ts b/polaris-tokens/src/themes/base/zIndex.ts similarity index 88% rename from polaris-tokens/src/token-groups/zIndex.ts rename to polaris-tokens/src/themes/base/zIndex.ts index 2aef2296b60..513d47b2363 100644 --- a/polaris-tokens/src/token-groups/zIndex.ts +++ b/polaris-tokens/src/themes/base/zIndex.ts @@ -1,4 +1,4 @@ -import type {MetadataProperties} from '../types'; +import type {MetaTokenProperties} from '../types'; export type ZIndexZScale = | '1' @@ -21,7 +21,7 @@ export type ZIndexTokenGroup = { }; export const zIndex: { - [TokenName in ZIndexTokenName]: MetadataProperties; + [TokenName in ZIndexTokenName]: MetaTokenProperties; } = { 'z-index-1': { value: '100', diff --git a/polaris-tokens/src/utilities.ts b/polaris-tokens/src/utilities.ts index b400714a6bc..f496ab4e007 100644 --- a/polaris-tokens/src/utilities.ts +++ b/polaris-tokens/src/utilities.ts @@ -3,7 +3,7 @@ import type { breakpoints as metaBreakpointsTokenGroup, BreakpointsTokenGroup, BreakpointsTokenName, -} from './token-groups/breakpoints'; +} from './themes/base/breakpoints'; const BASE_FONT_SIZE = 16; diff --git a/polaris.shopify.com/pages/api/tokens/v0/index.tsx b/polaris.shopify.com/pages/api/tokens/v0/index.tsx index 5eb8b8535b6..17f6cbb9761 100644 --- a/polaris.shopify.com/pages/api/tokens/v0/index.tsx +++ b/polaris.shopify.com/pages/api/tokens/v0/index.tsx @@ -5,7 +5,7 @@ import {tokenGroupKeys} from './[tokens]'; const getGithubUrl = (file: string) => { const fileName = `${file}.ts`; const githubUrl = 'https://github.com/Shopify/polaris/blob'; - const filePath = `/main/polaris-tokens/src/token-groups/${fileName}`; + const filePath = `/main/polaris-tokens/src/themes/base/${fileName}`; return `${githubUrl}${filePath}`; }; From 239d819003f4b55dd703c76066c4c0c8ca8c4248 Mon Sep 17 00:00:00 2001 From: Laura Griffee Date: Thu, 14 Sep 2023 16:29:36 -0600 Subject: [PATCH 2/8] Update public primitive `base` and `light-uplift` theme scales --- .changeset/tasty-ducks-punch.md | 6 ++ polaris-tokens/src/themes/base/border.ts | 27 +++-- polaris-tokens/src/themes/base/font.ts | 29 +++--- polaris-tokens/src/themes/base/space.ts | 36 +++---- polaris-tokens/src/themes/light-uplift.ts | 117 ++++++++++++++++------ 5 files changed, 138 insertions(+), 77 deletions(-) create mode 100644 .changeset/tasty-ducks-punch.md diff --git a/.changeset/tasty-ducks-punch.md b/.changeset/tasty-ducks-punch.md new file mode 100644 index 00000000000..50a857dfe02 --- /dev/null +++ b/.changeset/tasty-ducks-punch.md @@ -0,0 +1,6 @@ +--- +'@shopify/polaris-tokens': patch +'polaris.shopify.com': patch +--- + +Update public primitive `base` and `light-uplift` theme scales diff --git a/polaris-tokens/src/themes/base/border.ts b/polaris-tokens/src/themes/base/border.ts index 21d11fe9698..7d69d13d4db 100644 --- a/polaris-tokens/src/themes/base/border.ts +++ b/polaris-tokens/src/themes/base/border.ts @@ -1,4 +1,3 @@ -import {size} from '../../size'; import type {Experimental} from '../../types'; import type {MetaTokenProperties} from '../types'; @@ -50,31 +49,31 @@ export const border: { [TokenName in BorderTokenName]: MetaTokenProperties; } = { 'border-radius-0': { - value: size[0], + value: '0px', }, 'border-radius-050': { - value: size['050'], + value: '2px', }, 'border-radius-100': { - value: size[100], + value: '4px', }, 'border-radius-150': { - value: size[150], + value: '6px', }, 'border-radius-200': { - value: size[200], + value: '8px', }, 'border-radius-300': { - value: size[300], + value: '12px', }, 'border-radius-400': { - value: size[400], + value: '16px', }, 'border-radius-500': { - value: size[500], + value: '20px', }, 'border-radius-750': { - value: size[750], + value: '30px', }, 'border-radius-full': { value: '9999px', @@ -107,16 +106,16 @@ export const border: { value: '6px', }, 'border-width-0165': { - value: size['0165'], + value: '0.66px', }, 'border-width-025': { - value: size['025'], + value: '1px', }, 'border-width-050': { - value: size['050'], + value: '2px', }, 'border-width-100': { - value: size[100], + value: '4px', }, 'border-width-1': { value: '1px', diff --git a/polaris-tokens/src/themes/base/font.ts b/polaris-tokens/src/themes/base/font.ts index 1a80dff4dc8..3b6b4c77377 100644 --- a/polaris-tokens/src/themes/base/font.ts +++ b/polaris-tokens/src/themes/base/font.ts @@ -1,4 +1,3 @@ -import {size} from '../../size'; import type {Experimental} from '../../types'; import type {MetaTokenProperties} from '../types'; @@ -67,22 +66,22 @@ export const font: { "ui-monospace, SFMono-Regular, 'SF Mono', Consolas, 'Liberation Mono', Menlo, monospace", }, 'font-size-275': { - value: size[275], + value: '11px', }, 'font-size-325': { - value: size[325], + value: '13px', }, 'font-size-350': { - value: size[350], + value: '14px', }, 'font-size-750': { - value: size[750], + value: '28px', }, 'font-size-900': { - value: size[900], + value: '32px', }, 'font-size-1000': { - value: size[1000], + value: '40px', }, 'font-size-70-experimental': { value: '11px', @@ -127,28 +126,28 @@ export const font: { value: '700', }, 'font-line-height-300': { - value: size[300], + value: '12px', }, 'font-line-height-400': { - value: size[400], + value: '16px', }, 'font-line-height-500': { - value: size[500], + value: '20px', }, 'font-line-height-600': { - value: size[600], + value: '24px', }, 'font-line-height-700': { - value: size[700], + value: '28px', }, 'font-line-height-800': { - value: size[800], + value: '32px', }, 'font-line-height-1000': { - value: size[1000], + value: '40px', }, 'font-line-height-1200': { - value: size[1200], + value: '48px', }, 'font-line-height-075-experimental': { value: '12px', diff --git a/polaris-tokens/src/themes/base/space.ts b/polaris-tokens/src/themes/base/space.ts index c937cd1c8c5..54d345ec4a2 100644 --- a/polaris-tokens/src/themes/base/space.ts +++ b/polaris-tokens/src/themes/base/space.ts @@ -50,58 +50,58 @@ export const space: { [TokenName in SpaceTokenName]: MetaTokenProperties; } = { 'space-0': { - value: size[0], + value: '0px', }, 'space-025': { - value: size['025'], + value: '1px', }, 'space-050': { - value: size['050'], + value: '2px', }, 'space-100': { - value: size[100], + value: '4px', }, 'space-150': { - value: size[150], + value: '6px', }, 'space-200': { - value: size[200], + value: '8px', }, 'space-300': { - value: size[300], + value: '12px', }, 'space-400': { - value: size[400], + value: '16px', }, 'space-500': { - value: size[500], + value: '20px', }, 'space-600': { - value: size[600], + value: '24px', }, 'space-800': { - value: size[800], + value: '32px', }, 'space-1000': { - value: size[1000], + value: '40px', }, 'space-1200': { - value: size[1200], + value: '48px', }, 'space-1600': { - value: size[1600], + value: '64px', }, 'space-2000': { - value: size[2000], + value: '80px', }, 'space-2400': { - value: size[2400], + value: '96px', }, 'space-2800': { - value: size[2800], + value: '112px', }, 'space-3200': { - value: size[3200], + value: '128px', }, 'space-05': { value: '2px', diff --git a/polaris-tokens/src/themes/light-uplift.ts b/polaris-tokens/src/themes/light-uplift.ts index 2e5eb408cd7..97c24c48565 100644 --- a/polaris-tokens/src/themes/light-uplift.ts +++ b/polaris-tokens/src/themes/light-uplift.ts @@ -1,40 +1,27 @@ import * as colors from '../colors-experimental'; +import {size} from '../size'; import {createMetaTheme, createMetaThemePartial} from './utils'; export const metaThemeLightUpliftPartial = createMetaThemePartial({ - motion: { - 'motion-ease-out': {value: 'cubic-bezier(0.19, 0.91, 0.38, 1)'}, - }, - font: { - 'font-family-sans': { - value: - "'Inter', -apple-system, BlinkMacSystemFont, 'San Francisco', 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif", - }, - 'font-size-500': {value: '30px'}, - 'font-size-600': {value: '36px'}, - }, - shadow: { - 'shadow-inset-lg': { - value: - 'inset -1px 0px 1px rgba(0, 0, 0, 0.2), inset 1px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 2px 1px rgba(0, 0, 0, 0.6)', - }, - 'shadow-inset-md': { - value: - 'inset -1px 0px 1px rgba(0, 0, 0, 0.12), inset 1px 0px 1px rgba(0, 0, 0, 0.12), inset 0px 2px 1px rgba(0, 0, 0, 0.2)', - }, - 'shadow-inset-sm': { - value: - 'inset 0px 1px 1px rgba(0, 0, 0, 0.15), inset 0px 1px 2px rgba(255, 255, 255, 0.15)', - }, - 'shadow-xs': {value: '0px 1px 0px rgba(0, 0, 0, 0.07)'}, - 'shadow-sm': {value: '0px 3px 1px -1px rgba(0, 0, 0, 0.07)'}, - 'shadow-md': {value: '0px 4px 6px -2px rgba(0, 0, 0, 0.2)'}, - 'shadow-lg': {value: '0px 8px 16px -4px rgba(0, 0, 0, 0.22)'}, - 'shadow-xl': {value: '0px 12px 20px -8px rgba(0, 0, 0, 0.24)'}, - 'shadow-2xl': {value: '0px 20px 20px -8px rgba(0, 0, 0, 0.28)'}, + border: { + // v12.0.0 + 'border-radius-0': {value: size[0]}, + 'border-radius-050': {value: size['050']}, + 'border-radius-100': {value: size[100]}, + 'border-radius-150': {value: size[150]}, + 'border-radius-200': {value: size[200]}, + 'border-radius-300': {value: size[300]}, + 'border-radius-400': {value: size[400]}, + 'border-radius-500': {value: size[500]}, + 'border-radius-750': {value: size[750]}, + 'border-width-0165': {value: size['0165']}, + 'border-width-025': {value: size['025']}, + 'border-width-050': {value: size['050']}, + 'border-width-100': {value: size[100]}, }, color: { + // v11.0.0 'color-bg-inverse': {value: colors.gray[16]()}, 'color-bg-inset-strong': {value: colors.gray[15]()}, 'color-bg-inverse-hover': {value: colors.gray[14]()}, @@ -170,6 +157,76 @@ export const metaThemeLightUpliftPartial = createMetaThemePartial({ 'color-text-magic-strong': {value: colors.purple[15]}, 'color-text-magic': {value: colors.purple[14]}, }, + font: { + // v12.0.0 + 'font-size-275': {value: size[275]}, + 'font-size-325': {value: size[325]}, + 'font-size-350': {value: size[350]}, + 'font-size-750': {value: size[750]}, + 'font-size-900': {value: size[900]}, + 'font-size-1000': {value: size[1000]}, + 'font-line-height-300': {value: size[300]}, + 'font-line-height-400': {value: size[400]}, + 'font-line-height-500': {value: size[500]}, + 'font-line-height-600': {value: size[600]}, + 'font-line-height-700': {value: size[700]}, + 'font-line-height-800': {value: size[800]}, + 'font-line-height-1000': {value: size[1000]}, + 'font-line-height-1200': {value: size[1200]}, + // v11.0.0 + 'font-family-sans': { + value: + "'Inter', -apple-system, BlinkMacSystemFont, 'San Francisco', 'Segoe UI', Roboto, 'Helvetica Neue', sans-serif", + }, + 'font-size-500': {value: '30px'}, + 'font-size-600': {value: '36px'}, + }, + motion: { + // v11.0.0 + 'motion-ease-out': {value: 'cubic-bezier(0.19, 0.91, 0.38, 1)'}, + }, + space: { + // v12.0.0 + 'space-0': {value: size[0]}, + 'space-025': {value: size['025']}, + 'space-050': {value: size['050']}, + 'space-100': {value: size[100]}, + 'space-150': {value: size[150]}, + 'space-200': {value: size[200]}, + 'space-300': {value: size[300]}, + 'space-400': {value: size[400]}, + 'space-500': {value: size[500]}, + 'space-600': {value: size[600]}, + 'space-800': {value: size[800]}, + 'space-1000': {value: size[1000]}, + 'space-1200': {value: size[1200]}, + 'space-1600': {value: size[1600]}, + 'space-2000': {value: size[2000]}, + 'space-2400': {value: size[2400]}, + 'space-2800': {value: size[2800]}, + 'space-3200': {value: size[3200]}, + }, + shadow: { + // v11.0.0 + 'shadow-inset-lg': { + value: + 'inset -1px 0px 1px rgba(0, 0, 0, 0.2), inset 1px 0px 1px rgba(0, 0, 0, 0.2), inset 0px 2px 1px rgba(0, 0, 0, 0.6)', + }, + 'shadow-inset-md': { + value: + 'inset -1px 0px 1px rgba(0, 0, 0, 0.12), inset 1px 0px 1px rgba(0, 0, 0, 0.12), inset 0px 2px 1px rgba(0, 0, 0, 0.2)', + }, + 'shadow-inset-sm': { + value: + 'inset 0px 1px 1px rgba(0, 0, 0, 0.15), inset 0px 1px 2px rgba(255, 255, 255, 0.15)', + }, + 'shadow-xs': {value: '0px 1px 0px rgba(0, 0, 0, 0.07)'}, + 'shadow-sm': {value: '0px 3px 1px -1px rgba(0, 0, 0, 0.07)'}, + 'shadow-md': {value: '0px 4px 6px -2px rgba(0, 0, 0, 0.2)'}, + 'shadow-lg': {value: '0px 8px 16px -4px rgba(0, 0, 0, 0.22)'}, + 'shadow-xl': {value: '0px 12px 20px -8px rgba(0, 0, 0, 0.24)'}, + 'shadow-2xl': {value: '0px 20px 20px -8px rgba(0, 0, 0, 0.28)'}, + }, }); export const metaThemeLightUplift = createMetaTheme( From 9b3e4c5fe465f33c03949742dc0b1a0d825d7e84 Mon Sep 17 00:00:00 2001 From: Laura Griffee Date: Thu, 14 Sep 2023 17:01:06 -0600 Subject: [PATCH 3/8] Remove unnecessary import --- polaris-tokens/src/themes/base/space.ts | 1 - 1 file changed, 1 deletion(-) diff --git a/polaris-tokens/src/themes/base/space.ts b/polaris-tokens/src/themes/base/space.ts index 54d345ec4a2..d08b3f5d698 100644 --- a/polaris-tokens/src/themes/base/space.ts +++ b/polaris-tokens/src/themes/base/space.ts @@ -1,4 +1,3 @@ -import {size} from '../../size'; import type {Experimental} from '../../types'; import type {MetaTokenProperties} from '../types'; From a8ae1f3527f563e74136d4db7181ef58b72c43c3 Mon Sep 17 00:00:00 2001 From: Laura Griffee Date: Fri, 15 Sep 2023 09:46:40 -0600 Subject: [PATCH 4/8] Refactor `base` theme values to reference deprecated tokens Co-Authored-By: Aaron Casanova <32409546+aaronccasanova@users.noreply.github.com> --- polaris-tokens/src/themes/base/border.ts | 30 +++++++++++--------- polaris-tokens/src/themes/base/font.ts | 32 ++++++++++++--------- polaris-tokens/src/themes/base/space.ts | 36 +++++++++++++----------- 3 files changed, 55 insertions(+), 43 deletions(-) diff --git a/polaris-tokens/src/themes/base/border.ts b/polaris-tokens/src/themes/base/border.ts index 7d69d13d4db..fa2ccdcb06b 100644 --- a/polaris-tokens/src/themes/base/border.ts +++ b/polaris-tokens/src/themes/base/border.ts @@ -49,31 +49,31 @@ export const border: { [TokenName in BorderTokenName]: MetaTokenProperties; } = { 'border-radius-0': { - value: '0px', + value: createVar('border-radius-0-experimental'), }, 'border-radius-050': { - value: '2px', + value: createVar('border-radius-05'), }, 'border-radius-100': { - value: '4px', + value: createVar('border-radius-1'), }, 'border-radius-150': { - value: '6px', + value: createVar('border-radius-1_5-experimental'), }, 'border-radius-200': { - value: '8px', + value: createVar('border-radius-2'), }, 'border-radius-300': { - value: '12px', + value: createVar('border-radius-3'), }, 'border-radius-400': { - value: '16px', + value: createVar('border-radius-4'), }, 'border-radius-500': { - value: '20px', + value: createVar('border-radius-5'), }, 'border-radius-750': { - value: '30px', + value: createVar('border-radius-6'), }, 'border-radius-full': { value: '9999px', @@ -106,16 +106,16 @@ export const border: { value: '6px', }, 'border-width-0165': { - value: '0.66px', + value: createVar('border-width-1-experimental'), }, 'border-width-025': { - value: '1px', + value: createVar('border-width-1'), }, 'border-width-050': { - value: '2px', + value: createVar('border-width-2'), }, 'border-width-100': { - value: '4px', + value: createVar('border-width-4'), }, 'border-width-1': { value: '1px', @@ -139,3 +139,7 @@ export const border: { value: '1px', }, }; + +function createVar(borderTokenName: BorderTokenName) { + return `var(--p-${borderTokenName})`; +} diff --git a/polaris-tokens/src/themes/base/font.ts b/polaris-tokens/src/themes/base/font.ts index 3b6b4c77377..960828ab56a 100644 --- a/polaris-tokens/src/themes/base/font.ts +++ b/polaris-tokens/src/themes/base/font.ts @@ -66,22 +66,22 @@ export const font: { "ui-monospace, SFMono-Regular, 'SF Mono', Consolas, 'Liberation Mono', Menlo, monospace", }, 'font-size-275': { - value: '11px', + value: createVar('font-size-70-experimental'), }, 'font-size-325': { - value: '13px', + value: createVar('font-size-80-experimental'), }, 'font-size-350': { - value: '14px', + value: createVar('font-size-100'), }, 'font-size-750': { - value: '28px', + value: createVar('font-size-500'), }, 'font-size-900': { - value: '32px', + value: createVar('font-size-600'), }, 'font-size-1000': { - value: '40px', + value: createVar('font-size-700'), }, 'font-size-70-experimental': { value: '11px', @@ -126,28 +126,28 @@ export const font: { value: '700', }, 'font-line-height-300': { - value: '12px', + value: createVar('font-line-height-075-experimental'), }, 'font-line-height-400': { - value: '16px', + value: createVar('font-line-height-1'), }, 'font-line-height-500': { - value: '20px', + value: createVar('font-line-height-2'), }, 'font-line-height-600': { - value: '24px', + value: createVar('font-line-height-3'), }, 'font-line-height-700': { - value: '28px', + value: createVar('font-line-height-4'), }, 'font-line-height-800': { - value: '32px', + value: createVar('font-line-height-5'), }, 'font-line-height-1000': { - value: '40px', + value: createVar('font-line-height-6'), }, 'font-line-height-1200': { - value: '48px', + value: createVar('font-line-height-7'), }, 'font-line-height-075-experimental': { value: '12px', @@ -174,3 +174,7 @@ export const font: { value: '48px', }, }; + +function createVar(fontTokenName: FontTokenName) { + return `var(--p-${fontTokenName})`; +} diff --git a/polaris-tokens/src/themes/base/space.ts b/polaris-tokens/src/themes/base/space.ts index d08b3f5d698..2c075b7720e 100644 --- a/polaris-tokens/src/themes/base/space.ts +++ b/polaris-tokens/src/themes/base/space.ts @@ -55,52 +55,52 @@ export const space: { value: '1px', }, 'space-050': { - value: '2px', + value: createVar('space-05'), }, 'space-100': { - value: '4px', + value: createVar('space-1'), }, 'space-150': { - value: '6px', + value: createVar('space-1_5-experimental'), }, 'space-200': { - value: '8px', + value: createVar('space-2'), }, 'space-300': { - value: '12px', + value: createVar('space-3'), }, 'space-400': { - value: '16px', + value: createVar('space-4'), }, 'space-500': { - value: '20px', + value: createVar('space-5'), }, 'space-600': { - value: '24px', + value: createVar('space-6'), }, 'space-800': { - value: '32px', + value: createVar('space-8'), }, 'space-1000': { - value: '40px', + value: createVar('space-10'), }, 'space-1200': { - value: '48px', + value: createVar('space-12'), }, 'space-1600': { - value: '64px', + value: createVar('space-16'), }, 'space-2000': { - value: '80px', + value: createVar('space-20'), }, 'space-2400': { - value: '96px', + value: createVar('space-24'), }, 'space-2800': { - value: '112px', + value: createVar('space-28'), }, 'space-3200': { - value: '128px', + value: createVar('space-32'), }, 'space-05': { value: '2px', @@ -151,3 +151,7 @@ export const space: { value: '128px', }, }; + +function createVar(spaceTokenName: SpaceTokenName) { + return `var(--p-${spaceTokenName})`; +} From 9804b6fe3e8188e97006783f32a20c81673437b7 Mon Sep 17 00:00:00 2001 From: Laura Griffee Date: Fri, 15 Sep 2023 09:50:50 -0600 Subject: [PATCH 5/8] Update changeset --- .changeset/tasty-ducks-punch.md | 1 - 1 file changed, 1 deletion(-) diff --git a/.changeset/tasty-ducks-punch.md b/.changeset/tasty-ducks-punch.md index 50a857dfe02..20185792b79 100644 --- a/.changeset/tasty-ducks-punch.md +++ b/.changeset/tasty-ducks-punch.md @@ -1,6 +1,5 @@ --- '@shopify/polaris-tokens': patch -'polaris.shopify.com': patch --- Update public primitive `base` and `light-uplift` theme scales From 30ff4b29d0a4b239c4e8356da1c78a9b45997b67 Mon Sep 17 00:00:00 2001 From: Laura Griffee Date: Fri, 15 Sep 2023 09:52:50 -0600 Subject: [PATCH 6/8] Update changeset --- .changeset/tasty-ducks-punch.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.changeset/tasty-ducks-punch.md b/.changeset/tasty-ducks-punch.md index 20185792b79..aee4bba2602 100644 --- a/.changeset/tasty-ducks-punch.md +++ b/.changeset/tasty-ducks-punch.md @@ -2,4 +2,4 @@ '@shopify/polaris-tokens': patch --- -Update public primitive `base` and `light-uplift` theme scales +Updated public primitive `base` and `light-uplift` theme scales From 028724d5f07325f535b5015fae4ef0d284bc98c8 Mon Sep 17 00:00:00 2001 From: Laura Griffee Date: Fri, 15 Sep 2023 12:13:30 -0600 Subject: [PATCH 7/8] Refactor createVar functions to use createVarName Co-Authored-By: Aaron Casanova <32409546+aaronccasanova@users.noreply.github.com> --- polaris-tokens/src/themes/base/border.ts | 3 ++- polaris-tokens/src/themes/base/font.ts | 3 ++- polaris-tokens/src/themes/base/space.ts | 3 ++- polaris-tokens/src/utilities.ts | 4 ++++ 4 files changed, 10 insertions(+), 3 deletions(-) diff --git a/polaris-tokens/src/themes/base/border.ts b/polaris-tokens/src/themes/base/border.ts index fa2ccdcb06b..b02b92afd4f 100644 --- a/polaris-tokens/src/themes/base/border.ts +++ b/polaris-tokens/src/themes/base/border.ts @@ -1,5 +1,6 @@ import type {Experimental} from '../../types'; import type {MetaTokenProperties} from '../types'; +import {createVarName} from '../../utilities'; type BorderRadiusScaleExperimental = Experimental<'0' | '1_5'>; @@ -141,5 +142,5 @@ export const border: { }; function createVar(borderTokenName: BorderTokenName) { - return `var(--p-${borderTokenName})`; + return `var(${createVarName(borderTokenName)})`; } diff --git a/polaris-tokens/src/themes/base/font.ts b/polaris-tokens/src/themes/base/font.ts index 960828ab56a..b0c2ec5ea03 100644 --- a/polaris-tokens/src/themes/base/font.ts +++ b/polaris-tokens/src/themes/base/font.ts @@ -1,4 +1,5 @@ import type {Experimental} from '../../types'; +import {createVarName} from '../../utilities'; import type {MetaTokenProperties} from '../types'; type FontFamilyAlias = 'sans' | 'mono'; @@ -176,5 +177,5 @@ export const font: { }; function createVar(fontTokenName: FontTokenName) { - return `var(--p-${fontTokenName})`; + return `var(${createVarName(fontTokenName)})`; } diff --git a/polaris-tokens/src/themes/base/space.ts b/polaris-tokens/src/themes/base/space.ts index 2c075b7720e..c99037b48b1 100644 --- a/polaris-tokens/src/themes/base/space.ts +++ b/polaris-tokens/src/themes/base/space.ts @@ -1,4 +1,5 @@ import type {Experimental} from '../../types'; +import {createVarName} from '../../utilities'; import type {MetaTokenProperties} from '../types'; type SpaceScaleExperimental = Experimental<'1_5'>; @@ -153,5 +154,5 @@ export const space: { }; function createVar(spaceTokenName: SpaceTokenName) { - return `var(--p-${spaceTokenName})`; + return `var(${createVarName(spaceTokenName)})`; } diff --git a/polaris-tokens/src/utilities.ts b/polaris-tokens/src/utilities.ts index f496ab4e007..94b3344ac56 100644 --- a/polaris-tokens/src/utilities.ts +++ b/polaris-tokens/src/utilities.ts @@ -92,6 +92,10 @@ export function tokensToRems>(tokenGroup: T) { ) as T; } +export function createVarName(token: string) { + return `--p-${token}`; +} + export function createVar(token: string) { return `--p-${token}`; } From 54c0bf4bb44d3299fc810bdacd3b8863e4ba67b8 Mon Sep 17 00:00:00 2001 From: Laura Griffee Date: Fri, 15 Sep 2023 12:25:14 -0600 Subject: [PATCH 8/8] Consolidate duplicate theme tokens Co-Authored-By: Aaron Casanova <32409546+aaronccasanova@users.noreply.github.com> --- polaris-tokens/src/themes/base/space.ts | 5 +++-- polaris-tokens/src/themes/light-uplift.ts | 2 -- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/polaris-tokens/src/themes/base/space.ts b/polaris-tokens/src/themes/base/space.ts index c99037b48b1..1dbd6d5c713 100644 --- a/polaris-tokens/src/themes/base/space.ts +++ b/polaris-tokens/src/themes/base/space.ts @@ -1,3 +1,4 @@ +import {size} from '../../size'; import type {Experimental} from '../../types'; import {createVarName} from '../../utilities'; import type {MetaTokenProperties} from '../types'; @@ -50,10 +51,10 @@ export const space: { [TokenName in SpaceTokenName]: MetaTokenProperties; } = { 'space-0': { - value: '0px', + value: size[0], }, 'space-025': { - value: '1px', + value: size['025'], }, 'space-050': { value: createVar('space-05'), diff --git a/polaris-tokens/src/themes/light-uplift.ts b/polaris-tokens/src/themes/light-uplift.ts index 97c24c48565..91d1875086f 100644 --- a/polaris-tokens/src/themes/light-uplift.ts +++ b/polaris-tokens/src/themes/light-uplift.ts @@ -187,8 +187,6 @@ export const metaThemeLightUpliftPartial = createMetaThemePartial({ }, space: { // v12.0.0 - 'space-0': {value: size[0]}, - 'space-025': {value: size['025']}, 'space-050': {value: size['050']}, 'space-100': {value: size[100]}, 'space-150': {value: size[150]},