@miragon/wardley-renderer 0.6.3 → 0.8.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.
Files changed (169) hide show
  1. package/README.md +131 -1
  2. package/dist/Modeler.d.ts +5 -0
  3. package/dist/Modeler.d.ts.map +1 -1
  4. package/dist/NavigatedViewer.d.ts.map +1 -1
  5. package/dist/WardleyBaseViewer.d.ts +90 -12
  6. package/dist/WardleyBaseViewer.d.ts.map +1 -1
  7. package/dist/a11y/canvasFocus.d.ts +17 -0
  8. package/dist/a11y/canvasFocus.d.ts.map +1 -0
  9. package/dist/a11y/describeCanvas.d.ts +8 -0
  10. package/dist/a11y/describeCanvas.d.ts.map +1 -0
  11. package/dist/a11y/index.d.ts +5 -0
  12. package/dist/a11y/index.d.ts.map +1 -0
  13. package/dist/append/WardleyAppendBehavior.d.ts +7 -6
  14. package/dist/append/WardleyAppendBehavior.d.ts.map +1 -1
  15. package/dist/collaborative/CollaborativeWardley.d.ts +27 -0
  16. package/dist/collaborative/CollaborativeWardley.d.ts.map +1 -0
  17. package/dist/collaborative/index.d.ts +2 -0
  18. package/dist/collaborative/index.d.ts.map +1 -0
  19. package/dist/color-picker/WardleyColorPicker.d.ts +10 -3
  20. package/dist/color-picker/WardleyColorPicker.d.ts.map +1 -1
  21. package/dist/context-pad/WardleyContextPad.d.ts +30 -0
  22. package/dist/context-pad/WardleyContextPad.d.ts.map +1 -0
  23. package/dist/context-pad/WardleyContextPadProvider.d.ts +23 -1
  24. package/dist/context-pad/WardleyContextPadProvider.d.ts.map +1 -1
  25. package/dist/context-pad/index.d.ts +1 -0
  26. package/dist/context-pad/index.d.ts.map +1 -1
  27. package/dist/draw/WardleyRenderer.d.ts +8 -0
  28. package/dist/draw/WardleyRenderer.d.ts.map +1 -1
  29. package/dist/draw/deprecated-icons.d.ts +35 -0
  30. package/dist/draw/deprecated-icons.d.ts.map +1 -0
  31. package/dist/draw/icons.d.ts +9 -26
  32. package/dist/draw/icons.d.ts.map +1 -1
  33. package/dist/draw/index.d.ts +2 -1
  34. package/dist/draw/index.d.ts.map +1 -1
  35. package/dist/draw/label-layout.d.ts +59 -0
  36. package/dist/draw/label-layout.d.ts.map +1 -0
  37. package/dist/draw/palette-icons.d.ts +1 -0
  38. package/dist/draw/palette-icons.d.ts.map +1 -1
  39. package/dist/draw/styles.d.ts +16 -17
  40. package/dist/draw/styles.d.ts.map +1 -1
  41. package/dist/draw-tool/WardleyDrawTool.d.ts +14 -1
  42. package/dist/draw-tool/WardleyDrawTool.d.ts.map +1 -1
  43. package/dist/draw-tool/WardleyDrawingHandles.d.ts +4 -1
  44. package/dist/draw-tool/WardleyDrawingHandles.d.ts.map +1 -1
  45. package/dist/editor-state.d.ts +56 -0
  46. package/dist/editor-state.d.ts.map +1 -0
  47. package/dist/evolution-grid/EvolutionConstraintBehavior.d.ts +58 -24
  48. package/dist/evolution-grid/EvolutionConstraintBehavior.d.ts.map +1 -1
  49. package/dist/evolution-grid/EvolutionGrid.d.ts +2 -0
  50. package/dist/evolution-grid/EvolutionGrid.d.ts.map +1 -1
  51. package/dist/evolution-grid/index.d.ts.map +1 -1
  52. package/dist/evolve/WardleyEvolveDragging.d.ts +3 -1
  53. package/dist/evolve/WardleyEvolveDragging.d.ts.map +1 -1
  54. package/dist/evolve/constants.d.ts +3 -0
  55. package/dist/evolve/constants.d.ts.map +1 -0
  56. package/dist/evolve/index.d.ts +1 -0
  57. package/dist/evolve/index.d.ts.map +1 -1
  58. package/dist/free-rect/FreeRect.d.ts +34 -0
  59. package/dist/free-rect/FreeRect.d.ts.map +1 -0
  60. package/dist/free-rect/index.d.ts +6 -0
  61. package/dist/free-rect/index.d.ts.map +1 -0
  62. package/dist/index.d.ts +28 -4
  63. package/dist/index.d.ts.map +1 -1
  64. package/dist/index.js +4967 -1941
  65. package/dist/index.js.map +1 -1
  66. package/dist/io/WardleyExporter.d.ts +3 -1
  67. package/dist/io/WardleyExporter.d.ts.map +1 -1
  68. package/dist/io/WardleyImporter.d.ts.map +1 -1
  69. package/dist/io/WardleySourceOrder.d.ts +23 -0
  70. package/dist/io/WardleySourceOrder.d.ts.map +1 -0
  71. package/dist/io/exportBounds.d.ts +15 -0
  72. package/dist/io/exportBounds.d.ts.map +1 -0
  73. package/dist/io/index.d.ts +5 -0
  74. package/dist/io/index.d.ts.map +1 -1
  75. package/dist/io/rasterize.d.ts +25 -0
  76. package/dist/io/rasterize.d.ts.map +1 -0
  77. package/dist/io/saveSvg.d.ts +1 -1
  78. package/dist/io/saveSvg.d.ts.map +1 -1
  79. package/dist/io/types.d.ts +5 -0
  80. package/dist/io/types.d.ts.map +1 -1
  81. package/dist/keyboard/WardleyKeyboard.d.ts +47 -4
  82. package/dist/keyboard/WardleyKeyboard.d.ts.map +1 -1
  83. package/dist/label-drag/WardleyLabelDragging.d.ts +58 -0
  84. package/dist/label-drag/WardleyLabelDragging.d.ts.map +1 -0
  85. package/dist/label-drag/index.d.ts +5 -0
  86. package/dist/label-drag/index.d.ts.map +1 -0
  87. package/dist/label-editing/WardleyLabelEditing.d.ts +63 -6
  88. package/dist/label-editing/WardleyLabelEditing.d.ts.map +1 -1
  89. package/dist/label-editing/fieldError.d.ts +13 -0
  90. package/dist/label-editing/fieldError.d.ts.map +1 -0
  91. package/dist/label-editing/index.d.ts +1 -0
  92. package/dist/label-editing/index.d.ts.map +1 -1
  93. package/dist/link-editing/WardleyLinkEditing.d.ts +40 -0
  94. package/dist/link-editing/WardleyLinkEditing.d.ts.map +1 -0
  95. package/dist/link-editing/index.d.ts +6 -0
  96. package/dist/link-editing/index.d.ts.map +1 -0
  97. package/dist/link-editing/link-url.d.ts +14 -0
  98. package/dist/link-editing/link-url.d.ts.map +1 -0
  99. package/dist/map-menu/AxisLabelsPopover.d.ts +10 -0
  100. package/dist/map-menu/AxisLabelsPopover.d.ts.map +1 -0
  101. package/dist/map-menu/MapSizePopover.d.ts +10 -0
  102. package/dist/map-menu/MapSizePopover.d.ts.map +1 -0
  103. package/dist/map-menu/ShortcutsDialog.d.ts +14 -0
  104. package/dist/map-menu/ShortcutsDialog.d.ts.map +1 -0
  105. package/dist/map-menu/TitleDialog.d.ts +12 -0
  106. package/dist/map-menu/TitleDialog.d.ts.map +1 -0
  107. package/dist/map-menu/dialog.d.ts +41 -0
  108. package/dist/map-menu/dialog.d.ts.map +1 -0
  109. package/dist/map-menu/dom.d.ts +9 -0
  110. package/dist/map-menu/dom.d.ts.map +1 -0
  111. package/dist/map-menu/index.d.ts +14 -0
  112. package/dist/map-menu/index.d.ts.map +1 -0
  113. package/dist/map-menu/menu.d.ts +68 -0
  114. package/dist/map-menu/menu.d.ts.map +1 -0
  115. package/dist/map-menu/popover.d.ts +52 -0
  116. package/dist/map-menu/popover.d.ts.map +1 -0
  117. package/dist/map-menu/shortcuts.d.ts +48 -0
  118. package/dist/map-menu/shortcuts.d.ts.map +1 -0
  119. package/dist/map-resize/MapProjection.d.ts +84 -0
  120. package/dist/map-resize/MapProjection.d.ts.map +1 -0
  121. package/dist/map-resize/MapResizeHandles.d.ts +59 -0
  122. package/dist/map-resize/MapResizeHandles.d.ts.map +1 -0
  123. package/dist/map-resize/ResizeAwareAutoScroll.d.ts +15 -0
  124. package/dist/map-resize/ResizeAwareAutoScroll.d.ts.map +1 -0
  125. package/dist/map-resize/index.d.ts +14 -0
  126. package/dist/map-resize/index.d.ts.map +1 -0
  127. package/dist/model/WardleyElementFactory.d.ts +36 -2
  128. package/dist/model/WardleyElementFactory.d.ts.map +1 -1
  129. package/dist/modeling/WardleyCopyPaste.d.ts +9 -5
  130. package/dist/modeling/WardleyCopyPaste.d.ts.map +1 -1
  131. package/dist/modeling/WardleyModeling.d.ts +16 -2
  132. package/dist/modeling/WardleyModeling.d.ts.map +1 -1
  133. package/dist/modeling/cmd/ResizeMapHandler.d.ts +24 -0
  134. package/dist/modeling/cmd/ResizeMapHandler.d.ts.map +1 -0
  135. package/dist/modeling/cmd/UpdateConfigHandler.d.ts +42 -0
  136. package/dist/modeling/cmd/UpdateConfigHandler.d.ts.map +1 -0
  137. package/dist/modeling/index.d.ts +2 -0
  138. package/dist/modeling/index.d.ts.map +1 -1
  139. package/dist/ordering/WardleyOrderingProvider.d.ts +1 -1
  140. package/dist/ordering/WardleyOrderingProvider.d.ts.map +1 -1
  141. package/dist/palette/WardleyPaletteKeyboard.d.ts +26 -0
  142. package/dist/palette/WardleyPaletteKeyboard.d.ts.map +1 -0
  143. package/dist/palette/WardleyPaletteProvider.d.ts +20 -1
  144. package/dist/palette/WardleyPaletteProvider.d.ts.map +1 -1
  145. package/dist/palette/index.d.ts +2 -1
  146. package/dist/palette/index.d.ts.map +1 -1
  147. package/dist/pan-constraint/PanConstraint.d.ts +24 -2
  148. package/dist/pan-constraint/PanConstraint.d.ts.map +1 -1
  149. package/dist/pipeline/PipelineGroupBehavior.d.ts +24 -0
  150. package/dist/pipeline/PipelineGroupBehavior.d.ts.map +1 -0
  151. package/dist/pipeline/index.d.ts +6 -0
  152. package/dist/pipeline/index.d.ts.map +1 -0
  153. package/dist/pipeline/pipelineMembership.d.ts +23 -0
  154. package/dist/pipeline/pipelineMembership.d.ts.map +1 -0
  155. package/dist/popup/WardleyElementSettingsProvider.d.ts +2 -1
  156. package/dist/popup/WardleyElementSettingsProvider.d.ts.map +1 -1
  157. package/dist/read-only/WardleyReadOnly.d.ts +27 -0
  158. package/dist/read-only/WardleyReadOnly.d.ts.map +1 -0
  159. package/dist/read-only/index.d.ts +7 -0
  160. package/dist/read-only/index.d.ts.map +1 -0
  161. package/dist/rules/WardleyRules.d.ts.map +1 -1
  162. package/dist/snapping/StageSnapping.d.ts +6 -2
  163. package/dist/snapping/StageSnapping.d.ts.map +1 -1
  164. package/dist/theme/index.d.ts +1 -1
  165. package/dist/theme/index.d.ts.map +1 -1
  166. package/dist/theme/palette.d.ts +28 -29
  167. package/dist/theme/palette.d.ts.map +1 -1
  168. package/dist/wardley.css +1 -1
  169. package/package.json +10 -9
@@ -3,6 +3,14 @@ import { default as EventBus } from 'diagram-js/lib/core/EventBus';
3
3
  import { ElementLike, ShapeLike, ConnectionLike } from 'diagram-js/lib/model/Types';
4
4
  import { default as ElementRegistry } from 'diagram-js/lib/core/ElementRegistry';
5
5
  import { default as EvolutionGrid } from '../evolution-grid/EvolutionGrid.js';
6
+ /** Primary name text of a node (contract shared with other modules and consumers' CSS). */
7
+ export declare const NAME_LABEL_CLASS = "wardley-name-label";
8
+ /** Groups every evolve visual so tools (e.g. the context pad) can tell the node from its movement. */
9
+ export declare const MOVEMENT_CLASS = "wardley-movement";
10
+ /** Labels the user may drag to set an OWM `label [dx, dy]` offset (see the label-drag module). */
11
+ export declare const LABEL_HANDLE_CLASS = "wardley-label-handle";
12
+ /** Which offset a dragged label writes: the node's own `labelOffset` or its evolve's. */
13
+ export declare const LABEL_ROLE_ATTRIBUTE = "data-label-role";
6
14
  export default class WardleyRenderer extends BaseRenderer {
7
15
  private readonly grid;
8
16
  private readonly elementRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"WardleyRenderer.d.ts","sourceRoot":"","sources":["../../src/draw/WardleyRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,kCAAkC,CAAC;AAE5D,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEzF,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AAkBvE,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAC;AAQpE,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,YAAY;IAKrD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe;IALlC,MAAM,CAAC,OAAO,WAAoD;gBAGhE,QAAQ,EAAE,QAAQ,EACD,IAAI,EAAE,aAAa,EACnB,eAAe,EAAE,eAAe;IAK1C,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAIxC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,GAAG,UAAU;IAyBvE,qFAAqF;IACrF,OAAO,CAAC,WAAW;IAiBV,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,GAAG,UAAU;IAkDxE,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAKtC,iBAAiB,CAAC,UAAU,EAAE,cAAc,GAAG,MAAM;IAM9D,OAAO,CAAC,aAAa;IA8BrB,kFAAkF;IAClF,OAAO,CAAC,YAAY;IAoDpB,OAAO,CAAC,UAAU;IAqBlB,OAAO,CAAC,YAAY;IAiDpB,OAAO,CAAC,QAAQ;IAsBhB,OAAO,CAAC,YAAY;IAmCpB,OAAO,CAAC,cAAc;IA4BtB,OAAO,CAAC,eAAe;IAmBvB,OAAO,CAAC,UAAU;CAsCnB"}
1
+ {"version":3,"file":"WardleyRenderer.d.ts","sourceRoot":"","sources":["../../src/draw/WardleyRenderer.ts"],"names":[],"mappings":"AAAA,OAAO,YAAY,MAAM,kCAAkC,CAAC;AAE5D,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,EAAE,WAAW,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAEzF,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AA2BvE,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAC;AAMpE,2FAA2F;AAC3F,eAAO,MAAM,gBAAgB,uBAAuB,CAAC;AACrD,sGAAsG;AACtG,eAAO,MAAM,cAAc,qBAAqB,CAAC;AACjD,kGAAkG;AAClG,eAAO,MAAM,kBAAkB,yBAAyB,CAAC;AACzD,yFAAyF;AACzF,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAKtD,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,YAAY;IAKrD,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe;IALlC,MAAM,CAAC,OAAO,WAAoD;gBAGhE,QAAQ,EAAE,QAAQ,EACD,IAAI,EAAE,aAAa,EACnB,eAAe,EAAE,eAAe;IAK1C,SAAS,CAAC,OAAO,EAAE,WAAW,GAAG,OAAO;IAIxC,SAAS,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,GAAG,UAAU;IAyBvE,qFAAqF;IACrF,OAAO,CAAC,WAAW;IAiBV,cAAc,CAAC,OAAO,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc,GAAG,UAAU;IAkDxE,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM;IAKtC,iBAAiB,CAAC,UAAU,EAAE,cAAc,GAAG,MAAM;IAM9D,OAAO,CAAC,aAAa;IA+BrB,kFAAkF;IAClF,OAAO,CAAC,YAAY;IAsEpB,OAAO,CAAC,UAAU;IAmBlB,OAAO,CAAC,YAAY;IAkDpB,OAAO,CAAC,QAAQ;IAuBhB,OAAO,CAAC,YAAY;IAuCpB,OAAO,CAAC,cAAc;IA4BtB,OAAO,CAAC,eAAe;IAsBvB,OAAO,CAAC,UAAU;CAuCnB"}
@@ -0,0 +1,35 @@
1
+ /** @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
2
+ export declare const ICON_UNDO = "M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z";
3
+ /** @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
4
+ export declare const ICON_REDO = "M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16c1.05-3.19 4.05-5.5 7.6-5.5 1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6z";
5
+ /** data_object — JSON. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
6
+ export declare const ICON_DATA_OBJECT = "M4 7v2c0 .55-.45 1-1 1H2v2h1c.55 0 1 .45 1 1v2c0 1.65 1.35 3 3 3h1v-2H7c-.55 0-1-.45-1-1v-2c0-.84-.35-1.61-.92-2.18L4.85 12l.23-.82C5.65 10.61 6 9.84 6 9V7c0-.55.45-1 1-1h1V4H7C5.35 4 4 5.35 4 7zm16 3c-.55 0-1-.45-1-1V7c0-1.65-1.35-3-3-3h-1v2h1c.55 0 1 .45 1 1v2c0 .84.35 1.61.92 2.18l.23.82-.23.82c-.57.57-.92 1.34-.92 2.18v2c0 .55-.45 1-1 1h-1v2h1c1.65 0 3-1.35 3-3v-2c0-.55.45-1 1-1h1v-2h-1z";
7
+ /** code — DSL. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
8
+ export declare const ICON_CODE = "M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z";
9
+ /** download — Export. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
10
+ export declare const ICON_DOWNLOAD = "M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z";
11
+ /** share — share link. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
12
+ export declare const ICON_SHARE = "M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92-1.31-2.92-2.92-2.92z";
13
+ /** folder_open — open file. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
14
+ export declare const ICON_FOLDER_OPEN = "M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z";
15
+ /** image — PNG/image. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
16
+ export declare const ICON_IMAGE = "M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z";
17
+ /** note_add — new / clear. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
18
+ export declare const ICON_NEW = "M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 14h-3v3h-2v-3H8v-2h3v-3h2v3h3v2zm-3-7V3.5L18.5 9H13z";
19
+ /** aspect_ratio — map size. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
20
+ export declare const ICON_ASPECT_RATIO = "M19 12h-2v3h-3v2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z";
21
+ /** menu — hamburger (main menu). @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
22
+ export declare const ICON_MENU = "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z";
23
+ /** add — append component. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
24
+ export declare const ICON_ADD = "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z";
25
+ /** visibility — eye (show example). @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
26
+ export declare const ICON_VISIBILITY = "M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z";
27
+ /** @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
28
+ export declare const ICON_PERSON: string;
29
+ /** @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
30
+ export declare const ICON_EDIT: string;
31
+ /** @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
32
+ export declare const ICON_DELETE: string;
33
+ /** Returns an icon as an HTML SVG string, colour = currentColor. @deprecated Chrome icons come from @miragon/modeler-shell (Lucide, guide §5.14); this export goes in a later minor. */
34
+ export declare function iconMarkup(path: string, size?: number): string;
35
+ //# sourceMappingURL=deprecated-icons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deprecated-icons.d.ts","sourceRoot":"","sources":["../../src/draw/deprecated-icons.ts"],"names":[],"mappings":"AAaA,0HAA0H;AAC1H,eAAO,MAAM,SAAS,mJAC4H,CAAC;AAEnJ,0HAA0H;AAC1H,eAAO,MAAM,SAAS,oJAC6H,CAAC;AAEpJ,8IAA8I;AAC9I,eAAO,MAAM,gBAAgB,+YACiX,CAAC;AAE/Y,sIAAsI;AACtI,eAAO,MAAM,SAAS,+FACwE,CAAC;AAE/F,6IAA6I;AAC7I,eAAO,MAAM,aAAa,8CAA8C,CAAC;AAEzE,8IAA8I;AAC9I,eAAO,MAAM,UAAU,oWAC4U,CAAC;AAEpW,mJAAmJ;AACnJ,eAAO,MAAM,gBAAgB,gHACkF,CAAC;AAEhH,6IAA6I;AAC7I,eAAO,MAAM,UAAU,6HACqG,CAAC;AAE7H,kJAAkJ;AAClJ,eAAO,MAAM,QAAQ,yIACmH,CAAC;AAEzI,mJAAmJ;AACnJ,eAAO,MAAM,iBAAiB,iJACkH,CAAC;AAEjJ,wJAAwJ;AACxJ,eAAO,MAAM,SAAS,kDAAkD,CAAC;AAEzE,kJAAkJ;AAClJ,eAAO,MAAM,QAAQ,wCAAwC,CAAC;AAE9D,2JAA2J;AAC3J,eAAO,MAAM,eAAe,sNACyL,CAAC;AAEtN,0HAA0H;AAC1H,eAAO,MAAM,WAAW,EAAE,MAAmB,CAAC;AAE9C,0HAA0H;AAC1H,eAAO,MAAM,SAAS,EAAE,MAAiB,CAAC;AAE1C,0HAA0H;AAC1H,eAAO,MAAM,WAAW,EAAE,MAAmB,CAAC;AAE9C,wLAAwL;AACxL,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAE9D"}
@@ -15,30 +15,12 @@ export declare const ICON_DOUBLE_ARROW = "M15.5 5H11l5 7-5 7h4.5l5-7zM8.5 5H4l5
15
15
  export declare const ICON_BLOCK = "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8 0-1.85.63-3.55 1.69-4.9L16.9 18.31C15.55 19.37 13.85 20 12 20zm6.31-3.1L7.1 5.69C8.45 4.63 10.15 4 12 4c4.42 0 8 3.58 8 8 0 1.85-.63 3.55-1.69 4.9z";
16
16
  export declare const ICON_EDIT = "M3 17.25V21h3.75L17.81 9.94l-3.75-3.75L3 17.25zM20.71 7.04c.39-.39.39-1.02 0-1.41l-2.34-2.34c-.39-.39-1.02-.39-1.41 0l-1.83 1.83 3.75 3.75 1.83-1.83z";
17
17
  export declare const ICON_DELETE = "M6 19c0 1.1.9 2 2 2h8c1.1 0 2-.9 2-2V7H6v12zM19 4h-3.5l-1-1h-5l-1 1H5v2h14V4z";
18
- /** close — remove evolve. */
19
- export declare const ICON_CLOSE = "M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12z";
20
18
  /** description — note. */
21
19
  export declare const ICON_NOTE = "M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 16H8v-2h8v2zm0-4H8v-2h8v2zm-3-5V3.5L18.5 9H13z";
22
- export declare const ICON_UNDO = "M12.5 8c-2.65 0-5.05.99-6.9 2.6L2 7v9h9l-3.62-3.62c1.39-1.16 3.16-1.88 5.12-1.88 3.54 0 6.55 2.31 7.6 5.5l2.37-.78C21.08 11.03 17.15 8 12.5 8z";
23
- export declare const ICON_REDO = "M18.4 10.6C16.55 8.99 14.15 8 11.5 8c-4.65 0-8.58 3.03-9.96 7.22L3.9 16c1.05-3.19 4.05-5.5 7.6-5.5 1.95 0 3.73.72 5.12 1.88L13 16h9V7l-3.6 3.6z";
24
- /** data_object — JSON. */
25
- export declare const ICON_DATA_OBJECT = "M4 7v2c0 .55-.45 1-1 1H2v2h1c.55 0 1 .45 1 1v2c0 1.65 1.35 3 3 3h1v-2H7c-.55 0-1-.45-1-1v-2c0-.84-.35-1.61-.92-2.18L4.85 12l.23-.82C5.65 10.61 6 9.84 6 9V7c0-.55.45-1 1-1h1V4H7C5.35 4 4 5.35 4 7zm16 3c-.55 0-1-.45-1-1V7c0-1.65-1.35-3-3-3h-1v2h1c.55 0 1 .45 1 1v2c0 .84.35 1.61.92 2.18l.23.82-.23.82c-.57.57-.92 1.34-.92 2.18v2c0 .55-.45 1-1 1h-1v2h1c1.65 0 3-1.35 3-3v-2c0-.55.45-1 1-1h1v-2h-1z";
26
- /** code — DSL. */
27
- export declare const ICON_CODE = "M9.4 16.6L4.8 12l4.6-4.6L8 6l-6 6 6 6 1.4-1.4zm5.2 0l4.6-4.6-4.6-4.6L16 6l6 6-6 6-1.4-1.4z";
28
- /** download — Export. */
29
- export declare const ICON_DOWNLOAD = "M19 9h-4V3H9v6H5l7 7 7-7zM5 18v2h14v-2H5z";
30
- /** share — share link. */
31
- export declare const ICON_SHARE = "M18 16.08c-.76 0-1.44.3-1.96.77L8.91 12.7c.05-.23.09-.46.09-.7s-.04-.47-.09-.7l7.05-4.11c.54.5 1.25.81 2.04.81 1.66 0 3-1.34 3-3s-1.34-3-3-3-3 1.34-3 3c0 .24.04.47.09.7L8.04 9.81C7.5 9.31 6.79 9 6 9c-1.66 0-3 1.34-3 3s1.34 3 3 3c.79 0 1.5-.31 2.04-.81l7.12 4.16c-.05.21-.08.43-.08.65 0 1.61 1.31 2.92 2.92 2.92s2.92-1.31 2.92-2.92-1.31-2.92-2.92-2.92z";
32
20
  /** storefront — market decorator. */
33
21
  export declare const ICON_STOREFRONT = "M21.9 8.89l-1.05-4.37c-.22-.9-1-1.52-1.91-1.52H5.05c-.9 0-1.69.63-1.9 1.52L2.1 8.89c-.24 1.02-.02 2.06.62 2.88.08.11.19.19.28.29V19c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2v-6.94c.09-.09.2-.18.28-.28.64-.82.87-1.87.62-2.89zM13 5h1.96l.54 3.52c.09.62-.39 1.18-.99 1.18-.65 0-1.18-.55-1.18-1.18V5zm-5.5 0h1.5v3.52C9 9.32 8.45 10 7.7 10c-.62 0-1.13-.49-1.21-1.13L7.5 5zm-3 .49C5.42 5.36 5.53 5 5.89 5H7.5l-.5 3.69c-.08.6-.59 1.06-1.19 1.06-.66 0-1.18-.56-1.18-1.18l.07-.6L4.5 5.49zM19 19H5v-6.03c.08.01.15.03.23.03.85 0 1.62-.35 2.19-.91.58.57 1.36.91 2.24.91.85 0 1.61-.35 2.18-.89.58.55 1.36.89 2.24.89.81 0 1.59-.34 2.17-.9.58.56 1.35.9 2.2.9.08 0 .15-.02.23-.03V19z";
34
22
  /** public — ecosystem decorator. */
35
23
  export declare const ICON_PUBLIC = "M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-1 17.93c-3.94-.49-7-3.85-7-7.93 0-.62.08-1.21.21-1.79L9 15v1c0 1.1.9 2 2 2v1.93zm6.9-2.54c-.26-.81-1-1.39-1.9-1.39h-1v-3c0-.55-.45-1-1-1H8v-2h2c.55 0 1-.45 1-1V7h2c1.1 0 2-.9 2-2v-.41c2.93 1.19 5 4.06 5 7.41 0 2.08-.8 3.97-2.1 5.39z";
36
- /** folder_open — open file. */
37
- export declare const ICON_FOLDER_OPEN = "M20 6h-8l-2-2H4c-1.1 0-1.99.9-1.99 2L2 18c0 1.1.9 2 2 2h16c1.1 0 2-.9 2-2V8c0-1.1-.9-2-2-2zm0 12H4V8h16v10z";
38
- /** image — PNG/image. */
39
- export declare const ICON_IMAGE = "M21 19V5c0-1.1-.9-2-2-2H5c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h14c1.1 0 2-.9 2-2zM8.5 13.5l2.5 3.01L14.5 12l4.5 6H5l3.5-4.5z";
40
- /** note_add — new / clear. */
41
- export declare const ICON_NEW = "M14 2H6c-1.1 0-1.99.9-1.99 2L4 20c0 1.1.89 2 1.99 2H18c1.1 0 2-.9 2-2V8l-6-6zm2 14h-3v3h-2v-3H8v-2h3v-3h2v3h3v2zm-3-7V3.5L18.5 9H13z";
42
24
  /** settings — gear (element settings / popup). */
43
25
  export declare const ICON_SETTINGS = "M19.14 12.94c.04-.3.06-.61.06-.94 0-.32-.02-.64-.07-.94l2.03-1.58c.18-.14.23-.41.12-.61l-1.92-3.32c-.12-.22-.37-.29-.59-.22l-2.39.96c-.5-.38-1.03-.7-1.62-.94l-.36-2.54c-.04-.24-.24-.41-.48-.41h-3.84c-.24 0-.43.17-.47.41l-.36 2.54c-.59.24-1.13.57-1.62.94l-2.39-.96c-.22-.08-.47 0-.59.22L2.74 8.87c-.12.21-.08.47.12.61l2.03 1.58c-.05.3-.09.63-.09.94s.02.64.07.94l-2.03 1.58c-.18.14-.23.41-.12.61l1.92 3.32c.12.22.37.29.59.22l2.39-.96c.5.38 1.03.7 1.62.94l.36 2.54c.05.24.24.41.48.41h3.84c.24 0 .44-.17.47-.41l.36-2.54c.59-.24 1.13-.56 1.62-.94l2.39.96c.22.08.47 0 .59-.22l1.92-3.32c.12-.22.07-.47-.12-.61l-2.01-1.58zM12 15.6c-1.98 0-3.6-1.62-3.6-3.6s1.62-3.6 3.6-3.6 3.6 1.62 3.6 3.6-1.62 3.6-3.6 3.6z";
44
26
  /** palette — note color. */
@@ -57,16 +39,17 @@ export declare const ICON_CROP_LANDSCAPE = "M19 5H5c-1.1 0-2 .9-2 2v10c0 1.1.9 2
57
39
  export declare const ICON_LAYERS = "M11.99 18.54l-7.37-5.73L3 14.07l9 7 9-7-1.63-1.27-7.38 5.74zM12 16l7.36-5.73L21 9l-9-7-9 7 1.63 1.27L12 16z";
58
40
  /** autorenew — cycle procurement method (build/buy/outsource). */
59
41
  export declare const ICON_AUTORENEW = "M12 6v3l4-4-4-4v3c-4.42 0-8 3.58-8 8 0 1.57.46 3.03 1.24 4.26L6.7 14.8c-.45-.83-.7-1.79-.7-2.8 0-3.31 2.69-6 6-6zm6.76 1.74L17.3 9.2c.44.84.7 1.79.7 2.8 0 3.31-2.69 6-6 6v-3l-4 4 4 4v-3c4.42 0 8-3.58 8-8 0-1.57-.46-3.03-1.24-4.26z";
60
- /** aspect_ratio — map size. */
61
- export declare const ICON_ASPECT_RATIO = "M19 12h-2v3h-3v2h5v-5zM7 9h3V7H5v5h2V9zm14-6H3c-1.1 0-2 .9-2 2v14c0 1.1.9 2 2 2h18c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2zm0 16.01H3V4.99h18v14.02z";
62
- /** menu — hamburger (main menu). */
63
- export declare const ICON_MENU = "M3 18h18v-2H3v2zm0-5h18v-2H3v2zm0-7v2h18V6H3z";
64
- /** add — append component. */
65
- export declare const ICON_ADD = "M19 13h-6v6h-2v-6H5v-2h6V5h2v6h6v2z";
66
- /** visibility — eye (show example). */
67
- export declare const ICON_VISIBILITY = "M12 4.5C7 4.5 2.73 7.61 1 12c1.73 4.39 6 7.5 11 7.5s9.27-3.11 11-7.5c-1.73-4.39-6-7.5-11-7.5zM12 17c-2.76 0-5-2.24-5-5s2.24-5 5-5 5 2.24 5 5-2.24 5-5 5zm0-8c-1.66 0-3 1.34-3 3s1.34 3 3 3 3-1.34 3-3-1.34-3-3-3z";
42
+ /** open_in_new — open the element's link in a new tab. */
43
+ export declare const ICON_OPEN_IN_NEW = "M19 19H5V5h7V3H5c-1.11 0-2 .9-2 2v14c0 1.1.89 2 2 2h14c1.1 0 2-.9 2-2v-7h-2v7zM14 3v2h3.59l-9.83 9.83 1.41 1.41L19 6.41V10h2V3h-7z";
44
+ /** link — set the element's link (url). */
45
+ export declare const ICON_LINK = "M3.9 12c0-1.71 1.39-3.1 3.1-3.1h4V7H7c-2.76 0-5 2.24-5 5s2.24 5 5 5h4v-1.9H7c-1.71 0-3.1-1.39-3.1-3.1zM8 13h8v-2H8v2zm9-6h-4v1.9h4c1.71 0 3.1 1.39 3.1 3.1s-1.39 3.1-3.1 3.1h-4V17h4c2.76 0 5-2.24 5-5s-2.24-5-5-5z";
68
46
  /** Draws a 24x24 icon as an SVG group centered on (cx, cy), scaled to `size`. */
69
47
  export declare function drawIcon(path: string, cx: number, cy: number, size: number, fill: string): SVGElement;
48
+ /**
49
+ * Like `iconMarkup`, but crossed out by a diagonal stroke (e.g. "remove evolve" = struck double
50
+ * arrow). The mask cuts a gap around the stroke so it stays legible over the filled glyph.
51
+ */
52
+ export declare function struckIconMarkup(path: string, size?: number): string;
70
53
  /** Returns an icon as an HTML SVG string (for palette/context pad/buttons), color = currentColor. */
71
54
  export declare function iconMarkup(path: string, size?: number): string;
72
55
  //# sourceMappingURL=icons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/draw/icons.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,eAAO,MAAM,WAAW,kHACyF,CAAC;AAClH,eAAO,MAAM,UAAU,sSAC8Q,CAAC;AAEtS,yDAAyD;AACzD,eAAO,MAAM,WAAW,iIACwG,CAAC;AACjI,eAAO,MAAM,kBAAkB,8DAA8D,CAAC;AAC9F,6BAA6B;AAC7B,eAAO,MAAM,iBAAiB,yDAAyD,CAAC;AACxF,8CAA8C;AAC9C,eAAO,MAAM,UAAU,mPAC2N,CAAC;AACnP,eAAO,MAAM,SAAS,0JACmI,CAAC;AAC1J,eAAO,MAAM,WAAW,kFACyD,CAAC;AAClF,6BAA6B;AAC7B,eAAO,MAAM,UAAU,0GACkF,CAAC;AAC1G,0BAA0B;AAC1B,eAAO,MAAM,SAAS,mIAC4G,CAAC;AACnI,eAAO,MAAM,SAAS,mJAC4H,CAAC;AACnJ,eAAO,MAAM,SAAS,oJAC6H,CAAC;AACpJ,0BAA0B;AAC1B,eAAO,MAAM,gBAAgB,+YACiX,CAAC;AAC/Y,kBAAkB;AAClB,eAAO,MAAM,SAAS,+FACwE,CAAC;AAC/F,yBAAyB;AACzB,eAAO,MAAM,aAAa,8CAA8C,CAAC;AACzE,0BAA0B;AAC1B,eAAO,MAAM,UAAU,oWAC4U,CAAC;AACpW,qCAAqC;AACrC,eAAO,MAAM,eAAe,spBACynB,CAAC;AACtpB,oCAAoC;AACpC,eAAO,MAAM,WAAW,iTACwR,CAAC;AACjT,+BAA+B;AAC/B,eAAO,MAAM,gBAAgB,gHACkF,CAAC;AAChH,yBAAyB;AACzB,eAAO,MAAM,UAAU,6HACqG,CAAC;AAC7H,8BAA8B;AAC9B,eAAO,MAAM,QAAQ,yIACmH,CAAC;AACzI,kDAAkD;AAClD,eAAO,MAAM,aAAa,gsBACqqB,CAAC;AAChsB,4BAA4B;AAC5B,eAAO,MAAM,YAAY,ycAC+a,CAAC;AACzc,mCAAmC;AACnC,eAAO,MAAM,UAAU,+JACuI,CAAC;AAC/J,kCAAkC;AAClC,eAAO,MAAM,iBAAiB,4CAA4C,CAAC;AAC3E,mCAAmC;AACnC,eAAO,MAAM,gBAAgB,gDAAgD,CAAC;AAC9E,iEAAiE;AACjE,eAAO,MAAM,eAAe,4EAC+C,CAAC;AAC5E,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,iGACgE,CAAC;AACjG,oCAAoC;AACpC,eAAO,MAAM,WAAW,gHACuF,CAAC;AAChH,kEAAkE;AAClE,eAAO,MAAM,cAAc,2OAC+M,CAAC;AAC3O,+BAA+B;AAC/B,eAAO,MAAM,iBAAiB,iJACkH,CAAC;AACjJ,oCAAoC;AACpC,eAAO,MAAM,SAAS,kDAAkD,CAAC;AACzE,8BAA8B;AAC9B,eAAO,MAAM,QAAQ,wCAAwC,CAAC;AAC9D,uCAAuC;AACvC,eAAO,MAAM,eAAe,sNACyL,CAAC;AAEtN,iFAAiF;AACjF,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,UAAU,CAUZ;AAED,qGAAqG;AACrG,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,SAAK,GAAG,MAAM,CAE1D"}
1
+ {"version":3,"file":"icons.d.ts","sourceRoot":"","sources":["../../src/draw/icons.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH,eAAO,MAAM,WAAW,kHACyF,CAAC;AAClH,eAAO,MAAM,UAAU,sSAC8Q,CAAC;AAEtS,yDAAyD;AACzD,eAAO,MAAM,WAAW,iIACwG,CAAC;AACjI,eAAO,MAAM,kBAAkB,8DAA8D,CAAC;AAC9F,6BAA6B;AAC7B,eAAO,MAAM,iBAAiB,yDAAyD,CAAC;AACxF,8CAA8C;AAC9C,eAAO,MAAM,UAAU,mPAC2N,CAAC;AACnP,eAAO,MAAM,SAAS,0JACmI,CAAC;AAC1J,eAAO,MAAM,WAAW,kFACyD,CAAC;AAClF,0BAA0B;AAC1B,eAAO,MAAM,SAAS,mIAC4G,CAAC;AACnI,qCAAqC;AACrC,eAAO,MAAM,eAAe,spBACynB,CAAC;AACtpB,oCAAoC;AACpC,eAAO,MAAM,WAAW,iTACwR,CAAC;AACjT,kDAAkD;AAClD,eAAO,MAAM,aAAa,gsBACqqB,CAAC;AAChsB,4BAA4B;AAC5B,eAAO,MAAM,YAAY,ycAC+a,CAAC;AACzc,mCAAmC;AACnC,eAAO,MAAM,UAAU,+JACuI,CAAC;AAC/J,kCAAkC;AAClC,eAAO,MAAM,iBAAiB,4CAA4C,CAAC;AAC3E,mCAAmC;AACnC,eAAO,MAAM,gBAAgB,gDAAgD,CAAC;AAC9E,iEAAiE;AACjE,eAAO,MAAM,eAAe,4EAC+C,CAAC;AAC5E,4CAA4C;AAC5C,eAAO,MAAM,mBAAmB,iGACgE,CAAC;AACjG,oCAAoC;AACpC,eAAO,MAAM,WAAW,gHACuF,CAAC;AAChH,kEAAkE;AAClE,eAAO,MAAM,cAAc,2OAC+M,CAAC;AAC3O,0DAA0D;AAC1D,eAAO,MAAM,gBAAgB,uIACyG,CAAC;AACvI,2CAA2C;AAC3C,eAAO,MAAM,SAAS,wNACiM,CAAC;AAExN,iFAAiF;AACjF,wBAAgB,QAAQ,CACtB,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,MAAM,GACX,UAAU,CAUZ;AAeD;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,SAAK,GAAG,MAAM,CAUhE;AAED,qGAAqG;AACrG,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,SAAK,GAAG,MAAM,CAE1D"}
@@ -1,5 +1,6 @@
1
1
  import { ModuleDeclaration } from 'didi';
2
2
  /** SVG rendering of all Wardley types (BaseRenderer subclass, priority 1500). */
3
3
  export declare const wardleyDrawModule: ModuleDeclaration;
4
- export { default as WardleyRenderer } from './WardleyRenderer.js';
4
+ export { default as WardleyRenderer, LABEL_HANDLE_CLASS, LABEL_ROLE_ATTRIBUTE, MOVEMENT_CLASS, NAME_LABEL_CLASS, } from './WardleyRenderer.js';
5
+ export { componentLabelPlacement, componentLabelSlot, movementDeltaX, movementLabelPlacement, movementLabelSlot, normalizeLabelOffset, type LabelPlacement, } from './label-layout.js';
5
6
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/draw/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAC;AAG9C,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,EAAE,iBAG/B,CAAC;AAEF,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/draw/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,MAAM,CAAC;AAG9C,iFAAiF;AACjF,eAAO,MAAM,iBAAiB,EAAE,iBAG/B,CAAC;AAEF,OAAO,EACL,OAAO,IAAI,eAAe,EAC1B,kBAAkB,EAClB,oBAAoB,EACpB,cAAc,EACd,gBAAgB,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EACL,uBAAuB,EACvB,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,iBAAiB,EACjB,oBAAoB,EACpB,KAAK,cAAc,GACpB,MAAM,mBAAmB,CAAC"}
@@ -0,0 +1,59 @@
1
+ import { LabelOffset } from '@miragon/wardley-schema-model';
2
+ import { WardleyShape } from '../model/di-types.js';
3
+ import { default as EvolutionGrid } from '../evolution-grid/EvolutionGrid.js';
4
+ /**
5
+ * Where the renderer puts component, anchor and evolve-target labels. Shared by the renderer and the
6
+ * label-drag interaction so a dragged label lands exactly where the stored offset renders it.
7
+ *
8
+ * All positions are relative to the owning node's centre. An explicit OWM `label [dx, dy]` offset is
9
+ * always relative to the canonical OWM slot (right of the circle, or centred above an anchor) — the
10
+ * automatic placements below only apply while no offset is set, so imported OWM maps keep their look.
11
+ */
12
+ export declare const LABEL_GAP = 7;
13
+ /** Rough average advance of a 13px/500 label glyph; the renderer never measures text (jsdom). */
14
+ export declare const LABEL_CHAR_WIDTH = 7.5;
15
+ /** Keeps the default label clear of the inertia bar (drawn right next to the circle). */
16
+ export declare const INERTIA_LABEL_SHIFT = 6;
17
+ export declare const LABEL_BASELINE_SHIFT = -4;
18
+ /** Second line (sourcing method) below a name label. */
19
+ export declare const LABEL_METHOD_LINE_SHIFT = 15;
20
+ export declare const LABEL_OFFSET_LIMIT = 200;
21
+ export type TextAnchor = 'start' | 'middle' | 'end';
22
+ export interface LabelPlacement {
23
+ x: number;
24
+ y: number;
25
+ anchor: TextAnchor;
26
+ }
27
+ /** px from a component to its evolve target along the evolution axis (undefined without evolve). */
28
+ export declare function movementDeltaX(shape: WardleyShape, grid: Pick<EvolutionGrid, 'toCanvas'>): number | undefined;
29
+ export declare function estimatedLabelWidth(text: string): number;
30
+ /** The canonical OWM slot of a component name — the origin of its `label [dx, dy]`. */
31
+ export declare function componentLabelSlot(): {
32
+ x: number;
33
+ y: number;
34
+ };
35
+ /**
36
+ * A short rightward evolve would run the arrow, the target circle and the red target name into the
37
+ * source name, so the source name moves to the left of its circle.
38
+ */
39
+ export declare function isShortRightwardMovement(shape: WardleyShape, movementDeltaX: number): boolean;
40
+ /**
41
+ * @param movementDeltaX px from the component to its evolve target (undefined without an evolve).
42
+ */
43
+ export declare function componentLabelPlacement(shape: WardleyShape, movementDeltaX: number | undefined): LabelPlacement;
44
+ /** The canonical OWM slot of the evolve target name — the origin of the evolve's `label [dx, dy]`. */
45
+ export declare function movementLabelSlot(movementDeltaX: number): {
46
+ x: number;
47
+ y: number;
48
+ };
49
+ /** A leftward evolve puts the target name on the far side, away from the arrow. */
50
+ export declare function movementLabelPlacement(labelOffset: LabelOffset | undefined, movementDeltaX: number): LabelPlacement;
51
+ /** The canonical slot of an anchor name: centred above the person icon. */
52
+ export declare function anchorLabelSlot(): {
53
+ x: number;
54
+ y: number;
55
+ };
56
+ export declare function anchorLabelPlacement(shape: WardleyShape): LabelPlacement;
57
+ /** Integer px, clamped to ±LABEL_OFFSET_LIMIT; `undefined` when the label is back in its slot. */
58
+ export declare function normalizeLabelOffset(dx: number, dy: number): LabelOffset | undefined;
59
+ //# sourceMappingURL=label-layout.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"label-layout.d.ts","sourceRoot":"","sources":["../../src/draw/label-layout.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAEjE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzD,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAC;AAEpE;;;;;;;GAOG;AAEH,eAAO,MAAM,SAAS,IAAI,CAAC;AAC3B,iGAAiG;AACjG,eAAO,MAAM,gBAAgB,MAAM,CAAC;AACpC,yFAAyF;AACzF,eAAO,MAAM,mBAAmB,IAAI,CAAC;AACrC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AACvC,wDAAwD;AACxD,eAAO,MAAM,uBAAuB,KAAK,CAAC;AAC1C,eAAO,MAAM,kBAAkB,MAAM,CAAC;AAEtC,MAAM,MAAM,UAAU,GAAG,OAAO,GAAG,QAAQ,GAAG,KAAK,CAAC;AAEpD,MAAM,WAAW,cAAc;IAC7B,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;IACV,MAAM,EAAE,UAAU,CAAC;CACpB;AAED,oGAAoG;AACpG,wBAAgB,cAAc,CAC5B,KAAK,EAAE,YAAY,EACnB,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,UAAU,CAAC,GACpC,MAAM,GAAG,SAAS,CASpB;AAED,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,uFAAuF;AACvF,wBAAgB,kBAAkB,IAAI;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAE7D;AAED;;;GAGG;AACH,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,GAAG,OAAO,CAK7F;AAED;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,YAAY,EACnB,cAAc,EAAE,MAAM,GAAG,SAAS,GACjC,cAAc,CAchB;AAED,sGAAsG;AACtG,wBAAgB,iBAAiB,CAAC,cAAc,EAAE,MAAM,GAAG;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAElF;AAED,mFAAmF;AACnF,wBAAgB,sBAAsB,CACpC,WAAW,EAAE,WAAW,GAAG,SAAS,EACpC,cAAc,EAAE,MAAM,GACrB,cAAc,CAShB;AAED,2EAA2E;AAC3E,wBAAgB,eAAe,IAAI;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAE1D;AAED,wBAAgB,oBAAoB,CAAC,KAAK,EAAE,YAAY,GAAG,cAAc,CAOxE;AAED,kGAAkG;AAClG,wBAAgB,oBAAoB,CAAC,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,WAAW,GAAG,SAAS,CAKpF"}
@@ -1,3 +1,4 @@
1
1
  export declare const PALETTE_ICONS: Record<string, string>;
2
+ /** Region glyph; the initial letter tells the three kinds apart without relying on colour. */
2
3
  export declare function attitudeIcon(kind: string): string;
3
4
  //# sourceMappingURL=palette-icons.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"palette-icons.d.ts","sourceRoot":"","sources":["../../src/draw/palette-icons.ts"],"names":[],"mappings":"AAiBA,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA+ChD,CAAC;AAEF,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAKjD"}
1
+ {"version":3,"file":"palette-icons.d.ts","sourceRoot":"","sources":["../../src/draw/palette-icons.ts"],"names":[],"mappings":"AAiDA,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CA4ChD,CAAC;AAQF,8FAA8F;AAC9F,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAOjD"}
@@ -11,10 +11,8 @@ export declare const PLOT: {
11
11
  readonly marginRight: 44;
12
12
  readonly marginBottom: 58;
13
13
  };
14
- export declare const PLOT_MIN: {
15
- readonly width: 480;
16
- readonly height: 320;
17
- };
14
+ /** Smallest drawn plot — the size policy lives in schema-model (shared with the DSL parser). */
15
+ export { PLOT_MIN } from '@miragon/wardley-schema-model';
18
16
  export declare const NODE_SIZE = 34;
19
17
  export declare const COMPONENT_RADIUS = 15;
20
18
  export declare const COMPONENT_INNER_RADIUS = 12;
@@ -40,25 +38,25 @@ export declare function noteMetrics(label: string): {
40
38
  export declare const COLORS: {
41
39
  readonly paper: "#F9F7F7";
42
40
  readonly ink: "#1D1D1D";
43
- readonly inkSoft: "#5B5B5B";
44
- readonly axis: "rgba(51,93,229,0.22)";
45
- readonly axisText: "#6E7797";
46
- readonly grid: "rgba(51,93,229,0.12)";
47
- readonly band: "rgba(51,93,229,0.04)";
41
+ readonly inkSoft: "#6B6666";
42
+ readonly axis: "#8F8A8A";
43
+ readonly axisText: "#6B6666";
44
+ readonly grid: "#E6E2E2";
45
+ readonly band: "rgba(29,29,29,0.025)";
48
46
  readonly stroke: "#1D1D1D";
49
47
  readonly componentFill: "#FFFFFF";
50
48
  readonly anchorFill: "#1D1D1D";
51
- readonly dependency: "#9E9E9E";
49
+ readonly dependency: "#8F8A8A";
52
50
  readonly accent: "#335DE5";
53
51
  readonly accentSoft: "rgba(51,93,229,0.12)";
54
52
  readonly flow: "#335DE5";
55
53
  readonly movement: "#C92A2A";
56
54
  readonly inertia: "#1D1D1D";
57
- readonly noteText: "#5B5B5B";
55
+ readonly noteText: "#6B6666";
58
56
  readonly pipeline: "#1D1D1D";
59
57
  readonly annotationFill: "#FBF3E0";
60
58
  readonly plotBackground: "#FFFFFF";
61
- readonly accelerator: "#00C853";
59
+ readonly accelerator: "#0B7A55";
62
60
  readonly deaccelerator: "#C92A2A";
63
61
  };
64
62
  /**
@@ -108,16 +106,17 @@ export declare const ATTITUDE_COLORS: Record<string, {
108
106
  fill: string;
109
107
  stroke: string;
110
108
  }>;
109
+ /** Canonical region titles (Wardley's Pioneers / Settlers / Town Planners), keyed by kind. */
110
+ export declare const ATTITUDE_TITLES: Record<string, string>;
111
111
  export declare const FONT: {
112
112
  /**
113
113
  * Set as the `font-family` attribute DIRECTLY on all SVG text elements (canvas labels,
114
114
  * axis/stage text and consequently the SVG export too) – not inherited from a CSS container.
115
- * In EVERY context it reaches for the self-hosted 'Geist' (Miragon corporate typeface) if the
116
- * consumer provides it; otherwise (e.g. an export SVG opened standalone) it falls back safely to a
117
- * system sans. The library does NOT ship the font – consumers must self-host Geist themselves
118
- * (e.g. via @fontsource-variable/geist), see README.
115
+ * 'Geist Variable' comes first because that is the family name `@fontsource-variable/geist`
116
+ * registers; 'Geist' matches a locally installed (static) Geist. Without either it falls back to a
117
+ * system sans. The library does NOT ship the font – consumers self-host it, see README.
119
118
  */
120
- readonly family: "'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif";
119
+ readonly family: "'Geist Variable', 'Geist', ui-sans-serif, system-ui, -apple-system, 'Segoe UI', sans-serif";
121
120
  readonly label: 13;
122
121
  readonly axis: 12;
123
122
  readonly stage: 12;
@@ -1 +1 @@
1
- {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/draw/styles.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAK/F;;;GAGG;AACH,eAAO,MAAM,IAAI;;;;;;;CAOP,CAAC;AAEX,eAAO,MAAM,QAAQ;;;CAAuC,CAAC;AAE7D,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAKnC;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAQ7F;AAED;;;;;GAKG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;CAuBT,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASd,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAI5E,CAAC;AAEF,eAAO,MAAM,IAAI;IACf;;;;;;;OAOG;;;;;CAKK,CAAC"}
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/draw/styles.ts"],"names":[],"mappings":"AAAA,+FAA+F;AAK/F;;;GAGG;AACH,eAAO,MAAM,IAAI;;;;;;;CAOP,CAAC;AAEX,gGAAgG;AAChG,OAAO,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAEzD,eAAO,MAAM,SAAS,KAAK,CAAC;AAC5B,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,sBAAsB,KAAK,CAAC;AACzC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AACnC,eAAO,MAAM,eAAe,KAAK,CAAC;AAClC,eAAO,MAAM,oBAAoB,KAAK,CAAC;AAEvC,eAAO,MAAM,gBAAgB,KAAK,CAAC;AAKnC;;;GAGG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAQ7F;AAcD;;;;;GAKG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;CAuBT,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EASd,CAAC;AAEX;;;GAGG;AACH,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAK5E,CAAC;AAEF,8FAA8F;AAC9F,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAIlD,CAAC;AAEF,eAAO,MAAM,IAAI;IACf;;;;;;OAMG;;;;;CAMK,CAAC"}
@@ -1,8 +1,10 @@
1
+ import { Injector } from 'didi';
1
2
  import { default as Canvas } from 'diagram-js/lib/core/Canvas';
2
3
  import { default as EventBus } from 'diagram-js/lib/core/EventBus';
3
4
  import { default as Modeling } from 'diagram-js/lib/features/modeling/Modeling';
4
5
  import { default as Selection } from 'diagram-js/lib/features/selection/Selection';
5
6
  import { default as WardleyElementFactory } from '../model/WardleyElementFactory.js';
7
+ import { default as EvolutionGrid } from '../evolution-grid/EvolutionGrid.js';
6
8
  /**
7
9
  * Excalidraw-style polyline tool: activate, click point by point (rubber-band preview).
8
10
  * Finishing (like Excalidraw): click the LAST point again, double-click, Enter or Escape
@@ -15,12 +17,14 @@ export default class WardleyDrawTool {
15
17
  private readonly modeling;
16
18
  private readonly selection;
17
19
  private readonly factory;
20
+ private readonly grid;
21
+ private readonly injector;
18
22
  static $inject: string[];
19
23
  private active;
20
24
  private points;
21
25
  private cursor;
22
26
  private layer;
23
- constructor(canvas: Canvas, eventBus: EventBus, modeling: Modeling, selection: Selection, factory: WardleyElementFactory);
27
+ constructor(canvas: Canvas, eventBus: EventBus, modeling: Modeling, selection: Selection, factory: WardleyElementFactory, grid: EvolutionGrid, injector: Injector);
24
28
  isActive(): boolean;
25
29
  toggle(): void;
26
30
  /**
@@ -33,8 +37,17 @@ export default class WardleyDrawTool {
33
37
  finish(): void;
34
38
  /** Closes the shape (polygon) using the collected points. */
35
39
  private finishClosed;
40
+ /**
41
+ * Created at its exact bounds: a centre position would be rounded by diagram-js and could push
42
+ * points that sit on the plot edge half a pixel outside.
43
+ */
44
+ private create;
36
45
  cancel(): void;
37
46
  private deactivate;
47
+ /**
48
+ * Clamped into the plot: drawings are saved as normalized [0,1] points, so the preview must not
49
+ * show anything the saved shape cannot hold.
50
+ */
38
51
  private toCanvasPoint;
39
52
  /** Palette/context-pad/menus live INSIDE the container — let their clicks through. */
40
53
  private isChromeTarget;
@@ -1 +1 @@
1
- {"version":3,"file":"WardleyDrawTool.d.ts","sourceRoot":"","sources":["../../src/draw-tool/WardleyDrawTool.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,QAAQ,MAAM,2CAA2C,CAAC;AACtE,OAAO,KAAK,SAAS,MAAM,6CAA6C,CAAC;AAGzE,OAAO,KAAK,qBAAqB,MAAM,mCAAmC,CAAC;AAU3E;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAShC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IAZ1B,MAAM,CAAC,OAAO,WAA4E;IAE1F,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,KAAK,CAA2B;gBAGrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,qBAAqB;IAKjD,QAAQ,IAAI,OAAO;IAInB,MAAM,IAAI,IAAI;IAKd;;;OAGG;IACH,OAAO,CAAC,cAAc;IAKtB,QAAQ,IAAI,IAAI;IAgBhB,4EAA4E;IAC5E,MAAM,IAAI,IAAI;IAad,6DAA6D;IAC7D,OAAO,CAAC,YAAY;IAapB,MAAM,IAAI,IAAI;IAId,OAAO,CAAC,UAAU;IAelB,OAAO,CAAC,aAAa;IAUrB,sFAAsF;IACtF,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAmB1B;IAEF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAKzB;IAEF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAI1B;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAaxB;IAEF,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,YAAY;CAMrB"}
1
+ {"version":3,"file":"WardleyDrawTool.d.ts","sourceRoot":"","sources":["../../src/draw-tool/WardleyDrawTool.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAQrC,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,QAAQ,MAAM,2CAA2C,CAAC;AACtE,OAAO,KAAK,SAAS,MAAM,6CAA6C,CAAC;AAGzE,OAAO,KAAK,qBAAqB,MAAM,mCAAmC,CAAC;AAC3E,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAC;AAWpE;;;;;GAKG;AACH,MAAM,CAAC,OAAO,OAAO,eAAe;IAiBhC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS;IAC1B,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAtB3B,MAAM,CAAC,OAAO,WAQZ;IAEF,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAe;IAC7B,OAAO,CAAC,MAAM,CAAsB;IACpC,OAAO,CAAC,KAAK,CAA2B;gBAGrB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,qBAAqB,EAC9B,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,QAAQ;IAKrC,QAAQ,IAAI,OAAO;IAInB,MAAM,IAAI,IAAI;IAKd;;;OAGG;IACH,OAAO,CAAC,cAAc;IAKtB,QAAQ,IAAI,IAAI;IAgBhB,4EAA4E;IAC5E,MAAM,IAAI,IAAI;IAOd,6DAA6D;IAC7D,OAAO,CAAC,YAAY;IAOpB;;;OAGG;IACH,OAAO,CAAC,MAAM;IAWd,MAAM,IAAI,IAAI;IAId,OAAO,CAAC,UAAU;IAelB;;;OAGG;IACH,OAAO,CAAC,aAAa;IAYrB,sFAAsF;IACtF,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,QAAQ,CAAC,WAAW,CAmB1B;IAEF,OAAO,CAAC,QAAQ,CAAC,UAAU,CAKzB;IAEF,OAAO,CAAC,QAAQ,CAAC,WAAW,CAI1B;IAEF,OAAO,CAAC,QAAQ,CAAC,SAAS,CAaxB;IAEF,OAAO,CAAC,aAAa;IAiDrB,OAAO,CAAC,YAAY;CAMrB"}
@@ -1,3 +1,4 @@
1
+ import { Injector } from 'didi';
1
2
  import { default as Canvas } from 'diagram-js/lib/core/Canvas';
2
3
  import { default as EventBus } from 'diagram-js/lib/core/EventBus';
3
4
  import { default as EvolutionGrid } from '../evolution-grid/EvolutionGrid.js';
@@ -12,11 +13,12 @@ export default class WardleyDrawingHandles {
12
13
  private readonly canvas;
13
14
  private readonly modeling;
14
15
  private readonly grid;
16
+ private readonly injector;
15
17
  static $inject: string[];
16
18
  private shape;
17
19
  private group;
18
20
  private dragPreview;
19
- constructor(eventBus: EventBus, canvas: Canvas, modeling: WardleyModeling, grid: EvolutionGrid);
21
+ constructor(eventBus: EventBus, canvas: Canvas, modeling: WardleyModeling, grid: EvolutionGrid, injector: Injector);
20
22
  private attach;
21
23
  private absolutePoints;
22
24
  private render;
@@ -26,6 +28,7 @@ export default class WardleyDrawingHandles {
26
28
  private renderDragPreview;
27
29
  private clearDragPreview;
28
30
  private clear;
31
+ /** Clamped into the plot, like the draw tool: what the preview shows is what gets saved. */
29
32
  private toCanvasPoint;
30
33
  }
31
34
  //# sourceMappingURL=WardleyDrawingHandles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"WardleyDrawingHandles.d.ts","sourceRoot":"","sources":["../../src/draw-tool/WardleyDrawingHandles.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AAGzD,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAC;AACpE,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAC;AAOlE;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAQtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IAVvB,MAAM,CAAC,OAAO,WAA8D;IAE5E,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,WAAW,CAA2B;gBAG3B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,eAAe,EACzB,IAAI,EAAE,aAAa;IAgBtC,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,MAAM;IAsBd,OAAO,CAAC,SAAS;IAsBjB,8FAA8F;IAC9F,OAAO,CAAC,MAAM;IAkBd,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,KAAK;IAQb,OAAO,CAAC,aAAa;CAStB"}
1
+ {"version":3,"file":"WardleyDrawingHandles.d.ts","sourceRoot":"","sources":["../../src/draw-tool/WardleyDrawingHandles.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAQrC,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AAGzD,OAAO,KAAK,aAAa,MAAM,oCAAoC,CAAC;AACpE,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAC;AAOlE;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,qBAAqB;IAQtC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAX3B,MAAM,CAAC,OAAO,WAA0E;IAExF,OAAO,CAAC,KAAK,CAA6B;IAC1C,OAAO,CAAC,KAAK,CAA2B;IACxC,OAAO,CAAC,WAAW,CAA2B;gBAG3B,QAAQ,EAAE,QAAQ,EAClB,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,eAAe,EACzB,IAAI,EAAE,aAAa,EACnB,QAAQ,EAAE,QAAQ;IAgBrC,OAAO,CAAC,MAAM;IAKd,OAAO,CAAC,cAAc;IAKtB,OAAO,CAAC,MAAM;IAsBd,OAAO,CAAC,SAAS;IAsBjB,8FAA8F;IAC9F,OAAO,CAAC,MAAM;IAkBd,OAAO,CAAC,iBAAiB;IAezB,OAAO,CAAC,gBAAgB;IAOxB,OAAO,CAAC,KAAK;IAQb,4FAA4F;IAC5F,OAAO,CAAC,aAAa;CAWtB"}
@@ -0,0 +1,56 @@
1
+ import { Modeler } from './Modeler.js';
2
+ import { FieldSelection } from './label-editing/WardleyLabelEditing.js';
3
+ /**
4
+ * A connection by what it joins: dependency ids are positional (`dep_3`), so after a re-import the
5
+ * same id may name a different link.
6
+ */
7
+ interface ConnectionKey {
8
+ sourceId: string;
9
+ targetId: string;
10
+ wardleyType: string;
11
+ }
12
+ type OpenEdit = {
13
+ kind: 'name';
14
+ elementId: string;
15
+ value: string;
16
+ selection?: FieldSelection;
17
+ } | {
18
+ kind: 'connection';
19
+ key: ConnectionKey;
20
+ value: string;
21
+ selection?: FieldSelection;
22
+ } | {
23
+ kind: 'link';
24
+ elementId: string;
25
+ value: string;
26
+ };
27
+ /**
28
+ * What the user had selected and was typing, put aside across a re-import. Element ids are the
29
+ * ids the document gives the elements (`readBackIds`): an element created or renamed on the
30
+ * canvas holds another id until the text is read again, and a re-import reads it.
31
+ */
32
+ export interface EditorState {
33
+ readonly shapeIds: readonly string[];
34
+ readonly connections: readonly ConnectionKey[];
35
+ readonly edit?: OpenEdit;
36
+ /** The canvas's own id of each element above, by its document id, for an import that failed. */
37
+ readonly canvasIds?: ReadonlyMap<string, string>;
38
+ }
39
+ export interface RestoreOptions {
40
+ /** The re-import was rejected: the canvas still holds the elements under their own ids. */
41
+ importRejected?: boolean;
42
+ }
43
+ /**
44
+ * Captures the selection and any open inline editor, and closes the editor without saving (a save
45
+ * would push a command onto a stack the import is about to clear). Call before re-importing a map
46
+ * that changed outside the editor, then `restoreEditorState` afterwards.
47
+ */
48
+ export declare function setAsideEditorState(modeler: Modeler): EditorState;
49
+ /**
50
+ * Brings back what `setAsideEditorState` captured, for the elements that still exist: names are
51
+ * stable ids (`cmp_tea`), connections are matched by their ends. An editor whose element is gone
52
+ * leaves keyboard focus on the canvas rather than on the page.
53
+ */
54
+ export declare function restoreEditorState(modeler: Modeler, state: EditorState, options?: RestoreOptions): void;
55
+ export {};
56
+ //# sourceMappingURL=editor-state.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"editor-state.d.ts","sourceRoot":"","sources":["../src/editor-state.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAM7E;;;GAGG;AACH,UAAU,aAAa;IACrB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,KAAK,QAAQ,GACT;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,cAAc,CAAA;CAAE,GAC9E;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,GAAG,EAAE,aAAa,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,CAAC,EAAE,cAAc,CAAA;CAAE,GACrF;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEvD;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,QAAQ,CAAC,QAAQ,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,WAAW,EAAE,SAAS,aAAa,EAAE,CAAC;IAC/C,QAAQ,CAAC,IAAI,CAAC,EAAE,QAAQ,CAAC;IACzB,gGAAgG;IAChG,QAAQ,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAClD;AAED,MAAM,WAAW,cAAc;IAC7B,2FAA2F;IAC3F,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAqCD;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,WAAW,CA+CjE;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,WAAW,EAClB,OAAO,GAAE,cAAmB,GAC3B,IAAI,CA2CN"}
@@ -1,44 +1,78 @@
1
1
  import { default as CommandInterceptor } from 'diagram-js/lib/command/CommandInterceptor';
2
2
  import { default as EventBus } from 'diagram-js/lib/core/EventBus';
3
3
  import { default as ElementRegistry } from 'diagram-js/lib/core/ElementRegistry';
4
- import { default as BaseLayouter } from 'diagram-js/lib/layout/BaseLayouter';
4
+ import { default as Canvas } from 'diagram-js/lib/core/Canvas';
5
+ import { default as Modeling } from 'diagram-js/lib/features/modeling/Modeling';
6
+ import { default as WardleyModeling } from '../modeling/WardleyModeling.js';
5
7
  import { default as EvolutionGrid } from './EvolutionGrid.js';
6
8
  /**
7
- * After every geometry change (move/create/resize), keeps the normalized Wardley coordinates
8
- * in sync with the pixel geometry — in BOTH directions (postExecuted AND reverted), so that undo/redo
9
- * stays consistent (concept doc §5.3). `EvolutionGrid` is the single source of math (P7).
9
+ * Keeps the normalized Wardley coordinates and the pixel geometry consistent across execute, undo
10
+ * AND redo (concept doc §5.3). `EvolutionGrid` is the single source of math (P7).
10
11
  *
11
- * It also manages pipeline membership: a component whose midpoint lands inside a pipeline box
12
- * becomes a child (pipelineId) and is glued vertically onto the pipeline; dragging it out ends
13
- * the membership. When the pipeline moves, its children follow vertically.
12
+ * Two strictly separated parts, because diagram-js replays only `execute`/`revert` on redo and
13
+ * skips every pre/post hook:
14
+ *
15
+ * 1. Derivation (`executed` + `reverted`): evolution, visibility, the pipeline range and the
16
+ * attitude corner are pure functions of the current geometry and membership. It never writes
17
+ * geometry, so replaying it on redo or undo always lands on the same model.
18
+ * 2. Corrections (pre/post hooks of the outermost geometry command only): moves are clamped by
19
+ * replacing the command's delta before it runs, resizes by replacing its bounds; pipeline glue,
20
+ * membership changes and shifted evolve targets are nested commands. All of them join the same
21
+ * undo step and are replayed exactly on redo.
22
+ *
23
+ * Pipelines behave like groups: moving the box carries its members and its anchor component (the
24
+ * pipeline group behavior adds them to the move), and moving the anchor component vertically
25
+ * carries the box. A component dropped into a box joins it and is glued onto its row; dragging it
26
+ * out ends the membership.
14
27
  */
15
28
  export default class EvolutionConstraintBehavior extends CommandInterceptor {
16
29
  private readonly eventBus;
17
30
  private readonly grid;
18
31
  private readonly elementRegistry;
19
- private readonly layouter;
32
+ private readonly canvas;
33
+ private readonly modeling;
34
+ private readonly wardleyModeling;
20
35
  static $inject: string[];
21
- constructor(eventBus: EventBus, grid: EvolutionGrid, elementRegistry: ElementRegistry, layouter: BaseLayouter);
22
- private syncAll;
23
- private syncFromGeometry;
24
- /** Applies pixel geometry only when it actually drifted (and re-renders then). */
25
- private applyGeometry;
26
- /** Derives pipeline membership from the geometry: midpoint inside the box = child. */
27
- private updateMembership;
28
- /** Glues a child vertically onto its pipeline (children share its visibility). */
29
- private glueToPipeline;
36
+ private topLevelContext;
37
+ private readonly evolutionsBefore;
38
+ constructor(eventBus: EventBus, grid: EvolutionGrid, elementRegistry: ElementRegistry, canvas: Canvas, modeling: Modeling, wardleyModeling: WardleyModeling);
39
+ private isTopLevel;
40
+ private followersOf;
41
+ private rememberEvolutions;
42
+ private deriveFromGeometry;
43
+ private derivePipeline;
44
+ private pipelineOfMember;
45
+ private pipelineVisibility;
46
+ private applyCorrections;
47
+ private completeMove;
48
+ /** Moving an anchor component up or down takes its pipeline box and the members along. */
49
+ private carryPipelinesOfMovedAnchors;
30
50
  /**
31
- * After a pipeline move/resize: children STAY where they are (move them together via lasso) —
32
- * membership is purely geometry-derived in both directions: components no longer inside the
33
- * box are released, components now inside are (re-)adopted. No vertical snapping here, so
34
- * nothing jumps; this also makes undo of a pipeline move restore memberships.
51
+ * A moved component whose centre lands in a pipeline box joins it and is glued onto its row; one
52
+ * that leaves its box is released. Anchor components never join (they anchor the box itself).
35
53
  */
36
54
  private reconcileMembership;
55
+ /** A narrowed pipeline lets go of the members whose centre is no longer inside the box. */
56
+ private releaseMembersOutside;
57
+ private release;
58
+ /**
59
+ * A component moved onto or past its evolve target keeps the planned distance instead of
60
+ * pointing backwards; at the right edge, where no forward target is left, the movement goes.
61
+ */
62
+ private shiftPassedEvolveTargets;
63
+ private moveBy;
64
+ private plotBounds;
37
65
  /**
38
- * Triggers a re-render for programmatically moved shapes plus their connections. The waypoints are
39
- * re-laid out too: the drawn line follows the shape on its own, but its hit band is built from them.
66
+ * The part of a shape that has to stay inside the plot: the centre of a node, the anchor line of
67
+ * a pipeline, the whole rectangle of an attitude and every point of a drawing.
40
68
  */
41
- private fireChanged;
69
+ private extentInsidePlot;
70
+ /** The largest part of `delta` that keeps every shape's extent inside the plot. */
71
+ private clampDelta;
72
+ /** Pipelines only stretch along the evolution axis, and only within the plot. */
73
+ private horizontalPipelineBounds;
74
+ private boundsInsidePlot;
75
+ private spanInside;
42
76
  }
43
77
  /** Clamps an evolution range to [0,1] while guaranteeing `start < end` (schema invariant). */
44
78
  export declare function clampRange(start: number, end: number): [number, number];
@@ -1 +1 @@
1
- {"version":3,"file":"EvolutionConstraintBehavior.d.ts","sourceRoot":"","sources":["../../src/evolution-grid/EvolutionConstraintBehavior.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,2CAA2C,CAAC;AAC3E,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,YAAY,MAAM,oCAAoC,CAAC;AAEnE,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAC;AAgBpD;;;;;;;;GAQG;AACH,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,kBAAkB;IAIvE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAN3B,OAAgB,OAAO,WAAgE;gBAGpE,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,aAAa,EACnB,eAAe,EAAE,eAAe,EAChC,QAAQ,EAAE,YAAY;IAmCzC,OAAO,CAAC,OAAO;IAYf,OAAO,CAAC,gBAAgB;IA2CxB,kFAAkF;IAClF,OAAO,CAAC,aAAa;IAoBrB,sFAAsF;IACtF,OAAO,CAAC,gBAAgB;IAoBxB,kFAAkF;IAClF,OAAO,CAAC,cAAc;IAMtB;;;;;OAKG;IACH,OAAO,CAAC,mBAAmB;IA6B3B;;;OAGG;IACH,OAAO,CAAC,WAAW;CAOpB;AAQD,8FAA8F;AAC9F,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAIvE"}
1
+ {"version":3,"file":"EvolutionConstraintBehavior.d.ts","sourceRoot":"","sources":["../../src/evolution-grid/EvolutionConstraintBehavior.ts"],"names":[],"mappings":"AAAA,OAAO,kBAAkB,MAAM,2CAA2C,CAAC;AAC3E,OAAO,KAAK,QAAQ,MAAM,8BAA8B,CAAC;AACzD,OAAO,KAAK,eAAe,MAAM,qCAAqC,CAAC;AACvE,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,KAAK,QAAQ,MAAM,2CAA2C,CAAC;AAGtE,OAAO,KAAK,eAAe,MAAM,gCAAgC,CAAC;AASlE,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAC;AA6CpD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,OAAO,OAAO,2BAA4B,SAAQ,kBAAkB;IAcvE,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAChC,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,QAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAlBlC,OAAgB,OAAO,WAOrB;IAEF,OAAO,CAAC,eAAe,CAAgC;IACvD,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAA6D;gBAG3E,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,aAAa,EACnB,eAAe,EAAE,eAAe,EAChC,MAAM,EAAE,MAAM,EACd,QAAQ,EAAE,QAAQ,EAClB,eAAe,EAAE,eAAe;IAgFnD,OAAO,CAAC,UAAU;IAIlB,OAAO,CAAC,WAAW;IAInB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,kBAAkB;IAiC1B,OAAO,CAAC,cAAc;IActB,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,gBAAgB;IA6BxB,OAAO,CAAC,YAAY;IAMpB,0FAA0F;IAC1F,OAAO,CAAC,4BAA4B;IAkBpC;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAmB3B,2FAA2F;IAC3F,OAAO,CAAC,qBAAqB;IAO7B,OAAO,CAAC,OAAO;IAOf;;;OAGG;IACH,OAAO,CAAC,wBAAwB;IAkBhC,OAAO,CAAC,MAAM;IAOd,OAAO,CAAC,UAAU;IAWlB;;;OAGG;IACH,OAAO,CAAC,gBAAgB;IAoBxB,mFAAmF;IACnF,OAAO,CAAC,UAAU;IAclB,iFAAiF;IACjF,OAAO,CAAC,wBAAwB;IAKhC,OAAO,CAAC,gBAAgB;IAMxB,OAAO,CAAC,UAAU;CAWnB;AA4BD,8FAA8F;AAC9F,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAIvE"}
@@ -1,6 +1,8 @@
1
1
  import { Coordinate, EvolutionStage, MapConfig } from '@miragon/wardley-schema-model';
2
2
  import { default as Canvas } from 'diagram-js/lib/core/Canvas';
3
3
  import { Point } from 'diagram-js/lib/util/Types';
4
+ /** Value-chain end labels [bottom, top] unless the map sets `y-axis Label->Bottom->Top`. */
5
+ export declare const DEFAULT_Y_AXIS_END_LABELS: readonly [string, string];
4
6
  /**
5
7
  * Holds the SINGLE pixel<->normalized transform (guiding principle P7) and renders the
6
8
  * non-interactive axis/grid background into its own diagram-js layer (z below the
@@ -1 +1 @@
1
- {"version":3,"file":"EvolutionGrid.d.ts","sourceRoot":"","sources":["../../src/evolution-grid/EvolutionGrid.ts"],"names":[],"mappings":"AAMA,OAAO,EAIL,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AASvD;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;IAUpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IATnC,MAAM,CAAC,OAAO,WAAc;IAE5B,OAAO,CAAC,UAAU,CAA+D;IACjF,OAAO,CAAC,MAAM,CAAuE;IACrF,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,cAAc,CAAuD;IAC7E,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,UAAU,CAAuB;gBAEZ,MAAM,EAAE,MAAM;IAE3C,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IASlC,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK;IAOlC,kDAAkD;IAClD,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAOpC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc;IAI1C,oEAAoE;IACpE,aAAa,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAIlD,WAAW,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAIhD,gEAAgE;IAChE,WAAW,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAStE,MAAM,IAAI,IAAI;CAuFf"}
1
+ {"version":3,"file":"EvolutionGrid.d.ts","sourceRoot":"","sources":["../../src/evolution-grid/EvolutionGrid.ts"],"names":[],"mappings":"AAMA,OAAO,EAKL,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,SAAS,EACf,MAAM,+BAA+B,CAAC;AACvC,OAAO,KAAK,MAAM,MAAM,4BAA4B,CAAC;AACrD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,2BAA2B,CAAC;AAIvD,4FAA4F;AAC5F,eAAO,MAAM,yBAAyB,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAA4B,CAAC;AAS7F;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,aAAa;IAUpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IATnC,MAAM,CAAC,OAAO,WAAc;IAE5B,OAAO,CAAC,UAAU,CAA+D;IACjF,OAAO,CAAC,MAAM,CAAuE;IACrF,OAAO,CAAC,UAAU,CAAiB;IACnC,OAAO,CAAC,cAAc,CAAwD;IAC9E,OAAO,CAAC,SAAS,CAAsB;IACvC,OAAO,CAAC,UAAU,CAAuB;gBAEZ,MAAM,EAAE,MAAM;IAE3C,SAAS,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI;IAUlC,qDAAqD;IACrD,QAAQ,CAAC,KAAK,EAAE,UAAU,GAAG,KAAK;IAOlC,kDAAkD;IAClD,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAOpC,OAAO,CAAC,SAAS,EAAE,MAAM,GAAG,cAAc;IAI1C,oEAAoE;IACpE,aAAa,IAAI,SAAS,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;IAIlD,WAAW,IAAI;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAIhD,gEAAgE;IAChE,WAAW,IAAI;QAAE,CAAC,EAAE,MAAM,CAAC;QAAC,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAStE,MAAM,IAAI,IAAI;CA6Ff"}