@microsoft/atlas-css 4.1.0 → 4.3.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.
@@ -1,19 +1,30 @@
1
- $code-font-size: $font-size-8 !default;
2
- $code-block-spacing: 1em !default;
3
- $code-header-body-line-height: 1.3571 !default;
1
+ $code-block-pre-font-size: $font-size-8 !default;
2
+ $code-block-pre-spacing: 1em !default;
3
+ $code-block-pre-line-height: 1.3571 !default;
4
+ $code-block-pre-border-color: $code-block-border !default;
5
+ $code-block-pre-border-width: $border-width !default;
6
+ $code-block-pre-border-radius: $border-radius !default;
7
+ $code-block-pre-background-color: $code-block !default;
8
+
9
+ $code-block-pre-padding: $spacer-4 !default;
10
+
11
+ @mixin code-block($code-block-component: false) {
12
+ @if $code-block-component == true {
13
+ background-color: $code-block-pre-background-color;
14
+ overflow: auto;
15
+ }
4
16
 
5
- @mixin code-block {
6
17
  pre {
7
18
  box-sizing: border-box;
8
19
  max-width: 100%;
9
20
  margin: 0;
10
- padding: $code-block-spacing;
11
- border: 1px solid $border;
12
- background-color: $code-block;
13
- font-size: $code-font-size;
21
+ padding: $code-block-pre-padding;
22
+ outline-color: currentColor;
23
+ outline-offset: -$focus-width;
24
+ font-size: $code-block-pre-font-size;
14
25
  -moz-osx-font-smoothing: auto;
15
26
  -webkit-font-smoothing: auto;
16
- line-height: 1.3571;
27
+ line-height: $code-block-pre-line-height;
17
28
  white-space: pre;
18
29
  word-spacing: normal;
19
30
  overflow: auto;
@@ -23,19 +34,25 @@ $code-header-body-line-height: 1.3571 !default;
23
34
  hyphens: none;
24
35
  -webkit-overflow-scrolling: touch;
25
36
 
37
+ @if $code-block-component == false {
38
+ border: $code-block-pre-border-width solid $code-block-pre-border-color;
39
+ border-radius: $code-block-pre-border-radius;
40
+ background-color: $code-block-pre-background-color;
41
+ }
42
+
26
43
  > code {
27
44
  display: block;
28
45
  position: relative;
29
46
  padding: 0;
30
47
  border: 0;
31
- line-height: $code-header-body-line-height;
48
+ line-height: $code-block-pre-line-height;
32
49
 
33
50
  mark {
34
51
  display: inline-block;
35
- min-width: calc(100% + #{$code-block-spacing} + #{$code-block-spacing});
52
+ min-width: calc(100% + #{$code-block-pre-spacing} + #{$code-block-pre-spacing});
36
53
  min-height: 18.9px; // Allow for highlighting of blank lines.
37
- margin: 0 $code-block-spacing * -1;
38
- padding: 0 $code-block-spacing;
54
+ margin: 0 $code-block-pre-spacing * -1;
55
+ padding: 0 $code-block-pre-spacing;
39
56
  color: $text;
40
57
  }
41
58
  }
@@ -32,6 +32,7 @@ $card-background: var(--theme-card-background);
32
32
 
33
33
  $code-header: var(--theme-code-header);
34
34
  $code-block: var(--theme-code-block);
35
+ $code-block-border: var(--theme-code-block-border);
35
36
  $inline-code: var(--theme-inline-code);
36
37
 
37
38
  $control-border: var(--theme-control-border);
@@ -33,8 +33,9 @@ $themes: (
33
33
  'background-subtle-selected': $palette-grey-30,
34
34
  'foreground-selected': $palette-grey-260,
35
35
  'stroke-selected': $palette-grey-90,
36
- 'code-header': $palette-grey-40,
37
- 'code-block': $palette-grey-20,
36
+ 'code-header': $palette-grey-20,
37
+ 'code-block': $palette-grey-10-deprecated,
38
+ 'code-block-border': $palette-grey-70,
38
39
  'control-border': $palette-grey-70,
39
40
  'control-border-bottom': $palette-grey-170,
40
41
  'inline-code': $palette-grey-40,
@@ -191,8 +192,9 @@ $themes: (
191
192
  'background-subtle-selected': $palette-grey-240,
192
193
  'foreground-selected': $palette-grey-40,
193
194
  'stroke-selected': $palette-grey-40,
194
- 'code-header': $palette-grey-100-deprecated,
195
- 'code-block': $palette-grey-110-deprecated,
195
+ 'code-header': $palette-grey-240,
196
+ 'code-block': $palette-grey-280,
197
+ 'code-block-border': $palette-grey-90,
196
198
  'control-border': $palette-grey-40-deprecated,
197
199
  'control-border-bottom': $palette-grey-30-deprecated,
198
200
  'inline-code': $palette-grey-100-deprecated,
@@ -351,6 +353,7 @@ $themes: (
351
353
  'stroke-selected': $palette-yellow-high-contrast-selected,
352
354
  'code-header': $palette-black,
353
355
  'code-block': $palette-black,
356
+ 'code-block-border': $palette-white,
354
357
  'control-border': $palette-white,
355
358
  'control-border-bottom': $palette-white,
356
359
  'inline-code': $palette-grey-110-deprecated,
package/tokens/index.js CHANGED
@@ -1,4 +1,4 @@
1
- const fs = require('fs-extra');
1
+ const { readFile, writeFile, mkdir } = require('fs/promises');
2
2
  const path = require('path');
3
3
  const { quicktype, InputData, jsonInputForTargetLanguage } = require('quicktype-core');
4
4
  const { exporter } = require('sass-export');
@@ -24,9 +24,9 @@ async function createTokens() {
24
24
  const outfileStem = path.join(outfolder, 'tokens');
25
25
 
26
26
  try {
27
- await fs.ensureDir(outfolder);
27
+ await mkdir(outfolder, { recursive: true });
28
28
  await Promise.all([
29
- fs.writeJSON(`${outfileStem}.json`, collection),
29
+ writeFile(`${outfileStem}.json`, JSON.stringify(collection)),
30
30
  quicktypeJSON('AtlasTokens', JSON.stringify(collection), `${outfileStem}.ts`, 'typescript')
31
31
  ]);
32
32
  console.log(`Tokens written to "${path.join(process.cwd(), `/dist/${outfileStem}.json`)}".`);
@@ -45,7 +45,7 @@ async function getInputFilesFromIndex(filePathStem, indexPath) {
45
45
  /** @type {string[]} */
46
46
  const filePaths = [];
47
47
  try {
48
- const indexFile = (await fs.readFile(indexPath)).toString();
48
+ const indexFile = (await readFile(indexPath)).toString();
49
49
  const lines = indexFile.split('\n').reduce((arr, line) => {
50
50
  if (line.includes('@import')) {
51
51
  const filePath = line.replace('@import', '').replaceAll(`'`, '').replace(';', '').trim();
@@ -66,7 +66,7 @@ async function getInputFilesFromIndex(filePathStem, indexPath) {
66
66
  function checkFileComments(paths) {
67
67
  const promises = paths.map(async path => {
68
68
  try {
69
- const result = await fs.readFile(path, 'utf8');
69
+ const result = await readFile(path, 'utf8');
70
70
  if (!result.includes('@sass-export-section')) {
71
71
  console.log(`Warning: ${path} is missing @sass-export-section annotations.`);
72
72
  }
@@ -242,5 +242,5 @@ async function quicktypeJSON(typeName, jsonString, outfile, targetLanguage = 'ty
242
242
  inputData,
243
243
  lang: targetLanguage
244
244
  });
245
- return fs.writeFile(outfile, result.lines.join('\n'));
245
+ return writeFile(outfile, result.lines.join('\n'));
246
246
  }