@nowline/layout 0.8.6 → 0.10.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/axis-columns.d.ts +70 -0
- package/dist/axis-columns.d.ts.map +1 -0
- package/dist/axis-columns.js +104 -0
- package/dist/axis-columns.js.map +1 -0
- package/dist/calendar-resolver.d.ts +27 -0
- package/dist/calendar-resolver.d.ts.map +1 -0
- package/dist/calendar-resolver.js +132 -0
- package/dist/calendar-resolver.js.map +1 -0
- package/dist/calendar.d.ts +0 -19
- package/dist/calendar.d.ts.map +1 -1
- package/dist/calendar.js +4 -44
- package/dist/calendar.js.map +1 -1
- package/dist/canvas-width.d.ts +23 -0
- package/dist/canvas-width.d.ts.map +1 -0
- package/dist/canvas-width.js +26 -0
- package/dist/canvas-width.js.map +1 -0
- package/dist/capacity.d.ts +28 -0
- package/dist/capacity.d.ts.map +1 -1
- package/dist/capacity.js +64 -29
- package/dist/capacity.js.map +1 -1
- package/dist/chart-translation.d.ts +22 -0
- package/dist/chart-translation.d.ts.map +1 -0
- package/dist/chart-translation.js +83 -0
- package/dist/chart-translation.js.map +1 -0
- package/dist/container-header-geometry.d.ts +64 -0
- package/dist/container-header-geometry.d.ts.map +1 -0
- package/dist/container-header-geometry.js +89 -0
- package/dist/container-header-geometry.js.map +1 -0
- package/dist/dsl-utils.d.ts +3 -4
- package/dist/dsl-utils.d.ts.map +1 -1
- package/dist/dsl-utils.js +8 -25
- package/dist/dsl-utils.js.map +1 -1
- package/dist/edge-routing.d.ts +69 -78
- package/dist/edge-routing.d.ts.map +1 -1
- package/dist/edge-routing.js +271 -401
- package/dist/edge-routing.js.map +1 -1
- package/dist/frame-tab-geometry.d.ts +24 -14
- package/dist/frame-tab-geometry.d.ts.map +1 -1
- package/dist/frame-tab-geometry.js +69 -23
- package/dist/frame-tab-geometry.js.map +1 -1
- package/dist/header-card-geometry.d.ts +12 -0
- package/dist/header-card-geometry.d.ts.map +1 -1
- package/dist/header-card-geometry.js +14 -2
- package/dist/header-card-geometry.js.map +1 -1
- package/dist/header-logo.d.ts +28 -0
- package/dist/header-logo.d.ts.map +1 -0
- package/dist/header-logo.js +51 -0
- package/dist/header-logo.js.map +1 -0
- package/dist/i18n.d.ts +11 -0
- package/dist/i18n.d.ts.map +1 -1
- package/dist/i18n.js +11 -1
- package/dist/i18n.js.map +1 -1
- package/dist/index.d.ts +20 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +17 -7
- package/dist/index.js.map +1 -1
- package/dist/inline-date-pin-geometry.d.ts +19 -11
- package/dist/inline-date-pin-geometry.d.ts.map +1 -1
- package/dist/inline-date-pin-geometry.js +45 -46
- package/dist/inline-date-pin-geometry.js.map +1 -1
- package/dist/item-bar-geometry.d.ts +192 -4
- package/dist/item-bar-geometry.d.ts.map +1 -1
- package/dist/item-bar-geometry.js +258 -5
- package/dist/item-bar-geometry.js.map +1 -1
- package/dist/item-port-geometry.d.ts +13 -0
- package/dist/item-port-geometry.d.ts.map +1 -0
- package/dist/item-port-geometry.js +63 -0
- package/dist/item-port-geometry.js.map +1 -0
- package/dist/layout-context.d.ts +115 -51
- package/dist/layout-context.d.ts.map +1 -1
- package/dist/layout-context.js +96 -5
- package/dist/layout-context.js.map +1 -1
- package/dist/layout-insights.d.ts.map +1 -1
- package/dist/layout-insights.js +73 -1
- package/dist/layout-insights.js.map +1 -1
- package/dist/layout.d.ts +35 -0
- package/dist/layout.d.ts.map +1 -1
- package/dist/layout.js +18 -1315
- package/dist/layout.js.map +1 -1
- package/dist/nodes/anchor-node.d.ts.map +1 -1
- package/dist/nodes/anchor-node.js +11 -4
- package/dist/nodes/anchor-node.js.map +1 -1
- package/dist/nodes/content-extent.d.ts +24 -0
- package/dist/nodes/content-extent.d.ts.map +1 -0
- package/dist/nodes/content-extent.js +100 -0
- package/dist/nodes/content-extent.js.map +1 -0
- package/dist/nodes/dependency-edges.d.ts +6 -0
- package/dist/nodes/dependency-edges.d.ts.map +1 -0
- package/dist/nodes/dependency-edges.js +148 -0
- package/dist/nodes/dependency-edges.js.map +1 -0
- package/dist/nodes/footnote-node.d.ts +24 -3
- package/dist/nodes/footnote-node.d.ts.map +1 -1
- package/dist/nodes/footnote-node.js +129 -25
- package/dist/nodes/footnote-node.js.map +1 -1
- package/dist/nodes/group-node.d.ts +10 -21
- package/dist/nodes/group-node.d.ts.map +1 -1
- package/dist/nodes/group-node.js +79 -152
- package/dist/nodes/group-node.js.map +1 -1
- package/dist/nodes/header-node.d.ts +56 -0
- package/dist/nodes/header-node.d.ts.map +1 -0
- package/dist/nodes/header-node.js +163 -0
- package/dist/nodes/header-node.js.map +1 -0
- package/dist/nodes/include-node.d.ts +22 -12
- package/dist/nodes/include-node.d.ts.map +1 -1
- package/dist/nodes/include-node.js +95 -62
- package/dist/nodes/include-node.js.map +1 -1
- package/dist/nodes/item-measure.d.ts +135 -0
- package/dist/nodes/item-measure.d.ts.map +1 -0
- package/dist/nodes/item-measure.js +514 -0
- package/dist/nodes/item-measure.js.map +1 -0
- package/dist/nodes/item-node.d.ts +162 -9
- package/dist/nodes/item-node.d.ts.map +1 -1
- package/dist/nodes/item-node.js +256 -69
- package/dist/nodes/item-node.js.map +1 -1
- package/dist/nodes/marker-band.d.ts +118 -0
- package/dist/nodes/marker-band.d.ts.map +1 -0
- package/dist/nodes/marker-band.js +303 -0
- package/dist/nodes/marker-band.js.map +1 -0
- package/dist/nodes/marker-geometry.js +1 -1
- package/dist/nodes/marker-geometry.js.map +1 -1
- package/dist/nodes/milestone-node.d.ts +112 -15
- package/dist/nodes/milestone-node.d.ts.map +1 -1
- package/dist/nodes/milestone-node.js +246 -95
- package/dist/nodes/milestone-node.js.map +1 -1
- package/dist/nodes/nowline-node.d.ts +8 -0
- package/dist/nodes/nowline-node.d.ts.map +1 -0
- package/dist/nodes/nowline-node.js +74 -0
- package/dist/nodes/nowline-node.js.map +1 -0
- package/dist/nodes/parallel-node.d.ts +7 -12
- package/dist/nodes/parallel-node.d.ts.map +1 -1
- package/dist/nodes/parallel-node.js +66 -30
- package/dist/nodes/parallel-node.js.map +1 -1
- package/dist/nodes/region-markers.d.ts +41 -0
- package/dist/nodes/region-markers.d.ts.map +1 -0
- package/dist/nodes/region-markers.js +130 -0
- package/dist/nodes/region-markers.js.map +1 -0
- package/dist/nodes/roadmap-node.d.ts +9 -72
- package/dist/nodes/roadmap-node.d.ts.map +1 -1
- package/dist/nodes/roadmap-node.js +38 -788
- package/dist/nodes/roadmap-node.js.map +1 -1
- package/dist/nodes/row-track.d.ts +33 -0
- package/dist/nodes/row-track.d.ts.map +1 -0
- package/dist/nodes/row-track.js +170 -0
- package/dist/nodes/row-track.js.map +1 -0
- package/dist/nodes/sequence-item.d.ts +25 -0
- package/dist/nodes/sequence-item.d.ts.map +1 -0
- package/dist/nodes/sequence-item.js +396 -0
- package/dist/nodes/sequence-item.js.map +1 -0
- package/dist/nodes/sequence-one.d.ts +5 -0
- package/dist/nodes/sequence-one.d.ts.map +1 -0
- package/dist/nodes/sequence-one.js +26 -0
- package/dist/nodes/sequence-one.js.map +1 -0
- package/dist/nodes/swimlane-node.d.ts +5 -17
- package/dist/nodes/swimlane-node.d.ts.map +1 -1
- package/dist/nodes/swimlane-node.js +62 -145
- package/dist/nodes/swimlane-node.js.map +1 -1
- package/dist/nodes/wave-node.d.ts +52 -0
- package/dist/nodes/wave-node.d.ts.map +1 -0
- package/dist/nodes/wave-node.js +483 -0
- package/dist/nodes/wave-node.js.map +1 -0
- package/dist/non-working-display.d.ts +14 -0
- package/dist/non-working-display.d.ts.map +1 -0
- package/dist/non-working-display.js +28 -0
- package/dist/non-working-display.js.map +1 -0
- package/dist/phases/date-window.d.ts +48 -0
- package/dist/phases/date-window.d.ts.map +1 -0
- package/dist/phases/date-window.js +130 -0
- package/dist/phases/date-window.js.map +1 -0
- package/dist/phases/finalize.d.ts +198 -0
- package/dist/phases/finalize.d.ts.map +1 -0
- package/dist/phases/finalize.js +1058 -0
- package/dist/phases/finalize.js.map +1 -0
- package/dist/phases/measure.d.ts +77 -0
- package/dist/phases/measure.d.ts.map +1 -0
- package/dist/phases/measure.js +222 -0
- package/dist/phases/measure.js.map +1 -0
- package/dist/phases/place.d.ts +28 -0
- package/dist/phases/place.d.ts.map +1 -0
- package/dist/phases/place.js +225 -0
- package/dist/phases/place.js.map +1 -0
- package/dist/renderable.d.ts.map +1 -1
- package/dist/renderable.js +23 -3
- package/dist/renderable.js.map +1 -1
- package/dist/resolve-today.d.ts +11 -1
- package/dist/resolve-today.d.ts.map +1 -1
- package/dist/resolve-today.js +26 -12
- package/dist/resolve-today.js.map +1 -1
- package/dist/row-packer.d.ts +42 -16
- package/dist/row-packer.d.ts.map +1 -1
- package/dist/row-packer.js +51 -78
- package/dist/row-packer.js.map +1 -1
- package/dist/schedule.d.ts +58 -1
- package/dist/schedule.d.ts.map +1 -1
- package/dist/schedule.js +280 -106
- package/dist/schedule.js.map +1 -1
- package/dist/start-rules.d.ts +27 -0
- package/dist/start-rules.d.ts.map +1 -0
- package/dist/start-rules.js +91 -0
- package/dist/start-rules.js.map +1 -0
- package/dist/start-terms.d.ts +23 -0
- package/dist/start-terms.d.ts.map +1 -0
- package/dist/start-terms.js +27 -0
- package/dist/start-terms.js.map +1 -0
- package/dist/status-dot.d.ts +46 -0
- package/dist/status-dot.d.ts.map +1 -0
- package/dist/status-dot.js +78 -0
- package/dist/status-dot.js.map +1 -0
- package/dist/style-resolution.d.ts.map +1 -1
- package/dist/style-resolution.js +23 -43
- package/dist/style-resolution.js.map +1 -1
- package/dist/text-measure.d.ts +28 -0
- package/dist/text-measure.d.ts.map +1 -0
- package/dist/text-measure.js +70 -0
- package/dist/text-measure.js.map +1 -0
- package/dist/themes/contrast.d.ts +4 -0
- package/dist/themes/contrast.d.ts.map +1 -0
- package/dist/themes/contrast.js +32 -0
- package/dist/themes/contrast.js.map +1 -0
- package/dist/themes/dark.d.ts.map +1 -1
- package/dist/themes/dark.js +28 -1
- package/dist/themes/dark.js.map +1 -1
- package/dist/themes/grayscale.d.ts.map +1 -1
- package/dist/themes/grayscale.js +28 -1
- package/dist/themes/grayscale.js.map +1 -1
- package/dist/themes/index.d.ts +4 -11
- package/dist/themes/index.d.ts.map +1 -1
- package/dist/themes/index.js +6 -4
- package/dist/themes/index.js.map +1 -1
- package/dist/themes/light.d.ts.map +1 -1
- package/dist/themes/light.js +28 -1
- package/dist/themes/light.js.map +1 -1
- package/dist/themes/shape.d.ts +31 -0
- package/dist/themes/shape.d.ts.map +1 -1
- package/dist/themes/shared.d.ts +44 -50
- package/dist/themes/shared.d.ts.map +1 -1
- package/dist/themes/shared.js +79 -83
- package/dist/themes/shared.js.map +1 -1
- package/dist/time-scale.d.ts +42 -6
- package/dist/time-scale.d.ts.map +1 -1
- package/dist/time-scale.js +109 -17
- package/dist/time-scale.js.map +1 -1
- package/dist/types.d.ts +528 -11
- package/dist/types.d.ts.map +1 -1
- package/dist/view-preset.d.ts +61 -6
- package/dist/view-preset.d.ts.map +1 -1
- package/dist/view-preset.js +439 -24
- package/dist/view-preset.js.map +1 -1
- package/dist/wave-barrier.d.ts +107 -0
- package/dist/wave-barrier.d.ts.map +1 -0
- package/dist/wave-barrier.js +174 -0
- package/dist/wave-barrier.js.map +1 -0
- package/dist/wave-hatch.d.ts +4 -0
- package/dist/wave-hatch.d.ts.map +1 -0
- package/dist/wave-hatch.js +21 -0
- package/dist/wave-hatch.js.map +1 -0
- package/dist/wave-layout.d.ts +99 -0
- package/dist/wave-layout.d.ts.map +1 -0
- package/dist/wave-layout.js +130 -0
- package/dist/wave-layout.js.map +1 -0
- package/dist/working-calendar.d.ts +128 -4
- package/dist/working-calendar.d.ts.map +1 -1
- package/dist/working-calendar.js +725 -51
- package/dist/working-calendar.js.map +1 -1
- package/dist/working-span.d.ts +11 -0
- package/dist/working-span.d.ts.map +1 -0
- package/dist/working-span.js +18 -0
- package/dist/working-span.js.map +1 -0
- package/package.json +4 -4
- package/src/axis-columns.ts +140 -0
- package/src/calendar-resolver.ts +161 -0
- package/src/calendar.ts +4 -45
- package/src/canvas-width.ts +36 -0
- package/src/capacity.ts +71 -30
- package/src/chart-translation.ts +88 -0
- package/src/container-header-geometry.ts +116 -0
- package/src/dsl-utils.ts +8 -26
- package/src/edge-routing.ts +347 -491
- package/src/frame-tab-geometry.ts +78 -25
- package/src/header-card-geometry.ts +17 -2
- package/src/header-logo.ts +67 -0
- package/src/i18n.ts +22 -1
- package/src/index.ts +97 -12
- package/src/inline-date-pin-geometry.ts +55 -58
- package/src/item-bar-geometry.ts +341 -5
- package/src/item-port-geometry.ts +69 -0
- package/src/layout-context.ts +210 -72
- package/src/layout-insights.ts +109 -2
- package/src/layout.ts +57 -1530
- package/src/nodes/anchor-node.ts +11 -4
- package/src/nodes/content-extent.ts +107 -0
- package/src/nodes/dependency-edges.ts +171 -0
- package/src/nodes/footnote-node.ts +171 -31
- package/src/nodes/group-node.ts +92 -214
- package/src/nodes/header-node.ts +255 -0
- package/src/nodes/include-node.ts +124 -110
- package/src/nodes/item-measure.ts +723 -0
- package/src/nodes/item-node.ts +358 -80
- package/src/nodes/marker-band.ts +406 -0
- package/src/nodes/marker-geometry.ts +1 -1
- package/src/nodes/milestone-node.ts +321 -136
- package/src/nodes/nowline-node.ts +87 -0
- package/src/nodes/parallel-node.ts +69 -38
- package/src/nodes/region-markers.ts +194 -0
- package/src/nodes/roadmap-node.ts +46 -950
- package/src/nodes/row-track.ts +217 -0
- package/src/nodes/sequence-item.ts +433 -0
- package/src/nodes/sequence-one.ts +40 -0
- package/src/nodes/swimlane-node.ts +66 -205
- package/src/nodes/wave-node.ts +609 -0
- package/src/non-working-display.ts +32 -0
- package/src/phases/date-window.ts +191 -0
- package/src/phases/finalize.ts +1303 -0
- package/src/phases/measure.ts +329 -0
- package/src/phases/place.ts +318 -0
- package/src/renderable.ts +23 -3
- package/src/resolve-today.ts +28 -25
- package/src/row-packer.ts +85 -84
- package/src/schedule.ts +362 -114
- package/src/start-rules.ts +113 -0
- package/src/start-terms.ts +38 -0
- package/src/status-dot.ts +81 -0
- package/src/style-resolution.ts +27 -57
- package/src/text-measure.ts +71 -0
- package/src/themes/contrast.ts +34 -0
- package/src/themes/dark.ts +28 -1
- package/src/themes/grayscale.ts +28 -1
- package/src/themes/index.ts +10 -7
- package/src/themes/light.ts +28 -1
- package/src/themes/shape.ts +38 -0
- package/src/themes/shared.ts +85 -93
- package/src/time-scale.ts +117 -19
- package/src/types.ts +529 -20
- package/src/view-preset.ts +520 -27
- package/src/wave-barrier.ts +242 -0
- package/src/wave-hatch.ts +25 -0
- package/src/wave-layout.ts +203 -0
- package/src/working-calendar.ts +875 -57
- package/src/working-span.ts +19 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"finalize.js","sourceRoot":"","sources":["../../src/phases/finalize.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
import type { NowlineFile, ResolveResult } from '@nowline/core';
|
|
2
|
+
import type { LayoutOptions } from '../layout.js';
|
|
3
|
+
import { HeaderNode, type MeasuredHeader } from '../nodes/header-node.js';
|
|
4
|
+
import { type DatePinnedMarker } from '../nodes/marker-band.js';
|
|
5
|
+
import { TimeScale } from '../time-scale.js';
|
|
6
|
+
import type { MarkerRowPlacement, PositionedTimelineScale } from '../types.js';
|
|
7
|
+
import { type ViewPreset } from '../view-preset.js';
|
|
8
|
+
import type { DateWindow, RoadmapScope } from './date-window.js';
|
|
9
|
+
export interface MeasuredRoadmap {
|
|
10
|
+
header: MeasuredHeader;
|
|
11
|
+
/** The node that measured the header; finalize places it (f15). */
|
|
12
|
+
headerNode: HeaderNode;
|
|
13
|
+
/** The natural axis. f2 keeps `originX` and `ppd` when it extends the scale. */
|
|
14
|
+
axis: {
|
|
15
|
+
originX: number;
|
|
16
|
+
ppd: number;
|
|
17
|
+
naturalWidth: number;
|
|
18
|
+
scale: TimeScale;
|
|
19
|
+
};
|
|
20
|
+
/** The canvas right edge before anything grows it: the natural axis plus a gutter. */
|
|
21
|
+
naturalChartRightX: number;
|
|
22
|
+
bands: HeaderBands;
|
|
23
|
+
/** Ticks and calendar runs for the natural window; f2 refreshes them. */
|
|
24
|
+
timeline: PositionedTimelineScale;
|
|
25
|
+
markers: MarkerEstimate;
|
|
26
|
+
}
|
|
27
|
+
/** The rows above the chart, top to bottom, and where the chart starts. */
|
|
28
|
+
export interface HeaderBands {
|
|
29
|
+
timelineY: number;
|
|
30
|
+
/**
|
|
31
|
+
* The now-pill row, reserved here when `today` falls inside the natural
|
|
32
|
+
* window. When the axis extension (f2) brings `today` in, f7 reserves it.
|
|
33
|
+
*/
|
|
34
|
+
pillRowHeight: number;
|
|
35
|
+
tickPanelY: number;
|
|
36
|
+
tickPanelHeight: number;
|
|
37
|
+
waveStripY: number;
|
|
38
|
+
markerRowY: number;
|
|
39
|
+
/** Rows the pre-pack needed. f7 grows the band when the final pack needs more. */
|
|
40
|
+
estimatedMarkerRows: number;
|
|
41
|
+
/** Height of the rows above: pill row, tick panel, wave strip, estimated marker band. */
|
|
42
|
+
rowsHeight: number;
|
|
43
|
+
chartTopY: number;
|
|
44
|
+
/** Height of the mirrored bottom tick panel (f8); 0 when there is none. */
|
|
45
|
+
bottomTickPanelHeight: number;
|
|
46
|
+
}
|
|
47
|
+
export interface MarkerEstimate {
|
|
48
|
+
/** Date-pinned anchors and milestones with their x; they seed the entity edges. */
|
|
49
|
+
datePinned: ReadonlyArray<DatePinnedMarker>;
|
|
50
|
+
/** Pre-pack placements, already at the band's y. */
|
|
51
|
+
placements: ReadonlyMap<string, MarkerRowPlacement>;
|
|
52
|
+
/**
|
|
53
|
+
* Whether the band is drawn at all: the roadmap declares an anchor or a
|
|
54
|
+
* milestone, or the natural window holds a titled run or a working
|
|
55
|
+
* exception.
|
|
56
|
+
*/
|
|
57
|
+
hasEntities: boolean;
|
|
58
|
+
}
|
|
59
|
+
export declare function measureRoadmap(file: NowlineFile, resolved: ResolveResult, options: LayoutOptions, scope: RoadmapScope, window: DateWindow): MeasuredRoadmap;
|
|
60
|
+
/**
|
|
61
|
+
* Where header rows `rowsHeight` tall start (the timeline y). In beside
|
|
62
|
+
* mode the header card's BOTTOM aligns with the bottom of the header rows
|
|
63
|
+
* so it visually anchors to the chart's top. When the card is taller than
|
|
64
|
+
* the rows + a 4 px top inset, push the timeline down so the card has room
|
|
65
|
+
* without clipping above the canvas.
|
|
66
|
+
*/
|
|
67
|
+
export declare function headerRowsTimelineY(header: MeasuredHeader, rowsHeight: number): number;
|
|
68
|
+
/**
|
|
69
|
+
* Set (or refresh) the timeline's non-working runs from its current ticks,
|
|
70
|
+
* and its working exceptions. `nonWorkingDisplay` and `nonWorking` stay
|
|
71
|
+
* omitted when the window holds no non-working day, and `workingExceptions`
|
|
72
|
+
* when it holds no exception, so a calendar without either keeps its exact
|
|
73
|
+
* model shape. The extension pass only grows the window, so a refresh never
|
|
74
|
+
* loses an entry.
|
|
75
|
+
*/
|
|
76
|
+
export declare function setCalendarRuns(timeline: PositionedTimelineScale, scale: TimeScale, unit: ViewPreset['unit']): void;
|
|
77
|
+
//# sourceMappingURL=measure.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measure.d.ts","sourceRoot":"","sources":["../../src/phases/measure.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,WAAW,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAIhE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,KAAK,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAC1E,OAAO,EAEH,KAAK,gBAAgB,EAKxB,MAAM,yBAAyB,CAAC;AAWjC,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,KAAK,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,EAIH,KAAK,UAAU,EAClB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAKjE,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,cAAc,CAAC;IACvB,mEAAmE;IACnE,UAAU,EAAE,UAAU,CAAC;IACvB,gFAAgF;IAChF,IAAI,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,SAAS,CAAA;KAAE,CAAC;IAC/E,sFAAsF;IACtF,kBAAkB,EAAE,MAAM,CAAC;IAC3B,KAAK,EAAE,WAAW,CAAC;IACnB,yEAAyE;IACzE,QAAQ,EAAE,uBAAuB,CAAC;IAClC,OAAO,EAAE,cAAc,CAAC;CAC3B;AAED,2EAA2E;AAC3E,MAAM,WAAW,WAAW;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,kFAAkF;IAClF,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yFAAyF;IACzF,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,2EAA2E;IAC3E,qBAAqB,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,cAAc;IAC3B,mFAAmF;IACnF,UAAU,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;IAC5C,oDAAoD;IACpD,UAAU,EAAE,WAAW,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;IACpD;;;;OAIG;IACH,WAAW,EAAE,OAAO,CAAC;CACxB;AAED,wBAAgB,cAAc,CAC1B,IAAI,EAAE,WAAW,EACjB,QAAQ,EAAE,aAAa,EACvB,OAAO,EAAE,aAAa,EACtB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,UAAU,GACnB,eAAe,CAiMjB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAEtF;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAC3B,QAAQ,EAAE,uBAAuB,EACjC,KAAK,EAAE,SAAS,EAChB,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,GACzB,IAAI,CAQN"}
|
|
@@ -0,0 +1,222 @@
|
|
|
1
|
+
// Phase 2, measure (specs/layout-phases.md §3.3): everything the chart is
|
|
2
|
+
// laid out around, sized before any lane is placed. The header (its card
|
|
3
|
+
// fixes the chart's left edge and top), pixels per day and the natural
|
|
4
|
+
// time scale, the header rows above the chart (now-pill row, tick panel,
|
|
5
|
+
// wave strip, marker band) and the timeline of the natural window.
|
|
6
|
+
//
|
|
7
|
+
// The marker band is an estimate: floating milestones get their x only
|
|
8
|
+
// from placement, and an extended axis can add calendar runs, so finalize
|
|
9
|
+
// packs every marker again (f5) and grows the band when it needs more
|
|
10
|
+
// rows (f7). Nothing here reads placement state.
|
|
11
|
+
import { cappedPixelsPerDay } from '../canvas-width.js';
|
|
12
|
+
import { propValue } from '../dsl-utils.js';
|
|
13
|
+
import { resolveHeaderLogo } from '../header-logo.js';
|
|
14
|
+
import { HeaderNode } from '../nodes/header-node.js';
|
|
15
|
+
import { calendarMarkerEntries, datePinnedMarkerEntries, markerLabelsRightX, markerRowPlacements, packMarkerRow, } from '../nodes/marker-band.js';
|
|
16
|
+
import { MARKER_ROW_CENTER_OFFSET_PX, MARKER_ROW_PITCH_PX } from '../nodes/marker-geometry.js';
|
|
17
|
+
import { hasVisibleWaves } from '../schedule.js';
|
|
18
|
+
import { resolveStyle } from '../style-resolution.js';
|
|
19
|
+
import { estimateTextWidth } from '../text-measure.js';
|
|
20
|
+
import { GUTTER_PX, HEADER_HEIGHT_PX, NOW_PILL_HEIGHT_PX, WAVE_STRIP_HEIGHT_PX, } from '../themes/shared.js';
|
|
21
|
+
import { TimeScale } from '../time-scale.js';
|
|
22
|
+
import { buildHeaderTicks, buildNonWorkingRuns, buildWorkingExceptions, } from '../view-preset.js';
|
|
23
|
+
/** Gap (px) between the header rows and the chart top. */
|
|
24
|
+
const HEADER_ROWS_TO_CHART_GAP_PX = 8;
|
|
25
|
+
export function measureRoadmap(file, resolved, options, scope, window) {
|
|
26
|
+
const { locale, styleCtx } = scope;
|
|
27
|
+
const { calendar, preset: scale, startDate, timelineDays, nonWorking } = window;
|
|
28
|
+
const endDate = window.naturalEndDate;
|
|
29
|
+
// Waves only draw when one has items (specs/waves.md §9.1).
|
|
30
|
+
const plan = hasVisibleWaves(window.schedule) ? window.schedule.plan : undefined;
|
|
31
|
+
const headerStyle = scope.roadmapStyle;
|
|
32
|
+
// `top` (default) keeps the legacy single-strip header; `bottom`
|
|
33
|
+
// suppresses the top tick panel (now-pill and marker row stay
|
|
34
|
+
// at the top because anchors / milestones live there); `both`
|
|
35
|
+
// mirrors the strip at the chart bottom too. See specs/dsl.md
|
|
36
|
+
// and specs/rendering.md § Timeline Scale.
|
|
37
|
+
// `header-height` sizes every tick panel (top and mirrored bottom);
|
|
38
|
+
// `none` drops them all, whatever `timeline-position` asks for.
|
|
39
|
+
const tickPanelBucketHeight = HEADER_HEIGHT_PX[headerStyle.headerHeight] ??
|
|
40
|
+
HEADER_HEIGHT_PX.md;
|
|
41
|
+
const showTopTickPanel = tickPanelBucketHeight > 0 && headerStyle.timelinePosition !== 'bottom';
|
|
42
|
+
const showBottomTickPanel = tickPanelBucketHeight > 0 &&
|
|
43
|
+
(headerStyle.timelinePosition === 'bottom' || headerStyle.timelinePosition === 'both');
|
|
44
|
+
// Measure the header: the beside card's size or the above band's
|
|
45
|
+
// height, which fix the chart's left edge and top. The company logo
|
|
46
|
+
// (when the caller loaded one) widens the card by its slot and can
|
|
47
|
+
// make it taller; see header-logo.ts.
|
|
48
|
+
const titleStr = file.roadmapDecl?.title ?? file.roadmapDecl?.name ?? '';
|
|
49
|
+
const authorStr = propValue(file.roadmapDecl?.properties ?? [], 'author');
|
|
50
|
+
const headerNode = new HeaderNode({
|
|
51
|
+
title: titleStr,
|
|
52
|
+
author: authorStr,
|
|
53
|
+
style: headerStyle,
|
|
54
|
+
logo: resolveHeaderLogo(file, options.logo),
|
|
55
|
+
});
|
|
56
|
+
const measuredHeader = headerNode.measure();
|
|
57
|
+
const { chartLeftX } = measuredHeader;
|
|
58
|
+
// The chart sizes to natural content width (date window × ppd) plus
|
|
59
|
+
// chrome padding. `options.width`, when set, is a best-effort
|
|
60
|
+
// maximum canvas width: it shrinks ppd (never below
|
|
61
|
+
// `MIN_PIXELS_PER_DAY`) so header card + gutters + timeline fit,
|
|
62
|
+
// but caption spills and run labels can still grow the canvas
|
|
63
|
+
// past it in finalize. The two `GUTTER_PX` insets keep the header
|
|
64
|
+
// card and attribution wordmark from butting against the canvas edges.
|
|
65
|
+
const ppd = cappedPixelsPerDay({
|
|
66
|
+
naturalPixelsPerDay: scale.pixelsPerUnit / calendar.daysPerUnit(scale.unit),
|
|
67
|
+
dayCount: timelineDays,
|
|
68
|
+
chromeWidth: chartLeftX + 2 * GUTTER_PX,
|
|
69
|
+
maxWidth: options.width,
|
|
70
|
+
});
|
|
71
|
+
const naturalWidth = timelineDays * ppd;
|
|
72
|
+
const originX = chartLeftX + GUTTER_PX;
|
|
73
|
+
const totalChartWidth = naturalWidth;
|
|
74
|
+
// Header layout (top → bottom):
|
|
75
|
+
// 1. Now-pill row (16 px) — only when there's a now-line
|
|
76
|
+
// 2. Tick-label panel (`header-height`, 24 px at md) — unless
|
|
77
|
+
// `timeline-position:bottom` or `header-height:none`
|
|
78
|
+
// 3. Wave strip (20 px) — only when the roadmap declares waves
|
|
79
|
+
// 4. Marker row (≥26 px) — sized to the packed row count
|
|
80
|
+
// 5. 8 px gap, then the chart begins
|
|
81
|
+
const willHaveNowline = options.today !== undefined && options.today >= startDate && options.today <= endDate;
|
|
82
|
+
const pillRowHeight = willHaveNowline ? NOW_PILL_HEIGHT_PX : 0;
|
|
83
|
+
// When `timeline-position:bottom` or `header-height:none` is set,
|
|
84
|
+
// the top tick panel collapses to height 0 — the now-pill and
|
|
85
|
+
// marker row stack directly without the date strip between them.
|
|
86
|
+
const tickPanelHeight = showTopTickPanel ? tickPanelBucketHeight : 0;
|
|
87
|
+
// The wave strip (specs/waves.md §8.8) has a fixed height, so the
|
|
88
|
+
// chart top is known before the barrier passes run; it sits above
|
|
89
|
+
// the marker rows, so the post-hoc marker re-pack never moves it.
|
|
90
|
+
const waveStripHeight = plan ? WAVE_STRIP_HEIGHT_PX : 0;
|
|
91
|
+
// Build the time scale up front — packMarkerRow needs it to
|
|
92
|
+
// resolve date-pinned entity x positions before we can size the
|
|
93
|
+
// marker row band.
|
|
94
|
+
const timeScale = new TimeScale({
|
|
95
|
+
domain: [startDate, endDate],
|
|
96
|
+
range: [originX, originX + naturalWidth],
|
|
97
|
+
calendar,
|
|
98
|
+
nonWorking,
|
|
99
|
+
});
|
|
100
|
+
// Titled non-working runs and working exceptions join the marker
|
|
101
|
+
// row (5b). These are provisional: they size the band before the
|
|
102
|
+
// timeline exists, and their ticks only decide `seam`, which the
|
|
103
|
+
// labels never read. Finalize re-packs with the final ones.
|
|
104
|
+
const provisionalRunEntries = calendarMarkerEntries(buildNonWorkingRuns(timeScale, [], scale.unit, false), buildWorkingExceptions(timeScale));
|
|
105
|
+
const hasMarkerEntities = resolved.content.anchors.size + resolved.content.milestones.size > 0 ||
|
|
106
|
+
provisionalRunEntries.length > 0;
|
|
107
|
+
// Initial canvas extent = natural date window + canonical
|
|
108
|
+
// gutters. Item caption spills are unknown until the swimlane
|
|
109
|
+
// pass runs and grow the canvas in finalize. The now-pill doesn't
|
|
110
|
+
// contribute here — `buildNowline` flips it to flag mode whenever a
|
|
111
|
+
// centered pill would clip an edge.
|
|
112
|
+
const naturalChartRightX = originX + totalChartWidth + GUTTER_PX;
|
|
113
|
+
// Resolve each date-pinned anchor and milestone's x. Used both for
|
|
114
|
+
// the marker-row pack and for `after:` resolution downstream — an
|
|
115
|
+
// item with `after:kickoff` would otherwise see an empty
|
|
116
|
+
// entityRightEdges entry and silently fall through to `cursor.x`
|
|
117
|
+
// (= the chart origin). After-only milestones still resolve later
|
|
118
|
+
// once their predecessors are known.
|
|
119
|
+
const datePinnedEntries = datePinnedMarkerEntries(resolved.content.anchors, resolved.content.milestones, timeScale);
|
|
120
|
+
// Pack the date-pinned markers. Each entity gets a row index
|
|
121
|
+
// (0 = in-row baseline, 1 = bumped down by one step, …) and a
|
|
122
|
+
// label box that may be flipped to the LEFT side when the natural
|
|
123
|
+
// right-side label would overflow the canvas. Earlier
|
|
124
|
+
// entries claim row 0; later ones drop to row 1+ when their
|
|
125
|
+
// bounding box (diamond + label) overlaps an already-placed
|
|
126
|
+
// entry. The renderer reads `labelBox.x/y` directly.
|
|
127
|
+
// Titled runs and working exceptions pack after the markers. Every
|
|
128
|
+
// entry packs against
|
|
129
|
+
// the right edge the post-layout canvas growth will give its label.
|
|
130
|
+
const preliminaryEntries = [...datePinnedEntries, ...provisionalRunEntries];
|
|
131
|
+
const packed = packMarkerRow(preliminaryEntries, chartLeftX, markerLabelsRightX(preliminaryEntries, chartLeftX, naturalChartRightX, estimateTextWidth), estimateTextWidth);
|
|
132
|
+
const markerRowsCount = hasMarkerEntities ? Math.max(1, packed.rowCount) : 0;
|
|
133
|
+
const markerRowHeight = markerRowsCount * MARKER_ROW_PITCH_PX;
|
|
134
|
+
const headerRowsHeight = pillRowHeight + tickPanelHeight + waveStripHeight + markerRowHeight;
|
|
135
|
+
const timelineHeightBudget = headerRowsHeight + HEADER_ROWS_TO_CHART_GAP_PX;
|
|
136
|
+
const timelineY = headerRowsTimelineY(measuredHeader, headerRowsHeight);
|
|
137
|
+
const tickPanelY = timelineY + pillRowHeight;
|
|
138
|
+
const waveStripY = tickPanelY + tickPanelHeight;
|
|
139
|
+
const markerRowY = waveStripY + waveStripHeight;
|
|
140
|
+
const ticks = buildHeaderTicks(timeScale, scale, calendar, locale);
|
|
141
|
+
const timeline = {
|
|
142
|
+
box: { x: originX, y: timelineY, width: naturalWidth, height: 0 },
|
|
143
|
+
ticks,
|
|
144
|
+
pixelsPerDay: ppd,
|
|
145
|
+
originX,
|
|
146
|
+
startDate,
|
|
147
|
+
endDate,
|
|
148
|
+
labelStyle: resolveStyle('roadmap', [], styleCtx),
|
|
149
|
+
pillRowHeight,
|
|
150
|
+
tickPanelY,
|
|
151
|
+
tickPanelHeight,
|
|
152
|
+
markerRow: {
|
|
153
|
+
y: markerRowY + MARKER_ROW_CENTER_OFFSET_PX,
|
|
154
|
+
height: markerRowHeight,
|
|
155
|
+
collisionY: markerRowY - 8,
|
|
156
|
+
},
|
|
157
|
+
// `bottomTickPanelY` / `bottomTickPanelHeight` are filled in by
|
|
158
|
+
// finalize, AFTER swimlanes + includes are placed (and after the
|
|
159
|
+
// marker re-pack potentially grows the chart), so the panel sits
|
|
160
|
+
// directly above the footnote area.
|
|
161
|
+
minorGrid: headerStyle.minorGrid,
|
|
162
|
+
...(plan ? { waveStrip: { y: waveStripY, height: waveStripHeight } } : {}),
|
|
163
|
+
};
|
|
164
|
+
setCalendarRuns(timeline, timeScale, scale.unit);
|
|
165
|
+
return {
|
|
166
|
+
header: measuredHeader,
|
|
167
|
+
headerNode,
|
|
168
|
+
axis: { originX, ppd, naturalWidth, scale: timeScale },
|
|
169
|
+
naturalChartRightX,
|
|
170
|
+
bands: {
|
|
171
|
+
timelineY,
|
|
172
|
+
pillRowHeight,
|
|
173
|
+
tickPanelY,
|
|
174
|
+
tickPanelHeight,
|
|
175
|
+
waveStripY,
|
|
176
|
+
markerRowY,
|
|
177
|
+
estimatedMarkerRows: markerRowsCount,
|
|
178
|
+
rowsHeight: headerRowsHeight,
|
|
179
|
+
chartTopY: timelineY + timelineHeightBudget,
|
|
180
|
+
bottomTickPanelHeight: showBottomTickPanel ? tickPanelBucketHeight : 0,
|
|
181
|
+
},
|
|
182
|
+
timeline,
|
|
183
|
+
markers: {
|
|
184
|
+
datePinned: datePinnedEntries,
|
|
185
|
+
// AnchorNode and MilestoneNode read these to recover both the y
|
|
186
|
+
// and the resolved label box; after-only milestones (not
|
|
187
|
+
// pre-positioned here) take the band's first row until the
|
|
188
|
+
// final pack.
|
|
189
|
+
placements: markerRowPlacements(packed.placements, markerRowY),
|
|
190
|
+
hasEntities: hasMarkerEntities,
|
|
191
|
+
},
|
|
192
|
+
};
|
|
193
|
+
}
|
|
194
|
+
/**
|
|
195
|
+
* Where header rows `rowsHeight` tall start (the timeline y). In beside
|
|
196
|
+
* mode the header card's BOTTOM aligns with the bottom of the header rows
|
|
197
|
+
* so it visually anchors to the chart's top. When the card is taller than
|
|
198
|
+
* the rows + a 4 px top inset, push the timeline down so the card has room
|
|
199
|
+
* without clipping above the canvas.
|
|
200
|
+
*/
|
|
201
|
+
export function headerRowsTimelineY(header, rowsHeight) {
|
|
202
|
+
return Math.max(header.chartTopY, header.minRowsBottomY - rowsHeight);
|
|
203
|
+
}
|
|
204
|
+
/**
|
|
205
|
+
* Set (or refresh) the timeline's non-working runs from its current ticks,
|
|
206
|
+
* and its working exceptions. `nonWorkingDisplay` and `nonWorking` stay
|
|
207
|
+
* omitted when the window holds no non-working day, and `workingExceptions`
|
|
208
|
+
* when it holds no exception, so a calendar without either keeps its exact
|
|
209
|
+
* model shape. The extension pass only grows the window, so a refresh never
|
|
210
|
+
* loses an entry.
|
|
211
|
+
*/
|
|
212
|
+
export function setCalendarRuns(timeline, scale, unit) {
|
|
213
|
+
const runs = buildNonWorkingRuns(scale, timeline.ticks, unit, timeline.minorGrid);
|
|
214
|
+
if (runs) {
|
|
215
|
+
timeline.nonWorkingDisplay = scale.showsNonWorking ? 'show' : 'hide';
|
|
216
|
+
timeline.nonWorking = runs;
|
|
217
|
+
}
|
|
218
|
+
const exceptions = buildWorkingExceptions(scale);
|
|
219
|
+
if (exceptions)
|
|
220
|
+
timeline.workingExceptions = exceptions;
|
|
221
|
+
}
|
|
222
|
+
//# sourceMappingURL=measure.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"measure.js","sourceRoot":"","sources":["../../src/phases/measure.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import type { ResolveResult, SwimlaneDeclaration } from '@nowline/core';
|
|
2
|
+
import { type LayoutContext, type LayoutHelpers } from '../layout-context.js';
|
|
3
|
+
import { type MilestonePlacement } from '../nodes/milestone-node.js';
|
|
4
|
+
import type { PositionedIncludeRegion, PositionedRoadmap, PositionedSwimlane } from '../types.js';
|
|
5
|
+
import type { DateWindow, RoadmapScope } from './date-window.js';
|
|
6
|
+
import type { MeasuredRoadmap } from './measure.js';
|
|
7
|
+
/** A placed chart, every y in the chart's local frame (top at 0) until f7 translates it. */
|
|
8
|
+
export interface PlacedChart {
|
|
9
|
+
/** Entity maps and placed items of the kept pass; finalize reads them, never writes placements. */
|
|
10
|
+
ctx: LayoutContext;
|
|
11
|
+
swimlanes: PositionedSwimlane[];
|
|
12
|
+
includes: PositionedIncludeRegion[];
|
|
13
|
+
/**
|
|
14
|
+
* Each kept region's own context, in `includes` order: its placed
|
|
15
|
+
* items and marker edges, which its dependency edges read (f11).
|
|
16
|
+
*/
|
|
17
|
+
regionContexts: LayoutContext[];
|
|
18
|
+
/** x, slack arrows and overrun; f6 adds the row and label box and builds `PositionedMilestone`. */
|
|
19
|
+
milestones: MilestonePlacement[];
|
|
20
|
+
laneEntries: SwimlaneDeclaration[];
|
|
21
|
+
/** Rightmost bar or spilled caption of the kept lane pass. */
|
|
22
|
+
maxRightX: number;
|
|
23
|
+
/** Bottom of the last lane or region (P5). */
|
|
24
|
+
bottomY: number;
|
|
25
|
+
waveSolve?: PositionedRoadmap['waveSolve'];
|
|
26
|
+
}
|
|
27
|
+
export declare function placeChart(resolved: ResolveResult, scope: RoadmapScope, window: DateWindow, measured: MeasuredRoadmap, helpers: LayoutHelpers): PlacedChart;
|
|
28
|
+
//# sourceMappingURL=place.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"place.d.ts","sourceRoot":"","sources":["../../src/phases/place.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EAAE,aAAa,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAIxE,OAAO,EAAuB,KAAK,aAAa,EAAE,KAAK,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAGnG,OAAO,EAGH,KAAK,kBAAkB,EAC1B,MAAM,4BAA4B,CAAC;AAOpC,OAAO,KAAK,EAAE,uBAAuB,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AASlG,OAAO,KAAK,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAKpD,4FAA4F;AAC5F,MAAM,WAAW,WAAW;IACxB,mGAAmG;IACnG,GAAG,EAAE,aAAa,CAAC;IACnB,SAAS,EAAE,kBAAkB,EAAE,CAAC;IAChC,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC;;;OAGG;IACH,cAAc,EAAE,aAAa,EAAE,CAAC;IAChC,mGAAmG;IACnG,UAAU,EAAE,kBAAkB,EAAE,CAAC;IACjC,WAAW,EAAE,mBAAmB,EAAE,CAAC;IACnC,8DAA8D;IAC9D,SAAS,EAAE,MAAM,CAAC;IAClB,8CAA8C;IAC9C,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,iBAAiB,CAAC,WAAW,CAAC,CAAC;CAC9C;AAED,wBAAgB,UAAU,CACtB,QAAQ,EAAE,aAAa,EACvB,KAAK,EAAE,YAAY,EACnB,MAAM,EAAE,UAAU,EAClB,QAAQ,EAAE,eAAe,EACzB,OAAO,EAAE,aAAa,GACvB,WAAW,CAiOb"}
|