@itwin/insights-client
Version:
Insights client for the iTwin platform
44 lines • 2.37 kB
JavaScript
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
return c > 3 && r && Object.defineProperty(target, key, r), r;
};
var __param = (this && this.__param) || function (paramIndex, decorator) {
return function (target, key) { decorator(target, key, paramIndex); }
};
/*---------------------------------------------------------------------------------------------
* Copyright (c) Bentley Systems, Incorporated. All rights reserved.
* See LICENSE.md in the project root for license terms and full copyright notice.
*--------------------------------------------------------------------------------------------*/
import { decorate, inject, injectable } from "inversify";
import { ITwinsClientConfig } from "./ITwinsClientConfig";
import { ITwinClass, ITwinsAccessClient, ITwinSubClass } from "@itwin/itwins-client";
decorate(injectable(), ITwinsAccessClient);
let TestITwinsClient = class TestITwinsClient extends ITwinsAccessClient {
constructor(config) {
super(config.baseUrl);
}
async getOrCreateITwin(params) {
const authorizationInfo = await params.authorization();
const accessToken = `${authorizationInfo.scheme} ${authorizationInfo.token}`;
const iTwinsResponse = await this.queryAsync(accessToken, ITwinSubClass.Project, { displayName: params.iTwinName });
const iTwinsData = iTwinsResponse.data;
if (iTwinsData.length > 0) {
return iTwinsData[0].id;
}
const iTwinResponse = await this.createiTwin(accessToken, {
class: ITwinClass.Endeavor,
subClass: ITwinSubClass.Project,
displayName: params.iTwinName,
});
const iTwin = iTwinResponse.data;
return iTwin.id;
}
};
TestITwinsClient = __decorate([
injectable(),
__param(0, inject(ITwinsClientConfig))
], TestITwinsClient);
export { TestITwinsClient };
//# sourceMappingURL=TestITwinsClient.js.map