@digdir/designsystemet 1.6.1 → 1.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. package/README.md +1 -1
  2. package/configs/test-tokens.config.json +9 -0
  3. package/dist/bin/config.js +12 -14
  4. package/dist/bin/designsystemet.js +44 -317
  5. package/dist/color.base.template-QGZJKXMN.json +22 -0
  6. package/dist/config.schema.json +23 -7
  7. package/dist/src/colors/colorMetadata.d.ts +2 -0
  8. package/dist/src/colors/colorMetadata.d.ts.map +1 -1
  9. package/dist/src/colors/colorMetadata.js +8 -5
  10. package/dist/src/colors/index.js +9 -17
  11. package/dist/src/colors/theme.d.ts.map +1 -1
  12. package/dist/src/colors/theme.js +14 -18
  13. package/dist/src/colors/types.d.ts +1 -1
  14. package/dist/src/colors/types.d.ts.map +1 -1
  15. package/dist/src/config.d.ts +18 -0
  16. package/dist/src/config.d.ts.map +1 -1
  17. package/dist/src/config.js +12 -14
  18. package/dist/src/index.d.ts +1 -0
  19. package/dist/src/index.d.ts.map +1 -1
  20. package/dist/src/index.js +211 -416
  21. package/dist/src/scripts/createJsonSchema.js +12 -14
  22. package/dist/src/scripts/update-preview-tokens.js +33 -294
  23. package/dist/src/scripts/update-template.d.ts.map +1 -1
  24. package/dist/src/scripts/update-template.js +349 -71
  25. package/dist/src/tokens/build.js +5 -5
  26. package/dist/src/tokens/create/generators/$designsystemet.js +5 -5
  27. package/dist/src/tokens/create/generators/$metadata.d.ts.map +1 -1
  28. package/dist/src/tokens/create/generators/$metadata.js +1 -4
  29. package/dist/src/tokens/create/generators/$themes.js +0 -1
  30. package/dist/src/tokens/create/generators/color.d.ts +0 -1
  31. package/dist/src/tokens/create/generators/color.d.ts.map +1 -1
  32. package/dist/src/tokens/create/generators/color.js +20 -23
  33. package/dist/src/tokens/create/generators/semantic.d.ts +1 -265
  34. package/dist/src/tokens/create/generators/semantic.d.ts.map +1 -1
  35. package/dist/src/tokens/create/generators/semantic.js +261 -270
  36. package/dist/src/tokens/create/generators/theme.d.ts.map +1 -1
  37. package/dist/src/tokens/create/generators/theme.js +265 -5
  38. package/dist/src/tokens/create/write.js +6 -10
  39. package/dist/src/tokens/create.d.ts.map +1 -1
  40. package/dist/src/tokens/create.js +33 -293
  41. package/dist/src/tokens/format.js +38 -299
  42. package/dist/src/tokens/index.js +38 -299
  43. package/dist/src/tokens/process/output/declarations.js +5 -5
  44. package/dist/src/tokens/process/output/theme.js +5 -5
  45. package/dist/src/tokens/template/design-tokens/semantic/color.base.template.js +1 -1
  46. package/package.json +5 -5
  47. package/dist/color.base.template-M7BHS4OV.json +0 -286
@@ -255,7 +255,6 @@ function generateColorSchemesGroup(colorSchemes, themes) {
255
255
  (scheme) => ({
256
256
  ...colorSchemeDefaults[scheme],
257
257
  selectedTokenSets: Object.fromEntries([
258
- [`primitives/modes/color-scheme/${scheme}/global`, TokenSetStatus.ENABLED],
259
258
  ...themes.map((theme) => [`primitives/modes/color-scheme/${scheme}/${theme}`, TokenSetStatus.ENABLED])
260
259
  ]),
261
260
  group: "Color scheme"
@@ -1333,12 +1332,12 @@ import * as R4 from "ramda";
1333
1332
  // src/colors/colorMetadata.ts
1334
1333
  import * as R2 from "ramda";
1335
1334
  var baseColors = {
1336
- blue: "#0A71C0",
1337
- green: "#068718",
1338
- orange: "#EA9B1B",
1339
- purple: "#663299",
1340
- red: "#C01B1B"
1335
+ info: "#0A71C0",
1336
+ success: "#068718",
1337
+ warning: "#EA9B1B",
1338
+ danger: "#C01B1B"
1341
1339
  };
1340
+ var dsLinkColor = "#663299";
1342
1341
  var colorMetadata = {
1343
1342
  "background-default": {
1344
1343
  number: 1,
@@ -1583,6 +1582,7 @@ var colorMetadata = {
1583
1582
  };
1584
1583
  var colorMetadataByNumber = R2.indexBy((metadata) => metadata.number, Object.values(colorMetadata));
1585
1584
  var colorNames = Object.keys(colorMetadata);
1585
+ var baseColorNames = Object.keys(baseColors);
1586
1586
 
1587
1587
  // src/colors/theme.ts
1588
1588
  import chroma2 from "chroma-js";
@@ -1708,27 +1708,24 @@ var generateColorScheme = (themeName, colorScheme2, colors, overrides) => {
1708
1708
  colors.support
1709
1709
  );
1710
1710
  const neutral = generateColor(generateColorScale(colors.neutral, colorScheme2), createColorOverrides("neutral"));
1711
+ const baseColorsWithOverrides = {
1712
+ ...baseColors,
1713
+ ...overrides?.severity
1714
+ };
1715
+ const globalColors = R4.mapObjIndexed(
1716
+ (color, colorName) => generateColor(generateColorScale(color, colorScheme2), createColorOverrides(colorName)),
1717
+ baseColorsWithOverrides
1718
+ );
1719
+ const linkColor = generateColor(generateColorScale(dsLinkColor, colorScheme2));
1711
1720
  return {
1712
1721
  [themeName]: {
1713
1722
  ...main,
1714
1723
  ...support,
1715
- neutral
1716
- }
1717
- };
1718
- };
1719
- var generateColorGlobal = (colorScheme2) => {
1720
- const blueScale = generateColorScale(baseColors.blue, colorScheme2);
1721
- const greenScale = generateColorScale(baseColors.green, colorScheme2);
1722
- const orangeScale = generateColorScale(baseColors.orange, colorScheme2);
1723
- const purpleScale = generateColorScale(baseColors.purple, colorScheme2);
1724
- const redScale = generateColorScale(baseColors.red, colorScheme2);
1725
- return {
1726
- global: {
1727
- blue: generateColor(blueScale),
1728
- green: generateColor(greenScale),
1729
- orange: generateColor(orangeScale),
1730
- purple: generateColor(purpleScale),
1731
- red: generateColor(redScale)
1724
+ neutral,
1725
+ ...globalColors,
1726
+ link: {
1727
+ visited: linkColor[12]
1728
+ }
1732
1729
  }
1733
1730
  };
1734
1731
  };
@@ -1739,270 +1736,6 @@ import * as R5 from "ramda";
1739
1736
  // src/tokens/template/design-tokens/semantic/color.base.template.json with { type: 'json' }
1740
1737
  var color_base_template_default = {
1741
1738
  color: {
1742
- success: {
1743
- "background-default": {
1744
- $type: "color",
1745
- $value: "{global.green.1}"
1746
- },
1747
- "background-tinted": {
1748
- $type: "color",
1749
- $value: "{global.green.2}"
1750
- },
1751
- "surface-default": {
1752
- $type: "color",
1753
- $value: "{global.green.3}"
1754
- },
1755
- "surface-tinted": {
1756
- $type: "color",
1757
- $value: "{global.green.4}"
1758
- },
1759
- "surface-hover": {
1760
- $type: "color",
1761
- $value: "{global.green.5}"
1762
- },
1763
- "surface-active": {
1764
- $type: "color",
1765
- $value: "{global.green.6}"
1766
- },
1767
- "border-subtle": {
1768
- $type: "color",
1769
- $value: "{global.green.7}"
1770
- },
1771
- "border-default": {
1772
- $type: "color",
1773
- $value: "{global.green.8}"
1774
- },
1775
- "border-strong": {
1776
- $type: "color",
1777
- $value: "{global.green.9}"
1778
- },
1779
- "text-subtle": {
1780
- $type: "color",
1781
- $value: "{global.green.10}"
1782
- },
1783
- "text-default": {
1784
- $type: "color",
1785
- $value: "{global.green.11}"
1786
- },
1787
- "base-default": {
1788
- $type: "color",
1789
- $value: "{global.green.12}"
1790
- },
1791
- "base-hover": {
1792
- $type: "color",
1793
- $value: "{global.green.13}"
1794
- },
1795
- "base-active": {
1796
- $type: "color",
1797
- $value: "{global.green.14}"
1798
- },
1799
- "base-contrast-subtle": {
1800
- $type: "color",
1801
- $value: "{global.green.15}"
1802
- },
1803
- "base-contrast-default": {
1804
- $type: "color",
1805
- $value: "{global.green.16}"
1806
- }
1807
- },
1808
- danger: {
1809
- "background-default": {
1810
- $type: "color",
1811
- $value: "{global.red.1}"
1812
- },
1813
- "background-tinted": {
1814
- $type: "color",
1815
- $value: "{global.red.2}"
1816
- },
1817
- "surface-default": {
1818
- $type: "color",
1819
- $value: "{global.red.3}"
1820
- },
1821
- "surface-tinted": {
1822
- $type: "color",
1823
- $value: "{global.red.4}"
1824
- },
1825
- "surface-hover": {
1826
- $type: "color",
1827
- $value: "{global.red.5}"
1828
- },
1829
- "surface-active": {
1830
- $type: "color",
1831
- $value: "{global.red.6}"
1832
- },
1833
- "border-subtle": {
1834
- $type: "color",
1835
- $value: "{global.red.7}"
1836
- },
1837
- "border-default": {
1838
- $type: "color",
1839
- $value: "{global.red.8}"
1840
- },
1841
- "border-strong": {
1842
- $type: "color",
1843
- $value: "{global.red.9}"
1844
- },
1845
- "text-subtle": {
1846
- $type: "color",
1847
- $value: "{global.red.10}"
1848
- },
1849
- "text-default": {
1850
- $type: "color",
1851
- $value: "{global.red.11}"
1852
- },
1853
- "base-default": {
1854
- $type: "color",
1855
- $value: "{global.red.12}"
1856
- },
1857
- "base-hover": {
1858
- $type: "color",
1859
- $value: "{global.red.13}"
1860
- },
1861
- "base-active": {
1862
- $type: "color",
1863
- $value: "{global.red.14}"
1864
- },
1865
- "base-contrast-subtle": {
1866
- $type: "color",
1867
- $value: "{global.red.15}"
1868
- },
1869
- "base-contrast-default": {
1870
- $type: "color",
1871
- $value: "{global.red.16}"
1872
- }
1873
- },
1874
- info: {
1875
- "background-default": {
1876
- $type: "color",
1877
- $value: "{global.blue.1}"
1878
- },
1879
- "background-tinted": {
1880
- $type: "color",
1881
- $value: "{global.blue.2}"
1882
- },
1883
- "surface-default": {
1884
- $type: "color",
1885
- $value: "{global.blue.3}"
1886
- },
1887
- "surface-tinted": {
1888
- $type: "color",
1889
- $value: "{global.blue.4}"
1890
- },
1891
- "surface-hover": {
1892
- $type: "color",
1893
- $value: "{global.blue.5}"
1894
- },
1895
- "surface-active": {
1896
- $type: "color",
1897
- $value: "{global.blue.6}"
1898
- },
1899
- "border-subtle": {
1900
- $type: "color",
1901
- $value: "{global.blue.7}"
1902
- },
1903
- "border-default": {
1904
- $type: "color",
1905
- $value: "{global.blue.8}"
1906
- },
1907
- "border-strong": {
1908
- $type: "color",
1909
- $value: "{global.blue.9}"
1910
- },
1911
- "text-subtle": {
1912
- $type: "color",
1913
- $value: "{global.blue.10}"
1914
- },
1915
- "text-default": {
1916
- $type: "color",
1917
- $value: "{global.blue.11}"
1918
- },
1919
- "base-default": {
1920
- $type: "color",
1921
- $value: "{global.blue.12}"
1922
- },
1923
- "base-hover": {
1924
- $type: "color",
1925
- $value: "{global.blue.13}"
1926
- },
1927
- "base-active": {
1928
- $type: "color",
1929
- $value: "{global.blue.14}"
1930
- },
1931
- "base-contrast-subtle": {
1932
- $type: "color",
1933
- $value: "{global.blue.15}"
1934
- },
1935
- "base-contrast-default": {
1936
- $type: "color",
1937
- $value: "{global.blue.16}"
1938
- }
1939
- },
1940
- warning: {
1941
- "background-default": {
1942
- $type: "color",
1943
- $value: "{global.orange.1}"
1944
- },
1945
- "background-tinted": {
1946
- $type: "color",
1947
- $value: "{global.orange.2}"
1948
- },
1949
- "surface-default": {
1950
- $type: "color",
1951
- $value: "{global.orange.3}"
1952
- },
1953
- "surface-tinted": {
1954
- $type: "color",
1955
- $value: "{global.orange.4}"
1956
- },
1957
- "surface-hover": {
1958
- $type: "color",
1959
- $value: "{global.orange.5}"
1960
- },
1961
- "surface-active": {
1962
- $type: "color",
1963
- $value: "{global.orange.6}"
1964
- },
1965
- "border-subtle": {
1966
- $type: "color",
1967
- $value: "{global.orange.7}"
1968
- },
1969
- "border-default": {
1970
- $type: "color",
1971
- $value: "{global.orange.8}"
1972
- },
1973
- "border-strong": {
1974
- $type: "color",
1975
- $value: "{global.orange.9}"
1976
- },
1977
- "text-subtle": {
1978
- $type: "color",
1979
- $value: "{global.orange.10}"
1980
- },
1981
- "text-default": {
1982
- $type: "color",
1983
- $value: "{global.orange.11}"
1984
- },
1985
- "base-default": {
1986
- $type: "color",
1987
- $value: "{global.orange.12}"
1988
- },
1989
- "base-hover": {
1990
- $type: "color",
1991
- $value: "{global.orange.13}"
1992
- },
1993
- "base-active": {
1994
- $type: "color",
1995
- $value: "{global.orange.14}"
1996
- },
1997
- "base-contrast-subtle": {
1998
- $type: "color",
1999
- $value: "{global.orange.15}"
2000
- },
2001
- "base-contrast-default": {
2002
- $type: "color",
2003
- $value: "{global.orange.16}"
2004
- }
2005
- },
2006
1739
  focus: {
2007
1740
  inner: {
2008
1741
  $type: "color",
@@ -2018,7 +1751,7 @@ var color_base_template_default = {
2018
1751
  color: {
2019
1752
  visited: {
2020
1753
  $type: "color",
2021
- $value: "{global.purple.12}"
1754
+ $value: "{color.link.visited}"
2022
1755
  }
2023
1756
  }
2024
1757
  }
@@ -2161,7 +1894,7 @@ var color_template_default2 = {
2161
1894
  };
2162
1895
 
2163
1896
  // src/tokens/create/generators/semantic.ts
2164
- var generateSemantic = (colors) => {
1897
+ var generateSemantic = (colors, _themeName) => {
2165
1898
  const mainColorNames = Object.keys(colors.main);
2166
1899
  const supportColorNames = Object.keys(colors.support);
2167
1900
  const modes = {
@@ -2195,7 +1928,8 @@ var generateSemantic = (colors) => {
2195
1928
  }
2196
1929
  }
2197
1930
  const customColors = [...mainColorNames, "neutral", ...supportColorNames];
2198
- const semanticColorTokens = customColors.map(
1931
+ const allColors = [...customColors, ...baseColorNames];
1932
+ const semanticColorTokens = allColors.map(
2199
1933
  (colorName) => [
2200
1934
  colorName,
2201
1935
  R5.map((x) => ({ ...x, $value: x.$value.replace("<color>", colorName) }), color_template_default)
@@ -2346,7 +2080,7 @@ var theme_template_default = {
2346
2080
  var generateTheme = (colors, themeName, borderRadius) => {
2347
2081
  const mainColorNames = Object.keys(colors.main);
2348
2082
  const supportColorNames = Object.keys(colors.support);
2349
- const customColors = [...mainColorNames, "neutral", ...supportColorNames];
2083
+ const customColors = [...mainColorNames, "neutral", ...supportColorNames, ...baseColorNames];
2350
2084
  const themeColorTokens = Object.fromEntries(
2351
2085
  customColors.map(
2352
2086
  (colorName) => [
@@ -2359,7 +2093,13 @@ var generateTheme = (colors, themeName, borderRadius) => {
2359
2093
  const themeFile = {
2360
2094
  color: {
2361
2095
  ...themeColorTokens,
2362
- ...themeBaseFileColor
2096
+ ...themeBaseFileColor,
2097
+ link: {
2098
+ visited: {
2099
+ $type: "color",
2100
+ $value: `{${themeName}.link.visited}`
2101
+ }
2102
+ }
2363
2103
  },
2364
2104
  ...remainingThemeFile
2365
2105
  };
@@ -2415,7 +2155,7 @@ var generateTypography = (themeName, { fontFamily }) => {
2415
2155
  var createTokens = async (opts) => {
2416
2156
  const { colors, typography: typography2, name, borderRadius, overrides } = opts;
2417
2157
  const colorSchemes = ["light", "dark"];
2418
- const semantic2 = generateSemantic(colors);
2158
+ const semantic2 = generateSemantic(colors, name);
2419
2159
  const tokenSets = new Map([
2420
2160
  ...getDefaultTokens([
2421
2161
  "primitives/globals",
@@ -2430,7 +2170,6 @@ var createTokens = async (opts) => {
2430
2170
  [`primitives/modes/typography/primary/${name}`, generateTypography(name, typography2)],
2431
2171
  [`primitives/modes/typography/secondary/${name}`, generateTypography(name, typography2)],
2432
2172
  ...colorSchemes.flatMap((scheme) => [
2433
- [`primitives/modes/color-scheme/${scheme}/global`, generateColorGlobal(scheme)],
2434
2173
  [`primitives/modes/color-scheme/${scheme}/${name}`, generateColorScheme(name, scheme, colors, overrides)]
2435
2174
  ]),
2436
2175
  [`themes/${name}`, generateTheme(colors, name, borderRadius)],
@@ -2451,7 +2190,7 @@ import * as R8 from "ramda";
2451
2190
  // package.json
2452
2191
  var package_default = {
2453
2192
  name: "@digdir/designsystemet",
2454
- version: "1.6.1",
2193
+ version: "1.7.0",
2455
2194
  description: "CLI for Designsystemet",
2456
2195
  author: "Designsystemet team",
2457
2196
  engines: {
@@ -2524,9 +2263,9 @@ var package_default = {
2524
2263
  "object-hash": "^3.0.0",
2525
2264
  picocolors: "^1.1.1",
2526
2265
  postcss: "^8.5.6",
2527
- ramda: "^0.31.3",
2528
- "style-dictionary": "^5.1.0",
2529
- zod: "^4.1.11",
2266
+ ramda: "^0.32.0",
2267
+ "style-dictionary": "^5.1.1",
2268
+ zod: "^4.1.12",
2530
2269
  "zod-validation-error": "^4.0.2"
2531
2270
  },
2532
2271
  devDependencies: {
@@ -2534,7 +2273,7 @@ var package_default = {
2534
2273
  "@types/apca-w3": "^0.1.3",
2535
2274
  "@types/chroma-js": "^3.1.1",
2536
2275
  "@types/fs-extra": "^11.0.4",
2537
- "@types/node": "^22.18.8",
2276
+ "@types/node": "^22.18.11",
2538
2277
  "@types/object-hash": "^3.0.6",
2539
2278
  "@types/ramda": "^0.31.1",
2540
2279
  "fs-extra": "^11.3.2",