@digdir/designsystemet 1.8.0 → 1.10.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.
- package/configs/test-tokens.config.json +10 -0
- package/dist/bin/config.js +12 -1
- package/dist/bin/designsystemet.js +56 -22
- package/dist/{color.base.template-QGZJKXMN.json → color.base.template-Z7YWN2TF.json} +2 -2
- package/dist/config.schema.json +63 -30
- package/dist/src/config.d.ts +30 -0
- package/dist/src/config.d.ts.map +1 -1
- package/dist/src/config.js +12 -1
- package/dist/src/index.js +56 -22
- package/dist/src/scripts/createJsonSchema.js +12 -1
- package/dist/src/scripts/update-preview-tokens.js +50 -58
- package/dist/src/scripts/update-template.js +12 -2
- package/dist/src/tokens/build.js +14 -17
- package/dist/src/tokens/create/generators/$designsystemet.js +7 -16
- package/dist/src/tokens/create/generators/color.d.ts.map +1 -1
- package/dist/src/tokens/create/generators/color.js +18 -2
- package/dist/src/tokens/create/generators/semantic.js +2 -2
- package/dist/src/tokens/create/generators/theme.d.ts.map +1 -1
- package/dist/src/tokens/create/generators/theme.js +10 -0
- package/dist/src/tokens/create/write.js +7 -16
- package/dist/src/tokens/create.js +30 -4
- package/dist/src/tokens/format.js +44 -21
- package/dist/src/tokens/index.js +44 -21
- package/dist/src/tokens/process/configs/color.js +0 -1
- package/dist/src/tokens/process/configs/semantic.js +0 -1
- package/dist/src/tokens/process/configs/size-mode.js +0 -1
- package/dist/src/tokens/process/configs/size.js +0 -1
- package/dist/src/tokens/process/configs/type-scale.js +0 -1
- package/dist/src/tokens/process/configs/typography.js +0 -1
- package/dist/src/tokens/process/configs.js +0 -1
- package/dist/src/tokens/process/formats/css/color.js +0 -1
- package/dist/src/tokens/process/formats/css/semantic.js +0 -1
- package/dist/src/tokens/process/formats/css/size-mode.js +0 -1
- package/dist/src/tokens/process/formats/css/size.js +0 -1
- package/dist/src/tokens/process/formats/css/type-scale.js +0 -1
- package/dist/src/tokens/process/formats/css/typography.js +0 -1
- package/dist/src/tokens/process/formats/css.js +0 -1
- package/dist/src/tokens/process/output/declarations.js +7 -17
- package/dist/src/tokens/process/output/theme.js +7 -16
- package/dist/src/tokens/process/platform.js +0 -1
- package/dist/src/tokens/process/utils/getMultidimensionalThemes.d.ts.map +1 -1
- package/dist/src/tokens/process/utils/getMultidimensionalThemes.js +5 -1
- package/dist/src/tokens/process/utils/kebab-case.d.ts +5 -0
- package/dist/src/tokens/process/utils/kebab-case.d.ts.map +1 -0
- package/dist/src/tokens/process/utils/kebab-case.js +7 -0
- package/dist/src/tokens/template/design-tokens/semantic/color.base.template.js +1 -1
- package/package.json +8 -17
- package/configs/digdir.config.json +0 -63
- package/dist/src/scripts/update-design-tokens.d.ts +0 -2
- package/dist/src/scripts/update-design-tokens.d.ts.map +0 -1
- package/dist/src/scripts/update-design-tokens.js +0 -37
package/dist/src/index.js
CHANGED
|
@@ -1512,7 +1512,8 @@ var generateColorScheme = (themeName, colorScheme2, colors, overrides) => {
|
|
|
1512
1512
|
(color, colorName) => generateColor(generateColorScale(color, colorScheme2), createColorOverrides(colorName)),
|
|
1513
1513
|
colors.support
|
|
1514
1514
|
);
|
|
1515
|
-
const
|
|
1515
|
+
const neutralColorScale = generateColorScale(colors.neutral, colorScheme2);
|
|
1516
|
+
const neutral = generateColor(neutralColorScale, createColorOverrides("neutral"));
|
|
1516
1517
|
const baseColorsWithOverrides = {
|
|
1517
1518
|
...baseColors,
|
|
1518
1519
|
...overrides?.severity
|
|
@@ -1522,7 +1523,12 @@ var generateColorScheme = (themeName, colorScheme2, colors, overrides) => {
|
|
|
1522
1523
|
baseColorsWithOverrides
|
|
1523
1524
|
);
|
|
1524
1525
|
const linkColor = generateColor(generateColorScale(dsLinkColor, colorScheme2));
|
|
1526
|
+
const defaultLinkVisited = linkColor[12];
|
|
1525
1527
|
const linkOverride = overrides?.linkVisited?.[colorScheme2] ? { $type: "color", $value: overrides.linkVisited[colorScheme2] } : void 0;
|
|
1528
|
+
const defaultFocusInner = neutralColorScale[0].hex;
|
|
1529
|
+
const defaultFocusOuter = neutralColorScale[10].hex;
|
|
1530
|
+
const focusInnerOverride = overrides?.focus?.inner?.[colorScheme2];
|
|
1531
|
+
const focusOuterOverride = overrides?.focus?.outer?.[colorScheme2];
|
|
1526
1532
|
return {
|
|
1527
1533
|
[themeName]: {
|
|
1528
1534
|
...main,
|
|
@@ -1530,7 +1536,17 @@ var generateColorScheme = (themeName, colorScheme2, colors, overrides) => {
|
|
|
1530
1536
|
neutral,
|
|
1531
1537
|
...globalColors,
|
|
1532
1538
|
link: {
|
|
1533
|
-
visited: linkOverride ||
|
|
1539
|
+
visited: linkOverride || defaultLinkVisited
|
|
1540
|
+
},
|
|
1541
|
+
focus: {
|
|
1542
|
+
inner: {
|
|
1543
|
+
$type: "color",
|
|
1544
|
+
$value: focusInnerOverride || defaultFocusInner
|
|
1545
|
+
},
|
|
1546
|
+
outer: {
|
|
1547
|
+
$type: "color",
|
|
1548
|
+
$value: focusOuterOverride || defaultFocusOuter
|
|
1549
|
+
}
|
|
1534
1550
|
}
|
|
1535
1551
|
}
|
|
1536
1552
|
};
|
|
@@ -1545,11 +1561,11 @@ var color_base_template_default = {
|
|
|
1545
1561
|
focus: {
|
|
1546
1562
|
inner: {
|
|
1547
1563
|
$type: "color",
|
|
1548
|
-
$value: "{color.
|
|
1564
|
+
$value: "{color.focus.inner-color}"
|
|
1549
1565
|
},
|
|
1550
1566
|
outer: {
|
|
1551
1567
|
$type: "color",
|
|
1552
|
-
$value: "{color.
|
|
1568
|
+
$value: "{color.focus.outer-color}"
|
|
1553
1569
|
}
|
|
1554
1570
|
}
|
|
1555
1571
|
},
|
|
@@ -1905,6 +1921,16 @@ var generateTheme = (colors, themeName, borderRadius) => {
|
|
|
1905
1921
|
$type: "color",
|
|
1906
1922
|
$value: `{${themeName}.link.visited}`
|
|
1907
1923
|
}
|
|
1924
|
+
},
|
|
1925
|
+
focus: {
|
|
1926
|
+
"inner-color": {
|
|
1927
|
+
$type: "color",
|
|
1928
|
+
$value: `{${themeName}.focus.inner}`
|
|
1929
|
+
},
|
|
1930
|
+
"outer-color": {
|
|
1931
|
+
$type: "color",
|
|
1932
|
+
$value: `{${themeName}.focus.outer}`
|
|
1933
|
+
}
|
|
1908
1934
|
}
|
|
1909
1935
|
},
|
|
1910
1936
|
...remainingThemeFile
|
|
@@ -2040,10 +2066,21 @@ var linkVisitedOverrideSchema = z.object({
|
|
|
2040
2066
|
light: colorSchema.optional().describe("A hex color that overrides light mode"),
|
|
2041
2067
|
dark: colorSchema.optional().describe("A hex color that overrides dark mode")
|
|
2042
2068
|
}).describe('Overrides for the "link-visited" color');
|
|
2069
|
+
var focusOverrideSchema = z.object({
|
|
2070
|
+
inner: z.object({
|
|
2071
|
+
light: colorSchema.optional().describe("A hex color that overrides light mode"),
|
|
2072
|
+
dark: colorSchema.optional().describe("A hex color that overrides dark mode")
|
|
2073
|
+
}).optional().describe('Overrides for the "focus-inner" color'),
|
|
2074
|
+
outer: z.object({
|
|
2075
|
+
light: colorSchema.optional().describe("A hex color that overrides light mode"),
|
|
2076
|
+
dark: colorSchema.optional().describe("A hex color that overrides dark mode")
|
|
2077
|
+
}).optional().describe('Overrides for the "focus-outer" color')
|
|
2078
|
+
}).describe("Overrides for the focus colors");
|
|
2043
2079
|
var overridesSchema = z.object({
|
|
2044
2080
|
colors: semanticColorOverrideSchema.optional(),
|
|
2045
2081
|
severity: severityColorOverrideSchema.optional(),
|
|
2046
|
-
linkVisited: linkVisitedOverrideSchema.optional()
|
|
2082
|
+
linkVisited: linkVisitedOverrideSchema.optional(),
|
|
2083
|
+
focus: focusOverrideSchema.optional()
|
|
2047
2084
|
}).describe("Overrides for generated design tokens. Currently only supports colors defined in your theme").optional();
|
|
2048
2085
|
var themeSchema = z.object({
|
|
2049
2086
|
colors: z.object({
|
|
@@ -2408,7 +2445,7 @@ import * as R9 from "ramda";
|
|
|
2408
2445
|
// package.json
|
|
2409
2446
|
var package_default = {
|
|
2410
2447
|
name: "@digdir/designsystemet",
|
|
2411
|
-
version: "1.
|
|
2448
|
+
version: "1.10.0",
|
|
2412
2449
|
description: "CLI for Designsystemet",
|
|
2413
2450
|
author: "Designsystemet team",
|
|
2414
2451
|
engines: {
|
|
@@ -2460,23 +2497,18 @@ var package_default = {
|
|
|
2460
2497
|
"test:tokens-build-config-tailwind": "pnpm run designsystemet tokens build -t ./temp/config/design-tokens -o ./temp/config/build --clean --experimental-tailwind",
|
|
2461
2498
|
"test:tokens-create-and-build-options": "pnpm test:tokens-create-options && pnpm test:tokens-build",
|
|
2462
2499
|
"test:tokens-create-and-build-config": "pnpm test:tokens-create-config && pnpm test:tokens-build-config",
|
|
2463
|
-
"test:generate-config-from-tokens": "pnpm run designsystemet generate-config-from-tokens -d ../../internal/design-tokens --dry",
|
|
2500
|
+
"test:generate-config-from-tokens": "pnpm run designsystemet generate-config-from-tokens -d ../../internal/digdir/design-tokens --dry",
|
|
2464
2501
|
test: "node -v && pnpm test:tokens-create-and-build-options && pnpm test:generate-config-from-tokens && pnpm test:tokens-create-and-build-config",
|
|
2465
|
-
"digdir:tokens-build": "pnpm run designsystemet tokens build -t ../../internal/design-tokens -o ../../packages/theme/brand --clean --experimental-tailwind",
|
|
2466
|
-
"digdir:tokens-create": "pnpm run designsystemet tokens create --config ./configs/digdir.config.json",
|
|
2467
2502
|
"update:template": "tsx ./src/scripts/update-template.ts",
|
|
2468
2503
|
"update:preview-tokens": "tsx ./src/scripts/update-preview-tokens.ts",
|
|
2469
|
-
|
|
2470
|
-
verify: "pnpm test && pnpm update:template && pnpm update:theme-digdir && pnpm build:tokens"
|
|
2504
|
+
verify: "pnpm test && pnpm update:template && pnpm --filter @internal/digdir update:theme-digdir"
|
|
2471
2505
|
},
|
|
2472
2506
|
dependencies: {
|
|
2473
2507
|
"@commander-js/extra-typings": "^14.0.0",
|
|
2474
2508
|
"@digdir/designsystemet-types": "workspace:^",
|
|
2475
|
-
"@tokens-studio/sd-transforms": "2.0.
|
|
2476
|
-
"apca-w3": "^0.1.9",
|
|
2477
|
-
"change-case": "^5.4.4",
|
|
2509
|
+
"@tokens-studio/sd-transforms": "2.0.3",
|
|
2478
2510
|
"chroma-js": "^3.2.0",
|
|
2479
|
-
"colorjs.io": "^0.6.0
|
|
2511
|
+
"colorjs.io": "^0.6.0",
|
|
2480
2512
|
commander: "^14.0.2",
|
|
2481
2513
|
"fast-glob": "^3.3.3",
|
|
2482
2514
|
hsluv: "^1.0.1",
|
|
@@ -2485,19 +2517,15 @@ var package_default = {
|
|
|
2485
2517
|
postcss: "^8.5.6",
|
|
2486
2518
|
ramda: "^0.32.0",
|
|
2487
2519
|
"style-dictionary": "^5.1.1",
|
|
2488
|
-
zod: "^4.
|
|
2520
|
+
zod: "^4.3.5",
|
|
2489
2521
|
"zod-validation-error": "^4.0.2"
|
|
2490
2522
|
},
|
|
2491
2523
|
devDependencies: {
|
|
2492
2524
|
"@tokens-studio/types": "0.5.2",
|
|
2493
|
-
"@types/apca-w3": "^0.1.3",
|
|
2494
2525
|
"@types/chroma-js": "^3.1.2",
|
|
2495
|
-
"@types/
|
|
2496
|
-
"@types/node": "^22.19.1",
|
|
2526
|
+
"@types/node": "^22.19.3",
|
|
2497
2527
|
"@types/object-hash": "^3.0.6",
|
|
2498
2528
|
"@types/ramda": "^0.31.1",
|
|
2499
|
-
"fs-extra": "^11.3.2",
|
|
2500
|
-
tslib: "^2.8.1",
|
|
2501
2529
|
tsup: "^8.5.1",
|
|
2502
2530
|
tsx: "^4.21.0",
|
|
2503
2531
|
typescript: "^5.9.3"
|
|
@@ -3444,9 +3472,15 @@ var typographyVariables = ({ theme, typography: typography2 }) => {
|
|
|
3444
3472
|
};
|
|
3445
3473
|
|
|
3446
3474
|
// src/tokens/process/utils/getMultidimensionalThemes.ts
|
|
3447
|
-
import { kebabCase } from "change-case";
|
|
3448
3475
|
import pc3 from "picocolors";
|
|
3449
3476
|
import * as R21 from "ramda";
|
|
3477
|
+
|
|
3478
|
+
// src/tokens/process/utils/kebab-case.ts
|
|
3479
|
+
function kebabCase(str) {
|
|
3480
|
+
return str.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[\s_]+/g, "-").toLowerCase();
|
|
3481
|
+
}
|
|
3482
|
+
|
|
3483
|
+
// src/tokens/process/utils/getMultidimensionalThemes.ts
|
|
3450
3484
|
var getMultidimensionalThemes = (processed$themes, dimensions) => {
|
|
3451
3485
|
const verboseLogging = buildOptions?.verbose;
|
|
3452
3486
|
const grouped$themes = groupThemes(processed$themes);
|
|
@@ -331,10 +331,21 @@ var linkVisitedOverrideSchema = z.object({
|
|
|
331
331
|
light: colorSchema.optional().describe("A hex color that overrides light mode"),
|
|
332
332
|
dark: colorSchema.optional().describe("A hex color that overrides dark mode")
|
|
333
333
|
}).describe('Overrides for the "link-visited" color');
|
|
334
|
+
var focusOverrideSchema = z.object({
|
|
335
|
+
inner: z.object({
|
|
336
|
+
light: colorSchema.optional().describe("A hex color that overrides light mode"),
|
|
337
|
+
dark: colorSchema.optional().describe("A hex color that overrides dark mode")
|
|
338
|
+
}).optional().describe('Overrides for the "focus-inner" color'),
|
|
339
|
+
outer: z.object({
|
|
340
|
+
light: colorSchema.optional().describe("A hex color that overrides light mode"),
|
|
341
|
+
dark: colorSchema.optional().describe("A hex color that overrides dark mode")
|
|
342
|
+
}).optional().describe('Overrides for the "focus-outer" color')
|
|
343
|
+
}).describe("Overrides for the focus colors");
|
|
334
344
|
var overridesSchema = z.object({
|
|
335
345
|
colors: semanticColorOverrideSchema.optional(),
|
|
336
346
|
severity: severityColorOverrideSchema.optional(),
|
|
337
|
-
linkVisited: linkVisitedOverrideSchema.optional()
|
|
347
|
+
linkVisited: linkVisitedOverrideSchema.optional(),
|
|
348
|
+
focus: focusOverrideSchema.optional()
|
|
338
349
|
}).describe("Overrides for generated design tokens. Currently only supports colors defined in your theme").optional();
|
|
339
350
|
var themeSchema = z.object({
|
|
340
351
|
colors: z.object({
|
|
@@ -2,67 +2,27 @@
|
|
|
2
2
|
import path from "path";
|
|
3
3
|
import pc4 from "picocolors";
|
|
4
4
|
|
|
5
|
-
//
|
|
6
|
-
var
|
|
7
|
-
$schema: "
|
|
8
|
-
outDir: "
|
|
5
|
+
// ../../designsystemet.config.json
|
|
6
|
+
var designsystemet_config_default = {
|
|
7
|
+
$schema: "packages/cli/dist/config.schema.json",
|
|
8
|
+
outDir: "design-tokens",
|
|
9
9
|
clean: true,
|
|
10
10
|
themes: {
|
|
11
|
-
|
|
11
|
+
designsystemet: {
|
|
12
12
|
colors: {
|
|
13
13
|
main: {
|
|
14
14
|
accent: "#0062BA"
|
|
15
15
|
},
|
|
16
16
|
support: {
|
|
17
|
-
brand1: "#
|
|
18
|
-
brand2: "#
|
|
19
|
-
brand3: "#1E98F5"
|
|
17
|
+
brand1: "#0D7A5F",
|
|
18
|
+
brand2: "#5B3FA0"
|
|
20
19
|
},
|
|
21
|
-
neutral: "#
|
|
20
|
+
neutral: "#24272B"
|
|
22
21
|
},
|
|
23
22
|
borderRadius: 4,
|
|
24
23
|
typography: {
|
|
25
24
|
fontFamily: "Inter"
|
|
26
25
|
}
|
|
27
|
-
},
|
|
28
|
-
altinn: {
|
|
29
|
-
colors: {
|
|
30
|
-
main: {
|
|
31
|
-
accent: "#0062BA"
|
|
32
|
-
},
|
|
33
|
-
support: {
|
|
34
|
-
brand1: "#0162BA",
|
|
35
|
-
brand2: "#3F3161",
|
|
36
|
-
brand3: "#E02F4A"
|
|
37
|
-
},
|
|
38
|
-
neutral: "#1E2B3C"
|
|
39
|
-
}
|
|
40
|
-
},
|
|
41
|
-
uutilsynet: {
|
|
42
|
-
colors: {
|
|
43
|
-
main: {
|
|
44
|
-
accent: "#0062BA"
|
|
45
|
-
},
|
|
46
|
-
support: {
|
|
47
|
-
brand1: "#5B60D1",
|
|
48
|
-
brand2: "#FEA769",
|
|
49
|
-
brand3: "#5DA290"
|
|
50
|
-
},
|
|
51
|
-
neutral: "#1E2B3C"
|
|
52
|
-
}
|
|
53
|
-
},
|
|
54
|
-
portal: {
|
|
55
|
-
colors: {
|
|
56
|
-
main: {
|
|
57
|
-
accent: "#38628C"
|
|
58
|
-
},
|
|
59
|
-
support: {
|
|
60
|
-
brand1: "#D9ECFF",
|
|
61
|
-
brand2: "#FFCA99",
|
|
62
|
-
brand3: "#D96C79"
|
|
63
|
-
},
|
|
64
|
-
neutral: "#203040"
|
|
65
|
-
}
|
|
66
26
|
}
|
|
67
27
|
}
|
|
68
28
|
};
|
|
@@ -1773,7 +1733,8 @@ var generateColorScheme = (themeName, colorScheme2, colors, overrides) => {
|
|
|
1773
1733
|
(color, colorName) => generateColor(generateColorScale(color, colorScheme2), createColorOverrides(colorName)),
|
|
1774
1734
|
colors.support
|
|
1775
1735
|
);
|
|
1776
|
-
const
|
|
1736
|
+
const neutralColorScale = generateColorScale(colors.neutral, colorScheme2);
|
|
1737
|
+
const neutral = generateColor(neutralColorScale, createColorOverrides("neutral"));
|
|
1777
1738
|
const baseColorsWithOverrides = {
|
|
1778
1739
|
...baseColors,
|
|
1779
1740
|
...overrides?.severity
|
|
@@ -1783,7 +1744,12 @@ var generateColorScheme = (themeName, colorScheme2, colors, overrides) => {
|
|
|
1783
1744
|
baseColorsWithOverrides
|
|
1784
1745
|
);
|
|
1785
1746
|
const linkColor = generateColor(generateColorScale(dsLinkColor, colorScheme2));
|
|
1747
|
+
const defaultLinkVisited = linkColor[12];
|
|
1786
1748
|
const linkOverride = overrides?.linkVisited?.[colorScheme2] ? { $type: "color", $value: overrides.linkVisited[colorScheme2] } : void 0;
|
|
1749
|
+
const defaultFocusInner = neutralColorScale[0].hex;
|
|
1750
|
+
const defaultFocusOuter = neutralColorScale[10].hex;
|
|
1751
|
+
const focusInnerOverride = overrides?.focus?.inner?.[colorScheme2];
|
|
1752
|
+
const focusOuterOverride = overrides?.focus?.outer?.[colorScheme2];
|
|
1787
1753
|
return {
|
|
1788
1754
|
[themeName]: {
|
|
1789
1755
|
...main,
|
|
@@ -1791,7 +1757,17 @@ var generateColorScheme = (themeName, colorScheme2, colors, overrides) => {
|
|
|
1791
1757
|
neutral,
|
|
1792
1758
|
...globalColors,
|
|
1793
1759
|
link: {
|
|
1794
|
-
visited: linkOverride ||
|
|
1760
|
+
visited: linkOverride || defaultLinkVisited
|
|
1761
|
+
},
|
|
1762
|
+
focus: {
|
|
1763
|
+
inner: {
|
|
1764
|
+
$type: "color",
|
|
1765
|
+
$value: focusInnerOverride || defaultFocusInner
|
|
1766
|
+
},
|
|
1767
|
+
outer: {
|
|
1768
|
+
$type: "color",
|
|
1769
|
+
$value: focusOuterOverride || defaultFocusOuter
|
|
1770
|
+
}
|
|
1795
1771
|
}
|
|
1796
1772
|
}
|
|
1797
1773
|
};
|
|
@@ -1806,11 +1782,11 @@ var color_base_template_default = {
|
|
|
1806
1782
|
focus: {
|
|
1807
1783
|
inner: {
|
|
1808
1784
|
$type: "color",
|
|
1809
|
-
$value: "{color.
|
|
1785
|
+
$value: "{color.focus.inner-color}"
|
|
1810
1786
|
},
|
|
1811
1787
|
outer: {
|
|
1812
1788
|
$type: "color",
|
|
1813
|
-
$value: "{color.
|
|
1789
|
+
$value: "{color.focus.outer-color}"
|
|
1814
1790
|
}
|
|
1815
1791
|
}
|
|
1816
1792
|
},
|
|
@@ -2166,6 +2142,16 @@ var generateTheme = (colors, themeName, borderRadius) => {
|
|
|
2166
2142
|
$type: "color",
|
|
2167
2143
|
$value: `{${themeName}.link.visited}`
|
|
2168
2144
|
}
|
|
2145
|
+
},
|
|
2146
|
+
focus: {
|
|
2147
|
+
"inner-color": {
|
|
2148
|
+
$type: "color",
|
|
2149
|
+
$value: `{${themeName}.focus.inner}`
|
|
2150
|
+
},
|
|
2151
|
+
"outer-color": {
|
|
2152
|
+
$type: "color",
|
|
2153
|
+
$value: `{${themeName}.focus.outer}`
|
|
2154
|
+
}
|
|
2169
2155
|
}
|
|
2170
2156
|
},
|
|
2171
2157
|
...remainingThemeFile
|
|
@@ -3106,9 +3092,15 @@ var typographyVariables = ({ theme, typography: typography2 }) => {
|
|
|
3106
3092
|
};
|
|
3107
3093
|
|
|
3108
3094
|
// src/tokens/process/utils/getMultidimensionalThemes.ts
|
|
3109
|
-
import { kebabCase } from "change-case";
|
|
3110
3095
|
import pc from "picocolors";
|
|
3111
3096
|
import * as R19 from "ramda";
|
|
3097
|
+
|
|
3098
|
+
// src/tokens/process/utils/kebab-case.ts
|
|
3099
|
+
function kebabCase(str) {
|
|
3100
|
+
return str.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[\s_]+/g, "-").toLowerCase();
|
|
3101
|
+
}
|
|
3102
|
+
|
|
3103
|
+
// src/tokens/process/utils/getMultidimensionalThemes.ts
|
|
3112
3104
|
var getMultidimensionalThemes = (processed$themes, dimensions) => {
|
|
3113
3105
|
const verboseLogging = buildOptions?.verbose;
|
|
3114
3106
|
const grouped$themes = groupThemes(processed$themes);
|
|
@@ -3575,13 +3567,13 @@ var formatTheme = async (themeConfig) => {
|
|
|
3575
3567
|
};
|
|
3576
3568
|
formatTheme({
|
|
3577
3569
|
name: "test",
|
|
3578
|
-
borderRadius:
|
|
3570
|
+
borderRadius: designsystemet_config_default.themes.designsystemet.borderRadius,
|
|
3579
3571
|
colors: {
|
|
3580
|
-
main:
|
|
3581
|
-
support:
|
|
3582
|
-
neutral:
|
|
3572
|
+
main: designsystemet_config_default.themes.designsystemet.colors.main,
|
|
3573
|
+
support: designsystemet_config_default.themes.designsystemet.colors.support,
|
|
3574
|
+
neutral: designsystemet_config_default.themes.designsystemet.colors.neutral
|
|
3583
3575
|
},
|
|
3584
|
-
typography:
|
|
3576
|
+
typography: designsystemet_config_default.themes.designsystemet.typography
|
|
3585
3577
|
});
|
|
3586
3578
|
export {
|
|
3587
3579
|
formatTheme
|
|
@@ -603,11 +603,11 @@ var color_default = {
|
|
|
603
603
|
focus: {
|
|
604
604
|
inner: {
|
|
605
605
|
$type: "color",
|
|
606
|
-
$value: "{color.
|
|
606
|
+
$value: "{color.focus.inner-color}"
|
|
607
607
|
},
|
|
608
608
|
outer: {
|
|
609
609
|
$type: "color",
|
|
610
|
-
$value: "{color.
|
|
610
|
+
$value: "{color.focus.outer-color}"
|
|
611
611
|
}
|
|
612
612
|
}
|
|
613
613
|
},
|
|
@@ -1295,6 +1295,16 @@ var digdir_default = {
|
|
|
1295
1295
|
$type: "color",
|
|
1296
1296
|
$value: "{digdir.link.visited}"
|
|
1297
1297
|
}
|
|
1298
|
+
},
|
|
1299
|
+
focus: {
|
|
1300
|
+
"inner-color": {
|
|
1301
|
+
$type: "color",
|
|
1302
|
+
$value: "{digdir.focus.inner}"
|
|
1303
|
+
},
|
|
1304
|
+
"outer-color": {
|
|
1305
|
+
$type: "color",
|
|
1306
|
+
$value: "{digdir.focus.outer}"
|
|
1307
|
+
}
|
|
1298
1308
|
}
|
|
1299
1309
|
},
|
|
1300
1310
|
"font-family": {
|
package/dist/src/tokens/build.js
CHANGED
|
@@ -49,7 +49,7 @@ import pc4 from "picocolors";
|
|
|
49
49
|
// package.json
|
|
50
50
|
var package_default = {
|
|
51
51
|
name: "@digdir/designsystemet",
|
|
52
|
-
version: "1.
|
|
52
|
+
version: "1.10.0",
|
|
53
53
|
description: "CLI for Designsystemet",
|
|
54
54
|
author: "Designsystemet team",
|
|
55
55
|
engines: {
|
|
@@ -101,23 +101,18 @@ var package_default = {
|
|
|
101
101
|
"test:tokens-build-config-tailwind": "pnpm run designsystemet tokens build -t ./temp/config/design-tokens -o ./temp/config/build --clean --experimental-tailwind",
|
|
102
102
|
"test:tokens-create-and-build-options": "pnpm test:tokens-create-options && pnpm test:tokens-build",
|
|
103
103
|
"test:tokens-create-and-build-config": "pnpm test:tokens-create-config && pnpm test:tokens-build-config",
|
|
104
|
-
"test:generate-config-from-tokens": "pnpm run designsystemet generate-config-from-tokens -d ../../internal/design-tokens --dry",
|
|
104
|
+
"test:generate-config-from-tokens": "pnpm run designsystemet generate-config-from-tokens -d ../../internal/digdir/design-tokens --dry",
|
|
105
105
|
test: "node -v && pnpm test:tokens-create-and-build-options && pnpm test:generate-config-from-tokens && pnpm test:tokens-create-and-build-config",
|
|
106
|
-
"digdir:tokens-build": "pnpm run designsystemet tokens build -t ../../internal/design-tokens -o ../../packages/theme/brand --clean --experimental-tailwind",
|
|
107
|
-
"digdir:tokens-create": "pnpm run designsystemet tokens create --config ./configs/digdir.config.json",
|
|
108
106
|
"update:template": "tsx ./src/scripts/update-template.ts",
|
|
109
107
|
"update:preview-tokens": "tsx ./src/scripts/update-preview-tokens.ts",
|
|
110
|
-
|
|
111
|
-
verify: "pnpm test && pnpm update:template && pnpm update:theme-digdir && pnpm build:tokens"
|
|
108
|
+
verify: "pnpm test && pnpm update:template && pnpm --filter @internal/digdir update:theme-digdir"
|
|
112
109
|
},
|
|
113
110
|
dependencies: {
|
|
114
111
|
"@commander-js/extra-typings": "^14.0.0",
|
|
115
112
|
"@digdir/designsystemet-types": "workspace:^",
|
|
116
|
-
"@tokens-studio/sd-transforms": "2.0.
|
|
117
|
-
"apca-w3": "^0.1.9",
|
|
118
|
-
"change-case": "^5.4.4",
|
|
113
|
+
"@tokens-studio/sd-transforms": "2.0.3",
|
|
119
114
|
"chroma-js": "^3.2.0",
|
|
120
|
-
"colorjs.io": "^0.6.0
|
|
115
|
+
"colorjs.io": "^0.6.0",
|
|
121
116
|
commander: "^14.0.2",
|
|
122
117
|
"fast-glob": "^3.3.3",
|
|
123
118
|
hsluv: "^1.0.1",
|
|
@@ -126,19 +121,15 @@ var package_default = {
|
|
|
126
121
|
postcss: "^8.5.6",
|
|
127
122
|
ramda: "^0.32.0",
|
|
128
123
|
"style-dictionary": "^5.1.1",
|
|
129
|
-
zod: "^4.
|
|
124
|
+
zod: "^4.3.5",
|
|
130
125
|
"zod-validation-error": "^4.0.2"
|
|
131
126
|
},
|
|
132
127
|
devDependencies: {
|
|
133
128
|
"@tokens-studio/types": "0.5.2",
|
|
134
|
-
"@types/apca-w3": "^0.1.3",
|
|
135
129
|
"@types/chroma-js": "^3.1.2",
|
|
136
|
-
"@types/
|
|
137
|
-
"@types/node": "^22.19.1",
|
|
130
|
+
"@types/node": "^22.19.3",
|
|
138
131
|
"@types/object-hash": "^3.0.6",
|
|
139
132
|
"@types/ramda": "^0.31.1",
|
|
140
|
-
"fs-extra": "^11.3.2",
|
|
141
|
-
tslib: "^2.8.1",
|
|
142
133
|
tsup: "^8.5.1",
|
|
143
134
|
tsx: "^4.21.0",
|
|
144
135
|
typescript: "^5.9.3"
|
|
@@ -1164,9 +1155,15 @@ var TypographyValues;
|
|
|
1164
1155
|
})(TypographyValues || (TypographyValues = {}));
|
|
1165
1156
|
|
|
1166
1157
|
// src/tokens/process/utils/getMultidimensionalThemes.ts
|
|
1167
|
-
import { kebabCase } from "change-case";
|
|
1168
1158
|
import pc2 from "picocolors";
|
|
1169
1159
|
import * as R13 from "ramda";
|
|
1160
|
+
|
|
1161
|
+
// src/tokens/process/utils/kebab-case.ts
|
|
1162
|
+
function kebabCase(str) {
|
|
1163
|
+
return str.replace(/([a-z])([A-Z])/g, "$1-$2").replace(/[\s_]+/g, "-").toLowerCase();
|
|
1164
|
+
}
|
|
1165
|
+
|
|
1166
|
+
// src/tokens/process/utils/getMultidimensionalThemes.ts
|
|
1170
1167
|
var getMultidimensionalThemes = (processed$themes, dimensions) => {
|
|
1171
1168
|
const verboseLogging = buildOptions?.verbose;
|
|
1172
1169
|
const grouped$themes = groupThemes(processed$themes);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// package.json
|
|
2
2
|
var package_default = {
|
|
3
3
|
name: "@digdir/designsystemet",
|
|
4
|
-
version: "1.
|
|
4
|
+
version: "1.10.0",
|
|
5
5
|
description: "CLI for Designsystemet",
|
|
6
6
|
author: "Designsystemet team",
|
|
7
7
|
engines: {
|
|
@@ -53,23 +53,18 @@ var package_default = {
|
|
|
53
53
|
"test:tokens-build-config-tailwind": "pnpm run designsystemet tokens build -t ./temp/config/design-tokens -o ./temp/config/build --clean --experimental-tailwind",
|
|
54
54
|
"test:tokens-create-and-build-options": "pnpm test:tokens-create-options && pnpm test:tokens-build",
|
|
55
55
|
"test:tokens-create-and-build-config": "pnpm test:tokens-create-config && pnpm test:tokens-build-config",
|
|
56
|
-
"test:generate-config-from-tokens": "pnpm run designsystemet generate-config-from-tokens -d ../../internal/design-tokens --dry",
|
|
56
|
+
"test:generate-config-from-tokens": "pnpm run designsystemet generate-config-from-tokens -d ../../internal/digdir/design-tokens --dry",
|
|
57
57
|
test: "node -v && pnpm test:tokens-create-and-build-options && pnpm test:generate-config-from-tokens && pnpm test:tokens-create-and-build-config",
|
|
58
|
-
"digdir:tokens-build": "pnpm run designsystemet tokens build -t ../../internal/design-tokens -o ../../packages/theme/brand --clean --experimental-tailwind",
|
|
59
|
-
"digdir:tokens-create": "pnpm run designsystemet tokens create --config ./configs/digdir.config.json",
|
|
60
58
|
"update:template": "tsx ./src/scripts/update-template.ts",
|
|
61
59
|
"update:preview-tokens": "tsx ./src/scripts/update-preview-tokens.ts",
|
|
62
|
-
|
|
63
|
-
verify: "pnpm test && pnpm update:template && pnpm update:theme-digdir && pnpm build:tokens"
|
|
60
|
+
verify: "pnpm test && pnpm update:template && pnpm --filter @internal/digdir update:theme-digdir"
|
|
64
61
|
},
|
|
65
62
|
dependencies: {
|
|
66
63
|
"@commander-js/extra-typings": "^14.0.0",
|
|
67
64
|
"@digdir/designsystemet-types": "workspace:^",
|
|
68
|
-
"@tokens-studio/sd-transforms": "2.0.
|
|
69
|
-
"apca-w3": "^0.1.9",
|
|
70
|
-
"change-case": "^5.4.4",
|
|
65
|
+
"@tokens-studio/sd-transforms": "2.0.3",
|
|
71
66
|
"chroma-js": "^3.2.0",
|
|
72
|
-
"colorjs.io": "^0.6.0
|
|
67
|
+
"colorjs.io": "^0.6.0",
|
|
73
68
|
commander: "^14.0.2",
|
|
74
69
|
"fast-glob": "^3.3.3",
|
|
75
70
|
hsluv: "^1.0.1",
|
|
@@ -78,19 +73,15 @@ var package_default = {
|
|
|
78
73
|
postcss: "^8.5.6",
|
|
79
74
|
ramda: "^0.32.0",
|
|
80
75
|
"style-dictionary": "^5.1.1",
|
|
81
|
-
zod: "^4.
|
|
76
|
+
zod: "^4.3.5",
|
|
82
77
|
"zod-validation-error": "^4.0.2"
|
|
83
78
|
},
|
|
84
79
|
devDependencies: {
|
|
85
80
|
"@tokens-studio/types": "0.5.2",
|
|
86
|
-
"@types/apca-w3": "^0.1.3",
|
|
87
81
|
"@types/chroma-js": "^3.1.2",
|
|
88
|
-
"@types/
|
|
89
|
-
"@types/node": "^22.19.1",
|
|
82
|
+
"@types/node": "^22.19.3",
|
|
90
83
|
"@types/object-hash": "^3.0.6",
|
|
91
84
|
"@types/ramda": "^0.31.1",
|
|
92
|
-
"fs-extra": "^11.3.2",
|
|
93
|
-
tslib: "^2.8.1",
|
|
94
85
|
tsup: "^8.5.1",
|
|
95
86
|
tsx: "^4.21.0",
|
|
96
87
|
typescript: "^5.9.3"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../../../src/tokens/create/generators/color.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAS,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAS,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAgB9D,eAAO,MAAM,mBAAmB,GAC9B,WAAW,MAAM,EACjB,aAAa,WAAW,EACxB,QAAQ,MAAM,EACd,YAAY,mBAAmB,KAC9B,
|
|
1
|
+
{"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../../../../src/tokens/create/generators/color.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAS,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACnE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAS,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAgB9D,eAAO,MAAM,mBAAmB,GAC9B,WAAW,MAAM,EACjB,aAAa,WAAW,EACxB,QAAQ,MAAM,EACd,YAAY,mBAAmB,KAC9B,QAwFF,CAAC"}
|
|
@@ -379,7 +379,8 @@ var generateColorScheme = (themeName, colorScheme, colors, overrides) => {
|
|
|
379
379
|
(color, colorName) => generateColor(generateColorScale(color, colorScheme), createColorOverrides(colorName)),
|
|
380
380
|
colors.support
|
|
381
381
|
);
|
|
382
|
-
const
|
|
382
|
+
const neutralColorScale = generateColorScale(colors.neutral, colorScheme);
|
|
383
|
+
const neutral = generateColor(neutralColorScale, createColorOverrides("neutral"));
|
|
383
384
|
const baseColorsWithOverrides = {
|
|
384
385
|
...baseColors,
|
|
385
386
|
...overrides?.severity
|
|
@@ -389,7 +390,12 @@ var generateColorScheme = (themeName, colorScheme, colors, overrides) => {
|
|
|
389
390
|
baseColorsWithOverrides
|
|
390
391
|
);
|
|
391
392
|
const linkColor = generateColor(generateColorScale(dsLinkColor, colorScheme));
|
|
393
|
+
const defaultLinkVisited = linkColor[12];
|
|
392
394
|
const linkOverride = overrides?.linkVisited?.[colorScheme] ? { $type: "color", $value: overrides.linkVisited[colorScheme] } : void 0;
|
|
395
|
+
const defaultFocusInner = neutralColorScale[0].hex;
|
|
396
|
+
const defaultFocusOuter = neutralColorScale[10].hex;
|
|
397
|
+
const focusInnerOverride = overrides?.focus?.inner?.[colorScheme];
|
|
398
|
+
const focusOuterOverride = overrides?.focus?.outer?.[colorScheme];
|
|
393
399
|
return {
|
|
394
400
|
[themeName]: {
|
|
395
401
|
...main,
|
|
@@ -397,7 +403,17 @@ var generateColorScheme = (themeName, colorScheme, colors, overrides) => {
|
|
|
397
403
|
neutral,
|
|
398
404
|
...globalColors,
|
|
399
405
|
link: {
|
|
400
|
-
visited: linkOverride ||
|
|
406
|
+
visited: linkOverride || defaultLinkVisited
|
|
407
|
+
},
|
|
408
|
+
focus: {
|
|
409
|
+
inner: {
|
|
410
|
+
$type: "color",
|
|
411
|
+
$value: focusInnerOverride || defaultFocusInner
|
|
412
|
+
},
|
|
413
|
+
outer: {
|
|
414
|
+
$type: "color",
|
|
415
|
+
$value: focusOuterOverride || defaultFocusOuter
|
|
416
|
+
}
|
|
401
417
|
}
|
|
402
418
|
}
|
|
403
419
|
};
|
|
@@ -261,11 +261,11 @@ var color_base_template_default = {
|
|
|
261
261
|
focus: {
|
|
262
262
|
inner: {
|
|
263
263
|
$type: "color",
|
|
264
|
-
$value: "{color.
|
|
264
|
+
$value: "{color.focus.inner-color}"
|
|
265
265
|
},
|
|
266
266
|
outer: {
|
|
267
267
|
$type: "color",
|
|
268
|
-
$value: "{color.
|
|
268
|
+
$value: "{color.focus.outer-color}"
|
|
269
269
|
}
|
|
270
270
|
}
|
|
271
271
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../../src/tokens/create/generators/theme.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEvD,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,EAAE,WAAW,MAAM,EAAE,cAAc,MAAM,
|
|
1
|
+
{"version":3,"file":"theme.d.ts","sourceRoot":"","sources":["../../../../../src/tokens/create/generators/theme.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAEvD,eAAO,MAAM,aAAa,GAAI,QAAQ,MAAM,EAAE,WAAW,MAAM,EAAE,cAAc,MAAM,aAyDpF,CAAC"}
|
|
@@ -403,6 +403,16 @@ var generateTheme = (colors, themeName, borderRadius) => {
|
|
|
403
403
|
$type: "color",
|
|
404
404
|
$value: `{${themeName}.link.visited}`
|
|
405
405
|
}
|
|
406
|
+
},
|
|
407
|
+
focus: {
|
|
408
|
+
"inner-color": {
|
|
409
|
+
$type: "color",
|
|
410
|
+
$value: `{${themeName}.focus.inner}`
|
|
411
|
+
},
|
|
412
|
+
"outer-color": {
|
|
413
|
+
$type: "color",
|
|
414
|
+
$value: `{${themeName}.focus.outer}`
|
|
415
|
+
}
|
|
406
416
|
}
|
|
407
417
|
},
|
|
408
418
|
...remainingThemeFile
|