diff --git a/sdk/synapse/arm-synapse/README.md b/sdk/synapse/arm-synapse/README.md
index 1bda5ed3936c..f7c40f51a535 100644
--- a/sdk/synapse/arm-synapse/README.md
+++ b/sdk/synapse/arm-synapse/README.md
@@ -1,95 +1,105 @@
## Azure SynapseManagementClient SDK for JavaScript
-This package contains an isomorphic SDK for SynapseManagementClient.
+This package contains an isomorphic SDK (runs both in Node.js and in browsers) for SynapseManagementClient.
### Currently supported environments
-- Node.js version 6.x.x or higher
-- Browser JavaScript
+- [LTS versions of Node.js](https://nodejs.org/about/releases/)
+- Latest versions of Safari, Chrome, Edge, and Firefox.
-### How to Install
+### Prerequisites
+You must have an [Azure subscription](https://azure.microsoft.com/free/).
+
+### How to install
+
+To use this SDK in your project, you will need to install two packages.
+- `@azure/arm-synapse` that contains the client.
+- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory.
+
+Install both packages using the below command:
```bash
-npm install @azure/arm-synapse
+npm install --save @azure/arm-synapse @azure/identity
```
+> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features.
+If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options.
+
### How to use
-#### nodejs - client creation and get bigDataPools as an example written in TypeScript.
+- If you are writing a client side browser application,
+ - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions.
+ - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below.
+- If you are writing a server side application,
+ - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples)
+ - Complete the set up steps required by the credential if any.
+ - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below.
-##### Install @azure/ms-rest-nodeauth
+In the below samples, we pass the credential and the Azure subscription id to instantiate the client.
+Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started.
-- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`.
-```bash
-npm install @azure/ms-rest-nodeauth@"^3.0.0"
-```
+#### nodejs - Authentication, client creation, and get bigDataPools as an example written in JavaScript.
##### Sample code
-While the below sample uses the interactive login, other authentication options can be found in the [README.md file of @azure/ms-rest-nodeauth](https://www.npmjs.com/package/@azure/ms-rest-nodeauth) package
-```typescript
-const msRestNodeAuth = require("@azure/ms-rest-nodeauth");
+```javascript
+const { DefaultAzureCredential } = require("@azure/identity");
const { SynapseManagementClient } = require("@azure/arm-synapse");
const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
-msRestNodeAuth.interactiveLogin().then((creds) => {
- const client = new SynapseManagementClient(creds, subscriptionId);
- const resourceGroupName = "testresourceGroupName";
- const workspaceName = "testworkspaceName";
- const bigDataPoolName = "testbigDataPoolName";
- client.bigDataPools.get(resourceGroupName, workspaceName, bigDataPoolName).then((result) => {
- console.log("The result is:");
- console.log(result);
- });
+// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples
+// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead.
+const creds = new DefaultAzureCredential();
+const client = new SynapseManagementClient(creds, subscriptionId);
+const resourceGroupName = "testresourceGroupName";
+const workspaceName = "testworkspaceName";
+const bigDataPoolName = "testbigDataPoolName";
+client.bigDataPools.get(resourceGroupName, workspaceName, bigDataPoolName).then((result) => {
+ console.log("The result is:");
+ console.log(result);
}).catch((err) => {
+ console.log("An error occurred:");
console.error(err);
});
```
-#### browser - Authentication, client creation and get bigDataPools as an example written in JavaScript.
+#### browser - Authentication, client creation, and get bigDataPools as an example written in JavaScript.
-##### Install @azure/ms-rest-browserauth
-
-```bash
-npm install @azure/ms-rest-browserauth
-```
+In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser.
+ - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser.
+ - Note down the client Id from the previous step and use it in the browser sample below.
##### Sample code
-See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser.
-
- index.html
+
```html
@azure/arm-synapse sample
-
-
+
diff --git a/sdk/synapse/arm-synapse/package.json b/sdk/synapse/arm-synapse/package.json
index c01cf1d6f7d6..22336c8f5773 100644
--- a/sdk/synapse/arm-synapse/package.json
+++ b/sdk/synapse/arm-synapse/package.json
@@ -2,10 +2,11 @@
"name": "@azure/arm-synapse",
"author": "Microsoft Corporation",
"description": "SynapseManagementClient Library with typescript type definitions for node.js and browser.",
- "version": "5.1.0",
+ "version": "5.2.0",
"dependencies": {
- "@azure/ms-rest-azure-js": "^2.0.1",
- "@azure/ms-rest-js": "^2.0.4",
+ "@azure/ms-rest-azure-js": "^2.1.0",
+ "@azure/ms-rest-js": "^2.2.0",
+ "@azure/core-auth": "^1.1.4",
"tslib": "^1.10.0"
},
"keywords": [
@@ -20,7 +21,7 @@
"module": "./esm/synapseManagementClient.js",
"types": "./esm/synapseManagementClient.d.ts",
"devDependencies": {
- "typescript": "^3.5.3",
+ "typescript": "^3.6.0",
"rollup": "^1.18.0",
"rollup-plugin-node-resolve": "^5.2.0",
"rollup-plugin-sourcemaps": "^0.4.2",
diff --git a/sdk/synapse/arm-synapse/src/synapseManagementClient.ts b/sdk/synapse/arm-synapse/src/synapseManagementClient.ts
index b2adedb6fd50..1c289b9a605d 100644
--- a/sdk/synapse/arm-synapse/src/synapseManagementClient.ts
+++ b/sdk/synapse/arm-synapse/src/synapseManagementClient.ts
@@ -8,6 +8,7 @@
*/
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as Models from "./models";
import * as Mappers from "./models/mappers";
import * as operations from "./operations";
@@ -80,11 +81,16 @@ class SynapseManagementClient extends SynapseManagementClientContext {
/**
* Initializes a new instance of the SynapseManagementClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The ID of the target subscription.
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.SynapseManagementClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.SynapseManagementClientOptions) {
super(credentials, subscriptionId, options);
this.bigDataPools = new operations.BigDataPools(this);
this.operations = new operations.Operations(this);
diff --git a/sdk/synapse/arm-synapse/src/synapseManagementClientContext.ts b/sdk/synapse/arm-synapse/src/synapseManagementClientContext.ts
index 5e44f5084cde..9274fc474b11 100644
--- a/sdk/synapse/arm-synapse/src/synapseManagementClientContext.ts
+++ b/sdk/synapse/arm-synapse/src/synapseManagementClientContext.ts
@@ -9,23 +9,29 @@
import * as Models from "./models";
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as msRestAzure from "@azure/ms-rest-azure-js";
const packageName = "@azure/arm-synapse";
-const packageVersion = "5.1.0";
+const packageVersion = "5.2.0";
export class SynapseManagementClientContext extends msRestAzure.AzureServiceClient {
- credentials: msRest.ServiceClientCredentials;
+ credentials: msRest.ServiceClientCredentials | TokenCredential;
subscriptionId: string;
apiVersion?: string;
/**
* Initializes a new instance of the SynapseManagementClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The ID of the target subscription.
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.SynapseManagementClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.SynapseManagementClientOptions) {
if (credentials == undefined) {
throw new Error('\'credentials\' cannot be null.');
}
diff --git a/sdk/timeseriesinsights/arm-timeseriesinsights/README.md b/sdk/timeseriesinsights/arm-timeseriesinsights/README.md
index 06b870353566..6076933bd31b 100644
--- a/sdk/timeseriesinsights/arm-timeseriesinsights/README.md
+++ b/sdk/timeseriesinsights/arm-timeseriesinsights/README.md
@@ -1,90 +1,100 @@
## Azure TimeSeriesInsightsClient SDK for JavaScript
-This package contains an isomorphic SDK for TimeSeriesInsightsClient.
+This package contains an isomorphic SDK (runs both in Node.js and in browsers) for TimeSeriesInsightsClient.
### Currently supported environments
-- Node.js version 6.x.x or higher
-- Browser JavaScript
+- [LTS versions of Node.js](https://nodejs.org/about/releases/)
+- Latest versions of Safari, Chrome, Edge, and Firefox.
-### How to Install
+### Prerequisites
+You must have an [Azure subscription](https://azure.microsoft.com/free/).
+
+### How to install
+
+To use this SDK in your project, you will need to install two packages.
+- `@azure/arm-timeseriesinsights` that contains the client.
+- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory.
+
+Install both packages using the below command:
```bash
-npm install @azure/arm-timeseriesinsights
+npm install --save @azure/arm-timeseriesinsights @azure/identity
```
+> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features.
+If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options.
+
### How to use
-#### nodejs - Authentication, client creation and list operations as an example written in TypeScript.
+- If you are writing a client side browser application,
+ - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions.
+ - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below.
+- If you are writing a server side application,
+ - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples)
+ - Complete the set up steps required by the credential if any.
+ - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below.
-##### Install @azure/ms-rest-nodeauth
+In the below samples, we pass the credential and the Azure subscription id to instantiate the client.
+Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started.
-- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`.
-```bash
-npm install @azure/ms-rest-nodeauth@"^3.0.0"
-```
+#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript.
##### Sample code
-```typescript
-import * as msRest from "@azure/ms-rest-js";
-import * as msRestAzure from "@azure/ms-rest-azure-js";
-import * as msRestNodeAuth from "@azure/ms-rest-nodeauth";
-import { TimeSeriesInsightsClient, TimeSeriesInsightsModels, TimeSeriesInsightsMappers } from "@azure/arm-timeseriesinsights";
+```javascript
+const { DefaultAzureCredential } = require("@azure/identity");
+const { TimeSeriesInsightsClient } = require("@azure/arm-timeseriesinsights");
const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
-msRestNodeAuth.interactiveLogin().then((creds) => {
- const client = new TimeSeriesInsightsClient(creds, subscriptionId);
- client.operations.list().then((result) => {
- console.log("The result is:");
- console.log(result);
- });
+// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples
+// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead.
+const creds = new DefaultAzureCredential();
+const client = new TimeSeriesInsightsClient(creds, subscriptionId);
+
+client.operations.list().then((result) => {
+ console.log("The result is:");
+ console.log(result);
}).catch((err) => {
+ console.log("An error occurred:");
console.error(err);
});
```
-#### browser - Authentication, client creation and list operations as an example written in JavaScript.
-
-##### Install @azure/ms-rest-browserauth
+#### browser - Authentication, client creation, and list operations as an example written in JavaScript.
-```bash
-npm install @azure/ms-rest-browserauth
-```
+In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser.
+ - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser.
+ - Note down the client Id from the previous step and use it in the browser sample below.
##### Sample code
-See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser.
-
- index.html
+
```html
@azure/arm-timeseriesinsights sample
-
-
+
diff --git a/sdk/timeseriesinsights/arm-timeseriesinsights/package.json b/sdk/timeseriesinsights/arm-timeseriesinsights/package.json
index d16181f08035..2d7985567227 100644
--- a/sdk/timeseriesinsights/arm-timeseriesinsights/package.json
+++ b/sdk/timeseriesinsights/arm-timeseriesinsights/package.json
@@ -2,10 +2,11 @@
"name": "@azure/arm-timeseriesinsights",
"author": "Microsoft Corporation",
"description": "TimeSeriesInsightsClient Library with typescript type definitions for node.js and browser.",
- "version": "1.2.1",
+ "version": "1.3.0",
"dependencies": {
- "@azure/ms-rest-azure-js": "^2.0.1",
- "@azure/ms-rest-js": "^2.0.4",
+ "@azure/ms-rest-azure-js": "^2.1.0",
+ "@azure/ms-rest-js": "^2.2.0",
+ "@azure/core-auth": "^1.1.4",
"tslib": "^1.10.0"
},
"keywords": [
@@ -20,7 +21,7 @@
"module": "./esm/timeSeriesInsightsClient.js",
"types": "./esm/timeSeriesInsightsClient.d.ts",
"devDependencies": {
- "typescript": "^3.5.3",
+ "typescript": "^3.6.0",
"rollup": "^1.18.0",
"rollup-plugin-node-resolve": "^5.2.0",
"rollup-plugin-sourcemaps": "^0.4.2",
diff --git a/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClient.ts b/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClient.ts
index e42685b68999..92bd53330bd6 100644
--- a/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClient.ts
+++ b/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClient.ts
@@ -9,6 +9,7 @@
*/
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as Models from "./models";
import * as Mappers from "./models/mappers";
import * as operations from "./operations";
@@ -25,11 +26,16 @@ class TimeSeriesInsightsClient extends TimeSeriesInsightsClientContext {
/**
* Initializes a new instance of the TimeSeriesInsightsClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId Azure Subscription ID.
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.TimeSeriesInsightsClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.TimeSeriesInsightsClientOptions) {
super(credentials, subscriptionId, options);
this.operations = new operations.Operations(this);
this.environments = new operations.Environments(this);
diff --git a/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClientContext.ts b/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClientContext.ts
index a472e6cfb5f7..7a3cc5a196fb 100644
--- a/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClientContext.ts
+++ b/sdk/timeseriesinsights/arm-timeseriesinsights/src/timeSeriesInsightsClientContext.ts
@@ -10,23 +10,29 @@
import * as Models from "./models";
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as msRestAzure from "@azure/ms-rest-azure-js";
const packageName = "@azure/arm-timeseriesinsights";
-const packageVersion = "1.2.1";
+const packageVersion = "1.3.0";
export class TimeSeriesInsightsClientContext extends msRestAzure.AzureServiceClient {
- credentials: msRest.ServiceClientCredentials;
+ credentials: msRest.ServiceClientCredentials | TokenCredential;
subscriptionId: string;
apiVersion?: string;
/**
* Initializes a new instance of the TimeSeriesInsightsClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId Azure Subscription ID.
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.TimeSeriesInsightsClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.TimeSeriesInsightsClientOptions) {
if (credentials == undefined) {
throw new Error('\'credentials\' cannot be null.');
}
diff --git a/sdk/visualstudio/arm-visualstudio/README.md b/sdk/visualstudio/arm-visualstudio/README.md
index 668b7d702b16..5b43aff9aa0b 100644
--- a/sdk/visualstudio/arm-visualstudio/README.md
+++ b/sdk/visualstudio/arm-visualstudio/README.md
@@ -1,89 +1,100 @@
## Azure VisualStudioResourceProviderClient SDK for JavaScript
-This package contains an isomorphic SDK for VisualStudioResourceProviderClient.
+This package contains an isomorphic SDK (runs both in Node.js and in browsers) for VisualStudioResourceProviderClient.
### Currently supported environments
-- Node.js version 6.x.x or higher
-- Browser JavaScript
+- [LTS versions of Node.js](https://nodejs.org/about/releases/)
+- Latest versions of Safari, Chrome, Edge, and Firefox.
-### How to Install
+### Prerequisites
-```
-npm install @azure/arm-visualstudio
+You must have an [Azure subscription](https://azure.microsoft.com/free/).
+
+### How to install
+
+To use this SDK in your project, you will need to install two packages.
+- `@azure/arm-visualstudio` that contains the client.
+- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory.
+
+Install both packages using the below command:
+```bash
+npm install --save @azure/arm-visualstudio @azure/identity
```
+> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features.
+If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options.
+
### How to use
-#### nodejs - Authentication, client creation and list operations as an example written in TypeScript.
+- If you are writing a client side browser application,
+ - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions.
+ - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below.
+- If you are writing a server side application,
+ - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples)
+ - Complete the set up steps required by the credential if any.
+ - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below.
-##### Install @azure/ms-rest-nodeauth
+In the below samples, we pass the credential and the Azure subscription id to instantiate the client.
+Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started.
-```
-npm install @azure/ms-rest-nodeauth
-```
+#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript.
##### Sample code
-```ts
-import * as msRest from "@azure/ms-rest-js";
-import * as msRestAzure from "@azure/ms-rest-azure-js";
-import * as msRestNodeAuth from "@azure/ms-rest-nodeauth";
-import { VisualStudioResourceProviderClient, VisualStudioResourceProviderModels, VisualStudioResourceProviderMappers } from "@azure/arm-visualstudio";
+```javascript
+const { DefaultAzureCredential } = require("@azure/identity");
+const { VisualStudioResourceProviderClient } = require("@azure/arm-visualstudio");
const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
-msRestNodeAuth.interactiveLogin().then((creds) => {
- const client = new VisualStudioResourceProviderClient(creds, subscriptionId);
- client.operations.list().then((result) => {
- console.log("The result is:");
- console.log(result);
- });
+// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples
+// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead.
+const creds = new DefaultAzureCredential();
+const client = new VisualStudioResourceProviderClient(creds, subscriptionId);
+
+client.operations.list().then((result) => {
+ console.log("The result is:");
+ console.log(result);
}).catch((err) => {
+ console.log("An error occurred:");
console.error(err);
});
```
-#### browser - Authentication, client creation and list operations as an example written in JavaScript.
-
-##### Install @azure/ms-rest-browserauth
+#### browser - Authentication, client creation, and list operations as an example written in JavaScript.
-```
-npm install @azure/ms-rest-browserauth
-```
+In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser.
+ - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser.
+ - Note down the client Id from the previous step and use it in the browser sample below.
##### Sample code
-See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser.
-
- index.html
+
```html
@azure/arm-visualstudio sample
-
-
+
@@ -95,5 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to
- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js)
-
-![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fvisualstudio%2Farm-visualstudio%2FREADME.png)
+![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/visualstudio/arm-visualstudio/README.png)
diff --git a/sdk/visualstudio/arm-visualstudio/package.json b/sdk/visualstudio/arm-visualstudio/package.json
index e5a4f09f2f82..1f69fe3a0500 100644
--- a/sdk/visualstudio/arm-visualstudio/package.json
+++ b/sdk/visualstudio/arm-visualstudio/package.json
@@ -2,10 +2,11 @@
"name": "@azure/arm-visualstudio",
"author": "Microsoft Corporation",
"description": "VisualStudioResourceProviderClient Library with typescript type definitions for node.js and browser.",
- "version": "2.2.0",
+ "version": "2.3.0",
"dependencies": {
- "@azure/ms-rest-azure-js": "^1.1.0",
- "@azure/ms-rest-js": "^1.1.0",
+ "@azure/ms-rest-azure-js": "^1.4.0",
+ "@azure/ms-rest-js": "^1.11.0",
+ "@azure/core-auth": "^1.1.4",
"tslib": "^1.9.3"
},
"keywords": [
@@ -20,7 +21,7 @@
"module": "./esm/visualStudioResourceProviderClient.js",
"types": "./esm/visualStudioResourceProviderClient.d.ts",
"devDependencies": {
- "typescript": "^3.1.1",
+ "typescript": "^3.6.0",
"rollup": "^0.66.2",
"rollup-plugin-node-resolve": "^3.4.0",
"uglify-js": "^3.4.9"
diff --git a/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClient.ts b/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClient.ts
index f96554b8c9e7..0e47cd85f7c0 100644
--- a/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClient.ts
+++ b/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClient.ts
@@ -9,6 +9,7 @@
*/
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as Models from "./models";
import * as Mappers from "./models/mappers";
import * as operations from "./operations";
@@ -24,11 +25,16 @@ class VisualStudioResourceProviderClient extends VisualStudioResourceProviderCli
/**
* Initializes a new instance of the VisualStudioResourceProviderClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The Azure subscription identifier.
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.VisualStudioResourceProviderClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.VisualStudioResourceProviderClientOptions) {
super(credentials, subscriptionId, options);
this.operations = new operations.Operations(this);
this.accounts = new operations.Accounts(this);
diff --git a/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClientContext.ts b/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClientContext.ts
index 92491e79696f..736d63d2a3b5 100644
--- a/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClientContext.ts
+++ b/sdk/visualstudio/arm-visualstudio/src/visualStudioResourceProviderClientContext.ts
@@ -10,23 +10,29 @@
import * as Models from "./models";
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as msRestAzure from "@azure/ms-rest-azure-js";
const packageName = "@azure/arm-visualstudio";
-const packageVersion = "0.1.0";
+const packageVersion = "2.3.0";
export class VisualStudioResourceProviderClientContext extends msRestAzure.AzureServiceClient {
- credentials: msRest.ServiceClientCredentials;
+ credentials: msRest.ServiceClientCredentials | TokenCredential;
subscriptionId: string;
apiVersion?: string;
/**
* Initializes a new instance of the VisualStudioResourceProviderClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The Azure subscription identifier.
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.VisualStudioResourceProviderClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, options?: Models.VisualStudioResourceProviderClientOptions) {
if (credentials == undefined) {
throw new Error('\'credentials\' cannot be null.');
}
diff --git a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/README.md b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/README.md
index a5d845825218..7fe7e0ea23d6 100644
--- a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/README.md
+++ b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/README.md
@@ -1,90 +1,100 @@
## Azure VMwareCloudSimpleClient SDK for JavaScript
-This package contains an isomorphic SDK for VMwareCloudSimpleClient.
+This package contains an isomorphic SDK (runs both in Node.js and in browsers) for VMwareCloudSimpleClient.
### Currently supported environments
-- Node.js version 6.x.x or higher
-- Browser JavaScript
+- [LTS versions of Node.js](https://nodejs.org/about/releases/)
+- Latest versions of Safari, Chrome, Edge, and Firefox.
-### How to Install
+### Prerequisites
+You must have an [Azure subscription](https://azure.microsoft.com/free/).
+
+### How to install
+
+To use this SDK in your project, you will need to install two packages.
+- `@azure/arm-vmwarecloudsimple` that contains the client.
+- `@azure/identity` that provides different mechanisms for the client to authenticate your requests using Azure Active Directory.
+
+Install both packages using the below command:
```bash
-npm install @azure/arm-vmwarecloudsimple
+npm install --save @azure/arm-vmwarecloudsimple @azure/identity
```
+> **Note**: You may have used either `@azure/ms-rest-nodeauth` or `@azure/ms-rest-browserauth` in the past. These packages are in maintenance mode receiving critical bug fixes, but no new features.
+If you are on a [Node.js that has LTS status](https://nodejs.org/about/releases/), or are writing a client side browser application, we strongly encourage you to upgrade to `@azure/identity` which uses the latest versions of Azure Active Directory and MSAL APIs and provides more authentication options.
+
### How to use
-#### nodejs - Authentication, client creation and list operations as an example written in TypeScript.
+- If you are writing a client side browser application,
+ - Follow the instructions in the section on Authenticating client side browser applications in [Azure Identity examples](https://aka.ms/azsdk/js/identity/examples) to register your application in the Microsoft identity platform and set the right permissions.
+ - Copy the client ID and tenant ID from the Overview section of your app registration in Azure portal and use it in the browser sample below.
+- If you are writing a server side application,
+ - [Select a credential from `@azure/identity` based on the authentication method of your choice](https://aka.ms/azsdk/js/identity/examples)
+ - Complete the set up steps required by the credential if any.
+ - Use the credential you picked in the place of `DefaultAzureCredential` in the Node.js sample below.
-##### Install @azure/ms-rest-nodeauth
+In the below samples, we pass the credential and the Azure subscription id to instantiate the client.
+Once the client is created, explore the operations on it either in your favorite editor or in our [API reference documentation](https://docs.microsoft.com/javascript/api) to get started.
-- Please install minimum version of `"@azure/ms-rest-nodeauth": "^3.0.0"`.
-```bash
-npm install @azure/ms-rest-nodeauth@"^3.0.0"
-```
+#### nodejs - Authentication, client creation, and list operations as an example written in JavaScript.
##### Sample code
-```typescript
-import * as msRest from "@azure/ms-rest-js";
-import * as msRestAzure from "@azure/ms-rest-azure-js";
-import * as msRestNodeAuth from "@azure/ms-rest-nodeauth";
-import { VMwareCloudSimpleClient, VMwareCloudSimpleModels, VMwareCloudSimpleMappers } from "@azure/arm-vmwarecloudsimple";
+```javascript
+const { DefaultAzureCredential } = require("@azure/identity");
+const { VMwareCloudSimpleClient } = require("@azure/arm-vmwarecloudsimple");
const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
-msRestNodeAuth.interactiveLogin().then((creds) => {
- const client = new VMwareCloudSimpleClient(creds, subscriptionId);
- client.operations.list().then((result) => {
- console.log("The result is:");
- console.log(result);
- });
+// Use `DefaultAzureCredential` or any other credential of your choice based on https://aka.ms/azsdk/js/identity/examples
+// Please note that you can also use credentials from the `@azure/ms-rest-nodeauth` package instead.
+const creds = new DefaultAzureCredential();
+const client = new VMwareCloudSimpleClient(creds, subscriptionId);
+
+client.operations.list().then((result) => {
+ console.log("The result is:");
+ console.log(result);
}).catch((err) => {
+ console.log("An error occurred:");
console.error(err);
});
```
-#### browser - Authentication, client creation and list operations as an example written in JavaScript.
-
-##### Install @azure/ms-rest-browserauth
+#### browser - Authentication, client creation, and list operations as an example written in JavaScript.
-```bash
-npm install @azure/ms-rest-browserauth
-```
+In browser applications, we recommend using the `InteractiveBrowserCredential` that interactively authenticates using the default system browser.
+ - See [Single-page application: App registration guide](https://docs.microsoft.com/azure/active-directory/develop/scenario-spa-app-registration) to configure your app registration for the browser.
+ - Note down the client Id from the previous step and use it in the browser sample below.
##### Sample code
-See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser.
-
- index.html
+
```html
@azure/arm-vmwarecloudsimple sample
-
-
+
@@ -96,4 +106,4 @@ See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to
- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js)
-![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js%2Fsdk%2Fvmwarecloudsimple%2Farm-vmwarecloudsimple%2FREADME.png)
+![Impressions](https://azure-sdk-impressions.azurewebsites.net/api/impressions/azure-sdk-for-js/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/README.png)
diff --git a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/package.json b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/package.json
index 2c614357cfc1..5ddf8b14ee49 100644
--- a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/package.json
+++ b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/package.json
@@ -2,10 +2,11 @@
"name": "@azure/arm-vmwarecloudsimple",
"author": "Microsoft Corporation",
"description": "VMwareCloudSimpleClient Library with typescript type definitions for node.js and browser.",
- "version": "1.0.0",
+ "version": "1.1.0",
"dependencies": {
- "@azure/ms-rest-azure-js": "^2.0.1",
- "@azure/ms-rest-js": "^2.0.4",
+ "@azure/ms-rest-azure-js": "^2.1.0",
+ "@azure/ms-rest-js": "^2.2.0",
+ "@azure/core-auth": "^1.1.4",
"tslib": "^1.10.0"
},
"keywords": [
@@ -20,7 +21,7 @@
"module": "./esm/vMwareCloudSimpleClient.js",
"types": "./esm/vMwareCloudSimpleClient.d.ts",
"devDependencies": {
- "typescript": "^3.5.3",
+ "typescript": "^3.6.0",
"rollup": "^1.18.0",
"rollup-plugin-node-resolve": "^5.2.0",
"rollup-plugin-sourcemaps": "^0.4.2",
diff --git a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClient.ts b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClient.ts
index dfebce6d20b3..b30d98c95adf 100644
--- a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClient.ts
+++ b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClient.ts
@@ -9,6 +9,7 @@
*/
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as Models from "./models";
import * as Mappers from "./models/mappers";
import * as operations from "./operations";
@@ -30,12 +31,17 @@ class VMwareCloudSimpleClient extends VMwareCloudSimpleClientContext {
/**
* Initializes a new instance of the VMwareCloudSimpleClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The subscription ID.
* @param referer referer url
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, referer: string, options?: Models.VMwareCloudSimpleClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, referer: string, options?: Models.VMwareCloudSimpleClientOptions) {
super(credentials, subscriptionId, referer, options);
this.operations = new operations.Operations(this);
this.dedicatedCloudNodes = new operations.DedicatedCloudNodes(this);
diff --git a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClientContext.ts b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClientContext.ts
index 4110fc980a0a..735cf0f942e7 100644
--- a/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClientContext.ts
+++ b/sdk/vmwarecloudsimple/arm-vmwarecloudsimple/src/vMwareCloudSimpleClientContext.ts
@@ -10,25 +10,31 @@
import * as Models from "./models";
import * as msRest from "@azure/ms-rest-js";
+import { TokenCredential } from "@azure/core-auth";
import * as msRestAzure from "@azure/ms-rest-azure-js";
const packageName = "@azure/arm-vmwarecloudsimple";
-const packageVersion = "1.0.0";
+const packageVersion = "1.1.0";
export class VMwareCloudSimpleClientContext extends msRestAzure.AzureServiceClient {
- credentials: msRest.ServiceClientCredentials;
+ credentials: msRest.ServiceClientCredentials | TokenCredential;
subscriptionId: string;
apiVersion?: string;
referer: string;
/**
* Initializes a new instance of the VMwareCloudSimpleClient class.
- * @param credentials Credentials needed for the client to connect to Azure.
+ * @param credentials Credentials needed for the client to connect to Azure. Credentials
+ * implementing the TokenCredential interface from the @azure/identity package are recommended. For
+ * more information about these credentials, see
+ * {@link https://www.npmjs.com/package/@azure/identity}. Credentials implementing the
+ * ServiceClientCredentials interface from the older packages @azure/ms-rest-nodeauth and
+ * @azure/ms-rest-browserauth are also supported.
* @param subscriptionId The subscription ID.
* @param referer referer url
* @param [options] The parameter options
*/
- constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, referer: string, options?: Models.VMwareCloudSimpleClientOptions) {
+ constructor(credentials: msRest.ServiceClientCredentials | TokenCredential, subscriptionId: string, referer: string, options?: Models.VMwareCloudSimpleClientOptions) {
if (credentials == undefined) {
throw new Error('\'credentials\' cannot be null.');
}