@digigov/css 2.0.0-85c27c19 → 2.0.0-87b6232d

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 (129) hide show
  1. package/dist/base/index.css +1 -1
  2. package/dist/base.js +1 -1
  3. package/dist/components.js +1 -1
  4. package/dist/digigov.css +3 -3
  5. package/dist/utilities/index.css +1 -1
  6. package/dist/utilities.js +1 -1
  7. package/index.js +99 -69
  8. package/package.json +13 -13
  9. package/postcss.config.js +4 -3
  10. package/src/base/index.css +1 -0
  11. package/src/base/index.native.css +0 -0
  12. package/src/base/postcss.config.js +11 -10
  13. package/src/base/tailwind.config.js +4 -11
  14. package/src/components/accordion.common.css +29 -0
  15. package/src/components/accordion.css +9 -7
  16. package/src/components/accordion.native.css +27 -0
  17. package/src/components/autocomplete.css +1 -3
  18. package/src/components/blockquote.common.css +14 -0
  19. package/src/components/blockquote.css +9 -0
  20. package/src/components/blockquote.native.css +14 -0
  21. package/src/components/breadcrumbs.css +1 -1
  22. package/src/components/button.common.css +62 -0
  23. package/src/components/button.css +13 -28
  24. package/src/components/button.native.css +55 -0
  25. package/src/components/card.common.css +33 -0
  26. package/src/components/card.css +12 -12
  27. package/src/components/card.native.css +29 -0
  28. package/src/components/checkboxes.common.css +16 -0
  29. package/src/components/checkboxes.css +6 -8
  30. package/src/components/checkboxes.native.css +27 -0
  31. package/src/components/chip.common.css +19 -0
  32. package/src/components/chip.css +5 -4
  33. package/src/components/chip.native.css +15 -0
  34. package/src/components/code.css +14 -15
  35. package/src/components/copy-to-clipboard.css +1 -1
  36. package/src/components/copy-to-clipboard.native.css +26 -0
  37. package/src/components/details.common.css +26 -0
  38. package/src/components/details.css +6 -9
  39. package/src/components/details.native.css +34 -0
  40. package/src/components/drawer.css +20 -3
  41. package/src/components/dropdown.common.css +23 -0
  42. package/src/components/dropdown.css +7 -9
  43. package/src/components/dropdown.native.css +27 -0
  44. package/src/components/filter.css +71 -22
  45. package/src/components/footer.css +8 -7
  46. package/src/components/form.common.css +81 -0
  47. package/src/components/form.css +37 -9
  48. package/src/components/form.native.css +182 -0
  49. package/src/components/header.common.css +35 -0
  50. package/src/components/header.css +12 -20
  51. package/src/components/header.native.css +29 -0
  52. package/src/components/index.css +1 -0
  53. package/src/components/kitchensink.css +2 -2
  54. package/src/components/layout.common.css +36 -0
  55. package/src/components/layout.css +12 -11
  56. package/src/components/layout.native.css +40 -0
  57. package/src/components/loader.common.css +7 -0
  58. package/src/components/loader.css +3 -1
  59. package/src/components/loader.native.css +5 -0
  60. package/src/components/masthead.css +1 -1
  61. package/src/components/modal.common.css +16 -0
  62. package/src/components/modal.css +19 -15
  63. package/src/components/modal.native.css +18 -0
  64. package/src/components/nav.common.css +22 -0
  65. package/src/components/nav.css +6 -8
  66. package/src/components/nav.native.css +39 -0
  67. package/src/components/notification-banner.common.css +46 -0
  68. package/src/components/notification-banner.css +27 -7
  69. package/src/components/notification-banner.native.css +42 -0
  70. package/src/components/pagination.css +19 -3
  71. package/src/components/panel.common.css +30 -0
  72. package/src/components/panel.css +6 -15
  73. package/src/components/panel.native.css +26 -0
  74. package/src/components/phase-banner.common.css +23 -0
  75. package/src/components/phase-banner.css +7 -6
  76. package/src/components/phase-banner.native.css +30 -0
  77. package/src/components/postcss.config.js +7 -6
  78. package/src/components/radios.common.css +16 -0
  79. package/src/components/radios.css +5 -11
  80. package/src/components/radios.native.css +23 -0
  81. package/src/components/skeleton.common.css +20 -0
  82. package/src/components/skeleton.css +7 -10
  83. package/src/components/skeleton.native.css +53 -0
  84. package/src/components/stack.common.css +67 -0
  85. package/src/components/stack.css +23 -21
  86. package/src/components/stack.native.css +68 -0
  87. package/src/components/summary-list.common.css +93 -0
  88. package/src/components/summary-list.css +82 -22
  89. package/src/components/summary-list.native.css +97 -0
  90. package/src/components/svg-icons.common.css +56 -0
  91. package/src/components/svg-icons.native.css +54 -0
  92. package/src/components/table.css +44 -11
  93. package/src/components/test.css +7 -0
  94. package/src/components/typography.common.css +135 -0
  95. package/src/components/typography.css +47 -97
  96. package/src/components/typography.native.css +128 -0
  97. package/src/components/warning-text.common.css +23 -0
  98. package/src/components/warning-text.css +9 -7
  99. package/src/components/warning-text.native.css +22 -0
  100. package/src/index.native.css +26 -0
  101. package/src/utilities/gap.css +141 -0
  102. package/src/utilities/index.css +6 -1828
  103. package/src/utilities/index.native.css +6 -0
  104. package/src/utilities/layout.css +231 -0
  105. package/src/utilities/layout.native.css +278 -0
  106. package/src/utilities/margin.css +4299 -0
  107. package/src/utilities/padding.css +4299 -0
  108. package/src/utilities/postcss.config.js +7 -6
  109. package/src/utilities/print.css +11 -0
  110. package/src/utilities/utilities.css +3 -2368
  111. package/tailwind.config.js +102 -106
  112. package/theming.js +121 -0
  113. package/defaultTheme/accordion.json +0 -16
  114. package/defaultTheme/back-to-top.json +0 -27
  115. package/defaultTheme/brandConfig.json +0 -147
  116. package/defaultTheme/breadcrumbs.json +0 -8
  117. package/defaultTheme/button.json +0 -90
  118. package/defaultTheme/card.json +0 -23
  119. package/defaultTheme/form.json +0 -30
  120. package/defaultTheme/globals.json +0 -81
  121. package/defaultTheme/index.js +0 -27
  122. package/defaultTheme/layout.json +0 -55
  123. package/defaultTheme/misc.json +0 -68
  124. package/defaultTheme/panel.json +0 -48
  125. package/defaultTheme/phase-banner.json +0 -8
  126. package/defaultTheme/radios.json +0 -8
  127. package/defaultTheme/summary-list.json +0 -8
  128. package/defaultTheme/typography.json +0 -295
  129. package/themes.plugin.js +0 -148
package/themes.plugin.js DELETED
@@ -1,148 +0,0 @@
1
- const fs = require("fs");
2
- const path = require("path");
3
- const postcss = require("postcss");
4
- const postcssrc = require("postcss-load-config");
5
- const postcssJs = require("postcss-js");
6
-
7
- const prefix = "ds";
8
- const mediaQueriesMapping = {
9
- xs: "@media (min-width: 0px)",
10
- sm: "@media (min-width: 640px)",
11
- md: "@media (min-width: 768px)",
12
- lg: "@media (min-width: 1024px)",
13
- print: "@media print",
14
- };
15
-
16
- let hasRun = false;
17
-
18
- module.exports = function addThemes({ addBase, config }) {
19
- if (hasRun) {
20
- return;
21
- }
22
- hasRun = true;
23
-
24
- let base = {};
25
- const themes = config("themes");
26
- const defaultTheme = config("defaultTheme");
27
- for (const customTheme in themes) {
28
- const customThemeObject = require(themes[customTheme]);
29
- if (customThemeObject.overrides) {
30
- console.log("Loading theme css from source...");
31
- const css = fs
32
- .readFileSync(
33
- path.resolve(
34
- path.dirname(themes[customTheme]),
35
- "overrides/index.css",
36
- ),
37
- )
38
- .toString();
39
- const ctx = {};
40
- const { plugins, options } = postcssrc.sync(ctx);
41
- const result = postcss(plugins).process(css, options).result.root;
42
- const cssJs = postcssJs.objectify(result);
43
- base[`.${customTheme}`] = cssJs;
44
- }
45
- if (customTheme === defaultTheme) {
46
- base[`:root,:root.${customTheme},::before,::after`] =
47
- extractVars(customThemeObject);
48
- } else {
49
- base[
50
- `:root.${customTheme},.${customTheme},.${customTheme} *::before,.${customTheme} *::after`
51
- ] = extractVars(customThemeObject);
52
- }
53
-
54
- if (customThemeObject.variables && customThemeObject.variables.components) {
55
- const extractedVariables = extractMediaQueriesFromComponentVars(
56
- customThemeObject.variables.components,
57
- customTheme,
58
- defaultTheme,
59
- );
60
- Object.keys(extractedVariables).forEach((key) => {
61
- if (base[key]) {
62
- base[key] = { ...base[key], ...extractedVariables[key] };
63
- } else {
64
- base[key] = extractedVariables[key];
65
- }
66
- });
67
- }
68
- }
69
- addBase(base);
70
- };
71
-
72
- function extractVars(themeObj) {
73
- const colorVars = extractColorVars(themeObj.colors);
74
- const globalVars =
75
- themeObj.variables && themeObj.variables.globals
76
- ? extractGlobalVars(themeObj.variables.globals)
77
- : {};
78
- return { ...colorVars, ...globalVars };
79
- }
80
-
81
- function extractColorVars(colorObj, colorGroup = "") {
82
- return Object.keys(colorObj).reduce((vars, colorKey) => {
83
- const value = colorObj[colorKey];
84
- const colorName =
85
- colorKey == "default"
86
- ? `--color${colorGroup}`
87
- : `--color${colorGroup}-${colorKey}`;
88
- const newVars =
89
- typeof value === "string"
90
- ? {
91
- [colorName]: value,
92
- [`${colorName}-rgb`]: hexToRGB(value),
93
- }
94
- : extractColorVars(value, `-${colorKey}`);
95
- return { ...vars, ...newVars };
96
- }, {});
97
- }
98
-
99
- function extractGlobalVars(globalVarsObj) {
100
- return Object.keys(globalVarsObj).reduce((vars, varKey) => {
101
- const value = globalVarsObj[varKey];
102
- vars[`--${varKey}`] = value;
103
- return vars;
104
- }, {});
105
- }
106
-
107
- function hexToRGB(hex) {
108
- const r = parseInt(hex.slice(1, 3), 16),
109
- g = parseInt(hex.slice(3, 5), 16),
110
- b = parseInt(hex.slice(5, 7), 16);
111
-
112
- return r + ", " + g + ", " + b;
113
- }
114
-
115
- function extractMediaQueriesFromComponentVars(
116
- componentObj,
117
- customTheme,
118
- defaultTheme,
119
- ) {
120
- let mediaObj = {};
121
- Object.keys(componentObj).forEach((componentClass) => {
122
- Object.keys(componentObj[componentClass]).forEach((componentAttr) => {
123
- Object.keys(componentObj[componentClass][componentAttr]).forEach(
124
- (componentMedia) => {
125
- const newAttrKey = `--${componentClass}-${componentAttr}`;
126
- const newAttrValue =
127
- componentObj[componentClass][componentAttr][componentMedia];
128
- const newAttr = { [newAttrKey]: newAttrValue };
129
- const newClass = `.${prefix}-${componentClass}`;
130
- const newMedia = mediaQueriesMapping[componentMedia];
131
- const newTheme =
132
- customTheme === defaultTheme ? "" : `.${customTheme}`;
133
-
134
- if (mediaObj[newMedia]) {
135
- if (mediaObj[newMedia][newTheme][newClass]) {
136
- mediaObj[newMedia][newTheme][newClass][newAttrKey] = newAttrValue;
137
- } else {
138
- mediaObj[newMedia][newTheme][newClass] = newAttr;
139
- }
140
- } else {
141
- mediaObj[newMedia] = { [newTheme]: { [newClass]: newAttr } };
142
- }
143
- },
144
- );
145
- });
146
- });
147
- return mediaObj;
148
- }