Skip to content

Commit b434d1b

Browse files
authored
[formrecognizer] Update formrecognizer projects to use snippets extraction (#32885)
### Packages impacted by this PR - @azure/ai-form-recognizer ### Issues associated with this PR - #32416 ### Describe the problem that is addressed by this PR Updates all projects under `formrecognizer` to use snippets extraction. ### What are the possible designs available to address the problem? If there are more than one possible design, why was the one in this PR chosen? ### Are there test cases added in this PR? _(If not, why?)_ ### Provide a list of related PRs _(if any)_ ### Command used to generate this PR:**_(Applicable only to SDK release request PRs)_ ### Checklists - [ ] Added impacted package name to the issue description - [ ] Does this PR needs any fixes in the SDK Generator?** _(If so, create an Issue in the [Autorest/typescript](https://github.com/Azure/autorest.typescript) repository and link it here)_ - [ ] Added a changelog (if necessary)
1 parent eadcea8 commit b434d1b

File tree

137 files changed

+1971
-1001
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

137 files changed

+1971
-1001
lines changed

sdk/formrecognizer/ai-form-recognizer/README.md

+292-330
Large diffs are not rendered by default.

sdk/formrecognizer/ai-form-recognizer/TROUBLESHOOTING.md

+2-4
Original file line numberDiff line numberDiff line change
@@ -117,15 +117,13 @@ For information about the error messages and codes produced by the Document Inte
117117

118118
Enabling logging may help uncover useful information about failures. In order to see a log of HTTP requests and responses, set the `AZURE_LOG_LEVEL` environment variable to `info`. Alternatively, logging can be enabled at runtime by calling `setLogLevel` in the `@azure/logger`:
119119

120-
```javascript
121-
const { setLogLevel } = require("@azure/logger");
120+
```ts snippet:SetLogLevel
121+
import { setLogLevel } from "@azure/logger";
122122

123123
setLogLevel("info");
124124
```
125125

126126
For more detailed instructions on how to enable logs, you can look at the [@azure/logger package docs](https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/core/logger).
127127

128-
129-
130128
[`resterror`]: https://github.com/Azure/azure-sdk-for-js/blob/main/sdk/core/core-rest-pipeline/src/restError.ts
131129
[fr-errors]: https://aka.ms/azsdk/formrecognizer/errors

sdk/formrecognizer/ai-form-recognizer/package.json

+18-17
Original file line numberDiff line numberDiff line change
@@ -68,41 +68,41 @@
6868
"unit-test": "npm run unit-test:node && npm run unit-test:browser",
6969
"unit-test:browser": "npm run clean && dev-tool run build-package && dev-tool run build-test && dev-tool run test:vitest --browser",
7070
"unit-test:node": "dev-tool run test:vitest",
71-
"update-snippets": "echo skipped"
71+
"update-snippets": "dev-tool run update-snippets"
7272
},
7373
"sideEffects": false,
7474
"autoPublish": false,
7575
"prettier": "@azure/eslint-plugin-azure-sdk/prettier.json",
7676
"dependencies": {
77-
"@azure/abort-controller": "^2.0.0",
78-
"@azure/core-auth": "^1.3.0",
79-
"@azure/core-client": "^1.0.0",
77+
"@azure/abort-controller": "^2.1.2",
78+
"@azure/core-auth": "^1.9.0",
79+
"@azure/core-client": "^1.9.2",
8080
"@azure/core-lro": "^2.2.0",
81-
"@azure/core-paging": "^1.1.1",
82-
"@azure/core-rest-pipeline": "^1.1.0",
83-
"@azure/core-tracing": "^1.0.0",
84-
"@azure/logger": "^1.0.0",
85-
"tslib": "^2.2.0"
81+
"@azure/core-paging": "^1.6.2",
82+
"@azure/core-rest-pipeline": "^1.19.0",
83+
"@azure/core-tracing": "^1.2.0",
84+
"@azure/logger": "^1.1.4",
85+
"tslib": "^2.8.1"
8686
},
8787
"devDependencies": {
8888
"@azure-tools/test-credential": "^2.0.0",
8989
"@azure-tools/test-recorder": "^4.1.0",
9090
"@azure-tools/test-utils-vitest": "^1.0.0",
9191
"@azure/dev-tool": "^1.0.0",
9292
"@azure/eslint-plugin-azure-sdk": "^3.0.0",
93-
"@azure/identity": "^4.0.1",
93+
"@azure/identity": "^4.7.0",
9494
"@rollup/plugin-node-resolve": "^15.0.0",
9595
"@types/node": "^18.0.0",
96-
"@vitest/browser": "^3.0.3",
97-
"@vitest/coverage-istanbul": "^3.0.3",
96+
"@vitest/browser": "^3.0.6",
97+
"@vitest/coverage-istanbul": "^3.0.6",
9898
"dotenv": "^16.0.0",
9999
"eslint": "^9.9.0",
100100
"magic-string": "~0.30.10",
101-
"playwright": "^1.49.0",
101+
"playwright": "^1.50.1",
102102
"prettier": "^3.3.3",
103103
"rollup": "^4.0.0",
104104
"typescript": "~5.7.2",
105-
"vitest": "^3.0.3"
105+
"vitest": "^3.0.6"
106106
},
107107
"//sampleConfiguration": {
108108
"skip": [
@@ -157,6 +157,7 @@
157157
},
158158
"type": "module",
159159
"tshy": {
160+
"project": "./tsconfig.src.json",
160161
"exports": {
161162
"./package.json": "./package.json",
162163
".": "./src/index.ts"
@@ -169,8 +170,7 @@
169170
"browser",
170171
"react-native"
171172
],
172-
"selfLink": false,
173-
"project": "./tsconfig.src.json"
173+
"selfLink": false
174174
},
175175
"browser": "./dist/browser/index.js",
176176
"exports": {
@@ -193,5 +193,6 @@
193193
"default": "./dist/commonjs/index.js"
194194
}
195195
}
196-
}
196+
},
197+
"react-native": "./dist/react-native/index.js"
197198
}

sdk/formrecognizer/ai-form-recognizer/samples-dev/analyzeBusinessCard.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,9 @@ import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recog
1818

1919
import { PrebuiltBusinessCardModel } from "./prebuilt/prebuilt-businessCard.js";
2020

21-
import * as dotenv from "dotenv";
22-
dotenv.config();
21+
import "dotenv/config";
2322

24-
async function main() {
23+
async function main(): Promise<void> {
2524
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2625
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2726

sdk/formrecognizer/ai-form-recognizer/samples-dev/analyzeDocumentByModelId.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010

1111
import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recognizer";
1212

13-
import * as dotenv from "dotenv";
14-
dotenv.config();
13+
import "dotenv/config";
1514

16-
async function main() {
15+
async function main(): Promise<void> {
1716
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1817
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1918
const client = new DocumentAnalysisClient(endpoint, credential);

sdk/formrecognizer/ai-form-recognizer/samples-dev/analyzeIdentityDocument.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,9 @@ import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recog
1818

1919
import { PrebuiltIdDocumentModel } from "./prebuilt/prebuilt-idDocument.js";
2020

21-
import * as dotenv from "dotenv";
22-
dotenv.config();
21+
import "dotenv/config";
2322

24-
async function main() {
23+
async function main(): Promise<void> {
2524
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2625
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2726

sdk/formrecognizer/ai-form-recognizer/samples-dev/analyzeInvoice.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,9 @@ import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recog
1717

1818
import { PrebuiltInvoiceModel } from "./prebuilt/prebuilt-invoice.js";
1919

20-
import * as dotenv from "dotenv";
21-
dotenv.config();
20+
import "dotenv/config";
2221

23-
async function main() {
22+
async function main(): Promise<void> {
2423
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2524
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2625

sdk/formrecognizer/ai-form-recognizer/samples-dev/analyzeReceipt.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -17,10 +17,9 @@ import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recog
1717

1818
import { PrebuiltReceiptModel } from "./prebuilt/prebuilt-receipt.js";
1919

20-
import * as dotenv from "dotenv";
21-
dotenv.config();
20+
import "dotenv/config";
2221

23-
async function main() {
22+
async function main(): Promise<void> {
2423
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2524
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2625

sdk/formrecognizer/ai-form-recognizer/samples-dev/analyzeReceiptByModelId.ts

+5-7
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,16 @@
1414
* @summary use the "prebuilt-receipt" model ID to extract data from a receipt document (weakly-typed)
1515
*/
1616

17-
import {
18-
AzureKeyCredential,
19-
DocumentAnalysisClient,
17+
import type {
2018
DocumentArrayField,
2119
DocumentObjectField,
2220
DocumentStringField,
2321
} from "@azure/ai-form-recognizer";
22+
import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recognizer";
2423

25-
import * as dotenv from "dotenv";
26-
dotenv.config();
24+
import "dotenv/config";
2725

28-
async function main() {
26+
async function main(): Promise<void> {
2927
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
3028
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
3129

@@ -36,7 +34,7 @@ async function main() {
3634
// The Document Intelligence service will access the following URL to a receipt image and extract data from it
3735
"https://raw.githubusercontent.com/Azure/azure-sdk-for-js/main/sdk/formrecognizer/ai-form-recognizer/assets/receipt/contoso-receipt.png",
3836
);
39-
await poller.onProgress((state) => console.log("Operation:", state.modelId, state.status));
37+
poller.onProgress((state) => console.log("Operation:", state.modelId, state.status));
4038

4139
const { documents } = await poller.pollUntilDone();
4240

sdk/formrecognizer/ai-form-recognizer/samples-dev/analyzeW2TaxForm.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -20,10 +20,9 @@ import { PrebuiltTaxUsW2Model } from "./prebuilt/prebuilt-tax.us.w2.js";
2020
import fs from "node:fs";
2121
import path from "node:path";
2222

23-
import * as dotenv from "dotenv";
24-
dotenv.config();
23+
import "dotenv/config";
2524

26-
async function main() {
25+
async function main(): Promise<void> {
2726
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2827
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2928

sdk/formrecognizer/ai-form-recognizer/samples-dev/buildClassifier.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,9 @@
1515

1616
import { AzureKeyCredential, DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
1717

18-
import * as dotenv from "dotenv";
19-
dotenv.config();
18+
import "dotenv/config";
2019

21-
async function main() {
20+
async function main(): Promise<void> {
2221
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2322
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2423

sdk/formrecognizer/ai-form-recognizer/samples-dev/buildModel.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,9 @@ import {
1919
DocumentModelBuildMode,
2020
} from "@azure/ai-form-recognizer";
2121

22-
import * as dotenv from "dotenv";
23-
dotenv.config();
22+
import "dotenv/config";
2423

25-
async function main() {
24+
async function main(): Promise<void> {
2625
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2726
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2827

sdk/formrecognizer/ai-form-recognizer/samples-dev/classifyDocument.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,9 @@
99

1010
import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recognizer";
1111

12-
import * as dotenv from "dotenv";
13-
dotenv.config();
12+
import "dotenv/config";
1413

15-
async function main() {
14+
async function main(): Promise<void> {
1615
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1716
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1817

sdk/formrecognizer/ai-form-recognizer/samples-dev/composeModel.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,9 @@ import {
1818
DocumentModelBuildMode,
1919
} from "@azure/ai-form-recognizer";
2020

21-
import * as dotenv from "dotenv";
22-
dotenv.config();
21+
import "dotenv/config";
2322

24-
export async function main() {
23+
export async function main(): Promise<void> {
2524
// You will need to set these environment variables or edit the following values
2625
const endpoint = process.env["FORM_RECOGNIZER_ENDPOINT"] || "<cognitive services endpoint>";
2726
const apiKey = process.env["FORM_RECOGNIZER_API_KEY"] || "<api key>";

sdk/formrecognizer/ai-form-recognizer/samples-dev/copyModel.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010

1111
import { AzureKeyCredential, DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
1212

13-
import * as dotenv from "dotenv";
14-
dotenv.config();
13+
import "dotenv/config";
1514

16-
async function main() {
15+
async function main(): Promise<void> {
1716
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1817
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1918

sdk/formrecognizer/ai-form-recognizer/samples-dev/extractGeneralDocument.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,9 @@ import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recog
1313

1414
import { PrebuiltDocumentModel } from "./prebuilt/prebuilt-document.js";
1515

16-
import * as dotenv from "dotenv";
17-
dotenv.config();
16+
import "dotenv/config";
1817

19-
async function main() {
18+
async function main(): Promise<void> {
2019
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2120
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2221

sdk/formrecognizer/ai-form-recognizer/samples-dev/extractLayout.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -14,10 +14,9 @@ import { AzureKeyCredential, DocumentAnalysisClient } from "@azure/ai-form-recog
1414

1515
import { PrebuiltLayoutModel } from "./prebuilt/prebuilt-layout.js";
1616

17-
import * as dotenv from "dotenv";
18-
dotenv.config();
17+
import "dotenv/config";
1918

20-
async function main() {
19+
async function main(): Promise<void> {
2120
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
2221
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
2322

sdk/formrecognizer/ai-form-recognizer/samples-dev/getClassifier.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010

1111
import { AzureKeyCredential, DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
1212

13-
import * as dotenv from "dotenv";
14-
dotenv.config();
13+
import "dotenv/config";
1514

16-
async function main() {
15+
async function main(): Promise<void> {
1716
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1817
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1918

sdk/formrecognizer/ai-form-recognizer/samples-dev/getInfo.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010

1111
import { AzureKeyCredential, DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
1212

13-
import * as dotenv from "dotenv";
14-
dotenv.config();
13+
import "dotenv/config";
1514

16-
async function main() {
15+
async function main(): Promise<void> {
1716
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1817
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1918

sdk/formrecognizer/ai-form-recognizer/samples-dev/getModel.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,9 @@
1010

1111
import { AzureKeyCredential, DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
1212

13-
import * as dotenv from "dotenv";
14-
dotenv.config();
13+
import "dotenv/config";
1514

16-
async function main() {
15+
async function main(): Promise<void> {
1716
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1817
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1918

sdk/formrecognizer/ai-form-recognizer/samples-dev/listClassifiers.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,9 @@
99

1010
import { AzureKeyCredential, DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
1111

12-
import * as dotenv from "dotenv";
13-
dotenv.config();
12+
import "dotenv/config";
1413

15-
async function main() {
14+
async function main(): Promise<void> {
1615
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1716
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1817

sdk/formrecognizer/ai-form-recognizer/samples-dev/listModels.ts

+2-3
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,9 @@
99

1010
import { AzureKeyCredential, DocumentModelAdministrationClient } from "@azure/ai-form-recognizer";
1111

12-
import * as dotenv from "dotenv";
13-
dotenv.config();
12+
import "dotenv/config";
1413

15-
async function main() {
14+
async function main(): Promise<void> {
1615
const endpoint = process.env.FORM_RECOGNIZER_ENDPOINT || "<endpoint>";
1716
const credential = new AzureKeyCredential(process.env.FORM_RECOGNIZER_API_KEY || "<api key>");
1817

sdk/formrecognizer/ai-form-recognizer/samples-dev/prebuilt/prebuilt-businessCard.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -135,7 +135,7 @@ export interface BusinessCardContactNamesElement {
135135
/**
136136
* The raw model schema.
137137
*/
138-
function modelInfo() {
138+
function modelInfo(): any {
139139
return {
140140
modelId: "prebuilt-businessCard",
141141
description: "Extract key information from business cards.",

sdk/formrecognizer/ai-form-recognizer/samples-dev/prebuilt/prebuilt-document.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@ export interface PrebuiltDocumentResult extends fr.AnalyzeResultCommon {
5050
/**
5151
* The raw model schema.
5252
*/
53-
function modelInfo() {
53+
function modelInfo(): any {
5454
return {
5555
modelId: "prebuilt-document",
5656
description: "Extract text, layout, entities, and general key-value pairs from documents.",

sdk/formrecognizer/ai-form-recognizer/samples-dev/prebuilt/prebuilt-healthInsuranceCard.us.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -279,7 +279,7 @@ export interface HealthInsuranceCardUsMedicareMedicaidInfo {
279279
/**
280280
* The raw model schema.
281281
*/
282-
function modelInfo() {
282+
function modelInfo(): any {
283283
return {
284284
modelId: "prebuilt-healthInsuranceCard.us",
285285
description: "Extract key information from US health insurance cards.",

0 commit comments

Comments
 (0)