postext 1.41.0 → 1.42.1

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 (199) hide show
  1. package/dist/__tests__/bundleFontFallback.test.d.ts +2 -0
  2. package/dist/__tests__/bundleFontFallback.test.d.ts.map +1 -0
  3. package/dist/__tests__/bundleFontFallback.test.js +127 -0
  4. package/dist/__tests__/bundleFontFallback.test.js.map +1 -0
  5. package/dist/__tests__/calloutBodyLetterSpacing.test.d.ts +2 -0
  6. package/dist/__tests__/calloutBodyLetterSpacing.test.d.ts.map +1 -0
  7. package/dist/__tests__/calloutBodyLetterSpacing.test.js +83 -0
  8. package/dist/__tests__/calloutBodyLetterSpacing.test.js.map +1 -0
  9. package/dist/__tests__/composed/autoWidth.test.d.ts +2 -0
  10. package/dist/__tests__/composed/autoWidth.test.d.ts.map +1 -0
  11. package/dist/__tests__/composed/autoWidth.test.js +82 -0
  12. package/dist/__tests__/composed/autoWidth.test.js.map +1 -0
  13. package/dist/__tests__/composed/crossChapterOutline.test.d.ts +2 -0
  14. package/dist/__tests__/composed/crossChapterOutline.test.d.ts.map +1 -0
  15. package/dist/__tests__/composed/crossChapterOutline.test.js +156 -0
  16. package/dist/__tests__/composed/crossChapterOutline.test.js.map +1 -0
  17. package/dist/__tests__/composed/decorationRemove.test.d.ts +2 -0
  18. package/dist/__tests__/composed/decorationRemove.test.d.ts.map +1 -0
  19. package/dist/__tests__/composed/decorationRemove.test.js +69 -0
  20. package/dist/__tests__/composed/decorationRemove.test.js.map +1 -0
  21. package/dist/__tests__/composed/figureWords.test.js +25 -0
  22. package/dist/__tests__/composed/figureWords.test.js.map +1 -1
  23. package/dist/__tests__/composed/footHold.test.d.ts +2 -0
  24. package/dist/__tests__/composed/footHold.test.d.ts.map +1 -0
  25. package/dist/__tests__/composed/footHold.test.js +83 -0
  26. package/dist/__tests__/composed/footHold.test.js.map +1 -0
  27. package/dist/__tests__/composed/frameLook.test.d.ts +2 -0
  28. package/dist/__tests__/composed/frameLook.test.d.ts.map +1 -0
  29. package/dist/__tests__/composed/frameLook.test.js +120 -0
  30. package/dist/__tests__/composed/frameLook.test.js.map +1 -0
  31. package/dist/__tests__/composed/framePictures.test.js +58 -0
  32. package/dist/__tests__/composed/framePictures.test.js.map +1 -1
  33. package/dist/__tests__/composed/headingBadge.test.d.ts +2 -0
  34. package/dist/__tests__/composed/headingBadge.test.d.ts.map +1 -0
  35. package/dist/__tests__/composed/headingBadge.test.js +91 -0
  36. package/dist/__tests__/composed/headingBadge.test.js.map +1 -0
  37. package/dist/__tests__/composed/labels.test.js +3 -0
  38. package/dist/__tests__/composed/labels.test.js.map +1 -1
  39. package/dist/__tests__/composed/labelsChecks.test.js +69 -0
  40. package/dist/__tests__/composed/labelsChecks.test.js.map +1 -1
  41. package/dist/__tests__/composed/labelsMirrored.test.js +33 -0
  42. package/dist/__tests__/composed/labelsMirrored.test.js.map +1 -1
  43. package/dist/__tests__/composed/layoutMemo.test.d.ts +2 -0
  44. package/dist/__tests__/composed/layoutMemo.test.d.ts.map +1 -0
  45. package/dist/__tests__/composed/layoutMemo.test.js +150 -0
  46. package/dist/__tests__/composed/layoutMemo.test.js.map +1 -0
  47. package/dist/__tests__/composed/tocFrame.test.d.ts +2 -0
  48. package/dist/__tests__/composed/tocFrame.test.d.ts.map +1 -0
  49. package/dist/__tests__/composed/tocFrame.test.js +167 -0
  50. package/dist/__tests__/composed/tocFrame.test.js.map +1 -0
  51. package/dist/__tests__/exports.test.js +6 -0
  52. package/dist/__tests__/exports.test.js.map +1 -1
  53. package/dist/__tests__/pipeline/calloutLabelIcon.test.d.ts +2 -0
  54. package/dist/__tests__/pipeline/calloutLabelIcon.test.d.ts.map +1 -0
  55. package/dist/__tests__/pipeline/calloutLabelIcon.test.js +107 -0
  56. package/dist/__tests__/pipeline/calloutLabelIcon.test.js.map +1 -0
  57. package/dist/bundle/adapters.d.ts +18 -4
  58. package/dist/bundle/adapters.d.ts.map +1 -1
  59. package/dist/bundle/adapters.js +61 -13
  60. package/dist/bundle/adapters.js.map +1 -1
  61. package/dist/bundle/book.d.ts.map +1 -1
  62. package/dist/bundle/book.js +7 -2
  63. package/dist/bundle/book.js.map +1 -1
  64. package/dist/bundle/codec.d.ts +5 -0
  65. package/dist/bundle/codec.d.ts.map +1 -1
  66. package/dist/bundle/codec.js +34 -7
  67. package/dist/bundle/codec.js.map +1 -1
  68. package/dist/bundle/index.d.ts +1 -1
  69. package/dist/bundle/index.d.ts.map +1 -1
  70. package/dist/bundle/layoutCache.d.ts +4 -0
  71. package/dist/bundle/layoutCache.d.ts.map +1 -1
  72. package/dist/bundle/layoutCache.js.map +1 -1
  73. package/dist/bundle/manifest.d.ts.map +1 -1
  74. package/dist/bundle/manifest.js +15 -2
  75. package/dist/bundle/manifest.js.map +1 -1
  76. package/dist/bundle/types.d.ts +6 -0
  77. package/dist/bundle/types.d.ts.map +1 -1
  78. package/dist/composed/carry.d.ts +2 -0
  79. package/dist/composed/carry.d.ts.map +1 -1
  80. package/dist/composed/carry.js +1 -1
  81. package/dist/composed/carry.js.map +1 -1
  82. package/dist/composed/document.d.ts +11 -0
  83. package/dist/composed/document.d.ts.map +1 -1
  84. package/dist/composed/document.js +24 -0
  85. package/dist/composed/document.js.map +1 -1
  86. package/dist/composed/geometry.d.ts +5 -1
  87. package/dist/composed/geometry.d.ts.map +1 -1
  88. package/dist/composed/geometry.js +14 -4
  89. package/dist/composed/geometry.js.map +1 -1
  90. package/dist/composed/labels.d.ts +23 -2
  91. package/dist/composed/labels.d.ts.map +1 -1
  92. package/dist/composed/labels.js +116 -5
  93. package/dist/composed/labels.js.map +1 -1
  94. package/dist/composed/slotChecks.d.ts +1 -1
  95. package/dist/composed/slotChecks.d.ts.map +1 -1
  96. package/dist/composed/slotChecks.js +5 -6
  97. package/dist/composed/slotChecks.js.map +1 -1
  98. package/dist/composed/sourceMap.d.ts.map +1 -1
  99. package/dist/composed/sourceMap.js +18 -2
  100. package/dist/composed/sourceMap.js.map +1 -1
  101. package/dist/composed/templates.d.ts +38 -1
  102. package/dist/composed/templates.d.ts.map +1 -1
  103. package/dist/composed/templates.js +68 -1
  104. package/dist/composed/templates.js.map +1 -1
  105. package/dist/composed/types.d.ts +73 -6
  106. package/dist/composed/types.d.ts.map +1 -1
  107. package/dist/composed/validate.d.ts.map +1 -1
  108. package/dist/composed/validate.js +20 -3
  109. package/dist/composed/validate.js.map +1 -1
  110. package/dist/composed/wrap.d.ts.map +1 -1
  111. package/dist/composed/wrap.js +4 -4
  112. package/dist/composed/wrap.js.map +1 -1
  113. package/dist/defaults/calloutStyles.d.ts +1 -0
  114. package/dist/defaults/calloutStyles.d.ts.map +1 -1
  115. package/dist/defaults/calloutStyles.js +6 -1
  116. package/dist/defaults/calloutStyles.js.map +1 -1
  117. package/dist/design/placeholders.d.ts +5 -0
  118. package/dist/design/placeholders.d.ts.map +1 -1
  119. package/dist/design/placeholders.js +9 -2
  120. package/dist/design/placeholders.js.map +1 -1
  121. package/dist/fonts/fallback.d.ts +26 -0
  122. package/dist/fonts/fallback.d.ts.map +1 -0
  123. package/dist/fonts/fallback.js +43 -0
  124. package/dist/fonts/fallback.js.map +1 -0
  125. package/dist/index.d.ts +7 -5
  126. package/dist/index.d.ts.map +1 -1
  127. package/dist/index.js +3 -2
  128. package/dist/index.js.map +1 -1
  129. package/dist/pipeline/anchors.d.ts.map +1 -1
  130. package/dist/pipeline/anchors.js +15 -1
  131. package/dist/pipeline/anchors.js.map +1 -1
  132. package/dist/pipeline/build.d.ts.map +1 -1
  133. package/dist/pipeline/build.js +22 -16
  134. package/dist/pipeline/build.js.map +1 -1
  135. package/dist/pipeline/buildHelpers.d.ts +2 -0
  136. package/dist/pipeline/buildHelpers.d.ts.map +1 -1
  137. package/dist/pipeline/buildHelpers.js +6 -0
  138. package/dist/pipeline/buildHelpers.js.map +1 -1
  139. package/dist/pipeline/calloutLayout.d.ts +2 -0
  140. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  141. package/dist/pipeline/calloutLayout.js +44 -17
  142. package/dist/pipeline/calloutLayout.js.map +1 -1
  143. package/dist/pipeline/carriedOutline.d.ts +45 -0
  144. package/dist/pipeline/carriedOutline.d.ts.map +1 -0
  145. package/dist/pipeline/carriedOutline.js +158 -0
  146. package/dist/pipeline/carriedOutline.js.map +1 -0
  147. package/dist/pipeline/composedLayout.d.ts +8 -1
  148. package/dist/pipeline/composedLayout.d.ts.map +1 -1
  149. package/dist/pipeline/composedLayout.js +126 -18
  150. package/dist/pipeline/composedLayout.js.map +1 -1
  151. package/dist/pipeline/contentWarnings.d.ts.map +1 -1
  152. package/dist/pipeline/contentWarnings.js +12 -1
  153. package/dist/pipeline/contentWarnings.js.map +1 -1
  154. package/dist/pipeline/figureWords.d.ts +18 -1
  155. package/dist/pipeline/figureWords.d.ts.map +1 -1
  156. package/dist/pipeline/figureWords.js +28 -0
  157. package/dist/pipeline/figureWords.js.map +1 -1
  158. package/dist/pipeline/frameLayout.d.ts +8 -0
  159. package/dist/pipeline/frameLayout.d.ts.map +1 -1
  160. package/dist/pipeline/frameLayout.js +74 -7
  161. package/dist/pipeline/frameLayout.js.map +1 -1
  162. package/dist/pipeline/headerFooter.d.ts.map +1 -1
  163. package/dist/pipeline/headerFooter.js +96 -41
  164. package/dist/pipeline/headerFooter.js.map +1 -1
  165. package/dist/pipeline/index.d.ts +2 -0
  166. package/dist/pipeline/index.d.ts.map +1 -1
  167. package/dist/pipeline/index.js +1 -0
  168. package/dist/pipeline/index.js.map +1 -1
  169. package/dist/pipeline/indexDirective.d.ts.map +1 -1
  170. package/dist/pipeline/indexDirective.js +3 -1
  171. package/dist/pipeline/indexDirective.js.map +1 -1
  172. package/dist/pipeline/layoutMemo.d.ts +72 -0
  173. package/dist/pipeline/layoutMemo.d.ts.map +1 -0
  174. package/dist/pipeline/layoutMemo.js +160 -0
  175. package/dist/pipeline/layoutMemo.js.map +1 -0
  176. package/dist/pipeline/measureMemo.d.ts +8 -0
  177. package/dist/pipeline/measureMemo.d.ts.map +1 -1
  178. package/dist/pipeline/measureMemo.js +6 -2
  179. package/dist/pipeline/measureMemo.js.map +1 -1
  180. package/dist/pipeline/outline.d.ts.map +1 -1
  181. package/dist/pipeline/outline.js +31 -2
  182. package/dist/pipeline/outline.js.map +1 -1
  183. package/dist/pipeline/placeholders.d.ts +13 -0
  184. package/dist/pipeline/placeholders.d.ts.map +1 -1
  185. package/dist/pipeline/placeholders.js +20 -1
  186. package/dist/pipeline/placeholders.js.map +1 -1
  187. package/dist/pipeline/styles.d.ts.map +1 -1
  188. package/dist/pipeline/styles.js +3 -1
  189. package/dist/pipeline/styles.js.map +1 -1
  190. package/dist/pipeline/toc.d.ts +7 -0
  191. package/dist/pipeline/toc.d.ts.map +1 -1
  192. package/dist/pipeline/toc.js +24 -0
  193. package/dist/pipeline/toc.js.map +1 -1
  194. package/dist/types.d.ts +41 -3
  195. package/dist/types.d.ts.map +1 -1
  196. package/dist/vdt.d.ts +43 -1
  197. package/dist/vdt.d.ts.map +1 -1
  198. package/dist/vdt.js.map +1 -1
  199. package/package.json +1 -1
@@ -0,0 +1,69 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { buildDocument } from '../../pipeline/build';
3
+ import { createMeasurementCache } from '../../measure';
4
+ import { resolvePageTemplate, stripPageTemplatesDefaults } from '../../composed/templates';
5
+ import { collectConfigWarnings } from '../../configWarnings';
6
+ // #975: a child template or a variant takes an inherited decoration
7
+ // element out with `{ id, remove: true }`.
8
+ class StubCtx {
9
+ font = '';
10
+ measureText(s) {
11
+ return { width: s.length * 7 };
12
+ }
13
+ }
14
+ globalThis.OffscreenCanvas = class {
15
+ getContext() {
16
+ return new StubCtx();
17
+ }
18
+ };
19
+ const mm = (value) => ({ value, unit: 'mm' });
20
+ const text = (id, content) => ({
21
+ kind: 'text', id, content,
22
+ placement: { anchor: { to: 'container', edge: id === 'folio' ? 'bottom-center' : 'top-left' } },
23
+ });
24
+ const BASE = {
25
+ id: 'base',
26
+ frames: [{ name: 'texto', flow: true }],
27
+ decoration: { elements: [text('head', 'Odd head'), text('head-even', 'Even head'), text('folio', '{pageNumber}')] },
28
+ };
29
+ const NO_EVEN = { id: 'no-even', extends: 'base', decoration: { elements: [{ id: 'head-even', remove: true }] } };
30
+ const VARIANT = { id: 'by-side', extends: 'base', variants: { verso: { decoration: { elements: [{ id: 'head', remove: true }] } } } };
31
+ const ids = (t) => t.decoration.elements.map((e) => e.id);
32
+ const cfg = (templates) => ({ pageTemplates: templates });
33
+ describe('decoration element removal (#975)', () => {
34
+ it('drops the inherited element and keeps the others in order', () => {
35
+ expect(ids(resolvePageTemplate(cfg([BASE, NO_EVEN]), 'base'))).toEqual(['head', 'head-even', 'folio']);
36
+ const t = resolvePageTemplate(cfg([BASE, NO_EVEN]), 'no-even');
37
+ expect(ids(t)).toEqual(['head', 'folio']);
38
+ // Paths still point at the template that wrote each element.
39
+ expect(t.decorationPaths).toEqual(['/pageTemplates/0/decoration/elements/0', '/pageTemplates/0/decoration/elements/2']);
40
+ });
41
+ it('removes in a variant, after the extends chain, on the page of that side only', () => {
42
+ const c = cfg([BASE, VARIANT]);
43
+ expect(ids(resolvePageTemplate(c, 'by-side', { parity: 'recto' }))).toEqual(['head', 'head-even', 'folio']);
44
+ expect(ids(resolvePageTemplate(c, 'by-side', { parity: 'verso' }))).toEqual(['head-even', 'folio']);
45
+ });
46
+ it('a removal can be followed by a new element of the same id, and one naming nothing changes nothing', () => {
47
+ const redo = { id: 'redo', extends: 'base', decoration: { elements: [{ id: 'head', remove: true }, text('head', 'Other')] } };
48
+ const t = resolvePageTemplate(cfg([BASE, redo]), 'redo');
49
+ expect(ids(t)).toEqual(['head-even', 'folio', 'head']);
50
+ const idle = { id: 'idle', extends: 'base', decoration: { elements: [{ id: 'nothing', remove: true }] } };
51
+ expect(ids(resolvePageTemplate(cfg([BASE, idle]), 'idle'))).toEqual(['head', 'head-even', 'folio']);
52
+ });
53
+ it('survives stripping and raises no warning', () => {
54
+ expect(stripPageTemplatesDefaults([BASE, NO_EVEN])[1].decoration).toEqual({ elements: [{ id: 'head-even', remove: true }] });
55
+ expect(collectConfigWarnings({ pageTemplates: [BASE, NO_EVEN] }).filter((w) => w.kind === 'contentInConfig' || w.kind === 'unknownConfigKey')).toEqual([]);
56
+ });
57
+ it('draws only the elements left: a page of the child shows no even head', () => {
58
+ const doc = buildDocument({ markdown: '::::page{template="no-even"}\n\n:::frame{slot="texto"}\n\nBody.\n\n:::\n\n::::' }, {
59
+ page: { width: mm(200), height: mm(260), dpi: 300, margins: { top: mm(20), bottom: mm(20), left: mm(20), right: mm(20) } },
60
+ pageTemplates: [BASE, NO_EVEN],
61
+ }, createMeasurementCache());
62
+ const drawn = (doc.pages.find((p) => p.composed).composed.decoration?.blocks ?? [])
63
+ .filter((b) => b.kind === 'text')
64
+ .flatMap((b) => b.lines.map((l) => l.text));
65
+ expect(drawn).toContain('Odd head');
66
+ expect(drawn).not.toContain('Even head');
67
+ });
68
+ });
69
+ //# sourceMappingURL=decorationRemove.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decorationRemove.test.js","sourceRoot":"","sources":["../../../src/__tests__/composed/decorationRemove.test.ts"],"names":[],"mappings":"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"}
@@ -93,6 +93,31 @@ describe('a figure’s own words, laid out (#935)', () => {
93
93
  expect(captionText(doc)).toContain('First');
94
94
  });
95
95
  });
96
+ describe('two figures of one resource that say different words (#986)', () => {
97
+ const warningsOf = (md, resources = [RELIEF]) => (build(md, resources).contentWarnings ?? []).filter((w) => w.kind === 'figureWordsShared');
98
+ it('warns on the later figure, naming the words it gives that the pages do not show', () => {
99
+ const md = [':::figure{resource="relief" caption="First"}', ':::', '', ':::figure{resource="relief" caption="Second" note="Another note"}', ':::', ''].join('\n');
100
+ const found = warningsOf(md);
101
+ expect(found).toHaveLength(1);
102
+ expect(found[0]).toMatchObject({ kind: 'figureWordsShared', resourceId: 'relief', words: ['caption', 'note'] });
103
+ const at = found[0];
104
+ expect(md.slice(at.sourceStart, at.sourceEnd)).toContain('Second');
105
+ expect(captionText(build(md))).toContain('First');
106
+ });
107
+ it('stays quiet when the second figure says the same words, none, or a second resource', () => {
108
+ const twice = (second, resources) => warningsOf([':::figure{resource="relief" caption="First"}', ':::', '', second, ':::', ''].join('\n'), resources);
109
+ expect(twice(':::figure{resource="relief" caption="First"}')).toEqual([]);
110
+ expect(twice(':::figure{resource="relief"}')).toEqual([]);
111
+ const other = { ...RELIEF, id: 'relief-small' };
112
+ expect(twice(':::figure{resource="relief-small" caption="Second"}', [RELIEF, other])).toEqual([]);
113
+ });
114
+ it('counts words the first figure left unsaid as lost too, and reads ::caption lines', () => {
115
+ const md = [':::figure{resource="relief"}', '::alt[Mapa]', ':::', '', ':::figure{resource="relief"}', '::caption[Segundo]', ':::', ''].join('\n');
116
+ const found = warningsOf(md);
117
+ expect(found).toHaveLength(1);
118
+ expect(found[0]).toMatchObject({ resourceId: 'relief', words: ['caption'] });
119
+ });
120
+ });
96
121
  describe('a figure’s own words on a composed page (#935)', () => {
97
122
  it('sets the edition’s caption in the frame that holds the figure, and keeps its labels', () => {
98
123
  const md = ['::::page{template="t"}', ':::figure{resource="relief" slot="map"}', '::caption[Relieve de Varenia]', '::label[Mar]{at="mar"}', ':::', '::::', ''].join('\n');
@@ -1 +1 @@
1
- {"version":3,"file":"figureWords.test.js","sourceRoot":"","sources":["../../../src/__tests__/composed/figureWords.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"figureWords.test.js","sourceRoot":"","sources":["../../../src/__tests__/composed/figureWords.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAGzD,wEAAwE;AACxE,2DAA2D;AAE3D,MAAM,OAAO;IACX,IAAI,GAAG,EAAE,CAAC;IACV,WAAW,CAAC,CAAS;QACnB,MAAM,CAAC,GAAG,mBAAmB,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9C,MAAM,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,GAAG,GAAG,EAAE,CAAC;IAC7C,CAAC;CACF;AACA,UAAsD,CAAC,eAAe,GAAG;IACxE,UAAU;QACR,OAAO,IAAI,OAAO,EAAE,CAAC;IACvB,CAAC;CACF,CAAC;AAEF,MAAM,EAAE,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAa,EAAE,CAAC,CAAC;AAC/D,MAAM,IAAI,GAAkB;IAC1B,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAW;CAC1H,CAAC;AACF,MAAM,MAAM,GAAa;IACvB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,uBAAuB,EAAE,OAAO,EAAE,mBAAmB,EAAE,IAAI,EAAE,gBAAgB;IACtI,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;IACpG,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;CACzC,CAAC;AACF,MAAM,KAAK,GAAG,CAAC,QAAgB,EAAE,YAAwB,CAAC,MAAM,CAAC,EAAe,EAAE,CAChF,aAAa,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,IAAI,EAAE,sBAAsB,EAAE,CAAC,CAAC;AACzE,MAAM,QAAQ,GAAG,CAAC,GAAgB,EAAE,EAAE,GAAG,QAAQ,EAAY,EAAE,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,EAAE,GAAG,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,KAAK,EAAE,CAAE,CAAC;AAC/K,MAAM,WAAW,GAAG,CAAC,GAAgB,EAAE,EAAE,GAAG,QAAQ,EAAU,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,aAAc,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAE5I,QAAQ,CAAC,qCAAqC,EAAE,GAAG,EAAE;IACnD,EAAE,CAAC,mFAAmF,EAAE,GAAG,EAAE;QAC3F,MAAM,EAAE,GAAG,wFAAwF,CAAC;QACpG,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC;QACvD,MAAM,CAAC,KAAK,CAAC,MAAO,CAAC,KAAK,CAAC,CAAC,aAAa,CAAC,EAAE,GAAG,EAAE,EAAE,IAAI,EAAE,iBAAiB,EAAE,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,oBAAoB,EAAE,EAAE,CAAC,CAAC;QACzH,MAAM,GAAG,GAAG,KAAK,CAAC,MAAO,CAAC,KAAM,CAAC,GAAI,CAAC;QACtC,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACzE,MAAM,CAAC,KAAK,CAAC,MAAO,CAAC,KAAM,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kGAAkG,EAAE,GAAG,EAAE;QAC1G,MAAM,EAAE,GAAG,CAAC,uDAAuD,EAAE,mCAAmC,EAAE,wBAAwB,EAAE,iCAAiC,EAAE,wBAAwB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACvN,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC;QACvD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAO,CAAC,KAAM,CAAC;QACnC,MAAM,CAAC,KAAK,CAAC,OAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,CAAC,IAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC;QACzD,MAAM,CAAC,KAAK,CAAC,GAAI,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QAChD,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,OAAQ,CAAC,WAAW,EAAE,KAAK,CAAC,OAAQ,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACtG,MAAM,CAAC,KAAK,CAAC,MAAO,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4GAA4G,EAAE,GAAG,EAAE;QACpH,MAAM,EAAE,GAAG,CAAC,8BAA8B,EAAE,kCAAkC,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC/G,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QACjC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAE,CAAC,MAAO,CAAC,KAAM,CAAC,OAAQ,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACnG,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,uCAAuC,EAAE,GAAG,EAAE;IACrD,EAAE,CAAC,wFAAwF,EAAE,GAAG,EAAE;QAChG,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,8BAA8B,EAAE,+BAA+B,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtK,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QACzD,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;QACpD,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,aAAc,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;QACpD,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACtE,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC;QACjD,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oEAAoE,EAAE,GAAG,EAAE;QAC5E,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,gDAAgD,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC5F,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC9C,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,aAAc,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;QAC1D,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,gBAAgB,CAAC,CAAC;IAChF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,mEAAmE,EAAE,GAAG,EAAE;QAC3E,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,wDAAwD,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACpG,MAAM,EAAE,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,aAAc,CAAC;QACxC,MAAM,CAAC,EAAE,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACpG,MAAM,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QACrC,MAAM,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACvC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,4DAA4D,EAAE,GAAG,EAAE;QACpE,MAAM,QAAQ,GAAG,EAAE,EAAE,EAAE,4BAA4B,EAAE,EAAE,EAAE,mCAAmC,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC;QACrH,KAAK,MAAM,CAAC,EAAE,GAAG,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC/C,MAAM,GAAG,GAAG,KAAK,CAAC,uCAAuC,GAAG,UAAU,CAAC,CAAC;YACxE,MAAM,IAAI,GAAG,mBAAmB,CAAC,GAAG,EAAE,EAAE,gBAAgB,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,uBAAuB,EAAE,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,SAAS,CAAC;YACrH,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,CAAC,QAAQ,GAAG,GAAG,CAAC,CAAC;QACzC,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,GAAG,GAAG,KAAK,CAAC,CAAC,8CAA8C,EAAE,KAAK,EAAE,EAAE,EAAE,+CAA+C,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QACtJ,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,6DAA6D,EAAE,GAAG,EAAE;IAC3E,MAAM,UAAU,GAAG,CAAC,EAAU,EAAE,YAAwB,CAAC,MAAM,CAAC,EAAE,EAAE,CAClE,CAAC,KAAK,CAAC,EAAE,EAAE,SAAS,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,mBAAmB,CAAC,CAAC;IAE7F,EAAE,CAAC,iFAAiF,EAAE,GAAG,EAAE;QACzF,MAAM,EAAE,GAAG,CAAC,8CAA8C,EAAE,KAAK,EAAE,EAAE,EAAE,mEAAmE,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClK,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,IAAI,EAAE,mBAAmB,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,SAAS,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAChH,MAAM,EAAE,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QACrB,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,WAAW,EAAE,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnE,MAAM,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;IACpD,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,oFAAoF,EAAE,GAAG,EAAE;QAC5F,MAAM,KAAK,GAAG,CAAC,MAAc,EAAE,SAAsB,EAAE,EAAE,CAAC,UAAU,CAAC,CAAC,8CAA8C,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,CAAC;QAC3K,MAAM,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC1E,MAAM,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;QAC1D,MAAM,KAAK,GAAa,EAAE,GAAG,MAAM,EAAE,EAAE,EAAE,cAAc,EAAE,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,qDAAqD,EAAE,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IACpG,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,kFAAkF,EAAE,GAAG,EAAE;QAC1F,MAAM,EAAE,GAAG,CAAC,8BAA8B,EAAE,aAAa,EAAE,KAAK,EAAE,EAAE,EAAE,8BAA8B,EAAE,oBAAoB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAClJ,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,CAAC,KAAK,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,aAAa,CAAC,EAAE,UAAU,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEH,QAAQ,CAAC,gDAAgD,EAAE,GAAG,EAAE;IAC9D,EAAE,CAAC,qFAAqF,EAAE,GAAG,EAAE;QAC7F,MAAM,EAAE,GAAG,CAAC,wBAAwB,EAAE,yCAAyC,EAAE,+BAA+B,EAAE,wBAAwB,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC1K,MAAM,MAAM,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,GAAG,IAAI,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAW,CAAC,EAAE,CAAC,EAAE,EAAE,sBAAsB,EAAE,CAAC,CAAC;QACpO,MAAM,KAAK,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC;QAC/B,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,oBAAoB,CAAC,CAAC;QAC5D,MAAM,CAAC,KAAK,CAAC,aAAc,CAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;IACtD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=footHold.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"footHold.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/composed/footHold.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,83 @@
1
+ /**
2
+ * Frames held at the foot of a card (#980): a text that is a line shorter or
3
+ * longer in another edition moves nothing below it when the frames of the card
4
+ * are a stack with a box of the card's height, the frames above the held ones
5
+ * take the spare space (`grow`) and give it back (`shrink`), and the held
6
+ * frames write a `minHeight`. The ladder squeezes the text above before it
7
+ * moves anything, and `frameOverflow` says when it cannot.
8
+ */
9
+ import { describe, it, expect } from 'vitest';
10
+ import { buildDocument } from '../../pipeline/build';
11
+ import { createMeasurementCache } from '../../measure';
12
+ import { composedReflowLog } from '../../composed/reflowLog';
13
+ class StubCtx {
14
+ font = '';
15
+ measureText(s) {
16
+ return { width: s.length * 7 };
17
+ }
18
+ }
19
+ globalThis.OffscreenCanvas = class {
20
+ getContext() {
21
+ return new StubCtx();
22
+ }
23
+ };
24
+ const mm = (value) => ({ value, unit: 'mm' });
25
+ const MM = 300 / 25.4;
26
+ const toMm = (v) => v / MM;
27
+ const PAGE = {
28
+ page: { width: mm(200), height: mm(260), margins: { top: mm(20), bottom: mm(20), left: mm(20), right: mm(20) } },
29
+ headings: { balancing: { enabled: false }, levels: [{ level: 1, breakBefore: { enabled: false } }] },
30
+ };
31
+ const words = (n) => Array.from({ length: n }, (_, i) => `word${i}`).join(' ');
32
+ const CARD = {
33
+ id: 'card',
34
+ frames: [
35
+ { name: 'text', grow: 1, shrink: 1 },
36
+ { name: 'map', minHeight: mm(60) },
37
+ ],
38
+ groups: [{ name: 'card', frames: ['text', 'map'], gap: mm(4), placement: { anchor: { to: 'container', edge: 'top-left' }, size: { width: 'fill', height: mm(140) } } }],
39
+ };
40
+ const page = (n) => `::::page{template="card"}\n:::frame{slot="text"}\n${words(n)}\n:::\n\n:::frame{slot="map"}\nMap\n:::\n::::`;
41
+ const build = (md) => buildDocument({ markdown: md }, { ...PAGE, pageTemplates: [CARD] }, createMeasurementCache());
42
+ const frameOf = (p, name) => p.composed.frames.find((f) => f.name === name);
43
+ describe('frames held at the foot of a card (#980)', () => {
44
+ const held = (n) => {
45
+ const doc = build(page(n));
46
+ const p = doc.pages.find((x) => x.composed);
47
+ return { doc, p, text: frameOf(p, 'text'), map: frameOf(p, 'map') };
48
+ };
49
+ it('a text of any length leaves the held frame where the card ends', () => {
50
+ const [short, usual, long] = [5, 40, 400].map(held);
51
+ for (const r of [short, usual, long]) {
52
+ expect(toMm(r.map.rect.y + r.map.rect.height)).toBeCloseTo(160, 3);
53
+ expect(toMm(r.map.rect.height)).toBeCloseTo(60, 3);
54
+ expect(r.p.composed.log).toEqual([]);
55
+ }
56
+ // The frame above takes the spare space whatever it holds; its text stays at its top.
57
+ expect(short.text.rect.y).toBe(long.text.rect.y);
58
+ expect(toMm(short.text.rect.height)).toBeCloseTo(76, 3);
59
+ expect(short.map.rect).toEqual(long.map.rect);
60
+ });
61
+ it('a text too long for the room above is scaled, then reported; the held frame does not move', () => {
62
+ const { doc, p, text, map } = held(1500);
63
+ expect(toMm(map.rect.y)).toBeCloseTo(100, 3);
64
+ expect(toMm(map.rect.height)).toBeCloseTo(60, 3);
65
+ expect(text.scale).toBeLessThan(1);
66
+ expect(text.overflowPx).toBeGreaterThan(0);
67
+ expect(p.composed.log.map((e) => `${e.frame} ${e.kind}`)).toEqual(['text textScaled', 'text overflow']);
68
+ expect((doc.contentWarnings ?? []).filter((w) => w.kind === 'frameOverflow').map((w) => 'frame' in w && w.frame)).toEqual(['text']);
69
+ expect(composedReflowLog(doc)[0].lines.some((l) => l.includes('text overflows'))).toBe(true);
70
+ });
71
+ it('a frame anchored below another one follows its text, as before', () => {
72
+ const below = {
73
+ id: 'card',
74
+ frames: [{ name: 'text' }, { name: 'map', minHeight: mm(60), placement: { anchor: { to: '#text', edge: 'below' }, offset: { y: mm(4) } } }],
75
+ };
76
+ const at = (n) => {
77
+ const doc = buildDocument({ markdown: page(n) }, { ...PAGE, pageTemplates: [below] }, createMeasurementCache());
78
+ return frameOf(doc.pages.find((x) => x.composed), 'map').rect.y;
79
+ };
80
+ expect(at(1500)).toBeGreaterThan(at(5));
81
+ });
82
+ });
83
+ //# sourceMappingURL=footHold.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"footHold.test.js","sourceRoot":"","sources":["../../../src/__tests__/composed/footHold.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=frameLook.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frameLook.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/composed/frameLook.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,120 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { buildDocument } from '../../pipeline/build';
3
+ import { createMeasurementCache } from '../../measure';
4
+ import { resolvePageTemplate } from '../../composed/templates';
5
+ import { validatePageTemplates } from '../../composed/validate';
6
+ // #976: a frame sets the colours of its callout style (and the tracking of
7
+ // its body) for itself; a template or a page fence recolours a
8
+ // palette-linked fill.
9
+ class StubCtx {
10
+ font = '';
11
+ measureText(s) {
12
+ return { width: s.length * 7 };
13
+ }
14
+ }
15
+ globalThis.OffscreenCanvas = class {
16
+ getContext() {
17
+ return new StubCtx();
18
+ }
19
+ };
20
+ const mm = (value) => ({ value, unit: 'mm' });
21
+ const pt = (value) => ({ value, unit: 'pt' });
22
+ const hex = (h, extra = {}) => ({ hex: h, model: 'hex', ...extra });
23
+ const CONFIG = {
24
+ page: { width: mm(200), height: mm(260), dpi: 300, margins: { top: mm(20), bottom: mm(20), left: mm(20), right: mm(20) } },
25
+ headings: { balancing: { enabled: false }, levels: [{ level: 1, breakBefore: { enabled: false } }] },
26
+ bodyText: { fontSize: pt(11), lineHeight: pt(16), firstLineIndent: pt(0) },
27
+ colorPalette: [{ id: 'tint', name: 'Tint', value: hex('#ffeb99') }],
28
+ calloutStyles: [{
29
+ id: 'caja', backgroundEnabled: true, background: hex('#ffeb99', { paletteId: 'tint' }),
30
+ border: { enabled: true, color: hex('#222222') }, padding: { top: mm(3), right: mm(5), bottom: mm(3), left: mm(5) },
31
+ label: { color: hex('#ffffff'), background: hex('#333333'), height: mm(6), paddingX: mm(3) },
32
+ body: { color: hex('#111111') },
33
+ }],
34
+ };
35
+ const at = { anchor: { to: 'container', edge: 'top-left' } };
36
+ const caja = (extra = {}) => ({ name: 'caja', style: 'caja', placement: at, width: mm(100), ...extra });
37
+ const MD = (fence = 'template="ficha"') => `::::page{${fence}}\n\n:::frame{slot="caja" label="Money"}\n\nThe text of the box.\n\n:::\n\n::::`;
38
+ const build = (frames, extra = {}, fence, config = {}) => buildDocument({ markdown: MD(fence) }, { ...CONFIG, ...config, pageTemplates: [{ id: 'ficha', frames, ...extra }] }, createMeasurementCache());
39
+ const page = (doc) => doc.pages.find((p) => p.composed);
40
+ const frame = (doc, name = 'caja') => page(doc).composed.frames.find((f) => f.name === name);
41
+ const callout = (doc) => page(doc).floats.find((b) => b.id === frame(doc).blockIds[0]);
42
+ const overlay = (doc) => callout(doc).designOverlay?.blocks ?? [];
43
+ const boxes = (doc) => overlay(doc).filter((b) => b.kind === 'box');
44
+ const labelText = (doc) => overlay(doc).find((b) => b.kind === 'text' && b.lines[0]?.text === 'Money');
45
+ const bodyText = (doc) => page(doc).floats.find((b) => b.type === 'paragraph');
46
+ describe('frame look (#976)', () => {
47
+ it('without a look the frame wears its style', () => {
48
+ const doc = build([caja()]);
49
+ expect(boxes(doc)[0].box.backgroundColor).toBe('#ffeb99');
50
+ expect(boxes(doc).find((b) => b.bbox.height < 100).box.backgroundColor).toBe('#333333');
51
+ expect(labelText(doc).color).toBe('#ffffff');
52
+ expect(bodyText(doc).color).toBe('#111111');
53
+ });
54
+ it('sets the fill, the border, the tab and the text colours for this frame only', () => {
55
+ const doc = build([
56
+ caja({ look: { background: hex('#f6c3d0'), border: { color: hex('#aa0000') }, label: { background: hex('#ffffff'), color: hex('#aa0000') }, body: { color: hex('#003366') } } }),
57
+ ]);
58
+ const all = boxes(doc);
59
+ expect(all[0].box.backgroundColor).toBe('#f6c3d0');
60
+ expect(all[0].box.borderColor).toBe('#aa0000');
61
+ expect(all.some((b) => b.box.backgroundColor === '#ffffff')).toBe(true);
62
+ expect(labelText(doc).color).toBe('#aa0000');
63
+ expect(bodyText(doc).color).toBe('#003366');
64
+ // The style is untouched: another frame of the same style keeps it.
65
+ const plain = build([caja()]);
66
+ expect(boxes(plain)[0].box.backgroundColor).toBe('#ffeb99');
67
+ });
68
+ it('a look fill turns the fill on', () => {
69
+ const doc = build([caja({ look: { background: hex('#abcdef') } })], {}, undefined, {
70
+ calloutStyles: [{ id: 'caja', backgroundEnabled: false, padding: { top: mm(3), right: mm(5), bottom: mm(3), left: mm(5) } }],
71
+ });
72
+ expect(boxes(doc)[0].box.backgroundColor).toBe('#abcdef');
73
+ });
74
+ it('tracks the body of this frame', () => {
75
+ const doc = build([caja({ look: { body: { letterSpacing: { value: -0.05, unit: 'em' } } } })]);
76
+ expect(bodyText(doc).letterSpacing).toBeCloseTo(-0.05 * 11 * (300 / 72), 3);
77
+ expect(bodyText(build([caja()])).letterSpacing).toBeUndefined();
78
+ // Zero takes off the style's own tracking.
79
+ const tight = build([caja({ look: { body: { letterSpacing: { value: 0, unit: 'em' } } } })], {}, undefined, {
80
+ calloutStyles: [{ ...CONFIG.calloutStyles[0], body: { letterSpacing: { value: -0.05, unit: 'em' } } }],
81
+ });
82
+ expect(bodyText(tight).letterSpacing).toBeUndefined();
83
+ });
84
+ it('merges key by key over an inherited frame, and drops what the engine cannot use', () => {
85
+ const parent = { id: 'a', frames: [caja({ look: { background: hex('#111111'), label: { color: hex('#222222'), background: hex('#333333') } } })] };
86
+ const child = { id: 'b', extends: 'a', frames: [{ name: 'caja', look: { label: { color: hex('#444444') }, body: { letterSpacing: { value: 1, unit: 'furlong' } } } }] };
87
+ const t = resolvePageTemplate({ pageTemplates: [parent, child] }, 'b');
88
+ expect(t.frames[0].look).toEqual({ background: hex('#111111'), label: { color: hex('#444444'), background: hex('#333333') } });
89
+ expect(t.frames[0].fieldPaths.look).toBe('/pageTemplates/1/frames/0/look');
90
+ });
91
+ it('warns of a key a look does not have, at any depth', () => {
92
+ const w = validatePageTemplates({ calloutStyles: CONFIG.calloutStyles, pageTemplates: [{ id: 'a', frames: [caja({ look: { backgrnd: hex('#000000'), label: { colour: hex('#000000') }, body: { rule: 1 } } })] }] });
93
+ expect(w.map((x) => `${x.kind} ${x.path}${x.suggestion ? ` → ${x.suggestion}` : ''}`).sort()).toEqual([
94
+ 'unknownConfigKey /pageTemplates/0/frames/0/look/backgrnd → background',
95
+ 'unknownConfigKey /pageTemplates/0/frames/0/look/body/rule',
96
+ 'unknownConfigKey /pageTemplates/0/frames/0/look/label/colour → color',
97
+ ]);
98
+ });
99
+ });
100
+ describe('palette of a composed page (#976)', () => {
101
+ it('a template palette recolours the palette-linked fill of its frames', () => {
102
+ const doc = build([caja()], { palette: 'tint=#f6c3d0' });
103
+ expect(boxes(doc)[0].box.backgroundColor).toBe('#f6c3d0');
104
+ });
105
+ it('a page fence palette wins over the template’s, page by page', () => {
106
+ const two = buildDocument({ markdown: `${MD('template="ficha" palette="tint=#c3e0f6"')}\n\n${MD('template="ficha"')}` }, { ...CONFIG, pageTemplates: [{ id: 'ficha', palette: 'tint=#f6c3d0', frames: [caja()] }] }, createMeasurementCache());
107
+ const [a, b] = two.pages.filter((p) => p.composed);
108
+ const fill = (p) => {
109
+ const f = p.composed.frames.find((x) => x.name === 'caja');
110
+ return (p.floats.find((x) => x.id === f.blockIds[0]).designOverlay.blocks.find((x) => x.kind === 'box')).box.backgroundColor;
111
+ };
112
+ expect(fill(a)).toBe('#c3e0f6');
113
+ expect(fill(b)).toBe('#f6c3d0');
114
+ });
115
+ it('leaves a fill the palette does not link alone', () => {
116
+ const doc = build([caja({ look: { background: hex('#abcdef') } })], { palette: 'tint=#f6c3d0' });
117
+ expect(boxes(doc)[0].box.backgroundColor).toBe('#abcdef');
118
+ });
119
+ });
120
+ //# sourceMappingURL=frameLook.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"frameLook.test.js","sourceRoot":"","sources":["../../../src/__tests__/composed/frameLook.test.ts"],"names":[],"mappings":"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"}
@@ -118,4 +118,62 @@ describe('a picture in a frame turned by its writing mode (#960)', () => {
118
118
  expect(c.y).toBeGreaterThanOrEqual(box.y - 0.5);
119
119
  });
120
120
  });
121
+ describe('a picture in a frame of a vertical page\'s own mode (#971)', () => {
122
+ const VERTICAL = { layout: { writingMode: 'vertical-rl', layoutType: 'single' } };
123
+ const inPageMode = (extra = {}) => buildDocument({ markdown: md, resources: [RELIEF] }, {
124
+ ...PAGE, ...VERTICAL, ...extra,
125
+ pageTemplates: [{ id: 'sheet', frames: [
126
+ { name: 'main', flow: true, width: pt(100), height: pt(100), placement: { anchor: { to: 'container', edge: 'top-left' } } },
127
+ { name: 'side', width: pt(150), height: pt(300), placement: { anchor: { to: 'container', edge: 'top-right' } } },
128
+ ] }],
129
+ }, createMeasurementCache());
130
+ it('stands upright, inside its box, with room left for the text', () => {
131
+ const page = composedPage(inPageMode());
132
+ const side = frameOf(page, 'side');
133
+ const rb = picture(page, 'side').resourceBlock;
134
+ expect(rb.rotation?.direction).toBe('ccw');
135
+ const box = frameContentRect(side);
136
+ const corners = [[0, 0], [rb.rotation.width, 0], [0, rb.rotation.height], [rb.rotation.width, rb.rotation.height]]
137
+ .map(([x, y]) => resourceBlockToPage(rb, x, y));
138
+ for (const c of corners) {
139
+ expect(c.x).toBeGreaterThanOrEqual(box.x - 0.5);
140
+ expect(c.x).toBeLessThanOrEqual(box.x + box.width + 0.5);
141
+ expect(c.y).toBeGreaterThanOrEqual(box.y - 0.5);
142
+ expect(c.y).toBeLessThanOrEqual(box.y + box.height + 0.5);
143
+ }
144
+ });
145
+ it('shrinks to a narrow box and takes the room it needs when the frame has no height of its own', () => {
146
+ const narrow = composedPage(buildDocument({ markdown: md, resources: [RELIEF] }, {
147
+ ...PAGE, ...VERTICAL,
148
+ pageTemplates: [{ id: 'sheet', frames: [
149
+ { name: 'main', flow: true, width: pt(100), height: pt(100), placement: { anchor: { to: 'container', edge: 'top-left' } } },
150
+ { name: 'side', width: pt(70), placement: { anchor: { to: 'container', edge: 'top-right' } } },
151
+ ] }],
152
+ }, createMeasurementCache()));
153
+ const side = frameOf(narrow, 'side');
154
+ const rb = picture(narrow, 'side').resourceBlock;
155
+ expect(rb.rotation?.direction).toBe('ccw');
156
+ const box = frameContentRect(side);
157
+ // Page width of the upright picture (the stacking axis) stays inside the box.
158
+ const corners = [[0, 0], [rb.rotation.width, rb.rotation.height]].map(([x, y]) => resourceBlockToPage(rb, x, y));
159
+ for (const c of corners) {
160
+ expect(c.x).toBeGreaterThanOrEqual(box.x - 0.5);
161
+ expect(c.x).toBeLessThanOrEqual(box.x + box.width + 0.5);
162
+ expect(c.y).toBeGreaterThanOrEqual(box.y - 0.5);
163
+ expect(c.y).toBeLessThanOrEqual(box.y + box.height + 0.5);
164
+ }
165
+ });
166
+ it('a frame that says the page\'s mode itself is the same', () => {
167
+ const page = composedPage(inPageMode());
168
+ const same = composedPage(buildDocument({ markdown: md, resources: [RELIEF] }, {
169
+ ...PAGE, ...VERTICAL,
170
+ pageTemplates: [{ id: 'sheet', frames: [
171
+ { name: 'main', flow: true, width: pt(100), height: pt(100), placement: { anchor: { to: 'container', edge: 'top-left' } } },
172
+ { name: 'side', writingMode: 'vertical-rl', width: pt(150), height: pt(300), placement: { anchor: { to: 'container', edge: 'top-right' } } },
173
+ ] }],
174
+ }, createMeasurementCache()));
175
+ expect(picture(same, 'side').resourceBlock.rotation?.direction).toBe(picture(page, 'side').resourceBlock.rotation?.direction);
176
+ expect(picture(same, 'side').bbox).toEqual(picture(page, 'side').bbox);
177
+ });
178
+ });
121
179
  //# sourceMappingURL=framePictures.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"framePictures.test.js","sourceRoot":"","sources":["../../../src/__tests__/composed/framePictures.test.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,sBAAsB,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAExE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEpD,gBAAgB,EAAE,CAAC;AAEnB,MAAM,EAAE,GAAG,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,IAAa,EAAE,CAAC,CAAC;AAC/D,MAAM,IAAI,GAAkB;IAC1B,IAAI,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAW;IAClI,QAAQ,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,UAAU,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,SAAS,EAAE,MAAM,EAAW;IACxG,QAAQ,EAAE,EAAE,SAAS,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,CAAC,EAAW;IAC7G,MAAM,EAAE,SAAS;CAClB,CAAC;AACF,MAAM,MAAM,GAAa;IACvB,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC;IAClH,MAAM,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE;CAC7D,CAAC;AACd,MAAM,EAAE,GAAG,sHAAsH,CAAC;AAClI,MAAM,KAAK,GAAG,CAAC,IAAqC,EAAE,QAAgC,EAAE,EAAe,EAAE,CACvG,aAAa,CAAC,EAAE,QAAQ,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,EAAE;IACnD,GAAG,IAAI,EAAE,GAAG,KAAK;IACjB,aAAa,EAAE,CAAC,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;gBACrC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE;gBAC3H,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,EAAE,CAAC,GAAG,CAAC,EAAE,SAAS,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE,WAAW,EAAE,EAAE,EAAE;aACpI,EAAE,CAAC;CACY,EAAE,sBAAsB,EAAE,CAAC,CAAC;AAChD,MAAM,YAAY,GAAG,CAAC,GAAgB,EAAW,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAE,CAAC;AACvF,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,IAAY,EAAY,EAAE,CAAC,IAAI,CAAC,QAAS,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAE,CAAC;AAC/G,MAAM,OAAO,GAAG,CAAC,IAAa,EAAE,IAAY,EAAY,EAAE,CACxD,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,CAAE,CAAC;AAEjH,QAAQ,CAAC,wDAAwD,EAAE,GAAG,EAAE;IACtE,EAAE,CAAC,sGAAsG,EAAE,GAAG,EAAE;QAC9G,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QAChD,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC7B,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,aAAc,CAAC;QAChD,4CAA4C;QAC5C,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,wEAAwE;QACxE,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,QAAS,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,QAAS,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,QAAS,CAAC,KAAK,EAAE,EAAE,CAAC,QAAS,CAAC,MAAM,CAAC,CAAC;aACnH,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,mBAAmB,CAAC,EAAE,EAAE,CAAE,EAAE,CAAE,CAAC,CAAC,CAAC;QACpD,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAChD,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;YACzD,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;YAChD,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAC5D,CAAC;QACD,0EAA0E;QAC1E,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,IAAI,CAAC,MAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAE,CAAC,CAAC;QACjG,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,WAAW,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,GAAG,CAAE,CAAC;QACrF,MAAM,GAAG,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QAClC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;QAChF,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC;IACrF,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,8EAA8E,EAAE,GAAG,EAAE;QACtF,MAAM,GAAG,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC;QACjC,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;QAC/B,qBAAqB,CAAC,YAAY,EAAE,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAW,CAAC,CAAC;QAE1E,MAAM,GAAG,GAAG,CAAC,CAAI,EAAE,CAAI,EAAK,EAAE,CAAC;YAC7B,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;YACpD,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;SACnE,CAAC;QACF,IAAI,CAAC,GAAM,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;QAC9B,MAAM,KAAK,GAAQ,EAAE,CAAC;QACtB,MAAM,KAAK,GAAqC,EAAE,CAAC;QACnD,MAAM,GAAG,GAA4B;YACnC,IAAI,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC9B,OAAO,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;YACxC,SAAS,EAAE,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpH,YAAY,EAAE,CAAC,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,CAAS,EAAE,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/G,SAAS,EAAE,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACxE,KAAK,EAAE,CAAC,CAAS,EAAE,CAAS,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACpE,MAAM,EAAE,CAAC,CAAS,EAAE,EAAE,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YACnG,SAAS,EAAE,CAAC,EAAW,EAAE,EAAU,EAAE,EAAU,EAAE,CAAS,EAAE,CAAS,EAAE,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YACtG,WAAW,EAAE,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,uBAAuB,EAAE,CAAC,EAAE,wBAAwB,EAAE,CAAC,EAAE,qBAAqB,EAAE,CAAC,EAAE,sBAAsB,EAAE,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;SAC/K,CAAC;QACF,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,KAAK,EAAE,CAAC;QACnF,MAAM,GAAG,GAAG,IAAI,KAAK,CAAC,KAAK,EAAE;YAC3B,GAAG,CAAC,CAAC,EAAE,CAAC,IAAI,IAAI,OAAO,CAAC,KAAK,QAAQ,IAAI,CAAC,IAAI,GAAG;gBAAE,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;gBAAE,OAAO,CAAC,CAAC,CAAW,CAAC,CAAC,CAAC,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;YAC9H,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAW,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,CAAC;SAClD,CAAC,CAAC;QACH,kBAAkB,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,GAAG,EAAkC,CAAC,CAAC;QAC9G,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC7B,wEAAwE;QACxE,MAAM,EAAE,CAAC,EAAE,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;QAC5B,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;QAC3C,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QACjC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,uFAAuF,EAAE,GAAG,EAAE;QAC/F,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,EAAE,WAAW,EAAE,aAAa,EAAE,UAAU,EAAE,QAAQ,EAAW,EAAE,CAAC,CAAC,CAAC;QAC7H,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,CAAC;QAC/C,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,aAAc,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,6DAA6D,EAAE,GAAG,EAAE;QACrE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC;QAClD,MAAM,CAAC,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,aAAc,CAAC,QAAQ,CAAC,CAAC,aAAa,EAAE,CAAC;IACxE,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,gEAAgE,EAAE,GAAG,EAAE;QACxE,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,aAAa,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;QACtE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,aAAc,CAAC;QAChD,MAAM,CAAC,EAAE,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;QACnC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;QACnC,MAAM,CAAC,GAAG,mBAAmB,CAAC,EAAE,EAAE,EAAE,CAAC,QAAS,CAAC,KAAK,EAAE,EAAE,CAAC,QAAS,CAAC,MAAM,CAAC,CAAC;QAC3E,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC;QACzD,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,sBAAsB,CAAC,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"framePictures.test.js","sourceRoot":"","sources":["../../../src/__tests__/composed/framePictures.test.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=headingBadge.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"headingBadge.test.d.ts","sourceRoot":"","sources":["../../../src/__tests__/composed/headingBadge.test.ts"],"names":[],"mappings":""}