diff --git a/projects/f-examples/connections/connection-markers/connection-markers.component.html b/projects/f-examples/connections/connection-markers/connection-markers.component.html
new file mode 100644
index 0000000..1a825ac
--- /dev/null
+++ b/projects/f-examples/connections/connection-markers/connection-markers.component.html
@@ -0,0 +1,90 @@
+
+
+
+
+
+
+
+
+
+ I'm a node
+
+
+ I'm a node
+
+
+
+
+
+
+
+
+
+ I'm a node
+
+
+ I'm a node
+
+
+
+
+
+
+
+
+
+ I'm a node
+
+
+ I'm a node
+
+
+
diff --git a/projects/f-examples/connections/connection-markers/connection-markers.component.scss b/projects/f-examples/connections/connection-markers/connection-markers.component.scss
new file mode 100644
index 0000000..72e64cf
--- /dev/null
+++ b/projects/f-examples/connections/connection-markers/connection-markers.component.scss
@@ -0,0 +1,29 @@
+@use "../../flow-common";
+
+::ng-deep connection-markers {
+ @include flow-common.connection;
+
+ .connection-marker {
+ circle, rect, path {
+ fill: var(--connection-color);
+ }
+ }
+
+ .f-connection {
+ &.f-selected {
+
+ .f-connection-path {
+ stroke: var(--minimap-node-selected-color);
+ }
+ .connection-marker {
+ circle, rect, path {
+ fill: var(--minimap-node-selected-color);
+ }
+ }
+ }
+ }
+}
+
+.f-node {
+ @include flow-common.node;
+}
diff --git a/projects/f-examples/connections/connection-markers/connection-markers.component.ts b/projects/f-examples/connections/connection-markers/connection-markers.component.ts
new file mode 100644
index 0000000..5e43d34
--- /dev/null
+++ b/projects/f-examples/connections/connection-markers/connection-markers.component.ts
@@ -0,0 +1,24 @@
+import { ChangeDetectionStrategy, Component, ViewChild } from '@angular/core';
+import { EFMarkerType, FCanvasComponent, FFlowModule } from '@foblex/flow';
+
+@Component({
+ selector: 'connection-markers',
+ styleUrls: [ './connection-markers.component.scss' ],
+ templateUrl: './connection-markers.component.html',
+ changeDetection: ChangeDetectionStrategy.OnPush,
+ standalone: true,
+ imports: [
+ FFlowModule
+ ]
+})
+export class ConnectionMarkersComponent {
+
+ @ViewChild(FCanvasComponent, { static: true })
+ public fCanvas!: FCanvasComponent;
+
+ public eMarkerType = EFMarkerType;
+
+ public onLoaded(): void {
+ this.fCanvas.resetScaleAndCenter(false);
+ }
+}
diff --git a/public/markdown/examples/connection-markers.md b/public/markdown/examples/connection-markers.md
new file mode 100644
index 0000000..f2534ef
--- /dev/null
+++ b/public/markdown/examples/connection-markers.md
@@ -0,0 +1,17 @@
+# Connection Markers
+
+## Description
+
+This guide shows how to set up different connection markers, allowing for different markers to be displayed on connections between connectors.
+
+## Example
+
+::: ng-component [height]="600"
+[component.html] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/connections/connection-markers/connection-markers.component.html
+[component.ts] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/connections/connection-markers/connection-markers.component.ts
+[component.scss] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/connections/connection-markers/connection-markers.component.scss
+[common.scss] <<< https://raw.githubusercontent.com/Foblex/f-flow/main/projects/f-examples/_flow-common.scss
+:::
+
+
+
diff --git a/public/markdown/examples/environment.ts b/public/markdown/examples/environment.ts
index aa18af2..4cc7408 100644
--- a/public/markdown/examples/environment.ts
+++ b/public/markdown/examples/environment.ts
@@ -55,6 +55,7 @@ function createEnvironment(): IDocsEnvironment {
{ tag: 'connection-types', component: import('../../../projects/f-examples/connections/connection-types/connection-types.component') },
{ tag: 'custom-connection-type', component: import('../../../projects/f-examples/connections/custom-connection-type/custom-connection-type.component') },
{ tag: 'connection-behaviours', component: import('../../../projects/f-examples/connections/connection-behaviours/connection-behaviours.component') },
+ { tag: 'connection-markers', component: import('../../../projects/f-examples/connections/connection-markers/connection-markers.component') },
{ tag: 'dagre-layout-example', component: import('../../../projects/f-examples/layouts/dagre-layout-example/dagre-layout-example.component') },
{ tag: 'elkjs-layout-example', component: import('../../../projects/f-examples/layouts/elkjs-layout-example/elkjs-layout-example.component') },
@@ -281,14 +282,16 @@ function connectionGroup(): INavigationGroup {
image_height: 600,
image_type: 'image/png',
},
- // {
- // link: 'custom-connection',
- // text: 'Custom Connection',
- // },
- // {
- // link: 'connection-markers',
- // text: 'Connection Markers',
- // },
+ {
+ link: 'connection-markers',
+ text: 'Connection Markers',
+ description: 'Discover how to add markers to connections. This example demonstrates how to create connections with markers, providing a comprehensive guide to building interactive flow-based diagrams.',
+ image: './previews/examples/connection-markers.light.png',
+ image_dark: './previews/examples/connection-markers.dark.png',
+ image_width: 791,
+ image_height: 600,
+ image_type: 'image/png',
+ },
// {
// link: 'connection-text',
// text: 'Connection Text',
diff --git a/public/previews/examples/connection-markers.dark.png b/public/previews/examples/connection-markers.dark.png
new file mode 100644
index 0000000..650179a
Binary files /dev/null and b/public/previews/examples/connection-markers.dark.png differ
diff --git a/public/previews/examples/connection-markers.light.png b/public/previews/examples/connection-markers.light.png
new file mode 100644
index 0000000..2b19328
Binary files /dev/null and b/public/previews/examples/connection-markers.light.png differ