postext 1.59.0 → 1.59.2

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 (58) hide show
  1. package/dist/__tests__/defaults/headingsBalancing.test.js +8 -0
  2. package/dist/__tests__/defaults/headingsBalancing.test.js.map +1 -1
  3. package/dist/__tests__/design/titleTextWrapped.test.js +13 -10
  4. package/dist/__tests__/design/titleTextWrapped.test.js.map +1 -1
  5. package/dist/__tests__/exercises/digital.test.js +19 -1
  6. package/dist/__tests__/exercises/digital.test.js.map +1 -1
  7. package/dist/__tests__/exercises/layout.test.js +31 -0
  8. package/dist/__tests__/exercises/layout.test.js.map +1 -1
  9. package/dist/__tests__/pipeline/fillShortColumns.test.d.ts +2 -0
  10. package/dist/__tests__/pipeline/fillShortColumns.test.d.ts.map +1 -0
  11. package/dist/__tests__/pipeline/fillShortColumns.test.js +163 -0
  12. package/dist/__tests__/pipeline/fillShortColumns.test.js.map +1 -0
  13. package/dist/__tests__/pipeline/spanHeadingMidPage.test.js +52 -0
  14. package/dist/__tests__/pipeline/spanHeadingMidPage.test.js.map +1 -1
  15. package/dist/canvas-backend/swatch.js +1 -1
  16. package/dist/canvas-backend/swatch.js.map +1 -1
  17. package/dist/configWarnings.js +1 -1
  18. package/dist/configWarnings.js.map +1 -1
  19. package/dist/defaults/headings.d.ts +1 -0
  20. package/dist/defaults/headings.d.ts.map +1 -1
  21. package/dist/defaults/headings.js +7 -0
  22. package/dist/defaults/headings.js.map +1 -1
  23. package/dist/exercises/expand.d.ts.map +1 -1
  24. package/dist/exercises/expand.js +20 -3
  25. package/dist/exercises/expand.js.map +1 -1
  26. package/dist/exercises/runtime.d.ts.map +1 -1
  27. package/dist/exercises/runtime.js +8 -3
  28. package/dist/exercises/runtime.js.map +1 -1
  29. package/dist/exercises/styles.d.ts +8 -0
  30. package/dist/exercises/styles.d.ts.map +1 -1
  31. package/dist/exercises/styles.js +16 -2
  32. package/dist/exercises/styles.js.map +1 -1
  33. package/dist/html-backend.d.ts.map +1 -1
  34. package/dist/html-backend.js +16 -12
  35. package/dist/html-backend.js.map +1 -1
  36. package/dist/measure/inlineIcon.d.ts +5 -2
  37. package/dist/measure/inlineIcon.d.ts.map +1 -1
  38. package/dist/measure/inlineIcon.js +8 -4
  39. package/dist/measure/inlineIcon.js.map +1 -1
  40. package/dist/parse/types.d.ts +4 -0
  41. package/dist/parse/types.d.ts.map +1 -1
  42. package/dist/pipeline/build.d.ts.map +1 -1
  43. package/dist/pipeline/build.js +79 -22
  44. package/dist/pipeline/build.js.map +1 -1
  45. package/dist/pipeline/columnBalancing.d.ts +19 -4
  46. package/dist/pipeline/columnBalancing.d.ts.map +1 -1
  47. package/dist/pipeline/columnBalancing.js +31 -3
  48. package/dist/pipeline/columnBalancing.js.map +1 -1
  49. package/dist/pipeline/measureContentBlock.d.ts +9 -1
  50. package/dist/pipeline/measureContentBlock.d.ts.map +1 -1
  51. package/dist/pipeline/measureContentBlock.js +1 -1
  52. package/dist/pipeline/measureContentBlock.js.map +1 -1
  53. package/dist/types.d.ts +30 -1
  54. package/dist/types.d.ts.map +1 -1
  55. package/dist/vdt.d.ts +10 -4
  56. package/dist/vdt.d.ts.map +1 -1
  57. package/dist/vdt.js.map +1 -1
  58. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Inline symbols (`:icon[alt]{…}`, #1058, DESIGN §12.5): the size of the
3
- * box each kind takes on a line. The box stands on the baseline; its
3
+ * box each kind takes on a line. The box stands on the baseline (or reaches
4
+ * `drop` ems below it, #1248); its
4
5
  * height is the text's capital height (0.75 em, as a swatch's side) unless
5
6
  * `size` gives it in ems. A picture keeps its proportions, a glyph is set
6
7
  * at the size whose capitals are that high and takes its advance, and a
@@ -22,7 +23,8 @@ export declare function iconLineDash(icon: Pick<VDTInlineIcon, 'line' | 'strokeP
22
23
  * embeds pictures up front (the PDF) reads. */
23
24
  export declare function resourceBlockIcons(rb: ResolvedResourceBlock | undefined): VDTInlineIcon[];
24
25
  /** Where a symbol is drawn on its segment: its box from the segment's left
25
- * edge `x` and the line's `baseline`, and, for a line sample, the stroke's
26
+ * edge `x` and the line's `baseline`, the baseline a glyph is set on (the
27
+ * line's, lowered by the icon's drop), and, for a line sample, the stroke's
26
28
  * ends at half height. */
27
29
  export declare function inlineIconBox(icon: VDTInlineIcon, x: number, baseline: number): {
28
30
  x: number;
@@ -30,5 +32,6 @@ export declare function inlineIconBox(icon: VDTInlineIcon, x: number, baseline:
30
32
  width: number;
31
33
  height: number;
32
34
  strokeY: number;
35
+ baseline: number;
33
36
  };
34
37
  //# sourceMappingURL=inlineIcon.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"inlineIcon.d.ts","sourceRoot":"","sources":["../../src/measure/inlineIcon.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,aAAa,EAAW,MAAM,WAAW,CAAC;AAM/E,iEAAiE;AACjE,eAAO,MAAM,WAAW,OAAO,CAAC;AAMhC;;uCAEuC;AACvC,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CA2B9F;AAED;mEACmE;AACnE,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,CAAC,GAAG,MAAM,EAAE,GAAG,SAAS,CAKjG;AAED;;gDAEgD;AAChD,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,qBAAqB,GAAG,SAAS,GAAG,aAAa,EAAE,CAYzF;AAED;;2BAE2B;AAC3B,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAGxJ"}
1
+ {"version":3,"file":"inlineIcon.d.ts","sourceRoot":"","sources":["../../src/measure/inlineIcon.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,KAAK,EAAE,qBAAqB,EAAE,aAAa,EAAW,MAAM,WAAW,CAAC;AAM/E,iEAAiE;AACjE,eAAO,MAAM,WAAW,OAAO,CAAC;AAMhC;;uCAEuC;AACvC,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CA4B9F;AAED;mEACmE;AACnE,wBAAgB,YAAY,CAAC,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,MAAM,GAAG,UAAU,CAAC,GAAG,MAAM,EAAE,GAAG,SAAS,CAKjG;AAED;;gDAEgD;AAChD,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,qBAAqB,GAAG,SAAS,GAAG,aAAa,EAAE,CAYzF;AAED;;;2BAG2B;AAC3B,wBAAgB,aAAa,CAAC,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,CAI1K"}
@@ -1,6 +1,7 @@
1
1
  /**
2
2
  * Inline symbols (`:icon[alt]{…}`, #1058, DESIGN §12.5): the size of the
3
- * box each kind takes on a line. The box stands on the baseline; its
3
+ * box each kind takes on a line. The box stands on the baseline (or reaches
4
+ * `drop` ems below it, #1248); its
4
5
  * height is the text's capital height (0.75 em, as a swatch's side) unless
5
6
  * `size` gives it in ems. A picture keeps its proportions, a glyph is set
6
7
  * at the size whose capitals are that high and takes its advance, and a
@@ -23,7 +24,8 @@ export function measureInlineIcon(icon, color, font) {
23
24
  const em = fontEm(font);
24
25
  const heightPx = Math.max(1, (icon.size ?? ICON_CAP_EM) * em);
25
26
  const tint = /^#[0-9a-f]{6}(?:[0-9a-f]{2})?$/i.test(color) ? color : undefined;
26
- const base = { alt: icon.alt, heightPx, ...(tint ? { color: tint } : {}) };
27
+ const dropPx = icon.drop !== undefined && icon.drop > 0 ? icon.drop * em : 0;
28
+ const base = { alt: icon.alt, heightPx, ...(dropPx > 0 ? { dropPx } : {}), ...(tint ? { color: tint } : {}) };
27
29
  if (icon.resource !== undefined) {
28
30
  const p = icon.picture;
29
31
  return {
@@ -80,10 +82,12 @@ export function resourceBlockIcons(rb) {
80
82
  return out;
81
83
  }
82
84
  /** Where a symbol is drawn on its segment: its box from the segment's left
83
- * edge `x` and the line's `baseline`, and, for a line sample, the stroke's
85
+ * edge `x` and the line's `baseline`, the baseline a glyph is set on (the
86
+ * line's, lowered by the icon's drop), and, for a line sample, the stroke's
84
87
  * ends at half height. */
85
88
  export function inlineIconBox(icon, x, baseline) {
86
89
  const left = x + (icon.insetPx ?? 0);
87
- return { x: left, y: baseline - icon.heightPx, width: icon.widthPx, height: icon.heightPx, strokeY: baseline - icon.heightPx / 2 };
90
+ const bottom = baseline + (icon.dropPx ?? 0);
91
+ return { x: left, y: bottom - icon.heightPx, width: icon.widthPx, height: icon.heightPx, strokeY: bottom - icon.heightPx / 2, baseline: bottom };
88
92
  }
89
93
  //# sourceMappingURL=inlineIcon.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"inlineIcon.js","sourceRoot":"","sources":["../../src/measure/inlineIcon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"inlineIcon.js","sourceRoot":"","sources":["../../src/measure/inlineIcon.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,eAAe,EAAE,MAAM,WAAW,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACvC,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,iEAAiE;AACjE,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC;AAChC,8CAA8C;AAC9C,MAAM,iBAAiB,GAAG,CAAC,CAAC;AAC5B,oEAAoE;AACpE,MAAM,qBAAqB,GAAG,IAAI,CAAC;AAEnC;;uCAEuC;AACvC,MAAM,UAAU,iBAAiB,CAAC,IAAgB,EAAE,KAAa,EAAE,IAAY;IAC7E,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,IAAI,WAAW,CAAC,GAAG,EAAE,CAAC,CAAC;IAC9D,MAAM,IAAI,GAAG,iCAAiC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/E,MAAM,MAAM,GAAG,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7E,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,QAAQ,EAAE,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;IAC9G,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;QAChC,MAAM,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC;QACvB,OAAO;YACL,IAAI,EAAE,UAAU;YAChB,GAAG,IAAI;YACP,OAAO,EAAE,QAAQ,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YACtD,UAAU,EAAE,IAAI,CAAC,QAAQ;YACzB,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1F,CAAC;IACJ,CAAC;IACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,QAAQ,GAAG,WAAW,CAAC;QACvC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC;QACrG,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,gBAAgB,CAAC,IAAI,CAAC,KAAK,EAAE,UAAU,CAAC,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC;IACtH,CAAC;IACD,OAAO;QACL,IAAI,EAAE,MAAM;QACZ,GAAG,IAAI;QACP,OAAO,EAAE,QAAQ,GAAG,iBAAiB;QACrC,IAAI,EAAE,IAAI,CAAC,IAAI,IAAI,OAAO;QAC1B,QAAQ,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,qBAAqB,GAAG,EAAE,CAAC;KAClD,CAAC;AACJ,CAAC;AAED;mEACmE;AACnE,MAAM,UAAU,YAAY,CAAC,IAA8C;IACzE,MAAM,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC;IAC7B,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAClD,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ;QAAE,OAAO,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;gDAEgD;AAChD,MAAM,UAAU,kBAAkB,CAAC,EAAqC;IACtE,IAAI,CAAC,EAAE;QAAE,OAAO,EAAE,CAAC;IACnB,MAAM,GAAG,GAAoB,EAAE,CAAC;IAChC,MAAM,GAAG,GAAG,CAAC,KAAqC,EAAQ,EAAE;QAC1D,KAAK,MAAM,IAAI,IAAI,KAAK,IAAI,EAAE;YAAE,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,QAAQ,IAAI,EAAE;gBAAE,IAAI,GAAG,CAAC,MAAM,EAAE,IAAI;oBAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;IACzH,CAAC,CAAC;IACF,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,CAAC;IACrB,GAAG,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC;IAClB,GAAG,CAAC,EAAE,CAAC,cAAc,CAAC,CAAC;IACvB,KAAK,MAAM,KAAK,IAAI,EAAE,CAAC,MAAM,IAAI,EAAE;QAAE,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;IAC9D,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,KAAK,EAAE,KAAK,IAAI,EAAE;QAAE,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC1D,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;2BAG2B;AAC3B,MAAM,UAAU,aAAa,CAAC,IAAmB,EAAE,CAAS,EAAE,QAAgB;IAC5E,MAAM,IAAI,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;IACrC,MAAM,MAAM,GAAG,QAAQ,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IAC7C,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC;AACnJ,CAAC"}
@@ -307,6 +307,10 @@ export interface InlineIcon {
307
307
  * a capital (0.75 em, as a swatch's side). A glyph is set at the size
308
308
  * whose capitals are that high. */
309
309
  size?: number;
310
+ /** How far the box reaches below the baseline, in ems of the text around
311
+ * it; default 0 (it stands on the baseline). Set by the pipeline for an
312
+ * exercise icon beside a shaped number (#1248), which shares its band. */
313
+ drop?: number;
310
314
  /** Set by the pipeline for a `resource` icon: the picture to draw and
311
315
  * its width over its height. Absent when the resource is unknown. */
312
316
  picture?: {
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/parse/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/parse/types.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/pipeline/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/pipeline/build.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAqI,MAAM,aAAa,CAAC;AAIpM,OAAO,EAQL,KAAK,WAAW,EAqBjB,MAAM,WAAW,CAAC;AA2BnB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAM5D,OAAO,EAAoE,KAAK,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAmL3H,OAAO,EAAqI,KAAK,WAAW,EAAkJ,MAAM,sBAAsB,CAAC;AAC3U,OAAO,EASL,KAAK,OAAO,EACZ,KAAK,cAAc,EAKpB,MAAM,eAAe,CAAC;AAmCvB,MAAM,WAAW,oBAAoB;IACnC;;;;;OAKG;IACH,YAAY,CAAC,EAAE,MAAM,OAAO,CAAC;IAC7B;;;;;OAKG;IACH,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE,aAAa,KAAK,IAAI,CAAC;IAC/C;;;;OAIG;IACH,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,IAAI,CAAC;IACvC;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,eAAe,GAAG,IAAI,CAAC;CAClC;AAED,yFAAyF;AACzF,MAAM,WAAW,aAAa;IAC5B,8CAA8C;IAC9C,IAAI,EAAE,MAAM,CAAC;IACb,sFAAsF;IACtF,QAAQ,EAAE,MAAM,CAAC;IACjB,mCAAmC;IACnC,EAAE,EAAE,MAAM,CAAC;IACX,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,aAAa;IAC5B,8BAA8B;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb;qCACiC;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,wCAAwC;IACxC,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,mBAAoB,SAAQ,KAAK;;CAK7C;AAED;yEACyE;AACzE,MAAM,WAAW,SAAS;IACxB,8EAA8E;IAC9E,cAAc,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC7C,+EAA+E;IAC/E,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/C;4EACwE;IACxE,kBAAkB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACtD,6EAA6E;IAC7E,QAAQ,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACxC;;;sDAGkD;IAClD,YAAY,CAAC,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACnC;8EAC0E;IAC1E,eAAe,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9C;qDACiD;IACjD,UAAU,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACzC;;;uDAGmD;IACnD,gBAAgB,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;CACxD;AAED;4DAC4D;AAC5D,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;CACrB;AAwBD,MAAM,WAAW,UAAW,SAAQ,cAAc;IAChD,GAAG,EAAE,WAAW,CAAC;IACjB;;+DAE2D;IAC3D,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACvC,gBAAgB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC7B;;;4EAGwE;IACxE,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACzC;yEACqE;IACrE,YAAY,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC1B;;qDAEiD;IACjD,qBAAqB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACnC;;uDAEmD;IACnD,mBAAmB,EAAE,GAAG,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;IACjD;;;;mEAI+D;IAC/D,iBAAiB,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;CACnD;AAED,sEAAsE;AACtE,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,eAAe,CAAC;AAyI3D;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,aAAa,EACtB,KAAK,CAAC,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,oBAAoB,EAC9B,KAAK,GAAE,SAAc,GACpB,UAAU,CA4BZ;AAqgRD,wBAAgB,aAAa,CAC3B,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,aAAa,EACtB,KAAK,CAAC,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,WAAW,CAEb;AAED;8EAC8E;AAC9E,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAchD;AAED;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,aAAa,EACtB,KAAK,CAAC,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,oBAAoB,GAAG;IAAE,kBAAkB,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,GAC5E,OAAO,CAAC,WAAW,CAAC,CAStB;AAED,wEAAwE;AACxE,wBAAiB,gBAAgB,CAC/B,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,aAAa,EACtB,KAAK,CAAC,EAAE,gBAAgB,EACxB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,SAAS,CAAC,IAAI,EAAE,WAAW,EAAE,IAAI,CAAC,CA2EpC;AAqID;;;;;;;;;;GAUG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,SAAS,WAAW,EAAE,GAAG,IAAI,CAoCnE"}
@@ -66,7 +66,7 @@ import { comicStripExtent, comicStripOffset, comicStripPlacement, comicStripWidt
66
66
  import { comicSpreadGutter, isComicSpread, layoutComicSpread } from '../comics/spread.js';
67
67
  import { comicTextPanelsSupported, layoutComicTextFrames, layoutStripTextFrames, planComicTextPanels, wrapComicTextPanels } from '../comics/textPanels.js';
68
68
  import { applyStyleAttrs, computePageMetrics, composedLeafConfig, flowPageMirrored, pageMirrored, sheetRectToFlow, isMarkerBlock, nextNonMarkerBlock, spaceLinesAfter, prevNonMarkerBlock, rollbackTrailingBlocks, } from './buildHelpers.js';
69
- import { measureContentBlock } from './measureContentBlock.js';
69
+ import { measureContentBlock, wordSpacingProfile } from './measureContentBlock.js';
70
70
  import { containerStyle, paragraphStyleIdOf, planParagraphContainers } from './paragraphContainers.js';
71
71
  import { appendChapterEndNotes, footnoteIdsOfLines, footnoteParagraphStyle, noteContentBlock, noteNumberPositionOf, numberFootnotes, footnoteFormatOf, numberFootnotesByPlacement, sameFootnoteNumbers, splitFootnoteDefinitions, withFootnoteStyle, } from './footnotes.js';
72
72
  import { planParts, derivePartMeasureContext } from './parts.js';
@@ -189,6 +189,11 @@ function chapterNumbersOfContent(blocks, resolved, prefixes, values, ordinalOffs
189
189
  * looseness counts from that optimum, so such a paragraph asks it for one
190
190
  * line less (EF-129: asked for one more, it could only match the target by
191
191
  * falling back to its optimum, unchecked).
192
+ *
193
+ * With `headings.balancing.fillShortColumns` (#1236) `extraLines` may be
194
+ * -1: the paragraph is set a line short, its tracking rungs taken in the
195
+ * other direction (tighter letters), and the outcome recorded as negative
196
+ * tracking.
192
197
  */
193
198
  function measureLooseParagraph(rawBlock, blockIdx, columnWidth, ctx, styleOverride, extraLines, trackingLadder, looseOutcome, offGrid) {
194
199
  const base = measureContentBlock(rawBlock, blockIdx, columnWidth, ctx, { styleOverride });
@@ -215,23 +220,32 @@ function measureLooseParagraph(rawBlock, blockIdx, columnWidth, ctx, styleOverri
215
220
  const onGrid = ctx.resolved.cjk.grid.enabled && composesAsCjk(rawBlock.text);
216
221
  const ladder = trackingLadder.length > 1 && (onGrid || mostlyJoiningScript(rawBlock.text)) ? trackingLadder.slice(0, 1) : trackingLadder;
217
222
  const gridCap = onGrid ? { gridTrackingEm: ctx.resolved.headings.balancing.maxTracking / 1000 } : {};
218
- const maxWordSpacing = ctx.resolved.bodyText.maxWordSpacing + 1e-9;
223
+ // With `fillShortColumns` (#1236) the limit is the one the runt fix
224
+ // keeps (EF-65): no justified line looser than `maxWordSpacing` or than
225
+ // the paragraph's own loosest one, and no more lines set ragged past 3x
226
+ // than it had. A narrow column of long words often passes the absolute
227
+ // limit in every setting of a paragraph, the breaker's own included.
228
+ const natural = ctx.resolved.headings.balancing.fillShortColumns ? wordSpacingProfile(base.measured.lines) : undefined;
229
+ const maxWordSpacing = Math.max(ctx.resolved.bodyText.maxWordSpacing, natural?.loosest ?? 0) + 1e-9;
219
230
  // A CJK line spread past its tracking cap (`cjkLoose`) is past the
220
231
  // limit too.
221
- const withinLimit = (lines) => lines.every((l) => l.isLastLine || ((l.justifiedSpaceRatio === undefined || l.justifiedSpaceRatio <= maxWordSpacing) && !l.cjkLoose));
232
+ const withinLimit = (lines) => natural
233
+ ? lines.every((l) => !l.cjkLoose) && ((p) => p.loosest <= maxWordSpacing && p.ragged <= natural.ragged)(wordSpacingProfile(lines))
234
+ : lines.every((l) => l.isLastLine || ((l.justifiedSpaceRatio === undefined || l.justifiedSpaceRatio <= maxWordSpacing) && !l.cjkLoose));
222
235
  const gains = (loose) => loose !== null
223
236
  && loose.measured.lines.length === target
224
237
  && !loose.measured.lastLineRunt
225
238
  && withinLimit(loose.measured.lines);
239
+ const sign = extraLines < 0 ? -1 : 1;
226
240
  for (const tracking of ladder) {
227
241
  const loose = measureContentBlock(rawBlock, blockIdx, columnWidth, ctx, {
228
242
  styleOverride,
229
243
  looseness,
230
- trackingEm: tracking > 0 ? tracking / 1000 : undefined,
244
+ trackingEm: tracking > 0 ? (sign * tracking) / 1000 : undefined,
231
245
  ...gridCap,
232
246
  });
233
247
  if (gains(loose)) {
234
- looseOutcome.set(blockIdx, tracking);
248
+ looseOutcome.set(blockIdx, sign * tracking);
235
249
  return loose;
236
250
  }
237
251
  }
@@ -3365,6 +3379,17 @@ function placeDocumentPass(content, config, cache, options, hints) {
3365
3379
  && !(lvl.advancedDesign.enabled && lvl.advancedDesign.slot.elements.length > 0)
3366
3380
  && !headingIsHidden(raw, lvl);
3367
3381
  };
3382
+ /** Whether a heading is measured across the content area: a `span:
3383
+ * 'page'` level (or style) that prints, painted by the default opener or
3384
+ * by a design of its own, which lays out across the page as well. At the
3385
+ * column width a designed opener's title broke into more lines than the
3386
+ * design paints, and those lines set its band: taller than the same
3387
+ * heading without a design, so that it no longer fitted under the text
3388
+ * of a page the plain one opens on (#1224). */
3389
+ const measuredAcrossPage = (raw) => {
3390
+ const lvl = headingLevels.forBlock(raw);
3391
+ return lvl?.span === 'page' && !headingIsHidden(raw, lvl);
3392
+ };
3368
3393
  /** Page-spanning heading placed in `headingCol`, reserving `h` px from the
3369
3394
  * top of the page: the same vertical band is reserved in every other
3370
3395
  * column of the page, so body text under the opener band starts below it
@@ -3551,6 +3576,9 @@ function placeDocumentPass(content, config, cache, options, hints) {
3551
3576
  /** The band (`page:band`) a keep-with-next rollback last took each
3552
3577
  * heading out of, by content index. */
3553
3578
  const headingLeftBand = new Map();
3579
+ /** The band (`page:band`) each page-span heading opened under the text
3580
+ * of its page was set at the head of (#1238), by content index. */
3581
+ const spanHeadingOpenedHere = new Map();
3554
3582
  /**
3555
3583
  * A `span: 'page'` heading with `spanBreak: false` (#539) opens where the
3556
3584
  * text reaches: the band the flow is in closes level under its text (a
@@ -3585,7 +3613,7 @@ function placeDocumentPass(content, config, cache, options, hints) {
3585
3613
  // opener paints it) or its design's band, with its margins.
3586
3614
  const width = page.contentArea.width;
3587
3615
  const measureCtx = partPlan.byBlock[blockIdx] ? partMeasureCtx : sectionMeasureCtx(sectionPlan.byBlock[blockIdx]);
3588
- const measured = measureContentBlock(rawBlock, blockIdx, opensDefaultOpener(rawBlock) ? width : cols[0].bbox.width, measureCtx);
3616
+ const measured = measureContentBlock(rawBlock, blockIdx, measuredAcrossPage(rawBlock) ? width : cols[0].bbox.width, measureCtx);
3589
3617
  if (!measured)
3590
3618
  return false;
3591
3619
  const style = measured.kind.style;
@@ -3615,6 +3643,7 @@ function placeDocumentPass(content, config, cache, options, hints) {
3615
3643
  uncapBand(cols, uncappedBottoms);
3616
3644
  if (!closeBandAt(page, cols, cutY, top, cursor))
3617
3645
  return false;
3646
+ spanHeadingOpenedHere.set(blockIdx, `${page.index}:${currentBand(page, cursor)}`);
3618
3647
  pendingSpacing = 0;
3619
3648
  return true;
3620
3649
  };
@@ -4005,6 +4034,21 @@ function placeDocumentPass(content, config, cache, options, hints) {
4005
4034
  n++;
4006
4035
  return n;
4007
4036
  };
4037
+ /** Whether a block moving on whole may take the `run` headings closing
4038
+ * `col` along. A run that is all the column holds would open the next
4039
+ * column just as it opens this one, and is rolled back no further —
4040
+ * unless it opens a band a page-span heading cut under the text of the
4041
+ * page (`spanBreak: false`, #1238): rolled back, that heading opens the
4042
+ * next page instead (`headingLeftBand`), with the block it is kept with. */
4043
+ const headingRunMayLeave = (col, run) => {
4044
+ if (run <= 0)
4045
+ return false;
4046
+ if (run < col.blocks.length)
4047
+ return true;
4048
+ const head = col.blocks[0];
4049
+ return head.contentIndex !== undefined
4050
+ && spanHeadingOpenedHere.get(head.contentIndex) === `${cursor.pageIndex}:${col.band ?? 0}`;
4051
+ };
4008
4052
  /**
4009
4053
  * An index group divided between two columns keeps at least
4010
4054
  * `index.groups.splitMinEntries` entries on each side (#712). `entry` is
@@ -5511,7 +5555,7 @@ function placeDocumentPass(content, config, cache, options, hints) {
5511
5555
  break;
5512
5556
  }
5513
5557
  pendingSpacing = 0;
5514
- if (part === 0 && resolved.headings.keepWithNext && run > 0 && run < curCol.blocks.length) {
5558
+ if (part === 0 && resolved.headings.keepWithNext && headingRunMayLeave(curCol, run)) {
5515
5559
  const rolledBack = rollbackHeadings(curCol);
5516
5560
  advanceToNextColumn(doc, cursor, geomResolved, contentArea, pageWidthPx, pageHeightPx, onNewPage);
5517
5561
  return (rolledBack[0].contentIndex ?? startIdx - rolledBack.length) - 1;
@@ -5903,7 +5947,7 @@ function placeDocumentPass(content, config, cache, options, hints) {
5903
5947
  const spacingBefore = Math.max(pendingSpacing, floatGapPx);
5904
5948
  if (col.blocks.length > 0 && height > col.availableHeight - spacingBefore + FIT_EPS) {
5905
5949
  const run = trailingHeadingRun(col);
5906
- if (run > 0 && run < col.blocks.length) {
5950
+ if (headingRunMayLeave(col, run)) {
5907
5951
  const rolled = rollbackHeadings(col);
5908
5952
  pendingSpacing = 0;
5909
5953
  advanceToNextColumn(doc, cursor, geomResolved, contentArea, pageWidthPx, pageHeightPx, onAtomicNewPage(height));
@@ -7147,11 +7191,11 @@ function placeDocumentPass(content, config, cache, options, hints) {
7147
7191
  && knownOutcome === undefined
7148
7192
  && (looseGained.get(budget.group) ?? 0) >= budget.need;
7149
7193
  const tryLoose = looseLines !== undefined && !budgetMet && knownOutcome !== null;
7150
- // A page-span heading without a design of its own is painted by the
7151
- // default opener across the content area: measured at that width, its
7152
- // band holds the title as it is painted (EF-100). A designed opener
7153
- // keeps the column-width measure: its design sets the band.
7154
- const measureWidth = rawBlock.type === 'heading' && opensDefaultOpener(rawBlock)
7194
+ // A page-span heading is painted across the content area, by the
7195
+ // default opener or by its design: measured at that width, its band
7196
+ // holds the title as it is painted (EF-100), and a design sets it no
7197
+ // taller than the lines it paints (#1224).
7198
+ const measureWidth = rawBlock.type === 'heading' && measuredAcrossPage(rawBlock)
7155
7199
  ? doc.pages[cursor.pageIndex].contentArea.width
7156
7200
  : col.bbox.width;
7157
7201
  // A resource on a vertical page stands upright, its frame at most as
@@ -7627,8 +7671,8 @@ function placeDocumentPass(content, config, cache, options, hints) {
7627
7671
  * layout with text in both columns, a styled section with its own
7628
7672
  * margins — is broken again there: its placed lines stay, the rest is
7629
7673
  * broken for the new column. Not the loose paragraphs balancing runs
7630
- * long (placed whole where they were measured), nor a heading the
7631
- * default opener paints across the page. */
7674
+ * long (placed whole where they were measured), nor a page-span
7675
+ * heading, painted across the page. */
7632
7676
  let brokenForWidth = measureWidth;
7633
7677
  let laterWidths = [];
7634
7678
  /** Text wrap (#627): the lines of the block set short beside what text
@@ -7636,7 +7680,7 @@ function placeDocumentPass(content, config, cache, options, hints) {
7636
7680
  let wrapInsets = [];
7637
7681
  const wrapsBeside = canSplit && runsBesideWrap(rawBlock);
7638
7682
  const rebreaksForColumn = !tryLoose && rawBlock.toc === undefined && rawBlock.index === undefined
7639
- && (canSplit || (vdtType === 'heading' && !opensDefaultOpener(rawBlock)));
7683
+ && (canSplit || (vdtType === 'heading' && !measuredAcrossPage(rawBlock)));
7640
7684
  /** Measure the block again for the columns it is set in (see
7641
7685
  * `laterWidths`), with `extra` options. */
7642
7686
  const measureForColumns = (extra) => measureContentBlock(rawBlock, blockIdx, brokenForWidth, blockMeasureCtx, {
@@ -8186,7 +8230,7 @@ function placeDocumentPass(content, config, cache, options, hints) {
8186
8230
  if (partIndex === 0 && curCol.blocks.length > 0) {
8187
8231
  // Moving on whole must not strand a heading closing the column.
8188
8232
  const headingRun = trailingHeadingRun(curCol);
8189
- if (resolved.headings.keepWithNext && headingRun > 0 && headingRun < curCol.blocks.length) {
8233
+ if (resolved.headings.keepWithNext && headingRunMayLeave(curCol, headingRun)) {
8190
8234
  const rolledBack = rollbackHeadings(curCol);
8191
8235
  if (rolledBack.length > 0) {
8192
8236
  blockIdx = (rolledBack[0].contentIndex ?? blockIdx - rolledBack.length) - 1;
@@ -8757,7 +8801,7 @@ function placeDocumentPass(content, config, cache, options, hints) {
8757
8801
  // Only a short column (under a float, a page-span box) lets the run
8758
8802
  // move on to a taller one.
8759
8803
  const headingRun = trailingHeadingRun(curCol);
8760
- const runFillsColumn = headingRun > 0 && headingRun === curCol.blocks.length;
8804
+ const runFillsColumn = headingRun > 0 && !headingRunMayLeave(curCol, headingRun);
8761
8805
  const strands = partIndex === 0 && vdtType !== 'heading'
8762
8806
  && headingRun > 0 && !runFillsColumn;
8763
8807
  const pullsRun = vdtType === 'heading' && (!runFillsColumn || shortColumn);
@@ -9658,6 +9702,7 @@ citing = { hints: new Map(), refused: new Set() }) {
9658
9702
  stable: score === 0,
9659
9703
  failedLoose: old?.failedLoose ?? new Set(),
9660
9704
  failedLines: old?.failedLines ?? new Set(),
9705
+ failedTight: old?.failedTight ?? new Set(),
9661
9706
  };
9662
9707
  });
9663
9708
  };
@@ -9836,7 +9881,7 @@ citing = { hints: new Map(), refused: new Set() }) {
9836
9881
  let hit = false;
9837
9882
  for (const k of newLoose)
9838
9883
  if (!cands || cands.has(k)) {
9839
- s.failedLoose.add(k);
9884
+ failLoose(s, k);
9840
9885
  hit = true;
9841
9886
  }
9842
9887
  if (hit && looseFirst)
@@ -9855,6 +9900,13 @@ citing = { hints: new Map(), refused: new Set() }) {
9855
9900
  return true;
9856
9901
  return blacklist(null);
9857
9902
  };
9903
+ /** The paragraphs the current proposal sets a line short (#1236): their
9904
+ * failures go to the segment's `failedTight`, the others' to
9905
+ * `failedLoose`. */
9906
+ let tightKeys = new Set();
9907
+ const failLoose = (s, k) => {
9908
+ (tightKeys.has(k) ? s.failedTight : s.failedLoose).add(k);
9909
+ };
9858
9910
  let balancingPasses = 0;
9859
9911
  function* balance() {
9860
9912
  while (balancingPasses < MAX_BALANCING_PASSES_PER_DOCUMENT) {
@@ -9865,11 +9917,14 @@ citing = { hints: new Map(), refused: new Set() }) {
9865
9917
  const owner = keyOwners(gaps);
9866
9918
  const failedLoose = new Set();
9867
9919
  const failedLines = new Set();
9920
+ const failedTight = new Set();
9868
9921
  for (const s of segments) {
9869
9922
  for (const k of s.failedLoose)
9870
9923
  failedLoose.add(k);
9871
9924
  for (const k of s.failedLines)
9872
9925
  failedLines.add(k);
9926
+ for (const k of s.failedTight)
9927
+ failedTight.add(k);
9873
9928
  }
9874
9929
  const proposal = proposeBalanceLines(best.doc, best.forcedBreakPages, applied, {
9875
9930
  maxLinesPerHeading: balancing.maxLinesPerHeading,
@@ -9885,6 +9940,7 @@ citing = { hints: new Map(), refused: new Set() }) {
9885
9940
  optimalLineBreaking: best.doc.config.bodyText.optimalLineBreaking,
9886
9941
  failedLoose,
9887
9942
  failedLines,
9943
+ ...(balancing.fillShortColumns ? { fillShortColumns: true, failedTight } : {}),
9888
9944
  closingBox: balancing.closingBox,
9889
9945
  ...(onGrid && balancing.gridLines === 'off' ? { gridLines: false } : {}),
9890
9946
  });
@@ -9917,6 +9973,7 @@ citing = { hints: new Map(), refused: new Set() }) {
9917
9973
  }
9918
9974
  newLoose.push(k);
9919
9975
  }
9976
+ tightKeys = new Set(newLoose.filter((k) => proposal.loose.get(k) < 0));
9920
9977
  const trying = new Set([...newLines, ...newLoose].map((k) => owner.get(k)));
9921
9978
  if (trying.size === 0) {
9922
9979
  // No stretch point can absorb the remaining gaps — stable.
@@ -9964,7 +10021,7 @@ citing = { hints: new Map(), refused: new Set() }) {
9964
10021
  // first) stay eligible for a later proposal.
9965
10022
  const looseFailed = keysLoose.filter((k) => next.looseOutcome.get(k) === null);
9966
10023
  for (const k of looseFailed)
9967
- s.failedLoose.add(k);
10024
+ failLoose(s, k);
9968
10025
  const looseWon = keysLoose.filter((k) => typeof next.looseOutcome.get(k) === 'number');
9969
10026
  // A box closing its column that moves down onto the column's last
9970
10027
  // grid slot (or level with the column beside it) closes less than a
@@ -10007,11 +10064,11 @@ citing = { hints: new Map(), refused: new Set() }) {
10007
10064
  if (!boxKeys.has(k))
10008
10065
  s.failedLines.add(k);
10009
10066
  for (const k of keysLoose)
10010
- s.failedLoose.add(k);
10067
+ failLoose(s, k);
10011
10068
  }
10012
10069
  else if (looseFailed.length > 0 || looseWon.length > 0) {
10013
10070
  for (const k of looseWon)
10014
- s.failedLoose.add(k);
10071
+ failLoose(s, k);
10015
10072
  }
10016
10073
  else {
10017
10074
  s.done = true;