azure-devops-node-api
Version:
Node client for Azure DevOps and TFS REST APIs
1,082 lines • 120 kB
JavaScript
"use strict";
/*
* ---------------------------------------------------------
* Copyright(C) Microsoft Corporation. All rights reserved.
* ---------------------------------------------------------
*
* ---------------------------------------------------------
* Generated file, DO NOT EDIT
* ---------------------------------------------------------
*/
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
return new (P || (P = Promise))(function (resolve, reject) {
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
step((generator = generator.apply(thisArg, _arguments || [])).next());
});
};
Object.defineProperty(exports, "__esModule", { value: true });
exports.GalleryApi = void 0;
const compatBase = require("././GalleryCompatHttpClientBase");
const GalleryInterfaces = require("./interfaces/GalleryInterfaces");
class GalleryApi extends compatBase.GalleryCompatHttpClientBase {
constructor(baseUrl, handlers, options) {
super(baseUrl, handlers, 'node-Gallery-api', options);
}
/**
* @param {string} extensionId
* @param {string} accountName
*/
shareExtensionById(extensionId, accountName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
extensionId: extensionId,
accountName: accountName
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "1f19631b-a0b4-4a03-89c2-d79785d24360", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.create(url, null, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} extensionId
* @param {string} accountName
*/
unshareExtensionById(extensionId, accountName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
extensionId: extensionId,
accountName: accountName
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "1f19631b-a0b4-4a03-89c2-d79785d24360", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.del(url, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} extensionName
* @param {string} accountName
*/
shareExtension(publisherName, extensionName, accountName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
accountName: accountName
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "a1e66d8f-f5de-4d16-8309-91a4e015ee46", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.create(url, null, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} extensionName
* @param {string} accountName
*/
unshareExtension(publisherName, extensionName, accountName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
accountName: accountName
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "a1e66d8f-f5de-4d16-8309-91a4e015ee46", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.del(url, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} itemId
* @param {string} installationTarget
* @param {boolean} testCommerce
* @param {boolean} isFreeOrTrialInstall
*/
getAcquisitionOptions(itemId, installationTarget, testCommerce, isFreeOrTrialInstall) {
return __awaiter(this, void 0, void 0, function* () {
if (installationTarget == null) {
throw new TypeError('installationTarget can not be null or undefined');
}
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
itemId: itemId
};
let queryValues = {
installationTarget: installationTarget,
testCommerce: testCommerce,
isFreeOrTrialInstall: isFreeOrTrialInstall,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "9d0a0105-075e-4760-aa15-8bcf54d1bd7d", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.AcquisitionOptions, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {GalleryInterfaces.ExtensionAcquisitionRequest} acquisitionRequest
*/
requestAcquisition(acquisitionRequest) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "3adb1f2d-e328-446e-be73-9f6d98071c45", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.create(url, acquisitionRequest, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionAcquisitionRequest, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} extensionName
* @param {string} version
* @param {string} assetType
* @param {string} accountToken
* @param {boolean} acceptDefault
* @param {String} accountTokenHeader - Header to pass the account token
*/
getAssetByName(customHeaders, publisherName, extensionName, version, assetType, accountToken, acceptDefault, accountTokenHeader) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
version: version,
assetType: assetType
};
let queryValues = {
accountToken: accountToken,
acceptDefault: acceptDefault,
};
customHeaders = customHeaders || {};
customHeaders["X-Market-AccountToken"] = "accountTokenHeader";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "7529171f-a002-4180-93ba-685f358a0482", routeValues, queryValues);
let url = verData.requestUrl;
let apiVersion = verData.apiVersion;
let accept = this.createAcceptHeader("application/octet-stream", apiVersion);
resolve((yield this.http.get(url, { "Accept": accept })).message);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} extensionId
* @param {string} version
* @param {string} assetType
* @param {string} accountToken
* @param {boolean} acceptDefault
* @param {String} accountTokenHeader - Header to pass the account token
*/
getAsset(customHeaders, extensionId, version, assetType, accountToken, acceptDefault, accountTokenHeader) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
extensionId: extensionId,
version: version,
assetType: assetType
};
let queryValues = {
accountToken: accountToken,
acceptDefault: acceptDefault,
};
customHeaders = customHeaders || {};
customHeaders["X-Market-AccountToken"] = "accountTokenHeader";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "5d545f3d-ef47-488b-8be3-f5ee1517856c", routeValues, queryValues);
let url = verData.requestUrl;
let apiVersion = verData.apiVersion;
let accept = this.createAcceptHeader("application/octet-stream", apiVersion);
resolve((yield this.http.get(url, { "Accept": accept })).message);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} extensionName
* @param {string} version
* @param {string} assetType
* @param {string} accountToken
* @param {String} accountTokenHeader - Header to pass the account token
*/
getAssetAuthenticated(customHeaders, publisherName, extensionName, version, assetType, accountToken, accountTokenHeader) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
version: version,
assetType: assetType
};
let queryValues = {
accountToken: accountToken,
};
customHeaders = customHeaders || {};
customHeaders["X-Market-AccountToken"] = "accountTokenHeader";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "506aff36-2622-4f70-8063-77cce6366d20", routeValues, queryValues);
let url = verData.requestUrl;
let apiVersion = verData.apiVersion;
let accept = this.createAcceptHeader("application/octet-stream", apiVersion);
resolve((yield this.http.get(url, { "Accept": accept })).message);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} azurePublisherId
*/
associateAzurePublisher(publisherName, azurePublisherId) {
return __awaiter(this, void 0, void 0, function* () {
if (azurePublisherId == null) {
throw new TypeError('azurePublisherId can not be null or undefined');
}
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName
};
let queryValues = {
azurePublisherId: azurePublisherId,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "efd202a6-9d87-4ebc-9229-d2b8ae2fdb6d", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.replace(url, null, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
*/
queryAssociatedAzurePublisher(publisherName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "efd202a6-9d87-4ebc-9229-d2b8ae2fdb6d", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} languages
*/
getCategories(languages) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {};
let queryValues = {
languages: languages,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "e0a5a71e-3ac3-43a0-ae7d-0bb5c3046a2a", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, null, true);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} categoryName
* @param {string} languages
* @param {string} product
*/
getCategoryDetails(categoryName, languages, product) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
categoryName: categoryName
};
let queryValues = {
languages: languages,
product: product,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "75d3c04d-84d2-4973-acd2-22627587dabc", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} product
* @param {string} categoryId
* @param {number} lcid
* @param {string} source
* @param {string} productVersion
* @param {string} skus
* @param {string} subSkus
* @param {string} productArchitecture
*/
getCategoryTree(product, categoryId, lcid, source, productVersion, skus, subSkus, productArchitecture) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
product: product,
categoryId: categoryId
};
let queryValues = {
lcid: lcid,
source: source,
productVersion: productVersion,
skus: skus,
subSkus: subSkus,
productArchitecture: productArchitecture,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "1102bb42-82b0-4955-8d8a-435d6b4cedd3", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} product
* @param {number} lcid
* @param {string} source
* @param {string} productVersion
* @param {string} skus
* @param {string} subSkus
*/
getRootCategories(product, lcid, source, productVersion, skus, subSkus) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
product: product
};
let queryValues = {
lcid: lcid,
source: source,
productVersion: productVersion,
skus: skus,
subSkus: subSkus,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "31fba831-35b2-46f6-a641-d05de5a877d8", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} extensionName
* @param {string} version
*/
getCertificate(publisherName, extensionName, version) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
version: version
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "e905ad6a-3f1f-4d08-9f6d-7d357ff8b7d0", routeValues);
let url = verData.requestUrl;
let apiVersion = verData.apiVersion;
let accept = this.createAcceptHeader("application/octet-stream", apiVersion);
resolve((yield this.http.get(url, { "Accept": accept })).message);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} extensionName
*/
getContentVerificationLog(publisherName, extensionName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "c0f1c7c4-3557-4ffb-b774-1e48c4865e99", routeValues);
let url = verData.requestUrl;
let apiVersion = verData.apiVersion;
let accept = this.createAcceptHeader("application/octet-stream", apiVersion);
resolve((yield this.http.get(url, { "Accept": accept })).message);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {GalleryInterfaces.CustomerSupportRequest} customerSupportRequest
*/
createSupportRequest(customerSupportRequest) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "8eded385-026a-4c15-b810-b8eb402771f1", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.create(url, customerSupportRequest, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} extensionName
*/
createDraftForEditExtension(publisherName, extensionName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "02b33873-4e61-496e-83a2-59d1df46b7d8", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.create(url, null, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {GalleryInterfaces.ExtensionDraftPatch} draftPatch
* @param {string} publisherName
* @param {string} extensionName
* @param {string} draftId
*/
performEditExtensionDraftOperation(draftPatch, publisherName, extensionName, draftId) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
draftId: draftId
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "02b33873-4e61-496e-83a2-59d1df46b7d8", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.update(url, draftPatch, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {NodeJS.ReadableStream} contentStream - Content to upload
* @param {string} publisherName
* @param {string} extensionName
* @param {string} draftId
* @param {String} fileName - Header to pass the filename of the uploaded data
*/
updatePayloadInDraftForEditExtension(customHeaders, contentStream, publisherName, extensionName, draftId, fileName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
draftId: draftId
};
customHeaders = customHeaders || {};
customHeaders["Content-Type"] = "application/octet-stream";
customHeaders["X-Market-UploadFileName"] = "fileName";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "02b33873-4e61-496e-83a2-59d1df46b7d8", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
options.additionalHeaders = customHeaders;
let res;
res = yield this.rest.uploadStream("PUT", url, contentStream, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {NodeJS.ReadableStream} contentStream - Content to upload
* @param {string} publisherName
* @param {string} extensionName
* @param {string} draftId
* @param {string} assetType
*/
addAssetForEditExtensionDraft(customHeaders, contentStream, publisherName, extensionName, draftId, assetType) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName,
draftId: draftId,
assetType: assetType
};
customHeaders = customHeaders || {};
customHeaders["Content-Type"] = "application/octet-stream";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "f1db9c47-6619-4998-a7e5-d7f9f41a4617", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
options.additionalHeaders = customHeaders;
let res;
res = yield this.rest.uploadStream("PUT", url, contentStream, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {NodeJS.ReadableStream} contentStream - Content to upload
* @param {string} publisherName
* @param {String} product - Header to pass the product type of the payload file
* @param {String} fileName - Header to pass the filename of the uploaded data
*/
createDraftForNewExtension(customHeaders, contentStream, publisherName, product, fileName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName
};
customHeaders = customHeaders || {};
customHeaders["Content-Type"] = "application/octet-stream";
customHeaders["X-Market-UploadFileProduct"] = "product";
customHeaders["X-Market-UploadFileName"] = "fileName";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "b3ab127d-ebb9-4d22-b611-4e09593c8d79", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
options.additionalHeaders = customHeaders;
let res;
res = yield this.rest.uploadStream("POST", url, contentStream, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {GalleryInterfaces.ExtensionDraftPatch} draftPatch
* @param {string} publisherName
* @param {string} draftId
*/
performNewExtensionDraftOperation(draftPatch, publisherName, draftId) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
draftId: draftId
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "b3ab127d-ebb9-4d22-b611-4e09593c8d79", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.update(url, draftPatch, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {NodeJS.ReadableStream} contentStream - Content to upload
* @param {string} publisherName
* @param {string} draftId
* @param {String} fileName - Header to pass the filename of the uploaded data
*/
updatePayloadInDraftForNewExtension(customHeaders, contentStream, publisherName, draftId, fileName) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
draftId: draftId
};
customHeaders = customHeaders || {};
customHeaders["Content-Type"] = "application/octet-stream";
customHeaders["X-Market-UploadFileName"] = "fileName";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "b3ab127d-ebb9-4d22-b611-4e09593c8d79", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
options.additionalHeaders = customHeaders;
let res;
res = yield this.rest.uploadStream("PUT", url, contentStream, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionDraft, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {NodeJS.ReadableStream} contentStream - Content to upload
* @param {string} publisherName
* @param {string} draftId
* @param {string} assetType
*/
addAssetForNewExtensionDraft(customHeaders, contentStream, publisherName, draftId, assetType) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
draftId: draftId,
assetType: assetType
};
customHeaders = customHeaders || {};
customHeaders["Content-Type"] = "application/octet-stream";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "88c0b1c8-b4f1-498a-9b2a-8446ef9f32e7", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
options.additionalHeaders = customHeaders;
let res;
res = yield this.rest.uploadStream("PUT", url, contentStream, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} draftId
* @param {string} assetType
* @param {string} extensionName
*/
getAssetFromEditExtensionDraft(publisherName, draftId, assetType, extensionName) {
return __awaiter(this, void 0, void 0, function* () {
if (extensionName == null) {
throw new TypeError('extensionName can not be null or undefined');
}
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
draftId: draftId,
assetType: assetType
};
let queryValues = {
extensionName: extensionName,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "88c0b1c8-b4f1-498a-9b2a-8446ef9f32e7", routeValues, queryValues);
let url = verData.requestUrl;
let apiVersion = verData.apiVersion;
let accept = this.createAcceptHeader("application/octet-stream", apiVersion);
resolve((yield this.http.get(url, { "Accept": accept })).message);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} publisherName
* @param {string} draftId
* @param {string} assetType
*/
getAssetFromNewExtensionDraft(publisherName, draftId, assetType) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
draftId: draftId,
assetType: assetType
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "88c0b1c8-b4f1-498a-9b2a-8446ef9f32e7", routeValues);
let url = verData.requestUrl;
let apiVersion = verData.apiVersion;
let accept = this.createAcceptHeader("application/octet-stream", apiVersion);
resolve((yield this.http.get(url, { "Accept": accept })).message);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* Get install/uninstall events of an extension. If both count and afterDate parameters are specified, count takes precedence.
*
* @param {string} publisherName - Name of the publisher
* @param {string} extensionName - Name of the extension
* @param {number} count - Count of events to fetch, applies to each event type.
* @param {Date} afterDate - Fetch events that occurred on or after this date
* @param {string} include - Filter options. Supported values: install, uninstall, review, acquisition, sales. Default is to fetch all types of events
* @param {string} includeProperty - Event properties to include. Currently only 'lastContactDetails' is supported for uninstall events
*/
getExtensionEvents(publisherName, extensionName, count, afterDate, include, includeProperty) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: publisherName,
extensionName: extensionName
};
let queryValues = {
count: count,
afterDate: afterDate,
include: include,
includeProperty: includeProperty,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "3d13c499-2168-4d06-bef4-14aba185dcd5", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionEvents, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* API endpoint to publish extension install/uninstall events. This is meant to be invoked by EMS only for sending us data related to install/uninstall of an extension.
*
* @param {GalleryInterfaces.ExtensionEvents[]} extensionEvents
*/
publishExtensionEvents(extensionEvents) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "0bf2bd3a-70e0-4d5d-8bf7-bd4a9c2ab6e7", routeValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.create(url, extensionEvents, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {GalleryInterfaces.ExtensionQuery} extensionQuery
* @param {string} accountToken
* @param {String} accountTokenHeader - Header to pass the account token
*/
queryExtensions(customHeaders, extensionQuery, accountToken, accountTokenHeader) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {};
let queryValues = {
accountToken: accountToken,
};
customHeaders = customHeaders || {};
customHeaders["X-Market-AccountToken"] = "accountTokenHeader";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.1", "gallery", "eb9d5ee1-6d43-456b-b80e-8a96fbc014b6", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
options.additionalHeaders = customHeaders;
let res;
res = yield this.rest.create(url, extensionQuery, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.ExtensionQueryResult, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {NodeJS.ReadableStream} contentStream - Content to upload
* @param {string} extensionType
* @param {string} reCaptchaToken
*/
createExtension(customHeaders, contentStream, extensionType, reCaptchaToken) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {};
let queryValues = {
extensionType: extensionType,
reCaptchaToken: reCaptchaToken,
};
customHeaders = customHeaders || {};
customHeaders["Content-Type"] = "application/octet-stream";
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
options.additionalHeaders = customHeaders;
let res;
res = yield this.rest.uploadStream("POST", url, contentStream, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.PublishedExtension, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} extensionId
* @param {string} version
*/
deleteExtensionById(extensionId, version) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
extensionId: extensionId
};
let queryValues = {
version: version,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.del(url, options);
let ret = this.formatResponse(res.result, null, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} extensionId
* @param {string} version
* @param {GalleryInterfaces.ExtensionQueryFlags} flags
*/
getExtensionById(extensionId, version, flags) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
extensionId: extensionId
};
let queryValues = {
version: version,
flags: flags,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.get(url, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.PublishedExtension, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {string} extensionId
* @param {string} reCaptchaToken
*/
updateExtensionById(extensionId, reCaptchaToken) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
extensionId: extensionId
};
let queryValues = {
reCaptchaToken: reCaptchaToken,
};
try {
let verData = yield this.vsoClient.getVersioningData("7.2-preview.2", "gallery", "a41192c8-9525-4b58-bc86-179fa549d80d", routeValues, queryValues);
let url = verData.requestUrl;
let options = this.createRequestOptions('application/json', verData.apiVersion);
let res;
res = yield this.rest.replace(url, null, options);
let ret = this.formatResponse(res.result, GalleryInterfaces.TypeInfo.PublishedExtension, false);
resolve(ret);
}
catch (err) {
reject(err);
}
}));
});
}
/**
* @param {NodeJS.ReadableStream} contentStream - Content to upload
* @param {string} publisherName
* @param {string} extensionType
* @param {string} reCaptchaToken
*/
createExtensionWithPublisher(customHeaders, contentStream, publisherName, extensionType, reCaptchaToken) {
return __awaiter(this, void 0, void 0, function* () {
return new Promise((resolve, reject) => __awaiter(this, void 0, void 0, function* () {
let routeValues = {
publisherName: pub