diff --git a/.changeset/calm-ties-hear.md b/.changeset/calm-ties-hear.md new file mode 100644 index 0000000..6b7c7c2 --- /dev/null +++ b/.changeset/calm-ties-hear.md @@ -0,0 +1,5 @@ +--- +"@openfun/cunningham-tokens": minor +--- + +Suffix all sass maps with the `!default` map diff --git a/packages/tokens/src/bin/Generators/SassGenerator.spec.ts b/packages/tokens/src/bin/Generators/SassGenerator.spec.ts index d0a0d0f..bac693a 100644 --- a/packages/tokens/src/bin/Generators/SassGenerator.spec.ts +++ b/packages/tokens/src/bin/Generators/SassGenerator.spec.ts @@ -30,22 +30,22 @@ describe("SassGenerator", () => { 'secondary': #DA0000, 'ternary-900': #022858, 'ogre-odor-is-orange-indeed': #FD5240 - ); + ) !default; $fontFamilies: ( 'base': Roboto - ); + ) !default; $fontSizes: ( 'm': 1rem - ); + ) !default; $fontWeights: ( 'medium': 400 - ); + ) !default; $spacings: ( 's': 1rem - ); + ) !default; $transitions: ( 'ease': linear - ); + ) !default; " `); }); diff --git a/packages/tokens/src/bin/Generators/SassGenerator.ts b/packages/tokens/src/bin/Generators/SassGenerator.ts index 12e4a07..7563d4e 100644 --- a/packages/tokens/src/bin/Generators/SassGenerator.ts +++ b/packages/tokens/src/bin/Generators/SassGenerator.ts @@ -49,7 +49,7 @@ const generateTransitionsSassMap = (tokens: Tokens) => { return `$transitions: ${JSONToSassMap(tokens.theme.transitions)};`; }; -function JSONToSassMap(json: Object) { +function JSONToSassMap(json: Object, isDefault = true) { function deepQuoteObjectKeys(object: Object) { return Object.entries(object).reduce( (acc, [key, value]): Record => ({ @@ -65,5 +65,6 @@ function JSONToSassMap(json: Object) { return JSON.stringify(jsonWithQuotedKeys, null, 2) .replace(/{/g, "(") .replace(/}/g, ")") - .replace(/"/g, ""); + .replace(/"/g, "") + .concat(isDefault ? " !default" : ""); }