mirror of
https://github.com/ckaczor/azuredatastudio.git
synced 2026-02-16 10:58:30 -05:00
Enable azure cloud console in ADS (#8546)
* initial changes * Enable cloud console * Delete unnecessary code * error handling * error handling * Deal with promises * Fix externals * Fix externals for ws * Cleanup name of terminal * Update yarn.lock * Fix yarn.lock * Fix externals * Cleanup parts of the code * Fix more issues * Fix cloud terminal * Go back to our client ID * Fix message * Respect preferred location * Fix govt cloud * Some more messaging * Enable items on right click * Some feedback * Change to status message
This commit is contained in:
@@ -8,13 +8,30 @@
|
|||||||
'use strict';
|
'use strict';
|
||||||
|
|
||||||
const withDefaults = require('../shared.webpack.config');
|
const withDefaults = require('../shared.webpack.config');
|
||||||
|
const fs = require('fs');
|
||||||
|
const path = require('path');
|
||||||
|
|
||||||
|
const externals = {
|
||||||
|
'node-fetch': 'commonjs node-fetch',
|
||||||
|
'bufferutil': 'commonjs bufferutil',
|
||||||
|
'utf-8-validate': 'commonjs utf-8-validate',
|
||||||
|
'keytar': 'commonjs keytar',
|
||||||
|
};
|
||||||
|
|
||||||
|
// conditionally add ws if we are going to be running in a node environment
|
||||||
|
const yarnrcPath = path.join(__dirname, '.yarnrc');
|
||||||
|
if (fs.existsSync(yarnrcPath)) {
|
||||||
|
const yarnrc = fs.readFileSync(yarnrcPath).toString();
|
||||||
|
const properties = yarnrc.split(/\r?\n/).map(r => r.split(' '));
|
||||||
|
if (properties.find(r => r[0] === 'runtime')[1] === '"node"') {
|
||||||
|
externals['ws'] = 'commonjs ws';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
module.exports = withDefaults({
|
module.exports = withDefaults({
|
||||||
context: __dirname,
|
context: __dirname,
|
||||||
entry: {
|
entry: {
|
||||||
extension: './src/extension.ts'
|
extension: './src/extension.ts'
|
||||||
},
|
},
|
||||||
externals: {
|
externals: externals
|
||||||
'keytar': 'commonjs keytar'
|
|
||||||
}
|
|
||||||
});
|
});
|
||||||
|
|||||||
@@ -143,6 +143,14 @@
|
|||||||
"title": "%azure.resource.selectsubscriptions.title%",
|
"title": "%azure.resource.selectsubscriptions.title%",
|
||||||
"icon": "$(filter)"
|
"icon": "$(filter)"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"command": "azure.resource.startterminal",
|
||||||
|
"title": "%azure.resource.startterminal.title%",
|
||||||
|
"icon": {
|
||||||
|
"dark": "resources/dark/console.svg",
|
||||||
|
"light": "resources/light/console.svg"
|
||||||
|
}
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"command": "azure.resource.connectsqlserver",
|
"command": "azure.resource.connectsqlserver",
|
||||||
"title": "%azure.resource.connectsqlserver.title%",
|
"title": "%azure.resource.connectsqlserver.title%",
|
||||||
@@ -217,15 +225,40 @@
|
|||||||
"when": "viewItem == azure.resource.itemType.account",
|
"when": "viewItem == azure.resource.itemType.account",
|
||||||
"group": "inline"
|
"group": "inline"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"command": "azure.resource.selectsubscriptions",
|
||||||
|
"when": "viewItem == azure.resource.itemType.account",
|
||||||
|
"group": "azurecore"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"command": "azure.resource.refresh",
|
"command": "azure.resource.refresh",
|
||||||
"when": "viewItem =~ /^azure\\.resource\\.itemType\\.(?:account|subscription|databaseContainer|databaseServerContainer)$/",
|
"when": "viewItem =~ /^azure\\.resource\\.itemType\\.(?:account|subscription|databaseContainer|databaseServerContainer)$/",
|
||||||
"group": "inline"
|
"group": "inline"
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
"command": "azure.resource.refresh",
|
||||||
|
"when": "viewItem =~ /^azure\\.resource\\.itemType\\.(?:account|subscription|databaseContainer|databaseServerContainer)$/",
|
||||||
|
"group": "azurecore"
|
||||||
|
},
|
||||||
{
|
{
|
||||||
"command": "azure.resource.connectsqlserver",
|
"command": "azure.resource.connectsqlserver",
|
||||||
"when": "viewItem == azure.resource.itemType.databaseServer || viewItem == azure.resource.itemType.database || viewItem == azure.resource.itemType.sqlInstance",
|
"when": "viewItem == azure.resource.itemType.databaseServer || viewItem == azure.resource.itemType.database || viewItem == azure.resource.itemType.sqlInstance",
|
||||||
"group": "inline"
|
"group": "inline"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"command": "azure.resource.connectsqlserver",
|
||||||
|
"when": "viewItem == azure.resource.itemType.databaseServer || viewItem == azure.resource.itemType.database || viewItem == azure.resource.itemType.sqlInstance",
|
||||||
|
"group": "azurecore"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"command": "azure.resource.startterminal",
|
||||||
|
"when": "viewItem == azure.resource.itemType.account",
|
||||||
|
"group": "inline"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"command": "azure.resource.startterminal",
|
||||||
|
"when": "viewItem == azure.resource.itemType.account",
|
||||||
|
"group": "azurecore"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
@@ -238,7 +271,8 @@
|
|||||||
"axios": "^0.19.2",
|
"axios": "^0.19.2",
|
||||||
"qs": "^6.9.1",
|
"qs": "^6.9.1",
|
||||||
"request": "2.88.0",
|
"request": "2.88.0",
|
||||||
"vscode-nls": "^4.0.0"
|
"vscode-nls": "^4.0.0",
|
||||||
|
"ws": "^7.2.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"@types/keytar": "^4.4.2",
|
"@types/keytar": "^4.4.2",
|
||||||
@@ -246,6 +280,7 @@
|
|||||||
"@types/node": "^12.11.7",
|
"@types/node": "^12.11.7",
|
||||||
"@types/qs": "^6.9.1",
|
"@types/qs": "^6.9.1",
|
||||||
"@types/request": "^2.48.1",
|
"@types/request": "^2.48.1",
|
||||||
|
"@types/ws": "^6.0.4",
|
||||||
"mocha": "^5.2.0",
|
"mocha": "^5.2.0",
|
||||||
"mocha-junit-reporter": "^1.17.0",
|
"mocha-junit-reporter": "^1.17.0",
|
||||||
"mocha-multi-reporters": "^1.1.7",
|
"mocha-multi-reporters": "^1.1.7",
|
||||||
|
|||||||
@@ -10,6 +10,7 @@
|
|||||||
"azure.resource.refresh.title": "Refresh",
|
"azure.resource.refresh.title": "Refresh",
|
||||||
"azure.resource.signin.title": "Azure: Sign In",
|
"azure.resource.signin.title": "Azure: Sign In",
|
||||||
"azure.resource.selectsubscriptions.title": "Select Subscriptions",
|
"azure.resource.selectsubscriptions.title": "Select Subscriptions",
|
||||||
|
"azure.resource.startterminal.title": "Start Cloud Shell",
|
||||||
"azure.resource.connectsqlserver.title": "Connect",
|
"azure.resource.connectsqlserver.title": "Connect",
|
||||||
"azure.resource.connectsqldb.title": "Add to Servers",
|
"azure.resource.connectsqldb.title": "Add to Servers",
|
||||||
|
|
||||||
|
|||||||
3
extensions/azurecore/resources/dark/console.svg
Normal file
3
extensions/azurecore/resources/dark/console.svg
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M1 1H15V15H1V1ZM2 14H14V2H2V14ZM4.00008 5.70709L4.70718 4.99999L8.24272 8.53552L7.53561 9.24263L7.53558 9.2426L4.70711 12.0711L4 11.364L6.82848 8.53549L4.00008 5.70709Z" fill="#C5C5C5"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 339 B |
3
extensions/azurecore/resources/light/console.svg
Normal file
3
extensions/azurecore/resources/light/console.svg
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
<svg width="16" height="16" viewBox="0 0 16 16" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||||
|
<path fill-rule="evenodd" clip-rule="evenodd" d="M1 1H15V15H1V1ZM2 14H14V2H2V14ZM4.00008 5.70709L4.70718 4.99999L8.24272 8.53552L7.53561 9.24263L7.53558 9.2426L4.70711 12.0711L4 11.364L6.82848 8.53549L4.00008 5.70709Z" fill="#424242"/>
|
||||||
|
</svg>
|
||||||
|
After Width: | Height: | Size: 339 B |
@@ -124,6 +124,7 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
this.metadata.settings.sqlResource,
|
this.metadata.settings.sqlResource,
|
||||||
this.metadata.settings.graphResource,
|
this.metadata.settings.graphResource,
|
||||||
this.metadata.settings.ossRdbmsResource,
|
this.metadata.settings.ossRdbmsResource,
|
||||||
|
this.metadata.settings.microsoftResource,
|
||||||
this.metadata.settings.azureKeyVaultResource
|
this.metadata.settings.azureKeyVaultResource
|
||||||
];
|
];
|
||||||
|
|
||||||
@@ -153,6 +154,7 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
try {
|
try {
|
||||||
await this.refreshAccessToken(account.key, refreshToken);
|
await this.refreshAccessToken(account.key, refreshToken);
|
||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
|
account.isStale = true;
|
||||||
if (ex.message) {
|
if (ex.message) {
|
||||||
await vscode.window.showErrorMessage(ex.message);
|
await vscode.window.showErrorMessage(ex.message);
|
||||||
}
|
}
|
||||||
@@ -163,6 +165,10 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
|
|
||||||
|
|
||||||
public async getSecurityToken(account: azdata.Account, azureResource: azdata.AzureResource): Promise<TokenResponse | undefined> {
|
public async getSecurityToken(account: azdata.Account, azureResource: azdata.AzureResource): Promise<TokenResponse | undefined> {
|
||||||
|
if (account.isStale === true) {
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
|
||||||
const resource = this.resources.find(s => s.azureResourceId === azureResource);
|
const resource = this.resources.find(s => s.azureResourceId === azureResource);
|
||||||
if (!resource) {
|
if (!resource) {
|
||||||
return undefined;
|
return undefined;
|
||||||
@@ -199,8 +205,13 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
if (!baseToken) {
|
if (!baseToken) {
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
|
try {
|
||||||
|
await this.refreshAccessToken(account.key, baseToken.refreshToken, tenant, resource);
|
||||||
|
} catch (ex) {
|
||||||
|
account.isStale = true;
|
||||||
|
return undefined;
|
||||||
|
}
|
||||||
|
|
||||||
await this.refreshAccessToken(account.key, baseToken.refreshToken, tenant, resource);
|
|
||||||
cachedTokens = await this.getCachedToken(account.key, resource.id, tenant.id);
|
cachedTokens = await this.getCachedToken(account.key, resource.id, tenant.id);
|
||||||
if (!cachedTokens) {
|
if (!cachedTokens) {
|
||||||
return undefined;
|
return undefined;
|
||||||
@@ -349,8 +360,7 @@ export abstract class AzureAuth implements vscode.Disposable {
|
|||||||
return { accessToken, refreshToken, tokenClaims };
|
return { accessToken, refreshToken, tokenClaims };
|
||||||
|
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
console.dir(err);
|
const msg = localize('azure.noToken', "Retrieving the Azure token failed. Please sign in again.");
|
||||||
const msg = localize('azure.noToken', "Retrieving the token failed.");
|
|
||||||
vscode.window.showErrorMessage(msg);
|
vscode.window.showErrorMessage(msg);
|
||||||
throw new Error(err);
|
throw new Error(err);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -69,7 +69,7 @@ export class AzureAuthCodeGrant extends AzureAuth {
|
|||||||
serverPort = await this.server.startup();
|
serverPort = await this.server.startup();
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
const msg = localize('azure.serverCouldNotStart', 'Server could not start. This could be a permissions error or an incompatibility on your system. You can try enabling device code authentication from settings.');
|
const msg = localize('azure.serverCouldNotStart', 'Server could not start. This could be a permissions error or an incompatibility on your system. You can try enabling device code authentication from settings.');
|
||||||
await vscode.window.showErrorMessage(msg);
|
vscode.window.showErrorMessage(msg);
|
||||||
console.dir(err);
|
console.dir(err);
|
||||||
return undefined;
|
return undefined;
|
||||||
}
|
}
|
||||||
@@ -181,7 +181,7 @@ export class AzureAuthCodeGrant extends AzureAuth {
|
|||||||
refreshToken = rt;
|
refreshToken = rt;
|
||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
if (ex.msg) {
|
if (ex.msg) {
|
||||||
await vscode.window.showErrorMessage(ex.msg);
|
vscode.window.showErrorMessage(ex.msg);
|
||||||
}
|
}
|
||||||
console.log(ex);
|
console.log(ex);
|
||||||
}
|
}
|
||||||
@@ -199,7 +199,7 @@ export class AzureAuthCodeGrant extends AzureAuth {
|
|||||||
} catch (ex) {
|
} catch (ex) {
|
||||||
console.log(ex);
|
console.log(ex);
|
||||||
if (ex.msg) {
|
if (ex.msg) {
|
||||||
await vscode.window.showErrorMessage(ex.msg);
|
vscode.window.showErrorMessage(ex.msg);
|
||||||
authCompleteDeferred.reject(ex);
|
authCompleteDeferred.reject(ex);
|
||||||
} else {
|
} else {
|
||||||
authCompleteDeferred.reject(new Error('There was an issue when storing the cache.'));
|
authCompleteDeferred.reject(new Error('There was an issue when storing the cache.'));
|
||||||
|
|||||||
@@ -128,7 +128,7 @@ export class AzureAccountProvider implements azdata.AccountProvider, vscode.Disp
|
|||||||
|
|
||||||
if (this.authMappings.size === 0) {
|
if (this.authMappings.size === 0) {
|
||||||
console.log('No auth method was enabled.');
|
console.log('No auth method was enabled.');
|
||||||
await vscode.window.showErrorMessage(noAuthAvailable);
|
vscode.window.showErrorMessage(noAuthAvailable);
|
||||||
return { canceled: true };
|
return { canceled: true };
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -145,7 +145,7 @@ export class AzureAccountProvider implements azdata.AccountProvider, vscode.Disp
|
|||||||
|
|
||||||
if (!pick) {
|
if (!pick) {
|
||||||
console.log('No auth method was selected.');
|
console.log('No auth method was selected.');
|
||||||
await vscode.window.showErrorMessage(noAuthSelected);
|
vscode.window.showErrorMessage(noAuthSelected);
|
||||||
return { canceled: true };
|
return { canceled: true };
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -69,6 +69,11 @@ interface Settings {
|
|||||||
*/
|
*/
|
||||||
signInResourceId?: string;
|
signInResourceId?: string;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Information that describes the Microsoft resource management resource
|
||||||
|
*/
|
||||||
|
microsoftResource?: Resource
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Information that describes the AAD graph resource
|
* Information that describes the AAD graph resource
|
||||||
*/
|
*/
|
||||||
|
|||||||
@@ -18,6 +18,11 @@ const publicAzureSettings: ProviderSettings = {
|
|||||||
host: 'https://login.microsoftonline.com/',
|
host: 'https://login.microsoftonline.com/',
|
||||||
clientId: 'a69788c6-1d43-44ed-9ca3-b83e194da255',
|
clientId: 'a69788c6-1d43-44ed-9ca3-b83e194da255',
|
||||||
signInResourceId: 'https://management.core.windows.net/',
|
signInResourceId: 'https://management.core.windows.net/',
|
||||||
|
microsoftResource: {
|
||||||
|
id: 'marm',
|
||||||
|
endpoint: 'https://management.core.windows.net/',
|
||||||
|
azureResourceId: AzureResource.MicrosoftResourceManagement
|
||||||
|
},
|
||||||
graphResource: {
|
graphResource: {
|
||||||
id: 'graph',
|
id: 'graph',
|
||||||
endpoint: 'https://graph.microsoft.com',
|
endpoint: 'https://graph.microsoft.com',
|
||||||
@@ -62,6 +67,11 @@ const usGovAzureSettings: ProviderSettings = {
|
|||||||
host: 'https://login.microsoftonline.us/',
|
host: 'https://login.microsoftonline.us/',
|
||||||
clientId: 'a69788c6-1d43-44ed-9ca3-b83e194da255',
|
clientId: 'a69788c6-1d43-44ed-9ca3-b83e194da255',
|
||||||
signInResourceId: 'https://management.core.usgovcloudapi.net/',
|
signInResourceId: 'https://management.core.usgovcloudapi.net/',
|
||||||
|
microsoftResource: {
|
||||||
|
id: 'marm',
|
||||||
|
endpoint: 'https://management.core.usgovcloudapi.net/',
|
||||||
|
azureResourceId: AzureResource.MicrosoftResourceManagement
|
||||||
|
},
|
||||||
graphResource: {
|
graphResource: {
|
||||||
id: 'graph',
|
id: 'graph',
|
||||||
endpoint: 'https://graph.windows.net',
|
endpoint: 'https://graph.windows.net',
|
||||||
|
|||||||
@@ -16,13 +16,58 @@ import { TreeNode } from './treeNode';
|
|||||||
import { AzureResourceCredentialError } from './errors';
|
import { AzureResourceCredentialError } from './errors';
|
||||||
import { AzureResourceTreeProvider } from './tree/treeProvider';
|
import { AzureResourceTreeProvider } from './tree/treeProvider';
|
||||||
import { AzureResourceAccountTreeNode } from './tree/accountTreeNode';
|
import { AzureResourceAccountTreeNode } from './tree/accountTreeNode';
|
||||||
import { IAzureResourceSubscriptionService, IAzureResourceSubscriptionFilterService } from '../azureResource/interfaces';
|
import { IAzureResourceSubscriptionService, IAzureResourceSubscriptionFilterService, IAzureTerminalService } from '../azureResource/interfaces';
|
||||||
import { AzureResourceServiceNames } from './constants';
|
import { AzureResourceServiceNames } from './constants';
|
||||||
import { AzureResourceGroupService } from './providers/resourceGroup/resourceGroupService';
|
import { AzureResourceGroupService } from './providers/resourceGroup/resourceGroupService';
|
||||||
import { GetSubscriptionsResult, GetResourceGroupsResult } from '../azurecore';
|
import { GetSubscriptionsResult, GetResourceGroupsResult } from '../azurecore';
|
||||||
import { isArray } from 'util';
|
import { isArray } from 'util';
|
||||||
|
import { AzureAccount, Tenant } from '../account-provider/interfaces';
|
||||||
|
|
||||||
export function registerAzureResourceCommands(appContext: AppContext, tree: AzureResourceTreeProvider): void {
|
export function registerAzureResourceCommands(appContext: AppContext, tree: AzureResourceTreeProvider): void {
|
||||||
|
appContext.apiWrapper.registerCommand('azure.resource.startterminal', async (node?: TreeNode) => {
|
||||||
|
try {
|
||||||
|
if (!node || !(node instanceof AzureResourceAccountTreeNode)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const accountNode = node as AzureResourceAccountTreeNode;
|
||||||
|
const azureAccount = accountNode.account as AzureAccount;
|
||||||
|
|
||||||
|
const tokens = await appContext.apiWrapper.getSecurityToken(azureAccount, azdata.AzureResource.MicrosoftResourceManagement);
|
||||||
|
|
||||||
|
const terminalService = appContext.getService<IAzureTerminalService>(AzureResourceServiceNames.terminalService);
|
||||||
|
|
||||||
|
const listOfTenants = azureAccount.properties.tenants.map(t => t.displayName);
|
||||||
|
|
||||||
|
if (listOfTenants.length === 0) {
|
||||||
|
window.showErrorMessage(localize('azure.noTenants', "A tenant is required for this feature. Your Azure subscription seems to have no tenants."));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
let tenant: Tenant;
|
||||||
|
window.setStatusBarMessage(localize('azure.startingCloudShell', "Starting cloud shell…"), 5000);
|
||||||
|
|
||||||
|
if (listOfTenants.length === 1) {
|
||||||
|
// Don't show quickpick for a single option
|
||||||
|
tenant = azureAccount.properties.tenants[0];
|
||||||
|
} else {
|
||||||
|
const pickedTenant = await window.showQuickPick(listOfTenants, { canPickMany: false });
|
||||||
|
|
||||||
|
if (!pickedTenant) {
|
||||||
|
window.showErrorMessage(localize('azure.mustPickTenant', "You must select a tenant for this feature to work."));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// The tenant the user picked
|
||||||
|
tenant = azureAccount.properties.tenants[listOfTenants.indexOf(pickedTenant)];
|
||||||
|
}
|
||||||
|
|
||||||
|
await terminalService.getOrCreateCloudConsole(azureAccount, tenant, tokens);
|
||||||
|
} catch (ex) {
|
||||||
|
console.error(ex);
|
||||||
|
window.showErrorMessage(ex);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
// Resource Management commands
|
// Resource Management commands
|
||||||
appContext.apiWrapper.registerCommand('azure.accounts.getSubscriptions', async (account?: azdata.Account, ignoreErrors: boolean = false): Promise<GetSubscriptionsResult> => {
|
appContext.apiWrapper.registerCommand('azure.accounts.getSubscriptions', async (account?: azdata.Account, ignoreErrors: boolean = false): Promise<GetSubscriptionsResult> => {
|
||||||
@@ -98,6 +143,7 @@ export function registerAzureResourceCommands(appContext: AppContext, tree: Azur
|
|||||||
});
|
});
|
||||||
|
|
||||||
// Resource Tree commands
|
// Resource Tree commands
|
||||||
|
|
||||||
appContext.apiWrapper.registerCommand('azure.resource.selectsubscriptions', async (node?: TreeNode) => {
|
appContext.apiWrapper.registerCommand('azure.resource.selectsubscriptions', async (node?: TreeNode) => {
|
||||||
if (!(node instanceof AzureResourceAccountTreeNode)) {
|
if (!(node instanceof AzureResourceAccountTreeNode)) {
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -20,5 +20,6 @@ export enum AzureResourceServiceNames {
|
|||||||
accountService = 'AzureResourceAccountService',
|
accountService = 'AzureResourceAccountService',
|
||||||
subscriptionService = 'AzureResourceSubscriptionService',
|
subscriptionService = 'AzureResourceSubscriptionService',
|
||||||
subscriptionFilterService = 'AzureResourceSubscriptionFilterService',
|
subscriptionFilterService = 'AzureResourceSubscriptionFilterService',
|
||||||
tenantService = 'AzureResourceTenantService'
|
tenantService = 'AzureResourceTenantService',
|
||||||
|
terminalService = 'AzureTerminalService',
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import { Account, DidChangeAccountsParams } from 'azdata';
|
|||||||
import { Event } from 'vscode';
|
import { Event } from 'vscode';
|
||||||
|
|
||||||
import { azureResource } from './azure-resource';
|
import { azureResource } from './azure-resource';
|
||||||
|
import { AzureAccount, AzureAccountSecurityToken, Tenant } from '../account-provider/interfaces';
|
||||||
|
|
||||||
export interface IAzureResourceAccountService {
|
export interface IAzureResourceAccountService {
|
||||||
getAccounts(): Promise<Account[]>;
|
getAccounts(): Promise<Account[]>;
|
||||||
@@ -24,6 +25,10 @@ export interface IAzureResourceSubscriptionFilterService {
|
|||||||
saveSelectedSubscriptions(account: Account, selectedSubscriptions: azureResource.AzureResourceSubscription[]): Promise<void>;
|
saveSelectedSubscriptions(account: Account, selectedSubscriptions: azureResource.AzureResourceSubscription[]): Promise<void>;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export interface IAzureTerminalService {
|
||||||
|
getOrCreateCloudConsole(account: AzureAccount, tenant: Tenant, tokens: { [key: string]: AzureAccountSecurityToken }): Promise<void>;
|
||||||
|
}
|
||||||
|
|
||||||
export interface IAzureResourceCacheService {
|
export interface IAzureResourceCacheService {
|
||||||
generateKey(id: string): string;
|
generateKey(id: string): string;
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,196 @@
|
|||||||
|
/*---------------------------------------------------------------------------------------------
|
||||||
|
* Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
* Licensed under the Source EULA. See License.txt in the project root for license information.
|
||||||
|
*--------------------------------------------------------------------------------------------*/
|
||||||
|
|
||||||
|
import * as vscode from 'vscode';
|
||||||
|
import * as nls from 'vscode-nls';
|
||||||
|
import axios, { AxiosRequestConfig } from 'axios';
|
||||||
|
import * as WS from 'ws';
|
||||||
|
|
||||||
|
import { IAzureTerminalService } from '../interfaces';
|
||||||
|
import { AzureAccount, AzureAccountSecurityToken, Tenant } from '../../account-provider/interfaces';
|
||||||
|
|
||||||
|
const localize = nls.loadMessageBundle();
|
||||||
|
export class AzureTerminalService implements IAzureTerminalService {
|
||||||
|
private readonly apiVersion = '?api-version=2018-10-01';
|
||||||
|
|
||||||
|
public constructor(context: vscode.ExtensionContext) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public async getOrCreateCloudConsole(account: AzureAccount, tenant: Tenant, tokens: { [key: string]: AzureAccountSecurityToken }): Promise<void> {
|
||||||
|
const token = tokens[tenant.id].token;
|
||||||
|
const settings: AxiosRequestConfig = {
|
||||||
|
headers: {
|
||||||
|
'Accept': 'application/json',
|
||||||
|
'Content-Type': 'application/json',
|
||||||
|
'Authorization': `Bearer ${token}`
|
||||||
|
},
|
||||||
|
validateStatus: () => true
|
||||||
|
};
|
||||||
|
|
||||||
|
const metadata = account.properties.providerSettings;
|
||||||
|
|
||||||
|
const userSettingsUri = this.getConsoleUserSettingsUri(metadata.settings.armResource.endpoint);
|
||||||
|
const userSettingsResult = await axios.get(userSettingsUri, settings);
|
||||||
|
|
||||||
|
const preferredShell = userSettingsResult.data?.properties?.preferredShellType ?? 'bash';
|
||||||
|
const preferredLocation = userSettingsResult.data?.properties?.preferredLocation;
|
||||||
|
|
||||||
|
const consoleRequestUri = this.getConsoleRequestUri(metadata.settings.armResource.endpoint);
|
||||||
|
if (preferredLocation) {
|
||||||
|
settings.headers['x-ms-console-preferred-location'] = preferredLocation;
|
||||||
|
}
|
||||||
|
|
||||||
|
const provisionResult = await axios.put(consoleRequestUri, {}, settings);
|
||||||
|
|
||||||
|
if (provisionResult.data?.properties?.provisioningState !== 'Succeeded') {
|
||||||
|
throw new Error(provisionResult.data);
|
||||||
|
}
|
||||||
|
const consoleUri = provisionResult.data.properties.uri;
|
||||||
|
|
||||||
|
return this.createTerminal(consoleUri, token, account.displayInfo.displayName, preferredShell);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private async createTerminal(provisionedUri: string, token: string, accountDisplayName: string, preferredShell: string): Promise<void> {
|
||||||
|
class ShellType implements vscode.QuickPickItem {
|
||||||
|
constructor(public readonly label: string, public readonly value: string) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
const shells = [new ShellType('PowerShell', 'pwsh'), new ShellType('Bash', 'bash'),];
|
||||||
|
const idx = shells.findIndex(s => s.value === preferredShell);
|
||||||
|
|
||||||
|
const prefShell = shells.splice(idx, 1);
|
||||||
|
shells.unshift(prefShell[0]);
|
||||||
|
|
||||||
|
let shell = await vscode.window.showQuickPick(shells, {
|
||||||
|
canPickMany: false,
|
||||||
|
placeHolder: localize('azure.selectShellType', "Select Bash or PowerShell for Azure Cloud Shell")
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!shell) {
|
||||||
|
vscode.window.showErrorMessage(localize('azure.shellTypeRequired', "You must pick a shell type"));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
const terminalName = localize('azure.cloudShell', "Azure Cloud Shell (Preview)") + ` ${shell} (${accountDisplayName})`;
|
||||||
|
|
||||||
|
const azureTerminal = new AzureTerminal(provisionedUri, token, shell.value);
|
||||||
|
const terminal = vscode.window.createTerminal({
|
||||||
|
name: terminalName,
|
||||||
|
pty: azureTerminal
|
||||||
|
});
|
||||||
|
|
||||||
|
terminal.show();
|
||||||
|
}
|
||||||
|
|
||||||
|
public getConsoleRequestUri(armEndpoint: string): string {
|
||||||
|
return `${armEndpoint}/providers/Microsoft.Portal/consoles/default${this.apiVersion}`;
|
||||||
|
}
|
||||||
|
|
||||||
|
public getConsoleUserSettingsUri(armEndpoint: string): string {
|
||||||
|
return `${armEndpoint}/providers/Microsoft.Portal/userSettings/cloudconsole${this.apiVersion}`;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
class AzureTerminal implements vscode.Pseudoterminal {
|
||||||
|
private readonly writeEmitter: vscode.EventEmitter<string>;
|
||||||
|
public readonly onDidWrite: vscode.Event<string>;
|
||||||
|
|
||||||
|
private socket: WS;
|
||||||
|
private intervalTimer: NodeJS.Timer;
|
||||||
|
private terminalDimensions: vscode.TerminalDimensions;
|
||||||
|
|
||||||
|
constructor(private readonly consoleUri: string, private readonly token: string, private shell: string) {
|
||||||
|
this.writeEmitter = new vscode.EventEmitter<string>();
|
||||||
|
this.onDidWrite = this.writeEmitter.event;
|
||||||
|
}
|
||||||
|
|
||||||
|
handleInput(data: string): void {
|
||||||
|
this.socket?.send(data);
|
||||||
|
}
|
||||||
|
|
||||||
|
async open(initialDimensions: vscode.TerminalDimensions): Promise<void> {
|
||||||
|
return this.resetTerminalSize(initialDimensions);
|
||||||
|
}
|
||||||
|
|
||||||
|
close(): void {
|
||||||
|
if (!this.socket) { return; }
|
||||||
|
|
||||||
|
this.socket.removeAllListeners('open');
|
||||||
|
this.socket.removeAllListeners('message');
|
||||||
|
this.socket.removeAllListeners('close');
|
||||||
|
|
||||||
|
this.socket.terminate();
|
||||||
|
if (this.intervalTimer) {
|
||||||
|
clearInterval(this.intervalTimer);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
async setDimensions(dimensions: vscode.TerminalDimensions): Promise<void> {
|
||||||
|
return this.resetTerminalSize(dimensions);
|
||||||
|
}
|
||||||
|
|
||||||
|
private async resetTerminalSize(dimensions: vscode.TerminalDimensions): Promise<void> {
|
||||||
|
try {
|
||||||
|
|
||||||
|
if (!this.terminalDimensions) { // first time
|
||||||
|
this.writeEmitter.fire(localize('azure.connectingShellTerminal', "Connecting terminal...\n"));
|
||||||
|
}
|
||||||
|
|
||||||
|
if (dimensions) {
|
||||||
|
this.terminalDimensions = dimensions;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Close the shell before this and restablish a new connection
|
||||||
|
this.close();
|
||||||
|
|
||||||
|
const terminalUri = await this.establishTerminal(this.terminalDimensions);
|
||||||
|
this.socket = new WS(terminalUri);
|
||||||
|
|
||||||
|
this.socket.on('message', (data: WS.Data) => {
|
||||||
|
// Write to the console
|
||||||
|
this.writeEmitter.fire(data.toString());
|
||||||
|
});
|
||||||
|
|
||||||
|
this.socket.on('close', () => {
|
||||||
|
this.writeEmitter.fire(localize('azure.shellClosed', "Shell closed.\n"));
|
||||||
|
this.close();
|
||||||
|
});
|
||||||
|
|
||||||
|
// Keep alives
|
||||||
|
this.intervalTimer = setInterval(() => {
|
||||||
|
this.socket.ping();
|
||||||
|
}, 5000);
|
||||||
|
} catch (ex) {
|
||||||
|
console.log(ex);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private async establishTerminal(dimensions: vscode.TerminalDimensions): Promise<string> {
|
||||||
|
const terminalResult = await axios.post(`${this.consoleUri}/terminals?rows=${dimensions.rows}&cols=${dimensions.columns}&shell=${this.shell}`, undefined, {
|
||||||
|
headers: {
|
||||||
|
'Accept': 'application/json',
|
||||||
|
'Content-Type': 'application/json',
|
||||||
|
'Authorization': `Bearer ${this.token}`
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
const terminalUri = terminalResult.data?.socketUri;
|
||||||
|
|
||||||
|
if (terminalResult.data.error) {
|
||||||
|
vscode.window.showErrorMessage(terminalResult.data.error.message);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (!terminalUri) {
|
||||||
|
console.log(terminalResult);
|
||||||
|
throw new Error(terminalResult.data);
|
||||||
|
}
|
||||||
|
|
||||||
|
return terminalUri;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -17,7 +17,7 @@ import { AzureResourceDatabaseServerService } from './azureResource/providers/da
|
|||||||
import { AzureResourceDatabaseProvider } from './azureResource/providers/database/databaseProvider';
|
import { AzureResourceDatabaseProvider } from './azureResource/providers/database/databaseProvider';
|
||||||
import { AzureResourceDatabaseService } from './azureResource/providers/database/databaseService';
|
import { AzureResourceDatabaseService } from './azureResource/providers/database/databaseService';
|
||||||
import { AzureResourceService } from './azureResource/resourceService';
|
import { AzureResourceService } from './azureResource/resourceService';
|
||||||
import { IAzureResourceCacheService, IAzureResourceAccountService, IAzureResourceSubscriptionService, IAzureResourceSubscriptionFilterService, IAzureResourceTenantService } from './azureResource/interfaces';
|
import { IAzureResourceCacheService, IAzureResourceAccountService, IAzureResourceSubscriptionService, IAzureResourceSubscriptionFilterService, IAzureResourceTenantService, IAzureTerminalService } from './azureResource/interfaces';
|
||||||
import { AzureResourceServiceNames } from './azureResource/constants';
|
import { AzureResourceServiceNames } from './azureResource/constants';
|
||||||
import { AzureResourceAccountService } from './azureResource/services/accountService';
|
import { AzureResourceAccountService } from './azureResource/services/accountService';
|
||||||
import { AzureResourceSubscriptionService } from './azureResource/services/subscriptionService';
|
import { AzureResourceSubscriptionService } from './azureResource/services/subscriptionService';
|
||||||
@@ -30,6 +30,7 @@ import { SqlInstanceResourceService } from './azureResource/providers/sqlinstanc
|
|||||||
import { SqlInstanceProvider } from './azureResource/providers/sqlinstance/sqlInstanceProvider';
|
import { SqlInstanceProvider } from './azureResource/providers/sqlinstance/sqlInstanceProvider';
|
||||||
import { PostgresServerProvider } from './azureResource/providers/postgresServer/postgresServerProvider';
|
import { PostgresServerProvider } from './azureResource/providers/postgresServer/postgresServerProvider';
|
||||||
import { PostgresServerService } from './azureResource/providers/postgresServer/postgresServerService';
|
import { PostgresServerService } from './azureResource/providers/postgresServer/postgresServerService';
|
||||||
|
import { AzureTerminalService } from './azureResource/services/terminalService';
|
||||||
import { SqlInstanceArcProvider } from './azureResource/providers/sqlinstanceArc/sqlInstanceArcProvider';
|
import { SqlInstanceArcProvider } from './azureResource/providers/sqlinstanceArc/sqlInstanceArcProvider';
|
||||||
import { SqlInstanceArcResourceService } from './azureResource/providers/sqlinstanceArc/sqlInstanceArcService';
|
import { SqlInstanceArcResourceService } from './azureResource/providers/sqlinstanceArc/sqlInstanceArcService';
|
||||||
import { PostgresServerArcProvider } from './azureResource/providers/postgresArcServer/postgresServerProvider';
|
import { PostgresServerArcProvider } from './azureResource/providers/postgresArcServer/postgresServerProvider';
|
||||||
@@ -145,6 +146,7 @@ function registerAzureServices(appContext: AppContext): void {
|
|||||||
appContext.registerService<IAzureResourceSubscriptionService>(AzureResourceServiceNames.subscriptionService, new AzureResourceSubscriptionService());
|
appContext.registerService<IAzureResourceSubscriptionService>(AzureResourceServiceNames.subscriptionService, new AzureResourceSubscriptionService());
|
||||||
appContext.registerService<IAzureResourceSubscriptionFilterService>(AzureResourceServiceNames.subscriptionFilterService, new AzureResourceSubscriptionFilterService(new AzureResourceCacheService(extensionContext)));
|
appContext.registerService<IAzureResourceSubscriptionFilterService>(AzureResourceServiceNames.subscriptionFilterService, new AzureResourceSubscriptionFilterService(new AzureResourceCacheService(extensionContext)));
|
||||||
appContext.registerService<IAzureResourceTenantService>(AzureResourceServiceNames.tenantService, new AzureResourceTenantService());
|
appContext.registerService<IAzureResourceTenantService>(AzureResourceServiceNames.tenantService, new AzureResourceTenantService());
|
||||||
|
appContext.registerService<IAzureTerminalService>(AzureResourceServiceNames.terminalService, new AzureTerminalService(extensionContext));
|
||||||
}
|
}
|
||||||
|
|
||||||
async function onDidChangeConfiguration(e: vscode.ConfigurationChangeEvent, apiWrapper: ApiWrapper): Promise<void> {
|
async function onDidChangeConfiguration(e: vscode.ConfigurationChangeEvent, apiWrapper: ApiWrapper): Promise<void> {
|
||||||
|
|||||||
@@ -28,7 +28,7 @@
|
|||||||
"@azure/ms-rest-js" "^1.8.10"
|
"@azure/ms-rest-js" "^1.8.10"
|
||||||
tslib "^1.9.3"
|
tslib "^1.9.3"
|
||||||
|
|
||||||
"@azure/ms-rest-js@^1.1.0":
|
"@azure/ms-rest-js@^1.1.0", "@azure/ms-rest-js@^1.8.1", "@azure/ms-rest-js@^1.8.10":
|
||||||
version "1.8.14"
|
version "1.8.14"
|
||||||
resolved "https://registry.yarnpkg.com/@azure/ms-rest-js/-/ms-rest-js-1.8.14.tgz#657fc145db20b6eb3d58d1a2055473aa72eb609d"
|
resolved "https://registry.yarnpkg.com/@azure/ms-rest-js/-/ms-rest-js-1.8.14.tgz#657fc145db20b6eb3d58d1a2055473aa72eb609d"
|
||||||
integrity sha512-IrCPN22c8RbKWA06ZXuFwwEb15cSnr0zZ6J8Fspp9ns1SSNTERf7hv+gWvTIis1FlwHy42Mfk8hVu0/r3a0AWA==
|
integrity sha512-IrCPN22c8RbKWA06ZXuFwwEb15cSnr0zZ6J8Fspp9ns1SSNTERf7hv+gWvTIis1FlwHy42Mfk8hVu0/r3a0AWA==
|
||||||
@@ -42,32 +42,11 @@
|
|||||||
uuid "^3.2.1"
|
uuid "^3.2.1"
|
||||||
xml2js "^0.4.19"
|
xml2js "^0.4.19"
|
||||||
|
|
||||||
"@azure/ms-rest-js@^1.8.1", "@azure/ms-rest-js@^1.8.10":
|
|
||||||
version "1.8.13"
|
|
||||||
resolved "https://registry.yarnpkg.com/@azure/ms-rest-js/-/ms-rest-js-1.8.13.tgz#ed0cd86469697378cd39d79d5589e877a3bc87a6"
|
|
||||||
integrity sha512-jAa6Y2XrvwbEqkaEXDHK+ReNo0WnCPS+LgQ1dRAJUUNxK4CghF5u+SXsVtPENritilVE7FVteqsLOtlhTk+haA==
|
|
||||||
dependencies:
|
|
||||||
"@types/tunnel" "0.0.0"
|
|
||||||
axios "^0.19.0"
|
|
||||||
form-data "^2.3.2"
|
|
||||||
tough-cookie "^2.4.3"
|
|
||||||
tslib "^1.9.2"
|
|
||||||
tunnel "0.0.6"
|
|
||||||
uuid "^3.2.1"
|
|
||||||
xml2js "^0.4.19"
|
|
||||||
|
|
||||||
"@types/caseless@*":
|
"@types/caseless@*":
|
||||||
version "0.12.2"
|
version "0.12.2"
|
||||||
resolved "https://registry.yarnpkg.com/@types/caseless/-/caseless-0.12.2.tgz#f65d3d6389e01eeb458bd54dc8f52b95a9463bc8"
|
resolved "https://registry.yarnpkg.com/@types/caseless/-/caseless-0.12.2.tgz#f65d3d6389e01eeb458bd54dc8f52b95a9463bc8"
|
||||||
integrity sha512-6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w==
|
integrity sha512-6ckxMjBBD8URvjB6J3NcnuAn5Pkl7t3TizAg+xdlzzQGSPSmBcXf8KoIH0ua/i+tio+ZRUHEXp0HEmvaR4kt0w==
|
||||||
|
|
||||||
"@types/form-data@*":
|
|
||||||
version "2.2.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/@types/form-data/-/form-data-2.2.1.tgz#ee2b3b8eaa11c0938289953606b745b738c54b1e"
|
|
||||||
integrity sha512-JAMFhOaHIciYVh8fb5/83nmuO/AHwmto+Hq7a9y8FzLDcC1KCU344XDOMEmahnrTFlHjgh4L0WJFczNIX2GxnQ==
|
|
||||||
dependencies:
|
|
||||||
"@types/node" "*"
|
|
||||||
|
|
||||||
"@types/keytar@^4.4.2":
|
"@types/keytar@^4.4.2":
|
||||||
version "4.4.2"
|
version "4.4.2"
|
||||||
resolved "https://registry.yarnpkg.com/@types/keytar/-/keytar-4.4.2.tgz#49ef917d6cbb4f19241c0ab50cd35097b5729b32"
|
resolved "https://registry.yarnpkg.com/@types/keytar/-/keytar-4.4.2.tgz#49ef917d6cbb4f19241c0ab50cd35097b5729b32"
|
||||||
@@ -76,24 +55,24 @@
|
|||||||
keytar "*"
|
keytar "*"
|
||||||
|
|
||||||
"@types/mocha@^5.2.5":
|
"@types/mocha@^5.2.5":
|
||||||
version "5.2.5"
|
version "5.2.7"
|
||||||
resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-5.2.5.tgz#8a4accfc403c124a0bafe8a9fc61a05ec1032073"
|
resolved "https://registry.yarnpkg.com/@types/mocha/-/mocha-5.2.7.tgz#315d570ccb56c53452ff8638738df60726d5b6ea"
|
||||||
integrity sha512-lAVp+Kj54ui/vLUFxsJTMtWvZraZxum3w3Nwkble2dNuV5VnPA+Mi2oGX9XYJAaIvZi3tn3cbjS/qcJXRb6Bww==
|
integrity sha512-NYrtPht0wGzhwe9+/idPaBB+TqkY9AhTvOLMkThm0IoEfLaiVQZwBwyJ5puCkO3AUCWrmcoePjp2mbFocKy4SQ==
|
||||||
|
|
||||||
"@types/node@*":
|
"@types/node@*":
|
||||||
version "10.14.4"
|
version "13.9.5"
|
||||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-10.14.4.tgz#1c586b991457cbb58fef51bc4e0cfcfa347714b5"
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-13.9.5.tgz#59738bf30b31aea1faa2df7f4a5f55613750cf00"
|
||||||
integrity sha512-DT25xX/YgyPKiHFOpNuANIQIVvYEwCWXgK2jYYwqgaMrYE6+tq+DtmMwlD3drl6DJbUwtlIDnn0d7tIn/EbXBg==
|
integrity sha512-hkzMMD3xu6BrJpGVLeQ3htQQNAcOrJjX7WFmtK8zWQpz2UJf13LCFF2ALA7c9OVdvc2vQJeDdjfR35M0sBCxvw==
|
||||||
|
|
||||||
"@types/node@^12.11.7":
|
"@types/node@^12.11.7":
|
||||||
version "12.12.7"
|
version "12.12.32"
|
||||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.7.tgz#01e4ea724d9e3bd50d90c11fd5980ba317d8fa11"
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-12.12.32.tgz#0ccc836d273e8a3cddf568daf22729cfa57c1925"
|
||||||
integrity sha512-E6Zn0rffhgd130zbCbAr/JdXfXkoOUFAKNs/rF8qnafSJ8KYaA/j3oz7dcwal+lYjLA7xvdd5J4wdYpCTlP8+w==
|
integrity sha512-44/reuCrwiQEsXud3I5X3sqI5jIXAmHB5xoiyKUw965olNHF3IWKjBLKK3F9LOSUZmK+oDt8jmyO637iX+hMgA==
|
||||||
|
|
||||||
"@types/node@^8.0.47":
|
"@types/node@^8.0.47":
|
||||||
version "8.10.45"
|
version "8.10.59"
|
||||||
resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.45.tgz#4c49ba34106bc7dced77ff6bae8eb6543cde8351"
|
resolved "https://registry.yarnpkg.com/@types/node/-/node-8.10.59.tgz#9e34261f30183f9777017a13d185dfac6b899e04"
|
||||||
integrity sha512-tGVTbA+i3qfXsLbq9rEq/hezaHY55QxQLeXQL2ejNgFAxxrgu8eMmYIOsRcl7hN1uTLVsKOOYacV/rcJM3sfgQ==
|
integrity sha512-8RkBivJrDCyPpBXhVZcjh7cQxVBSmRk9QM7hOketZzp6Tg79c0N8kkpAIito9bnJ3HCVCHVYz+KHTEbfQNfeVQ==
|
||||||
|
|
||||||
"@types/qs@^6.9.1":
|
"@types/qs@^6.9.1":
|
||||||
version "6.9.1"
|
version "6.9.1"
|
||||||
@@ -101,19 +80,19 @@
|
|||||||
integrity sha512-lhbQXx9HKZAPgBkISrBcmAcMpZsmpe/Cd/hY7LGZS5OfkySUBItnPZHgQPssWYUET8elF+yCFBbP1Q0RZPTdaw==
|
integrity sha512-lhbQXx9HKZAPgBkISrBcmAcMpZsmpe/Cd/hY7LGZS5OfkySUBItnPZHgQPssWYUET8elF+yCFBbP1Q0RZPTdaw==
|
||||||
|
|
||||||
"@types/request@^2.48.1":
|
"@types/request@^2.48.1":
|
||||||
version "2.48.1"
|
version "2.48.4"
|
||||||
resolved "https://registry.yarnpkg.com/@types/request/-/request-2.48.1.tgz#e402d691aa6670fbbff1957b15f1270230ab42fa"
|
resolved "https://registry.yarnpkg.com/@types/request/-/request-2.48.4.tgz#df3d43d7b9ed3550feaa1286c6eabf0738e6cf7e"
|
||||||
integrity sha512-ZgEZ1TiD+KGA9LiAAPPJL68Id2UWfeSO62ijSXZjFJArVV+2pKcsVHmrcu+1oiE3q6eDGiFiSolRc4JHoerBBg==
|
integrity sha512-W1t1MTKYR8PxICH+A4HgEIPuAC3sbljoEVfyZbeFJJDbr30guDspJri2XOaM2E+Un7ZjrihaDi7cf6fPa2tbgw==
|
||||||
dependencies:
|
dependencies:
|
||||||
"@types/caseless" "*"
|
"@types/caseless" "*"
|
||||||
"@types/form-data" "*"
|
|
||||||
"@types/node" "*"
|
"@types/node" "*"
|
||||||
"@types/tough-cookie" "*"
|
"@types/tough-cookie" "*"
|
||||||
|
form-data "^2.5.0"
|
||||||
|
|
||||||
"@types/tough-cookie@*":
|
"@types/tough-cookie@*":
|
||||||
version "2.3.5"
|
version "2.3.6"
|
||||||
resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-2.3.5.tgz#9da44ed75571999b65c37b60c9b2b88db54c585d"
|
resolved "https://registry.yarnpkg.com/@types/tough-cookie/-/tough-cookie-2.3.6.tgz#c880579e087d7a0db13777ff8af689f4ffc7b0d5"
|
||||||
integrity sha512-SCcK7mvGi3+ZNz833RRjFIxrn4gI1PPR3NtuIS+6vMkvmsGjosqTJwRt5bAEFLRz+wtJMWv8+uOnZf2hi2QXTg==
|
integrity sha512-wHNBMnkoEBiRAd3s8KTKwIuO9biFtTf0LehITzBhSco+HQI0xkXZbLOD55SW3Aqw3oUkHstkm5SPv58yaAdFPQ==
|
||||||
|
|
||||||
"@types/tunnel@0.0.0":
|
"@types/tunnel@0.0.0":
|
||||||
version "0.0.0"
|
version "0.0.0"
|
||||||
@@ -122,6 +101,13 @@
|
|||||||
dependencies:
|
dependencies:
|
||||||
"@types/node" "*"
|
"@types/node" "*"
|
||||||
|
|
||||||
|
"@types/ws@^6.0.4":
|
||||||
|
version "6.0.4"
|
||||||
|
resolved "https://registry.yarnpkg.com/@types/ws/-/ws-6.0.4.tgz#7797707c8acce8f76d8c34b370d4645b70421ff1"
|
||||||
|
integrity sha512-PpPrX7SZW9re6+Ha8ojZG4Se8AZXgf0GK6zmfqEuCsY49LFDNXO3SByp44X3dFEqtB73lkCDAdUazhAjVPiNwg==
|
||||||
|
dependencies:
|
||||||
|
"@types/node" "*"
|
||||||
|
|
||||||
abbrev@1:
|
abbrev@1:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
|
resolved "https://registry.yarnpkg.com/abbrev/-/abbrev-1.1.1.tgz#f8f2c887ad10bf67f634f005b6987fed3179aac8"
|
||||||
@@ -148,11 +134,11 @@ adal-node@^0.2.1:
|
|||||||
xpath.js "~1.1.0"
|
xpath.js "~1.1.0"
|
||||||
|
|
||||||
ajv@^6.5.5:
|
ajv@^6.5.5:
|
||||||
version "6.10.0"
|
version "6.12.0"
|
||||||
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.10.0.tgz#90d0d54439da587cd7e843bfb7045f50bd22bdf1"
|
resolved "https://registry.yarnpkg.com/ajv/-/ajv-6.12.0.tgz#06d60b96d87b8454a5adaba86e7854da629db4b7"
|
||||||
integrity sha512-nffhOpkymDECQyR0mnsUtoCE8RlX38G0rYP+wgLWFyZuUyuuojSSvi/+euOiQBIn63whYwYVIIH1TvE3tu4OEg==
|
integrity sha512-D6gFiFA0RRLyUbvijN74DWAjXSFxWKaWP7mldxkVhyhAV3+SWA9HEJPHQ2c9soIeTFJqcSdFDGFgdqs1iUU2Hw==
|
||||||
dependencies:
|
dependencies:
|
||||||
fast-deep-equal "^2.0.1"
|
fast-deep-equal "^3.1.1"
|
||||||
fast-json-stable-stringify "^2.0.0"
|
fast-json-stable-stringify "^2.0.0"
|
||||||
json-schema-traverse "^0.4.1"
|
json-schema-traverse "^0.4.1"
|
||||||
uri-js "^4.2.2"
|
uri-js "^4.2.2"
|
||||||
@@ -269,19 +255,11 @@ aws-sign2@~0.7.0:
|
|||||||
integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
|
integrity sha1-tG6JCTSpWR8tL2+G1+ap8bP+dqg=
|
||||||
|
|
||||||
aws4@^1.8.0:
|
aws4@^1.8.0:
|
||||||
version "1.8.0"
|
version "1.9.1"
|
||||||
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.8.0.tgz#f0e003d9ca9e7f59c7a508945d7b2ef9a04a542f"
|
resolved "https://registry.yarnpkg.com/aws4/-/aws4-1.9.1.tgz#7e33d8f7d449b3f673cd72deb9abdc552dbe528e"
|
||||||
integrity sha512-ReZxvNHIOv88FlT7rxcXIIC0fPt4KZqZbOlivyWtXLt8ESx84zd3kMC6iK5jVeS2qt+g7ftS7ye4fi06X5rtRQ==
|
integrity sha512-wMHVg2EOHaMRxbzgFJ9gtjOOCrI80OHLG14rxi28XwOW8ux6IiEbRCGGGqCtdAIg4FQCbW20k9RsT4y3gJlFug==
|
||||||
|
|
||||||
axios@^0.19.0:
|
axios@^0.19.0, axios@^0.19.2:
|
||||||
version "0.19.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.0.tgz#8e09bff3d9122e133f7b8101c8fbdd00ed3d2ab8"
|
|
||||||
integrity sha512-1uvKqKQta3KBxIz14F2v06AEHZ/dIoeKfbTRkK1E5oqjDnuEerLmYTgJB5AiQZHJcljpg1TuRzdjDR06qNk0DQ==
|
|
||||||
dependencies:
|
|
||||||
follow-redirects "1.5.10"
|
|
||||||
is-buffer "^2.0.2"
|
|
||||||
|
|
||||||
axios@^0.19.2:
|
|
||||||
version "0.19.2"
|
version "0.19.2"
|
||||||
resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.2.tgz#3ea36c5d8818d0d5f8a8a97a6d36b86cdc00cb27"
|
resolved "https://registry.yarnpkg.com/axios/-/axios-0.19.2.tgz#3ea36c5d8818d0d5f8a8a97a6d36b86cdc00cb27"
|
||||||
integrity sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==
|
integrity sha512-fjgm5MvRHLhx+osE2xoekY70AhARk3a6hkN+3Io1jc00jtquGvxYlKlsFUhmUET0V5te6CcZI7lcv2Ym61mjHA==
|
||||||
@@ -376,9 +354,9 @@ code-point-at@^1.0.0:
|
|||||||
integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
|
integrity sha1-DQcLTQQ6W+ozovGkDi7bPZpMz3c=
|
||||||
|
|
||||||
combined-stream@^1.0.6, combined-stream@~1.0.6:
|
combined-stream@^1.0.6, combined-stream@~1.0.6:
|
||||||
version "1.0.7"
|
version "1.0.8"
|
||||||
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.7.tgz#2d1d24317afb8abe95d6d2c0b07b57813539d828"
|
resolved "https://registry.yarnpkg.com/combined-stream/-/combined-stream-1.0.8.tgz#c3d45a8b34fd730631a110a8a2520682b31d5a7f"
|
||||||
integrity sha512-brWl9y6vOB1xYPZcpZde3N9zDByXTosAeMDo4p1wzo6UMOX4vumB+TP1RZ76sfE6Md68Q0NJSrE/gbezd4Ul+w==
|
integrity sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==
|
||||||
dependencies:
|
dependencies:
|
||||||
delayed-stream "~1.0.0"
|
delayed-stream "~1.0.0"
|
||||||
|
|
||||||
@@ -469,13 +447,6 @@ deep-is@~0.1.3:
|
|||||||
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
|
resolved "https://registry.yarnpkg.com/deep-is/-/deep-is-0.1.3.tgz#b369d6fb5dbc13eecf524f91b070feedc357cf34"
|
||||||
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
|
integrity sha1-s2nW+128E+7PUk+RsHD+7cNXzzQ=
|
||||||
|
|
||||||
define-properties@^1.1.2, define-properties@^1.1.3:
|
|
||||||
version "1.1.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/define-properties/-/define-properties-1.1.3.tgz#cf88da6cbee26fe6db7094f61d870cbd84cee9f1"
|
|
||||||
integrity sha512-3MqfYKj2lLzdMSf8ZIZE/V+Zuy+BgD6f164e8K2w7dgnpKArBDerGYpM46IYYcjnkdPNMjPk9A6VFB8+3SKlXQ==
|
|
||||||
dependencies:
|
|
||||||
object-keys "^1.0.12"
|
|
||||||
|
|
||||||
delayed-stream@~1.0.0:
|
delayed-stream@~1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
|
resolved "https://registry.yarnpkg.com/delayed-stream/-/delayed-stream-1.0.0.tgz#df3ae199acadfb7d440aaae0b29e2272b24ec619"
|
||||||
@@ -504,10 +475,10 @@ ecc-jsbn@~0.1.1:
|
|||||||
jsbn "~0.1.0"
|
jsbn "~0.1.0"
|
||||||
safer-buffer "^2.1.0"
|
safer-buffer "^2.1.0"
|
||||||
|
|
||||||
ecdsa-sig-formatter@1.0.10:
|
ecdsa-sig-formatter@1.0.11:
|
||||||
version "1.0.10"
|
version "1.0.11"
|
||||||
resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.10.tgz#1c595000f04a8897dfb85000892a0f4c33af86c3"
|
resolved "https://registry.yarnpkg.com/ecdsa-sig-formatter/-/ecdsa-sig-formatter-1.0.11.tgz#ae0f0fa2d85045ef14a817daa3ce9acd0489e5bf"
|
||||||
integrity sha1-HFlQAPBKiJffuFAAiSoPTDOvhsM=
|
integrity sha512-nagl3RYrbNv6kQkeJIpt6NJZy8twLB/2vtz6yN9Z4vRKHN4/QZJIEbqohALSgwKdnksuY3k5Addp5lg8sVoVcQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
safe-buffer "^5.0.1"
|
safe-buffer "^5.0.1"
|
||||||
|
|
||||||
@@ -518,31 +489,6 @@ end-of-stream@^1.1.0, end-of-stream@^1.4.1:
|
|||||||
dependencies:
|
dependencies:
|
||||||
once "^1.4.0"
|
once "^1.4.0"
|
||||||
|
|
||||||
es-abstract@^1.5.1:
|
|
||||||
version "1.16.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/es-abstract/-/es-abstract-1.16.0.tgz#d3a26dc9c3283ac9750dca569586e976d9dcc06d"
|
|
||||||
integrity sha512-xdQnfykZ9JMEiasTAJZJdMWCQ1Vm00NBw79/AWi7ELfZuuPCSOMDZbT9mkOfSctVtfhb+sAAzrm+j//GjjLHLg==
|
|
||||||
dependencies:
|
|
||||||
es-to-primitive "^1.2.0"
|
|
||||||
function-bind "^1.1.1"
|
|
||||||
has "^1.0.3"
|
|
||||||
has-symbols "^1.0.0"
|
|
||||||
is-callable "^1.1.4"
|
|
||||||
is-regex "^1.0.4"
|
|
||||||
object-inspect "^1.6.0"
|
|
||||||
object-keys "^1.1.1"
|
|
||||||
string.prototype.trimleft "^2.1.0"
|
|
||||||
string.prototype.trimright "^2.1.0"
|
|
||||||
|
|
||||||
es-to-primitive@^1.2.0:
|
|
||||||
version "1.2.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/es-to-primitive/-/es-to-primitive-1.2.0.tgz#edf72478033456e8dda8ef09e00ad9650707f377"
|
|
||||||
integrity sha512-qZryBOJjV//LaxLTV6UC//WewneB3LcXOL9NP++ozKVXsIIIpm/2c13UDiD9Jp2eThsecw9m3jPqDwTyobcdbg==
|
|
||||||
dependencies:
|
|
||||||
is-callable "^1.1.4"
|
|
||||||
is-date-object "^1.0.1"
|
|
||||||
is-symbol "^1.0.2"
|
|
||||||
|
|
||||||
escape-string-regexp@1.0.5:
|
escape-string-regexp@1.0.5:
|
||||||
version "1.0.5"
|
version "1.0.5"
|
||||||
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
|
||||||
@@ -602,15 +548,15 @@ extsprintf@^1.2.0:
|
|||||||
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
|
resolved "https://registry.yarnpkg.com/extsprintf/-/extsprintf-1.4.0.tgz#e2689f8f356fad62cca65a3a91c5df5f9551692f"
|
||||||
integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
|
integrity sha1-4mifjzVvrWLMplo6kcXfX5VRaS8=
|
||||||
|
|
||||||
fast-deep-equal@^2.0.1:
|
fast-deep-equal@^3.1.1:
|
||||||
version "2.0.1"
|
version "3.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-2.0.1.tgz#7b05218ddf9667bf7f370bf7fdb2cb15fdd0aa49"
|
resolved "https://registry.yarnpkg.com/fast-deep-equal/-/fast-deep-equal-3.1.1.tgz#545145077c501491e33b15ec408c294376e94ae4"
|
||||||
integrity sha1-ewUhjd+WZ79/Nwv3/bLLFf3Qqkk=
|
integrity sha512-8UEa58QDLauDNfpbrX55Q9jrGHThw2ZMdOky5Gl1CDtVeJDPVrG4Jxx1N8jw2gkWaff5UUuX1KJd+9zGe2B+ZA==
|
||||||
|
|
||||||
fast-json-stable-stringify@^2.0.0:
|
fast-json-stable-stringify@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.1.0"
|
||||||
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.0.0.tgz#d5142c0caee6b1189f87d3a76111064f86c8bbf2"
|
resolved "https://registry.yarnpkg.com/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz#874bf69c6f404c2b5d99c481341399fd55892633"
|
||||||
integrity sha1-1RQsDK7msRifh9OnYREGT4bIu/I=
|
integrity sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==
|
||||||
|
|
||||||
fast-levenshtein@~2.0.6:
|
fast-levenshtein@~2.0.6:
|
||||||
version "2.0.6"
|
version "2.0.6"
|
||||||
@@ -629,7 +575,7 @@ forever-agent@~0.6.1:
|
|||||||
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
|
resolved "https://registry.yarnpkg.com/forever-agent/-/forever-agent-0.6.1.tgz#fbc71f0c41adeb37f96c577ad1ed42d8fdacca91"
|
||||||
integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
|
integrity sha1-+8cfDEGt6zf5bFd60e1C2P2sypE=
|
||||||
|
|
||||||
form-data@^2.3.2:
|
form-data@^2.3.2, form-data@^2.5.0:
|
||||||
version "2.5.1"
|
version "2.5.1"
|
||||||
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4"
|
resolved "https://registry.yarnpkg.com/form-data/-/form-data-2.5.1.tgz#f2cbec57b5e59e23716e128fe44d4e5dd23895f4"
|
||||||
integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==
|
integrity sha512-m21N3WOmEEURgk6B9GLOE4RuWOFf28Lhh9qGYeNlGq4VDXUlJy2th2slBNU8Gp8EzloYZOibZJ7t5ecIrFSjVA==
|
||||||
@@ -657,11 +603,6 @@ fs.realpath@^1.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
|
resolved "https://registry.yarnpkg.com/fs.realpath/-/fs.realpath-1.0.0.tgz#1504ad2523158caa40db4a2787cb01411994ea4f"
|
||||||
integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
|
integrity sha1-FQStJSMVjKpA20onh8sBQRmU6k8=
|
||||||
|
|
||||||
function-bind@^1.1.1:
|
|
||||||
version "1.1.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/function-bind/-/function-bind-1.1.1.tgz#a56899d3ea3c9bab874bb9773b7c5ede92f4895d"
|
|
||||||
integrity sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A==
|
|
||||||
|
|
||||||
gauge@~2.7.3:
|
gauge@~2.7.3:
|
||||||
version "2.7.4"
|
version "2.7.4"
|
||||||
resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
|
resolved "https://registry.yarnpkg.com/gauge/-/gauge-2.7.4.tgz#2c03405c7538c39d7eb37b317022e325fb018bf7"
|
||||||
@@ -712,9 +653,9 @@ glob@^5.0.15:
|
|||||||
path-is-absolute "^1.0.0"
|
path-is-absolute "^1.0.0"
|
||||||
|
|
||||||
glob@^7.1.2:
|
glob@^7.1.2:
|
||||||
version "7.1.3"
|
version "7.1.6"
|
||||||
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.3.tgz#3960832d3f1574108342dafd3a67b332c0969df1"
|
resolved "https://registry.yarnpkg.com/glob/-/glob-7.1.6.tgz#141f33b81a7c2492e125594307480c46679278a6"
|
||||||
integrity sha512-vcfuiIxogLV4DlGBHIUOwI0IbrJ8HWPc4MU7HzviGeNho/UJDfi6B5p3sHeWIQ0KGIU0Jpxi5ZHxemQfLkkAwQ==
|
integrity sha512-LwaxwyZ72Lk7vZINtNNrywX0ZuLyStrdDtabefZKAY5ZGJhVtgdznluResxNmPitE0SAO+O26sWTHeKSI2wMBA==
|
||||||
dependencies:
|
dependencies:
|
||||||
fs.realpath "^1.0.0"
|
fs.realpath "^1.0.0"
|
||||||
inflight "^1.0.4"
|
inflight "^1.0.4"
|
||||||
@@ -729,9 +670,9 @@ growl@1.10.5:
|
|||||||
integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==
|
integrity sha512-qBr4OuELkhPenW6goKVXiv47US3clb3/IbuWF9KNKEijAy9oeHxU9IgzjvJhHkUzhaj7rOUD7+YGWqUjLp5oSA==
|
||||||
|
|
||||||
handlebars@^4.0.1:
|
handlebars@^4.0.1:
|
||||||
version "4.7.2"
|
version "4.7.3"
|
||||||
resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.2.tgz#01127b3840156a0927058779482031afe0e730d7"
|
resolved "https://registry.yarnpkg.com/handlebars/-/handlebars-4.7.3.tgz#8ece2797826886cf8082d1726ff21d2a022550ee"
|
||||||
integrity sha512-4PwqDL2laXtTWZghzzCtunQUTLbo31pcCJrd/B/9JP8XbhVzpS5ZXuKqlOzsd1rtcaLo4KqAn8nl8mkknS4MHw==
|
integrity sha512-SRGwSYuNfx8DwHD/6InAPzD6RgeruWLT+B8e8a7gGs8FWgHzlExpTFMEq2IA6QpAfOClpKHy6+8IqTjeBCu6Kg==
|
||||||
dependencies:
|
dependencies:
|
||||||
neo-async "^2.6.0"
|
neo-async "^2.6.0"
|
||||||
optimist "^0.6.1"
|
optimist "^0.6.1"
|
||||||
@@ -744,7 +685,7 @@ har-schema@^2.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
|
resolved "https://registry.yarnpkg.com/har-schema/-/har-schema-2.0.0.tgz#a94c2224ebcac04782a0d9035521f24735b7ec92"
|
||||||
integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
|
integrity sha1-qUwiJOvKwEeCoNkDVSHyRzW37JI=
|
||||||
|
|
||||||
har-validator@~5.1.0:
|
har-validator@~5.1.0, har-validator@~5.1.3:
|
||||||
version "5.1.3"
|
version "5.1.3"
|
||||||
resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
|
resolved "https://registry.yarnpkg.com/har-validator/-/har-validator-5.1.3.tgz#1ef89ebd3e4996557675eed9893110dc350fa080"
|
||||||
integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==
|
integrity sha512-sNvOCzEQNr/qrvJgc3UG/kD4QtlHycrzwS+6mfTrrSq97BvaYcPZZI1ZSqGSPR73Cxn4LKTD4PttRwfU7jWq5g==
|
||||||
@@ -762,23 +703,11 @@ has-flag@^3.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
|
resolved "https://registry.yarnpkg.com/has-flag/-/has-flag-3.0.0.tgz#b5d454dc2199ae225699f3467e5a07f3b955bafd"
|
||||||
integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
|
integrity sha1-tdRU3CGZriJWmfNGfloH87lVuv0=
|
||||||
|
|
||||||
has-symbols@^1.0.0:
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/has-symbols/-/has-symbols-1.0.0.tgz#ba1a8f1af2a0fc39650f5c850367704122063b44"
|
|
||||||
integrity sha1-uhqPGvKg/DllD1yFA2dwQSIGO0Q=
|
|
||||||
|
|
||||||
has-unicode@^2.0.0:
|
has-unicode@^2.0.0:
|
||||||
version "2.0.1"
|
version "2.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
|
resolved "https://registry.yarnpkg.com/has-unicode/-/has-unicode-2.0.1.tgz#e0e6fe6a28cf51138855e086d1691e771de2a8b9"
|
||||||
integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
|
integrity sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=
|
||||||
|
|
||||||
has@^1.0.1, has@^1.0.3:
|
|
||||||
version "1.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/has/-/has-1.0.3.tgz#722d7cbfc1f6aa8241f16dd814e011e1f41e8796"
|
|
||||||
integrity sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==
|
|
||||||
dependencies:
|
|
||||||
function-bind "^1.1.1"
|
|
||||||
|
|
||||||
he@1.1.1:
|
he@1.1.1:
|
||||||
version "1.1.1"
|
version "1.1.1"
|
||||||
resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
|
resolved "https://registry.yarnpkg.com/he/-/he-1.1.1.tgz#93410fd21b009735151f8868c2f271f3427e23fd"
|
||||||
@@ -806,12 +735,7 @@ inflight@^1.0.4:
|
|||||||
once "^1.3.0"
|
once "^1.3.0"
|
||||||
wrappy "1"
|
wrappy "1"
|
||||||
|
|
||||||
inherits@2, inherits@~2.0.1:
|
inherits@2, inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.1, inherits@~2.0.3:
|
||||||
version "2.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
|
|
||||||
integrity sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4=
|
|
||||||
|
|
||||||
inherits@^2.0.3, inherits@^2.0.4, inherits@~2.0.3:
|
|
||||||
version "2.0.4"
|
version "2.0.4"
|
||||||
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.4.tgz#0fa2c64f932917c3433a0ded55363aae37416b7c"
|
||||||
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
integrity sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==
|
||||||
@@ -821,26 +745,11 @@ ini@~1.3.0:
|
|||||||
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
|
resolved "https://registry.yarnpkg.com/ini/-/ini-1.3.5.tgz#eee25f56db1c9ec6085e0c22778083f596abf927"
|
||||||
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
|
integrity sha512-RZY5huIKCMRWDUqZlEi72f/lmXKMvuszcMBduliQ3nnWbx9X/ZBQO7DijMEYS9EhHBb2qacRUMtC7svLwe0lcw==
|
||||||
|
|
||||||
is-buffer@^2.0.2:
|
|
||||||
version "2.0.4"
|
|
||||||
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-2.0.4.tgz#3e572f23c8411a5cfd9557c849e3665e0b290623"
|
|
||||||
integrity sha512-Kq1rokWXOPXWuaMAqZiJW4XxsmD9zGx9q4aePabbn3qCRGedtH7Cm+zV8WETitMfu1wdh+Rvd6w5egwSngUX2A==
|
|
||||||
|
|
||||||
is-buffer@~1.1.1:
|
is-buffer@~1.1.1:
|
||||||
version "1.1.6"
|
version "1.1.6"
|
||||||
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
|
resolved "https://registry.yarnpkg.com/is-buffer/-/is-buffer-1.1.6.tgz#efaa2ea9daa0d7ab2ea13a97b2b8ad51fefbe8be"
|
||||||
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
|
integrity sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==
|
||||||
|
|
||||||
is-callable@^1.1.4:
|
|
||||||
version "1.1.4"
|
|
||||||
resolved "https://registry.yarnpkg.com/is-callable/-/is-callable-1.1.4.tgz#1e1adf219e1eeb684d691f9d6a05ff0d30a24d75"
|
|
||||||
integrity sha512-r5p9sxJjYnArLjObpjA4xu5EKI3CuKHkJXMhT7kwbpUyIFD1n5PMAsoPvWnvtZiNz7LjkYDRZhd7FlI0eMijEA==
|
|
||||||
|
|
||||||
is-date-object@^1.0.1:
|
|
||||||
version "1.0.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/is-date-object/-/is-date-object-1.0.1.tgz#9aa20eb6aeebbff77fbd33e74ca01b33581d3a16"
|
|
||||||
integrity sha1-mqIOtq7rv/d/vTPnTKAbM1gdOhY=
|
|
||||||
|
|
||||||
is-fullwidth-code-point@^1.0.0:
|
is-fullwidth-code-point@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
|
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz#ef9e31386f031a7f0d643af82fde50c457ef00cb"
|
||||||
@@ -853,20 +762,6 @@ is-fullwidth-code-point@^2.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
|
resolved "https://registry.yarnpkg.com/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz#a3b30a5c4f199183167aaab93beefae3ddfb654f"
|
||||||
integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
|
integrity sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=
|
||||||
|
|
||||||
is-regex@^1.0.4:
|
|
||||||
version "1.0.4"
|
|
||||||
resolved "https://registry.yarnpkg.com/is-regex/-/is-regex-1.0.4.tgz#5517489b547091b0930e095654ced25ee97e9491"
|
|
||||||
integrity sha1-VRdIm1RwkbCTDglWVM7SXul+lJE=
|
|
||||||
dependencies:
|
|
||||||
has "^1.0.1"
|
|
||||||
|
|
||||||
is-symbol@^1.0.2:
|
|
||||||
version "1.0.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/is-symbol/-/is-symbol-1.0.2.tgz#a055f6ae57192caee329e7a860118b497a950f38"
|
|
||||||
integrity sha512-HS8bZ9ox60yCJLH9snBpIwv9pYUAkcuLhSA1oero1UB5y9aiQpRA8y2ex945AOtCZL1lJDeIk3G5LthswI46Lw==
|
|
||||||
dependencies:
|
|
||||||
has-symbols "^1.0.0"
|
|
||||||
|
|
||||||
is-typedarray@~1.0.0:
|
is-typedarray@~1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
|
resolved "https://registry.yarnpkg.com/is-typedarray/-/is-typedarray-1.0.0.tgz#e479c80858df0c1b11ddda6940f96011fcda4a9a"
|
||||||
@@ -945,21 +840,21 @@ jsprim@^1.2.2:
|
|||||||
json-schema "0.2.3"
|
json-schema "0.2.3"
|
||||||
verror "1.10.0"
|
verror "1.10.0"
|
||||||
|
|
||||||
jwa@^1.2.0:
|
jwa@^1.4.1:
|
||||||
version "1.2.0"
|
version "1.4.1"
|
||||||
resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.2.0.tgz#606da70c1c6d425cad329c77c99f2df2a981489a"
|
resolved "https://registry.yarnpkg.com/jwa/-/jwa-1.4.1.tgz#743c32985cb9e98655530d53641b66c8645b039a"
|
||||||
integrity sha512-Grku9ZST5NNQ3hqNUodSkDfEBqAmGA1R8yiyPHOnLzEKI0GaCQC/XhFmsheXYuXzFQJdILbh+lYBiliqG5R/Vg==
|
integrity sha512-qiLX/xhEEFKUAJ6FiBMbes3w9ATzyk5W7Hvzpa/SLYdxNtng+gcurvrI7TbACjIXlsJyr05/S1oUhZrc63evQA==
|
||||||
dependencies:
|
dependencies:
|
||||||
buffer-equal-constant-time "1.0.1"
|
buffer-equal-constant-time "1.0.1"
|
||||||
ecdsa-sig-formatter "1.0.10"
|
ecdsa-sig-formatter "1.0.11"
|
||||||
safe-buffer "^5.0.1"
|
safe-buffer "^5.0.1"
|
||||||
|
|
||||||
jws@3.x.x:
|
jws@3.x.x:
|
||||||
version "3.2.1"
|
version "3.2.2"
|
||||||
resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.1.tgz#d79d4216a62c9afa0a3d5e8b5356d75abdeb2be5"
|
resolved "https://registry.yarnpkg.com/jws/-/jws-3.2.2.tgz#001099f3639468c9414000e99995fa52fb478304"
|
||||||
integrity sha512-bGA2omSrFUkd72dhh05bIAN832znP4wOU3lfuXtRBuGTbsmNmDXMQg28f0Vsxaxgk4myF5YkKQpz6qeRpMgX9g==
|
integrity sha512-YHlZCB6lMTllWDtSPHz/ZXTsi8S00usEV6v1tjq8tOUZzw7DpSDWVXjXDre6ed1w/pd495ODpHZYSdkRTsa0HA==
|
||||||
dependencies:
|
dependencies:
|
||||||
jwa "^1.2.0"
|
jwa "^1.4.1"
|
||||||
safe-buffer "^5.0.1"
|
safe-buffer "^5.0.1"
|
||||||
|
|
||||||
keytar@*:
|
keytar@*:
|
||||||
@@ -997,17 +892,17 @@ md5@^2.1.0:
|
|||||||
crypt "~0.0.1"
|
crypt "~0.0.1"
|
||||||
is-buffer "~1.1.1"
|
is-buffer "~1.1.1"
|
||||||
|
|
||||||
mime-db@1.40.0:
|
mime-db@1.43.0:
|
||||||
version "1.40.0"
|
version "1.43.0"
|
||||||
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.40.0.tgz#a65057e998db090f732a68f6c276d387d4126c32"
|
resolved "https://registry.yarnpkg.com/mime-db/-/mime-db-1.43.0.tgz#0a12e0502650e473d735535050e7c8f4eb4fae58"
|
||||||
integrity sha512-jYdeOMPy9vnxEqFRRo6ZvTZ8d9oPb+k18PKoYNYUe2stVEBPPwsln/qWzdbmaIvnhZ9v2P+CuecK+fpUfsV2mA==
|
integrity sha512-+5dsGEEovYbT8UY9yD7eE4XTc4UwJ1jBYlgaQQF38ENsKR3wj/8q8RFZrF9WIZpB2V1ArTVFUva8sAul1NzRzQ==
|
||||||
|
|
||||||
mime-types@^2.1.12, mime-types@~2.1.19:
|
mime-types@^2.1.12, mime-types@~2.1.19:
|
||||||
version "2.1.24"
|
version "2.1.26"
|
||||||
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.24.tgz#b6f8d0b3e951efb77dedeca194cff6d16f676f81"
|
resolved "https://registry.yarnpkg.com/mime-types/-/mime-types-2.1.26.tgz#9c921fc09b7e149a65dfdc0da4d20997200b0a06"
|
||||||
integrity sha512-WaFHS3MCl5fapm3oLxU4eYDw77IQM2ACcxQ9RIxfaC3ooc6PFuBMGZZsYpvoXS5D5QTWPieo1jjLdAm3TBP3cQ==
|
integrity sha512-01paPWYgLrkqAyrlDorC1uDwl2p3qZT7yl806vW7DvDoxwXi46jsjFbg+WdwotBIk6/MbEhO/dh5aZ5sNj/dWQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
mime-db "1.40.0"
|
mime-db "1.43.0"
|
||||||
|
|
||||||
mimic-response@^2.0.0:
|
mimic-response@^2.0.0:
|
||||||
version "2.1.0"
|
version "2.1.0"
|
||||||
@@ -1036,24 +931,29 @@ minimist@~0.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
|
resolved "https://registry.yarnpkg.com/minimist/-/minimist-0.0.10.tgz#de3f98543dbf96082be48ad1a0c7cda836301dcf"
|
||||||
integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=
|
integrity sha1-3j+YVD2/lggr5IrRoMfNqDYwHc8=
|
||||||
|
|
||||||
mkdirp@0.5.1, mkdirp@0.5.x, mkdirp@~0.5.1:
|
mkdirp-classic@^0.5.2:
|
||||||
|
version "0.5.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/mkdirp-classic/-/mkdirp-classic-0.5.2.tgz#54c441ce4c96cd7790e10b41a87aa51068ecab2b"
|
||||||
|
integrity sha512-ejdnDQcR75gwknmMw/tx02AuRs8jCtqFoFqDZMjiNxsu85sRIJVXDKHuLYvUUPRBUtV2FpSZa9bL1BUa3BdR2g==
|
||||||
|
|
||||||
|
mkdirp@0.5.1:
|
||||||
version "0.5.1"
|
version "0.5.1"
|
||||||
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
|
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.1.tgz#30057438eac6cf7f8c4767f38648d6697d75c903"
|
||||||
integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
|
integrity sha1-MAV0OOrGz3+MR2fzhkjWaX11yQM=
|
||||||
dependencies:
|
dependencies:
|
||||||
minimist "0.0.8"
|
minimist "0.0.8"
|
||||||
|
|
||||||
mkdirp@^0.5.1:
|
mkdirp@0.5.x, mkdirp@^0.5.1, mkdirp@~0.5.1:
|
||||||
version "0.5.3"
|
version "0.5.4"
|
||||||
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.3.tgz#5a514b7179259287952881e94410ec5465659f8c"
|
resolved "https://registry.yarnpkg.com/mkdirp/-/mkdirp-0.5.4.tgz#fd01504a6797ec5c9be81ff43d204961ed64a512"
|
||||||
integrity sha512-P+2gwrFqx8lhew375MQHHeTlY8AuOJSrGf0R5ddkEndUkmwpgUob/vQuBD1V22/Cw1/lJr4x+EjllSezBThzBg==
|
integrity sha512-iG9AK/dJLtJ0XNgTuDbSyNS3zECqDlAhnQW4CsNxBG3LQJBbHmRX1egw39DmtOdCAqY+dKXV+sgPgilNWUKMVw==
|
||||||
dependencies:
|
dependencies:
|
||||||
minimist "^1.2.5"
|
minimist "^1.2.5"
|
||||||
|
|
||||||
mocha-junit-reporter@^1.17.0:
|
mocha-junit-reporter@^1.17.0:
|
||||||
version "1.23.1"
|
version "1.23.3"
|
||||||
resolved "https://registry.yarnpkg.com/mocha-junit-reporter/-/mocha-junit-reporter-1.23.1.tgz#ba11519c0b967f404e4123dd69bc4ba022ab0f12"
|
resolved "https://registry.yarnpkg.com/mocha-junit-reporter/-/mocha-junit-reporter-1.23.3.tgz#941e219dd759ed732f8641e165918aa8b167c981"
|
||||||
integrity sha512-qeDvKlZyAH2YJE1vhryvjUQ06t2hcnwwu4k5Ddwn0GQINhgEYFhlGM0DwYCVUHq5cuo32qAW6HDsTHt7zz99Ng==
|
integrity sha512-ed8LqbRj1RxZfjt/oC9t12sfrWsjZ3gNnbhV1nuj9R/Jb5/P3Xb4duv2eCfCDMYH+fEu0mqca7m4wsiVjsxsvA==
|
||||||
dependencies:
|
dependencies:
|
||||||
debug "^2.2.0"
|
debug "^2.2.0"
|
||||||
md5 "^2.1.0"
|
md5 "^2.1.0"
|
||||||
@@ -1155,24 +1055,6 @@ object-assign@^4.1.0:
|
|||||||
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
resolved "https://registry.yarnpkg.com/object-assign/-/object-assign-4.1.1.tgz#2109adc7965887cfc05cbbd442cac8bfbb360863"
|
||||||
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
|
integrity sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=
|
||||||
|
|
||||||
object-inspect@^1.6.0:
|
|
||||||
version "1.6.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/object-inspect/-/object-inspect-1.6.0.tgz#c70b6cbf72f274aab4c34c0c82f5167bf82cf15b"
|
|
||||||
integrity sha512-GJzfBZ6DgDAmnuaM3104jR4s1Myxr3Y3zfIyN4z3UdqN69oSRacNK8UhnobDdC+7J2AHCjGwxQubNJfE70SXXQ==
|
|
||||||
|
|
||||||
object-keys@^1.0.12, object-keys@^1.1.1:
|
|
||||||
version "1.1.1"
|
|
||||||
resolved "https://registry.yarnpkg.com/object-keys/-/object-keys-1.1.1.tgz#1c47f272df277f3b1daf061677d9c82e2322c60e"
|
|
||||||
integrity sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==
|
|
||||||
|
|
||||||
object.getownpropertydescriptors@^2.0.3:
|
|
||||||
version "2.0.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/object.getownpropertydescriptors/-/object.getownpropertydescriptors-2.0.3.tgz#8758c846f5b407adab0f236e0986f14b051caa16"
|
|
||||||
integrity sha1-h1jIRvW0B62rDyNuCYbxSwUcqhY=
|
|
||||||
dependencies:
|
|
||||||
define-properties "^1.1.2"
|
|
||||||
es-abstract "^1.5.1"
|
|
||||||
|
|
||||||
once@1.x, once@^1.3.0, once@^1.3.1, once@^1.4.0:
|
once@1.x, once@^1.3.0, once@^1.3.1, once@^1.4.0:
|
||||||
version "1.4.0"
|
version "1.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
resolved "https://registry.yarnpkg.com/once/-/once-1.4.0.tgz#583b1aa775961d4b113ac17d9c50baef9dd76bd1"
|
||||||
@@ -1262,15 +1144,10 @@ process-nextick-args@~2.0.0:
|
|||||||
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
|
resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-2.0.1.tgz#7820d9b16120cc55ca9ae7792680ae7dba6d7fe2"
|
||||||
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
|
integrity sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==
|
||||||
|
|
||||||
psl@^1.1.24:
|
psl@^1.1.24, psl@^1.1.28:
|
||||||
version "1.1.31"
|
version "1.8.0"
|
||||||
resolved "https://registry.yarnpkg.com/psl/-/psl-1.1.31.tgz#e9aa86d0101b5b105cbe93ac6b784cd547276184"
|
resolved "https://registry.yarnpkg.com/psl/-/psl-1.8.0.tgz#9326f8bcfb013adcc005fdff056acce020e51c24"
|
||||||
integrity sha512-/6pt4+C+T+wZUieKR620OpzN/LlnNKuWjy1iFLQ/UG35JqHlR/89MP1d96dUfkf6Dne3TuLQzOYEYshJ+Hx8mw==
|
integrity sha512-RIdOzyoavK+hA18OGGWDqUTsCLhtA7IcZ/6NCs4fFJaHBDab+pDDmDIByWFRQJq2Cd7r1OoQxBGKOaztq+hjIQ==
|
||||||
|
|
||||||
psl@^1.1.28:
|
|
||||||
version "1.4.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/psl/-/psl-1.4.0.tgz#5dd26156cdb69fa1fdb8ab1991667d3f80ced7c2"
|
|
||||||
integrity sha512-HZzqCGPecFLyoRj5HLfuDSKYTJkAfB5thKBIkRHtGjWwY7p1dAyveIbXIq4tO0KYfDF2tHqPUgY9SDnGm00uFw==
|
|
||||||
|
|
||||||
pump@^3.0.0:
|
pump@^3.0.0:
|
||||||
version "3.0.0"
|
version "3.0.0"
|
||||||
@@ -1291,9 +1168,9 @@ punycode@^2.1.0, punycode@^2.1.1:
|
|||||||
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
|
integrity sha512-XRsRjdf+j5ml+y/6GKHPZbrF/8p2Yga0JPtdqTIY2Xe5ohJPD9saDJJLPvp9+NSBprVvevdXZybnj2cv8OEd0A==
|
||||||
|
|
||||||
qs@^6.9.1:
|
qs@^6.9.1:
|
||||||
version "6.9.1"
|
version "6.9.3"
|
||||||
resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.1.tgz#20082c65cb78223635ab1a9eaca8875a29bf8ec9"
|
resolved "https://registry.yarnpkg.com/qs/-/qs-6.9.3.tgz#bfadcd296c2d549f1dffa560619132c977f5008e"
|
||||||
integrity sha512-Cxm7/SS/y/Z3MHWSxXb8lIFqgqBowP5JMlTUFyJN88y0SGQhVmZnqFK/PeuMX9LzUyWsqqhNxIyg0jlzq946yA==
|
integrity sha512-EbZYNarm6138UKKq46tdx08Yo/q9ZhFoAXAI1meAFd2GtbRDhbZY2WQSICskT0c5q99aFzLG1D4nvTk9tqfXIw==
|
||||||
|
|
||||||
qs@~6.5.2:
|
qs@~6.5.2:
|
||||||
version "6.5.2"
|
version "6.5.2"
|
||||||
@@ -1356,7 +1233,7 @@ remap-istanbul@^0.11.1:
|
|||||||
source-map "^0.6.1"
|
source-map "^0.6.1"
|
||||||
through2 "2.0.1"
|
through2 "2.0.1"
|
||||||
|
|
||||||
request@2.88.0, request@^2.88.0:
|
request@2.88.0:
|
||||||
version "2.88.0"
|
version "2.88.0"
|
||||||
resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef"
|
resolved "https://registry.yarnpkg.com/request/-/request-2.88.0.tgz#9c2fca4f7d35b592efe57c7f0a55e81052124fef"
|
||||||
integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==
|
integrity sha512-NAqBSrijGLZdM0WZNsInLJpkJokL72XYjUpnB0iwsRgxh7dB6COrHnTBNwN0E+lHDAJzu7kLAkDeY08z2/A0hg==
|
||||||
@@ -1382,21 +1259,47 @@ request@2.88.0, request@^2.88.0:
|
|||||||
tunnel-agent "^0.6.0"
|
tunnel-agent "^0.6.0"
|
||||||
uuid "^3.3.2"
|
uuid "^3.3.2"
|
||||||
|
|
||||||
|
request@^2.88.0:
|
||||||
|
version "2.88.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/request/-/request-2.88.2.tgz#d73c918731cb5a87da047e207234146f664d12b3"
|
||||||
|
integrity sha512-MsvtOrfG9ZcrOwAW+Qi+F6HbD0CWXEh9ou77uOb7FM2WPhwT7smM833PzanhJLsgXjN89Ir6V2PczXNnMpwKhw==
|
||||||
|
dependencies:
|
||||||
|
aws-sign2 "~0.7.0"
|
||||||
|
aws4 "^1.8.0"
|
||||||
|
caseless "~0.12.0"
|
||||||
|
combined-stream "~1.0.6"
|
||||||
|
extend "~3.0.2"
|
||||||
|
forever-agent "~0.6.1"
|
||||||
|
form-data "~2.3.2"
|
||||||
|
har-validator "~5.1.3"
|
||||||
|
http-signature "~1.2.0"
|
||||||
|
is-typedarray "~1.0.0"
|
||||||
|
isstream "~0.1.2"
|
||||||
|
json-stringify-safe "~5.0.1"
|
||||||
|
mime-types "~2.1.19"
|
||||||
|
oauth-sign "~0.9.0"
|
||||||
|
performance-now "^2.1.0"
|
||||||
|
qs "~6.5.2"
|
||||||
|
safe-buffer "^5.1.2"
|
||||||
|
tough-cookie "~2.5.0"
|
||||||
|
tunnel-agent "^0.6.0"
|
||||||
|
uuid "^3.3.2"
|
||||||
|
|
||||||
resolve@1.1.x:
|
resolve@1.1.x:
|
||||||
version "1.1.7"
|
version "1.1.7"
|
||||||
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
|
resolved "https://registry.yarnpkg.com/resolve/-/resolve-1.1.7.tgz#203114d82ad2c5ed9e8e0411b3932875e889e97b"
|
||||||
integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
|
integrity sha1-IDEU2CrSxe2ejgQRs5ModeiJ6Xs=
|
||||||
|
|
||||||
safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.1.0, safe-buffer@~5.1.1:
|
safe-buffer@^5.0.1, safe-buffer@^5.1.2, safe-buffer@~5.2.0:
|
||||||
version "5.1.2"
|
|
||||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
|
|
||||||
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
|
|
||||||
|
|
||||||
safe-buffer@~5.2.0:
|
|
||||||
version "5.2.0"
|
version "5.2.0"
|
||||||
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519"
|
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.2.0.tgz#b74daec49b1148f88c64b68d49b1e815c1f2f519"
|
||||||
integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==
|
integrity sha512-fZEwUGbVl7kouZs1jCdMLdt95hdIv0ZeHg6L7qPeciMZhZ+/gdesW4wgTARkrFWEpspjEATAzUGPG8N2jJiwbg==
|
||||||
|
|
||||||
|
safe-buffer@~5.1.0, safe-buffer@~5.1.1:
|
||||||
|
version "5.1.2"
|
||||||
|
resolved "https://registry.yarnpkg.com/safe-buffer/-/safe-buffer-5.1.2.tgz#991ec69d296e0313747d59bdfd2b745c35f8828d"
|
||||||
|
integrity sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==
|
||||||
|
|
||||||
safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
|
safer-buffer@^2.0.2, safer-buffer@^2.1.0, safer-buffer@~2.1.0:
|
||||||
version "2.1.2"
|
version "2.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
resolved "https://registry.yarnpkg.com/safer-buffer/-/safer-buffer-2.1.2.tgz#44fa161b0187b9549dd84bb91802f9bd8385cd6a"
|
||||||
@@ -1446,9 +1349,9 @@ should-type@^1.3.0, should-type@^1.4.0:
|
|||||||
integrity sha1-B1bYzoRt/QmEOmlHcZ36DUz/XPM=
|
integrity sha1-B1bYzoRt/QmEOmlHcZ36DUz/XPM=
|
||||||
|
|
||||||
should-util@^1.0.0:
|
should-util@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/should-util/-/should-util-1.0.0.tgz#c98cda374aa6b190df8ba87c9889c2b4db620063"
|
resolved "https://registry.yarnpkg.com/should-util/-/should-util-1.0.1.tgz#fb0d71338f532a3a149213639e2d32cbea8bcb28"
|
||||||
integrity sha1-yYzaN0qmsZDfi6h8mInCtNtiAGM=
|
integrity sha512-oXF8tfxx5cDk8r2kYqlkUJzZpDBqVY/II2WhvU0n9Y3XYvAYRmeaf1PvvIvTgPnv4KJ+ES5M0PyDq5Jp+Ygy2g==
|
||||||
|
|
||||||
should@^13.2.1:
|
should@^13.2.1:
|
||||||
version "13.2.3"
|
version "13.2.3"
|
||||||
@@ -1462,9 +1365,9 @@ should@^13.2.1:
|
|||||||
should-util "^1.0.0"
|
should-util "^1.0.0"
|
||||||
|
|
||||||
signal-exit@^3.0.0:
|
signal-exit@^3.0.0:
|
||||||
version "3.0.2"
|
version "3.0.3"
|
||||||
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.2.tgz#b5fdc08f1287ea1178628e415e25132b73646c6d"
|
resolved "https://registry.yarnpkg.com/signal-exit/-/signal-exit-3.0.3.tgz#a1410c2edd8f077b08b4e253c8eacfcaf057461c"
|
||||||
integrity sha1-tf3AjxKH6hF4Yo5BXiUTK3NkbG0=
|
integrity sha512-VUJ49FC8U1OxwZLxIbTTrDvLnf/6TDgxZcK8wxR8zs13xpx7xbG60ndBlhNrFi2EMuFRoeDoJO7wthSLq42EjA==
|
||||||
|
|
||||||
simple-concat@^1.0.0:
|
simple-concat@^1.0.0:
|
||||||
version "1.0.0"
|
version "1.0.0"
|
||||||
@@ -1537,22 +1440,6 @@ string-width@^1.0.1:
|
|||||||
is-fullwidth-code-point "^2.0.0"
|
is-fullwidth-code-point "^2.0.0"
|
||||||
strip-ansi "^4.0.0"
|
strip-ansi "^4.0.0"
|
||||||
|
|
||||||
string.prototype.trimleft@^2.1.0:
|
|
||||||
version "2.1.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/string.prototype.trimleft/-/string.prototype.trimleft-2.1.0.tgz#6cc47f0d7eb8d62b0f3701611715a3954591d634"
|
|
||||||
integrity sha512-FJ6b7EgdKxxbDxc79cOlok6Afd++TTs5szo+zJTUyow3ycrRfJVE2pq3vcN53XexvKZu/DJMDfeI/qMiZTrjTw==
|
|
||||||
dependencies:
|
|
||||||
define-properties "^1.1.3"
|
|
||||||
function-bind "^1.1.1"
|
|
||||||
|
|
||||||
string.prototype.trimright@^2.1.0:
|
|
||||||
version "2.1.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/string.prototype.trimright/-/string.prototype.trimright-2.1.0.tgz#669d164be9df9b6f7559fa8e89945b168a5a6c58"
|
|
||||||
integrity sha512-fXZTSV55dNBwv16uw+hh5jkghxSnc5oHq+5K/gXgizHwAvMetdAJlHqqoFC1FSDVPYWLkAKl2cxpUT41sV7nSg==
|
|
||||||
dependencies:
|
|
||||||
define-properties "^1.1.3"
|
|
||||||
function-bind "^1.1.1"
|
|
||||||
|
|
||||||
string_decoder@^1.1.1:
|
string_decoder@^1.1.1:
|
||||||
version "1.3.0"
|
version "1.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
|
resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-1.3.0.tgz#42f114594a46cf1a8e30b0a84f56c78c3edac21e"
|
||||||
@@ -1606,12 +1493,12 @@ supports-color@^3.1.0:
|
|||||||
has-flag "^1.0.0"
|
has-flag "^1.0.0"
|
||||||
|
|
||||||
tar-fs@^2.0.0:
|
tar-fs@^2.0.0:
|
||||||
version "2.0.0"
|
version "2.0.1"
|
||||||
resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.0.0.tgz#677700fc0c8b337a78bee3623fdc235f21d7afad"
|
resolved "https://registry.yarnpkg.com/tar-fs/-/tar-fs-2.0.1.tgz#e44086c1c60d31a4f0cf893b1c4e155dabfae9e2"
|
||||||
integrity sha512-vaY0obB6Om/fso8a8vakQBzwholQ7v5+uy+tF3Ozvxv1KNezmVQAiWtcNmMHFSFPqL3dJA8ha6gdtFbfX9mcxA==
|
integrity sha512-6tzWDMeroL87uF/+lin46k+Q+46rAJ0SyPGz7OW7wTgblI273hsBqk2C1j0/xNadNLKDTUL9BukSjB7cwgmlPA==
|
||||||
dependencies:
|
dependencies:
|
||||||
chownr "^1.1.1"
|
chownr "^1.1.1"
|
||||||
mkdirp "^0.5.1"
|
mkdirp-classic "^0.5.2"
|
||||||
pump "^3.0.0"
|
pump "^3.0.0"
|
||||||
tar-stream "^2.0.0"
|
tar-stream "^2.0.0"
|
||||||
|
|
||||||
@@ -1634,7 +1521,7 @@ through2@2.0.1:
|
|||||||
readable-stream "~2.0.0"
|
readable-stream "~2.0.0"
|
||||||
xtend "~4.0.0"
|
xtend "~4.0.0"
|
||||||
|
|
||||||
tough-cookie@^2.4.3:
|
tough-cookie@^2.4.3, tough-cookie@~2.5.0:
|
||||||
version "2.5.0"
|
version "2.5.0"
|
||||||
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
|
resolved "https://registry.yarnpkg.com/tough-cookie/-/tough-cookie-2.5.0.tgz#cd9fb2a0aa1d5a12b473bd9fb96fa3dcff65ade2"
|
||||||
integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
|
integrity sha512-nlLsUzgm1kfLXSXfRZMc1KLAugd4hqJHDTvc2hDIwS3mZAfMEuMbc03SujMF+GEcpaX/qboeycw6iO8JwVv2+g==
|
||||||
@@ -1651,9 +1538,9 @@ tough-cookie@~2.4.3:
|
|||||||
punycode "^1.4.1"
|
punycode "^1.4.1"
|
||||||
|
|
||||||
tslib@^1.9.2, tslib@^1.9.3:
|
tslib@^1.9.2, tslib@^1.9.3:
|
||||||
version "1.10.0"
|
version "1.11.1"
|
||||||
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.10.0.tgz#c3c19f95973fb0a62973fb09d90d961ee43e5c8a"
|
resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.11.1.tgz#eb15d128827fbee2841549e171f45ed338ac7e35"
|
||||||
integrity sha512-qOebF53frne81cf0S9B41ByenJ3/IuH8yJKngAX35CmiZySA0khhkovshKK+jGCaMnVomla7gVlIcc3EvKPbTQ==
|
integrity sha512-aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==
|
||||||
|
|
||||||
tunnel-agent@^0.6.0:
|
tunnel-agent@^0.6.0:
|
||||||
version "0.6.0"
|
version "0.6.0"
|
||||||
@@ -1689,17 +1576,17 @@ typemoq@^2.1.0:
|
|||||||
postinstall-build "^5.0.1"
|
postinstall-build "^5.0.1"
|
||||||
|
|
||||||
uglify-js@^3.1.4:
|
uglify-js@^3.1.4:
|
||||||
version "3.7.6"
|
version "3.8.0"
|
||||||
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.7.6.tgz#0783daa867d4bc962a37cc92f67f6e3238c47485"
|
resolved "https://registry.yarnpkg.com/uglify-js/-/uglify-js-3.8.0.tgz#f3541ae97b2f048d7e7e3aa4f39fd8a1f5d7a805"
|
||||||
integrity sha512-yYqjArOYSxvqeeiYH2VGjZOqq6SVmhxzaPjJC1W2F9e+bqvFL9QXQ2osQuKUFjM2hGjKG2YclQnRKWQSt/nOTQ==
|
integrity sha512-ugNSTT8ierCsDHso2jkBHXYrU8Y5/fY2ZUprfrJUiD7YpuFvV4jODLFmb3h4btQjqr5Nh4TX4XtgDfCU1WdioQ==
|
||||||
dependencies:
|
dependencies:
|
||||||
commander "~2.20.3"
|
commander "~2.20.3"
|
||||||
source-map "~0.6.1"
|
source-map "~0.6.1"
|
||||||
|
|
||||||
"underscore@>= 1.3.1":
|
"underscore@>= 1.3.1":
|
||||||
version "1.9.1"
|
version "1.9.2"
|
||||||
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.1.tgz#06dce34a0e68a7babc29b365b8e74b8925203961"
|
resolved "https://registry.yarnpkg.com/underscore/-/underscore-1.9.2.tgz#0c8d6f536d6f378a5af264a72f7bec50feb7cf2f"
|
||||||
integrity sha512-5/4etnCkd9c8gwgowi5/om/mYO5ajCaOgdzj/oW+0eQV9WxKBDZw5+ycmKmeaTXjInS/W0BzpGLo2xR2aBwZdg==
|
integrity sha512-D39qtimx0c1fI3ya1Lnhk3E9nONswSKhnffBI0gME9C99fYOkNi04xs8K6pePLhvl1frbDemkaBQ5ikWllR2HQ==
|
||||||
|
|
||||||
uri-js@^4.2.2:
|
uri-js@^4.2.2:
|
||||||
version "4.2.2"
|
version "4.2.2"
|
||||||
@@ -1713,18 +1600,10 @@ util-deprecate@^1.0.1, util-deprecate@~1.0.1:
|
|||||||
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
|
||||||
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
|
integrity sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=
|
||||||
|
|
||||||
util.promisify@~1.0.0:
|
|
||||||
version "1.0.0"
|
|
||||||
resolved "https://registry.yarnpkg.com/util.promisify/-/util.promisify-1.0.0.tgz#440f7165a459c9a16dc145eb8e72f35687097030"
|
|
||||||
integrity sha512-i+6qA2MPhvoKLuxnJNpXAGhg7HphQOSUq2LKMZD0m15EiskXUkMvKdF4Uui0WYeCUGea+o2cw/ZuwehtfsrNkA==
|
|
||||||
dependencies:
|
|
||||||
define-properties "^1.1.2"
|
|
||||||
object.getownpropertydescriptors "^2.0.3"
|
|
||||||
|
|
||||||
uuid@^3.1.0, uuid@^3.2.1, uuid@^3.3.2:
|
uuid@^3.1.0, uuid@^3.2.1, uuid@^3.3.2:
|
||||||
version "3.3.2"
|
version "3.4.0"
|
||||||
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.3.2.tgz#1b4af4955eb3077c501c23872fc6513811587131"
|
resolved "https://registry.yarnpkg.com/uuid/-/uuid-3.4.0.tgz#b23e4358afa8a202fe7a100af1f5f883f02007ee"
|
||||||
integrity sha512-yXJmeNaw3DnnKAOKJE51sL/ZaYfWJRl1pK9dr19YFCu0ObS231AB1/LbqTKRAQ5kw8A90rA6fr4riOUpTZvQZA==
|
integrity sha512-HjSDRw6gZE5JMggctHBcjVak08+KEVhSIiDzFnT9S9aegmp85S/bReBVTb4QTFaRNptJ9kuYaNhnbNEOkbKb/A==
|
||||||
|
|
||||||
verror@1.10.0:
|
verror@1.10.0:
|
||||||
version "1.10.0"
|
version "1.10.0"
|
||||||
@@ -1736,9 +1615,9 @@ verror@1.10.0:
|
|||||||
extsprintf "^1.2.0"
|
extsprintf "^1.2.0"
|
||||||
|
|
||||||
vscode-nls@^4.0.0:
|
vscode-nls@^4.0.0:
|
||||||
version "4.0.0"
|
version "4.1.2"
|
||||||
resolved "https://registry.yarnpkg.com/vscode-nls/-/vscode-nls-4.0.0.tgz#4001c8a6caba5cedb23a9c5ce1090395c0e44002"
|
resolved "https://registry.yarnpkg.com/vscode-nls/-/vscode-nls-4.1.2.tgz#ca8bf8bb82a0987b32801f9fddfdd2fb9fd3c167"
|
||||||
integrity sha512-qCfdzcH+0LgQnBpZA53bA32kzp9rpq/f66Som577ObeuDlFIrtbEJ+A/+CCxjIh4G8dpJYNCKIsxpRAHIfsbNw==
|
integrity sha512-7bOHxPsfyuCqmP+hZXscLhiHwe7CSuFE4hyhbs22xPIhQ4jv99FcR4eBzfYYVLP356HNFpdvz63FFb/xw6T4Iw==
|
||||||
|
|
||||||
"vscodetestcover@github:corivera/vscodetestcover#1.0.5":
|
"vscodetestcover@github:corivera/vscodetestcover#1.0.5":
|
||||||
version "1.0.5"
|
version "1.0.5"
|
||||||
@@ -1790,13 +1669,17 @@ wrappy@1:
|
|||||||
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
resolved "https://registry.yarnpkg.com/wrappy/-/wrappy-1.0.2.tgz#b5243d8f3ec1aa35f1364605bc0d1036e30ab69f"
|
||||||
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
|
integrity sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=
|
||||||
|
|
||||||
|
ws@^7.2.0:
|
||||||
|
version "7.2.3"
|
||||||
|
resolved "https://registry.yarnpkg.com/ws/-/ws-7.2.3.tgz#a5411e1fb04d5ed0efee76d26d5c46d830c39b46"
|
||||||
|
integrity sha512-HTDl9G9hbkNDk98naoR/cHDws7+EyYMOdL1BmjsZXRUjf7d+MficC4B7HLUPlSiho0vg+CWKrGIt/VJBd1xunQ==
|
||||||
|
|
||||||
xml2js@^0.4.19:
|
xml2js@^0.4.19:
|
||||||
version "0.4.22"
|
version "0.4.23"
|
||||||
resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.22.tgz#4fa2d846ec803237de86f30aa9b5f70b6600de02"
|
resolved "https://registry.yarnpkg.com/xml2js/-/xml2js-0.4.23.tgz#a0c69516752421eb2ac758ee4d4ccf58843eac66"
|
||||||
integrity sha512-MWTbxAQqclRSTnehWWe5nMKzI3VmJ8ltiJEco8akcC6j3miOhjjfzKum5sId+CWhfxdOs/1xauYr8/ZDBtQiRw==
|
integrity sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==
|
||||||
dependencies:
|
dependencies:
|
||||||
sax ">=0.6.0"
|
sax ">=0.6.0"
|
||||||
util.promisify "~1.0.0"
|
|
||||||
xmlbuilder "~11.0.0"
|
xmlbuilder "~11.0.0"
|
||||||
|
|
||||||
xml@^1.0.0:
|
xml@^1.0.0:
|
||||||
@@ -1810,9 +1693,9 @@ xmlbuilder@~11.0.0:
|
|||||||
integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==
|
integrity sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==
|
||||||
|
|
||||||
"xmldom@>= 0.1.x":
|
"xmldom@>= 0.1.x":
|
||||||
version "0.1.27"
|
version "0.3.0"
|
||||||
resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.1.27.tgz#d501f97b3bdb403af8ef9ecc20573187aadac0e9"
|
resolved "https://registry.yarnpkg.com/xmldom/-/xmldom-0.3.0.tgz#e625457f4300b5df9c2e1ecb776147ece47f3e5a"
|
||||||
integrity sha1-1QH5ezvbQDr4757MIFcxh6rawOk=
|
integrity sha512-z9s6k3wxE+aZHgXYxSTpGDo7BYOUfJsIRyoZiX6HTjwpwfS2wpQBQKa2fD+ShLyPkqDYo5ud7KitmLZ2Cd6r0g==
|
||||||
|
|
||||||
xpath.js@~1.1.0:
|
xpath.js@~1.1.0:
|
||||||
version "1.1.0"
|
version "1.1.0"
|
||||||
@@ -1820,6 +1703,6 @@ xpath.js@~1.1.0:
|
|||||||
integrity sha512-jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==
|
integrity sha512-jg+qkfS4K8E7965sqaUl8mRngXiKb3WZGfONgE18pr03FUQiuSV6G+Ej4tS55B+rIQSFEIw3phdVAQ4pPqNWfQ==
|
||||||
|
|
||||||
xtend@~4.0.0:
|
xtend@~4.0.0:
|
||||||
version "4.0.1"
|
version "4.0.2"
|
||||||
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.1.tgz#a5c6d532be656e23db820efb943a1f04998d63af"
|
resolved "https://registry.yarnpkg.com/xtend/-/xtend-4.0.2.tgz#bb72779f5fa465186b1f438f674fa347fdb5db54"
|
||||||
integrity sha1-pcbVMr5lbiPbgg77lDofBJmNY68=
|
integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ==
|
||||||
|
|||||||
3
src/sql/azdata.d.ts
vendored
3
src/sql/azdata.d.ts
vendored
@@ -2212,7 +2212,8 @@ declare module 'azdata' {
|
|||||||
Sql = 1,
|
Sql = 1,
|
||||||
OssRdbms = 2,
|
OssRdbms = 2,
|
||||||
AzureKeyVault = 3,
|
AzureKeyVault = 3,
|
||||||
Graph = 4
|
Graph = 4,
|
||||||
|
MicrosoftResourceManagement = 5
|
||||||
}
|
}
|
||||||
|
|
||||||
export interface DidChangeAccountsParams {
|
export interface DidChangeAccountsParams {
|
||||||
|
|||||||
@@ -397,7 +397,8 @@ export enum AzureResource {
|
|||||||
Sql = 1,
|
Sql = 1,
|
||||||
OssRdbms = 2,
|
OssRdbms = 2,
|
||||||
AzureKeyVault = 3,
|
AzureKeyVault = 3,
|
||||||
Graph = 4
|
Graph = 4,
|
||||||
|
MicrosoftResourceManagement = 5
|
||||||
}
|
}
|
||||||
|
|
||||||
export class TreeItem extends vsExtTypes.TreeItem {
|
export class TreeItem extends vsExtTypes.TreeItem {
|
||||||
|
|||||||
Reference in New Issue
Block a user