diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.ts b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.ts
index 253c597f7b..796c2b02a0 100644
--- a/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.ts
+++ b/src/app/shared/form/builder/ds-dynamic-form-ui/ds-dynamic-form-control-container.component.ts
@@ -317,10 +317,12 @@ export class DsDynamicFormControlContainerComponent extends DynamicFormControlCo
* Open a modal where the user can select relationships to be added to item being submitted
*/
openLookup() {
+ console.log(this.model);
this.modalRef = this.modalService.open(DsDynamicLookupRelationModalComponent, {
size: 'lg'
});
const modalComp = this.modalRef.componentInstance;
+ modalComp.query = this.model.value.value;
modalComp.repeatable = this.model.repeatable;
modalComp.listId = this.listId;
modalComp.relationshipOptions = this.model.relationship;
diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.ts b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.ts
index 37a89c9ecb..fa6ad2efef 100644
--- a/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.ts
+++ b/src/app/shared/form/builder/ds-dynamic-form-ui/models/ds-dynamic-concat.model.ts
@@ -37,7 +37,7 @@ export class DynamicConcatModel extends DynamicFormGroupModel {
constructor(config: DynamicConcatModelConfig, layout?: DynamicFormControlLayout) {
super(config, layout);
-
+ console.log(config);
this.separator = config.separator + ' ';
this.relationship = config.relationship;
this.repeatable = config.repeatable;
@@ -57,8 +57,10 @@ export class DynamicConcatModel extends DynamicFormGroupModel {
return Object.assign(new FormFieldMetadataValueObject(), firstValue, { value: firstValue.value + this.separator + secondValue.value });
} else if (isNotEmpty(firstValue) && isNotEmpty(firstValue.value)) {
return Object.assign(new FormFieldMetadataValueObject(), firstValue);
+ } else if (isNotEmpty(secondValue) && isNotEmpty(secondValue.value)) {
+ return Object.assign(new FormFieldMetadataValueObject(), secondValue);
} else {
- return null;
+ return new FormFieldMetadataValueObject();
}
}
diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.html b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.html
index 52f983e723..67ddcd3db8 100644
--- a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.html
+++ b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.html
@@ -15,6 +15,7 @@
[relationship]="relationshipOptions"
[repeatable]="repeatable"
[context]="context"
+ [query]="query"
(selectObject)="select($event)"
(deselectObject)="deselect($event)"
class="d-block pt-3">
@@ -42,4 +43,4 @@
-
\ No newline at end of file
+
diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.ts b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.ts
index 4aab8ff325..eab9102c7f 100644
--- a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.ts
+++ b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/dynamic-lookup-relation-modal.component.ts
@@ -42,6 +42,7 @@ export class DsDynamicLookupRelationModalComponent implements OnInit, OnDestroy
selection$: Observable;
context: Context;
metadataFields: string;
+ query: string;
subMap: {
[uuid: string]: Subscription
} = {};
diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.html b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.html
index 4e2da1f12b..cf79f37a44 100644
--- a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.html
+++ b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.html
@@ -3,7 +3,7 @@
[resultCount]="(resultsRD$ | async)?.payload?.totalElements"
[inPlaceSearch]="true" [showViewModes]="false">
-
+
@@ -66,4 +66,4 @@
(selectObject)="selectObject.emit($event)">
-
\ No newline at end of file
+
diff --git a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.ts b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.ts
index 9c00d64953..c2ba77eacf 100644
--- a/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.ts
+++ b/src/app/shared/form/builder/ds-dynamic-form-ui/relation-lookup-modal/search-tab/dynamic-lookup-relation-search-tab.component.ts
@@ -39,6 +39,7 @@ import { Context } from '../../../../../../core/shared/context.model';
export class DsDynamicLookupRelationSearchTabComponent implements OnInit, OnDestroy {
@Input() relationship: RelationshipOptions;
@Input() listId: string;
+ @Input() query: string;
@Input() repeatable: boolean;
@Input() selection$: Observable;
@Input() context: Context;
@@ -73,8 +74,6 @@ export class DsDynamicLookupRelationSearchTabComponent implements OnInit, OnDest
this.resetRoute();
this.routeService.setParameter('fixedFilterQuery', this.relationship.filter);
this.routeService.setParameter('configuration', this.relationship.searchConfiguration);
-
- this.someSelected$ = this.selection$.pipe(map((selection) => isNotEmpty(selection)));
this.resultsRD$ = this.searchConfigService.paginatedSearchOptions.pipe(
map((options) => {
return Object.assign(new PaginatedSearchOptions({}), options, { fixedFilter: this.relationship.filter, configuration: this.relationship.searchConfiguration })
@@ -101,7 +100,7 @@ export class DsDynamicLookupRelationSearchTabComponent implements OnInit, OnDest
*/
resetRoute() {
this.router.navigate([], {
- queryParams: Object.assign({}, { page: 1, pageSize: this.initialPagination.pageSize }),
+ queryParams: Object.assign({}, { page: 1, pageSize: this.initialPagination.pageSize, query: this.query }),
});
}
diff --git a/src/app/shared/form/builder/parsers/field-parser.ts b/src/app/shared/form/builder/parsers/field-parser.ts
index f3f82b3b0f..539e8e202d 100644
--- a/src/app/shared/form/builder/parsers/field-parser.ts
+++ b/src/app/shared/form/builder/parsers/field-parser.ts
@@ -32,6 +32,8 @@ export abstract class FieldParser {
public abstract modelFactory(fieldValue?: FormFieldMetadataValueObject, label?: boolean): any;
public parse() {
+ console.log(this.configData);
+
if (((this.getInitValueCount() > 1 && !this.configData.repeatable) || (this.configData.repeatable))
&& (this.configData.input.type !== 'list')
&& (this.configData.input.type !== 'tag')
@@ -44,9 +46,8 @@ export abstract class FieldParser {
if (Array.isArray(this.configData.selectableMetadata) && this.configData.selectableMetadata.length === 1) {
metadataKey = this.configData.selectableMetadata[0].metadata;
- };
+ }
- console.log(this.getInitArrayIndex());
const config = {
id: uniqueId() + '_array',
label: this.configData.label,