postext 0.3.27 → 0.3.29

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 (90) hide show
  1. package/dist/__tests__/columnBalancing.test.js +78 -1
  2. package/dist/__tests__/columnBalancing.test.js.map +1 -1
  3. package/dist/__tests__/defaults/calloutStyles.test.js +4 -2
  4. package/dist/__tests__/defaults/calloutStyles.test.js.map +1 -1
  5. package/dist/__tests__/defaults/headingsBalancing.test.d.ts +2 -0
  6. package/dist/__tests__/defaults/headingsBalancing.test.d.ts.map +1 -0
  7. package/dist/__tests__/defaults/headingsBalancing.test.js +17 -0
  8. package/dist/__tests__/defaults/headingsBalancing.test.js.map +1 -0
  9. package/dist/__tests__/parts.test.js +82 -1
  10. package/dist/__tests__/parts.test.js.map +1 -1
  11. package/dist/__tests__/pipeline/calloutSplit.test.d.ts +2 -0
  12. package/dist/__tests__/pipeline/calloutSplit.test.d.ts.map +1 -0
  13. package/dist/__tests__/pipeline/calloutSplit.test.js +156 -0
  14. package/dist/__tests__/pipeline/calloutSplit.test.js.map +1 -0
  15. package/dist/__tests__/pipeline/colonBalancing.test.d.ts +2 -0
  16. package/dist/__tests__/pipeline/colonBalancing.test.d.ts.map +1 -0
  17. package/dist/__tests__/pipeline/colonBalancing.test.js +124 -0
  18. package/dist/__tests__/pipeline/colonBalancing.test.js.map +1 -0
  19. package/dist/__tests__/pipeline/floatFirstSlot.test.js +33 -0
  20. package/dist/__tests__/pipeline/floatFirstSlot.test.js.map +1 -1
  21. package/dist/__tests__/pipeline/headingShortBand.test.d.ts +2 -0
  22. package/dist/__tests__/pipeline/headingShortBand.test.d.ts.map +1 -0
  23. package/dist/__tests__/pipeline/headingShortBand.test.js +89 -0
  24. package/dist/__tests__/pipeline/headingShortBand.test.js.map +1 -0
  25. package/dist/__tests__/pipeline/spanBlocks.test.js +4 -2
  26. package/dist/__tests__/pipeline/spanBlocks.test.js.map +1 -1
  27. package/dist/__tests__/pipeline/spanLeaveLevel.test.d.ts +2 -0
  28. package/dist/__tests__/pipeline/spanLeaveLevel.test.d.ts.map +1 -0
  29. package/dist/__tests__/pipeline/spanLeaveLevel.test.js +103 -0
  30. package/dist/__tests__/pipeline/spanLeaveLevel.test.js.map +1 -0
  31. package/dist/canvas-backend/headerFooter.d.ts.map +1 -1
  32. package/dist/canvas-backend/headerFooter.js +2 -6
  33. package/dist/canvas-backend/headerFooter.js.map +1 -1
  34. package/dist/canvas-backend/index.d.ts +1 -1
  35. package/dist/canvas-backend/index.d.ts.map +1 -1
  36. package/dist/canvas-backend/renderResourceBlock.d.ts +15 -1
  37. package/dist/canvas-backend/renderResourceBlock.d.ts.map +1 -1
  38. package/dist/canvas-backend/renderResourceBlock.js +104 -8
  39. package/dist/canvas-backend/renderResourceBlock.js.map +1 -1
  40. package/dist/defaults/calloutStyles.d.ts.map +1 -1
  41. package/dist/defaults/calloutStyles.js +3 -3
  42. package/dist/defaults/calloutStyles.js.map +1 -1
  43. package/dist/defaults/headings.d.ts +3 -0
  44. package/dist/defaults/headings.d.ts.map +1 -1
  45. package/dist/defaults/headings.js +21 -0
  46. package/dist/defaults/headings.js.map +1 -1
  47. package/dist/design/layout.d.ts +6 -1
  48. package/dist/design/layout.d.ts.map +1 -1
  49. package/dist/design/layout.js +38 -2
  50. package/dist/design/layout.js.map +1 -1
  51. package/dist/design/placeholders.d.ts +4 -0
  52. package/dist/design/placeholders.d.ts.map +1 -1
  53. package/dist/design/placeholders.js.map +1 -1
  54. package/dist/index.d.ts +1 -1
  55. package/dist/index.d.ts.map +1 -1
  56. package/dist/pipeline/build.d.ts.map +1 -1
  57. package/dist/pipeline/build.js +531 -168
  58. package/dist/pipeline/build.js.map +1 -1
  59. package/dist/pipeline/calloutLayout.d.ts +9 -3
  60. package/dist/pipeline/calloutLayout.d.ts.map +1 -1
  61. package/dist/pipeline/calloutLayout.js +7 -5
  62. package/dist/pipeline/calloutLayout.js.map +1 -1
  63. package/dist/pipeline/columnBalancing.d.ts +30 -5
  64. package/dist/pipeline/columnBalancing.d.ts.map +1 -1
  65. package/dist/pipeline/columnBalancing.js +70 -4
  66. package/dist/pipeline/columnBalancing.js.map +1 -1
  67. package/dist/pipeline/continuation.d.ts.map +1 -1
  68. package/dist/pipeline/continuation.js +14 -2
  69. package/dist/pipeline/continuation.js.map +1 -1
  70. package/dist/pipeline/headerFooter.d.ts.map +1 -1
  71. package/dist/pipeline/headerFooter.js +7 -1
  72. package/dist/pipeline/headerFooter.js.map +1 -1
  73. package/dist/pipeline/parts.d.ts +9 -0
  74. package/dist/pipeline/parts.d.ts.map +1 -1
  75. package/dist/pipeline/parts.js +15 -0
  76. package/dist/pipeline/parts.js.map +1 -1
  77. package/dist/pipeline/placeholders.d.ts +12 -9
  78. package/dist/pipeline/placeholders.d.ts.map +1 -1
  79. package/dist/pipeline/placeholders.js +13 -12
  80. package/dist/pipeline/placeholders.js.map +1 -1
  81. package/dist/pipeline/placement.d.ts +1 -0
  82. package/dist/pipeline/placement.d.ts.map +1 -1
  83. package/dist/pipeline/placement.js +1 -0
  84. package/dist/pipeline/placement.js.map +1 -1
  85. package/dist/types.d.ts +38 -1
  86. package/dist/types.d.ts.map +1 -1
  87. package/dist/vdt.d.ts +14 -1
  88. package/dist/vdt.d.ts.map +1 -1
  89. package/dist/vdt.js.map +1 -1
  90. package/package.json +1 -1
@@ -21,10 +21,13 @@
21
21
  * share — e.g. 3 lines over an h2 and an h3 become +2 above the h2 and +1
22
22
  * above the h3.
23
23
  *
24
- * When the column's headings cannot absorb the whole gap, two further
24
+ * When the column's headings cannot absorb the whole gap, three further
25
25
  * levers apply in editorial priority order:
26
26
  * - extra grid lines where a list/enumeration ends (space after a list
27
27
  * reads naturally), capped per list end;
28
+ * - extra grid lines between a top float band (a figure or table at the
29
+ * head of the column) and the text under it, capped per band — a
30
+ * little more air under a figure is invisible;
28
31
  * - as a last resort, up to `maxLooseParagraphs` paragraphs of the column
29
32
  * are each re-broken one line looser (TeX \looseness=+1) via the
30
33
  * Knuth-Plass `looseness` option — always within the configured
@@ -35,8 +38,8 @@
35
38
  */
36
39
  import type { VDTDocument } from '../vdt';
37
40
  /** Maximum number of placement passes (initial + balancing retries). */
38
- export declare const MAX_BALANCING_PASSES = 8;
39
- export type BalanceCandidateKind = 'heading' | 'listEnd' | 'looseParagraph';
41
+ export declare const MAX_BALANCING_PASSES = 10;
42
+ export type BalanceCandidateKind = 'heading' | 'listEnd' | 'afterFloat' | 'looseParagraph';
40
43
  interface BalanceCandidate {
41
44
  /** Stable content-block index keying the adjustment across passes. */
42
45
  contentIndex: number;
@@ -72,7 +75,9 @@ interface ColumnGap {
72
75
  * would strand it at the column bottom). List-end points are the first
73
76
  * non-list block after a run of list items — they may be last in column
74
77
  * (pushing a trailing paragraph down by at most the gap is local: the
75
- * element that opened the next column still does not fit). Loose-paragraph
78
+ * element that opened the next column still does not fit). After-float
79
+ * points are the first block of a column that starts under a float band (a
80
+ * whole block, not a continuation, and not a callout). Loose-paragraph
76
81
  * candidates are justified paragraphs wholly contained in the column (never
77
82
  * split parts — loosening those would reshuffle lines across columns).
78
83
  */
@@ -91,6 +96,8 @@ export interface BalanceProposalOptions {
91
96
  maxLinesPerHeading: number;
92
97
  stretchAfterLists: boolean;
93
98
  maxLinesAfterList: number;
99
+ stretchAfterFloats: boolean;
100
+ maxLinesAfterFloat: number;
94
101
  looseParagraphs: boolean;
95
102
  /** Loose paragraphs allowed per short column (one extra line each). */
96
103
  maxLooseParagraphs: number;
@@ -98,7 +105,23 @@ export interface BalanceProposalOptions {
98
105
  optimalLineBreaking: boolean;
99
106
  /** Loose candidates that failed to gain a line in a previous attempt. */
100
107
  failedLoose: ReadonlySet<number>;
108
+ /** Spacing candidates (headings, list ends, after-float points) that may
109
+ * not take more lines than already applied: a pass that gave them more
110
+ * moved content across a column break (see {@link firstDivergentColumn})
111
+ * and was discarded. */
112
+ failedLines?: ReadonlySet<number>;
101
113
  }
114
+ /** Position of a column in a document, in reading order. */
115
+ export interface ColumnPosition {
116
+ pageIndex: number;
117
+ columnIndex: number;
118
+ }
119
+ /**
120
+ * First column, in reading order, whose content differs between two
121
+ * layouts of the same document — where a balancing pass stopped being
122
+ * local. Null when every column of `a` has its counterpart in `b`.
123
+ */
124
+ export declare function firstDivergentColumn(a: VDTDocument, b: VDTDocument): ColumnPosition | null;
102
125
  /** Budget shared by the loose candidates of one column: the placement pass
103
126
  * tries them in order and stops loosening once `need` of them gained
104
127
  * their line, so offering every candidate at once costs no extra pass. */
@@ -126,7 +149,9 @@ export interface BalanceProposal {
126
149
  * order), capped at `maxLinesPerHeading`;
127
150
  * 2. list ends — round-robin in reading order, capped at
128
151
  * `maxLinesAfterList`;
129
- * 3. loose paragraphs — every eligible candidate of the column is offered,
152
+ * 3. after-float points — the first block under a float band, capped at
153
+ * `maxLinesAfterFloat`;
154
+ * 4. loose paragraphs — every eligible candidate of the column is offered,
130
155
  * longest first (most glue = least visible loosening), with a shared
131
156
  * budget: the pass stops loosening once the column has gained what it
132
157
  * needs, capped at `maxLooseParagraphs` (cumulative across passes).
@@ -1 +1 @@
1
- {"version":3,"file":"columnBalancing.d.ts","sourceRoot":"","sources":["../../src/pipeline/columnBalancing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EAAa,WAAW,EAAW,MAAM,QAAQ,CAAC;AAK9D,wEAAwE;AACxE,eAAO,MAAM,oBAAoB,IAAI,CAAC;AAEtC,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,SAAS,GAAG,gBAAgB,CAAC;AAE5E,UAAU,gBAAgB;IACxB,sEAAsE;IACtE,YAAY,EAAE,MAAM,CAAC;IACrB,IAAI,EAAE,oBAAoB,CAAC;IAC3B,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd;gDAC4C;IAC5C,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,UAAU,SAAS;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,qEAAqE;IACrE,UAAU,EAAE,gBAAgB,EAAE,CAAC;CAChC;AAYD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,WAAW,EAChB,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,GACpC,SAAS,EAAE,CAyHb;AAED;kCACkC;AAClC,wBAAgB,aAAa,CAC3B,GAAG,EAAE,WAAW,EAChB,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,GACpC,MAAM,CAER;AAED,iEAAiE;AACjE,MAAM,WAAW,YAAY;IAC3B,yEAAyE;IACzE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACnC,+DAA+D;IAC/D,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACpC;AAED,MAAM,WAAW,sBAAsB;IACrC,kBAAkB,EAAE,MAAM,CAAC;IAC3B,iBAAiB,EAAE,OAAO,CAAC;IAC3B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,uEAAuE;IACvE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,2EAA2E;IAC3E,mBAAmB,EAAE,OAAO,CAAC;IAC7B,yEAAyE;IACzE,WAAW,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;CAClC;AAED;;2EAE2E;AAC3E,MAAM,WAAW,WAAW;IAC1B,iDAAiD;IACjD,KAAK,EAAE,MAAM,CAAC;IACd,0DAA0D;IAC1D,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,eAAe;IAC9B,6EAA6E;IAC7E,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,qEAAqE;IACrE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC3B,qEAAqE;IACrE,WAAW,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACtC,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAC;CAClB;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,WAAW,EAChB,gBAAgB,EAAE,WAAW,CAAC,MAAM,CAAC,EACrC,OAAO,EAAE,YAAY,EACrB,OAAO,EAAE,sBAAsB,GAC9B,eAAe,CAkEjB"}
1
+ {"version":3,"file":"columnBalancing.d.ts","sourceRoot":"","sources":["../../src/pipeline/columnBalancing.ts"],"names":[],"mappings":"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"}
@@ -21,10 +21,13 @@
21
21
  * share — e.g. 3 lines over an h2 and an h3 become +2 above the h2 and +1
22
22
  * above the h3.
23
23
  *
24
- * When the column's headings cannot absorb the whole gap, two further
24
+ * When the column's headings cannot absorb the whole gap, three further
25
25
  * levers apply in editorial priority order:
26
26
  * - extra grid lines where a list/enumeration ends (space after a list
27
27
  * reads naturally), capped per list end;
28
+ * - extra grid lines between a top float band (a figure or table at the
29
+ * head of the column) and the text under it, capped per band — a
30
+ * little more air under a figure is invisible;
28
31
  * - as a last resort, up to `maxLooseParagraphs` paragraphs of the column
29
32
  * are each re-broken one line looser (TeX \looseness=+1) via the
30
33
  * Knuth-Plass `looseness` option — always within the configured
@@ -36,10 +39,22 @@
36
39
  /** Tolerance against FP drift when converting free space to grid lines. */
37
40
  const EPS = 0.01;
38
41
  /** Maximum number of placement passes (initial + balancing retries). */
39
- export const MAX_BALANCING_PASSES = 8;
42
+ export const MAX_BALANCING_PASSES = 10;
40
43
  function pageHasBodyContent(page) {
41
44
  return page.columns.some((c) => c.blocks.length > 0);
42
45
  }
46
+ /** Whether a float band sits right above the column (the column's top was
47
+ * pushed down under it): a float on the page overlapping the column
48
+ * horizontally whose box ends at or above the column's top. */
49
+ function columnUnderTopFloat(page, col) {
50
+ const floats = page.floats ?? [];
51
+ const left = col.bbox.x;
52
+ const right = col.bbox.x + col.bbox.width;
53
+ return floats.some((f) => f.bbox.x < right - 0.5
54
+ && f.bbox.x + f.bbox.width > left + 0.5
55
+ && f.bbox.y + f.bbox.height <= col.bbox.y + 0.5
56
+ && f.bbox.y >= page.contentArea.y - 0.5);
57
+ }
43
58
  /** Regular flow column with a usable height — never a page-span block's
44
59
  * full-width column, nor a band closed at its own top. */
45
60
  function isTextColumn(col) {
@@ -60,7 +75,9 @@ function isTextColumn(col) {
60
75
  * would strand it at the column bottom). List-end points are the first
61
76
  * non-list block after a run of list items — they may be last in column
62
77
  * (pushing a trailing paragraph down by at most the gap is local: the
63
- * element that opened the next column still does not fit). Loose-paragraph
78
+ * element that opened the next column still does not fit). After-float
79
+ * points are the first block of a column that starts under a float band (a
80
+ * whole block, not a continuation, and not a callout). Loose-paragraph
64
81
  * candidates are justified paragraphs wholly contained in the column (never
65
82
  * split parts — loosening those would reshuffle lines across columns).
66
83
  */
@@ -151,6 +168,17 @@ export function collectColumnGaps(doc, forcedBreakPages) {
151
168
  lineCount: b.lines.length,
152
169
  });
153
170
  }
171
+ else if (i === 0
172
+ && !b.id.includes('-cont-')
173
+ && columnUnderTopFloat(page, col)) {
174
+ candidates.push({
175
+ contentIndex: b.contentIndex,
176
+ kind: 'afterFloat',
177
+ level: 0,
178
+ order: i,
179
+ lineCount: b.lines.length,
180
+ });
181
+ }
154
182
  else if (i >= 1
155
183
  && col.blocks[i - 1].type === 'listItem'
156
184
  && col.blocks[i - 1].containerId === undefined
@@ -188,6 +216,34 @@ export function collectColumnGaps(doc, forcedBreakPages) {
188
216
  export function totalGapLines(doc, forcedBreakPages) {
189
217
  return collectColumnGaps(doc, forcedBreakPages).reduce((sum, g) => sum + g.gapLines, 0);
190
218
  }
219
+ /** Identity of a column's content: its blocks (content index plus the
220
+ * continuation mark) and the floats reserved on it. */
221
+ function columnKey(page, col) {
222
+ const blocks = col.blocks.map((b) => `${b.contentIndex ?? '?'}${b.id.includes('-cont-') ? 'c' : ''}`).join(',');
223
+ const floats = (page.floats ?? [])
224
+ .filter((f) => f.columnIndex === col.index)
225
+ .map((f) => f.resourceBlock?.resource.id ?? f.id)
226
+ .join(',');
227
+ return `${blocks}|${floats}`;
228
+ }
229
+ /**
230
+ * First column, in reading order, whose content differs between two
231
+ * layouts of the same document — where a balancing pass stopped being
232
+ * local. Null when every column of `a` has its counterpart in `b`.
233
+ */
234
+ export function firstDivergentColumn(a, b) {
235
+ for (let p = 0; p < a.pages.length; p++) {
236
+ const pa = a.pages[p];
237
+ const pb = b.pages[p];
238
+ for (let c = 0; c < pa.columns.length; c++) {
239
+ const ca = pa.columns[c];
240
+ const cb = pb?.columns[c];
241
+ if (!cb || columnKey(pa, ca) !== columnKey(pb, cb))
242
+ return { pageIndex: p, columnIndex: c };
243
+ }
244
+ }
245
+ return null;
246
+ }
191
247
  /**
192
248
  * Propose the next round of adjustments. Per column gap, levers apply in
193
249
  * strict editorial priority order, on top of the already-applied `current`
@@ -196,7 +252,9 @@ export function totalGapLines(doc, forcedBreakPages) {
196
252
  * order), capped at `maxLinesPerHeading`;
197
253
  * 2. list ends — round-robin in reading order, capped at
198
254
  * `maxLinesAfterList`;
199
- * 3. loose paragraphs — every eligible candidate of the column is offered,
255
+ * 3. after-float points — the first block under a float band, capped at
256
+ * `maxLinesAfterFloat`;
257
+ * 4. loose paragraphs — every eligible candidate of the column is offered,
200
258
  * longest first (most glue = least visible loosening), with a shared
201
259
  * budget: the pass stops loosening once the column has gained what it
202
260
  * needs, capped at `maxLooseParagraphs` (cumulative across passes).
@@ -216,6 +274,8 @@ export function proposeBalanceLines(doc, forcedBreakPages, current, options) {
216
274
  for (const cand of cands) {
217
275
  if (remaining <= 0)
218
276
  break;
277
+ if (options.failedLines?.has(cand.contentIndex))
278
+ continue;
219
279
  const cur = lines.get(cand.contentIndex) ?? 0;
220
280
  if (cur >= cap)
221
281
  continue;
@@ -239,6 +299,12 @@ export function proposeBalanceLines(doc, forcedBreakPages, current, options) {
239
299
  .sort((a, b) => a.order - b.order);
240
300
  remaining = distribute(listEnds, remaining, options.maxLinesAfterList);
241
301
  }
302
+ if (remaining > 0 && options.stretchAfterFloats) {
303
+ const afterFloats = gap.candidates
304
+ .filter((c) => c.kind === 'afterFloat')
305
+ .sort((a, b) => a.order - b.order);
306
+ remaining = distribute(afterFloats, remaining, options.maxLinesAfterFloat);
307
+ }
242
308
  if (remaining > 0
243
309
  && options.looseParagraphs
244
310
  && options.optimalLineBreaking) {
@@ -1 +1 @@
1
- {"version":3,"file":"columnBalancing.js","sourceRoot":"","sources":["../../src/pipeline/columnBalancing.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"columnBalancing.js","sourceRoot":"","sources":["../../src/pipeline/columnBalancing.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAIH,2EAA2E;AAC3E,MAAM,GAAG,GAAG,IAAI,CAAC;AAEjB,wEAAwE;AACxE,MAAM,CAAC,MAAM,oBAAoB,GAAG,EAAE,CAAC;AA0BvC,SAAS,kBAAkB,CAAC,IAAa;IACvC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACvD,CAAC;AAED;;gEAEgE;AAChE,SAAS,mBAAmB,CAAC,IAAa,EAAE,GAAc;IACxD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;IACjC,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC;IACxB,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC;IAC1C,OAAO,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CACvB,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG;WACnB,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,GAAG;WACpC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG;WAC5C,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,IAAI,CAAC,WAAW,CAAC,CAAC,GAAG,GAAG,CACxC,CAAC;AACJ,CAAC;AAED;2DAC2D;AAC3D,SAAS,YAAY,CAAC,GAAc;IAClC,OAAO,GAAG,CAAC,IAAI,KAAK,MAAM,IAAI,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,GAAG,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,iBAAiB,CAC/B,GAAgB,EAChB,gBAAqC;IAErC,IAAI,eAAe,GAAG,CAAC,CAAC,CAAC;IACzB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC;YAAE,eAAe,GAAG,CAAC,CAAC;IAC7D,CAAC;IAED,yEAAyE;IACzE,0DAA0D;IAC1D,MAAM,SAAS,GAAG,IAAI,GAAG,EAAkB,CAAC;IAC5C,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7B,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC/B,KAAK,MAAM,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,CAAC;gBAC3B,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;oBACjC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAgB,EAAE,CAAC;IAC7B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,eAAe,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC;QAC3B,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,aAAa;YAAE,SAAS;QAExD,sEAAsE;QACtE,oEAAoE;QACpE,uEAAuE;QACvE,oEAAoE;QACpE,qEAAqE;QACrE,0BAA0B;QAC1B,IAAI,YAAY,GAAG,CAAC,CAAC,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;YAC7B,IAAI,YAAY,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC;gBAAE,YAAY,GAAG,CAAC,CAAC;QACnE,CAAC;QACD,IAAI,YAAY,KAAK,CAAC,CAAC;YAAE,SAAS;QAElC,MAAM,WAAW,GAAG,CAAC,GAAG,eAAe,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;QAEpE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,YAAY,EAAE,CAAC,EAAE,EAAE,CAAC;YACvC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;YAC7B,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,SAAS;YAC5D,IAAI,CAAC,KAAK,YAAY,IAAI,CAAC,WAAW;gBAAE,SAAS;YACjD,mEAAmE;YACnE,IAAI,GAAG,CAAC,WAAW;gBAAE,SAAS;YAE9B,kEAAkE;YAClE,oEAAoE;YACpE,qEAAqE;YACrE,oEAAoE;YACpE,mEAAmE;YACnE,IAAI,IAAI,GAAG,GAAG,CAAC,eAAe,CAAC;YAC/B,KAAK,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;gBAChD,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;gBACzB,IAAI,CAAC,CAAC,MAAM;oBAAE,SAAS;gBACvB,MAAM,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;gBAC7C,IAAI,CAAC,CAAC,IAAI,KAAK,UAAU,IAAI,QAAQ,EAAE,CAAC;oBACtC,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;gBACjG,CAAC;gBACD,MAAM;YACR,CAAC;YACD,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC,YAAY,CAAC,CAAC;YAC7D,IAAI,QAAQ,GAAG,CAAC;gBAAE,SAAS;YAE3B,MAAM,UAAU,GAAuB,EAAE,CAAC;YAC1C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;gBAC3C,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,CAAC,CAAE,CAAC;gBACzB,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;oBAAE,SAAS;gBACvD,oEAAoE;gBACpE,0DAA0D;gBAC1D,IAAI,CAAC,CAAC,WAAW,KAAK,SAAS;oBAAE,SAAS;gBAE1C,IACE,CAAC,CAAC,IAAI,KAAK,SAAS;uBACjB,CAAC,CAAC,YAAY,KAAK,SAAS;uBAC5B,CAAC,IAAI,CAAC;uBACN,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAC5B,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC;wBACd,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,CAAC,CAAC,YAAY;wBACrB,KAAK,EAAE,CAAC;wBACR,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;qBAC1B,CAAC,CAAC;gBACL,CAAC;qBAAM,IACL,CAAC,KAAK,CAAC;uBACJ,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;uBACxB,mBAAmB,CAAC,IAAI,EAAE,GAAG,CAAC,EACjC,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC;wBACd,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,IAAI,EAAE,YAAY;wBAClB,KAAK,EAAE,CAAC;wBACR,KAAK,EAAE,CAAC;wBACR,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;qBAC1B,CAAC,CAAC;gBACL,CAAC;qBAAM,IACL,CAAC,IAAI,CAAC;uBACH,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,IAAI,KAAK,UAAU;uBACtC,GAAG,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAE,CAAC,WAAW,KAAK,SAAS;uBAC5C,CAAC,CAAC,IAAI,KAAK,UAAU;uBACrB,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC,gDAAgD;uBACrE,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC3B,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC;wBACd,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,IAAI,EAAE,SAAS;wBACf,KAAK,EAAE,CAAC;wBACR,KAAK,EAAE,CAAC;wBACR,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;qBAC1B,CAAC,CAAC;gBACL,CAAC;gBAED,IACE,CAAC,CAAC,IAAI,KAAK,WAAW;uBACnB,CAAC,CAAC,SAAS,KAAK,SAAS;uBACzB,CAAC,CAAC,KAAK,CAAC,MAAM,IAAI,CAAC;uBACnB,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,EACtC,CAAC;oBACD,UAAU,CAAC,IAAI,CAAC;wBACd,YAAY,EAAE,CAAC,CAAC,YAAY;wBAC5B,IAAI,EAAE,gBAAgB;wBACtB,KAAK,EAAE,CAAC;wBACR,KAAK,EAAE,CAAC;wBACR,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,MAAM;qBAC1B,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YACD,IAAI,CAAC,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;kCACkC;AAClC,MAAM,UAAU,aAAa,CAC3B,GAAgB,EAChB,gBAAqC;IAErC,OAAO,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,CAAC,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;AAC1F,CAAC;AAoCD;wDACwD;AACxD,SAAS,SAAS,CAAC,IAAa,EAAE,GAAc;IAC9C,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,YAAY,IAAI,GAAG,GAAG,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAChH,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,MAAM,IAAI,EAAE,CAAC;SAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,WAAW,KAAK,GAAG,CAAC,KAAK,CAAC;SAC1C,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,aAAa,EAAE,QAAQ,CAAC,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;SAChD,IAAI,CAAC,GAAG,CAAC,CAAC;IACb,OAAO,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,CAAc,EAAE,CAAc;IACjE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC;QACvB,MAAM,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3C,MAAM,EAAE,GAAG,EAAE,CAAC,OAAO,CAAC,CAAC,CAAE,CAAC;YAC1B,MAAM,EAAE,GAAG,EAAE,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;YAC1B,IAAI,CAAC,EAAE,IAAI,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC,KAAK,SAAS,CAAC,EAAE,EAAE,EAAE,CAAC;gBAAE,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC;QAC9F,CAAC;IACH,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAuBD;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAAgB,EAChB,gBAAqC,EACrC,OAAqB,EACrB,OAA+B;IAE/B,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IACrC,MAAM,WAAW,GAAG,IAAI,GAAG,EAAuB,CAAC;IACnD,IAAI,OAAO,GAAG,KAAK,CAAC;IAEpB;+EAC2E;IAC3E,MAAM,UAAU,GAAG,CAAC,KAAyB,EAAE,SAAiB,EAAE,GAAW,EAAU,EAAE;QACvF,IAAI,QAAQ,GAAG,IAAI,CAAC;QACpB,OAAO,SAAS,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC;YACjC,QAAQ,GAAG,KAAK,CAAC;YACjB,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,IAAI,SAAS,IAAI,CAAC;oBAAE,MAAM;gBAC1B,IAAI,OAAO,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC;oBAAE,SAAS;gBAC1D,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;gBAC9C,IAAI,GAAG,IAAI,GAAG;oBAAE,SAAS;gBACzB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC;gBACtC,SAAS,EAAE,CAAC;gBACZ,OAAO,GAAG,IAAI,CAAC;gBACf,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;QACH,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC,CAAC;IAEF,KAAK,MAAM,GAAG,IAAI,iBAAiB,CAAC,GAAG,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAC3D,IAAI,SAAS,GAAG,GAAG,CAAC,QAAQ,CAAC;QAE7B,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU;aAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC;aACnC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;QAC1D,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAExE,IAAI,SAAS,GAAG,CAAC,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;YAC/C,MAAM,QAAQ,GAAG,GAAG,CAAC,UAAU;iBAC5B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,SAAS,CAAC;iBACnC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;YACrC,SAAS,GAAG,UAAU,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,iBAAiB,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,SAAS,GAAG,CAAC,IAAI,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAChD,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU;iBAC/B,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC;iBACtC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;YACrC,SAAS,GAAG,UAAU,CAAC,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC,kBAAkB,CAAC,CAAC;QAC7E,CAAC;QAED,IACE,SAAS,GAAG,CAAC;eACV,OAAO,CAAC,eAAe;eACvB,OAAO,CAAC,mBAAmB,EAC9B,CAAC;YACD,MAAM,WAAW,GAAG,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,gBAAgB,CAAC,CAAC;YAC9E,oEAAoE;YACpE,mEAAmE;YACnE,mEAAmE;YACnE,iBAAiB;YACjB,MAAM,YAAY,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC;YACjF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,kBAAkB,GAAG,YAAY,EAAE,SAAS,CAAC,CAAC;YAC5E,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;gBACb,MAAM,MAAM,GAAgB,EAAE,KAAK,EAAE,GAAG,CAAC,SAAS,GAAG,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC;gBACpF,MAAM,KAAK,GAAG,WAAW;qBACtB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;qBACrF,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;gBAClE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;oBAChC,WAAW,CAAC,GAAG,CAAC,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;oBAC3C,OAAO,GAAG,IAAI,CAAC;gBACjB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,CAAC;AAChD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"continuation.d.ts","sourceRoot":"","sources":["../../src/pipeline/continuation.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAmB,kBAAkB,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAKnG;;;yCAGyC;AACzC,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,WAAW,CAAC,EACvD,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,kBAAkB,GAC1B,kBAAkB,CAgBpB"}
1
+ {"version":3,"file":"continuation.d.ts","sourceRoot":"","sources":["../../src/pipeline/continuation.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAmB,kBAAkB,EAAa,aAAa,EAAE,cAAc,EAAE,MAAM,UAAU,CAAC;AAM9G;;;yCAGyC;AACzC,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,IAAI,CAAC,cAAc,EAAE,UAAU,GAAG,WAAW,CAAC,EACvD,MAAM,CAAC,EAAE,aAAa,EACtB,MAAM,CAAC,EAAE,kBAAkB,GAC1B,kBAAkB,CA0BpB"}
@@ -1,5 +1,6 @@
1
1
  // What a document laid out after another one inherits from it — the
2
- // counter half of `PostextContent.continuation`. Pure over the parsed
2
+ // counter half of `PostextContent.continuation`, plus the part left open.
3
+ // Pure over the parsed
3
4
  // markdown: no layout is involved, so the page half (`pageIndexOffset`,
4
5
  // `pageNumbering`) is left to the caller, which knows how many pages the
5
6
  // preceding content produced and how its last page was numbered.
@@ -7,6 +8,7 @@ import { extractFrontmatter } from '../frontmatter';
7
8
  import { parseMarkdownMemo } from '../parse';
8
9
  import { defaultResourceTypes } from '../defaults';
9
10
  import { computeHeadingContext, computeResourceNumberingState } from './resourceNumbering';
11
+ import { planParts } from './parts';
10
12
  const NO_HEADINGS = { h1: 0, h2: 0, h3: 0, h4: 0, h5: 0, h6: 0 };
11
13
  /** The counters a document laid out after `content` continues from: what
12
14
  * `content` itself inherited (`before`) advanced by its headings and
@@ -21,6 +23,16 @@ export function continuationAfter(content, config, before) {
21
23
  : before?.headings ?? NO_HEADINGS;
22
24
  const resourceTypes = config?.resourceTypes ?? defaultResourceTypes();
23
25
  const { map, counters } = computeResourceNumberingState(blocks, resourceTypes, content.resources ?? [], headingContext, before ? { counters: before.resourceCounters, numbered: before.resourceNumbers } : undefined);
24
- return { headings, resourceCounters: counters, resourceNumbers: map };
26
+ // The last part opened in `content` (its fence may well have closed —
27
+ // a part stays in effect until the next one), else the inherited one.
28
+ let part = before?.part;
29
+ for (const planned of planParts(blocks).byStart.values()) {
30
+ part = {
31
+ number: planned.number,
32
+ title: planned.title,
33
+ ...(Object.keys(planned.palette).length > 0 ? { palette: planned.palette } : {}),
34
+ };
35
+ }
36
+ return { headings, resourceCounters: counters, resourceNumbers: map, ...(part ? { part } : {}) };
25
37
  }
26
38
  //# sourceMappingURL=continuation.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"continuation.js","sourceRoot":"","sources":["../../src/pipeline/continuation.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,sEAAsE;AACtE,wEAAwE;AACxE,yEAAyE;AACzE,iEAAiE;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAE3F,MAAM,WAAW,GAAoB,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AAElF;;;yCAGyC;AACzC,MAAM,UAAU,iBAAiB,CAC/B,OAAuD,EACvD,MAAsB,EACtB,MAA2B;IAE3B,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;IAC1D,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;QACxC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAE;QAC5C,CAAC,CAAC,MAAM,EAAE,QAAQ,IAAI,WAAW,CAAC;IACpC,MAAM,aAAa,GAAG,MAAM,EAAE,aAAa,IAAI,oBAAoB,EAAE,CAAC;IACtE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,6BAA6B,CACrD,MAAM,EACN,aAAa,EACb,OAAO,CAAC,SAAS,IAAI,EAAE,EACvB,cAAc,EACd,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS,CAC7F,CAAC;IACF,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,EAAE,CAAC;AACxE,CAAC"}
1
+ {"version":3,"file":"continuation.js","sourceRoot":"","sources":["../../src/pipeline/continuation.ts"],"names":[],"mappings":"AAAA,oEAAoE;AACpE,0EAA0E;AAC1E,uBAAuB;AACvB,wEAAwE;AACxE,yEAAyE;AACzE,iEAAiE;AAEjE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AAEnD,OAAO,EAAE,qBAAqB,EAAE,6BAA6B,EAAE,MAAM,qBAAqB,CAAC;AAC3F,OAAO,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AAEpC,MAAM,WAAW,GAAoB,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC;AAElF;;;yCAGyC;AACzC,MAAM,UAAU,iBAAiB,CAC/B,OAAuD,EACvD,MAAsB,EACtB,MAA2B;IAE3B,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC,OAAO,CAAC;IAC1D,MAAM,MAAM,GAAG,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,qBAAqB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACvE,MAAM,QAAQ,GAAG,cAAc,CAAC,MAAM,GAAG,CAAC;QACxC,CAAC,CAAC,cAAc,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,CAAE;QAC5C,CAAC,CAAC,MAAM,EAAE,QAAQ,IAAI,WAAW,CAAC;IACpC,MAAM,aAAa,GAAG,MAAM,EAAE,aAAa,IAAI,oBAAoB,EAAE,CAAC;IACtE,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,GAAG,6BAA6B,CACrD,MAAM,EACN,aAAa,EACb,OAAO,CAAC,SAAS,IAAI,EAAE,EACvB,cAAc,EACd,MAAM,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,SAAS,CAC7F,CAAC;IACF,sEAAsE;IACtE,sEAAsE;IACtE,IAAI,IAAI,GAA0B,MAAM,EAAE,IAAI,CAAC;IAC/C,KAAK,MAAM,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACzD,IAAI,GAAG;YACL,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,QAAQ,EAAE,eAAe,EAAE,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;AACnG,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"headerFooter.d.ts","sourceRoot":"","sources":["../../src/pipeline/headerFooter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAA6B,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC5H,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,aAAa,EAMnB,MAAM,QAAQ,CAAC;AAQhB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAEL,KAAK,YAAY,EAKlB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AA6GvE;;;;;;;mDAOmD;AACnD,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAC9G,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,MAAM;AACjB;;;;oCAIoC;AACpC,MAAM,CAAC,EAAE,YAAY;AACrB;+CAC+C;AAC/C,MAAM,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAChC,MAAM,CAgCR;AAED,wDAAwD;AACxD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;iEAC6D;IAC7D,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAClF;qEACiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAClE,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,wBAAwB,EACtC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,gBAAgB,GACxB,aAAa,GAAG,SAAS,CA+C3B;AAsID;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CA2O7D"}
1
+ {"version":3,"file":"headerFooter.d.ts","sourceRoot":"","sources":["../../src/pipeline/headerFooter.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,kBAAkB,EAA6B,0BAA0B,EAAE,MAAM,UAAU,CAAC;AAC5H,OAAO,EAGL,KAAK,WAAW,EAChB,KAAK,aAAa,EAMnB,MAAM,QAAQ,CAAC;AAQhB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EAEL,KAAK,YAAY,EAKlB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wBAAwB,CAAC;AA6GvE;;;;;;;mDAOmD;AACnD,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,EAC9G,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,gBAAgB,EAC1B,SAAS,EAAE,MAAM;AACjB;;;;oCAIoC;AACpC,MAAM,CAAC,EAAE,YAAY;AACrB;+CAC+C;AAC/C,MAAM,CAAC,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,GAChC,MAAM,CAgCR;AAED,wDAAwD;AACxD,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB;iEAC6D;IAC7D,WAAW,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAClF;qEACiE;IACjE,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC7D,KAAK,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAChC;AAED,wBAAgB,eAAe,CAC7B,IAAI,EAAE,kBAAkB,EACxB,SAAS,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAClE,SAAS,EAAE,MAAM,EACjB,YAAY,EAAE,wBAAwB,EACtC,GAAG,EAAE,MAAM,EACX,MAAM,CAAC,EAAE,gBAAgB,GACxB,aAAa,GAAG,SAAS,CA+C3B;AAsID;;GAEG;AACH,wBAAgB,sBAAsB,CAAC,GAAG,EAAE,WAAW,GAAG,IAAI,CAiP7D"}
@@ -329,7 +329,7 @@ export function buildHeadersAndFooters(doc) {
329
329
  // Parity (odd/even elements) counts the pages before a continued document.
330
330
  const pageIndexOffset = doc.pageIndexOffset ?? 0;
331
331
  const chapterAttrsByPageIndex = computeChapterAttrs(doc.blocks, doc.pages.length, doc.pages);
332
- const { partTitleByPageIndex, partNumberByPageIndex } = computePartValues(doc.pages);
332
+ const { partTitleByPageIndex, partNumberByPageIndex, partPaletteByPageIndex } = computePartValues(doc.pages, doc.partStart);
333
333
  const headingLevelByNumber = buildHeadingLevelMap(resolved);
334
334
  for (const page of doc.pages) {
335
335
  // Per-page content area: mirrored margins swap inner/outer on even pages.
@@ -346,6 +346,7 @@ export function buildHeadersAndFooters(doc) {
346
346
  chapterAttrsByPageIndex,
347
347
  partTitleByPageIndex,
348
348
  partNumberByPageIndex,
349
+ partPaletteByPageIndex,
349
350
  };
350
351
  page.header = layoutSlotToVdt(resolved.header, headerContainerBbox(contentArea), page.index + pageIndexOffset, placeholders, dpi, extras);
351
352
  }
@@ -367,6 +368,7 @@ export function buildHeadersAndFooters(doc) {
367
368
  chapterAttrsByPageIndex,
368
369
  partTitleByPageIndex,
369
370
  partNumberByPageIndex,
371
+ partPaletteByPageIndex,
370
372
  heading: {
371
373
  titleText: title.replace(TITLE_BREAK_RE, '\n'),
372
374
  formattedNumber: number,
@@ -393,6 +395,7 @@ export function buildHeadersAndFooters(doc) {
393
395
  chapterAttrsByPageIndex,
394
396
  partTitleByPageIndex,
395
397
  partNumberByPageIndex,
398
+ partPaletteByPageIndex,
396
399
  heading: {
397
400
  titleText: title.replace(TITLE_BREAK_RE, '\n'),
398
401
  formattedNumber: number,
@@ -426,6 +429,7 @@ export function buildHeadersAndFooters(doc) {
426
429
  chapterAttrsByPageIndex,
427
430
  partTitleByPageIndex,
428
431
  partNumberByPageIndex,
432
+ partPaletteByPageIndex,
429
433
  heading: {
430
434
  titleText: opener.titleText,
431
435
  formattedNumber: opener.numberPrefix,
@@ -485,6 +489,7 @@ export function buildHeadersAndFooters(doc) {
485
489
  chapterAttrsByPageIndex,
486
490
  partTitleByPageIndex,
487
491
  partNumberByPageIndex,
492
+ partPaletteByPageIndex,
488
493
  heading: {
489
494
  titleText: title,
490
495
  formattedNumber: pref,
@@ -508,6 +513,7 @@ export function buildHeadersAndFooters(doc) {
508
513
  chapterAttrsByPageIndex,
509
514
  partTitleByPageIndex,
510
515
  partNumberByPageIndex,
516
+ partPaletteByPageIndex,
511
517
  };
512
518
  page.footer = layoutSlotToVdt(resolved.footer, footerContainerBbox(contentArea, page.height), page.index + pageIndexOffset, placeholders, dpi, extras);
513
519
  }
@@ -1 +1 @@
1
- {"version":3,"file":"headerFooter.js","sourceRoot":"","sources":["../../src/pipeline/headerFooter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"headerFooter.js","sourceRoot":"","sources":["../../src/pipeline/headerFooter.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,9 @@ export interface PlannedPart {
17
17
  number: string;
18
18
  /** `title` attribute; `''` when absent. */
19
19
  title: string;
20
+ /** `palette` attribute parsed: palette id → hex colour (see
21
+ * {@link parsePartPalette}); empty when absent. */
22
+ palette: Record<string, string>;
20
23
  }
21
24
  export interface PartPlan {
22
25
  /** Start-marker index → part. */
@@ -28,6 +31,12 @@ export interface PartPlan {
28
31
  byBlock: Array<PlannedPart | undefined>;
29
32
  }
30
33
  export declare function planParts(contentBlocks: readonly ContentBlock[]): PartPlan;
34
+ /** Parse a part's `palette` attribute — `"band=#f6c297, band-grey: #fadec7"`
35
+ * — into palette id → hex. Pairs are separated by commas, semicolons or
36
+ * whitespace; `=` or `:` joins id and colour; a colour must be a 3-, 6- or
37
+ * 8-digit hex (the `#` is optional and normalised in). Malformed pairs are
38
+ * skipped. */
39
+ export declare function parsePartPalette(attr: string | undefined): Record<string, string>;
31
40
  /** Numeric value of a part number written as a decimal (`'3'`) or a roman
32
41
  * numeral (`'III'`, `'iv'`), so `{numberDecimal}` / `{numberRoman}` work
33
42
  * whichever way the author wrote it. `undefined` for anything else. */
@@ -1 +1 @@
1
- {"version":3,"file":"parts.d.ts","sourceRoot":"","sources":["../../src/pipeline/parts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAQ7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,WAAW,WAAW;IAC1B,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACvB,iCAAiC;IACjC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClC,+BAA+B;IAC/B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChC;+DAC2D;IAC3D,OAAO,EAAE,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;CACzC;AAED,wBAAgB,SAAS,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,GAAG,QAAQ,CAgC1E;AAOD;;wEAEwE;AACxE,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgB/D;AAmID;;;;;;uEAMuE;AACvE,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,CA0BjF;AAED;;iCAEiC;AACjC,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,mBAAmB,GAAG,mBAAmB,CAqBtF"}
1
+ {"version":3,"file":"parts.d.ts","sourceRoot":"","sources":["../../src/pipeline/parts.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,QAAQ,CAAC;AAQ7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEjE,MAAM,WAAW,WAAW;IAC1B,0DAA0D;IAC1D,QAAQ,EAAE,MAAM,CAAC;IACjB,iEAAiE;IACjE,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,yEAAyE;IACzE,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IACd;wDACoD;IACpD,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACjC;AAED,MAAM,WAAW,QAAQ;IACvB,iCAAiC;IACjC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAClC,+BAA+B;IAC/B,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAChC;+DAC2D;IAC3D,OAAO,EAAE,KAAK,CAAC,WAAW,GAAG,SAAS,CAAC,CAAC;CACzC;AAED,wBAAgB,SAAS,CAAC,aAAa,EAAE,SAAS,YAAY,EAAE,GAAG,QAAQ,CAiC1E;AAED;;;;eAIe;AACf,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAMjF;AAOD;;wEAEwE;AACxE,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAgB/D;AAmID;;;;;;uEAMuE;AACvE,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,cAAc,GAAG,cAAc,CA0BjF;AAED;;iCAEiC;AACjC,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,mBAAmB,GAAG,mBAAmB,CAqBtF"}
@@ -26,6 +26,7 @@ export function planParts(contentBlocks) {
26
26
  containerId: b.containerId,
27
27
  number: (attrs.number ?? '').trim(),
28
28
  title: (attrs.title ?? '').trim(),
29
+ palette: parsePartPalette(attrs.palette),
29
30
  };
30
31
  open = { part, depth: 0 };
31
32
  continue;
@@ -48,6 +49,20 @@ export function planParts(contentBlocks) {
48
49
  }
49
50
  return { byStart, byEnd, byBlock };
50
51
  }
52
+ /** Parse a part's `palette` attribute — `"band=#f6c297, band-grey: #fadec7"`
53
+ * — into palette id → hex. Pairs are separated by commas, semicolons or
54
+ * whitespace; `=` or `:` joins id and colour; a colour must be a 3-, 6- or
55
+ * 8-digit hex (the `#` is optional and normalised in). Malformed pairs are
56
+ * skipped. */
57
+ export function parsePartPalette(attr) {
58
+ const out = {};
59
+ if (!attr)
60
+ return out;
61
+ const pair = /(?:^|[,;\s])([A-Za-z0-9_-]+)\s*[=:]\s*#?([0-9A-Fa-f]{8}|[0-9A-Fa-f]{6}|[0-9A-Fa-f]{3})(?=$|[,;\s])/g;
62
+ for (const m of attr.matchAll(pair))
63
+ out[m[1]] = `#${m[2].toLowerCase()}`;
64
+ return out;
65
+ }
51
66
  const ROMAN_RE = /^M{0,4}(CM|CD|D?C{0,3})(XC|XL|L?X{0,3})(IX|IV|V?I{0,3})$/i;
52
67
  const ROMAN_VALUES = {
53
68
  M: 1000, D: 500, C: 100, L: 50, X: 10, V: 5, I: 1,
@@ -1 +1 @@
1
- {"version":3,"file":"parts.js","sourceRoot":"","sources":["../../src/pipeline/parts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parts.js","sourceRoot":"","sources":["../../src/pipeline/parts.ts"],"names":[],"mappings":"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"}