@likec4/diagram 1.22.1 → 1.23.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 (238) hide show
  1. package/dist/LikeC4Diagram.js +2 -3
  2. package/dist/base/BaseXYFlow.js +0 -1
  3. package/dist/base/example/custom.d.ts +1 -1
  4. package/dist/base/primitives/customEdge.d.ts +1 -1
  5. package/dist/base/primitives/edge/EdgePath.d.ts +1 -1
  6. package/dist/context/DiagramEventHandlers.d.ts +6 -2
  7. package/dist/context/DiagramEventHandlers.js +25 -20
  8. package/dist/context/DiagramFeatures.js +9 -22
  9. package/dist/{style.css → diagram.css} +1 -1
  10. package/dist/hooks/index.d.ts +0 -1
  11. package/dist/hooks/safeContext.d.ts +7 -0
  12. package/dist/hooks/safeContext.js +14 -0
  13. package/dist/hooks/useCurrentViewId.js +1 -1
  14. package/dist/hooks/useDiagram.d.ts +6587 -5969
  15. package/dist/hooks/useDiagram.js +26 -14
  16. package/dist/index.js +1 -1
  17. package/dist/likec4diagram/DiagramUI.js +12 -5
  18. package/dist/likec4diagram/XYFlow.js +3 -4
  19. package/dist/likec4diagram/custom/edges/NotePopover.js +1 -2
  20. package/dist/likec4diagram/custom/edges/RelationshipEdge.d.ts +1 -1
  21. package/dist/likec4diagram/custom/edges/RelationshipEdge.js +1 -1
  22. package/dist/likec4diagram/custom/edges/RelationshipsDropdownMenu.js +6 -7
  23. package/dist/likec4diagram/custom/index.d.ts +1 -1
  24. package/dist/likec4diagram/custom/nodes/toolbar/Toolbar.js +1 -1
  25. package/dist/likec4diagram/ui/controls/ChangeAutoLayoutButton.js +1 -2
  26. package/dist/likec4diagram/ui/controls/Controls.js +3 -13
  27. package/dist/likec4diagram/ui/controls/NavigationButtons.js +1 -2
  28. package/dist/likec4diagram/ui/controls/ToggleReadonly.js +1 -2
  29. package/dist/likec4diagram/ui/diagram-title/DiagramTitlePanel.js +8 -9
  30. package/dist/likec4diagram/ui/notation/NotationPanel.js +1 -2
  31. package/dist/likec4diagram/ui/search/LikeC4Search.js +2 -4
  32. package/dist/likec4diagram/ui/search/ViewsColum.js +1 -1
  33. package/dist/likec4diagram/ui/search/state.js +1 -1
  34. package/dist/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.js +1 -2
  35. package/dist/likec4diagram/useViewToNodesEdges.d.ts +0 -1
  36. package/dist/likec4diagram/useViewToNodesEdges.js +0 -2
  37. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Accordion/Accordion.module.css.mjs.vanilla.css.js +1 -0
  38. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ActionIcon/ActionIcon.module.css.mjs.vanilla.css.js +1 -0
  39. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Affix/Affix.module.css.mjs.vanilla.css.js +1 -0
  40. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Alert/Alert.module.css.mjs.vanilla.css.js +1 -0
  41. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Anchor/Anchor.module.css.mjs.vanilla.css.js +1 -0
  42. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AngleSlider/AngleSlider.module.css.mjs.vanilla.css.js +1 -0
  43. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AppShell/AppShell.module.css.mjs.vanilla.css.js +1 -0
  44. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/AspectRatio/AspectRatio.module.css.mjs.vanilla.css.js +1 -0
  45. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Avatar/Avatar.module.css.mjs.vanilla.css.js +1 -0
  46. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/BackgroundImage/BackgroundImage.module.css.mjs.vanilla.css.js +1 -0
  47. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Badge/Badge.module.css.mjs.vanilla.css.js +1 -0
  48. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Blockquote/Blockquote.module.css.mjs.vanilla.css.js +1 -0
  49. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Breadcrumbs/Breadcrumbs.module.css.mjs.vanilla.css.js +1 -0
  50. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Burger/Burger.module.css.mjs.vanilla.css.js +1 -0
  51. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Button/Button.module.css.mjs.vanilla.css.js +1 -0
  52. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Card/Card.module.css.mjs.vanilla.css.js +1 -0
  53. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Center/Center.module.css.mjs.vanilla.css.js +1 -0
  54. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/Checkbox.module.css.mjs.vanilla.css.js +1 -0
  55. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/CheckboxCard/CheckboxCard.module.css.mjs.vanilla.css.js +1 -0
  56. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Checkbox/CheckboxIndicator/CheckboxIndicator.module.css.mjs.vanilla.css.js +1 -0
  57. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Chip/Chip.module.css.mjs.vanilla.css.js +1 -0
  58. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/CloseButton/CloseButton.module.css.mjs.vanilla.css.js +1 -0
  59. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Code/Code.module.css.mjs.vanilla.css.js +1 -0
  60. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorInput/ColorInput.module.css.mjs.vanilla.css.js +1 -0
  61. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorPicker/ColorPicker.module.css.mjs.vanilla.css.js +1 -0
  62. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ColorSwatch/ColorSwatch.module.css.mjs.vanilla.css.js +1 -0
  63. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Combobox/Combobox.module.css.mjs.vanilla.css.js +1 -0
  64. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Container/Container.module.css.mjs.vanilla.css.js +1 -0
  65. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Dialog/Dialog.module.css.mjs.vanilla.css.js +1 -0
  66. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Divider/Divider.module.css.mjs.vanilla.css.js +1 -0
  67. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Drawer/Drawer.module.css.mjs.vanilla.css.js +1 -0
  68. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Fieldset/Fieldset.module.css.mjs.vanilla.css.js +1 -0
  69. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Flex/Flex.module.css.mjs.vanilla.css.js +1 -0
  70. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/FloatingIndicator/FloatingIndicator.module.css.mjs.vanilla.css.js +1 -0
  71. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Grid/Grid.module.css.mjs.vanilla.css.js +1 -0
  72. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Group/Group.module.css.mjs.vanilla.css.js +1 -0
  73. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Image/Image.module.css.mjs.vanilla.css.js +1 -0
  74. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Indicator/Indicator.module.css.mjs.vanilla.css.js +1 -0
  75. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/InlineInput/InlineInput.module.css.mjs.vanilla.css.js +1 -0
  76. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Input/Input.module.css.mjs.vanilla.css.js +1 -0
  77. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Kbd/Kbd.module.css.mjs.vanilla.css.js +1 -0
  78. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/List/List.module.css.mjs.vanilla.css.js +1 -0
  79. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Loader/Loader.module.css.mjs.vanilla.css.js +1 -0
  80. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/LoadingOverlay/LoadingOverlay.module.css.mjs.vanilla.css.js +1 -0
  81. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Mark/Mark.module.css.mjs.vanilla.css.js +1 -0
  82. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Menu/Menu.module.css.mjs.vanilla.css.js +1 -0
  83. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Modal/Modal.module.css.mjs.vanilla.css.js +1 -0
  84. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ModalBase/ModalBase.module.css.mjs.vanilla.css.js +1 -0
  85. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/NavLink/NavLink.module.css.mjs.vanilla.css.js +1 -0
  86. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Notification/Notification.module.css.mjs.vanilla.css.js +1 -0
  87. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/NumberInput/NumberInput.module.css.mjs.vanilla.css.js +1 -0
  88. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Overlay/Overlay.module.css.mjs.vanilla.css.js +1 -0
  89. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Pagination/Pagination.module.css.mjs.vanilla.css.js +1 -0
  90. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Paper/Paper.module.css.mjs.vanilla.css.js +1 -0
  91. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PasswordInput/PasswordInput.module.css.mjs.vanilla.css.js +1 -0
  92. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Pill/Pill.module.css.mjs.vanilla.css.js +1 -0
  93. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PillsInput/PillsInput.module.css.mjs.vanilla.css.js +1 -0
  94. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/PinInput/PinInput.module.css.mjs.vanilla.css.js +1 -0
  95. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Popover/Popover.module.css.mjs.vanilla.css.js +1 -0
  96. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Progress/Progress.module.css.mjs.vanilla.css.js +1 -0
  97. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/Radio.module.css.mjs.vanilla.css.js +1 -0
  98. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/RadioCard/RadioCard.module.css.mjs.vanilla.css.js +1 -0
  99. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Radio/RadioIndicator/RadioIndicator.module.css.mjs.vanilla.css.js +1 -0
  100. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Rating/Rating.module.css.mjs.vanilla.css.js +1 -0
  101. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/RingProgress/RingProgress.module.css.mjs.vanilla.css.js +1 -0
  102. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ScrollArea/ScrollArea.module.css.mjs.vanilla.css.js +1 -0
  103. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SegmentedControl/SegmentedControl.module.css.mjs.vanilla.css.js +1 -0
  104. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SemiCircleProgress/SemiCircleProgress.module.css.mjs.vanilla.css.js +1 -0
  105. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/SimpleGrid/SimpleGrid.module.css.mjs.vanilla.css.js +1 -0
  106. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Skeleton/Skeleton.module.css.mjs.vanilla.css.js +1 -0
  107. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Slider/Slider.module.css.mjs.vanilla.css.js +1 -0
  108. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Spoiler/Spoiler.module.css.mjs.vanilla.css.js +1 -0
  109. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Stack/Stack.module.css.mjs.vanilla.css.js +1 -0
  110. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Stepper/Stepper.module.css.mjs.vanilla.css.js +1 -0
  111. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Switch/Switch.module.css.mjs.vanilla.css.js +1 -0
  112. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Table/Table.module.css.mjs.vanilla.css.js +1 -0
  113. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/TableOfContents/TableOfContents.module.css.mjs.vanilla.css.js +1 -0
  114. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tabs/Tabs.module.css.mjs.vanilla.css.js +1 -0
  115. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Text/Text.module.css.mjs.vanilla.css.js +1 -0
  116. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/ThemeIcon/ThemeIcon.module.css.mjs.vanilla.css.js +1 -0
  117. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Timeline/Timeline.module.css.mjs.vanilla.css.js +1 -0
  118. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Title/Title.module.css.mjs.vanilla.css.js +1 -0
  119. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tooltip/Tooltip.module.css.mjs.vanilla.css.js +1 -0
  120. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/Tree/Tree.module.css.mjs.vanilla.css.js +1 -0
  121. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/TypographyStylesProvider/TypographyStylesProvider.module.css.mjs.vanilla.css.js +1 -0
  122. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/UnstyledButton/UnstyledButton.module.css.mjs.vanilla.css.js +1 -0
  123. package/dist/node_modules/.pnpm/@mantine_core@7.17.0_@mantine_hooks@7.17.0_react@19.0.0__@types_react@19.0.8_react-dom@19.0.0_react@19.0.0__react@19.0.0/node_modules/@mantine/core/esm/components/VisuallyHidden/VisuallyHidden.module.css.mjs.vanilla.css.js +1 -0
  124. package/dist/overlays/Overlays.d.ts +4 -1
  125. package/dist/overlays/Overlays.js +72 -60
  126. package/dist/overlays/element-details/ElementDetails.d.ts +6 -0
  127. package/dist/overlays/element-details/ElementDetails.js +31 -0
  128. package/dist/overlays/element-details/ElementDetailsCard.js +4 -9
  129. package/dist/overlays/element-details/TabPanelDeployments.js +1 -1
  130. package/dist/overlays/element-details/TabPanelRelationships.d.ts +3 -4
  131. package/dist/overlays/element-details/TabPanelRelationships.js +20 -20
  132. package/dist/overlays/element-details/actor.d.ts +20626 -0
  133. package/dist/overlays/element-details/actor.js +68 -0
  134. package/dist/overlays/element-details/actorContext.d.ts +7 -0
  135. package/dist/overlays/element-details/actorContext.js +14 -0
  136. package/dist/overlays/overlay/Overlay.css.js +87 -87
  137. package/dist/overlays/overlay/Overlay.js +16 -1
  138. package/dist/overlays/overlaysActor.d.ts +190 -0
  139. package/dist/overlays/overlaysActor.js +233 -0
  140. package/dist/overlays/relationship-details/actor.d.ts +130 -4
  141. package/dist/overlays/relationship-details/actor.js +2 -2
  142. package/dist/overlays/relationship-details/custom/edgeTypes.d.ts +1 -1
  143. package/dist/overlays/relationship-details/custom/nodeTypes.js +17 -0
  144. package/dist/overlays/relationships-browser/RelationshipsBrowser.js +17 -19
  145. package/dist/overlays/relationships-browser/actor.d.ts +1095 -8
  146. package/dist/overlays/relationships-browser/actor.js +181 -173
  147. package/dist/overlays/relationships-browser/custom/ElementActions.js +3 -2
  148. package/dist/overlays/relationships-browser/custom/edgeTypes.d.ts +1 -1
  149. package/dist/overlays/relationships-browser/custom/nodeTypes.js +17 -0
  150. package/dist/overlays/relationships-browser/hooks.d.ts +1 -1
  151. package/dist/overlays/relationships-browser/hooks.js +7 -5
  152. package/dist/overlays/types.d.ts +29 -0
  153. package/dist/{likec4diagram/DiagramActor.d.ts → state/DiagramActorProvider.d.ts} +2 -2
  154. package/dist/state/DiagramActorProvider.js +77 -0
  155. package/dist/{likec4diagram/state → state}/assign.d.ts +2 -2
  156. package/dist/{likec4diagram/state → state}/assign.js +2 -2
  157. package/dist/state/diagram-machine.d.ts +11680 -0
  158. package/dist/{likec4diagram/state/machine.js → state/diagram-machine.js} +105 -194
  159. package/dist/{likec4diagram/state → state}/hotkeyActor.d.ts +1 -1
  160. package/dist/state/hotkeyActor.js +26 -0
  161. package/dist/state/inspector.d.ts +4 -0
  162. package/dist/{likec4diagram/state → state}/syncManualLayoutActor.d.ts +7 -8
  163. package/dist/{likec4diagram/state → state}/syncManualLayoutActor.js +3 -5
  164. package/dist/state/types.d.ts +19 -0
  165. package/dist/state/utils.d.ts +17 -0
  166. package/dist/{likec4diagram/state → state}/utils.js +20 -1
  167. package/package.json +20 -24
  168. package/src/LikeC4Diagram.tsx +3 -5
  169. package/src/base/BaseXYFlow.tsx +2 -1
  170. package/src/base/primitives/compound/CompoundTitle.css.ts +0 -5
  171. package/src/context/DiagramEventHandlers.tsx +27 -13
  172. package/src/context/DiagramFeatures.tsx +8 -21
  173. package/src/hooks/index.ts +0 -1
  174. package/src/hooks/safeContext.tsx +16 -0
  175. package/src/hooks/useCurrentViewId.ts +2 -2
  176. package/src/hooks/useDiagram.ts +42 -15
  177. package/src/likec4diagram/DiagramUI.tsx +14 -11
  178. package/src/likec4diagram/XYFlow.tsx +4 -5
  179. package/src/likec4diagram/custom/edges/NotePopover.tsx +1 -2
  180. package/src/likec4diagram/custom/edges/RelationshipEdge.tsx +1 -1
  181. package/src/likec4diagram/custom/edges/RelationshipsDropdownMenu.tsx +6 -7
  182. package/src/likec4diagram/custom/nodes/toolbar/Toolbar.tsx +1 -1
  183. package/src/likec4diagram/ui/controls/ChangeAutoLayoutButton.tsx +2 -3
  184. package/src/likec4diagram/ui/controls/Controls.tsx +2 -4
  185. package/src/likec4diagram/ui/controls/NavigationButtons.tsx +1 -2
  186. package/src/likec4diagram/ui/controls/ToggleReadonly.tsx +2 -3
  187. package/src/likec4diagram/ui/diagram-title/DiagramTitlePanel.tsx +8 -11
  188. package/src/likec4diagram/ui/notation/NotationPanel.tsx +2 -3
  189. package/src/likec4diagram/ui/search/LikeC4Search.tsx +1 -4
  190. package/src/likec4diagram/ui/search/ViewsColum.tsx +1 -1
  191. package/src/likec4diagram/ui/search/state.ts +1 -1
  192. package/src/likec4diagram/ui/walkthrough/DynamicViewWalkthrough.tsx +1 -2
  193. package/src/likec4diagram/useViewToNodesEdges.ts +0 -4
  194. package/src/overlays/Overlays.tsx +81 -71
  195. package/src/overlays/element-details/ElementDetails.tsx +33 -0
  196. package/src/overlays/element-details/ElementDetailsCard.tsx +8 -18
  197. package/src/overlays/element-details/TabPanelDeployments.tsx +1 -1
  198. package/src/overlays/element-details/TabPanelRelationships.tsx +33 -32
  199. package/src/overlays/element-details/actor.ts +102 -0
  200. package/src/overlays/element-details/actorContext.tsx +16 -0
  201. package/src/overlays/overlay/Overlay.tsx +14 -11
  202. package/src/overlays/overlaysActor.ts +278 -0
  203. package/src/overlays/relationship-details/actor.ts +8 -11
  204. package/src/overlays/relationship-details/custom/nodeTypes.tsx +18 -0
  205. package/src/overlays/relationships-browser/RelationshipsBrowser.tsx +23 -29
  206. package/src/overlays/relationships-browser/actor.ts +216 -220
  207. package/src/overlays/relationships-browser/custom/ElementActions.tsx +3 -2
  208. package/src/overlays/relationships-browser/custom/nodeTypes.tsx +20 -0
  209. package/src/overlays/relationships-browser/hooks.ts +7 -5
  210. package/src/overlays/types.ts +39 -0
  211. package/src/state/DiagramActorProvider.tsx +97 -0
  212. package/src/{likec4diagram/state → state}/assign.ts +4 -4
  213. package/src/{likec4diagram/state/machine.ts → state/diagram-machine.ts} +130 -205
  214. package/src/state/hotkeyActor.ts +29 -0
  215. package/src/state/inspector.ts +5 -0
  216. package/src/{likec4diagram/state → state}/syncManualLayoutActor.ts +8 -12
  217. package/src/state/types.ts +23 -0
  218. package/src/{likec4diagram/state → state}/utils.ts +24 -2
  219. package/dist/hooks/useDiagramActor.d.ts +0 -5
  220. package/dist/hooks/useDiagramActor.js +0 -21
  221. package/dist/hooks/useDiagramContext.d.ts +0 -3
  222. package/dist/hooks/useDiagramContext.js +0 -10
  223. package/dist/likec4diagram/DiagramActor.js +0 -82
  224. package/dist/likec4diagram/state/actorContext.d.ts +0 -52075
  225. package/dist/likec4diagram/state/actorContext.js +0 -12
  226. package/dist/likec4diagram/state/hotkeyActor.js +0 -18
  227. package/dist/likec4diagram/state/inspector.d.ts +0 -5
  228. package/dist/likec4diagram/state/machine.d.ts +0 -11025
  229. package/dist/likec4diagram/state/utils.d.ts +0 -8
  230. package/src/hooks/useDiagramActor.ts +0 -27
  231. package/src/hooks/useDiagramContext.ts +0 -14
  232. package/src/likec4diagram/DiagramActor.tsx +0 -92
  233. package/src/likec4diagram/state/actorContext.ts +0 -8
  234. package/src/likec4diagram/state/hotkeyActor.ts +0 -20
  235. package/src/likec4diagram/state/inspector.ts +0 -23
  236. /package/dist/{likec4diagram/state → state}/aligners.d.ts +0 -0
  237. /package/dist/{likec4diagram/state → state}/aligners.js +0 -0
  238. /package/src/{likec4diagram/state → state}/aligners.ts +0 -0
@@ -1,8 +1,11 @@
1
- import { BBox, DiagramView, Fqn } from '@likec4/core';
2
- import { EdgeChange, NodeChange, ReactFlowInstance, useStoreApi } from '@xyflow/react';
3
- import { ActorLogic, ActorRefFromLogic, MachineSnapshot, SnapshotFrom } from 'xstate';
1
+ import { BBox, DiagramView, Fqn, NonEmptyArray, RelationId, Color, ViewId, RelationshipLineType } from '@likec4/core';
2
+ import { EdgeChange, NodeChange, ReactFlowInstance, useStoreApi, GeneralHelpers, ViewportHelperFunctions, ReactFlowState } from '@xyflow/react';
3
+ import { ActorLogicFrom, ActorRefFromLogic, SnapshotFrom, PromiseActorLogic, EventObject, StateMachine, Values, NonReducibleUnknown, MetaObject, ConditionalRequired, InputFrom, RequiredActorOptions, IsNotNever, GetConcreteByKey, AnyActorLogic, RequiredLogicInput, ActorRef, MachineSnapshot, AnyActorRef, StateValue, AnyEventObject, ActionFunction, DoneActorEvent, CancelAction } from 'xstate';
4
+ import { Base } from '../../base';
4
5
  import { LayoutRelationshipsViewResult } from './-useRelationshipsView';
5
6
  import { RelationshipsBrowserTypes } from './_types';
7
+ import { EdgeMarkerType, HandleType } from '@xyflow/system';
8
+ import { ReactNode, CSSProperties } from 'react';
6
9
  type XYFLowInstance = ReactFlowInstance<RelationshipsBrowserTypes.Node, RelationshipsBrowserTypes.Edge>;
7
10
  export type XYStoreApi = ReturnType<typeof useStoreApi<RelationshipsBrowserTypes.Node, RelationshipsBrowserTypes.Edge>>;
8
11
  export type Input = {
@@ -16,7 +19,6 @@ export type Context = Readonly<Input & {
16
19
  enableNavigationMenu: boolean;
17
20
  xyflow: XYFLowInstance | null;
18
21
  xystore: XYStoreApi | null;
19
- initialized: boolean;
20
22
  layouted: LayoutRelationshipsViewResult | null;
21
23
  navigateFromNode: string | null;
22
24
  xynodes: RelationshipsBrowserTypes.Node[];
@@ -52,6 +54,8 @@ export type Events = {
52
54
  edge: RelationshipsBrowserTypes.Edge;
53
55
  } | {
54
56
  type: 'xyflow.updateNodeInternals';
57
+ } | {
58
+ type: 'xyflow.unmount';
55
59
  } | {
56
60
  type: 'fitDiagram';
57
61
  duration?: number;
@@ -70,10 +74,1093 @@ export type Events = {
70
74
  } | {
71
75
  type: 'close';
72
76
  };
73
- export declare const relationshipsBrowserActor: ActorLogic<MachineSnapshot<Context, Events, any, "initializing" | "waiting-data" | "closed" | {
77
+ export declare const layouter: PromiseActorLogic<{
78
+ xyedges: RelationshipsBrowserTypes.Edge[];
79
+ xynodes: RelationshipsBrowserTypes.Node[];
80
+ }, {
81
+ subjectId: Fqn;
82
+ navigateFromNode: string | null;
83
+ xyflow: XYFLowInstance;
84
+ xystore: XYStoreApi;
85
+ update: LayoutRelationshipsViewResult;
86
+ }, EventObject>;
87
+ export declare const relationshipsBrowserLogic: StateMachine<Readonly<Input & {
88
+ closeable: boolean;
89
+ enableNavigationMenu: boolean;
90
+ xyflow: XYFLowInstance | null;
91
+ xystore: XYStoreApi | null;
92
+ layouted: LayoutRelationshipsViewResult | null;
93
+ navigateFromNode: string | null;
94
+ xynodes: RelationshipsBrowserTypes.Node[];
95
+ xyedges: RelationshipsBrowserTypes.Edge[];
96
+ }>, Events, {
97
+ layouter?: ActorRefFromLogic< PromiseActorLogic<{
98
+ xyedges: RelationshipsBrowserTypes.Edge[];
99
+ xynodes: RelationshipsBrowserTypes.Node[];
100
+ }, {
101
+ subjectId: Fqn;
102
+ navigateFromNode: string | null;
103
+ xyflow: XYFLowInstance;
104
+ xystore: XYStoreApi;
105
+ update: LayoutRelationshipsViewResult;
106
+ }, EventObject>>;
107
+ }, {
108
+ src: "layouter";
109
+ logic: PromiseActorLogic<{
110
+ xyedges: RelationshipsBrowserTypes.Edge[];
111
+ xynodes: RelationshipsBrowserTypes.Node[];
112
+ }, {
113
+ subjectId: Fqn;
114
+ navigateFromNode: string | null;
115
+ xyflow: XYFLowInstance;
116
+ xystore: XYStoreApi;
117
+ update: LayoutRelationshipsViewResult;
118
+ }, EventObject>;
119
+ id: "layouter";
120
+ }, Values<{
121
+ "xyflow.init": {
122
+ type: "xyflow.init";
123
+ params: NonReducibleUnknown;
124
+ };
125
+ "update.view": {
126
+ type: "update.view";
127
+ params: NonReducibleUnknown;
128
+ };
129
+ "xyflow:updateNodeInternals": {
130
+ type: "xyflow:updateNodeInternals";
131
+ params: unknown;
132
+ };
133
+ "xyflow:fitDiagram": {
134
+ type: "xyflow:fitDiagram";
135
+ params: {
136
+ duration?: number;
137
+ bounds?: BBox;
138
+ } | undefined;
139
+ };
140
+ }>, {
141
+ type: "isReady";
142
+ params: unknown;
143
+ }, never, "isReady" | "initializing" | "closed" | {
74
144
  active: "idle" | "layouting";
75
- }, "active", any, any, any>, Events, Input, any, any>;
76
- export type RelationshipsBrowserLogic = typeof relationshipsBrowserActor;
77
- export type RelationshipsBrowserActorRef = ActorRefFromLogic<typeof relationshipsBrowserActor>;
145
+ }, "active", Input, NonReducibleUnknown, EventObject, MetaObject, {
146
+ readonly id: "relationships-browser";
147
+ readonly context: ({ input }: {
148
+ spawn: {
149
+ <TSrc extends "layouter">(logic: TSrc, ...[options]: {
150
+ src: "layouter";
151
+ logic: PromiseActorLogic<{
152
+ xyedges: {
153
+ id: string;
154
+ source: string;
155
+ target: string;
156
+ sourceHandle?: string | null;
157
+ targetHandle?: string | null;
158
+ animated?: boolean;
159
+ hidden?: boolean;
160
+ deletable?: boolean;
161
+ selectable?: boolean;
162
+ selected?: boolean;
163
+ markerStart?: EdgeMarkerType;
164
+ markerEnd?: EdgeMarkerType;
165
+ zIndex?: number;
166
+ ariaLabel?: string;
167
+ interactionWidth?: number;
168
+ label?: ReactNode;
169
+ labelStyle?: CSSProperties;
170
+ labelShowBg?: boolean;
171
+ labelBgStyle?: CSSProperties;
172
+ labelBgPadding?: [number, number];
173
+ labelBgBorderRadius?: number;
174
+ style?: CSSProperties;
175
+ className?: string;
176
+ reconnectable?: boolean | HandleType;
177
+ focusable?: boolean;
178
+ type: "relationships";
179
+ data: {
180
+ relations: NonEmptyArray<RelationId>;
181
+ color: Color | undefined;
182
+ label: string | null;
183
+ navigateTo: ViewId | null;
184
+ line: RelationshipLineType;
185
+ hovered?: boolean;
186
+ active?: boolean;
187
+ dimmed?: Base.Dimmed;
188
+ };
189
+ }[];
190
+ xynodes: RelationshipsBrowserTypes.Node[];
191
+ }, {
192
+ subjectId: Fqn;
193
+ navigateFromNode: string | null;
194
+ xyflow: XYFLowInstance;
195
+ xystore: XYStoreApi;
196
+ update: LayoutRelationshipsViewResult;
197
+ }, EventObject>;
198
+ id: "layouter";
199
+ } extends infer T ? T extends {
200
+ src: "layouter";
201
+ logic: PromiseActorLogic<{
202
+ xyedges: {
203
+ id: string;
204
+ source: string;
205
+ target: string;
206
+ sourceHandle?: string | null;
207
+ targetHandle?: string | null;
208
+ animated?: boolean;
209
+ hidden?: boolean;
210
+ deletable?: boolean;
211
+ selectable?: boolean;
212
+ selected?: boolean;
213
+ markerStart?: EdgeMarkerType;
214
+ markerEnd?: EdgeMarkerType;
215
+ zIndex?: number;
216
+ ariaLabel?: string;
217
+ interactionWidth?: number;
218
+ label?: ReactNode;
219
+ labelStyle?: CSSProperties;
220
+ labelShowBg?: boolean;
221
+ labelBgStyle?: CSSProperties;
222
+ labelBgPadding?: [number, number];
223
+ labelBgBorderRadius?: number;
224
+ style?: CSSProperties;
225
+ className?: string;
226
+ reconnectable?: boolean | HandleType;
227
+ focusable?: boolean;
228
+ type: "relationships";
229
+ data: {
230
+ relations: NonEmptyArray<RelationId>;
231
+ color: Color | undefined;
232
+ label: string | null;
233
+ navigateTo: ViewId | null;
234
+ line: RelationshipLineType;
235
+ hovered?: boolean;
236
+ active?: boolean;
237
+ dimmed?: Base.Dimmed;
238
+ };
239
+ }[];
240
+ xynodes: RelationshipsBrowserTypes.Node[];
241
+ }, {
242
+ subjectId: Fqn;
243
+ navigateFromNode: string | null;
244
+ xyflow: XYFLowInstance;
245
+ xystore: XYStoreApi;
246
+ update: LayoutRelationshipsViewResult;
247
+ }, EventObject>;
248
+ id: "layouter";
249
+ } ? T extends {
250
+ src: TSrc;
251
+ } ? ConditionalRequired<[options?: {
252
+ id?: T["id"];
253
+ systemId?: string;
254
+ input?: InputFrom<T["logic"]>;
255
+ syncSnapshot?: boolean;
256
+ } & { [K in RequiredActorOptions<T>]: unknown; }], IsNotNever<RequiredActorOptions<T>>> : never : never : never): ActorRefFromLogic< GetConcreteByKey<{
257
+ src: "layouter";
258
+ logic: PromiseActorLogic<{
259
+ xyedges: {
260
+ id: string;
261
+ source: string;
262
+ target: string;
263
+ sourceHandle?: string | null;
264
+ targetHandle?: string | null;
265
+ animated?: boolean;
266
+ hidden?: boolean;
267
+ deletable?: boolean;
268
+ selectable?: boolean;
269
+ selected?: boolean;
270
+ markerStart?: EdgeMarkerType;
271
+ markerEnd?: EdgeMarkerType;
272
+ zIndex?: number;
273
+ ariaLabel?: string;
274
+ interactionWidth?: number;
275
+ label?: ReactNode;
276
+ labelStyle?: CSSProperties;
277
+ labelShowBg?: boolean;
278
+ labelBgStyle?: CSSProperties;
279
+ labelBgPadding?: [number, number];
280
+ labelBgBorderRadius?: number;
281
+ style?: CSSProperties;
282
+ className?: string;
283
+ reconnectable?: boolean | HandleType;
284
+ focusable?: boolean;
285
+ type: "relationships";
286
+ data: {
287
+ relations: NonEmptyArray<RelationId>;
288
+ color: Color | undefined;
289
+ label: string | null;
290
+ navigateTo: ViewId | null;
291
+ line: RelationshipLineType;
292
+ hovered?: boolean;
293
+ active?: boolean;
294
+ dimmed?: Base.Dimmed;
295
+ };
296
+ }[];
297
+ xynodes: RelationshipsBrowserTypes.Node[];
298
+ }, {
299
+ subjectId: Fqn;
300
+ navigateFromNode: string | null;
301
+ xyflow: XYFLowInstance;
302
+ xystore: XYStoreApi;
303
+ update: LayoutRelationshipsViewResult;
304
+ }, EventObject>;
305
+ id: "layouter";
306
+ }, "src", TSrc>["logic"]>;
307
+ <TLogic extends AnyActorLogic>(src: TLogic, ...[options]: ConditionalRequired<[options?: {
308
+ id?: never;
309
+ systemId?: string;
310
+ input?: InputFrom<TLogic>;
311
+ syncSnapshot?: boolean;
312
+ } & { [K in RequiredLogicInput<TLogic>]: unknown; }], IsNotNever<RequiredLogicInput<TLogic>>>): ActorRefFromLogic<TLogic>;
313
+ };
314
+ input: Input;
315
+ self: ActorRef<MachineSnapshot<Readonly<Input & {
316
+ closeable: boolean;
317
+ enableNavigationMenu: boolean;
318
+ xyflow: XYFLowInstance | null;
319
+ xystore: XYStoreApi | null;
320
+ layouted: LayoutRelationshipsViewResult | null;
321
+ navigateFromNode: string | null;
322
+ xynodes: RelationshipsBrowserTypes.Node[];
323
+ xyedges: RelationshipsBrowserTypes.Edge[];
324
+ }>, Events, Record<string, AnyActorRef | undefined>, StateValue, string, unknown, any, any>, Events, AnyEventObject>;
325
+ }) => {
326
+ closeable: boolean;
327
+ enableNavigationMenu: boolean;
328
+ xyflow: null;
329
+ xystore: null;
330
+ layouted: null;
331
+ navigateFromNode: null;
332
+ xynodes: never[];
333
+ xyedges: never[];
334
+ subject: Fqn;
335
+ scope?: DiagramView | null;
336
+ };
337
+ readonly initial: "initializing";
338
+ readonly on: {
339
+ readonly 'xyflow.applyNodeChanges': {
340
+ readonly actions: ActionFunction<Readonly<Input & {
341
+ closeable: boolean;
342
+ enableNavigationMenu: boolean;
343
+ xyflow: XYFLowInstance | null;
344
+ xystore: XYStoreApi | null;
345
+ layouted: LayoutRelationshipsViewResult | null;
346
+ navigateFromNode: string | null;
347
+ xynodes: RelationshipsBrowserTypes.Node[];
348
+ xyedges: RelationshipsBrowserTypes.Edge[];
349
+ }>, {
350
+ type: "xyflow.applyNodeChanges";
351
+ changes: NodeChange<RelationshipsBrowserTypes.Node>[];
352
+ }, Events, undefined, {
353
+ src: "layouter";
354
+ logic: PromiseActorLogic<{
355
+ xyedges: RelationshipsBrowserTypes.Edge[];
356
+ xynodes: RelationshipsBrowserTypes.Node[];
357
+ }, {
358
+ subjectId: Fqn;
359
+ navigateFromNode: string | null;
360
+ xyflow: XYFLowInstance;
361
+ xystore: XYStoreApi;
362
+ update: LayoutRelationshipsViewResult;
363
+ }, EventObject>;
364
+ id: "layouter";
365
+ }, never, never, never, never>;
366
+ };
367
+ readonly 'xyflow.applyEdgeChanges': {
368
+ readonly actions: ActionFunction<Readonly<Input & {
369
+ closeable: boolean;
370
+ enableNavigationMenu: boolean;
371
+ xyflow: XYFLowInstance | null;
372
+ xystore: XYStoreApi | null;
373
+ layouted: LayoutRelationshipsViewResult | null;
374
+ navigateFromNode: string | null;
375
+ xynodes: RelationshipsBrowserTypes.Node[];
376
+ xyedges: RelationshipsBrowserTypes.Edge[];
377
+ }>, {
378
+ type: "xyflow.applyEdgeChanges";
379
+ changes: EdgeChange<RelationshipsBrowserTypes.Edge>[];
380
+ }, Events, undefined, {
381
+ src: "layouter";
382
+ logic: PromiseActorLogic<{
383
+ xyedges: RelationshipsBrowserTypes.Edge[];
384
+ xynodes: RelationshipsBrowserTypes.Node[];
385
+ }, {
386
+ subjectId: Fqn;
387
+ navigateFromNode: string | null;
388
+ xyflow: XYFLowInstance;
389
+ xystore: XYStoreApi;
390
+ update: LayoutRelationshipsViewResult;
391
+ }, EventObject>;
392
+ id: "layouter";
393
+ }, never, never, never, never>;
394
+ };
395
+ };
396
+ readonly states: {
397
+ readonly initializing: {
398
+ readonly on: {
399
+ readonly 'xyflow.init': {
400
+ readonly actions: "xyflow.init";
401
+ readonly target: "isReady";
402
+ };
403
+ readonly 'update.view': {
404
+ readonly actions: "update.view";
405
+ readonly target: "isReady";
406
+ };
407
+ readonly stop: "closed";
408
+ readonly close: "closed";
409
+ };
410
+ };
411
+ readonly isReady: {
412
+ readonly always: readonly [{
413
+ readonly guard: "isReady";
414
+ readonly actions: ActionFunction<Readonly<Input & {
415
+ closeable: boolean;
416
+ enableNavigationMenu: boolean;
417
+ xyflow: XYFLowInstance | null;
418
+ xystore: XYStoreApi | null;
419
+ layouted: LayoutRelationshipsViewResult | null;
420
+ navigateFromNode: string | null;
421
+ xynodes: RelationshipsBrowserTypes.Node[];
422
+ xyedges: RelationshipsBrowserTypes.Edge[];
423
+ }>, Events, Events, undefined, never, never, never, never, never>;
424
+ readonly target: "active";
425
+ }, {
426
+ readonly target: "initializing";
427
+ }];
428
+ };
429
+ readonly active: {
430
+ readonly initial: "idle";
431
+ readonly tags: readonly ["active"];
432
+ readonly states: {
433
+ readonly idle: {};
434
+ readonly layouting: {
435
+ readonly invoke: {
436
+ readonly id: "layouter";
437
+ readonly src: "layouter";
438
+ readonly input: ({ context }: {
439
+ context: Readonly<Input & {
440
+ closeable: boolean;
441
+ enableNavigationMenu: boolean;
442
+ xyflow: XYFLowInstance | null;
443
+ xystore: XYStoreApi | null;
444
+ layouted: LayoutRelationshipsViewResult | null;
445
+ navigateFromNode: string | null;
446
+ xynodes: RelationshipsBrowserTypes.Node[];
447
+ xyedges: RelationshipsBrowserTypes.Edge[];
448
+ }>;
449
+ event: Events;
450
+ self: ActorRef<MachineSnapshot<Readonly<Input & {
451
+ closeable: boolean;
452
+ enableNavigationMenu: boolean;
453
+ xyflow: XYFLowInstance | null;
454
+ xystore: XYStoreApi | null;
455
+ layouted: LayoutRelationshipsViewResult | null;
456
+ navigateFromNode: string | null;
457
+ xynodes: RelationshipsBrowserTypes.Node[];
458
+ xyedges: RelationshipsBrowserTypes.Edge[];
459
+ }>, Events, Record<string, AnyActorRef>, StateValue, string, unknown, any, any>, Events, AnyEventObject>;
460
+ }) => {
461
+ subjectId: Fqn;
462
+ navigateFromNode: string | null;
463
+ xyflow: GeneralHelpers<RelationshipsBrowserTypes.Node, {
464
+ id: string;
465
+ source: string;
466
+ target: string;
467
+ sourceHandle?: string | null;
468
+ targetHandle?: string | null;
469
+ animated?: boolean;
470
+ hidden?: boolean;
471
+ deletable?: boolean;
472
+ selectable?: boolean;
473
+ selected?: boolean;
474
+ markerStart?: EdgeMarkerType;
475
+ markerEnd?: EdgeMarkerType;
476
+ zIndex?: number;
477
+ ariaLabel?: string;
478
+ interactionWidth?: number;
479
+ label?: ReactNode;
480
+ labelStyle?: CSSProperties;
481
+ labelShowBg?: boolean;
482
+ labelBgStyle?: CSSProperties;
483
+ labelBgPadding?: [number, number];
484
+ labelBgBorderRadius?: number;
485
+ style?: CSSProperties;
486
+ className?: string;
487
+ reconnectable?: boolean | HandleType;
488
+ focusable?: boolean;
489
+ type: "relationships";
490
+ data: {
491
+ relations: NonEmptyArray<RelationId>;
492
+ color: Color | undefined;
493
+ label: string | null;
494
+ navigateTo: ViewId | null;
495
+ line: RelationshipLineType;
496
+ hovered?: boolean;
497
+ active?: boolean;
498
+ dimmed?: Base.Dimmed;
499
+ };
500
+ }> & Omit< ViewportHelperFunctions, "initialized"> & {
501
+ viewportInitialized: boolean;
502
+ };
503
+ xystore: {
504
+ getState: () => ReactFlowState<RelationshipsBrowserTypes.Node, {
505
+ id: string;
506
+ source: string;
507
+ target: string;
508
+ sourceHandle?: string | null;
509
+ targetHandle?: string | null;
510
+ animated?: boolean;
511
+ hidden?: boolean;
512
+ deletable?: boolean;
513
+ selectable?: boolean;
514
+ selected?: boolean;
515
+ markerStart?: EdgeMarkerType;
516
+ markerEnd?: EdgeMarkerType;
517
+ zIndex?: number;
518
+ ariaLabel?: string;
519
+ interactionWidth?: number;
520
+ label?: ReactNode;
521
+ labelStyle?: CSSProperties;
522
+ labelShowBg?: boolean;
523
+ labelBgStyle?: CSSProperties;
524
+ labelBgPadding?: [number, number];
525
+ labelBgBorderRadius?: number;
526
+ style?: CSSProperties;
527
+ className?: string;
528
+ reconnectable?: boolean | HandleType;
529
+ focusable?: boolean;
530
+ type: "relationships";
531
+ data: {
532
+ relations: NonEmptyArray<RelationId>;
533
+ color: Color | undefined;
534
+ label: string | null;
535
+ navigateTo: ViewId | null;
536
+ line: RelationshipLineType;
537
+ hovered?: boolean;
538
+ active?: boolean;
539
+ dimmed?: Base.Dimmed;
540
+ };
541
+ }>;
542
+ setState: (partial: ReactFlowState<RelationshipsBrowserTypes.Node, {
543
+ id: string;
544
+ source: string;
545
+ target: string;
546
+ sourceHandle?: string | null;
547
+ targetHandle?: string | null;
548
+ animated?: boolean;
549
+ hidden?: boolean;
550
+ deletable?: boolean;
551
+ selectable?: boolean;
552
+ selected?: boolean;
553
+ markerStart?: EdgeMarkerType;
554
+ markerEnd?: EdgeMarkerType;
555
+ zIndex?: number;
556
+ ariaLabel?: string;
557
+ interactionWidth?: number;
558
+ label?: ReactNode;
559
+ labelStyle?: CSSProperties;
560
+ labelShowBg?: boolean;
561
+ labelBgStyle?: CSSProperties;
562
+ labelBgPadding?: [number, number];
563
+ labelBgBorderRadius?: number;
564
+ style?: CSSProperties;
565
+ className?: string;
566
+ reconnectable?: boolean | HandleType;
567
+ focusable?: boolean;
568
+ type: "relationships";
569
+ data: {
570
+ relations: NonEmptyArray<RelationId>;
571
+ color: Color | undefined;
572
+ label: string | null;
573
+ navigateTo: ViewId | null;
574
+ line: RelationshipLineType;
575
+ hovered?: boolean;
576
+ active?: boolean;
577
+ dimmed?: Base.Dimmed;
578
+ };
579
+ }> | Partial< ReactFlowState<RelationshipsBrowserTypes.Node, {
580
+ id: string;
581
+ source: string;
582
+ target: string;
583
+ sourceHandle?: string | null;
584
+ targetHandle?: string | null;
585
+ animated?: boolean;
586
+ hidden?: boolean;
587
+ deletable?: boolean;
588
+ selectable?: boolean;
589
+ selected?: boolean;
590
+ markerStart?: EdgeMarkerType;
591
+ markerEnd?: EdgeMarkerType;
592
+ zIndex?: number;
593
+ ariaLabel?: string;
594
+ interactionWidth?: number;
595
+ label?: ReactNode;
596
+ labelStyle?: CSSProperties;
597
+ labelShowBg?: boolean;
598
+ labelBgStyle?: CSSProperties;
599
+ labelBgPadding?: [number, number];
600
+ labelBgBorderRadius?: number;
601
+ style?: CSSProperties;
602
+ className?: string;
603
+ reconnectable?: boolean | HandleType;
604
+ focusable?: boolean;
605
+ type: "relationships";
606
+ data: {
607
+ relations: NonEmptyArray<RelationId>;
608
+ color: Color | undefined;
609
+ label: string | null;
610
+ navigateTo: ViewId | null;
611
+ line: RelationshipLineType;
612
+ hovered?: boolean;
613
+ active?: boolean;
614
+ dimmed?: Base.Dimmed;
615
+ };
616
+ }>> | ((state: ReactFlowState<RelationshipsBrowserTypes.Node, {
617
+ id: string;
618
+ source: string;
619
+ target: string;
620
+ sourceHandle?: string | null;
621
+ targetHandle?: string | null;
622
+ animated?: boolean;
623
+ hidden?: boolean;
624
+ deletable?: boolean;
625
+ selectable?: boolean;
626
+ selected?: boolean;
627
+ markerStart?: EdgeMarkerType;
628
+ markerEnd?: EdgeMarkerType;
629
+ zIndex?: number;
630
+ ariaLabel?: string;
631
+ interactionWidth?: number;
632
+ label?: ReactNode;
633
+ labelStyle?: CSSProperties;
634
+ labelShowBg?: boolean;
635
+ labelBgStyle?: CSSProperties;
636
+ labelBgPadding?: [number, number];
637
+ labelBgBorderRadius?: number;
638
+ style?: CSSProperties;
639
+ className?: string;
640
+ reconnectable?: boolean | HandleType;
641
+ focusable?: boolean;
642
+ type: "relationships";
643
+ data: {
644
+ relations: NonEmptyArray<RelationId>;
645
+ color: Color | undefined;
646
+ label: string | null;
647
+ navigateTo: ViewId | null;
648
+ line: RelationshipLineType;
649
+ hovered?: boolean;
650
+ active?: boolean;
651
+ dimmed?: Base.Dimmed;
652
+ };
653
+ }>) => ReactFlowState<RelationshipsBrowserTypes.Node, {
654
+ id: string;
655
+ source: string;
656
+ target: string;
657
+ sourceHandle?: string | null;
658
+ targetHandle?: string | null;
659
+ animated?: boolean;
660
+ hidden?: boolean;
661
+ deletable?: boolean;
662
+ selectable?: boolean;
663
+ selected?: boolean;
664
+ markerStart?: EdgeMarkerType;
665
+ markerEnd?: EdgeMarkerType;
666
+ zIndex?: number;
667
+ ariaLabel?: string;
668
+ interactionWidth?: number;
669
+ label?: ReactNode;
670
+ labelStyle?: CSSProperties;
671
+ labelShowBg?: boolean;
672
+ labelBgStyle?: CSSProperties;
673
+ labelBgPadding?: [number, number];
674
+ labelBgBorderRadius?: number;
675
+ style?: CSSProperties;
676
+ className?: string;
677
+ reconnectable?: boolean | HandleType;
678
+ focusable?: boolean;
679
+ type: "relationships";
680
+ data: {
681
+ relations: NonEmptyArray<RelationId>;
682
+ color: Color | undefined;
683
+ label: string | null;
684
+ navigateTo: ViewId | null;
685
+ line: RelationshipLineType;
686
+ hovered?: boolean;
687
+ active?: boolean;
688
+ dimmed?: Base.Dimmed;
689
+ };
690
+ }> | Partial< ReactFlowState<RelationshipsBrowserTypes.Node, {
691
+ id: string;
692
+ source: string;
693
+ target: string;
694
+ sourceHandle?: string | null;
695
+ targetHandle?: string | null;
696
+ animated?: boolean;
697
+ hidden?: boolean;
698
+ deletable?: boolean;
699
+ selectable?: boolean;
700
+ selected?: boolean;
701
+ markerStart?: EdgeMarkerType;
702
+ markerEnd?: EdgeMarkerType;
703
+ zIndex?: number;
704
+ ariaLabel?: string;
705
+ interactionWidth?: number;
706
+ label?: ReactNode;
707
+ labelStyle?: CSSProperties;
708
+ labelShowBg?: boolean;
709
+ labelBgStyle?: CSSProperties;
710
+ labelBgPadding?: [number, number];
711
+ labelBgBorderRadius?: number;
712
+ style?: CSSProperties;
713
+ className?: string;
714
+ reconnectable?: boolean | HandleType;
715
+ focusable?: boolean;
716
+ type: "relationships";
717
+ data: {
718
+ relations: NonEmptyArray<RelationId>;
719
+ color: Color | undefined;
720
+ label: string | null;
721
+ navigateTo: ViewId | null;
722
+ line: RelationshipLineType;
723
+ hovered?: boolean;
724
+ active?: boolean;
725
+ dimmed?: Base.Dimmed;
726
+ };
727
+ }>>), replace?: boolean | undefined) => void;
728
+ subscribe: (listener: (state: ReactFlowState<RelationshipsBrowserTypes.Node, {
729
+ id: string;
730
+ source: string;
731
+ target: string;
732
+ sourceHandle?: string | null;
733
+ targetHandle?: string | null;
734
+ animated?: boolean;
735
+ hidden?: boolean;
736
+ deletable?: boolean;
737
+ selectable?: boolean;
738
+ selected?: boolean;
739
+ markerStart?: EdgeMarkerType;
740
+ markerEnd?: EdgeMarkerType;
741
+ zIndex?: number;
742
+ ariaLabel?: string;
743
+ interactionWidth?: number;
744
+ label?: ReactNode;
745
+ labelStyle?: CSSProperties;
746
+ labelShowBg?: boolean;
747
+ labelBgStyle?: CSSProperties;
748
+ labelBgPadding?: [number, number];
749
+ labelBgBorderRadius?: number;
750
+ style?: CSSProperties;
751
+ className?: string;
752
+ reconnectable?: boolean | HandleType;
753
+ focusable?: boolean;
754
+ type: "relationships";
755
+ data: {
756
+ relations: NonEmptyArray<RelationId>;
757
+ color: Color | undefined;
758
+ label: string | null;
759
+ navigateTo: ViewId | null;
760
+ line: RelationshipLineType;
761
+ hovered?: boolean;
762
+ active?: boolean;
763
+ dimmed?: Base.Dimmed;
764
+ };
765
+ }>, prevState: ReactFlowState<RelationshipsBrowserTypes.Node, {
766
+ id: string;
767
+ source: string;
768
+ target: string;
769
+ sourceHandle?: string | null;
770
+ targetHandle?: string | null;
771
+ animated?: boolean;
772
+ hidden?: boolean;
773
+ deletable?: boolean;
774
+ selectable?: boolean;
775
+ selected?: boolean;
776
+ markerStart?: EdgeMarkerType;
777
+ markerEnd?: EdgeMarkerType;
778
+ zIndex?: number;
779
+ ariaLabel?: string;
780
+ interactionWidth?: number;
781
+ label?: ReactNode;
782
+ labelStyle?: CSSProperties;
783
+ labelShowBg?: boolean;
784
+ labelBgStyle?: CSSProperties;
785
+ labelBgPadding?: [number, number];
786
+ labelBgBorderRadius?: number;
787
+ style?: CSSProperties;
788
+ className?: string;
789
+ reconnectable?: boolean | HandleType;
790
+ focusable?: boolean;
791
+ type: "relationships";
792
+ data: {
793
+ relations: NonEmptyArray<RelationId>;
794
+ color: Color | undefined;
795
+ label: string | null;
796
+ navigateTo: ViewId | null;
797
+ line: RelationshipLineType;
798
+ hovered?: boolean;
799
+ active?: boolean;
800
+ dimmed?: Base.Dimmed;
801
+ };
802
+ }>) => void) => () => void;
803
+ };
804
+ update: LayoutRelationshipsViewResult;
805
+ };
806
+ readonly onDone: {
807
+ readonly target: "idle";
808
+ readonly actions: readonly [ ActionFunction<Readonly<Input & {
809
+ closeable: boolean;
810
+ enableNavigationMenu: boolean;
811
+ xyflow: XYFLowInstance | null;
812
+ xystore: XYStoreApi | null;
813
+ layouted: LayoutRelationshipsViewResult | null;
814
+ navigateFromNode: string | null;
815
+ xynodes: RelationshipsBrowserTypes.Node[];
816
+ xyedges: RelationshipsBrowserTypes.Edge[];
817
+ }>, DoneActorEvent<{
818
+ xyedges: RelationshipsBrowserTypes.Edge[];
819
+ xynodes: RelationshipsBrowserTypes.Node[];
820
+ }, string>, Events, undefined, {
821
+ src: "layouter";
822
+ logic: PromiseActorLogic<{
823
+ xyedges: RelationshipsBrowserTypes.Edge[];
824
+ xynodes: RelationshipsBrowserTypes.Node[];
825
+ }, {
826
+ subjectId: Fqn;
827
+ navigateFromNode: string | null;
828
+ xyflow: XYFLowInstance;
829
+ xystore: XYStoreApi;
830
+ update: LayoutRelationshipsViewResult;
831
+ }, EventObject>;
832
+ id: "layouter";
833
+ }, never, never, never, never>, ActionFunction<Readonly<Input & {
834
+ closeable: boolean;
835
+ enableNavigationMenu: boolean;
836
+ xyflow: XYFLowInstance | null;
837
+ xystore: XYStoreApi | null;
838
+ layouted: LayoutRelationshipsViewResult | null;
839
+ navigateFromNode: string | null;
840
+ xynodes: RelationshipsBrowserTypes.Node[];
841
+ xyedges: RelationshipsBrowserTypes.Edge[];
842
+ }>, DoneActorEvent<{
843
+ xyedges: RelationshipsBrowserTypes.Edge[];
844
+ xynodes: RelationshipsBrowserTypes.Node[];
845
+ }, string>, Events, undefined, never, never, never, never, never>, ActionFunction<Readonly<Input & {
846
+ closeable: boolean;
847
+ enableNavigationMenu: boolean;
848
+ xyflow: XYFLowInstance | null;
849
+ xystore: XYStoreApi | null;
850
+ layouted: LayoutRelationshipsViewResult | null;
851
+ navigateFromNode: string | null;
852
+ xynodes: RelationshipsBrowserTypes.Node[];
853
+ xyedges: RelationshipsBrowserTypes.Edge[];
854
+ }>, DoneActorEvent<{
855
+ xyedges: RelationshipsBrowserTypes.Edge[];
856
+ xynodes: RelationshipsBrowserTypes.Node[];
857
+ }, string>, Events, undefined, never, never, never, never, never>, ActionFunction<Readonly<Input & {
858
+ closeable: boolean;
859
+ enableNavigationMenu: boolean;
860
+ xyflow: XYFLowInstance | null;
861
+ xystore: XYStoreApi | null;
862
+ layouted: LayoutRelationshipsViewResult | null;
863
+ navigateFromNode: string | null;
864
+ xynodes: RelationshipsBrowserTypes.Node[];
865
+ xyedges: RelationshipsBrowserTypes.Edge[];
866
+ }>, DoneActorEvent<{
867
+ xyedges: RelationshipsBrowserTypes.Edge[];
868
+ xynodes: RelationshipsBrowserTypes.Node[];
869
+ }, string>, Events, undefined, never, never, never, never, never>, ActionFunction<Readonly<Input & {
870
+ closeable: boolean;
871
+ enableNavigationMenu: boolean;
872
+ xyflow: XYFLowInstance | null;
873
+ xystore: XYStoreApi | null;
874
+ layouted: LayoutRelationshipsViewResult | null;
875
+ navigateFromNode: string | null;
876
+ xynodes: RelationshipsBrowserTypes.Node[];
877
+ xyedges: RelationshipsBrowserTypes.Edge[];
878
+ }>, DoneActorEvent<{
879
+ xyedges: RelationshipsBrowserTypes.Edge[];
880
+ xynodes: RelationshipsBrowserTypes.Node[];
881
+ }, string>, Events, undefined, never, never, never, never, never>];
882
+ };
883
+ };
884
+ readonly on: {
885
+ readonly 'update.xydata': {
886
+ readonly actions: ActionFunction<Readonly<Input & {
887
+ closeable: boolean;
888
+ enableNavigationMenu: boolean;
889
+ xyflow: XYFLowInstance | null;
890
+ xystore: XYStoreApi | null;
891
+ layouted: LayoutRelationshipsViewResult | null;
892
+ navigateFromNode: string | null;
893
+ xynodes: RelationshipsBrowserTypes.Node[];
894
+ xyedges: RelationshipsBrowserTypes.Edge[];
895
+ }>, {
896
+ type: "update.xydata";
897
+ xynodes: RelationshipsBrowserTypes.Node[];
898
+ xyedges: RelationshipsBrowserTypes.Edge[];
899
+ }, Events, undefined, {
900
+ src: "layouter";
901
+ logic: PromiseActorLogic<{
902
+ xyedges: RelationshipsBrowserTypes.Edge[];
903
+ xynodes: RelationshipsBrowserTypes.Node[];
904
+ }, {
905
+ subjectId: Fqn;
906
+ navigateFromNode: string | null;
907
+ xyflow: XYFLowInstance;
908
+ xystore: XYStoreApi;
909
+ update: LayoutRelationshipsViewResult;
910
+ }, EventObject>;
911
+ id: "layouter";
912
+ }, never, never, never, never>;
913
+ };
914
+ readonly 'xyflow.applyEdgeChanges': {};
915
+ readonly 'xyflow.applyNodeChanges': {};
916
+ };
917
+ };
918
+ };
919
+ readonly on: {
920
+ readonly 'xyflow.nodeClick': {
921
+ readonly actions: ActionFunction<Readonly<Input & {
922
+ closeable: boolean;
923
+ enableNavigationMenu: boolean;
924
+ xyflow: XYFLowInstance | null;
925
+ xystore: XYStoreApi | null;
926
+ layouted: LayoutRelationshipsViewResult | null;
927
+ navigateFromNode: string | null;
928
+ xynodes: RelationshipsBrowserTypes.Node[];
929
+ xyedges: RelationshipsBrowserTypes.Edge[];
930
+ }>, {
931
+ type: "xyflow.nodeClick";
932
+ node: RelationshipsBrowserTypes.Node;
933
+ }, Events, undefined, {
934
+ src: "layouter";
935
+ logic: PromiseActorLogic<{
936
+ xyedges: RelationshipsBrowserTypes.Edge[];
937
+ xynodes: RelationshipsBrowserTypes.Node[];
938
+ }, {
939
+ subjectId: Fqn;
940
+ navigateFromNode: string | null;
941
+ xyflow: XYFLowInstance;
942
+ xystore: XYStoreApi;
943
+ update: LayoutRelationshipsViewResult;
944
+ }, EventObject>;
945
+ id: "layouter";
946
+ }, Values<{
947
+ "xyflow.init": {
948
+ type: "xyflow.init";
949
+ params: NonReducibleUnknown;
950
+ };
951
+ "update.view": {
952
+ type: "update.view";
953
+ params: NonReducibleUnknown;
954
+ };
955
+ "xyflow:updateNodeInternals": {
956
+ type: "xyflow:updateNodeInternals";
957
+ params: unknown;
958
+ };
959
+ "xyflow:fitDiagram": {
960
+ type: "xyflow:fitDiagram";
961
+ params: {
962
+ duration?: number;
963
+ bounds?: BBox;
964
+ } | undefined;
965
+ };
966
+ }>, {
967
+ type: "isReady";
968
+ params: unknown;
969
+ }, never, EventObject>;
970
+ };
971
+ readonly 'navigate.to': {
972
+ readonly actions: readonly [ ActionFunction<Readonly<Input & {
973
+ closeable: boolean;
974
+ enableNavigationMenu: boolean;
975
+ xyflow: XYFLowInstance | null;
976
+ xystore: XYStoreApi | null;
977
+ layouted: LayoutRelationshipsViewResult | null;
978
+ navigateFromNode: string | null;
979
+ xynodes: RelationshipsBrowserTypes.Node[];
980
+ xyedges: RelationshipsBrowserTypes.Edge[];
981
+ }>, {
982
+ type: "navigate.to";
983
+ subject: Fqn;
984
+ fromNode?: string | undefined;
985
+ }, Events, undefined, {
986
+ src: "layouter";
987
+ logic: PromiseActorLogic<{
988
+ xyedges: RelationshipsBrowserTypes.Edge[];
989
+ xynodes: RelationshipsBrowserTypes.Node[];
990
+ }, {
991
+ subjectId: Fqn;
992
+ navigateFromNode: string | null;
993
+ xyflow: XYFLowInstance;
994
+ xystore: XYStoreApi;
995
+ update: LayoutRelationshipsViewResult;
996
+ }, EventObject>;
997
+ id: "layouter";
998
+ }, never, never, never, never>];
999
+ };
1000
+ readonly 'xyflow.paneDblClick': {
1001
+ readonly actions: "xyflow:fitDiagram";
1002
+ };
1003
+ readonly 'update.view': {
1004
+ readonly actions: ActionFunction<Readonly<Input & {
1005
+ closeable: boolean;
1006
+ enableNavigationMenu: boolean;
1007
+ xyflow: XYFLowInstance | null;
1008
+ xystore: XYStoreApi | null;
1009
+ layouted: LayoutRelationshipsViewResult | null;
1010
+ navigateFromNode: string | null;
1011
+ xynodes: RelationshipsBrowserTypes.Node[];
1012
+ xyedges: RelationshipsBrowserTypes.Edge[];
1013
+ }>, {
1014
+ type: "update.view";
1015
+ layouted: LayoutRelationshipsViewResult;
1016
+ }, Events, undefined, {
1017
+ src: "layouter";
1018
+ logic: PromiseActorLogic<{
1019
+ xyedges: RelationshipsBrowserTypes.Edge[];
1020
+ xynodes: RelationshipsBrowserTypes.Node[];
1021
+ }, {
1022
+ subjectId: Fqn;
1023
+ navigateFromNode: string | null;
1024
+ xyflow: XYFLowInstance;
1025
+ xystore: XYStoreApi;
1026
+ update: LayoutRelationshipsViewResult;
1027
+ }, EventObject>;
1028
+ id: "layouter";
1029
+ }, never, never, never, never>;
1030
+ readonly target: ".layouting";
1031
+ };
1032
+ readonly 'xyflow.updateNodeInternals': {
1033
+ readonly actions: "xyflow:updateNodeInternals";
1034
+ };
1035
+ readonly fitDiagram: {
1036
+ readonly actions: {
1037
+ readonly type: "xyflow:fitDiagram";
1038
+ readonly params: (data: {
1039
+ context: Readonly<Input & {
1040
+ closeable: boolean;
1041
+ enableNavigationMenu: boolean;
1042
+ xyflow: XYFLowInstance | null;
1043
+ xystore: XYStoreApi | null;
1044
+ layouted: LayoutRelationshipsViewResult | null;
1045
+ navigateFromNode: string | null;
1046
+ xynodes: RelationshipsBrowserTypes.Node[];
1047
+ xyedges: {
1048
+ id: string;
1049
+ source: string;
1050
+ target: string;
1051
+ sourceHandle?: string | null;
1052
+ targetHandle?: string | null;
1053
+ animated?: boolean;
1054
+ hidden?: boolean;
1055
+ deletable?: boolean;
1056
+ selectable?: boolean;
1057
+ selected?: boolean;
1058
+ markerStart?: EdgeMarkerType;
1059
+ markerEnd?: EdgeMarkerType;
1060
+ zIndex?: number;
1061
+ ariaLabel?: string;
1062
+ interactionWidth?: number;
1063
+ label?: ReactNode;
1064
+ labelStyle?: CSSProperties;
1065
+ labelShowBg?: boolean;
1066
+ labelBgStyle?: CSSProperties;
1067
+ labelBgPadding?: [number, number];
1068
+ labelBgBorderRadius?: number;
1069
+ style?: CSSProperties;
1070
+ className?: string;
1071
+ reconnectable?: boolean | HandleType;
1072
+ focusable?: boolean;
1073
+ type: "relationships";
1074
+ data: {
1075
+ relations: NonEmptyArray<RelationId>;
1076
+ color: Color | undefined;
1077
+ label: string | null;
1078
+ navigateTo: ViewId | null;
1079
+ line: RelationshipLineType;
1080
+ hovered?: boolean;
1081
+ active?: boolean;
1082
+ dimmed?: Base.Dimmed;
1083
+ };
1084
+ }[];
1085
+ }>;
1086
+ event: {
1087
+ type: "fitDiagram";
1088
+ duration?: number;
1089
+ bounds?: BBox;
1090
+ };
1091
+ }) => {
1092
+ type: "fitDiagram";
1093
+ duration?: number;
1094
+ bounds?: BBox;
1095
+ };
1096
+ };
1097
+ };
1098
+ readonly 'xyflow.resized': {
1099
+ readonly actions: readonly [ CancelAction<Readonly<Input & {
1100
+ closeable: boolean;
1101
+ enableNavigationMenu: boolean;
1102
+ xyflow: XYFLowInstance | null;
1103
+ xystore: XYStoreApi | null;
1104
+ layouted: LayoutRelationshipsViewResult | null;
1105
+ navigateFromNode: string | null;
1106
+ xynodes: RelationshipsBrowserTypes.Node[];
1107
+ xyedges: RelationshipsBrowserTypes.Edge[];
1108
+ }>, {
1109
+ type: "xyflow.resized";
1110
+ }, undefined, Events>, ActionFunction<Readonly<Input & {
1111
+ closeable: boolean;
1112
+ enableNavigationMenu: boolean;
1113
+ xyflow: XYFLowInstance | null;
1114
+ xystore: XYStoreApi | null;
1115
+ layouted: LayoutRelationshipsViewResult | null;
1116
+ navigateFromNode: string | null;
1117
+ xynodes: RelationshipsBrowserTypes.Node[];
1118
+ xyedges: RelationshipsBrowserTypes.Edge[];
1119
+ }>, {
1120
+ type: "xyflow.resized";
1121
+ }, Events, undefined, never, never, never, never, never>];
1122
+ };
1123
+ readonly 'xyflow.init': {
1124
+ readonly actions: "xyflow.init";
1125
+ };
1126
+ readonly 'xyflow.unmount': {
1127
+ readonly target: "initializing";
1128
+ };
1129
+ readonly close: "closed";
1130
+ };
1131
+ };
1132
+ readonly closed: {
1133
+ readonly id: "closed";
1134
+ readonly type: "final";
1135
+ };
1136
+ };
1137
+ readonly exit: ActionFunction<Readonly<Input & {
1138
+ closeable: boolean;
1139
+ enableNavigationMenu: boolean;
1140
+ xyflow: XYFLowInstance | null;
1141
+ xystore: XYStoreApi | null;
1142
+ layouted: LayoutRelationshipsViewResult | null;
1143
+ navigateFromNode: string | null;
1144
+ xynodes: RelationshipsBrowserTypes.Node[];
1145
+ xyedges: RelationshipsBrowserTypes.Edge[];
1146
+ }>, Events, Events, undefined, {
1147
+ src: "layouter";
1148
+ logic: PromiseActorLogic<{
1149
+ xyedges: RelationshipsBrowserTypes.Edge[];
1150
+ xynodes: RelationshipsBrowserTypes.Node[];
1151
+ }, {
1152
+ subjectId: Fqn;
1153
+ navigateFromNode: string | null;
1154
+ xyflow: XYFLowInstance;
1155
+ xystore: XYStoreApi;
1156
+ update: LayoutRelationshipsViewResult;
1157
+ }, EventObject>;
1158
+ id: "layouter";
1159
+ }, never, never, never, never>;
1160
+ }>;
1161
+ export interface RelationshipsBrowserLogic extends ActorLogicFrom<typeof relationshipsBrowserLogic> {
1162
+ }
1163
+ export interface RelationshipsBrowserActorRef extends ActorRefFromLogic<RelationshipsBrowserLogic> {
1164
+ }
78
1165
  export type RelationshipsBrowserSnapshot = SnapshotFrom<RelationshipsBrowserActorRef>;
79
1166
  export {};