Skip to content
This repository was archived by the owner on Feb 20, 2024. It is now read-only.

Commit 91f8796

Browse files
Merge pull request #42 from solace-iot-team/feat-ucs-1
Feat ucs 1
2 parents a68d218 + 02b1da4 commit 91f8796

File tree

11 files changed

+105
-18
lines changed

11 files changed

+105
-18
lines changed

.gitignore

+1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
11
.devel
22
gh-pages
33
.DS_Store
4+
.vscode

ReleaseNotes.md

+15
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,21 @@
22

33
Solace Async API Management.
44

5+
## Version 0.3.4
6+
* [API-M Admin & Developer Portal](https://github.com/solace-iot-team/async-apim/tree/main/apim-portal): 0.3.4
7+
* [API-M Server OpenAPI](https://github.com/solace-iot-team/async-apim/blob/main/apim-server/server/common/api.yml): 0.3.1
8+
* [API-M Server](https://github.com/solace-iot-team/async-apim/tree/main/apim-server): 0.3.2
9+
* [API-M Connector OpenAPI](https://github.com/solace-iot-team/platform-api): 0.7.19
10+
11+
**Enhancements:**
12+
- **App: Connection Endpoints**
13+
- added the message vpn. required for smf/s connections.
14+
15+
**Releases:**
16+
- **APIM Portal:Docker Image**
17+
- runs in unprivileged mode
18+
19+
520
## Version 0.3.3
621
* [API-M Admin & Developer Portal](https://github.com/solace-iot-team/async-apim/tree/main/apim-portal): 0.3.3
722
* [API-M Server OpenAPI](https://github.com/solace-iot-team/async-apim/blob/main/apim-server/server/common/api.yml): 0.3.1

apim-portal/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "async-apim-portal",
3-
"version": "0.3.3",
3+
"version": "0.3.4",
44
"description": "Solace Async API Management Portal",
55
"repository": {
66
"type": "git",

apim-portal/src/admin-portal/displayServices/APAdminPortalAppsDisplayService.ts

+12-2
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import {
2828
TAPTopicSyntax
2929
} from '../../displayServices/APAppsDisplayService/APAppsDisplayService';
3030
import APBusinessGroupsDisplayService, { TAPBusinessGroupDisplay, TAPBusinessGroupDisplayList } from '../../displayServices/APBusinessGroupsDisplayService';
31+
import APEnvironmentsDisplayService, { TAPEnvironmentDisplayList } from '../../displayServices/APEnvironmentsDisplayService';
3132
import APRbacDisplayService from '../../displayServices/APRbacDisplayService';
3233
import APOrganizationUsersDisplayService, {
3334
TAPCheckOrganizationUserIdExistsResult, TAPOrganizationUserDisplay, TAPOrganizationUserDisplayList
@@ -170,6 +171,7 @@ class APAdminPortalAppsDisplayService extends APAppsDisplayService {
170171
apApp_ApiProduct_DisplayList,
171172
apApp_Api_DisplayList,
172173
apOrganizationAppSettings,
174+
complete_ApEnvironmentDisplayList,
173175
}: {
174176
apAppMeta: TAPAppMeta;
175177
apAdminPortalApp_Status: EAPAdminPortalApp_Status;
@@ -179,6 +181,7 @@ class APAdminPortalAppsDisplayService extends APAppsDisplayService {
179181
apApp_ApiProduct_DisplayList: TAPDeveloperPortalAppApiProductDisplayList;
180182
apApp_Api_DisplayList: TAPAppApiDisplayList;
181183
apOrganizationAppSettings: TAPOrganizationAppSettings;
184+
complete_ApEnvironmentDisplayList: TAPEnvironmentDisplayList;
182185
}): TAPAdminPortalAppDisplay {
183186

184187
const apAppDisplay: IAPAppDisplay = this.create_ApAppDisplay_From_ApiEntities({
@@ -188,7 +191,8 @@ class APAdminPortalAppsDisplayService extends APAppsDisplayService {
188191
connectorAppResponse_mqtt: connectorAppResponse_mqtt,
189192
apAppApiProductDisplayList: apApp_ApiProduct_DisplayList,
190193
apAppApiDisplayList: apApp_Api_DisplayList,
191-
apOrganizationAppSettings: apOrganizationAppSettings
194+
apOrganizationAppSettings: apOrganizationAppSettings,
195+
complete_ApEnvironmentDisplayList: complete_ApEnvironmentDisplayList
192196
});
193197

194198
const apAdminPortalAppDisplay: TAPAdminPortalAppDisplay = {
@@ -359,6 +363,11 @@ class APAdminPortalAppsDisplayService extends APAppsDisplayService {
359363
// TEST upstream error handling
360364
// throw new Error(`${logName}: test error handling`);
361365

366+
// get the complete env list for reference
367+
const complete_apEnvironmentDisplayList: TAPEnvironmentDisplayList = await APEnvironmentsDisplayService.apiGetList_ApEnvironmentDisplay({
368+
organizationId: organizationId
369+
});
370+
362371
const connectorAppResponseGeneric: AppResponseGeneric = await AppsService.getApp({
363372
organizationName: organizationId,
364373
appName: appId
@@ -413,7 +422,8 @@ class APAdminPortalAppsDisplayService extends APAppsDisplayService {
413422
connectorAppConnectionStatus: connectorAppConnectionStatus,
414423
apApp_ApiProduct_DisplayList: apAppApiProductDisplayList,
415424
apApp_Api_DisplayList: apAppApiDisplayList,
416-
apOrganizationAppSettings: apOrganizationAppSettings
425+
apOrganizationAppSettings: apOrganizationAppSettings,
426+
complete_ApEnvironmentDisplayList: complete_apEnvironmentDisplayList
417427
});
418428

419429
return apAdminPortalAppDisplay;

apim-portal/src/components/APDisplayDeveloperPortalApp/APDisplayDeveloperPortalApp_Endpoints.tsx

+8-1
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,15 @@ export const APDisplayDeveloperPortalAppEndpoints: React.FC<IAPDisplayDeveloperP
4242
}
4343

4444
const rowGroupHeaderTemplate = (row: TAPEnvironmentEndpointDisplay) => {
45+
// let header = row.apEntityId.displayName;
46+
// if(row.messageVpnName) header += ` - Message Vpn: ${row.messageVpnName}`;
4547
return(
46-
<span className="p-text-bold">Environment: {row.apEntityId.displayName}</span>
48+
<div>
49+
<div className="p-text-bold">Environment: {row.apEntityId.displayName}</div>
50+
{row.messageVpnName &&
51+
<div className="p-ml-2">Message Vpn: {row.messageVpnName}</div>
52+
}
53+
</div>
4754
);
4855
}
4956

apim-portal/src/developer-portal/displayServices/APDeveloperPortalAppsDisplayService.ts

+6-2
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,7 @@ export abstract class APDeveloperPortalAppsDisplayService extends APAppsDisplayS
6969
apDeveloperPortalApp_ApiProductDisplayList,
7070
apAppApiDisplayList,
7171
apOrganizationAppSettings,
72+
complete_ApEnvironmentDisplayList,
7273
}: {
7374
ownerId: string;
7475
connectorAppResponse_smf: AppResponse;
@@ -77,6 +78,7 @@ export abstract class APDeveloperPortalAppsDisplayService extends APAppsDisplayS
7778
apDeveloperPortalApp_ApiProductDisplayList: TAPDeveloperPortalAppApiProductDisplayList;
7879
apAppApiDisplayList: TAPAppApiDisplayList;
7980
apOrganizationAppSettings: TAPOrganizationAppSettings;
81+
complete_ApEnvironmentDisplayList: TAPEnvironmentDisplayList;
8082
}): TAPDeveloperPortalAppDisplay {
8183

8284
const apAppDisplay: IAPAppDisplay = this.create_ApAppDisplay_From_ApiEntities({
@@ -86,7 +88,8 @@ export abstract class APDeveloperPortalAppsDisplayService extends APAppsDisplayS
8688
connectorAppResponse_mqtt: connectorAppResponse_mqtt,
8789
apAppApiProductDisplayList: apDeveloperPortalApp_ApiProductDisplayList,
8890
apAppApiDisplayList: apAppApiDisplayList,
89-
apOrganizationAppSettings: apOrganizationAppSettings
91+
apOrganizationAppSettings: apOrganizationAppSettings,
92+
complete_ApEnvironmentDisplayList: complete_ApEnvironmentDisplayList
9093
});
9194

9295
return apAppDisplay;
@@ -170,7 +173,8 @@ export abstract class APDeveloperPortalAppsDisplayService extends APAppsDisplayS
170173
connectorAppResponse_mqtt: undefined,
171174
apDeveloperPortalApp_ApiProductDisplayList: apDeveloperPortalApp_ApiProductDisplayList,
172175
apAppApiDisplayList: [],
173-
apOrganizationAppSettings: apOrganizationAppSettings
176+
apOrganizationAppSettings: apOrganizationAppSettings,
177+
complete_ApEnvironmentDisplayList: complete_apEnvironmentDisplayList
174178
});
175179

176180
const apDeveloperPortalAppListDisplay: IAPDeveloperPortalAppListDisplay = {

apim-portal/src/developer-portal/displayServices/APDeveloperPortalTeamAppsDisplayService.ts

+11-1
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ import {
1515
TAPAppMeta,
1616
TAPOrganizationAppSettings
1717
} from '../../displayServices/APAppsDisplayService/APAppsDisplayService';
18+
import APEnvironmentsDisplayService, { TAPEnvironmentDisplayList } from '../../displayServices/APEnvironmentsDisplayService';
1819
import { APClientConnectorOpenApi } from '../../utils/APClientConnectorOpenApi';
1920
import APSearchContentService, { IAPSearchContent } from '../../utils/APSearchContentService';
2021
import {
@@ -76,6 +77,7 @@ class APDeveloperPortalTeamAppsDisplayService extends APDeveloperPortalAppsDispl
7677
apDeveloperPortalApp_ApiProductDisplayList,
7778
apAppApiDisplayList,
7879
apOrganizationAppSettings,
80+
complete_ApEnvironmentDisplayList,
7981
}: {
8082
teamId: string;
8183
connectorAppResponse_smf: AppResponse;
@@ -84,6 +86,7 @@ class APDeveloperPortalTeamAppsDisplayService extends APDeveloperPortalAppsDispl
8486
apDeveloperPortalApp_ApiProductDisplayList: TAPDeveloperPortalAppApiProductDisplayList;
8587
apAppApiDisplayList: TAPAppApiDisplayList;
8688
apOrganizationAppSettings: TAPOrganizationAppSettings;
89+
complete_ApEnvironmentDisplayList: TAPEnvironmentDisplayList;
8790
}): TAPDeveloperPortalTeamAppDisplay {
8891

8992
const apDeveloperPortalAppDisplay: TAPDeveloperPortalAppDisplay = this.create_ApDeveloperPortalAppDisplay_From_ApiEntities({
@@ -93,7 +96,8 @@ class APDeveloperPortalTeamAppsDisplayService extends APDeveloperPortalAppsDispl
9396
connectorAppResponse_mqtt: connectorAppResponse_mqtt,
9497
apDeveloperPortalApp_ApiProductDisplayList: apDeveloperPortalApp_ApiProductDisplayList,
9598
apAppApiDisplayList: apAppApiDisplayList,
96-
apOrganizationAppSettings: apOrganizationAppSettings
99+
apOrganizationAppSettings: apOrganizationAppSettings,
100+
complete_ApEnvironmentDisplayList: complete_ApEnvironmentDisplayList
97101
});
98102

99103
const apDeveloperPortalTeamAppDisplay: TAPDeveloperPortalTeamAppDisplay = {
@@ -153,6 +157,11 @@ class APDeveloperPortalTeamAppsDisplayService extends APDeveloperPortalAppsDispl
153157
});
154158
if(!exists_teamId) throw new Error(`${logName}: !exists_teamId`);
155159

160+
// get the complete env list for reference
161+
const complete_apEnvironmentDisplayList: TAPEnvironmentDisplayList = await APEnvironmentsDisplayService.apiGetList_ApEnvironmentDisplay({
162+
organizationId: organizationId
163+
});
164+
156165
const connectorAppResponse_smf: AppResponse = await AppsService.getTeamApp({
157166
organizationName: organizationId,
158167
teamName: teamId,
@@ -194,6 +203,7 @@ class APDeveloperPortalTeamAppsDisplayService extends APDeveloperPortalAppsDispl
194203
apDeveloperPortalApp_ApiProductDisplayList: apDeveloperPortalApp_ApiProductDisplayList,
195204
apAppApiDisplayList: apAppApiDisplayList,
196205
apOrganizationAppSettings: apOrganizationAppSettings,
206+
complete_ApEnvironmentDisplayList: complete_apEnvironmentDisplayList
197207
});
198208

199209
return apDeveloperPortalTeamAppDisplay;

apim-portal/src/developer-portal/displayServices/APDeveloperPortalUserAppsDisplayService.ts

+10
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@ import {
1818
TAPAppMeta,
1919
TAPOrganizationAppSettings
2020
} from '../../displayServices/APAppsDisplayService/APAppsDisplayService';
21+
import APEnvironmentsDisplayService, { TAPEnvironmentDisplayList } from '../../displayServices/APEnvironmentsDisplayService';
2122
import { APClientConnectorOpenApi } from '../../utils/APClientConnectorOpenApi';
2223
import APSearchContentService, { IAPSearchContent } from '../../utils/APSearchContentService';
2324
import APDeveloperPortalAppApiProductsDisplayService, {
@@ -73,6 +74,7 @@ class APDeveloperPortalUserAppsDisplayService extends APDeveloperPortalAppsDispl
7374
apDeveloperPortalUserApp_ApiProductDisplayList,
7475
apAppApiDisplayList,
7576
apOrganizationAppSettings,
77+
complete_ApEnvironmentDisplayList,
7678
}: {
7779
userId: string;
7880
connectorAppResponse_smf: AppResponse;
@@ -81,6 +83,7 @@ class APDeveloperPortalUserAppsDisplayService extends APDeveloperPortalAppsDispl
8183
apDeveloperPortalUserApp_ApiProductDisplayList: TAPDeveloperPortalAppApiProductDisplayList;
8284
apAppApiDisplayList: TAPAppApiDisplayList;
8385
apOrganizationAppSettings: TAPOrganizationAppSettings;
86+
complete_ApEnvironmentDisplayList: TAPEnvironmentDisplayList;
8487
}): TAPDeveloperPortalUserAppDisplay {
8588

8689
const apAppDisplay: IAPAppDisplay = this.create_ApAppDisplay_From_ApiEntities({
@@ -91,6 +94,7 @@ class APDeveloperPortalUserAppsDisplayService extends APDeveloperPortalAppsDispl
9194
apAppApiProductDisplayList: apDeveloperPortalUserApp_ApiProductDisplayList,
9295
apAppApiDisplayList: apAppApiDisplayList,
9396
apOrganizationAppSettings: apOrganizationAppSettings,
97+
complete_ApEnvironmentDisplayList: complete_ApEnvironmentDisplayList,
9498
});
9599

96100
const apDeveloperPortalUserAppDisplay: TAPDeveloperPortalUserAppDisplay = {
@@ -157,6 +161,11 @@ class APDeveloperPortalUserAppsDisplayService extends APDeveloperPortalAppsDispl
157161
});
158162
if(!exists_userId) throw new Error(`${logName}: !exists_userId`);
159163

164+
// get the complete env list for reference
165+
const complete_apEnvironmentDisplayList: TAPEnvironmentDisplayList = await APEnvironmentsDisplayService.apiGetList_ApEnvironmentDisplay({
166+
organizationId: organizationId
167+
});
168+
160169
const connectorAppResponse_smf: AppResponse = await AppsService.getDeveloperApp({
161170
organizationName: organizationId,
162171
developerUsername: userId,
@@ -198,6 +207,7 @@ class APDeveloperPortalUserAppsDisplayService extends APDeveloperPortalAppsDispl
198207
apDeveloperPortalUserApp_ApiProductDisplayList: apDeveloperPortalUserApp_ApiProductDisplayList,
199208
apAppApiDisplayList: apAppApiDisplayList,
200209
apOrganizationAppSettings: apOrganizationAppSettings,
210+
complete_ApEnvironmentDisplayList: complete_apEnvironmentDisplayList
201211
});
202212

203213
return apDeveloperPortalUserAppDisplay;

apim-portal/src/displayServices/APAppsDisplayService/APAppEnvironmentsDisplayService.ts

+22-7
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@ import {
88
IAPEntityIdDisplay,
99
TAPEntityId
1010
} from '../../utils/APEntityIdsService';
11+
import { TAPEnvironmentDisplay, TAPEnvironmentDisplayList } from '../APEnvironmentsDisplayService';
1112

1213
export enum E_ApEndpoint_Properties {
1314
SECURE_AND_COMPRESSED = "secure+compressed",
@@ -20,7 +21,8 @@ export type TAPEndpointDisplay = {
2021
protocol: Protocol;
2122
transport: string;
2223
properties: E_ApEndpoint_Properties;
23-
uri: string;
24+
uri: string;
25+
messageVpnName?: string;
2426
};
2527
export type TAPEndpointDisplayList = Array<TAPEndpointDisplay>;
2628

@@ -107,8 +109,9 @@ export class APAppEnvironmentsDisplayService {
107109
return E_ApEndpoint_Properties.PLAIN;
108110
}
109111

110-
private create_ApEndpointDisplayList_From_ApiEntities({ endpoints }:{
112+
private create_ApEndpointDisplayList_From_ApiEntities({ endpoints, apEnvironmentDisplay }:{
111113
endpoints?: Array<Endpoint>;
114+
apEnvironmentDisplay: TAPEnvironmentDisplay;
112115
}): TAPEndpointDisplayList {
113116
const funcName = 'create_ApEndpointDisplayList_From_ApiEntities';
114117
const logName = `${this.BaseComponentName}.${funcName}()`;
@@ -121,15 +124,17 @@ export class APAppEnvironmentsDisplayService {
121124
protocol: endpoint.protocol,
122125
transport: endpoint.transport,
123126
uri: endpoint.uri,
124-
properties: this.create_ApEndpoint_Properties({ secure: endpoint.secure, compressed: endpoint.compressed })
127+
properties: this.create_ApEndpoint_Properties({ secure: endpoint.secure, compressed: endpoint.compressed }),
128+
messageVpnName: apEnvironmentDisplay.connectorEnvironmentResponse.msgVpnName
125129
}
126130
return apEndpointDisplay;
127131
});
128132
}
129133

130-
public create_ApAppEnvironmentDisplay_From_ApiEntities({ connectorAppEnvironment_smf, connectorAppEnvironment_mqtt }: {
134+
public create_ApAppEnvironmentDisplay_From_ApiEntities({ connectorAppEnvironment_smf, connectorAppEnvironment_mqtt, apEnvironmentDisplay }: {
131135
connectorAppEnvironment_smf: AppEnvironment;
132136
connectorAppEnvironment_mqtt?: AppEnvironment;
137+
apEnvironmentDisplay: TAPEnvironmentDisplay;
133138
}): IAPAppEnvironmentDisplay {
134139
const funcName = 'create_ApAppEnvironmentDisplay_From_ApiEntities';
135140
const logName = `${this.BaseComponentName}.${funcName}()`;
@@ -156,7 +161,7 @@ export class APAppEnvironmentsDisplayService {
156161
};
157162
const apAppEnvironmentDisplay: IAPAppEnvironmentDisplay = {
158163
apEntityId: apEnvironmentEntityId,
159-
apEndpointList: this.create_ApEndpointDisplayList_From_ApiEntities({ endpoints: connectorAppEnvironment_smf.messagingProtocols }),
164+
apEndpointList: this.create_ApEndpointDisplayList_From_ApiEntities({ endpoints: connectorAppEnvironment_smf.messagingProtocols, apEnvironmentDisplay: apEnvironmentDisplay }),
160165
apChannelPermissions_smf: {
161166
apSubscribePermissionList: apSubscribePermissionList_smf,
162167
apPublishPermissionList: apPublishPermissionList_smf,
@@ -173,13 +178,22 @@ export class APAppEnvironmentsDisplayService {
173178

174179
}
175180

176-
public create_ApAppEnvironmentDisplayList_From_ApiEntities({ connectorAppEnvironments_smf, connectorAppEnvironments_mqtt }: {
181+
public create_ApAppEnvironmentDisplayList_From_ApiEntities({ connectorAppEnvironments_smf, connectorAppEnvironments_mqtt, complete_ApEnvironmentDisplayList }: {
177182
connectorAppEnvironments_smf?: Array<AppEnvironment>;
178183
connectorAppEnvironments_mqtt?: Array<AppEnvironment>;
184+
complete_ApEnvironmentDisplayList: TAPEnvironmentDisplayList;
179185
}): TAPAppEnvironmentDisplayList {
186+
const funcName = 'create_ApAppEnvironmentDisplayList_From_ApiEntities';
187+
const logName = `${this.BaseComponentName}.${funcName}()`;
188+
180189
if(connectorAppEnvironments_smf === undefined) return [];
181190
const apAppEnvironmentDisplayList: TAPAppEnvironmentDisplayList = [];
182191
for(const connectorAppEnvironment_smf of connectorAppEnvironments_smf) {
192+
// find the complete environment
193+
const apEnvironmentDisplay: TAPEnvironmentDisplay | undefined = complete_ApEnvironmentDisplayList.find( (_apEnvironmentDisplay: TAPEnvironmentDisplay) => {
194+
return connectorAppEnvironment_smf.name === _apEnvironmentDisplay.apEntityId.id;
195+
});
196+
if(apEnvironmentDisplay === undefined) throw new Error(`${logName}: apEnvironmentDisplay === undefined`);
183197
// find the corresponding mqtt environment
184198
let connectorAppEnvironment_mqtt: AppEnvironment | undefined = undefined;
185199
if(connectorAppEnvironments_mqtt !== undefined) {
@@ -190,7 +204,8 @@ export class APAppEnvironmentsDisplayService {
190204
}
191205
apAppEnvironmentDisplayList.push(this.create_ApAppEnvironmentDisplay_From_ApiEntities({
192206
connectorAppEnvironment_smf: connectorAppEnvironment_smf,
193-
connectorAppEnvironment_mqtt: connectorAppEnvironment_mqtt
207+
connectorAppEnvironment_mqtt: connectorAppEnvironment_mqtt,
208+
apEnvironmentDisplay: apEnvironmentDisplay,
194209
}));
195210
}
196211
return apAppEnvironmentDisplayList;

apim-portal/src/displayServices/APAppsDisplayService/APAppsDisplayService.ts

+11-2
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,7 @@ export class APAppsDisplayService {
324324
apAppApiProductDisplayList,
325325
apAppApiDisplayList,
326326
apOrganizationAppSettings,
327+
complete_ApEnvironmentDisplayList,
327328
}: {
328329
connectorAppResponse_smf: AppResponse;
329330
connectorAppResponse_mqtt?: AppResponse;
@@ -332,6 +333,7 @@ export class APAppsDisplayService {
332333
apAppApiProductDisplayList: TAPDeveloperPortalAppApiProductDisplayList;
333334
apAppApiDisplayList: TAPAppApiDisplayList;
334335
apOrganizationAppSettings: TAPOrganizationAppSettings;
336+
complete_ApEnvironmentDisplayList: TAPEnvironmentDisplayList;
335337
}): IAPAppDisplay {
336338

337339
const appCredentials: TAPAppCredentialsDisplay = this.create_ApAppCredentials_From_ApiEntities({ connectorAppResponse: connectorAppResponse_smf, apOrganizationAppSettings: apOrganizationAppSettings });
@@ -368,7 +370,8 @@ export class APAppsDisplayService {
368370
apAppCredentials: appCredentials,
369371
apAppEnvironmentDisplayList: APAppEnvironmentsDisplayService.create_ApAppEnvironmentDisplayList_From_ApiEntities({
370372
connectorAppEnvironments_smf: connectorAppResponse_smf.environments,
371-
connectorAppEnvironments_mqtt: connectorAppResponse_mqtt?.environments
373+
connectorAppEnvironments_mqtt: connectorAppResponse_mqtt?.environments,
374+
complete_ApEnvironmentDisplayList: complete_ApEnvironmentDisplayList,
372375
}),
373376
apAppApiProductDisplayList: apAppApiProductDisplayList,
374377
apAppApiDisplayList: apAppApiDisplayList,
@@ -532,6 +535,11 @@ export class APAppsDisplayService {
532535
connectorAppResponse: connectorAppResponse_smf,
533536
});
534537

538+
// get the complete env list for reference
539+
const complete_apEnvironmentDisplayList: TAPEnvironmentDisplayList = await APEnvironmentsDisplayService.apiGetList_ApEnvironmentDisplay({
540+
organizationId: organizationId
541+
});
542+
535543
// // create the app api display list
536544
// const apAppApiDisplayList: TAPAppApiDisplayList = await APAppApisDisplayService.apiGetList_ApAppApiDisplay({
537545
// organizationId: organizationId,
@@ -546,7 +554,8 @@ export class APAppsDisplayService {
546554
connectorAppResponse_mqtt: undefined,
547555
apAppApiProductDisplayList: apDeveloperPortalUserApp_ApiProductDisplayList,
548556
apAppApiDisplayList: [],
549-
apOrganizationAppSettings: apOrganizationAppSettings
557+
apOrganizationAppSettings: apOrganizationAppSettings,
558+
complete_ApEnvironmentDisplayList: complete_apEnvironmentDisplayList
550559
});
551560

552561
return apAppDisplay;

0 commit comments

Comments
 (0)