@turntrout/subfont 1.10.2 → 1.10.4

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 (45) hide show
  1. package/README.md +21 -21
  2. package/lib/HeadlessBrowser.d.ts +2 -0
  3. package/lib/HeadlessBrowser.d.ts.map +1 -1
  4. package/lib/HeadlessBrowser.js +64 -58
  5. package/lib/HeadlessBrowser.js.map +1 -1
  6. package/lib/collectTextsByPage.d.ts.map +1 -1
  7. package/lib/collectTextsByPage.js +145 -136
  8. package/lib/collectTextsByPage.js.map +1 -1
  9. package/lib/concurrencyLimit.d.ts +1 -0
  10. package/lib/concurrencyLimit.d.ts.map +1 -1
  11. package/lib/concurrencyLimit.js +5 -1
  12. package/lib/concurrencyLimit.js.map +1 -1
  13. package/lib/findCustomPropertyDefinitions.js.map +1 -1
  14. package/lib/fontConverter.d.ts.map +1 -1
  15. package/lib/fontConverter.js +2 -1
  16. package/lib/fontConverter.js.map +1 -1
  17. package/lib/getCssRulesByProperty.d.ts.map +1 -1
  18. package/lib/getCssRulesByProperty.js +234 -207
  19. package/lib/getCssRulesByProperty.js.map +1 -1
  20. package/lib/normalizeFontPropertyValue.js +1 -1
  21. package/lib/normalizeFontPropertyValue.js.map +1 -1
  22. package/lib/parseCommandLineOptions.d.ts.map +1 -1
  23. package/lib/parseCommandLineOptions.js +30 -19
  24. package/lib/parseCommandLineOptions.js.map +1 -1
  25. package/lib/sfntCache.d.ts.map +1 -1
  26. package/lib/sfntCache.js +2 -0
  27. package/lib/sfntCache.js.map +1 -1
  28. package/lib/subfont.d.ts.map +1 -1
  29. package/lib/subfont.js +347 -311
  30. package/lib/subfont.js.map +1 -1
  31. package/lib/subsetFontWithGlyphs.d.ts.map +1 -1
  32. package/lib/subsetFontWithGlyphs.js +62 -49
  33. package/lib/subsetFontWithGlyphs.js.map +1 -1
  34. package/lib/subsetFonts.d.ts.map +1 -1
  35. package/lib/subsetFonts.js +345 -283
  36. package/lib/subsetFonts.js.map +1 -1
  37. package/lib/subsetGeneration.d.ts.map +1 -1
  38. package/lib/subsetGeneration.js +152 -127
  39. package/lib/subsetGeneration.js.map +1 -1
  40. package/lib/unquote.js +2 -2
  41. package/lib/unquote.js.map +1 -1
  42. package/lib/warnAboutMissingGlyphs.d.ts.map +1 -1
  43. package/lib/warnAboutMissingGlyphs.js +132 -112
  44. package/lib/warnAboutMissingGlyphs.js.map +1 -1
  45. package/package.json +1 -1
@@ -101,12 +101,10 @@ function deduplicateRules(rulesByProperty) {
101
101
  });
102
102
  }
103
103
  }
104
- function getCssRulesByProperty(properties, cssSource, existingPredicates) {
105
- const initialPredicates = existingPredicates || {};
106
- const parseTree = postcss.parse(cssSource);
104
+ // Parse @namespace rules: either a default namespace or a prefixed one.
105
+ function parseNamespaces(parseTree) {
107
106
  let defaultNamespaceURI;
108
107
  const namespacePrefixes = new Map();
109
- // Parse @namespace rules: either a default namespace or a prefixed one.
110
108
  parseTree.walkAtRules('namespace', (rule) => {
111
109
  const match = rule.params.match(/^(?<prefix>\w+)\s+(?<uri>.+)$|^(?<defaultUri>.+)$/);
112
110
  if (!match || !match.groups)
@@ -119,224 +117,253 @@ function getCssRulesByProperty(properties, cssSource, existingPredicates) {
119
117
  defaultNamespaceURI = unwrapNamespace(defaultUri);
120
118
  }
121
119
  });
122
- const rulesByProperty = {
123
- counterStyles: [],
124
- keyframes: [],
125
- };
126
- for (const property of properties) {
127
- rulesByProperty[property] = [];
120
+ return { defaultNamespaceURI, namespacePrefixes };
121
+ }
122
+ // Resolve the namespace URI for a selector by examining its subject
123
+ // (the rightmost compound selector) for a namespace prefix like svg|text.
124
+ function resolveNamespaceURI(selector, ns) {
125
+ if (ns.namespacePrefixes.size === 0) {
126
+ return ns.defaultNamespaceURI;
127
+ }
128
+ const compoundSelectors = selector.split(/\s*[>+~]\s*|\s+/);
129
+ const subject = compoundSelectors[compoundSelectors.length - 1];
130
+ const nsMatch = subject.match(/^(?<nsPrefix>\*|\w*)\|/);
131
+ if (!nsMatch || !nsMatch.groups) {
132
+ return ns.defaultNamespaceURI;
133
+ }
134
+ const prefix = nsMatch.groups.nsPrefix;
135
+ if (prefix === '*') {
136
+ return undefined;
137
+ }
138
+ if (prefix === '') {
139
+ return '';
140
+ }
141
+ return ns.namespacePrefixes.get(prefix) || ns.defaultNamespaceURI;
142
+ }
143
+ function getSpecificity(selector, ctx) {
144
+ let cached = ctx.specificityCache.get(selector);
145
+ if (!cached) {
146
+ cached = specificity.calculate(selector);
147
+ ctx.specificityCache.set(selector, cached);
148
+ }
149
+ return cached;
150
+ }
151
+ function getCurrentPredicates(ctx) {
152
+ if (ctx.activeCssQueryPredicates.length === 0) {
153
+ return ctx.initialPredicates;
128
154
  }
129
- // Resolve the namespace URI for a selector by examining its subject
130
- // (the rightmost compound selector) for a namespace prefix like svg|text.
131
- function resolveNamespaceURI(selector) {
132
- if (namespacePrefixes.size === 0) {
133
- return defaultNamespaceURI;
155
+ const predicates = { ...ctx.initialPredicates };
156
+ for (const predicate of ctx.activeCssQueryPredicates) {
157
+ predicates[predicate] = true;
158
+ }
159
+ return predicates;
160
+ }
161
+ function pushRulePerSelector(ctx, node, prop, value) {
162
+ const parent = node.parent;
163
+ getSpecificity(parent.selector, ctx).forEach((specificityObject) => {
164
+ const isStyleAttribute = specificityObject.selector === 'bogusselector';
165
+ const selectorStr = isStyleAttribute
166
+ ? undefined
167
+ : specificityObject.selector.trim();
168
+ const list = (ctx.rulesByProperty[prop] = (ctx.rulesByProperty[prop] ||
169
+ []));
170
+ list.push({
171
+ predicates: getCurrentPredicates(ctx),
172
+ namespaceURI: isStyleAttribute
173
+ ? ctx.namespaceInfo.defaultNamespaceURI
174
+ : resolveNamespaceURI(selectorStr, ctx.namespaceInfo),
175
+ selector: selectorStr,
176
+ specificityArray: isStyleAttribute
177
+ ? [1, 0, 0, 0]
178
+ : specificityObject.specificityArray,
179
+ prop,
180
+ value,
181
+ important: !!node.important,
182
+ });
183
+ });
184
+ }
185
+ function handleListStyle(ctx, node) {
186
+ let listStyleType;
187
+ for (const valueNode of postcssValueParser(node.value).nodes) {
188
+ if (valueNode.type === 'string') {
189
+ listStyleType = valueNode.value;
134
190
  }
135
- const compoundSelectors = selector.split(/\s*[>+~]\s*|\s+/);
136
- const subject = compoundSelectors[compoundSelectors.length - 1];
137
- const nsMatch = subject.match(/^(?<nsPrefix>\*|\w*)\|/);
138
- if (!nsMatch || !nsMatch.groups) {
139
- return defaultNamespaceURI;
191
+ else if (valueNode.type === 'word' &&
192
+ counterRendererNames.has(valueNode.value)) {
193
+ listStyleType = valueNode.value;
140
194
  }
141
- const prefix = nsMatch.groups.nsPrefix;
142
- if (prefix === '*') {
143
- return undefined;
195
+ }
196
+ if (typeof listStyleType !== 'undefined') {
197
+ pushRulePerSelector(ctx, node, 'list-style-type', listStyleType);
198
+ }
199
+ }
200
+ function handleAnimation(ctx, node) {
201
+ const parsedAnimation = parseAnimationShorthand.parseSingle(node.value).value;
202
+ if (ctx.properties.includes('animation-name')) {
203
+ pushRulePerSelector(ctx, node, 'animation-name', parsedAnimation.name);
204
+ }
205
+ if (ctx.properties.includes('animation-timing-function')) {
206
+ pushRulePerSelector(ctx, node, 'animation-timing-function', parseAnimationShorthand.serialize({
207
+ name: '',
208
+ timingFunction: parsedAnimation.timingFunction,
209
+ }));
210
+ }
211
+ }
212
+ function handleTransition(ctx, node) {
213
+ const transitionProperties = [];
214
+ const transitionDurations = [];
215
+ const parsed = postcssValueParser(node.value);
216
+ let currentItem = [];
217
+ for (const valueNode of parsed.nodes) {
218
+ if (valueNode.type === 'div' && valueNode.value === ',') {
219
+ if (currentItem.length > 0)
220
+ transitionProperties.push(currentItem[0]);
221
+ if (currentItem.length > 1)
222
+ transitionDurations.push(currentItem[1]);
223
+ currentItem = [];
144
224
  }
145
- if (prefix === '') {
146
- return '';
225
+ else if (valueNode.type !== 'space') {
226
+ currentItem.push(postcssValueParser.stringify(valueNode));
147
227
  }
148
- return namespacePrefixes.get(prefix) || defaultNamespaceURI;
149
228
  }
150
- const specificityCache = new Map();
151
- function getSpecificity(selector) {
152
- let cached = specificityCache.get(selector);
153
- if (!cached) {
154
- cached = specificity.calculate(selector);
155
- specificityCache.set(selector, cached);
156
- }
157
- return cached;
229
+ if (currentItem.length > 0)
230
+ transitionProperties.push(currentItem[0]);
231
+ if (currentItem.length > 1)
232
+ transitionDurations.push(currentItem[1]);
233
+ if (ctx.properties.includes('transition-property')) {
234
+ pushRulePerSelector(ctx, node, 'transition-property', transitionProperties.join(', '));
158
235
  }
159
- const activeCssQueryPredicates = [];
160
- function getCurrentPredicates() {
161
- if (activeCssQueryPredicates.length > 0) {
162
- const predicates = { ...initialPredicates };
163
- for (const predicate of activeCssQueryPredicates) {
164
- predicates[predicate] = true;
165
- }
166
- return predicates;
167
- }
168
- else {
169
- return initialPredicates;
236
+ if (ctx.properties.includes('transition-duration')) {
237
+ pushRulePerSelector(ctx, node, 'transition-duration', transitionDurations.join(', '));
238
+ }
239
+ }
240
+ function handleFontShorthand(ctx, node) {
241
+ const fontLonghands = [
242
+ 'font-family',
243
+ 'font-weight',
244
+ 'font-size',
245
+ 'font-style',
246
+ ].filter((prop) => ctx.properties.includes(prop));
247
+ if (fontLonghands.length === 0)
248
+ return;
249
+ const fontParent = node.parent;
250
+ getSpecificity(fontParent.selector, ctx).forEach((specificityObject) => {
251
+ const isStyleAttribute = specificityObject.selector === 'bogusselector';
252
+ const fontSelector = isStyleAttribute
253
+ ? undefined
254
+ : specificityObject.selector.trim();
255
+ const entry = {
256
+ predicates: getCurrentPredicates(ctx),
257
+ namespaceURI: isStyleAttribute
258
+ ? ctx.namespaceInfo.defaultNamespaceURI
259
+ : resolveNamespaceURI(fontSelector, ctx.namespaceInfo),
260
+ selector: fontSelector,
261
+ specificityArray: isStyleAttribute
262
+ ? [1, 0, 0, 0]
263
+ : specificityObject.specificityArray,
264
+ prop: 'font',
265
+ value: node.value,
266
+ important: !!node.important,
267
+ };
268
+ for (const prop of fontLonghands) {
269
+ ctx.rulesByProperty[prop].push(entry);
170
270
  }
271
+ });
272
+ }
273
+ function visitDeclaration(ctx, node) {
274
+ const isCustomProperty = /^--/.test(node.prop);
275
+ // Custom properties ARE case sensitive
276
+ const propName = isCustomProperty ? node.prop : node.prop.toLowerCase();
277
+ if (isCustomProperty || ctx.properties.includes(propName)) {
278
+ pushRulePerSelector(ctx, node, propName, node.value);
171
279
  }
172
- function pushRulePerSelector(node, prop, value) {
173
- const parent = node.parent;
174
- getSpecificity(parent.selector).forEach((specificityObject) => {
175
- const isStyleAttribute = specificityObject.selector === 'bogusselector';
176
- const selectorStr = isStyleAttribute
177
- ? undefined
178
- : specificityObject.selector.trim();
179
- const list = (rulesByProperty[prop] = (rulesByProperty[prop] ||
180
- []));
181
- list.push({
182
- predicates: getCurrentPredicates(),
183
- namespaceURI: isStyleAttribute
184
- ? defaultNamespaceURI
185
- : resolveNamespaceURI(selectorStr),
186
- selector: selectorStr,
187
- specificityArray: isStyleAttribute
188
- ? [1, 0, 0, 0]
189
- : specificityObject.specificityArray,
190
- prop,
191
- value,
192
- important: !!node.important,
193
- });
194
- });
280
+ else if (propName === 'list-style' &&
281
+ ctx.properties.includes('list-style-type')) {
282
+ handleListStyle(ctx, node);
283
+ }
284
+ else if (propName === 'animation') {
285
+ handleAnimation(ctx, node);
286
+ }
287
+ else if (propName === 'transition') {
288
+ handleTransition(ctx, node);
289
+ }
290
+ else if (propName === 'font') {
291
+ handleFontShorthand(ctx, node);
195
292
  }
196
- (function visit(node) {
197
- // Check for selector. We might be in an at-rule like @font-face
198
- if (node.type === 'decl' && node.parent && node.parent.type === 'rule') {
199
- const isCustomProperty = /^--/.test(node.prop);
200
- const propName = isCustomProperty ? node.prop : node.prop.toLowerCase(); // Custom properties ARE case sensitive
201
- if (isCustomProperty || properties.includes(propName)) {
202
- pushRulePerSelector(node, propName, node.value);
203
- }
204
- else if (propName === 'list-style' &&
205
- properties.includes('list-style-type')) {
206
- let listStyleType;
207
- for (const valueNode of postcssValueParser(node.value).nodes) {
208
- if (valueNode.type === 'string') {
209
- listStyleType = valueNode.value;
210
- }
211
- else if (valueNode.type === 'word' &&
212
- counterRendererNames.has(valueNode.value)) {
213
- listStyleType = valueNode.value;
214
- }
215
- }
216
- if (typeof listStyleType !== 'undefined') {
217
- pushRulePerSelector(node, 'list-style-type', listStyleType);
218
- }
219
- }
220
- else if (propName === 'animation') {
221
- const parsedAnimation = parseAnimationShorthand.parseSingle(node.value).value;
222
- if (properties.includes('animation-name')) {
223
- pushRulePerSelector(node, 'animation-name', parsedAnimation.name);
224
- }
225
- if (properties.includes('animation-timing-function')) {
226
- pushRulePerSelector(node, 'animation-timing-function', parseAnimationShorthand.serialize({
227
- name: '',
228
- timingFunction: parsedAnimation.timingFunction,
229
- }));
230
- }
231
- }
232
- else if (propName === 'transition') {
233
- const transitionProperties = [];
234
- const transitionDurations = [];
235
- const parsed = postcssValueParser(node.value);
236
- let currentItem = [];
237
- for (const valueNode of parsed.nodes) {
238
- if (valueNode.type === 'div' && valueNode.value === ',') {
239
- if (currentItem.length > 0) {
240
- transitionProperties.push(currentItem[0]);
241
- }
242
- if (currentItem.length > 1) {
243
- transitionDurations.push(currentItem[1]);
244
- }
245
- currentItem = [];
246
- }
247
- else if (valueNode.type !== 'space') {
248
- currentItem.push(postcssValueParser.stringify(valueNode));
249
- }
250
- }
251
- if (currentItem.length > 0) {
252
- transitionProperties.push(currentItem[0]);
253
- }
254
- if (currentItem.length > 1) {
255
- transitionDurations.push(currentItem[1]);
256
- }
257
- if (properties.includes('transition-property')) {
258
- pushRulePerSelector(node, 'transition-property', transitionProperties.join(', '));
259
- }
260
- if (properties.includes('transition-duration')) {
261
- pushRulePerSelector(node, 'transition-duration', transitionDurations.join(', '));
262
- }
263
- }
264
- else if (propName === 'font') {
265
- const fontLonghands = [
266
- 'font-family',
267
- 'font-weight',
268
- 'font-size',
269
- 'font-style',
270
- ].filter((prop) => properties.includes(prop));
271
- if (fontLonghands.length > 0) {
272
- const fontParent = node.parent;
273
- getSpecificity(fontParent.selector).forEach((specificityObject) => {
274
- const isStyleAttribute = specificityObject.selector === 'bogusselector';
275
- const fontSelector = isStyleAttribute
276
- ? undefined
277
- : specificityObject.selector.trim();
278
- const entry = {
279
- predicates: getCurrentPredicates(),
280
- namespaceURI: isStyleAttribute
281
- ? defaultNamespaceURI
282
- : resolveNamespaceURI(fontSelector),
283
- selector: fontSelector,
284
- specificityArray: isStyleAttribute
285
- ? [1, 0, 0, 0]
286
- : specificityObject.specificityArray,
287
- prop: 'font',
288
- value: node.value,
289
- important: !!node.important,
290
- };
291
- for (const prop of fontLonghands) {
292
- rulesByProperty[prop].push(entry);
293
- }
294
- });
295
- }
296
- }
293
+ }
294
+ function visitCounterStyle(ctx, node) {
295
+ const props = {};
296
+ for (const childNode of node.nodes ?? []) {
297
+ if (childNode.type === 'decl') {
298
+ props[childNode.prop] = childNode.value;
297
299
  }
298
- else if (node.type === 'atrule' &&
299
- node.name.toLowerCase() === 'counter-style') {
300
- const props = {};
301
- for (const childNode of node.nodes ?? []) {
302
- if (childNode.type === 'decl') {
303
- props[childNode.prop] = childNode.value;
304
- }
305
- }
306
- rulesByProperty.counterStyles.push({
307
- name: node.params,
308
- predicates: getCurrentPredicates(),
309
- props,
310
- });
300
+ }
301
+ ctx.rulesByProperty.counterStyles.push({
302
+ name: node.params,
303
+ predicates: getCurrentPredicates(ctx),
304
+ props,
305
+ });
306
+ }
307
+ function visitKeyframes(ctx, node) {
308
+ ctx.rulesByProperty.keyframes.push({
309
+ name: node.params,
310
+ namespaceURI: ctx.namespaceInfo.defaultNamespaceURI,
311
+ predicates: getCurrentPredicates(ctx),
312
+ node,
313
+ });
314
+ }
315
+ function visitNode(ctx, node) {
316
+ // Check for selector. We might be in an at-rule like @font-face
317
+ if (node.type === 'decl' && node.parent && node.parent.type === 'rule') {
318
+ visitDeclaration(ctx, node);
319
+ }
320
+ else if (node.type === 'atrule') {
321
+ const atName = node.name.toLowerCase();
322
+ if (atName === 'counter-style') {
323
+ visitCounterStyle(ctx, node);
311
324
  }
312
- else if (node.type === 'atrule' &&
313
- node.name.toLowerCase() === 'keyframes') {
314
- rulesByProperty.keyframes.push({
315
- name: node.params,
316
- namespaceURI: defaultNamespaceURI,
317
- predicates: getCurrentPredicates(),
318
- node,
319
- });
325
+ else if (atName === 'keyframes') {
326
+ visitKeyframes(ctx, node);
320
327
  return;
321
328
  }
322
- const containerNodes = node.nodes;
323
- if (containerNodes) {
324
- let popAfter = false;
325
- if (node.type === 'atrule') {
326
- const name = node.name.toLowerCase();
327
- if (name === 'media' || name === 'supports') {
328
- activeCssQueryPredicates.push(`${name}Query:${node.params}`);
329
- popAfter = true;
330
- }
331
- }
332
- for (const childNode of containerNodes) {
333
- visit(childNode);
334
- }
335
- if (popAfter) {
336
- activeCssQueryPredicates.pop();
337
- }
329
+ }
330
+ const containerNodes = node.nodes;
331
+ if (!containerNodes)
332
+ return;
333
+ let popAfter = false;
334
+ if (node.type === 'atrule') {
335
+ const name = node.name.toLowerCase();
336
+ if (name === 'media' || name === 'supports') {
337
+ ctx.activeCssQueryPredicates.push(`${name}Query:${node.params}`);
338
+ popAfter = true;
338
339
  }
339
- })(parseTree);
340
+ }
341
+ for (const childNode of containerNodes) {
342
+ visitNode(ctx, childNode);
343
+ }
344
+ if (popAfter) {
345
+ ctx.activeCssQueryPredicates.pop();
346
+ }
347
+ }
348
+ function getCssRulesByProperty(properties, cssSource, existingPredicates) {
349
+ const parseTree = postcss.parse(cssSource);
350
+ const namespaceInfo = parseNamespaces(parseTree);
351
+ const rulesByProperty = {
352
+ counterStyles: [],
353
+ keyframes: [],
354
+ };
355
+ for (const property of properties) {
356
+ rulesByProperty[property] = [];
357
+ }
358
+ const ctx = {
359
+ properties,
360
+ rulesByProperty,
361
+ namespaceInfo,
362
+ specificityCache: new Map(),
363
+ activeCssQueryPredicates: [],
364
+ initialPredicates: existingPredicates || {},
365
+ };
366
+ visitNode(ctx, parseTree);
340
367
  deduplicateRules(rulesByProperty);
341
368
  return rulesByProperty;
342
369
  }
@@ -1 +1 @@
1
- {"version":3,"file":"getCssRulesByProperty.js","sourceRoot":"","sources":["../src/getCssRulesByProperty.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"getCssRulesByProperty.js","sourceRoot":"","sources":["../src/getCssRulesByProperty.ts"],"names":[],"mappings":"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"}
@@ -38,7 +38,7 @@ function normalizeFontPropertyValue(propName, value) {
38
38
  return initialValueByProp[propNameLowerCase];
39
39
  }
40
40
  if (propNameLowerCase === 'font-family') {
41
- return unquote(value);
41
+ return unquote(String(value));
42
42
  }
43
43
  else if (propNameLowerCase === 'font-weight') {
44
44
  let parsedValue = value;
@@ -1 +1 @@
1
- {"version":3,"file":"normalizeFontPropertyValue.js","sourceRoot":"","sources":["../src/normalizeFontPropertyValue.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"normalizeFontPropertyValue.js","sourceRoot":"","sources":["../src/normalizeFontPropertyValue.ts"],"names":[],"mappings":"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"}
@@ -1 +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"}
1
+ {"version":3,"file":"parseCommandLineOptions.d.ts","sourceRoot":"","sources":["../src/parseCommandLineOptions.ts"],"names":[],"mappings":"AAIA,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;AA2ID,iBAAS,uBAAuB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,WAAW,CA+B7D;AAED,SAAS,uBAAuB,CAAC"}
@@ -1,5 +1,4 @@
1
1
  "use strict";
2
- const os = require("os");
3
2
  // yargs is exported as a callable/chainable singleton; the typings only
4
3
  // expose half of that shape, so this union (and the cast below) keeps the
5
4
  // runtime API ergonomics without leaking `unknown` everywhere.
@@ -7,15 +6,8 @@ const yargsModule = require("yargs");
7
6
  const concurrencyLimit_1 = require("./concurrencyLimit");
8
7
  // eslint-disable-next-line no-restricted-syntax
9
8
  const yargsLib = yargsModule;
10
- function parseCommandLineOptions(argv) {
11
- let y = yargsLib;
12
- if (argv) {
13
- y = yargsLib(argv);
14
- }
15
- const maxConcurrency = (0, concurrencyLimit_1.getMaxConcurrency)();
16
- const { version } = require('../package.json');
17
- y.usage('Create optimal font subsets from your actual font usage.\n$0 [options] <htmlFile(s) | url(s)>')
18
- .version(version)
9
+ function registerPathOptions(y) {
10
+ return y
19
11
  .options('root', {
20
12
  describe: 'Path to your web root (will be deduced from your input files if not specified)',
21
13
  type: 'string',
@@ -32,7 +24,10 @@ function parseCommandLineOptions(argv) {
32
24
  .options('text', {
33
25
  describe: 'Additional characters to include in the subset for every @font-face found on the page',
34
26
  type: 'string',
35
- })
27
+ });
28
+ }
29
+ function registerBehaviorOptions(y) {
30
+ return y
36
31
  .options('fallbacks', {
37
32
  describe: 'Async-load the full original font as a fallback for dynamic content. Disable with --no-fallbacks',
38
33
  type: 'boolean',
@@ -70,7 +65,10 @@ function parseCommandLineOptions(argv) {
70
65
  describe: 'Issue relative urls instead of root-relative ones',
71
66
  type: 'boolean',
72
67
  default: false,
73
- })
68
+ });
69
+ }
70
+ function registerLoggingOptions(y) {
71
+ return y
74
72
  .options('silent', {
75
73
  alias: 's',
76
74
  describe: `Do not write anything to stdout`,
@@ -87,7 +85,10 @@ function parseCommandLineOptions(argv) {
87
85
  describe: `Don't write anything to disk. Shows a preview of files, sizes, and CSS changes that would be made`,
88
86
  type: 'boolean',
89
87
  default: false,
90
- })
88
+ });
89
+ }
90
+ function registerExecutionOptions(y, maxConcurrency) {
91
+ return y
91
92
  .options('cache', {
92
93
  describe: 'Enable disk caching of subset font results between runs. Pass a directory path or use without a value for the default .subfont-cache directory',
93
94
  type: 'string',
@@ -109,7 +110,7 @@ function parseCommandLineOptions(argv) {
109
110
  },
110
111
  })
111
112
  .options('concurrency', {
112
- describe: `Maximum number of worker threads for parallel font tracing. Defaults to the number of CPU cores (max 8). Upper bound: ${maxConcurrency} (based on free memory and CPU count)`,
113
+ describe: `Maximum number of worker threads for parallel font tracing. Defaults to the number of CPU cores (max ${concurrencyLimit_1.MAX_POOL_SIZE}). Values above the estimated safe limit (${maxConcurrency}) will produce a warning`,
113
114
  type: 'number',
114
115
  })
115
116
  .check((argv) => {
@@ -117,9 +118,6 @@ function parseCommandLineOptions(argv) {
117
118
  if (!Number.isInteger(argv.concurrency) || argv.concurrency < 1) {
118
119
  throw new Error('--concurrency must be a positive integer');
119
120
  }
120
- if (argv.concurrency > maxConcurrency) {
121
- throw new Error(`--concurrency must not exceed ${maxConcurrency} (each worker uses ~50 MB; ${Math.round(os.freemem() / (1024 * 1024 * 1024))} GB free, ${os.cpus().length} CPUs)`);
122
- }
123
121
  }
124
122
  return true;
125
123
  })
@@ -132,8 +130,21 @@ function parseCommandLineOptions(argv) {
132
130
  describe: 'Exit with a non-zero status code if any warnings are emitted during the run',
133
131
  type: 'boolean',
134
132
  default: false,
135
- })
136
- .wrap(yargsLib.terminalWidth());
133
+ });
134
+ }
135
+ function parseCommandLineOptions(argv) {
136
+ let y = yargsLib;
137
+ if (argv) {
138
+ y = yargsLib(argv);
139
+ }
140
+ const maxConcurrency = (0, concurrencyLimit_1.getMaxConcurrency)();
141
+ const { version } = require('../package.json');
142
+ y.usage('Create optimal font subsets from your actual font usage.\n$0 [options] <htmlFile(s) | url(s)>').version(version);
143
+ registerPathOptions(y);
144
+ registerBehaviorOptions(y);
145
+ registerLoggingOptions(y);
146
+ registerExecutionOptions(y, maxConcurrency);
147
+ y.wrap(yargsLib.terminalWidth());
137
148
  const parsed = y.argv;
138
149
  const { _: inputFiles, ...rest } = parsed;
139
150
  return {