From c555c62a21f48151a74aff996033bc6668f0f59b Mon Sep 17 00:00:00 2001 From: Nora Krantz <75342690+nkrantz@users.noreply.github.com> Date: Thu, 23 Jan 2025 10:24:07 -0500 Subject: [PATCH] feat(design-tokens): add elevation tokens (#4207) --- .changeset/ninety-avocados-shout.md | 6 + .../paste-core/primitives/box/type-docs.json | 4 +- .../primitives/sibling-box/type-docs.json | 4 +- .../paste-core/primitives/text/type-docs.json | 2 +- .../__snapshots__/index.test.tsx.snap | 114 ++++++++++++++++-- .../tokens/aliases/box-shadow.yml | 8 +- .../tokens/aliases/color-palette.yml | 16 ++- .../tokens/aliases/color.yml | 1 - .../tokens/aliases/offset.yml | 1 + .../tokens/global/background-color.yml | 26 ++++ .../tokens/global/box-shadow.yml | 45 +++++-- .../tokens/themes/dark/aliases/box-shadow.yml | 9 +- .../themes/dark/aliases/color-palette.yml | 12 ++ .../tokens/themes/dark/aliases/color.yml | 14 --- .../themes/dark/global/background-color.yml | 15 ++- .../themes/dark/global/border-color.yml | 1 - .../tokens/themes/dark/global/box-shadow.yml | 32 ++++- .../tokens/themes/dark/global/text-color.yml | 1 - .../themes/evergreen/aliases/box-shadow.yml | 9 +- .../evergreen/aliases/color-palette.yml | 12 ++ .../tokens/themes/evergreen/aliases/color.yml | 14 --- .../evergreen/global/background-color.yml | 22 +++- .../themes/evergreen/global/border-color.yml | 1 - .../themes/evergreen/global/text-color.yml | 1 - .../twilio-dark/global/background-color.yml | 19 +++ .../themes/twilio/global/background-color.yml | 8 ++ .../__snapshots__/index.spec.tsx.snap | 4 +- .../src/__tests__/colorGradient.test.tsx | 7 +- .../src/components/tokens-list/index.tsx | 18 +++ 29 files changed, 337 insertions(+), 89 deletions(-) create mode 100644 .changeset/ninety-avocados-shout.md delete mode 100644 packages/paste-design-tokens/tokens/themes/dark/aliases/color.yml delete mode 100644 packages/paste-design-tokens/tokens/themes/evergreen/aliases/color.yml diff --git a/.changeset/ninety-avocados-shout.md b/.changeset/ninety-avocados-shout.md new file mode 100644 index 0000000000..904cf75b43 --- /dev/null +++ b/.changeset/ninety-avocados-shout.md @@ -0,0 +1,6 @@ +--- +"@twilio-paste/design-tokens": minor +"@twilio-paste/core": minor +--- + +[Design Tokens] Update aliases and add new tokens for elevation foundations diff --git a/packages/paste-core/primitives/box/type-docs.json b/packages/paste-core/primitives/box/type-docs.json index 724125ffcb..c987a126e0 100644 --- a/packages/paste-core/primitives/box/type-docs.json +++ b/packages/paste-core/primitives/box/type-docs.json @@ -727,7 +727,7 @@ "description": "Responsive prop for the CSS `background-attachment` property" }, "backgroundColor": { - "type": "\"inherit\" | \"none\" | \"colorBackground\" | \"colorBackgroundAvailable\" | \"colorBackgroundBody\" | \"colorBackgroundBodyInverse\" | \"colorBackgroundBrand\" | \"colorBackgroundBrand10\" | ... 56 more ... | { ...; }", + "type": "\"inherit\" | \"none\" | \"colorBackground\" | \"colorBackgroundAvailable\" | \"colorBackgroundBody\" | \"colorBackgroundBodyElevation\" | \"colorBackgroundBodyInverse\" | \"colorBackgroundBrand\" | ... 64 more ... | { ...; }", "defaultValue": null, "required": false, "externalProp": false, @@ -958,7 +958,7 @@ "description": "Responsive prop for the CSS `bottom` property" }, "boxShadow": { - "type": "\"none\" | \"shadow\" | \"shadowBorder\" | \"shadowBorderBottomBrand10Strong\" | \"shadowBorderBottomBrand20Strong\" | \"shadowBorderBottomBrand30Strong\" | \"shadowBorderBottomDecorative10Weaker\" | ... 75 more ... | { ...; }", + "type": "\"none\" | \"shadow\" | \"shadowBorder\" | \"shadowBorderBottomBrand10Strong\" | \"shadowBorderBottomBrand20Strong\" | \"shadowBorderBottomBrand30Strong\" | \"shadowBorderBottomDecorative10Weaker\" | ... 85 more ... | { ...; }", "defaultValue": null, "required": false, "externalProp": false, diff --git a/packages/paste-core/primitives/sibling-box/type-docs.json b/packages/paste-core/primitives/sibling-box/type-docs.json index d3afa5f1de..24b82c3189 100644 --- a/packages/paste-core/primitives/sibling-box/type-docs.json +++ b/packages/paste-core/primitives/sibling-box/type-docs.json @@ -829,7 +829,7 @@ "description": "Responsive prop for the CSS `background-attachment` property" }, "backgroundColor": { - "type": "\"inherit\" | \"none\" | \"colorBackground\" | \"colorBackgroundAvailable\" | \"colorBackgroundBody\" | \"colorBackgroundBodyInverse\" | \"colorBackgroundBrand\" | \"colorBackgroundBrand10\" | ... 56 more ... | { ...; }", + "type": "\"inherit\" | \"none\" | \"colorBackground\" | \"colorBackgroundAvailable\" | \"colorBackgroundBody\" | \"colorBackgroundBodyElevation\" | \"colorBackgroundBodyInverse\" | \"colorBackgroundBrand\" | ... 64 more ... | { ...; }", "defaultValue": null, "required": false, "externalProp": false, @@ -1060,7 +1060,7 @@ "description": "Responsive prop for the CSS `bottom` property" }, "boxShadow": { - "type": "\"none\" | \"shadow\" | \"shadowBorder\" | \"shadowBorderBottomBrand10Strong\" | \"shadowBorderBottomBrand20Strong\" | \"shadowBorderBottomBrand30Strong\" | \"shadowBorderBottomDecorative10Weaker\" | ... 75 more ... | { ...; }", + "type": "\"none\" | \"shadow\" | \"shadowBorder\" | \"shadowBorderBottomBrand10Strong\" | \"shadowBorderBottomBrand20Strong\" | \"shadowBorderBottomBrand30Strong\" | \"shadowBorderBottomDecorative10Weaker\" | ... 85 more ... | { ...; }", "defaultValue": null, "required": false, "externalProp": false, diff --git a/packages/paste-core/primitives/text/type-docs.json b/packages/paste-core/primitives/text/type-docs.json index cbf3cb3985..ec4863fead 100644 --- a/packages/paste-core/primitives/text/type-docs.json +++ b/packages/paste-core/primitives/text/type-docs.json @@ -531,7 +531,7 @@ "description": "Responsive prop for the CSS `bottom` property" }, "boxShadow": { - "type": "\"none\" | \"shadow\" | \"shadowBorder\" | \"shadowBorderBottomBrand10Strong\" | \"shadowBorderBottomBrand20Strong\" | \"shadowBorderBottomBrand30Strong\" | \"shadowBorderBottomDecorative10Weaker\" | ... 75 more ... | { ...; }", + "type": "\"none\" | \"shadow\" | \"shadowBorder\" | \"shadowBorderBottomBrand10Strong\" | \"shadowBorderBottomBrand20Strong\" | \"shadowBorderBottomBrand30Strong\" | \"shadowBorderBottomDecorative10Weaker\" | ... 85 more ... | { ...; }", "defaultValue": null, "required": false, "externalProp": false, diff --git a/packages/paste-design-tokens/__tests__/__snapshots__/index.test.tsx.snap b/packages/paste-design-tokens/__tests__/__snapshots__/index.test.tsx.snap index da3a350385..ab2623772d 100644 --- a/packages/paste-design-tokens/__tests__/__snapshots__/index.test.tsx.snap +++ b/packages/paste-design-tokens/__tests__/__snapshots__/index.test.tsx.snap @@ -10,10 +10,14 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"color-background-destructive-stronger\\": \\"rgb(252, 207, 207)\\", \\"color-background-primary-weaker\\": \\"rgb(31, 48, 76)\\", \\"color-background-destructive-weaker\\": \\"rgb(31, 48, 76)\\", + \\"color-background-inverse-stronger-elevation\\": \\"rgb(64, 79, 110)\\", + \\"color-background-body-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-warning\\": \\"rgb(244, 124, 34)\\", + \\"color-background-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-warning-weakest\\": \\"rgb(64, 19, 15)\\", \\"color-background-inverse-strong\\": \\"rgb(57, 71, 98)\\", \\"color-background-new\\": \\"rgb(56, 14, 120)\\", + \\"color-background-inverse-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-strong\\": \\"rgb(31, 48, 76)\\", \\"color-background-new-weakest\\": \\"rgb(18, 28, 45)\\", \\"color-background-destructive\\": \\"rgb(214, 31, 31)\\", @@ -50,16 +54,20 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"color-background-primary-weak\\": \\"rgb(57, 71, 98)\\", \\"color-background-brand-30\\": \\"rgb(106, 221, 178)\\", \\"color-background-stronger\\": \\"rgb(96, 107, 133)\\", + \\"color-background-inverse-strong-elevation\\": \\"rgb(64, 79, 110)\\", \\"color-background-brand-20\\": \\"rgb(81, 169, 227)\\", \\"color-background-brand-highlight\\": \\"rgb(242, 47, 70)\\", \\"color-background-brand-highlight-weakest\\": \\"rgba(242, 47, 70, 0.1)\\", \\"color-background-strongest\\": \\"rgb(225, 227, 234)\\", + \\"color-background-inverse-weak-elevation\\": \\"rgb(37, 57, 91)\\", \\"color-background-brand-10\\": \\"rgb(242, 190, 90)\\", + \\"color-background-weaker\\": \\"rgb(18, 28, 45)\\", \\"color-background-body-inverse\\": \\"rgb(18, 28, 45)\\", \\"color-background-inverse\\": \\"rgb(31, 48, 76)\\", \\"color-background-overlay\\": \\"rgba(18, 28, 45, 0.9)\\", \\"color-background-unavailable\\": \\"rgb(214, 31, 31)\\", \\"color-background-inverse-strongest\\": \\"rgb(255, 255, 255)\\", + \\"color-background-weak-elevation\\": \\"rgb(18, 28, 45)\\", \\"color-background-error-stronger\\": \\"rgb(252, 207, 207)\\", \\"color-background-brand-stronger\\": \\"rgb(18, 28, 45)\\", \\"color-border-error-stronger\\": \\"rgb(252, 207, 207)\\", @@ -133,6 +141,7 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"shadow\\": \\"0 4px 16px 0 rgba(0, 0, 0, 0.5)\\", \\"shadow-border-bottom-inverse-weaker-inset\\": \\"inset 0 -1px 0 0 #394762\\", \\"shadow-border-subaccount\\": \\"0 0 0 1px #c28e00\\", + \\"shadow-elevation-05\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-destructive-stronger\\": \\"0 0 0 1px #fccfcf\\", \\"shadow-border-success-weaker\\": \\"0 0 0 1px #0e7c3a\\", \\"shadow-border-inverse-new-weaker\\": \\"0 0 0 1px #5817bd\\", @@ -143,9 +152,12 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"shadow-border-top-inverse-strongest\\": \\"0 -1px 0 #cce4ff\\", \\"shadow-border-bottom-weak\\": \\"0 1px 0 #cacdd8\\", \\"shadow-border-new-weaker\\": \\"0 0 0 1px #5817bd\\", + \\"shadow-elevation-bottom-inverse-05\\": \\"0 1px 0 0 #1f304c\\", \\"shadow-low\\": \\"0 2px 4px 0 rgba(0, 0, 0, 0.4)\\", + \\"shadow-elevation-left-20\\": \\"0 0 0 1px #19273E, -4px 0 8px 0 rgba(0, 0, 0, 0.3), -16px 0 32px 0 rgba(0, 0, 0, 0.2)\\", \\"shadow-border-inverse-strong\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border-warning-weaker\\": \\"0 0 0 1px #c35323\\", + \\"shadow-elevation-bottom-05\\": \\"0 1px 0 0 #1f304c\\", \\"shadow-border-strong\\": \\"0 0 0 1px #8891aa\\", \\"shadow-focus\\": \\"0 0 0 4px #606b85\\", \\"shadow-border-weak\\": \\"0 0 0 1px #394762\\", @@ -154,6 +166,7 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"shadow-border-destructive\\": \\"0 0 0 1px #d61f1f\\", \\"shadow-high\\": \\"0 16px 24px 4px rgba(0, 0, 0, 0.5)\\", \\"shadow-right\\": \\"-4px 0 8px -4px rgba(0, 0, 0, 0.4)\\", + \\"shadow-elevation-right-inverse-05\\": \\"1px 0 0 0 #1f304c\\", \\"shadow-border-error-strong\\": \\"0 0 0 1px #f6b1b1\\", \\"shadow-border-bottom-inverse-weaker\\": \\"0 1px 0 #394762\\", \\"shadow-border-primary-strongest\\": \\"0 0 0 1px #ebf4ff\\", @@ -188,14 +201,18 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"shadow-border-bottom-error-weaker\\": \\"0 1px 0 #750c0c\\", \\"shadow-border-weaker\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border\\": \\"0 0 0 1px #606b85\\", + \\"shadow-elevation-inverse-10\\": \\"0 -1px 0 0 #1f304c, 0 3px 4px 0 rgba(0, 0, 0, 0.4)\\", \\"shadow-border-right-inverse-strong\\": \\"1px 0 #e1e3ea\\", \\"shadow-border-bottom-neutral-weaker\\": \\"0 1px 0 #001489\\", \\"shadow-border-brand-10\\": \\"saffron\\", \\"shadow-border-decorative-10-weaker\\": \\"0 0 0 1px #1f304c\\", + \\"shadow-elevation-top-05\\": \\"0 -1px 0 0 #1f304c\\", \\"shadow-border-decorative-20-weaker\\": \\"0 0 0 1px #043cb5\\", \\"shadow-border-bottom-subaccount\\": \\"0 1px 0 #c28e00\\", \\"shadow-focus-inset\\": \\"inset 0 0 0 2px #606b85\\", + \\"shadow-elevation-20\\": \\"0 0 0 1px #19273E, 0 6px 8px 0 rgba(0, 0, 0, 0.3), 16px 16px 32px 0 rgba(0, 0, 0, 0.2)\\", \\"shadow-border-inverse\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-10\\": \\"0 -1px 0 0 #1f304c, 0 3px 4px 0 rgba(0, 0, 0, 0.4)\\", \\"shadow-border-decorative-30-weaker\\": \\"0 0 0 1px #0e7c3a\\", \\"shadow-border-inverse-weakest\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-bottom-inverse-new-weaker\\": \\"0 1px 0 #5817bd\\", @@ -207,6 +224,7 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"shadow-border-inverse-strongest\\": \\"0 0 0 1px #ffffff\\", \\"shadow-focus-inverse-inset\\": \\"inset 0 0 0 2px rgba(255, 255, 255, 0.4)\\", \\"shadow-border-notification\\": \\"0 1px 0 #d61f1f\\", + \\"shadow-elevation-inverse-05\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-user\\": \\"0 0 0 1px #f5f0fc\\", \\"shadow-border-neutral-weaker\\": \\"0 0 0 1px #043cb5\\", \\"font-family-text\\": \\"'Inter var experimental', 'Inter var', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif\\", @@ -261,7 +279,7 @@ exports[`Design Tokens matches the Dark theme 1`] = ` \\"color-gray-70\\": \\"rgb(75, 86, 113)\\", \\"color-gray-60\\": \\"rgb(96, 107, 133)\\", \\"color-gray-50\\": \\"rgb(136, 145, 170)\\", - \\"color-gray-40\\": \\"rgb(174, 178, 193)\\", + \\"color-gray-40\\": \\"rgb(142, 150, 174)\\", \\"color-brand\\": \\"rgb(0, 20, 137)\\", \\"color-gray-30\\": \\"rgb(202, 205, 216)\\", \\"color-gray-20\\": \\"rgb(225, 227, 234)\\", @@ -474,10 +492,14 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"color-background-destructive-stronger\\": \\"rgb(74, 11, 11)\\", \\"color-background-primary-weaker\\": \\"rgb(204, 228, 255)\\", \\"color-background-destructive-weaker\\": \\"rgb(252, 207, 207)\\", + \\"color-background-inverse-stronger-elevation\\": \\"rgb(64, 79, 110)\\", + \\"color-background-body-elevation\\": \\"rgb(249, 249, 250)\\", \\"color-background-warning\\": \\"rgb(244, 124, 34)\\", + \\"color-background-elevation\\": \\"rgb(237, 238, 242)\\", \\"color-background-warning-weakest\\": \\"rgb(254, 245, 238)\\", \\"color-background-inverse-strong\\": \\"rgb(57, 71, 98)\\", \\"color-background-new\\": \\"rgb(245, 240, 252)\\", + \\"color-background-inverse-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-strong\\": \\"rgb(225, 227, 234)\\", \\"color-background-new-weakest\\": \\"rgb(250, 247, 253)\\", \\"color-background-destructive\\": \\"rgb(214, 31, 31)\\", @@ -487,7 +509,7 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"color-background-busy\\": \\"rgb(244, 124, 34)\\", \\"color-background-success\\": \\"rgb(20, 176, 83)\\", \\"color-background-destructive-weakest\\": \\"rgb(254, 236, 236)\\", - \\"color-background-offline\\": \\"rgb(174, 178, 193)\\", + \\"color-background-offline\\": \\"rgb(142, 150, 174)\\", \\"color-background-row-striped\\": \\"rgb(244, 244, 246)\\", \\"color-background-primary-strongest\\": \\"rgb(6, 3, 58)\\", \\"color-background-success-weakest\\": \\"rgb(237, 253, 243)\\", @@ -514,16 +536,20 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"color-background-primary-weak\\": \\"rgb(153, 205, 255)\\", \\"color-background-brand-30\\": \\"rgb(106, 221, 178)\\", \\"color-background-stronger\\": \\"rgb(136, 145, 170)\\", + \\"color-background-inverse-strong-elevation\\": \\"rgb(64, 79, 110)\\", \\"color-background-brand-20\\": \\"rgb(81, 169, 227)\\", \\"color-background-brand-highlight\\": \\"rgb(242, 47, 70)\\", \\"color-background-brand-highlight-weakest\\": \\"rgba(242, 47, 70, 0.1)\\", \\"color-background-strongest\\": \\"rgb(75, 86, 113)\\", + \\"color-background-inverse-weak-elevation\\": \\"rgb(37, 57, 91)\\", \\"color-background-brand-10\\": \\"rgb(242, 190, 90)\\", + \\"color-background-weaker\\": \\"rgb(255, 255, 255)\\", \\"color-background-body-inverse\\": \\"rgb(18, 28, 45)\\", \\"color-background-inverse\\": \\"rgb(31, 48, 76)\\", \\"color-background-overlay\\": \\"rgba(6, 3, 58, 0.4)\\", \\"color-background-unavailable\\": \\"rgb(214, 31, 31)\\", \\"color-background-inverse-strongest\\": \\"rgb(255, 255, 255)\\", + \\"color-background-weak-elevation\\": \\"rgb(249, 249, 250)\\", \\"color-background-error-stronger\\": \\"rgb(74, 11, 11)\\", \\"color-background-brand-stronger\\": \\"rgb(6, 3, 58)\\", \\"color-border-error-stronger\\": \\"rgb(74, 11, 11)\\", @@ -597,6 +623,7 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"shadow\\": \\"0 4px 16px 0 rgba(18, 28, 45, 0.2)\\", \\"shadow-border-bottom-inverse-weaker-inset\\": \\"inset 0 -1px 0 0 #394762\\", \\"shadow-border-subaccount\\": \\"0 0 0 1px #fff1b3\\", + \\"shadow-elevation-05\\": \\"0 0 0 1px #edeef2\\", \\"shadow-border-destructive-stronger\\": \\"0 0 0 1px #4a0b0b\\", \\"shadow-border-success-weaker\\": \\"0 0 0 1px #d1fae0\\", \\"shadow-border-inverse-new-weaker\\": \\"0 0 0 1px #5817bd\\", @@ -607,9 +634,12 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"shadow-border-top-inverse-strongest\\": \\"0 -1px 0 #cce4ff\\", \\"shadow-border-bottom-weak\\": \\"0 1px 0 #cacdd8\\", \\"shadow-border-new-weaker\\": \\"0 0 0 1px #e7dcfa\\", + \\"shadow-elevation-bottom-inverse-05\\": \\"0 1px 0 0 #1f304c\\", \\"shadow-low\\": \\"0 2px 8px 0 rgba(18, 28, 45, 0.1)\\", + \\"shadow-elevation-left-20\\": \\"0 0 0 1px #f9f9fa, -4px 0 8px 0 rgba(15, 22, 33, 0.1), -16px 0 32px 0 rgba(15, 22, 33, 0.05)\\", \\"shadow-border-inverse-strong\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border-warning-weaker\\": \\"0 0 0 1px #fddcc4\\", + \\"shadow-elevation-bottom-05\\": \\"0 1px 0 0 #edeef2\\", \\"shadow-border-strong\\": \\"0 0 0 1px #606b85\\", \\"shadow-focus\\": \\"0 0 0 4px rgba(2, 99, 224, 0.7)\\", \\"shadow-border-weak\\": \\"0 0 0 1px #cacdd8\\", @@ -618,6 +648,7 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"shadow-border-destructive\\": \\"0 0 0 1px #d61f1f\\", \\"shadow-high\\": \\"0 16px 24px 0 rgba(18, 28, 45, 0.2)\\", \\"shadow-right\\": \\"-4px 0 8px -4px rgba(18, 28, 45, 0.2)\\", + \\"shadow-elevation-right-inverse-05\\": \\"1px 0 0 0 #1f304c\\", \\"shadow-border-error-strong\\": \\"0 0 0 1px #750c0c\\", \\"shadow-border-bottom-inverse-weaker\\": \\"0 1px 0 #394762\\", \\"shadow-border-primary-strongest\\": \\"0 0 0 1px #06033a\\", @@ -652,14 +683,18 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"shadow-border-bottom-error-weaker\\": \\"0 1px 0 #fccfcf\\", \\"shadow-border-weaker\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-inverse-10\\": \\"0 -1px 0 0 #1f304c, 0 3px 4px 0 rgba(0, 0, 0, 0.4)\\", \\"shadow-border-right-inverse-strong\\": \\"1px 0 #e1e3ea\\", \\"shadow-border-bottom-neutral-weaker\\": \\"0 1px 0 #cce4ff\\", \\"shadow-border-brand-10\\": \\"saffron\\", \\"shadow-border-decorative-10-weaker\\": \\"0 0 0 1px #e1e3ea\\", + \\"shadow-elevation-top-05\\": \\"0 -1px 0 0 #edeef2\\", \\"shadow-border-decorative-20-weaker\\": \\"0 0 0 1px #cce4ff\\", \\"shadow-border-bottom-subaccount\\": \\"0 1px 0 #ffdd35\\", \\"shadow-focus-inset\\": \\"inset 0 0 0 2px rgba(2, 99, 224, 0.7)\\", + \\"shadow-elevation-20\\": \\"0 0 0 1px #f9f9fa, 0 6px 8px 0 rgba(15, 22, 33, 0.1), 16px 16px 32px 0 rgba(15, 22, 33, 0.05)\\", \\"shadow-border-inverse\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-10\\": \\"0 -1px 0 0 #f4f4f6, 0 3px 4px 0 rgba(15, 22, 33, 0.1)\\", \\"shadow-border-decorative-30-weaker\\": \\"0 0 0 1px #d1fae0\\", \\"shadow-border-inverse-weakest\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-bottom-inverse-new-weaker\\": \\"0 1px 0 #5817bd\\", @@ -671,6 +706,7 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"shadow-border-inverse-strongest\\": \\"0 0 0 1px #ffffff\\", \\"shadow-focus-inverse-inset\\": \\"inset 0 0 0 2px rgba(255, 255, 255, 0.4)\\", \\"shadow-border-notification\\": \\"0 1px 0 #d61f1f\\", + \\"shadow-elevation-inverse-05\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-user\\": \\"0 0 0 1px #8c5bd8\\", \\"shadow-border-neutral-weaker\\": \\"0 0 0 1px #cce4ff\\", \\"color-data-visualization-10\\": \\"rgb(235, 86, 86)\\", @@ -735,7 +771,7 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"color-gray-70\\": \\"rgb(75, 86, 113)\\", \\"color-gray-60\\": \\"rgb(96, 107, 133)\\", \\"color-gray-50\\": \\"rgb(136, 145, 170)\\", - \\"color-gray-40\\": \\"rgb(174, 178, 193)\\", + \\"color-gray-40\\": \\"rgb(142, 150, 174)\\", \\"color-brand\\": \\"rgb(0, 20, 137)\\", \\"color-gray-30\\": \\"rgb(202, 205, 216)\\", \\"color-gray-20\\": \\"rgb(225, 227, 234)\\", @@ -909,7 +945,7 @@ exports[`Design Tokens matches the Global theme 1`] = ` \\"color-text-destructive-weak\\": \\"rgb(246, 177, 177)\\", \\"color-text-inverse\\": \\"rgb(255, 255, 255)\\", \\"color-text-inverse-weakest\\": \\"rgb(75, 86, 113)\\", - \\"color-text-weaker\\": \\"rgb(174, 178, 193)\\", + \\"color-text-weaker\\": \\"rgb(142, 150, 174)\\", \\"color-text-warning-strong\\": \\"rgb(141, 49, 24)\\", \\"color-text-icon-warning\\": \\"rgb(227, 106, 25)\\", \\"color-text-error-stronger\\": \\"rgb(74, 11, 11)\\", @@ -938,10 +974,14 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"color-background-destructive-stronger\\": \\"rgb(74, 11, 11)\\", \\"color-background-primary-weaker\\": \\"rgb(204, 228, 255)\\", \\"color-background-destructive-weaker\\": \\"rgb(252, 207, 207)\\", + \\"color-background-inverse-stronger-elevation\\": \\"rgb(64, 79, 110)\\", + \\"color-background-body-elevation\\": \\"rgb(249, 249, 250)\\", \\"color-background-warning\\": \\"rgb(244, 124, 34)\\", + \\"color-background-elevation\\": \\"rgb(237, 238, 242)\\", \\"color-background-warning-weakest\\": \\"rgb(254, 245, 238)\\", \\"color-background-inverse-strong\\": \\"rgb(57, 71, 98)\\", \\"color-background-new\\": \\"rgb(245, 240, 252)\\", + \\"color-background-inverse-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-strong\\": \\"rgb(225, 227, 234)\\", \\"color-background-new-weakest\\": \\"rgb(250, 247, 253)\\", \\"color-background-destructive\\": \\"rgb(214, 31, 31)\\", @@ -951,7 +991,7 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"color-background-busy\\": \\"rgb(244, 124, 34)\\", \\"color-background-success\\": \\"rgb(20, 176, 83)\\", \\"color-background-destructive-weakest\\": \\"rgb(254, 236, 236)\\", - \\"color-background-offline\\": \\"rgb(174, 178, 193)\\", + \\"color-background-offline\\": \\"rgb(142, 150, 174)\\", \\"color-background-row-striped\\": \\"rgb(244, 244, 246)\\", \\"color-background-primary-strongest\\": \\"rgb(6, 3, 58)\\", \\"color-background-success-weakest\\": \\"rgb(237, 253, 243)\\", @@ -978,16 +1018,20 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"color-background-primary-weak\\": \\"rgb(153, 205, 255)\\", \\"color-background-brand-30\\": \\"rgb(106, 221, 178)\\", \\"color-background-stronger\\": \\"rgb(136, 145, 170)\\", + \\"color-background-inverse-strong-elevation\\": \\"rgb(64, 79, 110)\\", \\"color-background-brand-20\\": \\"rgb(81, 169, 227)\\", \\"color-background-brand-highlight\\": \\"rgb(242, 47, 70)\\", \\"color-background-brand-highlight-weakest\\": \\"rgba(242, 47, 70, 0.1)\\", \\"color-background-strongest\\": \\"rgb(75, 86, 113)\\", + \\"color-background-inverse-weak-elevation\\": \\"rgb(37, 57, 91)\\", \\"color-background-brand-10\\": \\"rgb(242, 190, 90)\\", + \\"color-background-weaker\\": \\"rgb(255, 255, 255)\\", \\"color-background-body-inverse\\": \\"rgb(18, 28, 45)\\", \\"color-background-inverse\\": \\"rgb(31, 48, 76)\\", \\"color-background-overlay\\": \\"rgba(6, 3, 58, 0.4)\\", \\"color-background-unavailable\\": \\"rgb(214, 31, 31)\\", \\"color-background-inverse-strongest\\": \\"rgb(255, 255, 255)\\", + \\"color-background-weak-elevation\\": \\"rgb(249, 249, 250)\\", \\"color-background-error-stronger\\": \\"rgb(74, 11, 11)\\", \\"color-background-brand-stronger\\": \\"rgb(6, 3, 58)\\", \\"color-border-error-stronger\\": \\"rgb(74, 11, 11)\\", @@ -1061,6 +1105,7 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"shadow\\": \\"0 4px 16px 0 rgba(18, 28, 45, 0.2)\\", \\"shadow-border-bottom-inverse-weaker-inset\\": \\"inset 0 -1px 0 0 #394762\\", \\"shadow-border-subaccount\\": \\"0 0 0 1px #fff1b3\\", + \\"shadow-elevation-05\\": \\"0 0 0 1px #edeef2\\", \\"shadow-border-destructive-stronger\\": \\"0 0 0 1px #4a0b0b\\", \\"shadow-border-success-weaker\\": \\"0 0 0 1px #d1fae0\\", \\"shadow-border-inverse-new-weaker\\": \\"0 0 0 1px #5817bd\\", @@ -1071,9 +1116,12 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"shadow-border-top-inverse-strongest\\": \\"0 -1px 0 #cce4ff\\", \\"shadow-border-bottom-weak\\": \\"0 1px 0 #cacdd8\\", \\"shadow-border-new-weaker\\": \\"0 0 0 1px #e7dcfa\\", + \\"shadow-elevation-bottom-inverse-05\\": \\"0 1px 0 0 #1f304c\\", \\"shadow-low\\": \\"0 2px 8px 0 rgba(18, 28, 45, 0.1)\\", + \\"shadow-elevation-left-20\\": \\"0 0 0 1px #f9f9fa, -4px 0 8px 0 rgba(15, 22, 33, 0.1), -16px 0 32px 0 rgba(15, 22, 33, 0.05)\\", \\"shadow-border-inverse-strong\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border-warning-weaker\\": \\"0 0 0 1px #fddcc4\\", + \\"shadow-elevation-bottom-05\\": \\"0 1px 0 0 #edeef2\\", \\"shadow-border-strong\\": \\"0 0 0 1px #606b85\\", \\"shadow-focus\\": \\"0 0 0 4px rgba(2, 99, 224, 0.7)\\", \\"shadow-border-weak\\": \\"0 0 0 1px #cacdd8\\", @@ -1082,6 +1130,7 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"shadow-border-destructive\\": \\"0 0 0 1px #d61f1f\\", \\"shadow-high\\": \\"0 16px 24px 0 rgba(18, 28, 45, 0.2)\\", \\"shadow-right\\": \\"-4px 0 8px -4px rgba(18, 28, 45, 0.2)\\", + \\"shadow-elevation-right-inverse-05\\": \\"1px 0 0 0 #1f304c\\", \\"shadow-border-error-strong\\": \\"0 0 0 1px #750c0c\\", \\"shadow-border-bottom-inverse-weaker\\": \\"0 1px 0 #394762\\", \\"shadow-border-primary-strongest\\": \\"0 0 0 1px #06033a\\", @@ -1116,14 +1165,18 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"shadow-border-bottom-error-weaker\\": \\"0 1px 0 #fccfcf\\", \\"shadow-border-weaker\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-inverse-10\\": \\"0 -1px 0 0 #1f304c, 0 3px 4px 0 rgba(0, 0, 0, 0.4)\\", \\"shadow-border-right-inverse-strong\\": \\"1px 0 #e1e3ea\\", \\"shadow-border-bottom-neutral-weaker\\": \\"0 1px 0 #cce4ff\\", \\"shadow-border-brand-10\\": \\"saffron\\", \\"shadow-border-decorative-10-weaker\\": \\"0 0 0 1px #e1e3ea\\", + \\"shadow-elevation-top-05\\": \\"0 -1px 0 0 #edeef2\\", \\"shadow-border-decorative-20-weaker\\": \\"0 0 0 1px #cce4ff\\", \\"shadow-border-bottom-subaccount\\": \\"0 1px 0 #ffdd35\\", \\"shadow-focus-inset\\": \\"inset 0 0 0 2px rgba(2, 99, 224, 0.7)\\", + \\"shadow-elevation-20\\": \\"0 0 0 1px #f9f9fa, 0 6px 8px 0 rgba(15, 22, 33, 0.1), 16px 16px 32px 0 rgba(15, 22, 33, 0.05)\\", \\"shadow-border-inverse\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-10\\": \\"0 -1px 0 0 #f4f4f6, 0 3px 4px 0 rgba(15, 22, 33, 0.1)\\", \\"shadow-border-decorative-30-weaker\\": \\"0 0 0 1px #d1fae0\\", \\"shadow-border-inverse-weakest\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-bottom-inverse-new-weaker\\": \\"0 1px 0 #5817bd\\", @@ -1135,6 +1188,7 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"shadow-border-inverse-strongest\\": \\"0 0 0 1px #ffffff\\", \\"shadow-focus-inverse-inset\\": \\"inset 0 0 0 2px rgba(255, 255, 255, 0.4)\\", \\"shadow-border-notification\\": \\"0 1px 0 #d61f1f\\", + \\"shadow-elevation-inverse-05\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-user\\": \\"0 0 0 1px #8c5bd8\\", \\"shadow-border-neutral-weaker\\": \\"0 0 0 1px #cce4ff\\", \\"color-data-visualization-10\\": \\"rgb(235, 86, 86)\\", @@ -1199,7 +1253,7 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"color-gray-70\\": \\"rgb(75, 86, 113)\\", \\"color-gray-60\\": \\"rgb(96, 107, 133)\\", \\"color-gray-50\\": \\"rgb(136, 145, 170)\\", - \\"color-gray-40\\": \\"rgb(174, 178, 193)\\", + \\"color-gray-40\\": \\"rgb(142, 150, 174)\\", \\"color-brand\\": \\"rgb(0, 20, 137)\\", \\"color-gray-30\\": \\"rgb(202, 205, 216)\\", \\"color-gray-20\\": \\"rgb(225, 227, 234)\\", @@ -1373,7 +1427,7 @@ exports[`Design Tokens matches the Sendgrid theme 1`] = ` \\"color-text-destructive-weak\\": \\"rgb(246, 177, 177)\\", \\"color-text-inverse\\": \\"rgb(255, 255, 255)\\", \\"color-text-inverse-weakest\\": \\"rgb(75, 86, 113)\\", - \\"color-text-weaker\\": \\"rgb(174, 178, 193)\\", + \\"color-text-weaker\\": \\"rgb(142, 150, 174)\\", \\"color-text-warning-strong\\": \\"rgb(141, 49, 24)\\", \\"color-text-icon-warning\\": \\"rgb(227, 106, 25)\\", \\"color-text-error-stronger\\": \\"rgb(74, 11, 11)\\", @@ -1402,10 +1456,14 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"color-background-destructive-stronger\\": \\"rgb(252, 207, 207)\\", \\"color-background-primary-weaker\\": \\"rgb(31, 48, 76)\\", \\"color-background-destructive-weaker\\": \\"rgb(31, 48, 76)\\", + \\"color-background-inverse-stronger-elevation\\": \\"rgb(64, 79, 110)\\", + \\"color-background-body-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-warning\\": \\"rgb(244, 124, 34)\\", + \\"color-background-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-warning-weakest\\": \\"rgb(18, 28, 45)\\", \\"color-background-inverse-strong\\": \\"rgb(31, 48, 76)\\", \\"color-background-new\\": \\"rgb(56, 14, 120)\\", + \\"color-background-inverse-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-strong\\": \\"rgb(31, 48, 76)\\", \\"color-background-new-weakest\\": \\"rgb(18, 28, 45)\\", \\"color-background-destructive\\": \\"rgb(214, 31, 31)\\", @@ -1442,16 +1500,20 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"color-background-primary-weak\\": \\"rgb(57, 71, 98)\\", \\"color-background-brand-30\\": \\"rgb(106, 221, 178)\\", \\"color-background-stronger\\": \\"rgb(96, 107, 133)\\", + \\"color-background-inverse-strong-elevation\\": \\"rgb(37, 57, 91)\\", \\"color-background-brand-20\\": \\"rgb(81, 169, 227)\\", \\"color-background-brand-highlight\\": \\"rgb(242, 47, 70)\\", \\"color-background-brand-highlight-weakest\\": \\"rgba(242, 47, 70, 0.1)\\", \\"color-background-strongest\\": \\"rgb(225, 227, 234)\\", + \\"color-background-inverse-weak-elevation\\": \\"rgb(18, 28, 45)\\", \\"color-background-brand-10\\": \\"rgb(242, 190, 90)\\", + \\"color-background-weaker\\": \\"rgb(18, 28, 45)\\", \\"color-background-body-inverse\\": \\"rgb(18, 28, 45)\\", \\"color-background-inverse\\": \\"rgb(18, 28, 45)\\", \\"color-background-overlay\\": \\"rgba(18, 28, 45, 0.9)\\", \\"color-background-unavailable\\": \\"rgb(214, 31, 31)\\", \\"color-background-inverse-strongest\\": \\"rgb(255, 255, 255)\\", + \\"color-background-weak-elevation\\": \\"rgb(18, 28, 45)\\", \\"color-background-error-stronger\\": \\"rgb(252, 207, 207)\\", \\"color-background-brand-stronger\\": \\"rgb(18, 28, 45)\\", \\"color-border-error-stronger\\": \\"rgb(252, 207, 207)\\", @@ -1525,6 +1587,7 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"shadow\\": \\"0 4px 16px 0 rgba(0, 0, 0, 0.5)\\", \\"shadow-border-bottom-inverse-weaker-inset\\": \\"inset 0 -1px 0 0 #394762\\", \\"shadow-border-subaccount\\": \\"0 0 0 1px #c28e00\\", + \\"shadow-elevation-05\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-destructive-stronger\\": \\"0 0 0 1px #fccfcf\\", \\"shadow-border-success-weaker\\": \\"0 0 0 1px #0e7c3a\\", \\"shadow-border-inverse-new-weaker\\": \\"0 0 0 1px #5817bd\\", @@ -1535,9 +1598,12 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"shadow-border-top-inverse-strongest\\": \\"0 -1px 0 #cce4ff\\", \\"shadow-border-bottom-weak\\": \\"0 1px 0 #cacdd8\\", \\"shadow-border-new-weaker\\": \\"0 0 0 1px #5817bd\\", + \\"shadow-elevation-bottom-inverse-05\\": \\"0 1px 0 0 #1f304c\\", \\"shadow-low\\": \\"0 2px 4px 0 rgba(0, 0, 0, 0.4)\\", + \\"shadow-elevation-left-20\\": \\"0 0 0 1px #19273E, -4px 0 8px 0 rgba(0, 0, 0, 0.3), -16px 0 32px 0 rgba(0, 0, 0, 0.2)\\", \\"shadow-border-inverse-strong\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border-warning-weaker\\": \\"0 0 0 1px #c35323\\", + \\"shadow-elevation-bottom-05\\": \\"0 1px 0 0 #1f304c\\", \\"shadow-border-strong\\": \\"0 0 0 1px #8891aa\\", \\"shadow-focus\\": \\"0 0 0 2px #121c2d, 0 0 0 3px #ffffff, 0 0 0 5px rgba(255, 255, 255, 0.2)\\", \\"shadow-border-weak\\": \\"0 0 0 1px #394762\\", @@ -1546,6 +1612,7 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"shadow-border-destructive\\": \\"0 0 0 1px #d61f1f\\", \\"shadow-high\\": \\"0 16px 24px 4px rgba(0, 0, 0, 0.5)\\", \\"shadow-right\\": \\"-4px 0 8px -4px rgba(0, 0, 0, 0.4)\\", + \\"shadow-elevation-right-inverse-05\\": \\"1px 0 0 0 #1f304c\\", \\"shadow-border-error-strong\\": \\"0 0 0 1px #f58a8a\\", \\"shadow-border-bottom-inverse-weaker\\": \\"0 1px 0 #394762\\", \\"shadow-border-primary-strongest\\": \\"0 0 0 1px #ebf4ff\\", @@ -1580,14 +1647,18 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"shadow-border-bottom-error-weaker\\": \\"0 1px 0 #ad1111\\", \\"shadow-border-weaker\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border\\": \\"0 0 0 1px #606b85\\", + \\"shadow-elevation-inverse-10\\": \\"0 -1px 0 0 #1f304c, 0 3px 4px 0 rgba(0, 0, 0, 0.4)\\", \\"shadow-border-right-inverse-strong\\": \\"1px 0 #e1e3ea\\", \\"shadow-border-bottom-neutral-weaker\\": \\"0 1px 0 #043cb5\\", \\"shadow-border-brand-10\\": \\"saffron\\", \\"shadow-border-decorative-10-weaker\\": \\"0 0 0 1px #1f304c\\", + \\"shadow-elevation-top-05\\": \\"0 -1px 0 0 #1f304c\\", \\"shadow-border-decorative-20-weaker\\": \\"0 0 0 1px #043cb5\\", \\"shadow-border-bottom-subaccount\\": \\"0 1px 0 #c28e00\\", \\"shadow-focus-inset\\": \\"inset 0 0 0 1px #ffffff, inset 0 0 0 3px rgba(255, 255, 255, 0.2)\\", + \\"shadow-elevation-20\\": \\"0 0 0 1px #19273E, 0 6px 8px 0 rgba(0, 0, 0, 0.3), 16px 16px 32px 0 rgba(0, 0, 0, 0.2)\\", \\"shadow-border-inverse\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-10\\": \\"0 -1px 0 0 #1f304c, 0 3px 4px 0 rgba(0, 0, 0, 0.4)\\", \\"shadow-border-decorative-30-weaker\\": \\"0 0 0 1px #0e7c3a\\", \\"shadow-border-inverse-weakest\\": \\"0 0 0 1px #121c2d\\", \\"shadow-border-bottom-inverse-new-weaker\\": \\"0 1px 0 #5817bd\\", @@ -1599,6 +1670,7 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"shadow-border-inverse-strongest\\": \\"0 0 0 1px #ffffff\\", \\"shadow-focus-inverse-inset\\": \\"0 0 0 1px #ffffff, inset 0 0 0 3px rgba(255, 255, 255, 0.2)\\", \\"shadow-border-notification\\": \\"0 1px 0 #d61f1f\\", + \\"shadow-elevation-inverse-05\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-user\\": \\"0 0 0 1px #5817bd\\", \\"shadow-border-neutral-weaker\\": \\"0 0 0 1px #043cb5\\", \\"font-family-text\\": \\"'TwilioSansText', 'Inter var experimental', 'Inter var', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif\\", @@ -1653,7 +1725,7 @@ exports[`Design Tokens matches the Twilio Dark theme 1`] = ` \\"color-gray-70\\": \\"rgb(75, 86, 113)\\", \\"color-gray-60\\": \\"rgb(96, 107, 133)\\", \\"color-gray-50\\": \\"rgb(136, 145, 170)\\", - \\"color-gray-40\\": \\"rgb(174, 178, 193)\\", + \\"color-gray-40\\": \\"rgb(142, 150, 174)\\", \\"color-brand\\": \\"rgb(0, 20, 137)\\", \\"color-gray-30\\": \\"rgb(202, 205, 216)\\", \\"color-gray-20\\": \\"rgb(225, 227, 234)\\", @@ -1866,10 +1938,14 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"color-background-destructive-stronger\\": \\"rgb(74, 11, 11)\\", \\"color-background-primary-weaker\\": \\"rgb(204, 228, 255)\\", \\"color-background-destructive-weaker\\": \\"rgb(252, 207, 207)\\", + \\"color-background-inverse-stronger-elevation\\": \\"rgb(64, 79, 110)\\", + \\"color-background-body-elevation\\": \\"rgb(249, 249, 250)\\", \\"color-background-warning\\": \\"rgb(244, 124, 34)\\", + \\"color-background-elevation\\": \\"rgb(237, 238, 242)\\", \\"color-background-warning-weakest\\": \\"rgb(253, 247, 244)\\", \\"color-background-inverse-strong\\": \\"rgb(31, 48, 76)\\", \\"color-background-new\\": \\"rgb(245, 240, 252)\\", + \\"color-background-inverse-elevation\\": \\"rgb(25, 39, 62)\\", \\"color-background-strong\\": \\"rgb(225, 227, 234)\\", \\"color-background-new-weakest\\": \\"rgb(250, 247, 253)\\", \\"color-background-destructive\\": \\"rgb(199, 35, 35)\\", @@ -1879,7 +1955,7 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"color-background-busy\\": \\"rgb(244, 124, 34)\\", \\"color-background-success\\": \\"rgb(20, 176, 83)\\", \\"color-background-destructive-weakest\\": \\"rgb(254, 245, 245)\\", - \\"color-background-offline\\": \\"rgb(174, 178, 193)\\", + \\"color-background-offline\\": \\"rgb(142, 150, 174)\\", \\"color-background-row-striped\\": \\"rgb(249, 249, 250)\\", \\"color-background-primary-strongest\\": \\"rgb(6, 3, 58)\\", \\"color-background-success-weakest\\": \\"rgb(237, 253, 243)\\", @@ -1906,16 +1982,20 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"color-background-primary-weak\\": \\"rgb(153, 205, 255)\\", \\"color-background-brand-30\\": \\"rgb(106, 221, 178)\\", \\"color-background-stronger\\": \\"rgb(136, 145, 170)\\", + \\"color-background-inverse-strong-elevation\\": \\"rgb(37, 57, 91)\\", \\"color-background-brand-20\\": \\"rgb(81, 169, 227)\\", \\"color-background-brand-highlight\\": \\"rgb(242, 47, 70)\\", \\"color-background-brand-highlight-weakest\\": \\"rgba(242, 47, 70, 0.1)\\", \\"color-background-strongest\\": \\"rgb(75, 86, 113)\\", + \\"color-background-inverse-weak-elevation\\": \\"rgb(18, 28, 45)\\", \\"color-background-brand-10\\": \\"rgb(242, 190, 90)\\", + \\"color-background-weaker\\": \\"rgb(255, 255, 255)\\", \\"color-background-body-inverse\\": \\"rgb(18, 28, 45)\\", \\"color-background-inverse\\": \\"rgb(18, 28, 45)\\", \\"color-background-overlay\\": \\"rgba(96, 107, 133, 0.5)\\", \\"color-background-unavailable\\": \\"rgb(214, 31, 31)\\", \\"color-background-inverse-strongest\\": \\"rgb(255, 255, 255)\\", + \\"color-background-weak-elevation\\": \\"rgb(249, 249, 250)\\", \\"color-background-error-stronger\\": \\"rgb(74, 11, 11)\\", \\"color-background-brand-stronger\\": \\"rgb(18, 28, 45)\\", \\"color-border-error-stronger\\": \\"rgb(74, 11, 11)\\", @@ -1989,6 +2069,7 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"shadow\\": \\"0 4px 16px 0 rgba(18, 28, 45, 0.2)\\", \\"shadow-border-bottom-inverse-weaker-inset\\": \\"inset 0 -1px 0 0 #394762\\", \\"shadow-border-subaccount\\": \\"0 0 0 1px #fff1b3\\", + \\"shadow-elevation-05\\": \\"0 0 0 1px #edeef2\\", \\"shadow-border-destructive-stronger\\": \\"0 0 0 1px #4a0b0b\\", \\"shadow-border-success-weaker\\": \\"0 0 0 1px #d1fae0\\", \\"shadow-border-inverse-new-weaker\\": \\"0 0 0 1px #5817bd\\", @@ -1999,9 +2080,12 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"shadow-border-top-inverse-strongest\\": \\"0 -1px 0 #cce4ff\\", \\"shadow-border-bottom-weak\\": \\"0 1px 0 #cacdd8\\", \\"shadow-border-new-weaker\\": \\"0 0 0 1px #e7dcfa\\", + \\"shadow-elevation-bottom-inverse-05\\": \\"0 1px 0 0 #1f304c\\", \\"shadow-low\\": \\"0 2px 8px 0 rgba(18, 28, 45, 0.1)\\", + \\"shadow-elevation-left-20\\": \\"0 0 0 1px #f9f9fa, -4px 0 8px 0 rgba(15, 22, 33, 0.1), -16px 0 32px 0 rgba(15, 22, 33, 0.05)\\", \\"shadow-border-inverse-strong\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border-warning-weaker\\": \\"0 0 0 1px #fddcc4\\", + \\"shadow-elevation-bottom-05\\": \\"0 1px 0 0 #edeef2\\", \\"shadow-border-strong\\": \\"0 0 0 1px #606b85\\", \\"shadow-focus\\": \\"0 0 0 2px #ffffff, 0 0 0 3px #006dfa, 0 0 0 5px #cce4ff\\", \\"shadow-border-weak\\": \\"0 0 0 1px #cacdd8\\", @@ -2010,6 +2094,7 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"shadow-border-destructive\\": \\"0 0 0 1px #c72323\\", \\"shadow-high\\": \\"0 16px 24px 0 rgba(18, 28, 45, 0.2)\\", \\"shadow-right\\": \\"-4px 0 8px -4px rgba(18, 28, 45, 0.2)\\", + \\"shadow-elevation-right-inverse-05\\": \\"1px 0 0 0 #1f304c\\", \\"shadow-border-error-strong\\": \\"0 0 0 1px #750c0c\\", \\"shadow-border-bottom-inverse-weaker\\": \\"0 1px 0 #394762\\", \\"shadow-border-primary-strongest\\": \\"0 0 0 1px #06033a\\", @@ -2021,7 +2106,7 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"shadow-border-bottom-brand-30-strong\\": \\"0 1px 0 #0e7c3a\\", \\"shadow-left\\": \\"4px 0 8px -4px rgba(18, 28, 45, 0.2)\\", \\"shadow-border-error\\": \\"0 0 0 1px #c72323\\", - \\"shadow-border-bottom-decorative-10-weaker\\": \\"0 1px 0 #aeb2c1\\", + \\"shadow-border-bottom-decorative-10-weaker\\": \\"0 1px 0 #8e96ae\\", \\"shadow-border-bottom-primary\\": \\"0 1px 0 #006dfa\\", \\"shadow-border-bottom-decorative-20-weaker\\": \\"0 1px 0 #66b3ff\\", \\"shadow-border-inverse-stronger\\": \\"0 0 0 1px #f4f4f6\\", @@ -2044,14 +2129,18 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"shadow-border-bottom-error-weaker\\": \\"0 1px 0 #f58a8a\\", \\"shadow-border-weaker\\": \\"0 0 0 1px #e1e3ea\\", \\"shadow-border\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-inverse-10\\": \\"0 -1px 0 0 #1f304c, 0 3px 4px 0 rgba(0, 0, 0, 0.4)\\", \\"shadow-border-right-inverse-strong\\": \\"1px 0 #e1e3ea\\", \\"shadow-border-bottom-neutral-weaker\\": \\"0 1px 0 #66b3ff\\", \\"shadow-border-brand-10\\": \\"saffron\\", \\"shadow-border-decorative-10-weaker\\": \\"0 0 0 1px #e1e3ea\\", + \\"shadow-elevation-top-05\\": \\"0 -1px 0 0 #edeef2\\", \\"shadow-border-decorative-20-weaker\\": \\"0 0 0 1px #cce4ff\\", \\"shadow-border-bottom-subaccount\\": \\"0 1px 0 #ffdd35\\", \\"shadow-focus-inset\\": \\"inset 0 0 0 1px #006dfa, inset 0 0 0 3px #cce4ff\\", + \\"shadow-elevation-20\\": \\"0 0 0 1px #f9f9fa, 0 6px 8px 0 rgba(15, 22, 33, 0.1), 16px 16px 32px 0 rgba(15, 22, 33, 0.05)\\", \\"shadow-border-inverse\\": \\"0 0 0 1px #8891aa\\", + \\"shadow-elevation-10\\": \\"0 -1px 0 0 #f4f4f6, 0 3px 4px 0 rgba(15, 22, 33, 0.1)\\", \\"shadow-border-decorative-30-weaker\\": \\"0 0 0 1px #d1fae0\\", \\"shadow-border-inverse-weakest\\": \\"0 0 0 1px #121c2d\\", \\"shadow-border-bottom-inverse-new-weaker\\": \\"0 1px 0 #5817bd\\", @@ -2063,6 +2152,7 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"shadow-border-inverse-strongest\\": \\"0 0 0 1px #ffffff\\", \\"shadow-focus-inverse-inset\\": \\"0 0 0 1px #ffffff, inset 0 0 0 3px rgba(255, 255, 255, 0.2)\\", \\"shadow-border-notification\\": \\"0 1px 0 #d61f1f\\", + \\"shadow-elevation-inverse-05\\": \\"0 0 0 1px #1f304c\\", \\"shadow-border-user\\": \\"0 0 0 1px #e7dcfa\\", \\"shadow-border-neutral-weaker\\": \\"0 0 0 1px #cce4ff\\", \\"font-family-text\\": \\"'TwilioSansText', 'Inter var experimental', 'Inter var', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen-Sans, Ubuntu, Cantarell, 'Helvetica Neue', sans-serif\\", @@ -2117,7 +2207,7 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"color-gray-70\\": \\"rgb(75, 86, 113)\\", \\"color-gray-60\\": \\"rgb(96, 107, 133)\\", \\"color-gray-50\\": \\"rgb(136, 145, 170)\\", - \\"color-gray-40\\": \\"rgb(174, 178, 193)\\", + \\"color-gray-40\\": \\"rgb(142, 150, 174)\\", \\"color-brand\\": \\"rgb(0, 20, 137)\\", \\"color-gray-30\\": \\"rgb(202, 205, 216)\\", \\"color-gray-20\\": \\"rgb(225, 227, 234)\\", @@ -2301,7 +2391,7 @@ exports[`Design Tokens matches the Twilio theme 1`] = ` \\"color-text-destructive-weak\\": \\"rgb(246, 177, 177)\\", \\"color-text-inverse\\": \\"rgb(255, 255, 255)\\", \\"color-text-inverse-weakest\\": \\"rgb(75, 86, 113)\\", - \\"color-text-weaker\\": \\"rgb(174, 178, 193)\\", + \\"color-text-weaker\\": \\"rgb(142, 150, 174)\\", \\"color-text-warning-strong\\": \\"rgb(141, 49, 24)\\", \\"color-text-icon-warning\\": \\"rgb(195, 83, 35)\\", \\"color-text-error-stronger\\": \\"rgb(74, 11, 11)\\", diff --git a/packages/paste-design-tokens/tokens/aliases/box-shadow.yml b/packages/paste-design-tokens/tokens/aliases/box-shadow.yml index 4b81813ef1..1078fd3a9b 100644 --- a/packages/paste-design-tokens/tokens/aliases/box-shadow.yml +++ b/packages/paste-design-tokens/tokens/aliases/box-shadow.yml @@ -3,7 +3,7 @@ imports: - ./offset.yml - ./spacing.yml aliases: - shadow-elevation-0: "none" - shadow-elevation-10: "{!offset-0} {!offset-10} {!offset-40} {!offset-0} {!palette-gray-100-transparent-10}" - shadow-elevation-20: "{!offset-0} {!offset-20} {!offset-60} {!offset-0} {!palette-gray-100-transparent-20}" - shadow-elevation-30: "{!offset-0} {!offset-60} {!offset-80} {!offset-0} {!palette-gray-100-transparent-20}" + deprecated-shadow-elevation-0: "none" + deprecated-shadow-elevation-10: "{!offset-0} {!offset-10} {!offset-40} {!offset-0} {!palette-gray-100-transparent-10}" + deprecated-shadow-elevation-20: "{!offset-0} {!offset-20} {!offset-60} {!offset-0} {!palette-gray-100-transparent-20}" + deprecated-shadow-elevation-30: "{!offset-0} {!offset-60} {!offset-80} {!offset-0} {!palette-gray-100-transparent-20}" diff --git a/packages/paste-design-tokens/tokens/aliases/color-palette.yml b/packages/paste-design-tokens/tokens/aliases/color-palette.yml index 8a9df18c83..f524ee34f6 100644 --- a/packages/paste-design-tokens/tokens/aliases/color-palette.yml +++ b/packages/paste-design-tokens/tokens/aliases/color-palette.yml @@ -29,14 +29,19 @@ aliases: palette-gray-0: "#ffffff" palette-gray-05: "#f9f9fa" palette-gray-10: "#f4f4f6" + palette-gray-15: "#edeef2" palette-gray-20: "#e1e3ea" palette-gray-30: "#cacdd8" - palette-gray-40: "#aeb2c1" + palette-gray-40: "#8e96ae" palette-gray-50: "#8891aa" + palette-gray-55: "#67728e" palette-gray-60: "#606b85" palette-gray-70: "#4b5671" + palette-gray-75: "#404f6e" palette-gray-80: "#394762" + palette-gray-85: "#25395b" palette-gray-90: "#1f304c" + palette-gray-95: "#19273E" palette-gray-100: "#121c2d" palette-gray-110: "#0F1621" @@ -52,7 +57,7 @@ aliases: palette-gray-0-transparent-90: "rgba(255, 255, 255, 0.9)" palette-gray-0-transparent-100: "rgba(255, 255, 255, 1)" - ## Grays transparent based on darkest gray + ## Grays transparent based on dark gray palette-gray-100-transparent-10: "rgba(18, 28, 45, 0.1)" palette-gray-100-transparent-20: "rgba(18, 28, 45, 0.2)" palette-gray-100-transparent-30: "rgba(18, 28, 45, 0.3)" @@ -64,6 +69,13 @@ aliases: palette-gray-100-transparent-90: "rgba(18, 28, 45, 0.9)" palette-gray-100-transparent-100: "rgba(18, 28, 45, 1)" + ## Grays transparent based on darkest gray + palette-gray-110-transparent-05: "rgba(15, 22, 33, 0.05)" + palette-gray-110-transparent-10: "rgba(15, 22, 33, 0.1)" + + ## Blacks transparent + palette-black-transparent-40: "rgba(0, 0, 0, 0.4)" + ## Blues transparent based on darkest blue palette-blue-100-transparent-10: "rgba(6, 3, 58, 0.1)" palette-blue-100-transparent-20: "rgba(6, 3, 58, 0.2)" diff --git a/packages/paste-design-tokens/tokens/aliases/color.yml b/packages/paste-design-tokens/tokens/aliases/color.yml index 801741936d..57c02860a2 100644 --- a/packages/paste-design-tokens/tokens/aliases/color.yml +++ b/packages/paste-design-tokens/tokens/aliases/color.yml @@ -11,4 +11,3 @@ aliases: sun: "#FF7A00" white: "#FFFFFF" white-accent: "#F6FBFE" - black-transparent-40: "rgba(0, 0, 0, 0.4)" diff --git a/packages/paste-design-tokens/tokens/aliases/offset.yml b/packages/paste-design-tokens/tokens/aliases/offset.yml index 753518ce58..bf1aec7bbf 100644 --- a/packages/paste-design-tokens/tokens/aliases/offset.yml +++ b/packages/paste-design-tokens/tokens/aliases/offset.yml @@ -14,3 +14,4 @@ aliases: offset-90: "32px" offset-negative-05: -1px offset-negative-20: -4px + offset-negative-60: -16px diff --git a/packages/paste-design-tokens/tokens/global/background-color.yml b/packages/paste-design-tokens/tokens/global/background-color.yml index 3ae9a24caf..6dc9a25a20 100644 --- a/packages/paste-design-tokens/tokens/global/background-color.yml +++ b/packages/paste-design-tokens/tokens/global/background-color.yml @@ -33,6 +33,9 @@ props: color-background-weak: value: "{!palette-gray-05}" comment: Weak background color used for containers. + color-background-weaker: + value: "{!palette-gray-0}" + comment: Background color for elevated elements. Matches color-background-body in light mode but appears slightly lighter in dark mode to maintain focus. # brand backgrounds color-background-brand: @@ -210,3 +213,26 @@ props: color-background-notification: value: "{!palette-red-60}" comment: Background color used for notifications. + + #elevation background + color-background-body-elevation: + value: "{!palette-gray-05}" + comment: Elevation token for color-background-body elements. + color-background-weak-elevation: + value: "{!palette-gray-05}" + comment: Elevation token for color-background-weak elements. + color-background-elevation: + value: "{!palette-gray-15}" + comment: Elevation token for color-background elements. + color-background-inverse-elevation: + value: "{!palette-gray-95}" + comment: Elevation token for color-background-inverse elements. + color-background-inverse-weak-elevation: + value: "{!palette-gray-85}" + comment: Elevation token for color-background-inverse-weak elements. + color-background-inverse-strong-elevation: + value: "{!palette-gray-75}" + comment: Elevation token for color-background-inverse-strong elements. + color-background-inverse-stronger-elevation: + value: "{!palette-gray-75}" + comment: Elevation token for color-background-inverse-stronger elements. diff --git a/packages/paste-design-tokens/tokens/global/box-shadow.yml b/packages/paste-design-tokens/tokens/global/box-shadow.yml index 67095948e7..45eaa882fc 100644 --- a/packages/paste-design-tokens/tokens/global/box-shadow.yml +++ b/packages/paste-design-tokens/tokens/global/box-shadow.yml @@ -4,19 +4,18 @@ global: imports: - ../aliases/box-shadow.yml - ../aliases/offset.yml - - ../aliases/color.yml props: shadow-high: - value: "{!shadow-elevation-30}" + value: "{!deprecated-shadow-elevation-30}" comment: High elevation default shadow. shadow: - value: "{!shadow-elevation-20}" + value: "{!deprecated-shadow-elevation-20}" comment: Default shadow. shadow-low: - value: "{!shadow-elevation-10}" + value: "{!deprecated-shadow-elevation-10}" comment: Low elevation default shadow. shadow-card: - value: "{!shadow-elevation-10}" + value: "{!deprecated-shadow-elevation-10}" comment: Shadow for cards. shadow-focus: value: "{!offset-0} {!offset-0} {!offset-0} {!offset-20} {!palette-blue-60-transparent-70}" @@ -250,11 +249,43 @@ props: value: "{!offset-20} {!offset-0} {!offset-40} {!offset-negative-20} {!palette-gray-100-transparent-20}" comment: Left shadow border for elements. shadow-left-inverse: - value: "{!offset-20} {!offset-0} {!offset-40} {!offset-negative-20} {!black-transparent-40}" + value: "{!offset-20} {!offset-0} {!offset-40} {!offset-negative-20} {!palette-black-transparent-40}" comment: Left shadow border for inverse elements. shadow-right: value: "{!offset-negative-20} {!offset-0} {!offset-40} {!offset-negative-20} {!palette-gray-100-transparent-20}" comment: Right shadow border for elements. shadow-right-inverse: - value: "{!offset-negative-20} {!offset-0} {!offset-40} {!offset-negative-20} {!black-transparent-40}" + value: "{!offset-negative-20} {!offset-0} {!offset-40} {!offset-negative-20} {!palette-black-transparent-40}" comment: Right shadow border for inverse elements. + + # Elevation + shadow-elevation-05: + value: "{!offset-0} {!offset-0} {!offset-0} {!offset-05} {!palette-gray-15}" + comment: Accent shadows that subtly define the edges of a container. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-top-05: + value: "{!offset-0} {!offset-negative-05} {!offset-0} {!offset-0} {!palette-gray-15}" + comment: Accent shadows that subtly define the top edges of an element. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-bottom-05: + value: "{!offset-0} {!offset-05} {!offset-0} {!offset-0} {!palette-gray-15}" + comment: Accent shadows that subtly define the bottom edge of an element. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-inverse-05: + value: "{!offset-0} {!offset-0} {!offset-0} {!offset-05} {!palette-gray-90}" + comment: Accent shadows that subtly define the the edges of a container on inverse backgrounds. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-bottom-inverse-05: + value: "{!offset-0} {!offset-05} {!offset-0} {!offset-0} {!palette-gray-90}" + comment: Accent shadows that subtly define the bottom edge of an inverse element. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-right-inverse-05: + value: "{!offset-05} {!offset-0} {!offset-0} {!offset-0} {!palette-gray-90}" + comment: Accent shadows that subtly define the right edge of an inverse element. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-10: + value: "{!offset-0} {!offset-negative-05} {!offset-0} {!offset-0} {!palette-gray-10}, {!offset-0} {!offset-15} {!offset-20} {!offset-0} {!palette-gray-110-transparent-10}" + comment: Use on elements that overlay other UI components but remain visually connected to the elements behind them. + shadow-elevation-inverse-10: + value: "{!offset-0} {!offset-negative-05} {!offset-0} {!offset-0} {!palette-gray-90}, {!offset-0} {!offset-15} {!offset-20} {!offset-0} {!palette-black-transparent-40}" + comment: Use on inverse elements that overlay other UI components but remain visually connected to the elements behind them. + shadow-elevation-20: + value: "{!offset-0} {!offset-0} {!offset-0} {!offset-05} {!palette-gray-05}, {!offset-0} {!offset-30} {!offset-40} {!offset-0} {!palette-gray-110-transparent-10}, {!offset-60} {!offset-60} {!offset-90} {!offset-0} {!palette-gray-110-transparent-05}" + comment: Use on elements that sit above the UI to indicate a greater distance distance from the surface behind them. + shadow-elevation-left-20: + value: "{!offset-0} {!offset-0} {!offset-0} {!offset-05} {!palette-gray-05}, {!offset-negative-20} {!offset-0} {!offset-40} {!offset-0} {!palette-gray-110-transparent-10}, {!offset-negative-60} {!offset-0} {!offset-90} {!offset-0} {!palette-gray-110-transparent-05}" + comment: Use for elements that dynamically open from the right side of the screen, appearing above the UI to indicate a greater separation from the underlying surface. diff --git a/packages/paste-design-tokens/tokens/themes/dark/aliases/box-shadow.yml b/packages/paste-design-tokens/tokens/themes/dark/aliases/box-shadow.yml index c64fff9e2b..15f410f617 100644 --- a/packages/paste-design-tokens/tokens/themes/dark/aliases/box-shadow.yml +++ b/packages/paste-design-tokens/tokens/themes/dark/aliases/box-shadow.yml @@ -2,9 +2,8 @@ imports: - ../../../aliases/box-shadow.yml - ../../../aliases/offset.yml - ./color-palette.yml - - ./color.yml aliases: - shadow-elevation-0: "none" - shadow-elevation-10: "{!offset-0} {!offset-10} {!offset-20} {!offset-0} {!black-transparent-40}" - shadow-elevation-20: "{!offset-0} {!offset-20} {!offset-60} {!offset-0} {!black-transparent-50}" - shadow-elevation-30: "{!offset-0} {!offset-60} {!offset-80} {!offset-20} {!black-transparent-50}" + deprecated-shadow-elevation-0: "none" + deprecated-shadow-elevation-10: "{!offset-0} {!offset-10} {!offset-20} {!offset-0} {!palette-black-transparent-40}" + deprecated-shadow-elevation-20: "{!offset-0} {!offset-20} {!offset-60} {!offset-0} {!palette-black-transparent-50}" + deprecated-shadow-elevation-30: "{!offset-0} {!offset-60} {!offset-80} {!offset-20} {!palette-black-transparent-50}" diff --git a/packages/paste-design-tokens/tokens/themes/dark/aliases/color-palette.yml b/packages/paste-design-tokens/tokens/themes/dark/aliases/color-palette.yml index 530c80ddd5..f062895d37 100644 --- a/packages/paste-design-tokens/tokens/themes/dark/aliases/color-palette.yml +++ b/packages/paste-design-tokens/tokens/themes/dark/aliases/color-palette.yml @@ -99,6 +99,18 @@ aliases: palette-gray-80-transparent-90: "rgba(57, 71, 98, 0.9)" palette-gray-80-transparent-100: "rgba(57, 71, 98, 1)" + ## Blacks transparent + palette-black-transparent-10: "rgba(0, 0, 0, 0.1)" + palette-black-transparent-20: "rgba(0, 0, 0, 0.2)" + palette-black-transparent-30: "rgba(0, 0, 0, 0.3)" + palette-black-transparent-40: "rgba(0, 0, 0, 0.4)" + palette-black-transparent-50: "rgba(0, 0, 0, 0.5)" + palette-black-transparent-60: "rgba(0, 0, 0, 0.6)" + palette-black-transparent-70: "rgba(0, 0, 0, 0.7)" + palette-black-transparent-80: "rgba(0, 0, 0, 0.8)" + palette-black-transparent-90: "rgba(0, 0, 0, 0.9)" + palette-black-transparent-100: "rgba(0, 0, 0, 1)" + ## Greens palette-green-10: "#edfdf3" palette-green-20: "#d1fae0" diff --git a/packages/paste-design-tokens/tokens/themes/dark/aliases/color.yml b/packages/paste-design-tokens/tokens/themes/dark/aliases/color.yml deleted file mode 100644 index 35682e1aec..0000000000 --- a/packages/paste-design-tokens/tokens/themes/dark/aliases/color.yml +++ /dev/null @@ -1,14 +0,0 @@ -imports: - - ../../../aliases/color.yml - -aliases: - black-transparent-10: "rgba(0, 0, 0, 0.1)" - black-transparent-20: "rgba(0, 0, 0, 0.2)" - black-transparent-30: "rgba(0, 0, 0, 0.3)" - black-transparent-40: "rgba(0, 0, 0, 0.4)" - black-transparent-50: "rgba(0, 0, 0, 0.5)" - black-transparent-60: "rgba(0, 0, 0, 0.6)" - black-transparent-70: "rgba(0, 0, 0, 0.7)" - black-transparent-80: "rgba(0, 0, 0, 0.8)" - black-transparent-90: "rgba(0, 0, 0, 0.9)" - black-transparent-100: "rgba(0, 0, 0, 1)" diff --git a/packages/paste-design-tokens/tokens/themes/dark/global/background-color.yml b/packages/paste-design-tokens/tokens/themes/dark/global/background-color.yml index 8de81872c3..a08aa9b979 100644 --- a/packages/paste-design-tokens/tokens/themes/dark/global/background-color.yml +++ b/packages/paste-design-tokens/tokens/themes/dark/global/background-color.yml @@ -3,7 +3,6 @@ global: category: background-color imports: - ../../../global/background-color.yml - - ../aliases/color.yml - ../aliases/color-palette.yml props: # base background @@ -31,6 +30,9 @@ props: color-background-weak: value: "{!palette-gray-100}" comment: Weak default background color. + color-background-weaker: + value: "{!palette-gray-100}" + comment: Background color for elevated elements. Matches color-background-body in light mode but appears slightly lighter in dark mode to maintain focus. # brand backgrounds color-background-brand: @@ -191,3 +193,14 @@ props: color-background-decorative-40-weakest: value: "{!palette-purple-80}" comment: "Weakest background color with no semantic meaning, used for decorative purposes only. Should generally be used with matching decorative border and/or text tokens." + + #elevation background + color-background-body-elevation: + value: "{!palette-gray-95}" + comment: Elevation token for color-background-body elements. + color-background-weak-elevation: + value: "{!palette-gray-100}" + comment: Elevation token for color-background-weak elements. + color-background-elevation: + value: "{!palette-gray-95}" + comment: Elevation token for color-background elements. diff --git a/packages/paste-design-tokens/tokens/themes/dark/global/border-color.yml b/packages/paste-design-tokens/tokens/themes/dark/global/border-color.yml index 47c7c0b7c0..d46ed7a693 100644 --- a/packages/paste-design-tokens/tokens/themes/dark/global/border-color.yml +++ b/packages/paste-design-tokens/tokens/themes/dark/global/border-color.yml @@ -3,7 +3,6 @@ global: category: border-color imports: - ../../../global/border-color.yml - - ../aliases/color.yml - ../aliases/color-palette.yml props: color-border-strong: diff --git a/packages/paste-design-tokens/tokens/themes/dark/global/box-shadow.yml b/packages/paste-design-tokens/tokens/themes/dark/global/box-shadow.yml index b34336e5a2..f802ce9356 100644 --- a/packages/paste-design-tokens/tokens/themes/dark/global/box-shadow.yml +++ b/packages/paste-design-tokens/tokens/themes/dark/global/box-shadow.yml @@ -6,16 +6,16 @@ imports: - ../aliases/box-shadow.yml props: shadow-high: - value: "{!shadow-elevation-30}" + value: "{!deprecated-shadow-elevation-30}" comment: High elevation default shadow. shadow: - value: "{!shadow-elevation-20}" + value: "{!deprecated-shadow-elevation-20}" comment: Default shadow. shadow-low: - value: "{!shadow-elevation-10}" + value: "{!deprecated-shadow-elevation-10}" comment: Low elevation default shadow. shadow-card: - value: "{!shadow-elevation-10}" + value: "{!deprecated-shadow-elevation-10}" comment: Shadow for cards. shadow-focus: value: "{!offset-0} {!offset-0} {!offset-0} {!offset-20} {!palette-gray-60}" @@ -179,8 +179,28 @@ props: # Left / Right shadow-left: - value: "{!offset-20} {!offset-0} {!offset-40} {!offset-negative-20} {!black-transparent-40}" + value: "{!offset-20} {!offset-0} {!offset-40} {!offset-negative-20} {!palette-black-transparent-40}" comment: Left shadow border for elements. shadow-right: - value: "{!offset-negative-20} {!offset-0} {!offset-40} {!offset-negative-20} {!black-transparent-40}" + value: "{!offset-negative-20} {!offset-0} {!offset-40} {!offset-negative-20} {!palette-black-transparent-40}" comment: Right shadow border for elements. + + # Elevation + shadow-elevation-05: + value: "{!offset-0} {!offset-0} {!offset-0} {!offset-05} {!palette-gray-90}" + comment: Accent shadows that subtly define the edges of a container. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-top-05: + value: "{!offset-0} {!offset-negative-05} {!offset-0} {!offset-0} {!palette-gray-90}" + comment: Accent shadows that subtly define the top edges of an element. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-bottom-05: + value: "{!offset-0} {!offset-05} {!offset-0} {!offset-0} {!palette-gray-90}" + comment: Accent shadows that subtly define the bottom edge of an element. They serve as a lightweight alternative to risen shadows at lower elevations. + shadow-elevation-10: + value: "{!offset-0} {!offset-negative-05} {!offset-0} {!offset-0} {!palette-gray-90}, {!offset-0} {!offset-15} {!offset-20} {!offset-0} {!palette-black-transparent-40}" + comment: Use on elements that overlay other UI components but remain visually connected to the elements behind them. + shadow-elevation-20: + value: "{!offset-0} {!offset-0} {!offset-0} {!offset-05} {!palette-gray-95}, {!offset-0} {!offset-30} {!offset-40} {!offset-0} {!palette-black-transparent-30}, {!offset-60} {!offset-60} {!offset-90} {!offset-0} {!palette-black-transparent-20}" + comment: Use on elements that sit above the UI to indicate a greater distance distance from the surface behind them. + shadow-elevation-left-20: + value: "{!offset-0} {!offset-0} {!offset-0} {!offset-05} {!palette-gray-95}, {!offset-negative-20} {!offset-0} {!offset-40} {!offset-0} {!palette-black-transparent-30}, {!offset-negative-60} {!offset-0} {!offset-90} {!offset-0} {!palette-black-transparent-20}" + comment: Use for elements that dynamically open from the right side of the screen, appearing above the UI to indicate a greater separation from the underlying surface. diff --git a/packages/paste-design-tokens/tokens/themes/dark/global/text-color.yml b/packages/paste-design-tokens/tokens/themes/dark/global/text-color.yml index bc2825bb23..d9ec03766d 100644 --- a/packages/paste-design-tokens/tokens/themes/dark/global/text-color.yml +++ b/packages/paste-design-tokens/tokens/themes/dark/global/text-color.yml @@ -3,7 +3,6 @@ global: category: text-color imports: - ../../../global/text-color.yml - - ../aliases/color.yml - ../aliases/color-palette.yml props: # body text diff --git a/packages/paste-design-tokens/tokens/themes/evergreen/aliases/box-shadow.yml b/packages/paste-design-tokens/tokens/themes/evergreen/aliases/box-shadow.yml index c64fff9e2b..15f410f617 100644 --- a/packages/paste-design-tokens/tokens/themes/evergreen/aliases/box-shadow.yml +++ b/packages/paste-design-tokens/tokens/themes/evergreen/aliases/box-shadow.yml @@ -2,9 +2,8 @@ imports: - ../../../aliases/box-shadow.yml - ../../../aliases/offset.yml - ./color-palette.yml - - ./color.yml aliases: - shadow-elevation-0: "none" - shadow-elevation-10: "{!offset-0} {!offset-10} {!offset-20} {!offset-0} {!black-transparent-40}" - shadow-elevation-20: "{!offset-0} {!offset-20} {!offset-60} {!offset-0} {!black-transparent-50}" - shadow-elevation-30: "{!offset-0} {!offset-60} {!offset-80} {!offset-20} {!black-transparent-50}" + deprecated-shadow-elevation-0: "none" + deprecated-shadow-elevation-10: "{!offset-0} {!offset-10} {!offset-20} {!offset-0} {!palette-black-transparent-40}" + deprecated-shadow-elevation-20: "{!offset-0} {!offset-20} {!offset-60} {!offset-0} {!palette-black-transparent-50}" + deprecated-shadow-elevation-30: "{!offset-0} {!offset-60} {!offset-80} {!offset-20} {!palette-black-transparent-50}" diff --git a/packages/paste-design-tokens/tokens/themes/evergreen/aliases/color-palette.yml b/packages/paste-design-tokens/tokens/themes/evergreen/aliases/color-palette.yml index 530c80ddd5..b40682f9bc 100644 --- a/packages/paste-design-tokens/tokens/themes/evergreen/aliases/color-palette.yml +++ b/packages/paste-design-tokens/tokens/themes/evergreen/aliases/color-palette.yml @@ -99,6 +99,18 @@ aliases: palette-gray-80-transparent-90: "rgba(57, 71, 98, 0.9)" palette-gray-80-transparent-100: "rgba(57, 71, 98, 1)" + # Blacks transparent + palette-black-transparent-10: "rgba(0, 0, 0, 0.1)" + palette-black-transparent-20: "rgba(0, 0, 0, 0.2)" + palette-black-transparent-30: "rgba(0, 0, 0, 0.3)" + palette-black-transparent-40: "rgba(0, 0, 0, 0.4)" + palette-black-transparent-50: "rgba(0, 0, 0, 0.5)" + palette-black-transparent-60: "rgba(0, 0, 0, 0.6)" + palette-black-transparent-70: "rgba(0, 0, 0, 0.7)" + palette-black-transparent-80: "rgba(0, 0, 0, 0.8)" + palette-black-transparent-90: "rgba(0, 0, 0, 0.9)" + palette-black-transparent-100: "rgba(0, 0, 0, 1)" + ## Greens palette-green-10: "#edfdf3" palette-green-20: "#d1fae0" diff --git a/packages/paste-design-tokens/tokens/themes/evergreen/aliases/color.yml b/packages/paste-design-tokens/tokens/themes/evergreen/aliases/color.yml deleted file mode 100644 index 35682e1aec..0000000000 --- a/packages/paste-design-tokens/tokens/themes/evergreen/aliases/color.yml +++ /dev/null @@ -1,14 +0,0 @@ -imports: - - ../../../aliases/color.yml - -aliases: - black-transparent-10: "rgba(0, 0, 0, 0.1)" - black-transparent-20: "rgba(0, 0, 0, 0.2)" - black-transparent-30: "rgba(0, 0, 0, 0.3)" - black-transparent-40: "rgba(0, 0, 0, 0.4)" - black-transparent-50: "rgba(0, 0, 0, 0.5)" - black-transparent-60: "rgba(0, 0, 0, 0.6)" - black-transparent-70: "rgba(0, 0, 0, 0.7)" - black-transparent-80: "rgba(0, 0, 0, 0.8)" - black-transparent-90: "rgba(0, 0, 0, 0.9)" - black-transparent-100: "rgba(0, 0, 0, 1)" diff --git a/packages/paste-design-tokens/tokens/themes/evergreen/global/background-color.yml b/packages/paste-design-tokens/tokens/themes/evergreen/global/background-color.yml index 2f389d2da4..a0dfd4558a 100644 --- a/packages/paste-design-tokens/tokens/themes/evergreen/global/background-color.yml +++ b/packages/paste-design-tokens/tokens/themes/evergreen/global/background-color.yml @@ -3,7 +3,6 @@ global: category: background-color imports: - ../../../global/background-color.yml - - ../aliases/color.yml - ../aliases/color-palette.yml props: # base background @@ -14,7 +13,7 @@ props: value: "#E6E8F0" comment: Strong default background color. color-background-stronger: - value: "#C1C4D6" + value: "{!palette-gray-30}" comment: Stronger default background color. color-background-strongest: value: "#696F8C" @@ -23,13 +22,13 @@ props: value: "#F9FAFC" comment: Weak default background color. color-background-inverse: - value: "#101840" + value: "{!palette-gray-100}" comment: Inverse background color for any container. Must be used on color-background-body-inverse. color-background-inverse-strong: - value: "#474D66" + value: "{!palette-gray-75}" comment: Strong inverse background color for any container. Must be used on color-background-body-inverse. color-background-inverse-stronger: - value: "#696F8C" + value: "{!palette-gray-60}" comment: Stronger inverse background color for any container. Must be used on color-background-body-inverse. # brand backgrounds @@ -61,7 +60,7 @@ props: value: "#FFFFFF" comment: Background color used for the main page body. color-background-body-inverse: - value: "#101840" + value: "{!palette-gray-100}" comment: Inverse background color used for the main page body. # status @@ -182,3 +181,14 @@ props: color-background-decorative-40-weakest: value: "F8F7FD" comment: "Weakest background color with no semantic meaning, used for decorative purposes only. Should generally be used with matching decorative border and/or text tokens." + + #elevation background + color-background-inverse-weak-elevation: + value: "{!palette-gray-95}" + comment: Elevation token for color-background-inverse-weak elements. + color-background-inverse-strong-elevation: + value: "{!palette-gray-70}" + comment: Elevation token for color-background-inverse-strong elements. + color-background-inverse-stronger-elevation: + value: "{!palette-gray-55}" + comment: Elevation token for color-background-inverse-stronger elements. diff --git a/packages/paste-design-tokens/tokens/themes/evergreen/global/border-color.yml b/packages/paste-design-tokens/tokens/themes/evergreen/global/border-color.yml index 719b8281f9..721f3ae0c8 100644 --- a/packages/paste-design-tokens/tokens/themes/evergreen/global/border-color.yml +++ b/packages/paste-design-tokens/tokens/themes/evergreen/global/border-color.yml @@ -3,7 +3,6 @@ global: category: border-color imports: - ../../../global/border-color.yml - - ../aliases/color.yml - ../aliases/color-palette.yml props: color-border-strong: diff --git a/packages/paste-design-tokens/tokens/themes/evergreen/global/text-color.yml b/packages/paste-design-tokens/tokens/themes/evergreen/global/text-color.yml index decdbae90f..6ab24ee943 100644 --- a/packages/paste-design-tokens/tokens/themes/evergreen/global/text-color.yml +++ b/packages/paste-design-tokens/tokens/themes/evergreen/global/text-color.yml @@ -3,7 +3,6 @@ global: category: text-color imports: - ../../../global/text-color.yml - - ../aliases/color.yml - ../aliases/color-palette.yml props: # body text diff --git a/packages/paste-design-tokens/tokens/themes/twilio-dark/global/background-color.yml b/packages/paste-design-tokens/tokens/themes/twilio-dark/global/background-color.yml index 8203df2cb0..7613686f9b 100644 --- a/packages/paste-design-tokens/tokens/themes/twilio-dark/global/background-color.yml +++ b/packages/paste-design-tokens/tokens/themes/twilio-dark/global/background-color.yml @@ -11,6 +11,8 @@ props: color-background-inverse-strong: value: "{!palette-gray-90}" comment: Strong inverse background color for any container. Must be used on color-background-body-inverse. + color-background-weaker: + value: "{!palette-gray-100}" # brand backgrounds color-background-brand: @@ -61,3 +63,20 @@ props: color-background-decorative-40-weakest: value: "{!palette-purple-90}" comment: "Weakest background color with no semantic meaning, used for decorative purposes only. Should generally be used with matching decorative border and/or text tokens." + + #elevation background + color-background-body-elevation: + value: "{!palette-gray-95}" + comment: Elevation token for color-background-body elements. + color-background-weak-elevation: + value: "{!palette-gray-100}" + comment: Elevation token for color-background-weak elements. + color-background-elevation: + value: "{!palette-gray-95}" + comment: Elevation token for color-background elements. + color-background-inverse-weak-elevation: + value: "{!palette-gray-100}" + comment: Elevation token for color-background-inverse-weak elements. + color-background-inverse-strong-elevation: + value: "{!palette-gray-85}" + comment: Elevation token for color-background-inverse-strong elements. diff --git a/packages/paste-design-tokens/tokens/themes/twilio/global/background-color.yml b/packages/paste-design-tokens/tokens/themes/twilio/global/background-color.yml index a728db6d75..8ad8c41a85 100644 --- a/packages/paste-design-tokens/tokens/themes/twilio/global/background-color.yml +++ b/packages/paste-design-tokens/tokens/themes/twilio/global/background-color.yml @@ -86,3 +86,11 @@ props: color-background-decorative-40-weakest: value: "{!palette-purple-05}" comment: "Weakest background color with no semantic meaning, used for decorative purposes only. Should generally be used with matching decorative border and/or text tokens." + + #elevation background + color-background-inverse-weak-elevation: + value: "{!palette-gray-100}" + comment: Elevation token for color-background-inverse-weak elements. + color-background-inverse-strong-elevation: + value: "{!palette-gray-85}" + comment: Elevation token for color-background-inverse-strong elements. diff --git a/packages/paste-libraries/data-visualization/__test__/__snapshots__/index.spec.tsx.snap b/packages/paste-libraries/data-visualization/__test__/__snapshots__/index.spec.tsx.snap index f75e26094c..1e7b20ed73 100644 --- a/packages/paste-libraries/data-visualization/__test__/__snapshots__/index.spec.tsx.snap +++ b/packages/paste-libraries/data-visualization/__test__/__snapshots__/index.spec.tsx.snap @@ -22,7 +22,7 @@ Object { ], "credits": Object { "style": Object { - "color": "rgb(174, 178, 193)", + "color": "rgb(142, 150, 174)", }, }, "labels": Object { @@ -188,7 +188,7 @@ Object { ], "credits": Object { "style": Object { - "color": "rgb(174, 178, 193)", + "color": "rgb(142, 150, 174)", }, }, "labels": Object { diff --git a/packages/paste-website/src/__tests__/colorGradient.test.tsx b/packages/paste-website/src/__tests__/colorGradient.test.tsx index f6e7b965e5..033d0e6c6d 100644 --- a/packages/paste-website/src/__tests__/colorGradient.test.tsx +++ b/packages/paste-website/src/__tests__/colorGradient.test.tsx @@ -4,14 +4,19 @@ const sampleAliases = ["palette-gray-80", "palette-gray-100", "palette-gray-20", const sortedAliases = ["palette-gray-100", "palette-gray-80", "palette-gray-60", "palette-gray-20"]; const aliasValues = [ "#121c2d", + "#19273E", "#1f304c", + "#25395b", "#394762", + "#404f6e", "#4b5671", "#606b85", + "#67728e", "#8891aa", - "#aeb2c1", + "#8e96ae", "#cacdd8", "#e1e3ea", + "#edeef2", "#f4f4f6", ]; diff --git a/packages/paste-website/src/components/tokens-list/index.tsx b/packages/paste-website/src/components/tokens-list/index.tsx index ef7a0a519a..0e50f3b7e0 100644 --- a/packages/paste-website/src/components/tokens-list/index.tsx +++ b/packages/paste-website/src/components/tokens-list/index.tsx @@ -40,6 +40,11 @@ const Content: React.FC> = (props) => ( const defaultTheme = "twilio"; const defaultFormat = "css"; +const hiddenTokens = { + "box-shadows": ["shadow", "shadow-low", "shadow-high", "shadow-card"], + "color-schemes": ["color-scheme"], +}; + const getTokenListByTheme = (theme: Themes): Tokens => { let tokenList: Tokens = TwilioThemeTokens.tokens; @@ -61,6 +66,19 @@ const getTokenListByTheme = (theme: Themes): Tokens => { tokenList = TwilioThemeTokens.tokens; break; } + + // Remove hidden tokens from tokenList + Object.keys(hiddenTokens).forEach((category) => { + const cat = category as keyof typeof hiddenTokens; + hiddenTokens[cat].forEach((token) => { + tokenList[cat].forEach((tokenObj) => { + if (tokenObj.name === token) { + tokenList[cat] = tokenList[cat].filter((item) => item.name !== token); + } + }); + }); + }); + return tokenList; };