diff --git a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts
index 110c81e4d4072ef0417676ea9966a7fa3394f144..6adabee9688a1af7ac880621d85af1a90e04c326 100644
--- a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts
+++ b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.spec.ts
@@ -1,4 +1,4 @@
-import { dispatchEventFromFixture, mock, Mock, MockEvent } from '@alfa-client/test-utils';
+import { dispatchEventFromFixture, existsAsHtmlElement, mock, Mock, MockEvent } from '@alfa-client/test-utils';
 import { OzgcloudDialogService } from '@alfa-client/ui';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 import { ButtonComponent } from '@ods/system';
@@ -12,7 +12,8 @@ describe('CancelDialogButtonComponent', () => {
 
   let dialogService: Mock<OzgcloudDialogService>;
 
-  const cancelDialog: string = getDataTestIdOf('cancel-dialog');
+  const cancelDialogButton: string = getDataTestIdOf('cancel-dialog-button');
+  const cancelDialogIconButton: string = getDataTestIdOf('cancel-dialog-icon-button');
 
   beforeEach(async () => {
     dialogService = mock(OzgcloudDialogService);
@@ -39,9 +40,51 @@ describe('CancelDialogButtonComponent', () => {
 
   describe('on button click', () => {
     it('should call dialog service to close all', () => {
-      dispatchEventFromFixture(fixture, cancelDialog, MockEvent.CLICK);
+      dispatchEventFromFixture(fixture, cancelDialogButton, MockEvent.CLICK);
 
       expect(dialogService.closeAll).toHaveBeenCalled();
     });
   });
+
+  describe('template', () => {
+    describe('button', () => {
+      beforeEach(() => {
+        component.showAsIconButton = false;
+
+        fixture.detectChanges();
+      });
+
+      it('should be visible when showAsIconButton is false', () => {
+        existsAsHtmlElement(fixture, cancelDialogButton);
+      });
+
+      it('should call dialog service to close all', () => {
+        dispatchEventFromFixture(fixture, cancelDialogButton, MockEvent.CLICK);
+
+        expect(dialogService.closeAll).toHaveBeenCalled();
+      });
+    });
+
+    describe('icon button', () => {
+      beforeEach(() => {
+        component.showAsIconButton = true;
+
+        fixture.detectChanges();
+      });
+
+      it('should be visible when showAsIconButton is true', () => {
+        component.showAsIconButton = true;
+
+        fixture.detectChanges();
+
+        existsAsHtmlElement(fixture, cancelDialogIconButton);
+      });
+
+      it('should call dialog service to close all', () => {
+        dispatchEventFromFixture(fixture, cancelDialogIconButton, MockEvent.CLICK);
+
+        expect(dialogService.closeAll).toHaveBeenCalled();
+      });
+    });
+  });
 });
diff --git a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts
index 5d80db0f4e7755c1a2bd9ae9eb7b921c3cf58349..7c41c1bbcdc747090c0aa5bfc64185c577c99fe3 100644
--- a/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts
+++ b/alfa-client/libs/design-component/src/lib/cancel-dialog-button/cancel-dialog-button.component.ts
@@ -1,22 +1,40 @@
 import { OzgcloudDialogService } from '@alfa-client/ui';
-import { Component, inject } from '@angular/core';
-import { ButtonComponent } from '@ods/system';
+import { Component, inject, Input } from '@angular/core';
+import { ButtonComponent, CloseIconComponent, TooltipDirective } from '@ods/system';
 
 @Component({
   selector: 'ods-cancel-dialog-button',
   standalone: true,
-  imports: [ButtonComponent],
-  template: `<ods-button
-    (clickEmitter)="cancel()"
-    variant="outline"
-    text="Abbrechen"
-    dataTestId="cancel-dialog"
-    data-test-id="cancel-dialog"
-  />`,
+  imports: [ButtonComponent, CloseIconComponent, TooltipDirective],
+  template: ` @if (showAsIconButton) {
+      <ods-button
+        (clickEmitter)="cancel()"
+        [tooltip]="'Schließen'"
+        tooltipAriaType="aria-labelledby"
+        variant="ghost"
+        size="fit"
+        dataTestId="cancel-dialog-icon-button"
+        data-test-id="cancel-dialog-icon-button"
+      >
+        <ng-container icon>
+          <ods-close-icon class="fill-primary" />
+        </ng-container>
+      </ods-button>
+    } @else {
+      <ods-button
+        (clickEmitter)="cancel()"
+        variant="outline"
+        text="Abbrechen"
+        dataTestId="cancel-dialog-button"
+        data-test-id="cancel-dialog-button"
+      />
+    }`,
 })
 export class CancelDialogButtonComponent {
   public readonly dialogService = inject(OzgcloudDialogService);
 
+  @Input() showAsIconButton: boolean = false;
+
   public cancel(): void {
     this.dialogService.closeAll();
   }
diff --git a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
index 34e76b0caf61ee449b23f252fbfe5d044d8cc578..13e96065df01af48d1501a2d296068dc44df3d97 100644
--- a/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forward-by-ozgcloud-button-container/forward-by-ozgcloud-button-container.component.html
@@ -1,4 +1,4 @@
-<!--@if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD) {-->
+@if (vorgangWithEingang | hasLink: vorgangWithEingangLinkRel.FORWARD_BY_OZGCLOUD) {
   @if (showAsIconButton) {
     <ods-open-dialog-button
       [tooltip]="'Vorgang weiterleiten'"
@@ -14,4 +14,4 @@
       <ods-forward-vorgang-icon icon class="fill-primary" />
     </ods-open-dialog-button>
   }
-<!--}-->
+}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.spec.ts
index 8c70ffee40332186620258c23f6ac3b63cc50c35..55f96686b633f51075cef31b5148166501495549 100644
--- a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.spec.ts
@@ -1,16 +1,34 @@
 import { ComponentFixture, TestBed } from '@angular/core/testing';
 
+import { mock, Mock } from '@alfa-client/test-utils';
+import { SearchOrganisationsEinheitContainerComponent } from '@alfa-client/zustaendige-stelle';
+import { OrganisationsEinheitService, ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
+import { MockComponent } from 'ng-mocks';
 import { ForwardingDialogContainerComponent } from './forwarding-dialog-container.component';
+import { ForwardingDialogComponent } from './forwarding-dialog/forwarding-dialog.component';
 
 describe('ForwardingDialogContainerComponent', () => {
   let component: ForwardingDialogContainerComponent;
   let fixture: ComponentFixture<ForwardingDialogContainerComponent>;
 
+  let organisationsEinheitService: Mock<OrganisationsEinheitService>;
+
   beforeEach(async () => {
+    organisationsEinheitService = mock(OrganisationsEinheitService);
+    TestBed.overrideComponent(SearchOrganisationsEinheitContainerComponent, {
+      set: {
+        providers: [
+          {
+            provide: ZUSTAENDIGE_STELLE_SERVICE,
+            useValue: organisationsEinheitService,
+          },
+        ],
+      },
+    });
     await TestBed.configureTestingModule({
-      imports: [ForwardingDialogContainerComponent]
-    })
-    .compileComponents();
+      imports: [ForwardingDialogContainerComponent],
+      declarations: [MockComponent(ForwardingDialogComponent)],
+    }).compileComponents();
 
     fixture = TestBed.createComponent(ForwardingDialogContainerComponent);
     component = fixture.componentInstance;
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.ts
index f7014e77c7043790788583d494ea7a5d60ad19dd..f5ce07c1e2579d508e34d1556e8f81e9ab726d4c 100644
--- a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog-container.component.ts
@@ -1,3 +1,7 @@
+import { ResourceRepository } from '@alfa-client/tech-shared';
+import { VorgangService } from '@alfa-client/vorgang-shared';
+import { createOrganisationEinheitService } from '@alfa-client/zustaendige-stelle';
+import { ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
 import { Component } from '@angular/core';
 import { ForwardingDialogComponent } from './forwarding-dialog/forwarding-dialog.component';
 
@@ -6,5 +10,12 @@ import { ForwardingDialogComponent } from './forwarding-dialog/forwarding-dialog
   standalone: true,
   imports: [ForwardingDialogComponent],
   templateUrl: './forwarding-dialog-container.component.html',
+  providers: [
+    {
+      provide: ZUSTAENDIGE_STELLE_SERVICE,
+      useFactory: createOrganisationEinheitService,
+      deps: [ResourceRepository, VorgangService],
+    },
+  ],
 })
 export class ForwardingDialogContainerComponent {}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..aa520b8d99bca18bea17ba1939b8f9a38963ca9a
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.html
@@ -0,0 +1,3 @@
+<ods-button-with-spinner text="Weiterleiten" variant="outline" dataTestId="forward-by-ozgcloud-button">
+  <ods-forward-vorgang-icon icon class="fill-primary" />
+</ods-button-with-spinner>
\ No newline at end of file
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..ec3ee8288b888a029f6de545b97636ec3c5aae5d
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.spec.ts
@@ -0,0 +1,26 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { ButtonWithSpinnerComponent } from '@ods/component';
+import { ForwardVorgangIconComponent } from '@ods/system';
+import { MockComponent } from 'ng-mocks';
+import { ForwardingButtonComponent } from './forwarding-button.component';
+
+describe('ForwardingButtonComponent', () => {
+  let component: ForwardingButtonComponent;
+  let fixture: ComponentFixture<ForwardingButtonComponent>;
+
+  beforeEach(async () => {
+    await TestBed.configureTestingModule({
+      imports: [ForwardingButtonComponent],
+      declarations: [MockComponent(ForwardVorgangIconComponent), MockComponent(ButtonWithSpinnerComponent)],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(ForwardingButtonComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+});
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..46a93fd5af7cc21095fb998b382ad86457650827
--- /dev/null
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-button/forwarding-button.component.ts
@@ -0,0 +1,11 @@
+import { Component } from '@angular/core';
+import { ButtonWithSpinnerComponent } from '@ods/component';
+import { ForwardVorgangIconComponent } from '@ods/system';
+
+@Component({
+  selector: 'alfa-forwarding-button',
+  standalone: true,
+  imports: [ButtonWithSpinnerComponent, ForwardVorgangIconComponent],
+  templateUrl: './forwarding-button.component.html',
+})
+export class ForwardingButtonComponent {}
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.html b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.html
index 3c197754b41e3ddf421b79d3888fa243c900b47b..4a8653498c71522f4c0fa4e2e8335d6461dac58e 100644
--- a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.html
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.html
@@ -1,13 +1,11 @@
-<div class="block bg-background-100 flex flex-col gap-4 p-8">
-  <div class="flex space-between">
-    <h1>Vorgang weiterleiten</h1>
-    <ods-cancel-dialog-button />
+<div class="block bg-background-100 flex w-[620px] flex-col gap-4 p-8">
+  <div class="flex justify-between items-center">
+    <h1 class="text-xl font-semibold text-primary">Vorgang weiterleiten</h1>
+    <ods-cancel-dialog-button showAsIconButton="true"/>
   </div>
-
-  <div>
-    <ods-button-with-spinner label="Weiterleiten" variant="outline" dataTestId="forward-by-ozgcloud-button">
-      <ods-forward-vorgang-icon icon class="fill-primary" />
-    </ods-button-with-spinner>
+  <alfa-search-zustaendige-stelle-form-container cdkFocusInitial/>
+  <div class="flex gap-4" >
+    <alfa-forwarding-button />
     <ods-cancel-dialog-button />
   </div>
 </div>
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.spec.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.spec.ts
index 40f13743f8b61d5b360d19135d143d5103276f00..d45ef9176a2869799cc7fa9f9ff4d1747ac8c9d4 100644
--- a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.spec.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.spec.ts
@@ -1,5 +1,8 @@
+import { ZustaendigeStelleModule } from '@alfa-client/zustaendige-stelle';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
-
+import { CancelDialogButtonComponent } from '@ods/component';
+import { MockComponent, MockModule } from 'ng-mocks';
+import { ForwardingButtonComponent } from './forwarding-button/forwarding-button.component';
 import { ForwardingDialogComponent } from './forwarding-dialog.component';
 
 describe('ForwardingDialogComponent', () => {
@@ -8,9 +11,13 @@ describe('ForwardingDialogComponent', () => {
 
   beforeEach(async () => {
     await TestBed.configureTestingModule({
-      imports: [ForwardingDialogComponent]
-    })
-    .compileComponents();
+      imports: [ForwardingDialogComponent],
+      declarations: [
+        MockComponent(CancelDialogButtonComponent),
+        MockComponent(ForwardingButtonComponent),
+        MockModule(ZustaendigeStelleModule),
+      ],
+    }).compileComponents();
 
     fixture = TestBed.createComponent(ForwardingDialogComponent);
     component = fixture.componentInstance;
diff --git a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.ts b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.ts
index ccc83a659e587575309a436d19ce6f52a24a190e..f864971b37ebd3c461b1a592f05cac2c72b0879b 100644
--- a/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.ts
+++ b/alfa-client/libs/forwarding/src/lib/forwarding-dialog-container/forwarding-dialog/forwarding-dialog.component.ts
@@ -1,27 +1,21 @@
-import { VorgangWithEingangLinkRel } from '@alfa-client/vorgang-shared';
 import { ZustaendigeStelleModule } from '@alfa-client/zustaendige-stelle';
-import { OrganisationsEinheitService, ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
-import { Component, EventEmitter, Output } from '@angular/core';
+import { A11yModule } from '@angular/cdk/a11y';
+import { Component, EventEmitter, Input, Output } from '@angular/core';
 import { ReactiveFormsModule } from '@angular/forms';
 import { Resource } from '@ngxp/rest';
-import { ButtonWithSpinnerComponent, CancelDialogButtonComponent } from '@ods/component';
-import { ForwardVorgangIconComponent } from '@ods/system';
+import { CancelDialogButtonComponent } from '@ods/component';
+import { InstantSearchResult } from '@ods/system';
+import { ForwardingButtonComponent } from './forwarding-button/forwarding-button.component';
 
 @Component({
   selector: 'alfa-forwarding-dialog',
   standalone: true,
-  imports: [
-    CancelDialogButtonComponent,
-    ButtonWithSpinnerComponent,
-    ForwardVorgangIconComponent,
-    ReactiveFormsModule,
-    ZustaendigeStelleModule,
-  ],
+  imports: [A11yModule, CancelDialogButtonComponent, ReactiveFormsModule, ZustaendigeStelleModule, ForwardingButtonComponent],
   templateUrl: './forwarding-dialog.component.html',
-  providers: [{ provide: ZUSTAENDIGE_STELLE_SERVICE, useValue: OrganisationsEinheitService }],
 })
 export class ForwardingDialogComponent {
+  @Input() searchResults: InstantSearchResult<Resource>[];
   @Output() selectSearchResult: EventEmitter<Resource> = new EventEmitter<Resource>();
-  @Output() public search: EventEmitter<string> = new EventEmitter();
-  protected readonly vorgangLinkRel = VorgangWithEingangLinkRel;
+  @Output() search: EventEmitter<string> = new EventEmitter();
+  @Output() clearSearchResult: EventEmitter<void> = new EventEmitter();
 }
diff --git a/alfa-client/libs/zustaendige-stelle/src/index.ts b/alfa-client/libs/zustaendige-stelle/src/index.ts
index 114de029cc81a1f13b64444b0e91753a8cd09094..014f02c0b948630b4ec7c854d46a0274796d227b 100644
--- a/alfa-client/libs/zustaendige-stelle/src/index.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/index.ts
@@ -23,4 +23,5 @@
  */
 export * from './lib/search-externe-fachstelle-container/search-externe-fachstelle-container.component';
 export * from './lib/search-organisations-einheit-container/search-organisations-einheit-container.component';
+export * from './lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component';
 export * from './lib/zustaendige-stelle.module';
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts
index bd7e92ef2892f13b038358e99393ddc4c81bbbb8..5706c8cde9a1fe2d14f1433b2f31139bd9508242 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-organisations-einheit-container/search-organisations-einheit-container.component.ts
@@ -83,7 +83,7 @@ export class SearchOrganisationsEinheitContainerComponent implements OnInit, OnD
   }
 }
 
-function createOrganisationEinheitService(
+export function createOrganisationEinheitService(
   resourceRepository: ResourceRepository,
   vorgangService: VorgangService,
 ): OrganisationsEinheitService {
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html
index 9ff703cfa41d11c22550814030a0f6f2ce5a230f..bc4470c5402969cc5497369b92107fc74cd2cff9 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.html
@@ -30,11 +30,5 @@
       <ods-close-icon class="fill-primary" icon />
     </ods-button>
   </div>
-  <alfa-search-zustaendige-stelle-form
-    data-test-id="search-organisations-einheit"
-    [searchResults]="searchResults$ | async"
-    (search)="search($event)"
-    (selectSearchResult)="selectSearchResult($event)"
-    (clearSearchResult)="clearSearchResult()"
-  ></alfa-search-zustaendige-stelle-form>
+  <alfa-search-zustaendige-stelle-form-container (searchResultSelected)="searchResultSelected($event)" />
 </div>
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts
index 1b4f822ac5579604de0bef351c85ff8df436ee93..0cd130bb32e24de99cff81a5e9355dcd124f4f22 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.spec.ts
@@ -22,46 +22,25 @@
  * unter der Lizenz sind dem Lizenztext zu entnehmen.
  */
 import { ToEmbeddedResourcesPipe } from '@alfa-client/tech-shared';
-import {
-  createDialogRefMock,
-  DialogRefMock,
-  EventData,
-  getMockComponent,
-  Mock,
-  mock,
-  triggerEvent,
-} from '@alfa-client/test-utils';
-import {
-  OrganisationsEinheitResource,
-  OrganisationsEinheitService,
-  ZUSTAENDIGE_STELLE_SERVICE,
-} from '@alfa-client/zustaendige-stelle-shared';
+import { createDialogRefMock, DialogRefMock, Mock, mock } from '@alfa-client/test-utils';
+import { OrganisationsEinheitService, ZUSTAENDIGE_STELLE_SERVICE } from '@alfa-client/zustaendige-stelle-shared';
 import { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';
 import { ComponentFixture, TestBed } from '@angular/core/testing';
-import { faker } from '@faker-js/faker';
 import { Resource } from '@ngxp/rest';
-import { ButtonComponent, CloseIconComponent, InstantSearchResult } from '@ods/system';
-import { createInstantSearchResult } from 'libs/design-system/src/test/search';
+import { ButtonComponent, CloseIconComponent } from '@ods/system';
 import { MockComponent } from 'ng-mocks';
-import { of } from 'rxjs';
-import { getDataTestIdOf } from '../../../../tech-shared/test/data-test';
-import { createOrganisationsEinheitResource } from '../../../../zustaendige-stelle-shared/test/organisations-einheit';
 import { SearchZustaendigeStelleDialogComponent } from '././search-zustaendige-stelle-dialog.component';
-import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
+import { SearchZustaendigeStelleFormContainerComponent } from './search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component';
 
 describe('SearchZustaendigeStelleDialogComponent', () => {
   let component: SearchZustaendigeStelleDialogComponent<Resource>;
   let fixture: ComponentFixture<SearchZustaendigeStelleDialogComponent<Resource>>;
 
-  const searchOrganisationsEinheitComp: string = getDataTestIdOf('search-organisations-einheit');
-
   const service: Mock<OrganisationsEinheitService> = mock(OrganisationsEinheitService);
   const title: string = 'dummyTitle';
 
   let dialogRefMock: DialogRefMock;
 
-  const organisationsEinheitResource: OrganisationsEinheitResource = createOrganisationsEinheitResource();
-
   beforeEach(() => {
     dialogRefMock = createDialogRefMock();
   });
@@ -71,7 +50,7 @@ describe('SearchZustaendigeStelleDialogComponent', () => {
       declarations: [
         SearchZustaendigeStelleDialogComponent,
         ToEmbeddedResourcesPipe,
-        MockComponent(SearchZustaendigeStelleFormComponent),
+        MockComponent(SearchZustaendigeStelleFormContainerComponent),
         MockComponent(ButtonComponent),
         MockComponent(CloseIconComponent),
       ],
@@ -100,149 +79,11 @@ describe('SearchZustaendigeStelleDialogComponent', () => {
     expect(component).toBeTruthy();
   });
 
-  describe('ngOnInit', () => {
-    it('should call service', () => {
-      component.ngOnInit();
-
-      expect(service.getSearchResultList).toHaveBeenCalled();
-    });
-  });
-
-  describe('onKeyDownHandler', () => {
-    it('should prevent default behavior for enter key on non buttons', () => {
-      const keyboardEvent: KeyboardEvent = {
-        ...new KeyboardEvent('enter'),
-        key: 'Enter',
-        preventDefault: jest.fn(),
-        target: new EventTarget(),
-      };
-
-      component.onKeyDownHandler(keyboardEvent);
-
-      expect(keyboardEvent.preventDefault).toHaveBeenCalled();
-    });
-
-    it('should not prevent default behavior for enter key on buttons', () => {
-      const keyboardEvent: KeyboardEvent = {
-        ...new KeyboardEvent('enter'),
-        key: 'Enter',
-        preventDefault: jest.fn(),
-        target: { ...new EventTarget(), tagName: 'BUTTON' } as Element,
-      };
-
-      component.onKeyDownHandler(keyboardEvent);
-
-      expect(keyboardEvent.preventDefault).not.toHaveBeenCalled();
-    });
-  });
-
-  describe('search organisationsEinheit component', () => {
-    const result: InstantSearchResult<Resource> = createInstantSearchResult();
-
-    beforeEach(() => {
-      component.searchResults$ = of([result]);
-      fixture.detectChanges();
-    });
-
-    it('should be called with searchResult', () => {
-      const comp: SearchZustaendigeStelleFormComponent<Resource> = getMockComponent<
-        SearchZustaendigeStelleFormComponent<Resource>
-      >(fixture, SearchZustaendigeStelleFormComponent);
-
-      expect(comp.searchResults).toEqual([result]);
-    });
-
-    it('should call search on openSearchDialog output', () => {
-      component.search = jest.fn();
-      const searchBy: string = faker.word.sample();
-      const eventData: EventData<SearchZustaendigeStelleDialogComponent<Resource>> = {
-        fixture,
-        elementSelector: searchOrganisationsEinheitComp,
-        name: 'search',
-        data: searchBy,
-      };
-
-      triggerEvent(eventData);
-
-      expect(component.search).toHaveBeenCalledWith(searchBy);
-    });
-
-    it('should call selectSearchResult on selectSearchResult output', () => {
-      component.selectSearchResult = jest.fn();
-
-      const eventData: EventData<SearchZustaendigeStelleDialogComponent<Resource>> = {
-        fixture,
-        elementSelector: searchOrganisationsEinheitComp,
-        name: 'selectSearchResult',
-        data: organisationsEinheitResource,
-      };
-
-      triggerEvent(eventData);
-
-      expect(component.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
-    });
-
-    it('should call clearSearchResult', () => {
-      component.clearSearchResult = jest.fn();
-
-      const eventData: EventData<SearchZustaendigeStelleDialogComponent<Resource>> = {
-        fixture,
-        elementSelector: searchOrganisationsEinheitComp,
-        name: 'clearSearchResult',
-        data: organisationsEinheitResource,
-      };
-
-      triggerEvent(eventData);
-
-      expect(component.clearSearchResult).toHaveBeenCalled();
-    });
-  });
-
-  describe('search', () => {
-    const searchBy: string = faker.word.sample();
-
-    it('should call service', () => {
-      component.search(searchBy);
-
-      expect(service.search).toHaveBeenCalledWith(searchBy);
-    });
-  });
-
-  describe('select search result', () => {
-    it('should set select result', () => {
-      component.selectSearchResult(organisationsEinheitResource);
-
-      expect(service.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
-    });
-
-    it('should call service', () => {
-      component.selectSearchResult(organisationsEinheitResource);
-
-      expect(service.clearSearchResult).toHaveBeenCalled();
-    });
-
-    it('should close dialog with result', () => {
-      component.selectSearchResult(organisationsEinheitResource);
-
-      expect(dialogRefMock.close).toHaveBeenCalledWith(organisationsEinheitResource);
-    });
-  });
-
-  describe('clear search result', () => {
-    it('should call service', () => {
-      component.clearSearchResult();
-
-      expect(service.clearSearchResult).toHaveBeenCalled();
-    });
-  });
-
   describe('close dialog', () => {
     it('should clear search result', () => {
-      component.clearSearchResult = jest.fn();
-
       component.closeDialog();
 
-      expect(component.clearSearchResult).toHaveBeenCalled();
+      expect(service.clearSearchResult).toHaveBeenCalled();
     });
 
     it('should close dialog', () => {
@@ -251,22 +92,4 @@ describe('SearchZustaendigeStelleDialogComponent', () => {
       expect(dialogRefMock.close).toHaveBeenCalled();
     });
   });
-
-  describe('isNotButtonElement', () => {
-    it('should return false', () => {
-      const element: Element = { tagName: 'BUTTON' } as Element;
-
-      const result: boolean = component.isNotButtonElement(element);
-
-      expect(result).toBe(false);
-    });
-
-    it('should return true', () => {
-      const element: Element = { tagName: 'INPUT' } as Element;
-
-      const result: boolean = component.isNotButtonElement(element);
-
-      expect(result).toBe(true);
-    });
-  });
 });
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts
index 492c3c800690e5ca9c929299dee8f765f514b76a..b00b5a3a722ac05864396fb4825b67db72694a44 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component.ts
@@ -23,7 +23,7 @@
  */
 import { ZUSTAENDIGE_STELLE_SERVICE, ZustaendigeStelleService } from '@alfa-client/zustaendige-stelle-shared';
 import { DIALOG_DATA, DialogRef } from '@angular/cdk/dialog';
-import { Component, HostListener, Inject, OnInit } from '@angular/core';
+import { Component, Inject } from '@angular/core';
 import { Resource } from '@ngxp/rest';
 import { InstantSearchResult } from '@ods/system';
 import { Observable } from 'rxjs';
@@ -33,47 +33,21 @@ import { Observable } from 'rxjs';
   selector: 'search-zustaendige-stelle-dialog',
   templateUrl: './search-zustaendige-stelle-dialog.component.html',
 })
-export class SearchZustaendigeStelleDialogComponent<T extends Resource> implements OnInit {
+export class SearchZustaendigeStelleDialogComponent<T extends Resource> {
   public searchResults$: Observable<InstantSearchResult<T>[]>;
 
   constructor(
     private dialogRef: DialogRef,
-    @Inject(ZUSTAENDIGE_STELLE_SERVICE)
-    private service: ZustaendigeStelleService<T>,
+    @Inject(ZUSTAENDIGE_STELLE_SERVICE) private service: ZustaendigeStelleService<T>,
     @Inject(DIALOG_DATA) public title: string,
   ) {}
 
-  ngOnInit(): void {
-    this.searchResults$ = this.service.getSearchResultList();
-  }
-
-  @HostListener('document:keydown', ['$event'])
-  onKeyDownHandler(e: KeyboardEvent) {
-    if (e.key === 'Enter' && this.isNotButtonElement(e.target as Element)) {
-      e.preventDefault();
-    }
-  }
-
-  public search(searchBy: string): void {
-    this.service.search(searchBy);
-  }
-
-  public selectSearchResult(zustaendigeStelle: T): void {
-    this.service.selectSearchResult(zustaendigeStelle);
-    this.service.clearSearchResult();
-    this.dialogRef.close(zustaendigeStelle);
-  }
-
-  public clearSearchResult(): void {
-    this.service.clearSearchResult();
-  }
-
   public closeDialog(): void {
-    this.clearSearchResult();
+    this.service.clearSearchResult();
     this.dialogRef.close();
   }
 
-  public isNotButtonElement(e: Element): boolean {
-    return e.tagName !== 'BUTTON';
+  public searchResultSelected(zustaendigeStelle: T): void {
+    this.dialogRef.close(zustaendigeStelle);
   }
 }
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.html b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.html
new file mode 100644
index 0000000000000000000000000000000000000000..d96dce831c52bca494d151ce5aa7f8730e4fe108
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.html
@@ -0,0 +1,7 @@
+<alfa-search-zustaendige-stelle-form
+  data-test-id="search-organisations-einheit"
+  [searchResults]="searchResults$ | async"
+  (search)="search($event)"
+  (selectSearchResult)="selectSearchResult($event)"
+  (clearSearchResult)="clearSearchResult()"
+></alfa-search-zustaendige-stelle-form>
\ No newline at end of file
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.spec.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.spec.ts
new file mode 100644
index 0000000000000000000000000000000000000000..61763e91ba325e6355d54fdab3055f39b0399151
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.spec.ts
@@ -0,0 +1,207 @@
+import { ComponentFixture, TestBed } from '@angular/core/testing';
+
+import { EventData, getMockComponent, mock, Mock, triggerEvent } from '@alfa-client/test-utils';
+import {
+  OrganisationsEinheitResource,
+  OrganisationsEinheitService,
+  ZUSTAENDIGE_STELLE_SERVICE,
+} from '@alfa-client/zustaendige-stelle-shared';
+import { faker } from '@faker-js/faker';
+import { Resource } from '@ngxp/rest';
+import { InstantSearchResult } from '@ods/system';
+import { MockComponent } from 'ng-mocks';
+import { of } from 'rxjs';
+import { createInstantSearchResult } from '../../../../../design-system/src/test/search';
+import { getDataTestIdOf } from '../../../../../tech-shared/test/data-test';
+import { createOrganisationsEinheitResource } from '../../../../../zustaendige-stelle-shared/test/organisations-einheit';
+import { SearchZustaendigeStelleFormContainerComponent } from './search-zustaendige-stelle-form-container.component';
+import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
+
+describe('SearchZustaendigeStelleFormContainerComponent', () => {
+  let component: SearchZustaendigeStelleFormContainerComponent<Resource>;
+  let fixture: ComponentFixture<SearchZustaendigeStelleFormContainerComponent<Resource>>;
+
+  let service: Mock<OrganisationsEinheitService>;
+
+  const searchOrganisationsEinheitComp: string = getDataTestIdOf('search-organisations-einheit');
+
+  const organisationsEinheitResource: OrganisationsEinheitResource = createOrganisationsEinheitResource();
+
+  beforeEach(async () => {
+    service = mock(OrganisationsEinheitService);
+    await TestBed.configureTestingModule({
+      imports: [SearchZustaendigeStelleFormContainerComponent],
+      declarations: [MockComponent(SearchZustaendigeStelleFormComponent)],
+      providers: [
+        {
+          provide: ZUSTAENDIGE_STELLE_SERVICE,
+          useValue: service,
+        },
+      ],
+    }).compileComponents();
+
+    fixture = TestBed.createComponent(SearchZustaendigeStelleFormContainerComponent);
+    component = fixture.componentInstance;
+    fixture.detectChanges();
+  });
+
+  it('should create', () => {
+    expect(component).toBeTruthy();
+  });
+
+  describe('ngOnInit', () => {
+    it('should call service', () => {
+      component.ngOnInit();
+
+      expect(service.getSearchResultList).toHaveBeenCalled();
+    });
+  });
+
+  describe('onKeyDownHandler', () => {
+    it('should prevent default behavior for enter key on non buttons', () => {
+      const keyboardEvent: KeyboardEvent = {
+        ...new KeyboardEvent('enter'),
+        key: 'Enter',
+        preventDefault: jest.fn(),
+        target: new EventTarget(),
+      };
+
+      component.onKeyDownHandler(keyboardEvent);
+
+      expect(keyboardEvent.preventDefault).toHaveBeenCalled();
+    });
+
+    it('should not prevent default behavior for enter key on buttons', () => {
+      const keyboardEvent: KeyboardEvent = {
+        ...new KeyboardEvent('enter'),
+        key: 'Enter',
+        preventDefault: jest.fn(),
+        target: { ...new EventTarget(), tagName: 'BUTTON' } as Element,
+      };
+
+      component.onKeyDownHandler(keyboardEvent);
+
+      expect(keyboardEvent.preventDefault).not.toHaveBeenCalled();
+    });
+  });
+
+  describe('search organisationsEinheit component', () => {
+    const result: InstantSearchResult<Resource> = createInstantSearchResult();
+
+    beforeEach(() => {
+      component.searchResults$ = of([result]);
+      fixture.detectChanges();
+    });
+
+    it('should be called with searchResult', () => {
+      const comp: SearchZustaendigeStelleFormComponent<Resource> = getMockComponent<
+        SearchZustaendigeStelleFormComponent<Resource>
+      >(fixture, SearchZustaendigeStelleFormComponent);
+
+      expect(comp.searchResults).toEqual([result]);
+    });
+
+    it('should call search on openSearchDialog output', () => {
+      component.search = jest.fn();
+      const searchBy: string = faker.word.sample();
+      const eventData: EventData<SearchZustaendigeStelleFormContainerComponent<Resource>> = {
+        fixture,
+        elementSelector: searchOrganisationsEinheitComp,
+        name: 'search',
+        data: searchBy,
+      };
+
+      triggerEvent(eventData);
+
+      expect(component.search).toHaveBeenCalledWith(searchBy);
+    });
+
+    it('should call selectSearchResult on selectSearchResult output', () => {
+      component.selectSearchResult = jest.fn();
+
+      const eventData: EventData<SearchZustaendigeStelleFormContainerComponent<Resource>> = {
+        fixture,
+        elementSelector: searchOrganisationsEinheitComp,
+        name: 'selectSearchResult',
+        data: organisationsEinheitResource,
+      };
+
+      triggerEvent(eventData);
+
+      expect(component.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
+    });
+
+    it('should call clearSearchResult', () => {
+      component.clearSearchResult = jest.fn();
+
+      const eventData: EventData<SearchZustaendigeStelleFormContainerComponent<Resource>> = {
+        fixture,
+        elementSelector: searchOrganisationsEinheitComp,
+        name: 'clearSearchResult',
+        data: organisationsEinheitResource,
+      };
+
+      triggerEvent(eventData);
+
+      expect(component.clearSearchResult).toHaveBeenCalled();
+    });
+  });
+
+  describe('search', () => {
+    const searchBy: string = faker.word.sample();
+
+    it('should call service', () => {
+      component.search(searchBy);
+
+      expect(service.search).toHaveBeenCalledWith(searchBy);
+    });
+  });
+
+  describe('select search result', () => {
+    it('should set select result', () => {
+      component.selectSearchResult(organisationsEinheitResource);
+
+      expect(service.selectSearchResult).toHaveBeenCalledWith(organisationsEinheitResource);
+    });
+
+    it('should call service', () => {
+      component.selectSearchResult(organisationsEinheitResource);
+
+      expect(service.clearSearchResult).toHaveBeenCalled();
+    });
+
+    it('should emit search result selected', () => {
+      component.searchResultSelected.emit = jest.fn();
+
+      component.selectSearchResult(organisationsEinheitResource);
+
+      expect(component.searchResultSelected.emit).toHaveBeenCalledWith(organisationsEinheitResource);
+    });
+  });
+
+  describe('clear search result', () => {
+    it('should call service', () => {
+      component.clearSearchResult();
+
+      expect(service.clearSearchResult).toHaveBeenCalled();
+    });
+  });
+
+  describe('isNotButtonElement', () => {
+    it('should return false', () => {
+      const element: Element = { tagName: 'BUTTON' } as Element;
+
+      const result: boolean = component.isNotButtonElement(element);
+
+      expect(result).toBe(false);
+    });
+
+    it('should return true', () => {
+      const element: Element = { tagName: 'INPUT' } as Element;
+
+      const result: boolean = component.isNotButtonElement(element);
+
+      expect(result).toBe(true);
+    });
+  });
+});
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.ts
new file mode 100644
index 0000000000000000000000000000000000000000..c497b0d76bbc4eff7aa081910878f5a016570ec5
--- /dev/null
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component.ts
@@ -0,0 +1,49 @@
+import { ZUSTAENDIGE_STELLE_SERVICE, ZustaendigeStelleService } from '@alfa-client/zustaendige-stelle-shared';
+import { Component, EventEmitter, HostListener, Inject, OnInit, Output } from '@angular/core';
+import { Resource } from '@ngxp/rest';
+import { InstantSearchResult } from '@ods/system';
+import { Observable } from 'rxjs';
+
+@Component({
+  selector: 'alfa-search-zustaendige-stelle-form-container',
+  templateUrl: './search-zustaendige-stelle-form-container.component.html',
+})
+export class SearchZustaendigeStelleFormContainerComponent<T extends Resource> implements OnInit {
+  @Output() searchResultSelected = new EventEmitter<T>();
+
+  public searchResults$: Observable<InstantSearchResult<T>[]>;
+
+  constructor(
+    @Inject(ZUSTAENDIGE_STELLE_SERVICE)
+    private service: ZustaendigeStelleService<T>,
+  ) {}
+
+  ngOnInit(): void {
+    this.searchResults$ = this.service.getSearchResultList();
+  }
+
+  @HostListener('document:keydown', ['$event'])
+  onKeyDownHandler(e: KeyboardEvent) {
+    if (e.key === 'Enter' && this.isNotButtonElement(e.target as Element)) {
+      e.preventDefault();
+    }
+  }
+
+  public search(searchBy: string): void {
+    this.service.search(searchBy);
+  }
+
+  public selectSearchResult(zustaendigeStelle: T): void {
+    this.service.selectSearchResult(zustaendigeStelle);
+    this.service.clearSearchResult();
+    this.searchResultSelected.emit(zustaendigeStelle);
+  }
+
+  public clearSearchResult(): void {
+    this.service.clearSearchResult();
+  }
+
+  public isNotButtonElement(e: Element): boolean {
+    return e.tagName !== 'BUTTON';
+  }
+}
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
similarity index 100%
rename from alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
rename to alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.html
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
similarity index 93%
rename from alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
rename to alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
index 936e0398d636e323fe154040409c50c876a8f736..92a65e293c4dbea6409338e24fd449c2f4c7ec16 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.spec.ts
@@ -28,11 +28,11 @@ import { ReactiveFormsModule } from '@angular/forms';
 import { faker } from '@faker-js/faker';
 import { Resource } from '@ngxp/rest';
 import { InstantSearchComponent, InstantSearchResult } from '@ods/system';
+import { createInstantSearchResult } from 'libs/design-system/src/test/search';
+import { getDataTestIdOf } from 'libs/tech-shared/test/data-test';
+import { createOrganisationsEinheitResource } from 'libs/zustaendige-stelle-shared/test/organisations-einheit';
 import { MockComponent } from 'ng-mocks';
-import { createInstantSearchResult } from '../../../../../design-system/src/test/search';
-import { getDataTestIdOf } from '../../../../../tech-shared/test/data-test';
-import { createOrganisationsEinheitResource } from '../../../../../zustaendige-stelle-shared/test/organisations-einheit';
-import { SearchZustaendigeStelleFormservice } from '../search-zustaendige-stelle.formservice';
+import { SearchZustaendigeStelleFormservice } from '../../search-zustaendige-stelle.formservice';
 import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-form.component';
 
 describe('SearchZustaendigeStelleFormComponent', () => {
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
similarity index 94%
rename from alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
rename to alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
index dff8515301abf57281a9c617a711bf42d46e71c2..22c096f06509fffd9f5d581f1e05d119811b2559 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component.ts
@@ -24,7 +24,7 @@
 import { Component, EventEmitter, Input, Output } from '@angular/core';
 import { Resource } from '@ngxp/rest';
 import { InstantSearchResult } from '@ods/system';
-import { SearchZustaendigeStelleFormservice } from '../search-zustaendige-stelle.formservice';
+import { SearchZustaendigeStelleFormservice } from '../../search-zustaendige-stelle.formservice';
 
 @Component({
   selector: 'alfa-search-zustaendige-stelle-form',
diff --git a/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts b/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts
index 820da330c99f8e0d184b5c6b38096db8c03604bb..11e5ee19eafa8a59c361e8b260507fe6c32c4ef1 100644
--- a/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts
+++ b/alfa-client/libs/zustaendige-stelle/src/lib/zustaendige-stelle.module.ts
@@ -40,7 +40,8 @@ import { SearchExterneFachstelleContainerComponent } from './search-externe-fach
 import { OrganisationsEinheitComponent } from './search-organisations-einheit-container/organisations-einheit/organisations-einheit.component';
 import { SearchOrganisationsEinheitContainerComponent } from './search-organisations-einheit-container/search-organisations-einheit-container.component';
 import { SearchZustaendigeStelleDialogComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-dialog.component';
-import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
+import { SearchZustaendigeStelleFormContainerComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form-container.component';
+import { SearchZustaendigeStelleFormComponent } from './search-zustaendige-stelle-dialog/search-zustaendige-stelle-form-container/search-zustaendige-stelle-form/search-zustaendige-stelle-form.component';
 import { ZustaendigeStelleButtonComponent } from './zustaendige-stelle-button/zustaendige-stelle-button.component';
 import { ZustaendigeStelleHeaderComponent } from './zustaendige-stelle-header/zustaendige-stelle-header.component';
 
@@ -68,6 +69,7 @@ import { ZustaendigeStelleHeaderComponent } from './zustaendige-stelle-header/zu
     SearchExterneFachstelleContainerComponent,
     EditZustaendigeStelleButtonComponent,
     ZustaendigeStelleHeaderComponent,
+    SearchZustaendigeStelleFormContainerComponent,
   ],
   exports: [
     OrganisationsEinheitComponent,
@@ -75,6 +77,7 @@ import { ZustaendigeStelleHeaderComponent } from './zustaendige-stelle-header/zu
     SearchZustaendigeStelleDialogComponent,
     SearchOrganisationsEinheitContainerComponent,
     SearchExterneFachstelleContainerComponent,
+    SearchZustaendigeStelleFormContainerComponent,
   ],
 })
 export class ZustaendigeStelleModule {}