diff --git a/src/Bundle/ChillMainBundle/Resources/public/types.ts b/src/Bundle/ChillMainBundle/Resources/public/types.ts
index fecb9a578..26ff73266 100644
--- a/src/Bundle/ChillMainBundle/Resources/public/types.ts
+++ b/src/Bundle/ChillMainBundle/Resources/public/types.ts
@@ -1,5 +1,6 @@
-import { GenericDoc } from "ChillDocStoreAssets/types/generic_doc";
-import { StoredObject, StoredObjectStatus } from "ChillDocStoreAssets/types";
+import {GenericDoc} from "ChillDocStoreAssets/types/generic_doc";
+import {StoredObject, StoredObjectStatus} from "ChillDocStoreAssets/types";
+import {CreatableEntityType} from "ChillPersonAssets/types";
export interface DateTime {
datetime: string;
@@ -278,3 +279,12 @@ export interface addNewEntities {
selected: Selected[];
modal: Modal;
}
+
+/**
+ * Configuration for the CreateModal and Create component
+ */
+export interface CreateComponentConfig {
+ action?: string;
+ allowedTypes: CreatableEntityType[];
+ query?: string;
+}
diff --git a/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/Create.vue b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/Create.vue
index b4f972b2c..a33215b3a 100644
--- a/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/Create.vue
+++ b/src/Bundle/ChillMainBundle/Resources/public/vuejs/OnTheFly/components/Create.vue
@@ -46,34 +46,29 @@
/>
-
+
+
+
+ emit('close')"
+ :modal-dialog-class="modalDialogClass"
+ :hide-footer="false"
+ >
+
+ {{ modalTitle }}
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/Bundle/ChillPersonBundle/Resources/public/types.ts b/src/Bundle/ChillPersonBundle/Resources/public/types.ts
index 32dc24f73..33ba66b4a 100644
--- a/src/Bundle/ChillPersonBundle/Resources/public/types.ts
+++ b/src/Bundle/ChillPersonBundle/Resources/public/types.ts
@@ -261,11 +261,20 @@ export interface AccompanyingPeriodWorkEvaluationDocument {
workflows: object[];
}
-export type EntityType =
+/**
+ * Entity types that a user can create
+ */
+export type CreatableEntityType =
+ | "person"
+ | "thirdparty";
+
+
+/**
+ * Entities that can be search and selected by a user
+ */
+export type EntityType = CreatableEntityType
| "user_group"
| "user"
- | "person"
- | "thirdparty"
| "household";
export type Entities = (UserGroup | User | Person | Thirdparty | Household) & {
@@ -303,7 +312,8 @@ export interface Search {
export interface SearchOptions {
uniq: boolean;
- type: string[];
+ /** @deprecated */
+ type: EntityType[];
priority: number | null;
button: {
size: string;
diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue
index 35a674033..18adee87d 100644
--- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue
+++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons.vue
@@ -9,22 +9,31 @@
$emit('addNewPersons', payload)"
+ @addNewPersons="payload => emit('addNewPersons', payload)"
+ @onAskForCreate="onAskForCreate"
/>
+
+
diff --git a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons/PersonChooseModal.vue b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons/PersonChooseModal.vue
index 4c0021fc9..ea6854a8a 100644
--- a/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons/PersonChooseModal.vue
+++ b/src/Bundle/ChillPersonBundle/Resources/public/vuejs/_components/AddPersons/PersonChooseModal.vue
@@ -1,10 +1,8 @@
emit('close')"
:modal-dialog-class="modalDialogClass"
- :show="show"
:hide-footer="false"
>
@@ -58,7 +56,6 @@
:item="item"
:search="search"
:type="checkUniq"
- @save-form-on-the-fly="saveFormOnTheFly"
@new-prior-suggestion="newPriorSuggestion"
@update-selected="updateSelected"
/>
@@ -84,6 +81,7 @@
@save-form-on-the-fly="saveFormOnTheFly"
ref="onTheFly"
/>
+ -->
@@ -102,7 +100,7 @@