Base solution for your next web application
Open Closed

Elsa Integration Challenges and Angular Core Documentation Required #11526


User avatar
0
AuroraBMS created

Project Type: Angular Core Version: 12^

Good day,

We are busy implementing Elsa Integration into our solution and started testing it out on a clean project instance. Elsa integration has been added based on the MVC guide on the site however we are encountering issues on the angular side now due to endpoints being generated via nswag.

Could you please assist with proper steps of how to implement Elsa on aspnetzero angular core. This is a guide that people have requested for several years already and there are bits and pieces of help on the support site but following it only bring the backend online without issues.

below is a portion of the errors encountered by including elsa especially duplications triggered:

Error: src/shared/service-proxies/service-proxies.ts:5444:9 - error TS2322: Type 'Observable<WorkflowInstance | PagedListOfWorkflowInstanceSummaryModel>' is not assignable to type 'Observable<PagedListOfWorkflowInstanceSummaryModel>'. Type 'WorkflowInstance | PagedListOfWorkflowInstanceSummaryModel' is not assignable to type 'PagedListOfWorkflowInstanceSummaryModel'. Type 'WorkflowInstance' is missing the following properties from type 'PagedListOfWorkflowInstanceSummaryModel': items, page, pageSize, totalCount

5444 return this.http.request("get", url_, options_).pipe(observableMergeMap((response : any) => { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5445 return this.processWorkflowInstancesGet(response_); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ... 5454 return observableThrow(response) as any as Observable<PagedListOfWorkflowInstanceSummaryModel>; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5455 })); ~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:5458:15 - error TS2393: Duplicate function implementation.

5458 protected processWorkflowInstancesGet(response: HttpResponseBase): Observable<PagedListOfWorkflowInstanceSummaryModel> { ~~~~~~~~~~~~~~~~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:5491:5 - error TS2393: Duplicate function implementation.

5491 workflowDefinitionsGet(ids: string | undefined, searchTerm: string | undefined, orderBy: WorkflowDefinitionOrderBy | undefined, sortBy: SortBy | undefined, page: number | undefined, pageSize: number | undefined, version: string | undefined): Observable<PagedListOfWorkflowDefinitionSummaryModel> { ~~~~~~~~~~~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:5531:9 - error TS2322: Type 'Observable<WorkflowDefinition | PagedListOfWorkflowDefinitionSummaryModel>' is not assignable to type 'Observable<PagedListOfWorkflowDefinitionSummaryModel>'. Type 'WorkflowDefinition | PagedListOfWorkflowDefinitionSummaryModel' is not assignable to type 'PagedListOfWorkflowDefinitionSummaryModel'. Type 'WorkflowDefinition' is missing the following properties from type 'PagedListOfWorkflowDefinitionSummaryModel': items, page, pageSize, totalCount

5531 return this.http.request("get", url_, options_).pipe(observableMergeMap((response : any) => { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5532 return this.processWorkflowDefinitionsGet(response_); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ... 5541 return observableThrow(response) as any as Observable<PagedListOfWorkflowDefinitionSummaryModel>; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5542 })); ~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:5545:15 - error TS2393: Duplicate function implementation.

5545 protected processWorkflowDefinitionsGet(response: HttpResponseBase): Observable<PagedListOfWorkflowDefinitionSummaryModel> { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:5784:5 - error TS2393: Duplicate function implementation.

5784 workflowRegistryGet(version: string | undefined): Observable<PagedListOfWorkflowBlueprintSummaryModel> { ~~~~~~~~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:5800:9 - error TS2322: Type 'Observable<PagedListOfWorkflowBlueprintModel | PagedListOfWorkflowBlueprintSummaryModel>' is not assignable to type 'Observable<PagedListOfWorkflowBlueprintSummaryModel>'. Type 'PagedListOfWorkflowBlueprintModel | PagedListOfWorkflowBlueprintSummaryModel' is not assignable to type 'PagedListOfWorkflowBlueprintSummaryModel'. Type 'PagedListOfWorkflowBlueprintModel' is not assignable to type 'PagedListOfWorkflowBlueprintSummaryModel'. Types of property 'items' are incompatible. Type 'WorkflowBlueprintModel[]' is not assignable to type 'WorkflowBlueprintSummaryModel[]'. Property 'versionId' is missing in type 'WorkflowBlueprintModel' but required in type 'WorkflowBlueprintSummaryModel'.

5800 return this.http.request("get", url_, options_).pipe(observableMergeMap((response : any) => { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5801 return this.processWorkflowRegistryGet(response_); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ... 5810 return observableThrow(response) as any as Observable<PagedListOfWorkflowBlueprintSummaryModel>; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 5811 })); ~~~~~~~~~~~~

src/shared/service-proxies/service-proxies.ts:40620:5 40620 versionId!: string | undefined; ~~~~~~~~~ 'versionId' is declared here.

Error: src/shared/service-proxies/service-proxies.ts:5814:15 - error TS2393: Duplicate function implementation.

5814 protected processWorkflowRegistryGet(response: HttpResponseBase): Observable<PagedListOfWorkflowBlueprintSummaryModel> { ~~~~~~~~~~~~~~~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:6486:5 - error TS2393: Duplicate function implementation.

6486 dispatchPost(signalName: string, body: DispatchSignalRequest | undefined): Observable<DispatchSignalResponse> { ~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:6519:15 - error TS2393: Duplicate function implementation.

6519 protected processDispatchPost(response: HttpResponseBase): Observable<DispatchSignalResponse> { ~~~~~~~~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:6602:5 - error TS2393: Duplicate function implementation.

6602 dispatchPost(token: string, api_version: string | undefined): Observable<void> { ~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:6620:9 - error TS2322: Type 'Observable<void | DispatchSignalResponse>' is not assignable to type 'Observable<void>'. Type 'void | DispatchSignalResponse' is not assignable to type 'void'. Type 'DispatchSignalResponse' is not assignable to type 'void'.

6620 return this.http.request("post", url_, options_).pipe(observableMergeMap((response : any) => { ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 6621 return this.processDispatchPost(response_); ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ... 6630 return observableThrow(response) as any as Observable<void>; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 6631 })); ~~~~~~~~~~~~

Error: src/shared/service-proxies/service-proxies.ts:6634:15 - error TS2393: Duplicate function implementation.

6634 protected processDispatchPost(response: HttpResponseBase): Observable<void> { ~~~~~~~~~~~~~~~~~~~


5 Answer(s)
  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @AuroraBMS

    Currently we don't have a guide for this but we will work on this in the next version, please follow https://github.com/aspnetzero/aspnet-zero-core/issues/4797.

    I think the problem you are having is related to your angular and typescript version mismatch.

  • User Avatar
    0
    AuroraBMS created

    Hi Ismcagdas,

    I've tried different versions, new versions, historical versions and all of them work normally until ELSA is involved.

    I've followed the MVC guide, I followed the steps for getting the dashboard up and running on and that is fine, everything works perfectly except for nswag generation for serivce proxies.

    I've tried excluding elsa from nswag generation, i've added in filters and it keeps generating the service proxies.

    Is there some guidance that you can provide in getting this up and running please. Another part that is also a nightmare now is the api-version being added to all endpoints, if I am not mistaken, this should also be something that should not be occuring due to how aspnetzero does not use version and it should be isolated to elsa only. getFriendProfilePicture(userId: number | undefined, tenantId: number | undefined, **api_version: string **| undefined): Observable<GetProfilePictureOutput> {

    Any assistance in getting this up and running on a blank solution will be greatly appreciated.

  • User Avatar
    0
    ismcagdas created
    Support Team

    Hi @AuroraBMS

    Probably you are right, Elsa adds api-version parameter. We will work on this to prepare a guide but it might take a 1-2 week for us to complete this guide.

  • User Avatar
    0
    rushdis created

    any update ?

  • User Avatar
    0
    rushdis created

    @ismcagdas ?