diff --git a/lib/core/form/components/widgets/core/form.model.ts b/lib/core/form/components/widgets/core/form.model.ts index 7847a5f004..2c04731fc4 100644 --- a/lib/core/form/components/widgets/core/form.model.ts +++ b/lib/core/form/components/widgets/core/form.model.ts @@ -103,7 +103,7 @@ export class FormModel implements ProcessFormModel { this.customFieldTemplates = json.customFieldTemplates || {}; this.selectedOutcome = json.selectedOutcome; this.className = json.className || ''; - this.variables = json.variables || []; + this.variables = json.variables || json.formDefinition?.variables || []; this.processVariables = json.processVariables || []; this.enableFixedSpace = enableFixedSpace ? true : false; this.confirmMessage = json.confirmMessage || {}; diff --git a/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/attach-file-cloud-widget.component.spec.ts b/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/attach-file-cloud-widget.component.spec.ts index 5c94784cab..aab6d22cdf 100644 --- a/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/attach-file-cloud-widget.component.spec.ts +++ b/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/attach-file-cloud-widget.component.spec.ts @@ -302,7 +302,8 @@ describe('AttachFileCloudWidgetComponent', () => { it('should be able to use mapped string variable value if the destinationFolderPath set to string type variable', async () => { const getNodeIdFromPathSpy = spyOn(contentCloudNodeSelectorService, 'getNodeIdFromPath').and.returnValue(mockNodeIdBasedOnStringVariableValue); - const form = new FormModel({ formVariables, processVariables }); + const variables = formVariables; + const form = new FormModel({ variables, formVariables, processVariables }); createUploadWidgetField(form, 'attach-file-alfresco', [], mockAllFileSourceWithStringVariablePathType); fixture.detectChanges(); await fixture.whenStable(); @@ -787,8 +788,10 @@ describe('AttachFileCloudWidgetComponent', () => { describe('Upload widget with destination folder path params', () => { let form: FormModel; + const variables = formVariables; beforeEach(() => { form = new FormModel({ + variables, formVariables, processVariables }); @@ -810,14 +813,6 @@ describe('AttachFileCloudWidgetComponent', () => { expect(widget.field.params.fileSource.destinationFolderPath.value).toBe('mock-folder-id'); }); - it('it should get a destination folder path value from a folder variable', () => { - createUploadWidgetField(form, 'attach-file-attach', [], mockAllFileSourceWithFolderVariablePathType); - fixture.detectChanges(); - - expect(widget.field.params.fileSource.destinationFolderPath.type).toBe('folder'); - expect(widget.field.params.fileSource.destinationFolderPath.value).toBe('mock-folder-id'); - }); - it('it should set destination folder path value to undefined if mapped variable deleted/renamed', () => { createUploadWidgetField(form, 'attach-file-attach', [], mockAllFileSourceWithRenamedFolderVariablePathType); fixture.detectChanges(); diff --git a/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/upload-cloud.widget.ts b/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/upload-cloud.widget.ts index 6bfb5ba066..ab398bee4d 100644 --- a/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/upload-cloud.widget.ts +++ b/lib/process-services-cloud/src/lib/form/components/widgets/attach-file/upload-cloud.widget.ts @@ -204,6 +204,6 @@ export class UploadCloudWidgetComponent extends WidgetComponent implements OnIni } private getDestinationFolderPathValue(): any { - return this.field.form.getProcessVariableValue(this.field.params.fileSource?.destinationFolderPath?.name); + return this.field.form.getFormVariableValue(this.field.params.fileSource?.destinationFolderPath?.name); } } diff --git a/lib/process-services-cloud/src/lib/form/mocks/attach-file-cloud-widget.mock.ts b/lib/process-services-cloud/src/lib/form/mocks/attach-file-cloud-widget.mock.ts index 1bba0a4eb7..77a36cbfd9 100644 --- a/lib/process-services-cloud/src/lib/form/mocks/attach-file-cloud-widget.mock.ts +++ b/lib/process-services-cloud/src/lib/form/mocks/attach-file-cloud-widget.mock.ts @@ -397,12 +397,13 @@ export const formVariables = [ id: 'bfca9766-7bc1-45cc-8ecf-cdad551e36e2', name: 'name1', type: 'string', - value: 'hello' + value: '-root-/pathBasedOnStringvariablevalue' }, { id: '3ed9f28a-dbae-463f-b991-47ef06658bb6', name: 'name2', - type: 'folder' + type: 'folder', + value: [{ id: 'mock-folder-id'}] }, { id: 'booleanVar',