@nowline/layout 0.0.0-dev.20261022060258.ga2b58c7 → 0.0.0-dev.20261023021135.ga07dccb

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 (50) hide show
  1. package/dist/i18n.d.ts +1 -16
  2. package/dist/i18n.d.ts.map +1 -1
  3. package/dist/i18n.js +0 -14
  4. package/dist/i18n.js.map +1 -1
  5. package/dist/index.d.ts +1 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.js +1 -1
  8. package/dist/index.js.map +1 -1
  9. package/dist/layout-insights.d.ts.map +1 -1
  10. package/dist/layout-insights.js +3 -6
  11. package/dist/layout-insights.js.map +1 -1
  12. package/dist/nodes/wave-node.d.ts +9 -22
  13. package/dist/nodes/wave-node.d.ts.map +1 -1
  14. package/dist/nodes/wave-node.js +37 -146
  15. package/dist/nodes/wave-node.js.map +1 -1
  16. package/dist/phases/finalize.d.ts.map +1 -1
  17. package/dist/phases/finalize.js +1 -6
  18. package/dist/phases/finalize.js.map +1 -1
  19. package/dist/phases/measure.d.ts.map +1 -1
  20. package/dist/phases/measure.js +3 -1
  21. package/dist/phases/measure.js.map +1 -1
  22. package/dist/phases/place.d.ts.map +1 -1
  23. package/dist/phases/place.js +2 -1
  24. package/dist/phases/place.js.map +1 -1
  25. package/dist/schedule.d.ts +6 -0
  26. package/dist/schedule.d.ts.map +1 -1
  27. package/dist/schedule.js +12 -0
  28. package/dist/schedule.js.map +1 -1
  29. package/dist/themes/shared.d.ts +1 -6
  30. package/dist/themes/shared.d.ts.map +1 -1
  31. package/dist/themes/shared.js +1 -6
  32. package/dist/themes/shared.js.map +1 -1
  33. package/dist/types.d.ts +12 -37
  34. package/dist/types.d.ts.map +1 -1
  35. package/dist/wave-layout.d.ts +10 -4
  36. package/dist/wave-layout.d.ts.map +1 -1
  37. package/dist/wave-layout.js +7 -5
  38. package/dist/wave-layout.js.map +1 -1
  39. package/package.json +2 -2
  40. package/src/i18n.ts +1 -27
  41. package/src/index.ts +0 -3
  42. package/src/layout-insights.ts +3 -7
  43. package/src/nodes/wave-node.ts +36 -165
  44. package/src/phases/finalize.ts +0 -6
  45. package/src/phases/measure.ts +3 -1
  46. package/src/phases/place.ts +2 -1
  47. package/src/schedule.ts +12 -0
  48. package/src/themes/shared.ts +1 -6
  49. package/src/types.ts +12 -34
  50. package/src/wave-layout.ts +12 -4
package/dist/i18n.d.ts CHANGED
@@ -9,22 +9,12 @@ export interface LocaleStrings {
9
9
  * (`Launch · 2026-02-02 – 2026-02-23 · held by i2`; specs/waves.md §9.1).
10
10
  */
11
11
  waveHeldBy: string;
12
- /** Marks an empty wave in its tooltip and the legend (`#2 Hardening (TBD) (no items)`). */
12
+ /** Marks an empty wave in its tooltip (`Hardening (TBD) · 2026-01-19 · no items`). */
13
13
  waveNoItems: string;
14
14
  /** Added to a background item's hover tooltip (specs/waves.md §9.3). */
15
15
  waveBackgroundItem: string;
16
16
  /** Legend entry beside the hatch swatch (specs/waves.md §9.5). */
17
17
  waveLegendBackground: string;
18
- /** Legend entry beside the boundary swatch. */
19
- waveLegendBoundary: string;
20
- /** Prefix of the legend's wave-name list (`Waves: #1 Discover · #2 Build`). */
21
- waveLegendPrefix: string;
22
- /**
23
- * Wave strip placeholder when every wave is empty (specs/waves.md
24
- * §9.1). `{names}` is replaced by the wave titles; see
25
- * `wavesDeclaredPlaceholder`.
26
- */
27
- wavesDeclaredPlaceholder: string;
28
18
  }
29
19
  /**
30
20
  * Resolve the effective locale for the rendered artifact.
@@ -59,11 +49,6 @@ export declare function resolveLocale(override: string | undefined, directiveLoc
59
49
  * root has every key.
60
50
  */
61
51
  export declare function localeStrings(locale: string): LocaleStrings;
62
- /**
63
- * The all-empty wave strip placeholder (specs/waves.md §9.1), e.g.
64
- * `Waves declared: Discover, Build — no items assigned yet`.
65
- */
66
- export declare function wavesDeclaredPlaceholder(strings: LocaleStrings, names: readonly string[]): string;
67
52
  /**
68
53
  * BCP-47 fallback chain for a locale tag. Strips trailing `-SUBTAG`s
69
54
  * one at a time until a primary subtag remains, then appends the root
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,MAAM,WAAW,aAAa;IAC1B,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,2FAA2F;IAC3F,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAC;IAC7B,+CAA+C;IAC/C,kBAAkB,EAAE,MAAM,CAAC;IAC3B,+EAA+E;IAC/E,gBAAgB,EAAE,MAAM,CAAC;IACzB;;;;OAIG;IACH,wBAAwB,EAAE,MAAM,CAAC;CACpC;AA0CD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,aAAa,CACzB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,eAAe,EAAE,MAAM,GAAG,SAAS,GACpC,MAAM,CAER;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAa3D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,CAGjG;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAWtD"}
1
+ {"version":3,"file":"i18n.d.ts","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,MAAM,WAAW,aAAa;IAC1B,0EAA0E;IAC1E,QAAQ,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,sFAAsF;IACtF,WAAW,EAAE,MAAM,CAAC;IACpB,wEAAwE;IACxE,kBAAkB,EAAE,MAAM,CAAC;IAC3B,kEAAkE;IAClE,oBAAoB,EAAE,MAAM,CAAC;CAChC;AAmCD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,aAAa,CACzB,QAAQ,EAAE,MAAM,GAAG,SAAS,EAC5B,eAAe,EAAE,MAAM,GAAG,SAAS,GACpC,MAAM,CAER;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAa3D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAWtD"}
package/dist/i18n.js CHANGED
@@ -24,9 +24,6 @@ const BUNDLES = {
24
24
  waveNoItems: 'no items',
25
25
  waveBackgroundItem: 'Background (no wave)',
26
26
  waveLegendBackground: 'Background work (not in a wave)',
27
- waveLegendBoundary: 'Wave boundary',
28
- waveLegendPrefix: 'Waves:',
29
- wavesDeclaredPlaceholder: 'Waves declared: {names} — no items assigned yet',
30
27
  },
31
28
  fr: {
32
29
  // Short form of "maintenant"; keeps the pill compact while staying
@@ -41,9 +38,6 @@ const BUNDLES = {
41
38
  waveNoItems: 'aucun élément',
42
39
  waveBackgroundItem: 'Travail de fond (hors vague)',
43
40
  waveLegendBackground: 'Travail de fond (dans aucune vague)',
44
- waveLegendBoundary: 'Limite de vague',
45
- waveLegendPrefix: 'Vagues\u00A0:',
46
- wavesDeclaredPlaceholder: 'Vagues déclarées\u00A0: {names} — aucun élément affecté pour l’instant',
47
41
  },
48
42
  };
49
43
  /**
@@ -95,14 +89,6 @@ export function localeStrings(locale) {
95
89
  // The root bundle (`en-US`) is always populated, so this cast is safe.
96
90
  return result;
97
91
  }
98
- /**
99
- * The all-empty wave strip placeholder (specs/waves.md §9.1), e.g.
100
- * `Waves declared: Discover, Build — no items assigned yet`.
101
- */
102
- export function wavesDeclaredPlaceholder(strings, names) {
103
- // A replacer function, so a `$` in a title is never read as a pattern.
104
- return strings.wavesDeclaredPlaceholder.replace('{names}', () => names.join(', '));
105
- }
106
92
  /**
107
93
  * BCP-47 fallback chain for a locale tag. Strips trailing `-SUBTAG`s
108
94
  * one at a time until a primary subtag remains, then appends the root
package/dist/i18n.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"i18n.js","sourceRoot":"","sources":["../src/i18n.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,wDAAwD;AACxD,mEAAmE;AACnE,2EAA2E;AAC3E,wEAAwE;AACxE,EAAE;AACF,6EAA6E;AAC7E,uEAAuE;AACvE,iEAAiE;AAEjE,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAoBtC,sEAAsE;AACtE,wEAAwE;AACxE,8CAA8C;AAC9C,EAAE;AACF,2EAA2E;AAC3E,0EAA0E;AAC1E,kEAAkE;AAClE,iDAAiD;AACjD,MAAM,OAAO,GAA2C;IACpD,OAAO,EAAE;QACL,QAAQ,EAAE,KAAK;QACf,aAAa,EAAE,GAAG;QAClB,UAAU,EAAE,SAAS;QACrB,WAAW,EAAE,UAAU;QACvB,kBAAkB,EAAE,sBAAsB;QAC1C,oBAAoB,EAAE,iCAAiC;KAC1D;IACD,EAAE,EAAE;QACA,mEAAmE;QACnE,mEAAmE;QACnE,qDAAqD;QACrD,QAAQ,EAAE,QAAQ;QAClB,+DAA+D;QAC/D,aAAa,EAAE,GAAG;QAClB,gEAAgE;QAChE,mDAAmD;QACnD,UAAU,EAAE,aAAa;QACzB,WAAW,EAAE,eAAe;QAC5B,kBAAkB,EAAE,8BAA8B;QAClD,oBAAoB,EAAE,qCAAqC;KAC9D;CACJ,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,aAAa,CACzB,QAA4B,EAC5B,eAAmC;IAEnC,OAAO,eAAe,IAAI,QAAQ,IAAI,cAAc,CAAC;AACzD,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IACxC,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,GAAG,IAAI,aAAa,CAAC,MAAM,CAAC,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC5B,IAAI,CAAC,MAAM;YAAE,SAAS;QACtB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAA4B,EAAE,CAAC;YAC/D,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,IAAI,MAAM,CAAC,GAAG,CAAC,KAAK,SAAS,EAAE,CAAC;gBACzD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;YAC9B,CAAC;QACL,CAAC;IACL,CAAC;IACD,uEAAuE;IACvE,OAAO,MAAuB,CAAC;AACnC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,aAAa,CAAC,MAAc;IACxC,MAAM,KAAK,GAAa,EAAE,CAAC;IAC3B,IAAI,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACnC,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,IAAI,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,IAAI,IAAI,CAAC;YAAE,MAAM;QACrB,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,cAAc,CAAC;QAAE,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAChE,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,SAAS,YAAY,CAAC,MAAc;IAChC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IAChC,OAAO,KAAK;SACP,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;QACjB,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC;QAC3C,gEAAgE;QAChE,OAAO,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;IAClE,CAAC,CAAC;SACD,IAAI,CAAC,GAAG,CAAC,CAAC;AACnB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -20,7 +20,7 @@ export { scheduleRoadmap } from './schedule.js';
20
20
  export { estimateTextWidth } from './text-measure.js';
21
21
  export { contrastRatio, relativeLuminance } from './themes/contrast.js';
22
22
  export { darkTheme, grayscaleTheme, lightTheme, normalizeThemeName, THEME_NAMES, type Theme, type ThemeName, themes, } from './themes/index.js';
23
- export { ACCENT_DASH_PATTERN, ATTRIBUTION_BAR_LOGICAL_WIDTH, ATTRIBUTION_BAR_LOGICAL_X, ATTRIBUTION_INE_LOGICAL_X, ATTRIBUTION_LINK, ATTRIBUTION_NOW_LOGICAL_X, ATTRIBUTION_PREFIX_FONT_SIZE, ATTRIBUTION_SCALE, ATTRIBUTION_TEXT, ATTRIBUTION_WORDMARK_FONT_SIZE, CORNER_RADIUS_PX, EDGE_CORNER_RADIUS, FONT_STACK, FOOTNOTE_HEADER_BASELINE_OFFSET_PX, FOOTNOTE_HEADER_HEIGHT_PX, FOOTNOTE_PANEL_PADDING_PX, FOOTNOTE_ROW_HEIGHT, FRAME_TAB_HEIGHT_PX, FRAME_TAB_LABEL_BASELINE_OFFSET_PX, HEADER_HEIGHT_PX, NON_WORKING_FILL_OPACITY, NOW_PILL_CORNER_RADIUS_PX, NOW_PILL_HEIGHT_PX, NOW_PILL_LABEL_BASELINE_OFFSET_PX, NOW_PILL_LABEL_FONT_SIZE_PX, NOW_PILL_LABEL_INSET_X_PX, NOW_PILL_WIDTH_PX, NOWLINE_STROKE_WIDTH_PX, PROGRESS_STRIP_HEIGHT_PX, TEXT_SIZE_PX, TIMELINE_TICK_LABEL_BASELINE_OFFSET_PX, TIMELINE_TICK_LABEL_FONT_SIZE_PX, TIMELINE_TICK_PANEL_HEIGHT_PX, timelineTickLabelBaselineOffsetPx, WAVE_BOUNDARY_WIDTH_PX, WAVE_CELL_INSET_PX, WAVE_CROSS_DASH, WAVE_EMPTY_MARKER_SIZE_PX, WAVE_EMPTY_MARKER_STEP_PX, WAVE_HATCH_OPACITY, WAVE_HATCH_STROKE_PX, WAVE_HATCH_TILE_PX, WAVE_LABEL_HALO_INSET_Y_PX, WAVE_LABEL_HALO_PAD_PX, WAVE_LEGEND_BASELINE_OFFSET_PX, WAVE_LEGEND_ENTRY_GAP_PX, WAVE_LEGEND_GAP_PX, WAVE_LEGEND_LINE_PX, WAVE_LEGEND_SWATCH_GAP_PX, WAVE_LEGEND_SWATCH_HEIGHT_PX, WAVE_LEGEND_SWATCH_WIDTH_PX, WAVE_STRIP_HEIGHT_PX, WAVE_STRIP_LABEL_FONT_SIZE_PX, WAVE_STRIP_LABEL_PAD_PX, WAVE_STYLED_STRIP_MIX_OPACITY, WAVE_STYLED_TINT_OPACITY, } from './themes/shared.js';
23
+ export { ACCENT_DASH_PATTERN, ATTRIBUTION_BAR_LOGICAL_WIDTH, ATTRIBUTION_BAR_LOGICAL_X, ATTRIBUTION_INE_LOGICAL_X, ATTRIBUTION_LINK, ATTRIBUTION_NOW_LOGICAL_X, ATTRIBUTION_PREFIX_FONT_SIZE, ATTRIBUTION_SCALE, ATTRIBUTION_TEXT, ATTRIBUTION_WORDMARK_FONT_SIZE, CORNER_RADIUS_PX, EDGE_CORNER_RADIUS, FONT_STACK, FOOTNOTE_HEADER_BASELINE_OFFSET_PX, FOOTNOTE_HEADER_HEIGHT_PX, FOOTNOTE_PANEL_PADDING_PX, FOOTNOTE_ROW_HEIGHT, FRAME_TAB_HEIGHT_PX, FRAME_TAB_LABEL_BASELINE_OFFSET_PX, HEADER_HEIGHT_PX, NON_WORKING_FILL_OPACITY, NOW_PILL_CORNER_RADIUS_PX, NOW_PILL_HEIGHT_PX, NOW_PILL_LABEL_BASELINE_OFFSET_PX, NOW_PILL_LABEL_FONT_SIZE_PX, NOW_PILL_LABEL_INSET_X_PX, NOW_PILL_WIDTH_PX, NOWLINE_STROKE_WIDTH_PX, PROGRESS_STRIP_HEIGHT_PX, TEXT_SIZE_PX, TIMELINE_TICK_LABEL_BASELINE_OFFSET_PX, TIMELINE_TICK_LABEL_FONT_SIZE_PX, TIMELINE_TICK_PANEL_HEIGHT_PX, timelineTickLabelBaselineOffsetPx, WAVE_BOUNDARY_WIDTH_PX, WAVE_CELL_INSET_PX, WAVE_CROSS_DASH, WAVE_HATCH_OPACITY, WAVE_HATCH_STROKE_PX, WAVE_HATCH_TILE_PX, WAVE_LABEL_HALO_INSET_Y_PX, WAVE_LABEL_HALO_PAD_PX, WAVE_LEGEND_BASELINE_OFFSET_PX, WAVE_LEGEND_GAP_PX, WAVE_LEGEND_LINE_PX, WAVE_LEGEND_SWATCH_GAP_PX, WAVE_LEGEND_SWATCH_HEIGHT_PX, WAVE_LEGEND_SWATCH_WIDTH_PX, WAVE_STRIP_HEIGHT_PX, WAVE_STRIP_LABEL_FONT_SIZE_PX, WAVE_STRIP_LABEL_PAD_PX, WAVE_STYLED_STRIP_MIX_OPACITY, WAVE_STYLED_TINT_OPACITY, } from './themes/shared.js';
24
24
  export * from './types.js';
25
25
  export type { CalendarException, WorkingCalendar, WorkingExceptionRun, } from './working-calendar.js';
26
26
  export { calendarExceptions } from './working-calendar.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -17,7 +17,7 @@ export { scheduleRoadmap } from './schedule.js';
17
17
  export { estimateTextWidth } from './text-measure.js';
18
18
  export { contrastRatio, relativeLuminance } from './themes/contrast.js';
19
19
  export { darkTheme, grayscaleTheme, lightTheme, normalizeThemeName, THEME_NAMES, themes, } from './themes/index.js';
20
- export { ACCENT_DASH_PATTERN, ATTRIBUTION_BAR_LOGICAL_WIDTH, ATTRIBUTION_BAR_LOGICAL_X, ATTRIBUTION_INE_LOGICAL_X, ATTRIBUTION_LINK, ATTRIBUTION_NOW_LOGICAL_X, ATTRIBUTION_PREFIX_FONT_SIZE, ATTRIBUTION_SCALE, ATTRIBUTION_TEXT, ATTRIBUTION_WORDMARK_FONT_SIZE, CORNER_RADIUS_PX, EDGE_CORNER_RADIUS, FONT_STACK, FOOTNOTE_HEADER_BASELINE_OFFSET_PX, FOOTNOTE_HEADER_HEIGHT_PX, FOOTNOTE_PANEL_PADDING_PX, FOOTNOTE_ROW_HEIGHT, FRAME_TAB_HEIGHT_PX, FRAME_TAB_LABEL_BASELINE_OFFSET_PX, HEADER_HEIGHT_PX, NON_WORKING_FILL_OPACITY, NOW_PILL_CORNER_RADIUS_PX, NOW_PILL_HEIGHT_PX, NOW_PILL_LABEL_BASELINE_OFFSET_PX, NOW_PILL_LABEL_FONT_SIZE_PX, NOW_PILL_LABEL_INSET_X_PX, NOW_PILL_WIDTH_PX, NOWLINE_STROKE_WIDTH_PX, PROGRESS_STRIP_HEIGHT_PX, TEXT_SIZE_PX, TIMELINE_TICK_LABEL_BASELINE_OFFSET_PX, TIMELINE_TICK_LABEL_FONT_SIZE_PX, TIMELINE_TICK_PANEL_HEIGHT_PX, timelineTickLabelBaselineOffsetPx, WAVE_BOUNDARY_WIDTH_PX, WAVE_CELL_INSET_PX, WAVE_CROSS_DASH, WAVE_EMPTY_MARKER_SIZE_PX, WAVE_EMPTY_MARKER_STEP_PX, WAVE_HATCH_OPACITY, WAVE_HATCH_STROKE_PX, WAVE_HATCH_TILE_PX, WAVE_LABEL_HALO_INSET_Y_PX, WAVE_LABEL_HALO_PAD_PX, WAVE_LEGEND_BASELINE_OFFSET_PX, WAVE_LEGEND_ENTRY_GAP_PX, WAVE_LEGEND_GAP_PX, WAVE_LEGEND_LINE_PX, WAVE_LEGEND_SWATCH_GAP_PX, WAVE_LEGEND_SWATCH_HEIGHT_PX, WAVE_LEGEND_SWATCH_WIDTH_PX, WAVE_STRIP_HEIGHT_PX, WAVE_STRIP_LABEL_FONT_SIZE_PX, WAVE_STRIP_LABEL_PAD_PX, WAVE_STYLED_STRIP_MIX_OPACITY, WAVE_STYLED_TINT_OPACITY, } from './themes/shared.js';
20
+ export { ACCENT_DASH_PATTERN, ATTRIBUTION_BAR_LOGICAL_WIDTH, ATTRIBUTION_BAR_LOGICAL_X, ATTRIBUTION_INE_LOGICAL_X, ATTRIBUTION_LINK, ATTRIBUTION_NOW_LOGICAL_X, ATTRIBUTION_PREFIX_FONT_SIZE, ATTRIBUTION_SCALE, ATTRIBUTION_TEXT, ATTRIBUTION_WORDMARK_FONT_SIZE, CORNER_RADIUS_PX, EDGE_CORNER_RADIUS, FONT_STACK, FOOTNOTE_HEADER_BASELINE_OFFSET_PX, FOOTNOTE_HEADER_HEIGHT_PX, FOOTNOTE_PANEL_PADDING_PX, FOOTNOTE_ROW_HEIGHT, FRAME_TAB_HEIGHT_PX, FRAME_TAB_LABEL_BASELINE_OFFSET_PX, HEADER_HEIGHT_PX, NON_WORKING_FILL_OPACITY, NOW_PILL_CORNER_RADIUS_PX, NOW_PILL_HEIGHT_PX, NOW_PILL_LABEL_BASELINE_OFFSET_PX, NOW_PILL_LABEL_FONT_SIZE_PX, NOW_PILL_LABEL_INSET_X_PX, NOW_PILL_WIDTH_PX, NOWLINE_STROKE_WIDTH_PX, PROGRESS_STRIP_HEIGHT_PX, TEXT_SIZE_PX, TIMELINE_TICK_LABEL_BASELINE_OFFSET_PX, TIMELINE_TICK_LABEL_FONT_SIZE_PX, TIMELINE_TICK_PANEL_HEIGHT_PX, timelineTickLabelBaselineOffsetPx, WAVE_BOUNDARY_WIDTH_PX, WAVE_CELL_INSET_PX, WAVE_CROSS_DASH, WAVE_HATCH_OPACITY, WAVE_HATCH_STROKE_PX, WAVE_HATCH_TILE_PX, WAVE_LABEL_HALO_INSET_Y_PX, WAVE_LABEL_HALO_PAD_PX, WAVE_LEGEND_BASELINE_OFFSET_PX, WAVE_LEGEND_GAP_PX, WAVE_LEGEND_LINE_PX, WAVE_LEGEND_SWATCH_GAP_PX, WAVE_LEGEND_SWATCH_HEIGHT_PX, WAVE_LEGEND_SWATCH_WIDTH_PX, WAVE_STRIP_HEIGHT_PX, WAVE_STRIP_LABEL_FONT_SIZE_PX, WAVE_STRIP_LABEL_PAD_PX, WAVE_STYLED_STRIP_MIX_OPACITY, WAVE_STYLED_TINT_OPACITY, } from './themes/shared.js';
21
21
  export * from './types.js';
22
22
  export { calendarExceptions } from './working-calendar.js';
23
23
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"layout-insights.d.ts","sourceRoot":"","sources":["../src/layout-insights.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,WAAW,EAAM,MAAM,eAAe,CAAC;AAErE,OAAO,KAAK,EAER,iBAAiB,EAGpB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,IAAI,EAAE;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAC9D;AAED,MAAM,WAAW,oBAAoB;IACjC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AA4MD;;;;GAIG;AACH,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,oBAAyB,GACnC,aAAa,EAAE,CA8BjB"}
1
+ {"version":3,"file":"layout-insights.d.ts","sourceRoot":"","sources":["../src/layout-insights.ts"],"names":[],"mappings":"AAIA,OAAO,EAAkB,KAAK,WAAW,EAAM,MAAM,eAAe,CAAC;AAErE,OAAO,KAAK,EAER,iBAAiB,EAGpB,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,qBAAqB,GAAG,MAAM,GAAG,SAAS,CAAC;AAEvD,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,qBAAqB,CAAC;IAChC,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,iDAAiD;IACjD,WAAW,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,IAAI,EAAE;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC;CAC9D;AAED,MAAM,WAAW,oBAAoB;IACjC,KAAK,CAAC,EAAE,IAAI,CAAC;IACb,MAAM,CAAC,EAAE,MAAM,CAAC;CACnB;AAwMD;;;;GAIG;AACH,wBAAgB,qBAAqB,CACjC,MAAM,EAAE,iBAAiB,EACzB,OAAO,GAAE,oBAAyB,GACnC,aAAa,EAAE,CA8BjB"}
@@ -116,12 +116,9 @@ function collectWaveInsights(layout, locale, out) {
116
116
  const waves = layout.waves ?? [];
117
117
  const empty = waves.filter((w) => w.empty).map((w) => w.id);
118
118
  if (empty.length > 0) {
119
- const args = empty.length === waves.length
120
- ? { reason: 'all', names: empty }
121
- : empty.length === 1
122
- ? { reason: 'one', name: empty[0] }
123
- : { reason: 'many', names: empty };
124
- out.push(makeInsight(locale, 'NL.I1006', 'info', args, args.reason === 'one' ? args.name : undefined));
119
+ // One consolidated message: the empty waves are not drawn (§9.1).
120
+ const args = { names: empty };
121
+ out.push(makeInsight(locale, 'NL.I1006', 'info', args, empty.length === 1 ? empty[0] : undefined));
125
122
  }
126
123
  for (const m of layout.milestones) {
127
124
  // Only dated milestones get `overrunByWave`, and each carries its
@@ -1 +1 @@
1
- {"version":3,"file":"layout-insights.js","sourceRoot":"","sources":["../src/layout-insights.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"layout-insights.js","sourceRoot":"","sources":["../src/layout-insights.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
- import { type LocaleStrings } from '../i18n.js';
1
+ import type { LocaleStrings } from '../i18n.js';
2
2
  import type { LayoutContext } from '../layout-context.js';
3
3
  import type { Theme } from '../themes/shape.js';
4
- import type { BoundingBox, PositionedIncludeRegion, PositionedSwimlane, PositionedWave, PositionedWaveBoundary, PositionedWaveCrossing, PositionedWaveLegend } from '../types.js';
4
+ import type { PositionedIncludeRegion, PositionedSwimlane, PositionedWave, PositionedWaveBoundary, PositionedWaveCrossing, PositionedWaveLegend } from '../types.js';
5
5
  import { type WaveLayoutState } from '../wave-layout.js';
6
6
  /** Everything `buildWaves` produces; the caller attaches it to the model. */
7
7
  export interface BuiltWaves {
@@ -14,22 +14,14 @@ export interface BuiltWaves {
14
14
  regionCrossings: PositionedWaveCrossing[][];
15
15
  /** True when any placed item (main lanes or regions) is background work. */
16
16
  hasBackground: boolean;
17
- /**
18
- * The strip placeholder, set only when every wave is empty: its text,
19
- * centred on the timeline at `x`, on `halo` in the backing panel's fill.
20
- */
21
- placeholder?: {
22
- text: string;
23
- x: number;
24
- halo: BoundingBox;
25
- };
26
17
  }
27
18
  /**
28
19
  * Build the positioned waves, boundaries and crossings. `state` must be
29
20
  * frozen: its `pass` is the pass that ran with the solved `S`/`E`, so its
30
21
  * member counts cover the main lanes and the first-level regions exactly
31
- * once (later placements never accumulate). `ctx.timeline.waveStrip` must
32
- * be set (it is whenever the roadmap declares waves).
22
+ * once (later placements never accumulate). `ctx.timeline.waveStrip` is
23
+ * set whenever some wave has items; when none does, nothing is drawn and the
24
+ * waves carry their spans only (specs/waves.md §9.1).
33
25
  */
34
26
  export declare function buildWaves(state: WaveLayoutState, ctx: LayoutContext, strings: LocaleStrings, swimlanes: PositionedSwimlane[], includes: PositionedIncludeRegion[]): BuiltWaves;
35
27
  interface LabelFit {
@@ -51,15 +43,10 @@ export declare function fitStripLabel(title: string, id: string, ordinal: number
51
43
  */
52
44
  export declare function readableLabelText(wave: Pick<Theme['wave'], 'labelText' | 'hatch' | 'hatchOnDark'>, fill: string): string;
53
45
  /**
54
- * The wave legend (§9.5), or undefined when none of its triggers holds:
55
- * background work, a label that is not its full title, dropped footnote
56
- * indicators, or an empty wave. Entries: the hatch swatch (background
57
- * work), the boundary swatch (when any boundary is drawn), and the wave
58
- * names (when a label is abbreviated, a wave is empty, or a wave's
59
- * footnotes moved here). Lines are `WAVE_LEGEND_LINE_PX` high from `topY`
60
- * at the chart origin, wrapped at entry boundaries (the wave list also
61
- * between waves) to the canvas width (`chartRightX`, final) less the gutter.
46
+ * The wave legend (§9.5), or undefined without background work (which there
47
+ * is only when some wave is drawn): one hatch swatch, `Background work (not
48
+ * in a wave)`, `WAVE_LEGEND_LINE_PX` high from `topY` at the chart origin.
62
49
  */
63
- export declare function buildWaveLegend(built: BuiltWaves, ctx: LayoutContext, strings: LocaleStrings, topY: number, chartRightX: number): PositionedWaveLegend | undefined;
50
+ export declare function buildWaveLegend(built: BuiltWaves, ctx: LayoutContext, strings: LocaleStrings, topY: number): PositionedWaveLegend | undefined;
64
51
  export {};
65
52
  //# sourceMappingURL=wave-node.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"wave-node.d.ts","sourceRoot":"","sources":["../../src/nodes/wave-node.ts"],"names":[],"mappings":"AAcA,OAAO,EAAE,KAAK,aAAa,EAA4B,MAAM,YAAY,CAAC;AAQ1E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAI1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAiBhD,OAAO,KAAK,EACR,WAAW,EAEX,uBAAuB,EAEvB,kBAAkB,EAElB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EAGvB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,mBAAmB,CAAC;AAM3B,6EAA6E;AAC7E,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,sEAAsE;IACtE,UAAU,EAAE,sBAAsB,EAAE,CAAC;IACrC,sDAAsD;IACtD,SAAS,EAAE,sBAAsB,EAAE,CAAC;IACpC,qFAAqF;IACrF,eAAe,EAAE,sBAAsB,EAAE,EAAE,CAAC;IAC5C,4EAA4E;IAC5E,aAAa,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,WAAW,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,WAAW,CAAA;KAAE,CAAC;CAChE;AAED;;;;;;GAMG;AACH,wBAAgB,UAAU,CACtB,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,kBAAkB,EAAE,EAC/B,QAAQ,EAAE,uBAAuB,EAAE,GACpC,UAAU,CAkQZ;AA6BD,UAAU,QAAQ;IACd,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC;CACjB;AAOD;;;;;;GAMG;AACH,wBAAgB,aAAa,CACzB,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACnB,QAAQ,GAAG,SAAS,CActB;AAuED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,GAAG,aAAa,CAAC,EAChE,IAAI,EAAE,MAAM,GACb,MAAM,CAOR;AA+FD;;;;;;;;;GASG;AACH,wBAAgB,eAAe,CAC3B,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE,MAAM,EACZ,WAAW,EAAE,MAAM,GACpB,oBAAoB,GAAG,SAAS,CA+GlC"}
1
+ {"version":3,"file":"wave-node.d.ts","sourceRoot":"","sources":["../../src/nodes/wave-node.ts"],"names":[],"mappings":"AAcA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAQhD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAI1D,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAchD,OAAO,KAAK,EAGR,uBAAuB,EAEvB,kBAAkB,EAElB,cAAc,EACd,sBAAsB,EACtB,sBAAsB,EACtB,oBAAoB,EAGvB,MAAM,aAAa,CAAC;AAGrB,OAAO,EAIH,KAAK,eAAe,EACvB,MAAM,mBAAmB,CAAC;AAM3B,6EAA6E;AAC7E,MAAM,WAAW,UAAU;IACvB,KAAK,EAAE,cAAc,EAAE,CAAC;IACxB,sEAAsE;IACtE,UAAU,EAAE,sBAAsB,EAAE,CAAC;IACrC,sDAAsD;IACtD,SAAS,EAAE,sBAAsB,EAAE,CAAC;IACpC,qFAAqF;IACrF,eAAe,EAAE,sBAAsB,EAAE,EAAE,CAAC;IAC5C,4EAA4E;IAC5E,aAAa,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CACtB,KAAK,EAAE,eAAe,EACtB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,aAAa,EACtB,SAAS,EAAE,kBAAkB,EAAE,EAC/B,QAAQ,EAAE,uBAAuB,EAAE,GACpC,UAAU,CA4OZ;AA6BD,UAAU,QAAQ;IACd,IAAI,EAAE,OAAO,GAAG,IAAI,GAAG,UAAU,GAAG,SAAS,CAAC;IAC9C,KAAK,EAAE,MAAM,CAAC;CACjB;AAOD;;;;;;GAMG;AACH,wBAAgB,aAAa,CACzB,KAAK,EAAE,MAAM,EACb,EAAE,EAAE,MAAM,EACV,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACnB,QAAQ,GAAG,SAAS,CActB;AAuED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC7B,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,GAAG,aAAa,CAAC,EAChE,IAAI,EAAE,MAAM,GACb,MAAM,CAOR;AAyFD;;;;GAIG;AACH,wBAAgB,eAAe,CAC3B,KAAK,EAAE,UAAU,EACjB,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,aAAa,EACtB,IAAI,EAAE,MAAM,GACb,oBAAoB,GAAG,SAAS,CAuBlC"}
@@ -10,13 +10,12 @@
10
10
  // pixels-per-day are unchanged), so the spans' x never move.
11
11
  import { propKey } from '@nowline/core/internal';
12
12
  import { propValue } from '../dsl-utils.js';
13
- import { wavesDeclaredPlaceholder } from '../i18n.js';
14
13
  import { pickInlineDate } from '../inline-date-pin-geometry.js';
15
14
  import { INLINE_DATE_GLYPH_GAP_PX, INLINE_DATE_GLYPH_INSET_LEFT_PX, INLINE_DATE_GLYPH_TILE_SIZE_PX, ITEM_FOOTNOTE_INDICATOR_STEP_PX, } from '../item-bar-geometry.js';
16
15
  import { estimateTextWidth } from '../text-measure.js';
17
16
  import { contrastRatio, hexToRgb } from '../themes/contrast.js';
18
17
  import { resolveColor } from '../themes/index.js';
19
- import { GUTTER_PX, WAVE_CELL_INSET_PX, WAVE_EMPTY_MARKER_STEP_PX, WAVE_LABEL_HALO_INSET_Y_PX, WAVE_LABEL_HALO_PAD_PX, WAVE_LEGEND_BASELINE_OFFSET_PX, WAVE_LEGEND_ENTRY_GAP_PX, WAVE_LEGEND_LINE_PX, WAVE_LEGEND_SWATCH_GAP_PX, WAVE_LEGEND_SWATCH_HEIGHT_PX, WAVE_LEGEND_SWATCH_WIDTH_PX, WAVE_STRIP_LABEL_FONT_SIZE_PX, WAVE_STRIP_LABEL_PAD_PX, WAVE_STYLED_STRIP_MIX_OPACITY, } from '../themes/shared.js';
18
+ import { WAVE_CELL_INSET_PX, WAVE_LABEL_HALO_INSET_Y_PX, WAVE_LABEL_HALO_PAD_PX, WAVE_LEGEND_BASELINE_OFFSET_PX, WAVE_LEGEND_LINE_PX, WAVE_LEGEND_SWATCH_GAP_PX, WAVE_LEGEND_SWATCH_HEIGHT_PX, WAVE_LEGEND_SWATCH_WIDTH_PX, WAVE_STRIP_LABEL_FONT_SIZE_PX, WAVE_STRIP_LABEL_PAD_PX, WAVE_STYLED_STRIP_MIX_OPACITY, } from '../themes/shared.js';
20
19
  import { summarizeWaves } from '../wave-barrier.js';
21
20
  import { waveHatchKind } from '../wave-hatch.js';
22
21
  import { dateAtX, spanEndDateAtX, WAVE_EDGE_TOLERANCE_PX, } from '../wave-layout.js';
@@ -27,27 +26,31 @@ const WAVE_LABEL_MIN_CONTRAST = 4.5;
27
26
  * Build the positioned waves, boundaries and crossings. `state` must be
28
27
  * frozen: its `pass` is the pass that ran with the solved `S`/`E`, so its
29
28
  * member counts cover the main lanes and the first-level regions exactly
30
- * once (later placements never accumulate). `ctx.timeline.waveStrip` must
31
- * be set (it is whenever the roadmap declares waves).
29
+ * once (later placements never accumulate). `ctx.timeline.waveStrip` is
30
+ * set whenever some wave has items; when none does, nothing is drawn and the
31
+ * waves carry their spans only (specs/waves.md §9.1).
32
32
  */
33
33
  export function buildWaves(state, ctx, strings, swimlanes, includes) {
34
34
  if (!state.frozen || !state.solve) {
35
35
  throw new Error('buildWaves: the wave barrier has not settled');
36
36
  }
37
- const strip = ctx.timeline.waveStrip;
38
- if (!strip)
39
- throw new Error('buildWaves: the timeline has no wave strip');
40
37
  const spans = summarizeWaves(state.plan, state.solve, state.pass, state.origin, state.floors, WAVE_EDGE_TOLERANCE_PX);
41
38
  const allEmpty = spans.every((s) => s.memberCount === 0);
39
+ // With every wave empty the roadmap draws no strip: the waves keep a
40
+ // zero-height one under the tick panel, for their boxes only.
41
+ const strip = ctx.timeline.waveStrip ?? {
42
+ y: ctx.timeline.tickPanelY + ctx.timeline.tickPanelHeight,
43
+ height: 0,
44
+ };
45
+ if (!ctx.timeline.waveStrip && !allEmpty) {
46
+ throw new Error('buildWaves: the timeline has no wave strip');
47
+ }
42
48
  // The visible part of a span is its overlap with the timeline.
43
49
  const visLeft = ctx.timeline.box.x;
44
50
  const visRight = visLeft + ctx.timeline.box.width;
45
- const stripMidY = strip.y + strip.height / 2;
46
51
  // Every strip halo spans the strip less a vertical inset.
47
52
  const haloY = strip.y + WAVE_LABEL_HALO_INSET_Y_PX;
48
53
  const haloHeight = strip.height - 2 * WAVE_LABEL_HALO_INSET_Y_PX;
49
- // Empty-wave diamonds placed so far, by their unstepped x.
50
- const emptyXs = [];
51
54
  let ordinal = 0;
52
55
  const waves = spans.map((span, i) => {
53
56
  const decl = state.plan.waves[i];
@@ -86,17 +89,8 @@ export function buildWaves(state, ctx, strings, swimlanes, includes) {
86
89
  }
87
90
  fit ??= fitStripLabel(title, span.id, i + 1, visibleWidth, glyphReserve);
88
91
  }
89
- let labelX = (cellLeft + cellRight) / 2;
90
- let marker;
91
- if (empty) {
92
- labelX = span.start;
93
- if (!allEmpty) {
94
- const sameX = emptyXs.filter((x) => Math.abs(x - span.start) < WAVE_EDGE_TOLERANCE_PX).length;
95
- emptyXs.push(span.start);
96
- labelX = span.start + sameX * WAVE_EMPTY_MARKER_STEP_PX;
97
- marker = { x: labelX, y: stripMidY };
98
- }
99
- }
92
+ // An empty wave is not drawn (§9.1); the NL.I1006 insight names it.
93
+ const labelX = empty ? span.start : (cellLeft + cellRight) / 2;
100
94
  const range = empty ? isoDay(startDate) : `${isoDay(startDate)} – ${isoDay(endDate)}`;
101
95
  const tooltipParts = [title, range];
102
96
  if (empty)
@@ -218,7 +212,6 @@ export function buildWaves(state, ctx, strings, swimlanes, includes) {
218
212
  ...(superscripts ? { superscripts } : {}),
219
213
  tooltip: tooltipParts.join(' · '),
220
214
  footnotesShown,
221
- ...(marker ? { marker } : {}),
222
215
  ...(gapLabel ? { gapLabel } : {}),
223
216
  },
224
217
  style,
@@ -237,16 +230,6 @@ export function buildWaves(state, ctx, strings, swimlanes, includes) {
237
230
  regionCrossings: regionBackground.map((items) => crossingsOver(items, boundaries)),
238
231
  hasBackground: mainBackground.length + regionBackground.flat().length > 0,
239
232
  };
240
- if (allEmpty) {
241
- const text = wavesDeclaredPlaceholder(strings, waves.map((w) => w.title));
242
- const x = visLeft + ctx.timeline.box.width / 2;
243
- const haloWidth = estimateTextWidth(text, WAVE_STRIP_LABEL_FONT_SIZE_PX) + 2 * WAVE_LABEL_HALO_PAD_PX;
244
- built.placeholder = {
245
- text,
246
- x,
247
- halo: { x: x - haloWidth / 2, y: haloY, width: haloWidth, height: haloHeight },
248
- };
249
- }
250
233
  return built;
251
234
  }
252
235
  /**
@@ -464,126 +447,34 @@ function crossingsOver(items, boundaries) {
464
447
  }
465
448
  return out;
466
449
  }
467
- const SUPERSCRIPT_DIGITS = '⁰¹²³⁴⁵⁶⁷⁸⁹';
468
- function superscript(n) {
469
- return String(n).replace(/[0-9]/g, (d) => SUPERSCRIPT_DIGITS[Number(d)]);
470
- }
471
450
  /**
472
- * The wave legend (§9.5), or undefined when none of its triggers holds:
473
- * background work, a label that is not its full title, dropped footnote
474
- * indicators, or an empty wave. Entries: the hatch swatch (background
475
- * work), the boundary swatch (when any boundary is drawn), and the wave
476
- * names (when a label is abbreviated, a wave is empty, or a wave's
477
- * footnotes moved here). Lines are `WAVE_LEGEND_LINE_PX` high from `topY`
478
- * at the chart origin, wrapped at entry boundaries (the wave list also
479
- * between waves) to the canvas width (`chartRightX`, final) less the gutter.
451
+ * The wave legend (§9.5), or undefined without background work (which there
452
+ * is only when some wave is drawn): one hatch swatch, `Background work (not
453
+ * in a wave)`, `WAVE_LEGEND_LINE_PX` high from `topY` at the chart origin.
480
454
  */
481
- export function buildWaveLegend(built, ctx, strings, topY, chartRightX) {
482
- const { waves } = built;
483
- const abbreviated = waves.some((w) => !w.empty && w.strip.labelKind !== 'title');
484
- const anyEmpty = waves.some((w) => w.empty);
485
- const dropped = waves.some((w) => w.footnoteIndicators.length > 0 && !w.strip.footnotesShown);
486
- if (!built.hasBackground && !abbreviated && !anyEmpty && !dropped)
455
+ export function buildWaveLegend(built, ctx, strings, topY) {
456
+ if (!built.hasBackground)
487
457
  return undefined;
488
- const fontSize = WAVE_STRIP_LABEL_FONT_SIZE_PX;
489
- const textWidth = (text) => estimateTextWidth(text, fontSize);
490
458
  const left = ctx.timeline.originX;
491
- const maxRight = Math.max(left, chartRightX - GUTTER_PX);
492
- let line = 0;
493
- let cursor = left;
494
- let lineUsed = false;
495
- let widest = 0;
496
- const baseline = (l) => topY + l * WAVE_LEGEND_LINE_PX + WAVE_LEGEND_BASELINE_OFFSET_PX;
497
- // Start a unit `width` wide: on this line after the entry gap, or on a
498
- // fresh line when it would overflow (a first unit never wraps).
499
- const startUnit = (width) => {
500
- if (lineUsed && cursor + WAVE_LEGEND_ENTRY_GAP_PX + width > maxRight) {
501
- line++;
502
- cursor = left;
503
- lineUsed = false;
504
- }
505
- const x = lineUsed ? cursor + WAVE_LEGEND_ENTRY_GAP_PX : cursor;
506
- cursor = x + width;
507
- lineUsed = true;
508
- widest = Math.max(widest, cursor - left);
509
- return x;
510
- };
511
- const entries = [];
512
- const swatchEntry = (kind, text) => {
513
- const textX0 = WAVE_LEGEND_SWATCH_WIDTH_PX + WAVE_LEGEND_SWATCH_GAP_PX;
514
- const x = startUnit(textX0 + textWidth(text));
515
- const y = baseline(line);
516
- entries.push({
517
- kind,
518
- text,
519
- swatch: {
520
- x,
521
- y: y -
522
- WAVE_LEGEND_BASELINE_OFFSET_PX +
523
- (WAVE_LEGEND_LINE_PX - WAVE_LEGEND_SWATCH_HEIGHT_PX) / 2,
524
- width: WAVE_LEGEND_SWATCH_WIDTH_PX,
525
- height: WAVE_LEGEND_SWATCH_HEIGHT_PX,
526
- },
527
- // The hatched swatch is a default item bar.
528
- ...(kind === 'background'
529
- ? { hatch: waveHatchKind(ctx.styleCtx.theme.entities.item.bg) }
530
- : {}),
531
- runs: [{ text, x: x + textX0, y }],
532
- });
533
- };
534
- if (built.hasBackground)
535
- swatchEntry('background', strings.waveLegendBackground);
536
- if (built.boundaries.length > 0)
537
- swatchEntry('boundary', strings.waveLegendBoundary);
538
- if (abbreviated || anyEmpty || dropped) {
539
- // Only the waves the strip doesn't name in full: an empty one, an
540
- // abbreviated label, or footnotes it dropped. The `#k` numbering stays
541
- // the wave's own, so the legend still reads against the bands.
542
- const unnamed = waves.filter((w) => w.empty ||
543
- w.strip.labelKind !== 'title' ||
544
- (w.footnoteIndicators.length > 0 && !w.strip.footnotesShown));
545
- const names = unnamed.map((w) => {
546
- let name = `#${w.index + 1} ${w.title}`;
547
- if (w.footnoteIndicators.length > 0 && !w.strip.footnotesShown) {
548
- name += ` ${w.footnoteIndicators.map(superscript).join(',')}`;
549
- }
550
- if (w.empty)
551
- name += ` (${strings.waveNoItems})`;
552
- return name;
553
- });
554
- const sep = ' · ';
555
- const first = `${strings.waveLegendPrefix} ${names[0]}`;
556
- const runs = [
557
- { text: first, x: startUnit(textWidth(first)), y: baseline(line) },
558
- ];
559
- for (const name of names.slice(1)) {
560
- const run = runs[runs.length - 1];
561
- if (cursor + textWidth(sep + name) <= maxRight) {
562
- run.text += sep + name;
563
- cursor += textWidth(sep + name);
564
- widest = Math.max(widest, cursor - left);
565
- }
566
- else {
567
- line++;
568
- cursor = left;
569
- lineUsed = false;
570
- runs.push({ text: name, x: startUnit(textWidth(name)), y: baseline(line) });
571
- }
572
- }
573
- entries.push({
574
- kind: 'waves',
575
- text: `${strings.waveLegendPrefix} ${names.join(sep)}`,
576
- runs,
577
- });
578
- }
579
- return {
580
- box: {
459
+ const text = strings.waveLegendBackground;
460
+ const textX0 = WAVE_LEGEND_SWATCH_WIDTH_PX + WAVE_LEGEND_SWATCH_GAP_PX;
461
+ const width = textX0 + estimateTextWidth(text, WAVE_STRIP_LABEL_FONT_SIZE_PX);
462
+ const entry = {
463
+ kind: 'background',
464
+ text,
465
+ swatch: {
581
466
  x: left,
582
- y: topY,
583
- width: widest,
584
- height: (line + 1) * WAVE_LEGEND_LINE_PX,
467
+ y: topY + (WAVE_LEGEND_LINE_PX - WAVE_LEGEND_SWATCH_HEIGHT_PX) / 2,
468
+ width: WAVE_LEGEND_SWATCH_WIDTH_PX,
469
+ height: WAVE_LEGEND_SWATCH_HEIGHT_PX,
585
470
  },
586
- entries,
471
+ // The hatched swatch is a default item bar.
472
+ hatch: waveHatchKind(ctx.styleCtx.theme.entities.item.bg),
473
+ runs: [{ text, x: left + textX0, y: topY + WAVE_LEGEND_BASELINE_OFFSET_PX }],
474
+ };
475
+ return {
476
+ box: { x: left, y: topY, width, height: WAVE_LEGEND_LINE_PX },
477
+ entries: [entry],
587
478
  };
588
479
  }
589
480
  function isoDay(d) {