@turntrout/subfont 1.7.0 → 1.8.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 (151) hide show
  1. package/CLAUDE.md +39 -13
  2. package/README.md +24 -14
  3. package/lib/FontTracerPool.d.ts +38 -0
  4. package/lib/FontTracerPool.d.ts.map +1 -0
  5. package/lib/FontTracerPool.js +230 -217
  6. package/lib/FontTracerPool.js.map +1 -0
  7. package/lib/HeadlessBrowser.d.ts +18 -0
  8. package/lib/HeadlessBrowser.d.ts.map +1 -0
  9. package/lib/HeadlessBrowser.js +216 -210
  10. package/lib/HeadlessBrowser.js.map +1 -0
  11. package/lib/cli.d.ts +3 -0
  12. package/lib/cli.d.ts.map +1 -0
  13. package/lib/cli.js +15 -12
  14. package/lib/cli.js.map +1 -0
  15. package/lib/codepointMaps.d.ts +4 -0
  16. package/lib/codepointMaps.d.ts.map +1 -0
  17. package/lib/codepointMaps.js +99 -0
  18. package/lib/codepointMaps.js.map +1 -0
  19. package/lib/collectFeatureGlyphIds.d.ts +3 -0
  20. package/lib/collectFeatureGlyphIds.d.ts.map +1 -0
  21. package/lib/collectFeatureGlyphIds.js +124 -138
  22. package/lib/collectFeatureGlyphIds.js.map +1 -0
  23. package/lib/collectTextsByPage.d.ts +41 -0
  24. package/lib/collectTextsByPage.d.ts.map +1 -0
  25. package/lib/collectTextsByPage.js +726 -965
  26. package/lib/collectTextsByPage.js.map +1 -0
  27. package/lib/concurrencyLimit.d.ts +3 -0
  28. package/lib/concurrencyLimit.d.ts.map +1 -0
  29. package/lib/concurrencyLimit.js +12 -11
  30. package/lib/concurrencyLimit.js.map +1 -0
  31. package/lib/escapeJsStringLiteral.d.ts +3 -0
  32. package/lib/escapeJsStringLiteral.d.ts.map +1 -0
  33. package/lib/escapeJsStringLiteral.js +7 -6
  34. package/lib/escapeJsStringLiteral.js.map +1 -0
  35. package/lib/extractReferencedCustomPropertyNames.d.ts +3 -0
  36. package/lib/extractReferencedCustomPropertyNames.d.ts.map +1 -0
  37. package/lib/extractReferencedCustomPropertyNames.js +15 -16
  38. package/lib/extractReferencedCustomPropertyNames.js.map +1 -0
  39. package/lib/extractVisibleText.d.ts +7 -0
  40. package/lib/extractVisibleText.d.ts.map +1 -0
  41. package/lib/extractVisibleText.js +110 -119
  42. package/lib/extractVisibleText.js.map +1 -0
  43. package/lib/findCustomPropertyDefinitions.d.ts +8 -0
  44. package/lib/findCustomPropertyDefinitions.d.ts.map +1 -0
  45. package/lib/findCustomPropertyDefinitions.js +41 -48
  46. package/lib/findCustomPropertyDefinitions.js.map +1 -0
  47. package/lib/fontConverter.d.ts +2 -0
  48. package/lib/fontConverter.d.ts.map +1 -0
  49. package/lib/fontConverter.js +40 -21
  50. package/lib/fontConverter.js.map +1 -0
  51. package/lib/fontConverterWorker.d.ts +2 -0
  52. package/lib/fontConverterWorker.d.ts.map +1 -0
  53. package/lib/fontConverterWorker.js +52 -15
  54. package/lib/fontConverterWorker.js.map +1 -0
  55. package/lib/fontFaceHelpers.d.ts +64 -0
  56. package/lib/fontFaceHelpers.d.ts.map +1 -0
  57. package/lib/fontFaceHelpers.js +237 -249
  58. package/lib/fontFaceHelpers.js.map +1 -0
  59. package/lib/fontFeatureHelpers.d.ts +30 -0
  60. package/lib/fontFeatureHelpers.d.ts.map +1 -0
  61. package/lib/fontFeatureHelpers.js +277 -212
  62. package/lib/fontFeatureHelpers.js.map +1 -0
  63. package/lib/fontTracerWorker.d.ts +11 -0
  64. package/lib/fontTracerWorker.d.ts.map +1 -0
  65. package/lib/fontTracerWorker.js +94 -60
  66. package/lib/fontTracerWorker.js.map +1 -0
  67. package/lib/gatherStylesheetsWithPredicates.d.ts +26 -0
  68. package/lib/gatherStylesheetsWithPredicates.d.ts.map +1 -0
  69. package/lib/gatherStylesheetsWithPredicates.js +75 -84
  70. package/lib/gatherStylesheetsWithPredicates.js.map +1 -0
  71. package/lib/getCssRulesByProperty.d.ts +29 -0
  72. package/lib/getCssRulesByProperty.d.ts.map +1 -0
  73. package/lib/getCssRulesByProperty.js +316 -316
  74. package/lib/getCssRulesByProperty.js.map +1 -0
  75. package/lib/getFontInfo.d.ts +11 -0
  76. package/lib/getFontInfo.d.ts.map +1 -0
  77. package/lib/getFontInfo.js +31 -33
  78. package/lib/getFontInfo.js.map +1 -0
  79. package/lib/initialValueByProp.d.ts +3 -0
  80. package/lib/initialValueByProp.d.ts.map +1 -0
  81. package/lib/initialValueByProp.js +20 -17
  82. package/lib/initialValueByProp.js.map +1 -0
  83. package/lib/injectSubsetDefinitions.d.ts +3 -0
  84. package/lib/injectSubsetDefinitions.d.ts.map +1 -0
  85. package/lib/injectSubsetDefinitions.js +55 -59
  86. package/lib/injectSubsetDefinitions.js.map +1 -0
  87. package/lib/normalizeFontPropertyValue.d.ts +3 -0
  88. package/lib/normalizeFontPropertyValue.d.ts.map +1 -0
  89. package/lib/normalizeFontPropertyValue.js +59 -54
  90. package/lib/normalizeFontPropertyValue.js.map +1 -0
  91. package/lib/parseCommandLineOptions.d.ts +9 -0
  92. package/lib/parseCommandLineOptions.d.ts.map +1 -0
  93. package/lib/parseCommandLineOptions.js +145 -149
  94. package/lib/parseCommandLineOptions.js.map +1 -0
  95. package/lib/parseFontVariationSettings.d.ts +3 -0
  96. package/lib/parseFontVariationSettings.d.ts.map +1 -0
  97. package/lib/parseFontVariationSettings.js +38 -36
  98. package/lib/parseFontVariationSettings.js.map +1 -0
  99. package/lib/progress.d.ts +27 -0
  100. package/lib/progress.d.ts.map +1 -0
  101. package/lib/progress.js +51 -54
  102. package/lib/progress.js.map +1 -0
  103. package/lib/sfntCache.d.ts +4 -0
  104. package/lib/sfntCache.d.ts.map +1 -0
  105. package/lib/sfntCache.js +67 -25
  106. package/lib/sfntCache.js.map +1 -0
  107. package/lib/stripLocalTokens.d.ts +3 -0
  108. package/lib/stripLocalTokens.d.ts.map +1 -0
  109. package/lib/stripLocalTokens.js +23 -21
  110. package/lib/stripLocalTokens.js.map +1 -0
  111. package/lib/subfont.d.ts +54 -0
  112. package/lib/subfont.d.ts.map +1 -0
  113. package/lib/subfont.js +531 -629
  114. package/lib/subfont.js.map +1 -0
  115. package/lib/subsetFontWithGlyphs.d.ts +21 -0
  116. package/lib/subsetFontWithGlyphs.d.ts.map +1 -0
  117. package/lib/subsetFontWithGlyphs.js +285 -259
  118. package/lib/subsetFontWithGlyphs.js.map +1 -0
  119. package/lib/subsetFonts.d.ts +55 -0
  120. package/lib/subsetFonts.d.ts.map +1 -0
  121. package/lib/subsetFonts.js +899 -1200
  122. package/lib/subsetFonts.js.map +1 -0
  123. package/lib/subsetGeneration.d.ts +36 -0
  124. package/lib/subsetGeneration.d.ts.map +1 -0
  125. package/lib/subsetGeneration.js +328 -325
  126. package/lib/subsetGeneration.js.map +1 -0
  127. package/lib/types/shared.d.ts +11 -0
  128. package/lib/types/shared.d.ts.map +1 -0
  129. package/lib/types/shared.js +3 -0
  130. package/lib/types/shared.js.map +1 -0
  131. package/lib/unicodeRange.d.ts +3 -0
  132. package/lib/unicodeRange.d.ts.map +1 -0
  133. package/lib/unicodeRange.js +17 -30
  134. package/lib/unicodeRange.js.map +1 -0
  135. package/lib/unquote.d.ts +3 -0
  136. package/lib/unquote.d.ts.map +1 -0
  137. package/lib/unquote.js +18 -25
  138. package/lib/unquote.js.map +1 -0
  139. package/lib/variationAxes.d.ts +33 -0
  140. package/lib/variationAxes.d.ts.map +1 -0
  141. package/lib/variationAxes.js +127 -157
  142. package/lib/variationAxes.js.map +1 -0
  143. package/lib/warnAboutMissingGlyphs.d.ts +43 -0
  144. package/lib/warnAboutMissingGlyphs.d.ts.map +1 -0
  145. package/lib/warnAboutMissingGlyphs.js +139 -147
  146. package/lib/warnAboutMissingGlyphs.js.map +1 -0
  147. package/lib/wasmQueue.d.ts +3 -0
  148. package/lib/wasmQueue.d.ts.map +1 -0
  149. package/lib/wasmQueue.js +13 -10
  150. package/lib/wasmQueue.js.map +1 -0
  151. package/package.json +12 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getCssRulesByProperty.js","sourceRoot":"","sources":["../src/getCssRulesByProperty.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ interface FontInfo {
2
+ characterSet: number[];
3
+ variationAxes: Record<string, {
4
+ min: number;
5
+ max: number;
6
+ default: number;
7
+ }>;
8
+ }
9
+ declare function getFontInfo(buffer: Buffer | Uint8Array): Promise<FontInfo>;
10
+ export = getFontInfo;
11
+ //# sourceMappingURL=getFontInfo.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFontInfo.d.ts","sourceRoot":"","sources":["../src/getFontInfo.ts"],"names":[],"mappings":"AAGA,UAAU,QAAQ;IAChB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;CAC9E;AAwBD,iBAAS,WAAW,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU,GAAG,OAAO,CAAC,QAAQ,CAAC,CAenE;AAED,SAAS,WAAW,CAAC"}
@@ -1,36 +1,34 @@
1
- const { toSfnt } = require('./sfntCache');
2
-
1
+ "use strict";
2
+ const sfntCache_1 = require("./sfntCache");
3
+ const enqueueWasm = require("./wasmQueue");
3
4
  async function getFontInfoFromBuffer(buffer) {
4
- const harfbuzzJs = await require('harfbuzzjs');
5
-
6
- const blob = harfbuzzJs.createBlob(await toSfnt(buffer));
7
- const face = harfbuzzJs.createFace(blob, 0);
8
-
9
- const fontInfo = {
10
- characterSet: Array.from(face.collectUnicodes()),
11
- variationAxes: face.getAxisInfos(),
12
- };
13
-
14
- face.destroy();
15
- blob.destroy();
16
-
17
- return fontInfo;
5
+ // harfbuzzjs is itself thenable; awaiting its require yields the API.
6
+ const harfbuzzJs = await require('harfbuzzjs');
7
+ const blob = harfbuzzJs.createBlob(await (0, sfntCache_1.toSfnt)(buffer));
8
+ const face = harfbuzzJs.createFace(blob, 0);
9
+ const fontInfo = {
10
+ characterSet: Array.from(face.collectUnicodes()),
11
+ variationAxes: face.getAxisInfos(),
12
+ };
13
+ face.destroy();
14
+ blob.destroy();
15
+ return fontInfo;
18
16
  }
19
-
20
17
  const fontInfoPromiseByBuffer = new WeakMap();
21
-
22
- const enqueueWasm = require('./wasmQueue');
23
-
24
- module.exports = function getFontInfo(buffer) {
25
- if (!fontInfoPromiseByBuffer.has(buffer)) {
26
- const promise = enqueueWasm(() => getFontInfoFromBuffer(buffer)).catch(
27
- (err) => {
28
- // Evict rejected promises so retries with the same buffer aren't stuck
29
- fontInfoPromiseByBuffer.delete(buffer);
30
- throw err;
31
- }
32
- );
33
- fontInfoPromiseByBuffer.set(buffer, promise);
34
- }
35
- return fontInfoPromiseByBuffer.get(buffer);
36
- };
18
+ function getFontInfo(buffer) {
19
+ const key = buffer;
20
+ let cached = fontInfoPromiseByBuffer.get(key);
21
+ if (!cached) {
22
+ cached = enqueueWasm(() => getFontInfoFromBuffer(buffer)).catch(
23
+ // eslint-disable-next-line no-restricted-syntax
24
+ (err) => {
25
+ // Evict rejected promises so retries with the same buffer aren't stuck
26
+ fontInfoPromiseByBuffer.delete(key);
27
+ throw err;
28
+ });
29
+ fontInfoPromiseByBuffer.set(key, cached);
30
+ }
31
+ return cached;
32
+ }
33
+ module.exports = getFontInfo;
34
+ //# sourceMappingURL=getFontInfo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getFontInfo.js","sourceRoot":"","sources":["../src/getFontInfo.ts"],"names":[],"mappings":";AAAA,2CAAqC;AACrC,2CAA4C;AAO5C,KAAK,UAAU,qBAAqB,CAClC,MAA2B;IAE3B,sEAAsE;IACtE,MAAM,UAAU,GAAG,MAAM,OAAO,CAAC,YAAY,CAAC,CAAC;IAE/C,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,MAAM,IAAA,kBAAM,EAAC,MAAM,CAAC,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAE5C,MAAM,QAAQ,GAAa;QACzB,YAAY,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;QAChD,aAAa,EAAE,IAAI,CAAC,YAAY,EAAE;KACnC,CAAC;IAEF,IAAI,CAAC,OAAO,EAAE,CAAC;IACf,IAAI,CAAC,OAAO,EAAE,CAAC;IAEf,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,uBAAuB,GAAG,IAAI,OAAO,EAA6B,CAAC;AAEzE,SAAS,WAAW,CAAC,MAA2B;IAC9C,MAAM,GAAG,GAAG,MAAgB,CAAC;IAC7B,IAAI,MAAM,GAAG,uBAAuB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,WAAW,CAAC,GAAG,EAAE,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK;QAC7D,gDAAgD;QAChD,CAAC,GAAY,EAAE,EAAE;YACf,uEAAuE;YACvE,uBAAuB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YACpC,MAAM,GAAG,CAAC;QACZ,CAAC,CACF,CAAC;QACF,uBAAuB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,iBAAS,WAAW,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare const initialValueByProp: Record<string, string>;
2
+ export = initialValueByProp;
3
+ //# sourceMappingURL=initialValueByProp.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialValueByProp.d.ts","sourceRoot":"","sources":["../src/initialValueByProp.ts"],"names":[],"mappings":"AAAA,QAAA,MAAM,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAiB9C,CAAC;AAEF,SAAS,kBAAkB,CAAC"}
@@ -1,18 +1,21 @@
1
- module.exports = {
2
- // 'font-family': 'serif'
3
- 'font-weight': 'normal',
4
- 'font-style': 'normal',
5
- 'font-stretch': 'normal',
6
- content: 'normal',
7
- quotes: '"«" "»" "‹" "›" "‘" "’" "\'" "\'" "\\"" "\\""', // Wide default set to account for browser differences
8
- 'list-style-type': 'none',
9
- display: 'inline',
10
- 'animation-name': 'none',
11
- 'text-transform': 'none',
12
- 'transition-property': 'all',
13
- 'transition-duration': '0s',
14
- 'counter-increment': 'none',
15
- 'counter-reset': 'none',
16
- 'counter-set': 'none',
17
- 'white-space': 'normal',
1
+ "use strict";
2
+ const initialValueByProp = {
3
+ // 'font-family': 'serif'
4
+ 'font-weight': 'normal',
5
+ 'font-style': 'normal',
6
+ 'font-stretch': 'normal',
7
+ content: 'normal',
8
+ quotes: '"«" "»" "‹" "›" "‘" "’" "\'" "\'" "\\"" "\\""', // Wide default set to account for browser differences
9
+ 'list-style-type': 'none',
10
+ display: 'inline',
11
+ 'animation-name': 'none',
12
+ 'text-transform': 'none',
13
+ 'transition-property': 'all',
14
+ 'transition-duration': '0s',
15
+ 'counter-increment': 'none',
16
+ 'counter-reset': 'none',
17
+ 'counter-set': 'none',
18
+ 'white-space': 'normal',
18
19
  };
20
+ module.exports = initialValueByProp;
21
+ //# sourceMappingURL=initialValueByProp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"initialValueByProp.js","sourceRoot":"","sources":["../src/initialValueByProp.ts"],"names":[],"mappings":";AAAA,MAAM,kBAAkB,GAA2B;IACjD,yBAAyB;IACzB,aAAa,EAAE,QAAQ;IACvB,YAAY,EAAE,QAAQ;IACtB,cAAc,EAAE,QAAQ;IACxB,OAAO,EAAE,QAAQ;IACjB,MAAM,EAAE,+CAA+C,EAAE,sDAAsD;IAC/G,iBAAiB,EAAE,MAAM;IACzB,OAAO,EAAE,QAAQ;IACjB,gBAAgB,EAAE,MAAM;IACxB,gBAAgB,EAAE,MAAM;IACxB,qBAAqB,EAAE,KAAK;IAC5B,qBAAqB,EAAE,IAAI;IAC3B,mBAAmB,EAAE,MAAM;IAC3B,eAAe,EAAE,MAAM;IACvB,aAAa,EAAE,MAAM;IACrB,aAAa,EAAE,QAAQ;CACxB,CAAC;AAEF,iBAAS,kBAAkB,CAAC"}
@@ -0,0 +1,3 @@
1
+ declare function injectSubsetDefinitions(cssValue: string, webfontNameMap: Record<string, string>, replaceOriginal: boolean): string;
2
+ export = injectSubsetDefinitions;
3
+ //# sourceMappingURL=injectSubsetDefinitions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectSubsetDefinitions.d.ts","sourceRoot":"","sources":["../src/injectSubsetDefinitions.ts"],"names":[],"mappings":"AAEA,iBAAS,uBAAuB,CAC9B,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EACtC,eAAe,EAAE,OAAO,GACvB,MAAM,CA4DR;AAED,SAAS,uBAAuB,CAAC"}
@@ -1,65 +1,61 @@
1
- const postcssValueParser = require('postcss-value-parser');
2
-
1
+ "use strict";
2
+ const postcssValueParser = require("postcss-value-parser");
3
3
  function injectSubsetDefinitions(cssValue, webfontNameMap, replaceOriginal) {
4
- const subsetFontNames = new Set(
5
- Object.values(webfontNameMap).map((name) => name.toLowerCase())
6
- );
7
- const rootNode = postcssValueParser(cssValue);
8
- let isPrecededByWords = false;
9
- for (const [i, node] of rootNode.nodes.entries()) {
10
- let possibleFontFamily;
11
- let lastFontFamilyTokenIndex = i;
12
- if (node.type === 'string') {
13
- possibleFontFamily = node.value;
14
- } else if (node.type === 'word' || node.type === 'space') {
15
- if (!isPrecededByWords) {
16
- const wordSequence = [];
17
- for (let j = i; j < rootNode.nodes.length; j += 1) {
18
- if (rootNode.nodes[j].type === 'word') {
19
- wordSequence.push(rootNode.nodes[j].value);
20
- lastFontFamilyTokenIndex = j;
21
- } else if (rootNode.nodes[j].type !== 'space') {
22
- break;
23
- }
4
+ const subsetFontNames = new Set(Object.values(webfontNameMap).map((name) => name.toLowerCase()));
5
+ const rootNode = postcssValueParser(cssValue);
6
+ let isPrecededByWords = false;
7
+ for (const [i, node] of rootNode.nodes.entries()) {
8
+ let possibleFontFamily;
9
+ let lastFontFamilyTokenIndex = i;
10
+ if (node.type === 'string') {
11
+ possibleFontFamily = node.value;
24
12
  }
25
- possibleFontFamily = wordSequence.join(' ');
26
- }
27
- isPrecededByWords = true;
28
- } else {
29
- isPrecededByWords = false;
30
- }
31
- if (possibleFontFamily) {
32
- const possibleFontFamilyLowerCase = possibleFontFamily.toLowerCase();
33
- if (subsetFontNames.has(possibleFontFamilyLowerCase)) {
34
- // Bail out, a subset font is already listed
35
- return cssValue;
36
- } else if (webfontNameMap[possibleFontFamilyLowerCase]) {
37
- const newToken = {
38
- type: 'string',
39
- value: webfontNameMap[possibleFontFamilyLowerCase].replace(
40
- /'/g,
41
- "\\'"
42
- ),
43
- quote: "'",
44
- };
45
- if (replaceOriginal) {
46
- rootNode.nodes.splice(
47
- rootNode.nodes.indexOf(node),
48
- lastFontFamilyTokenIndex - i + 1,
49
- newToken
50
- );
51
- } else {
52
- rootNode.nodes.splice(rootNode.nodes.indexOf(node), 0, newToken, {
53
- type: 'div',
54
- value: ',',
55
- after: ' ',
56
- });
13
+ else if (node.type === 'word' || node.type === 'space') {
14
+ if (!isPrecededByWords) {
15
+ const wordSequence = [];
16
+ for (let j = i; j < rootNode.nodes.length; j += 1) {
17
+ if (rootNode.nodes[j].type === 'word') {
18
+ wordSequence.push(rootNode.nodes[j].value);
19
+ lastFontFamilyTokenIndex = j;
20
+ }
21
+ else if (rootNode.nodes[j].type !== 'space') {
22
+ break;
23
+ }
24
+ }
25
+ possibleFontFamily = wordSequence.join(' ');
26
+ }
27
+ isPrecededByWords = true;
28
+ }
29
+ else {
30
+ isPrecededByWords = false;
31
+ }
32
+ if (possibleFontFamily) {
33
+ const possibleFontFamilyLowerCase = possibleFontFamily.toLowerCase();
34
+ if (subsetFontNames.has(possibleFontFamilyLowerCase)) {
35
+ // Bail out, a subset font is already listed
36
+ return cssValue;
37
+ }
38
+ else if (webfontNameMap[possibleFontFamilyLowerCase]) {
39
+ const newToken = {
40
+ type: 'string',
41
+ value: webfontNameMap[possibleFontFamilyLowerCase].replace(/'/g, "\\'"),
42
+ quote: "'",
43
+ };
44
+ if (replaceOriginal) {
45
+ rootNode.nodes.splice(rootNode.nodes.indexOf(node), lastFontFamilyTokenIndex - i + 1, newToken);
46
+ }
47
+ else {
48
+ rootNode.nodes.splice(rootNode.nodes.indexOf(node), 0, newToken, {
49
+ type: 'div',
50
+ value: ',',
51
+ after: ' ',
52
+ });
53
+ }
54
+ return postcssValueParser.stringify(rootNode);
55
+ }
57
56
  }
58
- return postcssValueParser.stringify(rootNode);
59
- }
60
57
  }
61
- }
62
- return cssValue;
58
+ return cssValue;
63
59
  }
64
-
65
60
  module.exports = injectSubsetDefinitions;
61
+ //# sourceMappingURL=injectSubsetDefinitions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"injectSubsetDefinitions.js","sourceRoot":"","sources":["../src/injectSubsetDefinitions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ declare function normalizeFontPropertyValue(propName: string, value: string | number | undefined): string | number | undefined;
2
+ export = normalizeFontPropertyValue;
3
+ //# sourceMappingURL=normalizeFontPropertyValue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeFontPropertyValue.d.ts","sourceRoot":"","sources":["../src/normalizeFontPropertyValue.ts"],"names":[],"mappings":"AAiCA,iBAAS,0BAA0B,CACjC,QAAQ,EAAE,MAAM,EAChB,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,GACjC,MAAM,GAAG,MAAM,GAAG,SAAS,CAuC7B;AAED,SAAS,0BAA0B,CAAC"}
@@ -1,75 +1,80 @@
1
- const cssFontWeightNames = require('css-font-weight-names');
2
- const initialValueByProp = require('./initialValueByProp');
3
- const unquote = require('./unquote');
4
- const normalizeFontStretch = require('font-snapper/lib/normalizeFontStretch');
5
-
1
+ "use strict";
2
+ const cssFontWeightNames = require("css-font-weight-names");
3
+ const initialValueByProp = require("./initialValueByProp");
4
+ const unquote = require("./unquote");
5
+ const normalizeFontStretch = require("font-snapper/lib/normalizeFontStretch");
6
6
  // Resolve the CSS relative font-weight keyword `bolder` according to CSS Fonts Level 4.
7
7
  // https://www.w3.org/TR/css-fonts-4/#relative-weights
8
8
  function applyBolder(weight) {
9
- if (weight < 350) return 400;
10
- if (weight < 550) return 700;
11
- return 900;
9
+ if (weight < 350)
10
+ return 400;
11
+ if (weight < 550)
12
+ return 700;
13
+ return 900;
12
14
  }
13
-
14
15
  // Resolve the CSS relative font-weight keyword `lighter` according to CSS Fonts Level 4.
15
16
  function applyLighter(weight) {
16
- if (weight < 100) return weight;
17
- if (weight < 550) return 100;
18
- if (weight < 750) return 400;
19
- return 700;
17
+ if (weight < 100)
18
+ return weight;
19
+ if (weight < 550)
20
+ return 100;
21
+ if (weight < 750)
22
+ return 400;
23
+ return 700;
20
24
  }
21
-
22
25
  // Resolve a font-weight name (e.g. "bold") or numeric string to a number.
23
26
  // Returns NaN if the value is not a recognized weight.
24
27
  function resolveWeightToken(token) {
25
- const named = cssFontWeightNames[token];
26
- return parseFloat(named !== undefined ? named : token);
28
+ const named = cssFontWeightNames[token];
29
+ return parseFloat(named !== undefined ? named : token);
27
30
  }
28
-
29
31
  // Return true when the numeric weight is within the CSS spec range [1, 1000].
30
32
  function isValidWeight(weight) {
31
- return weight >= 1 && weight <= 1000;
33
+ return weight >= 1 && weight <= 1000;
32
34
  }
33
-
34
35
  function normalizeFontPropertyValue(propName, value) {
35
- const propNameLowerCase = propName.toLowerCase();
36
- if (value === undefined) {
37
- return initialValueByProp[propNameLowerCase];
38
- }
39
- if (propNameLowerCase === 'font-family') {
40
- return unquote(value);
41
- } else if (propNameLowerCase === 'font-weight') {
42
- let parsedValue = value;
43
- if (typeof parsedValue === 'string') {
44
- // font-tracer encodes relative weight modifiers as "baseWeight+bolder+lighter+..."
45
- // Apply each modifier sequentially per the CSS Fonts Level 4 spec.
46
- const segments = parsedValue.split('+');
47
- const baseToken = segments[0].toLowerCase();
48
- let baseWeight = resolveWeightToken(baseToken);
49
- if (isValidWeight(baseWeight) && segments.length > 1) {
50
- for (let i = 1; i < segments.length; i++) {
51
- const modifier = segments[i].toLowerCase();
52
- if (modifier === 'bolder') {
53
- baseWeight = applyBolder(baseWeight);
54
- } else if (modifier === 'lighter') {
55
- baseWeight = applyLighter(baseWeight);
56
- }
36
+ const propNameLowerCase = propName.toLowerCase();
37
+ if (value === undefined) {
38
+ return initialValueByProp[propNameLowerCase];
39
+ }
40
+ if (propNameLowerCase === 'font-family') {
41
+ return unquote(value);
42
+ }
43
+ else if (propNameLowerCase === 'font-weight') {
44
+ let parsedValue = value;
45
+ if (typeof parsedValue === 'string') {
46
+ // font-tracer encodes relative weight modifiers as "baseWeight+bolder+lighter+..."
47
+ // Apply each modifier sequentially per the CSS Fonts Level 4 spec.
48
+ const segments = parsedValue.split('+');
49
+ const baseToken = segments[0].toLowerCase();
50
+ let baseWeight = resolveWeightToken(baseToken);
51
+ if (isValidWeight(baseWeight) && segments.length > 1) {
52
+ for (let i = 1; i < segments.length; i++) {
53
+ const modifier = segments[i].toLowerCase();
54
+ if (modifier === 'bolder') {
55
+ baseWeight = applyBolder(baseWeight);
56
+ }
57
+ else if (modifier === 'lighter') {
58
+ baseWeight = applyLighter(baseWeight);
59
+ }
60
+ }
61
+ return baseWeight;
62
+ }
63
+ parsedValue = baseToken;
57
64
  }
58
- return baseWeight;
59
- }
60
- parsedValue = baseToken;
65
+ const numericWeight = resolveWeightToken(String(parsedValue));
66
+ if (isValidWeight(numericWeight)) {
67
+ return numericWeight;
68
+ }
69
+ return value;
70
+ }
71
+ else if (propNameLowerCase === 'font-stretch') {
72
+ return normalizeFontStretch(String(value));
61
73
  }
62
- const numericWeight = resolveWeightToken(parsedValue);
63
- if (isValidWeight(numericWeight)) {
64
- return numericWeight;
74
+ else if (typeof value === 'string' && propNameLowerCase !== 'src') {
75
+ return value.toLowerCase();
65
76
  }
66
77
  return value;
67
- } else if (propNameLowerCase === 'font-stretch') {
68
- return normalizeFontStretch(value);
69
- } else if (typeof value === 'string' && propNameLowerCase !== 'src') {
70
- return value.toLowerCase();
71
- }
72
- return value;
73
78
  }
74
-
75
79
  module.exports = normalizeFontPropertyValue;
80
+ //# sourceMappingURL=normalizeFontPropertyValue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"normalizeFontPropertyValue.js","sourceRoot":"","sources":["../src/normalizeFontPropertyValue.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { Argv } from 'yargs';
2
+ interface ParseResult {
3
+ yargs: Argv;
4
+ inputFiles: Array<string | number>;
5
+ [key: string]: unknown;
6
+ }
7
+ declare function parseCommandLineOptions(argv?: string[]): ParseResult;
8
+ export = parseCommandLineOptions;
9
+ //# sourceMappingURL=parseCommandLineOptions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parseCommandLineOptions.d.ts","sourceRoot":"","sources":["../src/parseCommandLineOptions.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,OAAO,CAAC;AAUlC,UAAU,WAAW;IACnB,KAAK,EAAE,IAAI,CAAC;IACZ,UAAU,EAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;IAInC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED,iBAAS,uBAAuB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,WAAW,CA2J7D;AAED,SAAS,uBAAuB,CAAC"}