Skip to content

Commit 00637a4

Browse files
authored
web: align provider api with other sdks, fix tests (#490)
1 parent b150d6f commit 00637a4

File tree

4 files changed

+31
-10
lines changed

4 files changed

+31
-10
lines changed

web/src/AccountService.ts

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import {
1616
SignInResponse,
1717
TokenProtection,
1818
} from "./proto";
19-
import {BlindOberonTokenRequest, Oberon, UnBlindOberonTokenRequest} from "@trinsic/okapi";
19+
import { BlindOberonTokenRequest, Oberon, UnBlindOberonTokenRequest } from "@trinsic/okapi";
2020
import { fromUint8Array } from "js-base64";
2121

2222

@@ -37,11 +37,11 @@ export class AccountService extends ServiceBase {
3737
if (error || response.getStatus() != ResponseStatus.SUCCESS) {
3838
reject(error);
3939
} else {
40-
var authToken = fromUint8Array(response.getProfile()!.serializeBinary());
41-
42-
// set the auth token as active for the current service instance
43-
this.options.setAuthToken(authToken);
44-
40+
var authToken = fromUint8Array(response.getProfile()!.serializeBinary(), true);
41+
if (!response.getProfile()?.getProtection()?.getEnabled() || true) {
42+
// set the auth token as active for the current service instance
43+
this.options.setAuthToken(authToken);
44+
}
4545
resolve(authToken);
4646
}
4747
});

web/src/ProviderService.ts

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,15 @@ import ServiceBase from "./ServiceBase";
22
import {
33
CreateEcosystemRequest,
44
CreateEcosystemResponse,
5+
Ecosystem,
56
InvitationStatusRequest,
67
InvitationStatusResponse,
78
InviteRequest,
89
InviteResponse,
910
ProviderClient,
1011
ServiceOptions
1112
} from "./proto";
13+
import { fromUint8Array } from "js-base64";
1214

1315
export class ProviderService extends ServiceBase {
1416
client: ProviderClient;
@@ -43,13 +45,18 @@ export class ProviderService extends ServiceBase {
4345
});
4446
}
4547

46-
public createEcosystem(request: CreateEcosystemRequest): Promise<CreateEcosystemResponse> {
48+
public createEcosystem(request: CreateEcosystemRequest): Promise<[Ecosystem, string]> {
4749
return new Promise(async (resolve, reject) => {
4850
this.client.createEcosystem(request, null, (error, response) => {
4951
if (error) {
5052
reject(error);
5153
} else {
52-
resolve(response);
54+
var authToken = fromUint8Array(response.getProfile()!.serializeBinary(), true);
55+
if (!response.getProfile()?.getProtection()?.getEnabled() || true) {
56+
// set the auth token as active for the current service instance
57+
this.options.setAuthToken(authToken);
58+
}
59+
resolve([response.getEcosystem()!, authToken]);
5360
}
5461
});
5562
});

web/test/WalletService.test.js

Lines changed: 13 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,15 @@ import {
1313
InsertItemRequest,
1414
CreateProofRequest,
1515
VerifyProofRequest,
16+
ProviderService,
17+
CreateEcosystemRequest,
1618
} from "../lib";
1719
import { options } from "./env";
1820

21+
/**
22+
* @type {ProviderService} Provider Service
23+
*/
24+
let providerService;
1925
/**
2026
* @type {AccountService} Account Service
2127
*/
@@ -42,15 +48,20 @@ describe("wallet service tests", () => {
4248
walletService = new WalletService(options);
4349
credentialService = new CredentialService(options);
4450
templateService = new TemplateService(options);
45-
46-
console.log("before all ran");
4751
});
4852

4953
it("can retrieve account info", async () => {
5054
const info = await accountService.info(new InfoRequest());
5155
expect(info).not.toBeNull();
5256
});
5357

58+
if("can create new ecosystem", async () => {
59+
const [ecosystem, authToken] = await providerService.createEcosystem(new CreateEcosystemRequest());
60+
61+
expect(ecosystem).not.toBeNull();
62+
expect(authToken).not.toBeEmpty();
63+
});
64+
5465
it("Demo: create wallet, set profile, search records, issue credential", async () => {
5566
let unsignedDocument = {
5667
"@context": "https://w3id.org/security/v3-unstable",

web/webpack.config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,7 @@ module.exports = {
1212
experiments: {
1313
asyncWebAssembly: true,
1414
},
15+
stats: {
16+
errorDetails: true
17+
}
1518
};

0 commit comments

Comments
 (0)