diff --git a/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.html b/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.html index 0b51fe6ee59..997caacacb3 100644 --- a/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.html +++ b/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.html @@ -23,41 +23,44 @@

Choose API cr
+
-
Create API in Gravitee
-
Start from scratch by creating a new API directly within Gravitee.
+
Create Classic API
+
Proxy an HTTP service using the classic (v2) version of Gravitee's API definition.
- - + + +
+ Design API +
-
+
- -
Build with API Designer
-
- Build faster with a design-first approach that reduces time spent translating requirements into API definitions. -
+ +
Create New API
+
Proxy an HTTP service, mediate between message brokers and HTTP, and expose the native Kafka protocol using the new (v4) version of Gravitee's API definition.
- Build + +
+
-
Or use a previous version
- - +
Not sure which version to pick? v4 contains most of v2 functionality, but has some limitations.
+
diff --git a/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.ts b/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.ts index 68eb0488ed1..09cf5c125ab 100644 --- a/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.ts +++ b/gravitee-apim-console-webui/src/management/api/creation-get-started/api-creation-get-started.component.ts @@ -19,7 +19,6 @@ import { catchError, filter, switchMap, takeUntil, tap } from 'rxjs/operators'; import { EMPTY, of, Subject } from 'rxjs'; import { MatDialog } from '@angular/material/dialog'; import { ActivatedRoute, Router } from '@angular/router'; - import { CockpitService, UtmCampaign } from '../../../services-ngx/cockpit.service'; import { Constants } from '../../../entities/Constants'; import { InstallationService } from '../../../services-ngx/installation.service'; @@ -28,6 +27,10 @@ import { GioPermissionService } from '../../../shared/components/gio-permission/ import { PolicyService } from '../../../services-ngx/policy.service'; import { SnackBarService } from '../../../services-ngx/snack-bar.service'; import { GioApiImportDialogComponent, GioApiImportDialogData } from '../component/gio-api-import-dialog/gio-api-import-dialog.component'; +import { + GioInformationDialogComponent, + GioConnectorDialogData, +} from '../component/gio-information-dialog/gio-information-dialog.component'; @Component({ selector: 'api-creation-get-started', @@ -111,4 +114,23 @@ export class ApiCreationGetStartedComponent implements OnInit, OnDestroy { installation?.additionalInformation.COCKPIT_INSTALLATION_STATUS === 'ACCEPTED' ? 'ACCEPTED' : undefined, ); } + + onMoreInfoClick(event: MouseEvent) { + event.stopPropagation(); + this.matDialog + .open(GioInformationDialogComponent, { + data: { + name: 'Classic (v2) and New (v4) APIs compared', + information: { + description: + 'Gravitee v4 APIs contain most of the same capabilities as v2 APIs, including analytics, logs, failover, and health check. They also support some features not available in v2 APIs, such as protocol mediation, shared policy groups, and native Kafka support. Some functionality is not yet included, however, including alerts, tenants, and some analytics capabilities.' + }, + }, + role: 'alertdialog', + id: 'moreInfoDialog', + }) + .afterClosed() + .pipe(takeUntil(this.unsubscribe$)) + .subscribe(); + } }