@turntrout/subfont 1.10.7 → 1.11.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/CHANGELOG.md +1 -1
- package/README.md +21 -21
- package/lib/FontTracerPool.d.ts +22 -27
- package/lib/FontTracerPool.d.ts.map +1 -1
- package/lib/FontTracerPool.js +51 -277
- package/lib/FontTracerPool.js.map +1 -1
- package/lib/HeadlessBrowser.d.ts.map +1 -1
- package/lib/HeadlessBrowser.js +44 -28
- package/lib/HeadlessBrowser.js.map +1 -1
- package/lib/cli.js +14 -10
- package/lib/cli.js.map +1 -1
- package/lib/codepointMaps.d.ts.map +1 -1
- package/lib/codepointMaps.js +0 -3
- package/lib/codepointMaps.js.map +1 -1
- package/lib/collectTextsByPage.d.ts +2 -1
- package/lib/collectTextsByPage.d.ts.map +1 -1
- package/lib/collectTextsByPage.js +15 -4
- package/lib/collectTextsByPage.js.map +1 -1
- package/lib/escapeJsStringLiteral.d.ts.map +1 -1
- package/lib/escapeJsStringLiteral.js +12 -5
- package/lib/escapeJsStringLiteral.js.map +1 -1
- package/lib/extractVisibleText.d.ts.map +1 -1
- package/lib/extractVisibleText.js +68 -147
- package/lib/extractVisibleText.js.map +1 -1
- package/lib/fontConverter.d.ts +5 -1
- package/lib/fontConverter.d.ts.map +1 -1
- package/lib/fontConverter.js +47 -122
- package/lib/fontConverter.js.map +1 -1
- package/lib/fontConverterWorker.d.ts +14 -1
- package/lib/fontConverterWorker.d.ts.map +1 -1
- package/lib/fontConverterWorker.js +16 -16
- package/lib/fontConverterWorker.js.map +1 -1
- package/lib/fontFaceHelpers.d.ts +3 -2
- package/lib/fontFaceHelpers.d.ts.map +1 -1
- package/lib/fontFaceHelpers.js +18 -17
- package/lib/fontFaceHelpers.js.map +1 -1
- package/lib/fontFeatureHelpers.d.ts.map +1 -1
- package/lib/fontFeatureHelpers.js +5 -1
- package/lib/fontFeatureHelpers.js.map +1 -1
- package/lib/fontTracerWorker.d.ts +17 -4
- package/lib/fontTracerWorker.d.ts.map +1 -1
- package/lib/fontTracerWorker.js +31 -60
- package/lib/fontTracerWorker.js.map +1 -1
- package/lib/getCssRulesByProperty.d.ts.map +1 -1
- package/lib/getCssRulesByProperty.js +11 -2
- package/lib/getCssRulesByProperty.js.map +1 -1
- package/lib/parseCommandLineOptions.d.ts.map +1 -1
- package/lib/parseCommandLineOptions.js +12 -7
- package/lib/parseCommandLineOptions.js.map +1 -1
- package/lib/piscinaRunWithTimeout.d.ts +18 -0
- package/lib/piscinaRunWithTimeout.d.ts.map +1 -0
- package/lib/piscinaRunWithTimeout.js +78 -0
- package/lib/piscinaRunWithTimeout.js.map +1 -0
- package/lib/subfont.js.map +1 -1
- package/lib/subsetFontWithGlyphs.d.ts +1 -0
- package/lib/subsetFontWithGlyphs.d.ts.map +1 -1
- package/lib/subsetFontWithGlyphs.js +4 -2
- package/lib/subsetFontWithGlyphs.js.map +1 -1
- package/lib/subsetFonts.d.ts +4 -3
- package/lib/subsetFonts.d.ts.map +1 -1
- package/lib/subsetFonts.js +19 -11
- package/lib/subsetFonts.js.map +1 -1
- package/lib/subsetGeneration.d.ts +1 -1
- package/lib/subsetGeneration.d.ts.map +1 -1
- package/lib/subsetGeneration.js +7 -7
- package/lib/subsetGeneration.js.map +1 -1
- package/lib/types/shared.d.ts +1 -0
- package/lib/types/shared.d.ts.map +1 -1
- package/lib/types/shared.js.map +1 -1
- package/lib/unquote.d.ts +17 -0
- package/lib/unquote.d.ts.map +1 -1
- package/lib/unquote.js +63 -9
- package/lib/unquote.js.map +1 -1
- package/package.json +2 -2
package/lib/fontFaceHelpers.js
CHANGED
|
@@ -263,40 +263,41 @@ function cssAssetIsEmpty(cssAsset) {
|
|
|
263
263
|
return true;
|
|
264
264
|
return nodes.every((node) => node.type === 'comment' && !(node.text ?? '').startsWith('!'));
|
|
265
265
|
}
|
|
266
|
-
function parseFontWeightRange(str) {
|
|
266
|
+
function parseFontWeightRange(str, warn) {
|
|
267
267
|
if (typeof str === 'undefined' || str === 'auto') {
|
|
268
268
|
return [-Infinity, Infinity];
|
|
269
269
|
}
|
|
270
|
-
|
|
271
|
-
|
|
272
|
-
const fontWeightTokens = str.split(/\s+/).map((s) =>
|
|
270
|
+
// Resolve keyword forms ("normal" → 400, "bold" → 700) before numeric
|
|
271
|
+
// parsing so they're not falsely flagged as malformed.
|
|
272
|
+
const fontWeightTokens = str.split(/\s+/).map((s) => {
|
|
273
|
+
const normalized = normalizeFontPropertyValue('font-weight', s);
|
|
274
|
+
return parseFloat(String(normalized));
|
|
275
|
+
});
|
|
273
276
|
if ([1, 2].includes(fontWeightTokens.length) &&
|
|
274
277
|
!fontWeightTokens.some(isNaN)) {
|
|
275
|
-
minFontWeight =
|
|
276
|
-
|
|
277
|
-
|
|
278
|
-
}
|
|
278
|
+
const minFontWeight = fontWeightTokens[0];
|
|
279
|
+
const maxFontWeight = fontWeightTokens[1] ?? fontWeightTokens[0];
|
|
280
|
+
return [minFontWeight, maxFontWeight];
|
|
279
281
|
}
|
|
280
|
-
|
|
282
|
+
warn?.(new Error(`parseFontWeightRange: unrecognized font-weight range "${str}", falling back to 400. Expected one or two values (CSS Fonts Level 4 §2.2.3).`));
|
|
283
|
+
return [400, 400];
|
|
281
284
|
}
|
|
282
|
-
function parseFontStretchRange(str) {
|
|
285
|
+
function parseFontStretchRange(str, warn) {
|
|
283
286
|
if (typeof str === 'undefined' || str.toLowerCase() === 'auto') {
|
|
284
287
|
return [-Infinity, Infinity];
|
|
285
288
|
}
|
|
286
|
-
let minFontStretch = 100;
|
|
287
|
-
let maxFontStretch = 100;
|
|
288
289
|
const fontStretchTokens = str.split(/\s+/).map((s) => {
|
|
289
290
|
const normalized = normalizeFontPropertyValue('font-stretch', s);
|
|
290
291
|
return parseFloat(String(normalized));
|
|
291
292
|
});
|
|
292
293
|
if ([1, 2].includes(fontStretchTokens.length) &&
|
|
293
294
|
!fontStretchTokens.some(isNaN)) {
|
|
294
|
-
minFontStretch =
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
}
|
|
295
|
+
const minFontStretch = fontStretchTokens[0];
|
|
296
|
+
const maxFontStretch = fontStretchTokens[1] ?? fontStretchTokens[0];
|
|
297
|
+
return [minFontStretch, maxFontStretch];
|
|
298
298
|
}
|
|
299
|
-
|
|
299
|
+
warn?.(new Error(`parseFontStretchRange: unrecognized font-stretch range "${str}", falling back to 100. Expected one or two values (CSS Fonts Level 4 §2.2.5).`));
|
|
300
|
+
return [100, 100];
|
|
300
301
|
}
|
|
301
302
|
function uniqueChars(text) {
|
|
302
303
|
return [...new Set(text)].sort().join('');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fontFaceHelpers.js","sourceRoot":"","sources":["../src/fontFaceHelpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,wDAQC;AAED,kDAMC;AAED,sCAQC;AAOD,kDAoCC;AAYD,gEAuBC;AAwCD,0DAgDC;AA0BD,kEAsDC;AAED,wDAKC;AAED,sCAaC;AAED,0CAQC;
|
|
1
|
+
{"version":3,"file":"fontFaceHelpers.js","sourceRoot":"","sources":["../src/fontFaceHelpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAaA,wDAQC;AAED,kDAMC;AAED,sCAQC;AAOD,kDAoCC;AAYD,gEAuBC;AAwCD,0DAgDC;AA0BD,kEAsDC;AAED,wDAKC;AAED,sCAaC;AAED,0CAQC;AAID,oDA2BC;AAED,sDAyBC;AAED,kCAEC;AAED,oDAQC;AAED,sCAQC;AA/YD,+CAAiC;AACjC,uDAAwD;AACxD,+CAAgD;AAChD,2EAA4E;AAE5E,MAAM,uBAAuB,GAA2B;IACtD,IAAI,EAAE,WAAW,EAAE,oDAAoD;IACvE,KAAK,EAAE,YAAY;IACnB,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF,6EAA6E;AAC7E,qEAAqE;AACrE,SAAgB,sBAAsB,CACpC,KAAa,EACb,KAAgB;IAEhB,MAAM,WAAW,GAAG,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC;IAClD,OAAO,KAAK;SACT,OAAO,CAAC,KAAK,EAAE,MAAM,CAAC;SACtB,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE,WAAW,CAAC,CAAC;AAClD,CAAC;AAED,SAAgB,mBAAmB,CAAC,IAAY;IAC9C,IAAI,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;QAC9B,OAAO,IAAI,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,GAAG,CAAC;IAClD,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAgB,aAAa,CAAC,KAAa;IACzC,oEAAoE;IACpE,gEAAgE;IAChE,IAAI,sDAAsD,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;QACvE,OAAO,KAAK,CAAC;IACf,CAAC;SAAM,CAAC;QACN,OAAO,IAAI,sBAAsB,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC;IACnD,CAAC;AACH,CAAC;AAOD,SAAgB,mBAAmB,CACjC,0BAAiD,EAAE;IAEnD,oEAAoE;IACpE,iDAAiD;IACjD,MAAM,cAAc,GAA2B;QAC7C,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,QAAQ,EAAE,CAAC;QACX,QAAQ,EAAE,CAAC;KACZ,CAAC;IACF,MAAM,YAAY,GAA2B;QAC3C,KAAK,EAAE,CAAC;QACR,IAAI,EAAE,CAAC;QACP,GAAG,EAAE,CAAC;QACN,GAAG,EAAE,CAAC;KACP,CAAC;IAEF,IAAI,OAA2B,CAAC;IAChC,IAAI,YAAY,GAAG,QAAQ,CAAC;IAE5B,KAAK,MAAM,CAAC,IAAI,uBAAuB,EAAE,CAAC;QACxC,IAAI,QAA4B,CAAC;QACjC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;YACb,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,WAAW,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,EAAE,CAAC,IAAI,EAAE,CAAC;YACxC,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;QACrC,CAAC;QACD,IAAI,QAAQ,KAAK,SAAS,IAAI,QAAQ,GAAG,YAAY,EAAE,CAAC;YACtD,YAAY,GAAG,QAAQ,CAAC;YACxB,OAAO,GAAG,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC;QACrB,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAUD,4DAA4D;AAC5D,oEAAoE;AACpE,SAAgB,0BAA0B,CACxC,IAAqB,EACrB,SAAiC;IAEjC,MAAM,0BAA0B,GAAG,IAAI,GAAG,EAGvC,CAAC;IACJ,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,0BAA0B,CAAC,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,QAAQ,CAAC,QAAQ,GAAG,UAAU,CAAC;IACjC,CAAC;IAED,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;IACzB,CAAC;YAAS,CAAC;QACT,KAAK,MAAM,CACT,QAAQ,EACR,gBAAgB,EACjB,IAAI,0BAA0B,CAAC,OAAO,EAAE,EAAE,CAAC;YAC1C,QAAQ,CAAC,QAAQ,GAAG,gBAAgB,CAAC;QACvC,CAAC;IACH,CAAC;AACH,CAAC;AAED,MAAM,SAAS,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;AAEhD,wEAAwE;AACxE,2EAA2E;AAC3E,uEAAuE;AACvE,qEAAqE;AACrE,oDAAoD;AACpD,0EAA0E;AAC1E,sEAAsE;AACtE,qDAAqD;AACrD,MAAM,kBAAkB,GAAG,IAAI,OAAO,EAAkB,CAAC;AACzD,SAAS,gBAAgB,CAAC,MAAc,EAAE,MAAc;IACtD,IAAI,MAAM,GAAG,kBAAkB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC5C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,QAAQ,uBAAuB,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACvF,kBAAkB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,iBAAiB,CACxB,UAAkC;IAElC,OAAO,SAAS;SACb,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SACtC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;QAChB,MAAM;QACN,GAAG,EAAE,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;KAClD,CAAC,CAAC,CAAC;AACR,CAAC;AASD,SAAgB,uBAAuB,CAAC,SAAwB;IAC9D,MAAM,OAAO,GAAG,iBAAiB,CAC/B,SAAS,CAAC,OAAiC,CAC5C,CAAC;IAEF,MAAM,YAAY,GAAa,CAAC,cAAc,CAAC,CAAC;IAEhD,YAAY,CAAC,IAAI,CACf,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC;SAC5B,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACZ,IAAI,KAAK,GAAoB,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAEnD,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;YAC3B,KAAK,GAAG,aAAa,CAAC,GAAG,KAAK,UAAU,CAAC,CAAC;QAC5C,CAAC;QAED,IAAI,IAAI,KAAK,KAAK,EAAE,CAAC;YACnB,KAAK,GAAG,OAAO;iBACZ,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,OAAO,MAAM,CAAC,GAAG,aAAa,MAAM,CAAC,MAAM,IAAI,CAAC;iBAChE,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;QAED,OAAO,GAAG,IAAI,KAAK,KAAK,GAAG,CAAC;IAC9B,CAAC,CAAC;SACD,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,KAAK,GAAG,EAAE,CAAC,CAC5B,CAAC;IAEF,oEAAoE;IACpE,uEAAuE;IACvE,MAAM,UAAU,GAAG,SAAS,CAAC,UAAU,CAAC;IACxC,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,uBAAuB,GAAG,UAAU,CAAC,IAAI,CAAC;QAC9C,IAAI,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1D,MAAM,WAAW,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC;YACrE,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACxB,uBAAuB,GAAG,QAAQ,CAAC;YACrC,CAAC;QACH,CAAC;QACD,YAAY,CAAC,IAAI,CACf,oBAAoB,YAAY,CAAC,uBAAuB,CAAC,GAAG,CAC7D,CAAC;IACJ,CAAC;IAED,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAEvB,OAAO,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACjC,CAAC;AA0BD,SAAgB,2BAA2B,CACzC,UAA2B,EAC3B,+BAAoD;IAEpD,2EAA2E;IAC3E,2EAA2E;IAC3E,OAAO,+BAA+B;SACnC,MAAM,CACL,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,aAAa,CAAC;QACnB,UAAU,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAC5B,SAAS,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,aAAa,CAAW,CAAC,CAC1D;QACD,CAAC,UAAU,CAAC,IAAI,CACd,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,CACZ,KAAK,CAAC,YAAY,CAAC,KAAK,IAAI,CAAC,YAAY,CAAC;YAC1C,KAAK,CAAC,aAAa,CAAC,KAAK,IAAI,CAAC,aAAa,CAAC;YAC5C,KAAK,CAAC,cAAc,CAAC,KAAK,IAAI,CAAC,cAAc,CAAC;YAC7C,KAAK,CAAC,aAAa,CAAY,CAAC,WAAW,EAAE;gBAC3C,IAAI,CAAC,aAAa,CAAY,CAAC,WAAW,EAAE,CAClD,CACJ;SACA,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;QACb,IAAI,GAAG,GAAG,gBAAgB,CAAC,KAAK,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC;QAChD,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC;YAC1C,MAAM,IAAI,GAAG,KAAK,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC;YAChE,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,EAAE;gBAC9B,MAAM,GAAG,GAAG,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;gBAChE,QAAQ,EAAE,CAAC;gBACX,IAAI,GAAG,KAAK,SAAS;oBAAE,OAAO,SAAS,CAAC;gBACxC,OAAO,QAAQ,sBAAsB,CAAC,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC;YACtD,CAAC,CAAC,CAAC;QACL,CAAC;QACD,IAAI,IAAI,GAAG,0BAA0B,aAAa,CAAC,GAAG,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,iBAAiB,KAAK,CAAC,cAAc,CAAC,eAAe,KAAK,CAAC,YAAY,CAAC,gBAAgB,KAAK,CAAC,aAAa,CAAC,QAAQ,GAAG,EAAE,CAAC;QAC/M,IAAI,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;YAC3B,IAAI,IAAI,kBAAkB,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC;QACrD,CAAC;QACD,mEAAmE;QACnE,KAAK,MAAM,UAAU,IAAI;YACvB,aAAa;YACb,iBAAiB;YACjB,kBAAkB;YAClB,mBAAmB;SACX,EAAE,CAAC;YACX,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;gBACtB,IAAI,IAAI,IAAI,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,EAAE,CAAC;YAChD,CAAC;QACH,CAAC;QACD,IAAI,IAAI,GAAG,CAAC;QACZ,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;SACD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,SAAgB,sBAAsB,CAAC,UAA2B;IAChE,OAAO,UAAU;SACd,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;SACxC,GAAG,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC;SACtD,IAAI,CAAC,EAAE,CAAC,CAAC;AACd,CAAC;AAED,SAAgB,aAAa,CAAC,IAAY;IACxC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAU,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;QACxB,MAAM,EAAE,GAAG,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAC/B,IAAI,EAAE,KAAK,SAAS;YAAE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAC7C,CAAC;IAED,sGAAsG;IACtG,+DAA+D;IAC/D,sEAAsE;IACtE,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAErB,OAAO,CAAC,GAAG,YAAY,CAAC,CAAC;AAC3B,CAAC;AAED,SAAgB,eAAe,CAAC,QAE/B;IACC,MAAM,KAAK,GAAG,QAAQ,CAAC,SAAS,CAAC,KAAK,CAAC;IACvC,IAAI,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IACxB,OAAO,KAAK,CAAC,KAAK,CAChB,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,CAAC,CACxE,CAAC;AACJ,CAAC;AAID,SAAgB,oBAAoB,CAClC,GAAuB,EACvB,IAAkB;IAElB,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,GAAG,KAAK,MAAM,EAAE,CAAC;QACjD,OAAO,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,sEAAsE;IACtE,uDAAuD;IACvD,MAAM,gBAAgB,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QAClD,MAAM,UAAU,GAAG,0BAA0B,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QAChE,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,IACE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,gBAAgB,CAAC,MAAM,CAAC;QACxC,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC,EAC7B,CAAC;QACD,MAAM,aAAa,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;QAC1C,MAAM,aAAa,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,CAAC,CAAC;QACjE,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,EAAE,CACJ,IAAI,KAAK,CACP,yDAAyD,GAAG,gFAAgF,CAC7I,CACF,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,SAAgB,qBAAqB,CACnC,GAAuB,EACvB,IAAkB;IAElB,IAAI,OAAO,GAAG,KAAK,WAAW,IAAI,GAAG,CAAC,WAAW,EAAE,KAAK,MAAM,EAAE,CAAC;QAC/D,OAAO,CAAC,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAC/B,CAAC;IACD,MAAM,iBAAiB,GAAG,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACnD,MAAM,UAAU,GAAG,0BAA0B,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC;QACjE,OAAO,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;IACH,IACE,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,iBAAiB,CAAC,MAAM,CAAC;QACzC,CAAC,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,EAC9B,CAAC;QACD,MAAM,cAAc,GAAG,iBAAiB,CAAC,CAAC,CAAC,CAAC;QAC5C,MAAM,cAAc,GAAG,iBAAiB,CAAC,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC;QACpE,OAAO,CAAC,cAAc,EAAE,cAAc,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,EAAE,CACJ,IAAI,KAAK,CACP,2DAA2D,GAAG,gFAAgF,CAC/I,CACF,CAAC;IACF,OAAO,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AACpB,CAAC;AAED,SAAgB,WAAW,CAAC,IAAY;IACtC,OAAO,CAAC,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AAC5C,CAAC;AAED,SAAgB,oBAAoB,CAAC,KAAe;IAClD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAU,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,KAAK,MAAM,IAAI,IAAI,IAAI,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QACpB,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACtC,CAAC;AAED,SAAgB,aAAa,CAC3B,cAA4C;IAE5C,OAAO,MAAM;SACV,UAAU,CAAC,QAAQ,CAAC;SACpB,MAAM,CAAC,cAAc,CAAC;SACtB,MAAM,CAAC,KAAK,CAAC;SACb,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;AAClB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fontFeatureHelpers.d.ts","sourceRoot":"","sources":["../src/fontFeatureHelpers.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,aAQ/B,CAAC;AAGH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CA4CxE,CAAC;AA2CF,eAAO,MAAM,4BAA4B,iBAAiB,CAAC;AAM3D,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,GAAG,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"fontFeatureHelpers.d.ts","sourceRoot":"","sources":["../src/fontFeatureHelpers.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,oBAAoB,aAQ/B,CAAC;AAGH,eAAO,MAAM,mBAAmB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CA4CxE,CAAC;AA2CF,eAAO,MAAM,4BAA4B,iBAAiB,CAAC;AAM3D,wBAAgB,0BAA0B,CACxC,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,MAAM,GACZ,GAAG,CAAC,MAAM,CAAC,CA8Cb;AAED,UAAU,eAAe;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED,UAAU,WAAW;IACnB,KAAK,EAAE,eAAe,EAAE,CAAC;CAC1B;AAGD,wBAAgB,eAAe,CAAC,IAAI,EAAE,WAAW,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAerE;AAED,wBAAgB,cAAc,CAAC,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,IAAI,CAQ/D;AAID,wBAAgB,iBAAiB,CAAC,CAAC,EACjC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,EACxB,GAAG,EAAE,CAAC,EACN,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,GACrB,IAAI,CAON;AAID,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,WAAW,EACjB,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,GAC/D,IAAI,GAAG,MAAM,EAAE,GAAG,IAAI,CAiBxB;AAED,UAAU,eAAe;IACvB,KAAK,CAAC,EAAE;QAAE,SAAS,CAAC,EAAE;YAAE,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,EAAE,WAAW,KAAK,IAAI,GAAG,IAAI,CAAA;SAAE,CAAA;KAAE,CAAC;CAC/E;AAKD,wBAAgB,mCAAmC,CACjD,yBAAyB,EAAE,eAAe,EAAE,EAC5C,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,GAC/D,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,CAsB3B;AAID,wBAAgB,sBAAsB,CACpC,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,EAC9B,+BAA+B,EAAE,IAAI,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,EACtE,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,IAAI,GAAG,SAAS,GAC/D;IAAE,sBAAsB,EAAE,OAAO,CAAC;IAAC,eAAe,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,CAqCjE"}
|
|
@@ -141,7 +141,11 @@ function extractFeatureTagsFromDecl(prop, value) {
|
|
|
141
141
|
const hasUnresolvedToken = VAR_FUNCTION_RE.test(value);
|
|
142
142
|
if (propLower === 'font-feature-settings') {
|
|
143
143
|
// Parse quoted 4-letter tags: "liga" 1, 'dlig', etc.
|
|
144
|
-
|
|
144
|
+
// Per the OpenType feature-tag registry tags are 4 ASCII chars
|
|
145
|
+
// beginning with a letter and continuing with letters or digits;
|
|
146
|
+
// digits-only tags ("1234") are invalid and `[a-zA-Z0-9]{4}` would
|
|
147
|
+
// have wrongly accepted them as features.
|
|
148
|
+
const re = /["']([a-zA-Z][a-zA-Z0-9]{3})["']/g;
|
|
145
149
|
let m;
|
|
146
150
|
while ((m = re.exec(value)) !== null) {
|
|
147
151
|
tags.add(m[1]);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fontFeatureHelpers.js","sourceRoot":"","sources":["../src/fontFeatureHelpers.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0GA,
|
|
1
|
+
{"version":3,"file":"fontFeatureHelpers.js","sourceRoot":"","sources":["../src/fontFeatureHelpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
2
|
+
* Piscina worker handler for parallel fontTracer execution.
|
|
3
3
|
*
|
|
4
|
-
* Receives:
|
|
5
|
-
* Returns:
|
|
4
|
+
* Receives: { htmlText, stylesheetsWithPredicates }
|
|
5
|
+
* Returns: Array<{ text, props }>
|
|
6
6
|
*
|
|
7
7
|
* Re-parses HTML with jsdom inside the worker since DOM objects
|
|
8
8
|
* cannot be transferred via structured clone.
|
|
9
9
|
*/
|
|
10
|
-
|
|
10
|
+
interface SerializedStylesheet {
|
|
11
|
+
text: string;
|
|
12
|
+
predicates: Record<string, unknown>;
|
|
13
|
+
}
|
|
14
|
+
interface TraceTask {
|
|
15
|
+
htmlText: string;
|
|
16
|
+
stylesheetsWithPredicates: SerializedStylesheet[];
|
|
17
|
+
}
|
|
18
|
+
interface TextByPropsEntry {
|
|
19
|
+
text: string;
|
|
20
|
+
props: Record<string, unknown>;
|
|
21
|
+
}
|
|
22
|
+
declare function trace(task: TraceTask): TextByPropsEntry[];
|
|
23
|
+
export = trace;
|
|
11
24
|
//# sourceMappingURL=fontTracerWorker.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fontTracerWorker.d.ts","sourceRoot":"","sources":["../src/fontTracerWorker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG"}
|
|
1
|
+
{"version":3,"file":"fontTracerWorker.d.ts","sourceRoot":"","sources":["../src/fontTracerWorker.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAQH,UAAU,oBAAoB;IAC5B,IAAI,EAAE,MAAM,CAAC;IAGb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACrC;AAED,UAAU,SAAS;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,yBAAyB,EAAE,oBAAoB,EAAE,CAAC;CACnD;AAED,UAAU,gBAAgB;IACxB,IAAI,EAAE,MAAM,CAAC;IAGb,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAChC;AAOD,iBAAS,KAAK,CAAC,IAAI,EAAE,SAAS,GAAG,gBAAgB,EAAE,CA6BlD;AAED,SAAS,KAAK,CAAC"}
|
package/lib/fontTracerWorker.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
/**
|
|
3
|
-
*
|
|
3
|
+
* Piscina worker handler for parallel fontTracer execution.
|
|
4
4
|
*
|
|
5
|
-
* Receives:
|
|
6
|
-
* Returns:
|
|
5
|
+
* Receives: { htmlText, stylesheetsWithPredicates }
|
|
6
|
+
* Returns: Array<{ text, props }>
|
|
7
7
|
*
|
|
8
8
|
* Re-parses HTML with jsdom inside the worker since DOM objects
|
|
9
9
|
* cannot be transferred via structured clone.
|
|
@@ -41,70 +41,41 @@ var __importStar = (this && this.__importStar) || (function () {
|
|
|
41
41
|
return result;
|
|
42
42
|
};
|
|
43
43
|
})();
|
|
44
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
45
|
-
const worker_threads_1 = require("worker_threads");
|
|
46
44
|
const jsdom_1 = require("jsdom");
|
|
47
45
|
const postcss = __importStar(require("postcss"));
|
|
48
46
|
const memoizeSync = require("memoizesync");
|
|
49
47
|
const fontTracer = require("font-tracer");
|
|
50
48
|
const getCssRulesByProperty = require("./getCssRulesByProperty");
|
|
51
|
-
if (!worker_threads_1.parentPort) {
|
|
52
|
-
throw new Error('fontTracerWorker must be run as a worker thread');
|
|
53
|
-
}
|
|
54
|
-
const port = worker_threads_1.parentPort;
|
|
55
49
|
// Each worker gets its own memoized getCssRulesByProperty instance.
|
|
56
|
-
//
|
|
57
|
-
//
|
|
58
|
-
// multiple pages sequentially.
|
|
50
|
+
// Pages on the same site typically share stylesheets, so memoization
|
|
51
|
+
// is effective even within a single worker processing multiple pages.
|
|
59
52
|
const memoizedGetCssRulesByProperty = memoizeSync(getCssRulesByProperty);
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
53
|
+
function trace(task) {
|
|
54
|
+
let dom;
|
|
55
|
+
try {
|
|
56
|
+
dom = new jsdom_1.JSDOM(task.htmlText);
|
|
57
|
+
const document = dom.window.document;
|
|
58
|
+
// Re-parse CSS from serialized text — asset objects with PostCSS
|
|
59
|
+
// trees can't cross the structured clone boundary.
|
|
60
|
+
const stylesheetsWithPredicates = task.stylesheetsWithPredicates.map((entry) => ({
|
|
61
|
+
asset: { parseTree: postcss.parse(entry.text) },
|
|
62
|
+
text: entry.text,
|
|
63
|
+
predicates: entry.predicates,
|
|
64
|
+
}));
|
|
65
|
+
const textByProps = fontTracer(document, {
|
|
66
|
+
stylesheetsWithPredicates,
|
|
67
|
+
getCssRulesByProperty: memoizedGetCssRulesByProperty,
|
|
68
|
+
});
|
|
69
|
+
// Strip any non-serializable data from results.
|
|
70
|
+
return textByProps.map((entry) => ({
|
|
71
|
+
text: entry.text,
|
|
72
|
+
props: { ...entry.props },
|
|
73
|
+
}));
|
|
64
74
|
}
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
try {
|
|
69
|
-
// Re-parse HTML with jsdom to get a DOM document
|
|
70
|
-
dom = new jsdom_1.JSDOM(htmlText);
|
|
71
|
-
const document = dom.window.document;
|
|
72
|
-
// Re-parse CSS from serialized text — asset objects with PostCSS
|
|
73
|
-
// trees can't cross the structured clone boundary.
|
|
74
|
-
const stylesheetsWithPredicates = serialized.map((entry) => ({
|
|
75
|
-
asset: { parseTree: postcss.parse(entry.text) },
|
|
76
|
-
text: entry.text,
|
|
77
|
-
predicates: entry.predicates,
|
|
78
|
-
}));
|
|
79
|
-
const textByProps = fontTracer(document, {
|
|
80
|
-
stylesheetsWithPredicates,
|
|
81
|
-
getCssRulesByProperty: memoizedGetCssRulesByProperty,
|
|
82
|
-
});
|
|
83
|
-
// Strip any non-serializable data from results
|
|
84
|
-
const serializableResults = textByProps.map((entry) => ({
|
|
85
|
-
text: entry.text,
|
|
86
|
-
props: { ...entry.props },
|
|
87
|
-
}));
|
|
88
|
-
port.postMessage({
|
|
89
|
-
type: 'result',
|
|
90
|
-
taskId,
|
|
91
|
-
textByProps: serializableResults,
|
|
92
|
-
});
|
|
93
|
-
}
|
|
94
|
-
catch (rawErr) {
|
|
95
|
-
const err = rawErr;
|
|
96
|
-
port.postMessage({
|
|
97
|
-
type: 'error',
|
|
98
|
-
taskId: msg.taskId,
|
|
99
|
-
error: err.message,
|
|
100
|
-
stack: err.stack,
|
|
101
|
-
});
|
|
102
|
-
}
|
|
103
|
-
finally {
|
|
104
|
-
// Clean up jsdom to free memory — must run even if fontTracer throws
|
|
105
|
-
if (dom)
|
|
106
|
-
dom.window.close();
|
|
107
|
-
}
|
|
75
|
+
finally {
|
|
76
|
+
if (dom)
|
|
77
|
+
dom.window.close();
|
|
108
78
|
}
|
|
109
|
-
}
|
|
79
|
+
}
|
|
80
|
+
module.exports = trace;
|
|
110
81
|
//# sourceMappingURL=fontTracerWorker.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"fontTracerWorker.js","sourceRoot":"","sources":["../src/fontTracerWorker.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG
|
|
1
|
+
{"version":3,"file":"fontTracerWorker.js","sourceRoot":"","sources":["../src/fontTracerWorker.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,iCAA8B;AAC9B,iDAAmC;AACnC,2CAA4C;AAC5C,0CAA2C;AAC3C,iEAAkE;AAqBlE,oEAAoE;AACpE,qEAAqE;AACrE,sEAAsE;AACtE,MAAM,6BAA6B,GAAG,WAAW,CAAC,qBAAqB,CAAC,CAAC;AAEzE,SAAS,KAAK,CAAC,IAAe;IAC5B,IAAI,GAAsB,CAAC;IAC3B,IAAI,CAAC;QACH,GAAG,GAAG,IAAI,aAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;QAErC,iEAAiE;QACjE,mDAAmD;QACnD,MAAM,yBAAyB,GAAG,IAAI,CAAC,yBAAyB,CAAC,GAAG,CAClE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACV,KAAK,EAAE,EAAE,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE;YAC/C,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,UAAU,EAAE,KAAK,CAAC,UAAU;SAC7B,CAAC,CACH,CAAC;QAEF,MAAM,WAAW,GAAG,UAAU,CAAC,QAAQ,EAAE;YACvC,yBAAyB;YACzB,qBAAqB,EAAE,6BAA6B;SACrD,CAAC,CAAC;QAEH,gDAAgD;QAChD,OAAO,WAAW,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,KAAK,EAAE,EAAE,GAAG,KAAK,CAAC,KAAK,EAAE;SAC1B,CAAC,CAAC,CAAC;IACN,CAAC;YAAS,CAAC;QACT,IAAI,GAAG;YAAE,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;AACH,CAAC;AAED,iBAAS,KAAK,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"getCssRulesByProperty.d.ts","sourceRoot":"","sources":["../src/getCssRulesByProperty.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAKV,MAAM,EAEP,MAAM,SAAS,CAAC;AAwBjB,UAAU,SAAS;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,kBAAkB;IAC1B,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,iBAAiB,EAAE,GAAG,cAAc,EAAE,CAAC;CAC1E;
|
|
1
|
+
{"version":3,"file":"getCssRulesByProperty.d.ts","sourceRoot":"","sources":["../src/getCssRulesByProperty.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAKV,MAAM,EAEP,MAAM,SAAS,CAAC;AAwBjB,UAAU,SAAS;IACjB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM,EAAE,CAAC;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,UAAU,iBAAiB;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED,UAAU,cAAc;IACtB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACpC,IAAI,EAAE,MAAM,CAAC;CACd;AAED,UAAU,kBAAkB;IAC1B,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,SAAS,EAAE,cAAc,EAAE,CAAC;IAC5B,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,GAAG,iBAAiB,EAAE,GAAG,cAAc,EAAE,CAAC;CAC1E;AAyVD,iBAAS,qBAAqB,CAC5B,UAAU,EAAE,MAAM,EAAE,EACpB,SAAS,EAAE,MAAM,EACjB,kBAAkB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC3C,kBAAkB,CAuBpB;AAED,SAAS,qBAAqB,CAAC"}
|
|
@@ -102,11 +102,17 @@ function deduplicateRules(rulesByProperty) {
|
|
|
102
102
|
}
|
|
103
103
|
}
|
|
104
104
|
// Parse @namespace rules: either a default namespace or a prefixed one.
|
|
105
|
+
// The prefix character class follows the CSS Syntax spec for identifiers:
|
|
106
|
+
// start with letter/underscore or a single leading hyphen followed by
|
|
107
|
+
// letter/underscore, then letter/digit/hyphen/underscore. `\w+` would have
|
|
108
|
+
// rejected hyphenated prefixes like `my-ns` and silently misparsed the rule
|
|
109
|
+
// as a default-namespace declaration.
|
|
110
|
+
const NAMESPACE_PARAMS_RE = /^(?<prefix>-?[a-zA-Z_][\w-]*)\s+(?<uri>.+)$|^(?<defaultUri>.+)$/;
|
|
105
111
|
function parseNamespaces(parseTree) {
|
|
106
112
|
let defaultNamespaceURI;
|
|
107
113
|
const namespacePrefixes = new Map();
|
|
108
114
|
parseTree.walkAtRules('namespace', (rule) => {
|
|
109
|
-
const match = rule.params.match(
|
|
115
|
+
const match = rule.params.match(NAMESPACE_PARAMS_RE);
|
|
110
116
|
if (!match || !match.groups)
|
|
111
117
|
return;
|
|
112
118
|
const { prefix, uri, defaultUri } = match.groups;
|
|
@@ -121,13 +127,16 @@ function parseNamespaces(parseTree) {
|
|
|
121
127
|
}
|
|
122
128
|
// Resolve the namespace URI for a selector by examining its subject
|
|
123
129
|
// (the rightmost compound selector) for a namespace prefix like svg|text.
|
|
130
|
+
// Prefix character class matches the same identifier shape as
|
|
131
|
+
// NAMESPACE_PARAMS_RE so hyphenated prefixes (`my-ns|text`) resolve.
|
|
132
|
+
const NAMESPACE_SELECTOR_RE = /^(?<nsPrefix>\*|-?[a-zA-Z_][\w-]*|)\|/;
|
|
124
133
|
function resolveNamespaceURI(selector, ns) {
|
|
125
134
|
if (ns.namespacePrefixes.size === 0) {
|
|
126
135
|
return ns.defaultNamespaceURI;
|
|
127
136
|
}
|
|
128
137
|
const compoundSelectors = selector.split(/\s*[>+~]\s*|\s+/);
|
|
129
138
|
const subject = compoundSelectors[compoundSelectors.length - 1];
|
|
130
|
-
const nsMatch = subject.match(
|
|
139
|
+
const nsMatch = subject.match(NAMESPACE_SELECTOR_RE);
|
|
131
140
|
if (!nsMatch || !nsMatch.groups) {
|
|
132
141
|
return ns.defaultNamespaceURI;
|
|
133
142
|
}
|
|
@@ -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":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yDAA2C;AAC3C,iDAAmC;AASnC,2DAA4D;AAC5D,qCAAsC;AACtC,2FAA6E;AAE7E,MAAM,oBAAoB,GAAG,IAAI,GAAG,CAAS;IAC3C,MAAM;IACN,MAAM;IACN,QAAQ;IACR,QAAQ;IACR,SAAS;IACT,sBAAsB;IACtB,aAAa;IACb,aAAa;IACb,aAAa;IACb,aAAa;IACb,aAAa;IACb,aAAa;IACb,aAAa;IACb,UAAU;IACV,UAAU;IACV,QAAQ;CACT,CAAC,CAAC;AA+BH,SAAS,eAAe,CAAC,GAAW;IAClC,IAAI,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC;IACtB,CAAC;SAAM,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;QACpC,OAAO,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC,CAAC,CAAC;IACtD,CAAC;SAAM,CAAC;QACN,MAAM,IAAI,KAAK,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,2EAA2E;AAC3E,oEAAoE;AACpE,SAAS,eAAe,CAAC,IAAe;IACtC,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;SAClD,IAAI,EAAE;SACN,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IAC5C,OAAO;QACL,IAAI,CAAC,QAAQ;QACb,IAAI,CAAC,KAAK;QACV,IAAI,CAAC,IAAI;QACT,IAAI,CAAC,SAAS;QACd,CAAC,IAAI,CAAC,gBAAgB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;QACvC,IAAI,CAAC,YAAY;QACjB,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC;KAC3B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED,0EAA0E;AAC1E,+DAA+D;AAC/D,SAAS,gBAAgB,CAAC,eAAmC;IAC3D,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE,CAAC;QAC/C,IAAI,GAAG,KAAK,eAAe,IAAI,GAAG,KAAK,WAAW;YAAE,SAAS;QAC7D,MAAM,KAAK,GAAG,eAAe,CAAC,GAAG,CAAgB,CAAC;QAClD,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;YAAE,SAAS;QAChC,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;QAC/B,eAAe,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE;YAC3C,MAAM,EAAE,GAAG,eAAe,CAAC,IAAI,CAAC,CAAC;YACjC,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAC;YAC/B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;YACb,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAOD,wEAAwE;AACxE,0EAA0E;AAC1E,sEAAsE;AACtE,2EAA2E;AAC3E,4EAA4E;AAC5E,sCAAsC;AACtC,MAAM,mBAAmB,GACvB,iEAAiE,CAAC;AACpE,SAAS,eAAe,CAAC,SAAuB;IAC9C,IAAI,mBAAuC,CAAC;IAC5C,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAkB,CAAC;IACpD,SAAS,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC,IAAI,EAAE,EAAE;QAC1C,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM;YAAE,OAAO;QACpC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,UAAU,EAAE,GAAG,KAAK,CAAC,MAAM,CAAC;QACjD,IAAI,MAAM,EAAE,CAAC;YACX,iBAAiB,CAAC,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC;QACtD,CAAC;aAAM,CAAC;YACN,mBAAmB,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;QACpD,CAAC;IACH,CAAC,CAAC,CAAC;IACH,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,CAAC;AACpD,CAAC;AAED,oEAAoE;AACpE,0EAA0E;AAC1E,8DAA8D;AAC9D,qEAAqE;AACrE,MAAM,qBAAqB,GAAG,uCAAuC,CAAC;AACtE,SAAS,mBAAmB,CAC1B,QAAgB,EAChB,EAAiB;IAEjB,IAAI,EAAE,CAAC,iBAAiB,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACpC,OAAO,EAAE,CAAC,mBAAmB,CAAC;IAChC,CAAC;IACD,MAAM,iBAAiB,GAAG,QAAQ,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;IAC5D,MAAM,OAAO,GAAG,iBAAiB,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAC;IACrD,IAAI,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QAChC,OAAO,EAAE,CAAC,mBAAmB,CAAC;IAChC,CAAC;IACD,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC;IACvC,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;QACnB,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,OAAO,EAAE,CAAC,iBAAiB,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,mBAAmB,CAAC;AACpE,CAAC;AAWD,SAAS,cAAc,CACrB,QAAgB,EAChB,GAAY;IAEZ,IAAI,MAAM,GAAG,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAChD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACzC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,oBAAoB,CAAC,GAAY;IACxC,IAAI,GAAG,CAAC,wBAAwB,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC9C,OAAO,GAAG,CAAC,iBAAiB,CAAC;IAC/B,CAAC;IACD,MAAM,UAAU,GAAG,EAAE,GAAG,GAAG,CAAC,iBAAiB,EAAE,CAAC;IAChD,KAAK,MAAM,SAAS,IAAI,GAAG,CAAC,wBAAwB,EAAE,CAAC;QACrD,UAAU,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC;IAC/B,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,mBAAmB,CAC1B,GAAY,EACZ,IAAiB,EACjB,IAAY,EACZ,KAAa;IAEb,MAAM,MAAM,GAAG,IAAI,CAAC,MAAc,CAAC;IACnC,cAAc,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,iBAAiB,EAAE,EAAE;QACjE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,QAAQ,KAAK,eAAe,CAAC;QACxE,MAAM,WAAW,GAAG,gBAAgB;YAClC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAC;YAClE,EAAE,CAAgB,CAAC,CAAC;QACtB,IAAI,CAAC,IAAI,CAAC;YACR,UAAU,EAAE,oBAAoB,CAAC,GAAG,CAAC;YACrC,YAAY,EAAE,gBAAgB;gBAC5B,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,mBAAmB;gBACvC,CAAC,CAAC,mBAAmB,CAAC,WAAqB,EAAE,GAAG,CAAC,aAAa,CAAC;YACjE,QAAQ,EAAE,WAAW;YACrB,gBAAgB,EAAE,gBAAgB;gBAChC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACd,CAAC,CAAC,iBAAiB,CAAC,gBAAgB;YACtC,IAAI;YACJ,KAAK;YACL,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;SAC5B,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,eAAe,CAAC,GAAY,EAAE,IAAiB;IACtD,IAAI,aAAiC,CAAC;IACtC,KAAK,MAAM,SAAS,IAAI,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;QAC7D,IAAI,SAAS,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;YAChC,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC;QAClC,CAAC;aAAM,IACL,SAAS,CAAC,IAAI,KAAK,MAAM;YACzB,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,KAAK,CAAC,EACzC,CAAC;YACD,aAAa,GAAG,SAAS,CAAC,KAAK,CAAC;QAClC,CAAC;IACH,CAAC;IACD,IAAI,OAAO,aAAa,KAAK,WAAW,EAAE,CAAC;QACzC,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,iBAAiB,EAAE,aAAa,CAAC,CAAC;IACnE,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,GAAY,EAAE,IAAiB;IACtD,MAAM,eAAe,GAAG,uBAAuB,CAAC,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;IAC9E,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,gBAAgB,CAAC,EAAE,CAAC;QAC9C,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,gBAAgB,EAAE,eAAe,CAAC,IAAI,CAAC,CAAC;IACzE,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,CAAC;QACzD,mBAAmB,CACjB,GAAG,EACH,IAAI,EACJ,2BAA2B,EAC3B,uBAAuB,CAAC,SAAS,CAAC;YAChC,IAAI,EAAE,EAAE;YACR,cAAc,EAAE,eAAe,CAAC,cAAc;SAC/C,CAAC,CACH,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAY,EAAE,IAAiB;IACvD,MAAM,oBAAoB,GAAa,EAAE,CAAC;IAC1C,MAAM,mBAAmB,GAAa,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,kBAAkB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC9C,IAAI,WAAW,GAAa,EAAE,CAAC;IAC/B,KAAK,MAAM,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACrC,IAAI,SAAS,CAAC,IAAI,KAAK,KAAK,IAAI,SAAS,CAAC,KAAK,KAAK,GAAG,EAAE,CAAC;YACxD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;gBAAE,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACtE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;gBAAE,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;YACrE,WAAW,GAAG,EAAE,CAAC;QACnB,CAAC;aAAM,IAAI,SAAS,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACtC,WAAW,CAAC,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;QAAE,oBAAoB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IACtE,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC;QAAE,mBAAmB,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC;IAErE,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACnD,mBAAmB,CACjB,GAAG,EACH,IAAI,EACJ,qBAAqB,EACrB,oBAAoB,CAAC,IAAI,CAAC,IAAI,CAAC,CAChC,CAAC;IACJ,CAAC;IACD,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACnD,mBAAmB,CACjB,GAAG,EACH,IAAI,EACJ,qBAAqB,EACrB,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC/B,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,GAAY,EAAE,IAAiB;IAC1D,MAAM,aAAa,GAAG;QACpB,aAAa;QACb,aAAa;QACb,WAAW;QACX,YAAY;KACb,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;IAClD,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO;IAEvC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAc,CAAC;IACvC,cAAc,CAAC,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,iBAAiB,EAAE,EAAE;QACrE,MAAM,gBAAgB,GAAG,iBAAiB,CAAC,QAAQ,KAAK,eAAe,CAAC;QACxE,MAAM,YAAY,GAAG,gBAAgB;YACnC,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;QACtC,MAAM,KAAK,GAAc;YACvB,UAAU,EAAE,oBAAoB,CAAC,GAAG,CAAC;YACrC,YAAY,EAAE,gBAAgB;gBAC5B,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,mBAAmB;gBACvC,CAAC,CAAC,mBAAmB,CAAC,YAAsB,EAAE,GAAG,CAAC,aAAa,CAAC;YAClE,QAAQ,EAAE,YAAY;YACtB,gBAAgB,EAAE,gBAAgB;gBAChC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACd,CAAC,CAAC,iBAAiB,CAAC,gBAAgB;YACtC,IAAI,EAAE,MAAM;YACZ,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS;SAC5B,CAAC;QACF,KAAK,MAAM,IAAI,IAAI,aAAa,EAAE,CAAC;YAChC,GAAG,CAAC,eAAe,CAAC,IAAI,CAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACzD,CAAC;IACH,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,gBAAgB,CAAC,GAAY,EAAE,IAAiB;IACvD,MAAM,gBAAgB,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC/C,uCAAuC;IACvC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;IACxE,IAAI,gBAAgB,IAAI,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1D,mBAAmB,CAAC,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;IACvD,CAAC;SAAM,IACL,QAAQ,KAAK,YAAY;QACzB,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAC1C,CAAC;QACD,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;QACpC,eAAe,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7B,CAAC;SAAM,IAAI,QAAQ,KAAK,YAAY,EAAE,CAAC;QACrC,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;SAAM,IAAI,QAAQ,KAAK,MAAM,EAAE,CAAC;QAC/B,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IACjC,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,GAAY,EAAE,IAAY;IACnD,MAAM,KAAK,GAA2B,EAAE,CAAC;IACzC,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,IAAI,EAAE,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;YAC9B,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC;QAC1C,CAAC;IACH,CAAC;IACD,GAAG,CAAC,eAAe,CAAC,aAAa,CAAC,IAAI,CAAC;QACrC,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,UAAU,EAAE,oBAAoB,CAAC,GAAG,CAAC;QACrC,KAAK;KACN,CAAC,CAAC;AACL,CAAC;AAED,SAAS,cAAc,CAAC,GAAY,EAAE,IAAY;IAChD,GAAG,CAAC,eAAe,CAAC,SAAS,CAAC,IAAI,CAAC;QACjC,IAAI,EAAE,IAAI,CAAC,MAAM;QACjB,YAAY,EAAE,GAAG,CAAC,aAAa,CAAC,mBAAmB;QACnD,UAAU,EAAE,oBAAoB,CAAC,GAAG,CAAC;QACrC,IAAI;KACL,CAAC,CAAC;AACL,CAAC;AAED,SAAS,SAAS,CAAC,GAAY,EAAE,IAAa;IAC5C,gEAAgE;IAChE,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QACvE,gBAAgB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC9B,CAAC;SAAM,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACvC,IAAI,MAAM,KAAK,eAAe,EAAE,CAAC;YAC/B,iBAAiB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC/B,CAAC;aAAM,IAAI,MAAM,KAAK,WAAW,EAAE,CAAC;YAClC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;YAC1B,OAAO;QACT,CAAC;IACH,CAAC;IAED,MAAM,cAAc,GAAI,IAAkB,CAAC,KAAK,CAAC;IACjD,IAAI,CAAC,cAAc;QAAE,OAAO;IAE5B,IAAI,QAAQ,GAAG,KAAK,CAAC;IACrB,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;YAC5C,GAAG,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,IAAI,SAAS,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;YACjE,QAAQ,GAAG,IAAI,CAAC;QAClB,CAAC;IACH,CAAC;IACD,KAAK,MAAM,SAAS,IAAI,cAA6B,EAAE,CAAC;QACtD,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC5B,CAAC;IACD,IAAI,QAAQ,EAAE,CAAC;QACb,GAAG,CAAC,wBAAwB,CAAC,GAAG,EAAE,CAAC;IACrC,CAAC;AACH,CAAC;AAED,SAAS,qBAAqB,CAC5B,UAAoB,EACpB,SAAiB,EACjB,kBAA4C;IAE5C,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAC3C,MAAM,aAAa,GAAG,eAAe,CAAC,SAAS,CAAC,CAAC;IACjD,MAAM,eAAe,GAAuB;QAC1C,aAAa,EAAE,EAAE;QACjB,SAAS,EAAE,EAAE;KACd,CAAC;IACF,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;QAClC,eAAe,CAAC,QAAQ,CAAC,GAAG,EAAiB,CAAC;IAChD,CAAC;IAED,MAAM,GAAG,GAAY;QACnB,UAAU;QACV,eAAe;QACf,aAAa;QACb,gBAAgB,EAAE,IAAI,GAAG,EAAE;QAC3B,wBAAwB,EAAE,EAAE;QAC5B,iBAAiB,EAAE,kBAAkB,IAAI,EAAE;KAC5C,CAAC;IAEF,SAAS,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC1B,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAClC,OAAO,eAAe,CAAC;AACzB,CAAC;AAED,iBAAS,qBAAqB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
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;
|
|
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;AAiJD,iBAAS,uBAAuB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,WAAW,CA+B7D;AAED,SAAS,uBAAuB,CAAC"}
|
|
@@ -101,13 +101,18 @@ function registerExecutionOptions(y, maxConcurrency) {
|
|
|
101
101
|
})
|
|
102
102
|
.options('chrome-flags', {
|
|
103
103
|
alias: ['chromeFlags'],
|
|
104
|
-
describe: 'Custom
|
|
105
|
-
type: '
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
104
|
+
describe: 'Custom flag to pass to the Chrome/Chromium browser for dynamic tracing. MUST use the "=" form and be repeated for multiple flags (e.g. --chrome-flags=--no-sandbox --chrome-flags=--disable-features=Foo,Bar). Splitting on commas was dropped because real flag values like --disable-features=Foo,Bar contain commas.',
|
|
105
|
+
type: 'array',
|
|
106
|
+
// `string: true` keeps yargs from number-coercing flag values that
|
|
107
|
+
// look numeric (e.g. `--js-flags=--max-old-space-size=4096`).
|
|
108
|
+
string: true,
|
|
109
|
+
// `nargs: 1` prevents yargs from greedily consuming subsequent
|
|
110
|
+
// positional tokens when the space-separated form is used. Note
|
|
111
|
+
// that the dashed-followers form (`--chrome-flags --no-sandbox`)
|
|
112
|
+
// is still rejected by yargs because `--no-sandbox` looks like
|
|
113
|
+
// another option, not a value; users must always use `=`.
|
|
114
|
+
nargs: 1,
|
|
115
|
+
default: [],
|
|
111
116
|
})
|
|
112
117
|
.options('concurrency', {
|
|
113
118
|
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`,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parseCommandLineOptions.js","sourceRoot":"","sources":["../src/parseCommandLineOptions.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"parseCommandLineOptions.js","sourceRoot":"","sources":["../src/parseCommandLineOptions.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { Piscina } from 'piscina';
|
|
2
|
+
/**
|
|
3
|
+
* Compose a user-provided abort signal with a timeout watchdog and run
|
|
4
|
+
* the task on the given piscina pool. The rejection shape depends on
|
|
5
|
+
* which source fired:
|
|
6
|
+
*
|
|
7
|
+
* - watchdog timeout → Error(formatTimeoutMessage(ms))
|
|
8
|
+
* - user signal abort → the user's `signal.reason` if it's an Error
|
|
9
|
+
* (otherwise piscina's AbortError, whose `cause`
|
|
10
|
+
* is the reason)
|
|
11
|
+
* - other failure → the original error
|
|
12
|
+
*
|
|
13
|
+
* `taskTimeoutMs <= 0` disables the watchdog (the user signal is still
|
|
14
|
+
* forwarded). Reshaping the timeout case avoids surfacing piscina's
|
|
15
|
+
* generic AbortError when a truncated task lands in logs.
|
|
16
|
+
*/
|
|
17
|
+
export declare function runWithTimeoutAndSignal<TResult>(pool: Piscina, task: unknown, userSignal: AbortSignal | undefined, taskTimeoutMs: number, formatTimeoutMessage: (ms: number) => string): Promise<TResult>;
|
|
18
|
+
//# sourceMappingURL=piscinaRunWithTimeout.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"piscinaRunWithTimeout.d.ts","sourceRoot":"","sources":["../src/piscinaRunWithTimeout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAEvC;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAC7C,IAAI,EAAE,OAAO,EAEb,IAAI,EAAE,OAAO,EACb,UAAU,EAAE,WAAW,GAAG,SAAS,EACnC,aAAa,EAAE,MAAM,EACrB,oBAAoB,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,MAAM,GAC3C,OAAO,CAAC,OAAO,CAAC,CA2DlB"}
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.runWithTimeoutAndSignal = runWithTimeoutAndSignal;
|
|
4
|
+
/**
|
|
5
|
+
* Compose a user-provided abort signal with a timeout watchdog and run
|
|
6
|
+
* the task on the given piscina pool. The rejection shape depends on
|
|
7
|
+
* which source fired:
|
|
8
|
+
*
|
|
9
|
+
* - watchdog timeout → Error(formatTimeoutMessage(ms))
|
|
10
|
+
* - user signal abort → the user's `signal.reason` if it's an Error
|
|
11
|
+
* (otherwise piscina's AbortError, whose `cause`
|
|
12
|
+
* is the reason)
|
|
13
|
+
* - other failure → the original error
|
|
14
|
+
*
|
|
15
|
+
* `taskTimeoutMs <= 0` disables the watchdog (the user signal is still
|
|
16
|
+
* forwarded). Reshaping the timeout case avoids surfacing piscina's
|
|
17
|
+
* generic AbortError when a truncated task lands in logs.
|
|
18
|
+
*/
|
|
19
|
+
function runWithTimeoutAndSignal(pool,
|
|
20
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
21
|
+
task, userSignal, taskTimeoutMs, formatTimeoutMessage) {
|
|
22
|
+
// Fast path: no watchdog and no user signal — hand the task straight
|
|
23
|
+
// to piscina. Skips an AbortController allocation and a .then wrapper
|
|
24
|
+
// on every trace/convert.
|
|
25
|
+
if (taskTimeoutMs <= 0 && userSignal === undefined) {
|
|
26
|
+
return pool.run(task);
|
|
27
|
+
}
|
|
28
|
+
const controller = new AbortController();
|
|
29
|
+
let timeoutErr;
|
|
30
|
+
let timer;
|
|
31
|
+
if (taskTimeoutMs > 0) {
|
|
32
|
+
timer = setTimeout(() => {
|
|
33
|
+
timeoutErr = new Error(formatTimeoutMessage(taskTimeoutMs));
|
|
34
|
+
controller.abort(timeoutErr);
|
|
35
|
+
}, taskTimeoutMs);
|
|
36
|
+
timer.unref();
|
|
37
|
+
}
|
|
38
|
+
let userListener;
|
|
39
|
+
if (userSignal) {
|
|
40
|
+
if (userSignal.aborted) {
|
|
41
|
+
controller.abort(userSignal.reason);
|
|
42
|
+
}
|
|
43
|
+
else {
|
|
44
|
+
userListener = () => controller.abort(userSignal.reason);
|
|
45
|
+
userSignal.addEventListener('abort', userListener, { once: true });
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
const cleanup = () => {
|
|
49
|
+
if (timer)
|
|
50
|
+
clearTimeout(timer);
|
|
51
|
+
if (userSignal && userListener) {
|
|
52
|
+
userSignal.removeEventListener('abort', userListener);
|
|
53
|
+
}
|
|
54
|
+
};
|
|
55
|
+
return pool.run(task, { signal: controller.signal }).then((result) => {
|
|
56
|
+
cleanup();
|
|
57
|
+
return result;
|
|
58
|
+
},
|
|
59
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
60
|
+
(err) => {
|
|
61
|
+
cleanup();
|
|
62
|
+
// Piscina rejects with `new AbortError(signal.reason)`. The reason
|
|
63
|
+
// lands in `err.cause`, so we can distinguish "fired by our
|
|
64
|
+
// watchdog" from "fired by the user signal" even if both timers
|
|
65
|
+
// ran — only the *first* abort sets the signal's reason, and that's
|
|
66
|
+
// what surfaces here.
|
|
67
|
+
if (err?.name === 'AbortError') {
|
|
68
|
+
// eslint-disable-next-line no-restricted-syntax
|
|
69
|
+
const cause = err.cause;
|
|
70
|
+
if (cause === timeoutErr)
|
|
71
|
+
throw timeoutErr;
|
|
72
|
+
if (cause instanceof Error)
|
|
73
|
+
throw cause;
|
|
74
|
+
}
|
|
75
|
+
throw err;
|
|
76
|
+
});
|
|
77
|
+
}
|
|
78
|
+
//# sourceMappingURL=piscinaRunWithTimeout.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"piscinaRunWithTimeout.js","sourceRoot":"","sources":["../src/piscinaRunWithTimeout.ts"],"names":[],"mappings":";;AAiBA,0DAkEC;AAjFD;;;;;;;;;;;;;;GAcG;AACH,SAAgB,uBAAuB,CACrC,IAAa;AACb,gDAAgD;AAChD,IAAa,EACb,UAAmC,EACnC,aAAqB,EACrB,oBAA4C;IAE5C,qEAAqE;IACrE,sEAAsE;IACtE,0BAA0B;IAC1B,IAAI,aAAa,IAAI,CAAC,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QACnD,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAqB,CAAC;IAC5C,CAAC;IAED,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IAEzC,IAAI,UAA6B,CAAC;IAClC,IAAI,KAAiC,CAAC;IACtC,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE;YACtB,UAAU,GAAG,IAAI,KAAK,CAAC,oBAAoB,CAAC,aAAa,CAAC,CAAC,CAAC;YAC5D,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC/B,CAAC,EAAE,aAAa,CAAC,CAAC;QAClB,KAAK,CAAC,KAAK,EAAE,CAAC;IAChB,CAAC;IAED,IAAI,YAAsC,CAAC;IAC3C,IAAI,UAAU,EAAE,CAAC;QACf,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YACvB,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACtC,CAAC;aAAM,CAAC;YACN,YAAY,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;YACzD,UAAU,CAAC,gBAAgB,CAAC,OAAO,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IAED,MAAM,OAAO,GAAG,GAAG,EAAE;QACnB,IAAI,KAAK;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;QAC/B,IAAI,UAAU,IAAI,YAAY,EAAE,CAAC;YAC/B,UAAU,CAAC,mBAAmB,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;QACxD,CAAC;IACH,CAAC,CAAC;IAEF,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CACvD,CAAC,MAAe,EAAE,EAAE;QAClB,OAAO,EAAE,CAAC;QACV,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,gDAAgD;IAChD,CAAC,GAAY,EAAE,EAAE;QACf,OAAO,EAAE,CAAC;QACV,mEAAmE;QACnE,4DAA4D;QAC5D,gEAAgE;QAChE,oEAAoE;QACpE,sBAAsB;QACtB,IAAK,GAAa,EAAE,IAAI,KAAK,YAAY,EAAE,CAAC;YAC1C,gDAAgD;YAChD,MAAM,KAAK,GAAI,GAAmC,CAAC,KAAK,CAAC;YACzD,IAAI,KAAK,KAAK,UAAU;gBAAE,MAAM,UAAU,CAAC;YAC3C,IAAI,KAAK,YAAY,KAAK;gBAAE,MAAM,KAAK,CAAC;QAC1C,CAAC;QACD,MAAM,GAAG,CAAC;IACZ,CAAC,CACF,CAAC;AACJ,CAAC"}
|