From ec72b195506f5fbba6a9a0c344b677fa0e2dcff5 Mon Sep 17 00:00:00 2001 From: SDK Automation Date: Wed, 31 Jul 2019 00:15:21 +0000 Subject: [PATCH] Generated from ae13f3bcaab268fc0365a1e0452535827d2bda64 Update specification/cognitiveservices/data-plane/InkRecognizer/preview/v1.0/InkRecognizer.json Co-Authored-By: Nick Schonning --- .../LICENSE.txt | 21 + .../cognitiveservices-inkrecognizer/README.md | 194 +++++ .../package.json | 57 ++ .../rollup.config.js | 37 + .../src/inkRecognizerClient.ts | 42 ++ .../src/inkRecognizerClientContext.ts | 51 ++ .../src/models/index.ts | 576 +++++++++++++++ .../src/models/inkRecognizerMappers.ts | 23 + .../src/models/mappers.ts | 694 ++++++++++++++++++ .../src/models/parameters.ts | 36 + .../src/operations/index.ts | 11 + .../src/operations/inkRecognizer.ts | 87 +++ .../tsconfig.json | 19 + 13 files changed, 1848 insertions(+) create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/LICENSE.txt create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/README.md create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/package.json create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/rollup.config.js create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClient.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClientContext.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/index.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/inkRecognizerMappers.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/mappers.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/parameters.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/index.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/inkRecognizer.ts create mode 100644 sdk/cognitiveservices/cognitiveservices-inkrecognizer/tsconfig.json diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/LICENSE.txt b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/LICENSE.txt new file mode 100644 index 000000000000..b73b4a1293c3 --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/LICENSE.txt @@ -0,0 +1,21 @@ +The MIT License (MIT) + +Copyright (c) 2019 Microsoft + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/README.md b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/README.md new file mode 100644 index 000000000000..3029615cb09b --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/README.md @@ -0,0 +1,194 @@ +## An isomorphic javascript sdk for - InkRecognizerClient + +This package contains an isomorphic SDK for InkRecognizerClient. + +### Currently supported environments + +- Node.js version 6.x.x or higher +- Browser JavaScript + +### How to Install + +```bash +npm install @azure/cognitiveservices-inkrecognizer +``` + +### How to use + +#### nodejs - Authentication, client creation and recognize inkRecognizer as an example written in TypeScript. + +##### Install @azure/ms-rest-nodeauth + +```bash +npm install @azure/ms-rest-nodeauth +``` + +##### Sample code + +```typescript +import * as msRest from "@azure/ms-rest-js"; +import * as msRestNodeAuth from "@azure/ms-rest-nodeauth"; +import { InkRecognizerClient, InkRecognizerModels, InkRecognizerMappers } from "@azure/cognitiveservices-inkrecognizer"; +const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"]; + +msRestNodeAuth.interactiveLogin().then((creds) => { + const client = new InkRecognizerClient(creds, subscriptionId); + const body: InkRecognizerModels.AnalysisRequest = { + applicationType: "drawing", + inputDeviceKind: "digitizer", + unit: "mm", + unitMultiple: 1.01, + language: "testlanguage", + inkPointValueAttributes: [{ + name: "testname", + logicalMinimum: 1.01, + logicalMaximum: 1.01 + }], + strokes: [{ + id: 1, + language: "testlanguage", + points: [{ + x: 1.01, + y: 1.01, + z: 1.01, + tipPressure: 1.01, + barrelPressure: 1.01, + timestamp: 1.01, + xTilt: 1.01, + yTilt: 1.01, + width: 1.01, + height: 1.01, + tipSwitch: true, + inverted: true, + barrelSwitch: true, + eraser: true, + secondaryTip: true + }], + drawingAttributes: { + width: 1.01, + color: { + r: 1.01, + g: 1.01, + b: 1.01, + a: 1.01 + }, + height: 1.01, + fitToCurve: true, + rasterOp: "noOperation", + ignorePressure: true, + tip: "ellipse" + }, + kind: "inkDrawing" + }] + }; + const xMsClientRequestId = "testxMsClientRequestId"; + client.inkRecognizer.recognize(body, xMsClientRequestId).then((result) => { + console.log("The result is:"); + console.log(result); + }); +}).catch((err) => { + console.error(err); +}); +``` + +#### browser - Authentication, client creation and recognize inkRecognizer as an example written in JavaScript. + +##### Install @azure/ms-rest-browserauth + +```bash +npm install @azure/ms-rest-browserauth +``` + +##### Sample code + +See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser. + +- index.html +```html + + + + @azure/cognitiveservices-inkrecognizer sample + + + + + + + +``` + +## Related projects + +- [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/sdk/cognitiveservices/cognitiveservices-inkrecognizer/README.png) diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/package.json b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/package.json new file mode 100644 index 000000000000..a0c4cb3cbb7e --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/package.json @@ -0,0 +1,57 @@ +{ + "name": "@azure/cognitiveservices-inkrecognizer", + "author": "Microsoft Corporation", + "description": "InkRecognizerClient Library with typescript type definitions for node.js and browser.", + "version": "1.0.0", + "dependencies": { + "@azure/ms-rest-js": "^2.0.3", + "tslib": "^1.10.0" + }, + "keywords": [ + "node", + "azure", + "typescript", + "browser", + "isomorphic" + ], + "license": "MIT", + "main": "./dist/cognitiveservices-inkrecognizer.js", + "module": "./esm/inkRecognizerClient.js", + "types": "./esm/inkRecognizerClient.d.ts", + "devDependencies": { + "typescript": "^3.1.1", + "rollup": "^0.66.2", + "rollup-plugin-node-resolve": "^3.4.0", + "rollup-plugin-sourcemaps": "^0.4.2", + "uglify-js": "^3.4.9" + }, + "homepage": "https://github.com/Azure/azure-sdk-for-js/tree/master/sdk/cognitiveservices/cognitiveservices-inkrecognizer", + "repository": { + "type": "git", + "url": "https://github.com/Azure/azure-sdk-for-js.git" + }, + "bugs": { + "url": "https://github.com/Azure/azure-sdk-for-js/issues" + }, + "files": [ + "dist/**/*.js", + "dist/**/*.js.map", + "dist/**/*.d.ts", + "dist/**/*.d.ts.map", + "esm/**/*.js", + "esm/**/*.js.map", + "esm/**/*.d.ts", + "esm/**/*.d.ts.map", + "src/**/*.ts", + "README.md", + "rollup.config.js", + "tsconfig.json" + ], + "scripts": { + "build": "tsc && rollup -c rollup.config.js && npm run minify", + "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/cognitiveservices-inkrecognizer.js.map'\" -o ./dist/cognitiveservices-inkrecognizer.min.js ./dist/cognitiveservices-inkrecognizer.js", + "prepack": "npm install && npm run build" + }, + "sideEffects": false, + "autoPublish": true +} diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/rollup.config.js b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/rollup.config.js new file mode 100644 index 000000000000..e7e5d42dd33d --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/rollup.config.js @@ -0,0 +1,37 @@ +import rollup from "rollup"; +import nodeResolve from "rollup-plugin-node-resolve"; +import sourcemaps from "rollup-plugin-sourcemaps"; + +/** + * @type {rollup.RollupFileOptions} + */ +const config = { + input: "./esm/inkRecognizerClient.js", + external: [ + "@azure/ms-rest-js", + "@azure/ms-rest-azure-js" + ], + output: { + file: "./dist/cognitiveservices-inkrecognizer.js", + format: "umd", + name: "Azure.CognitiveservicesInkrecognizer", + sourcemap: true, + globals: { + "@azure/ms-rest-js": "msRest", + "@azure/ms-rest-azure-js": "msRestAzure" + }, + banner: `/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */` + }, + plugins: [ + nodeResolve({ module: true }), + sourcemaps() + ] +}; + +export default config; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClient.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClient.ts new file mode 100644 index 000000000000..0dfeef2b73d2 --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClient.ts @@ -0,0 +1,42 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "./models"; +import * as Mappers from "./models/mappers"; +import * as operations from "./operations"; +import { InkRecognizerClientContext } from "./inkRecognizerClientContext"; + +class InkRecognizerClient extends InkRecognizerClientContext { + // Operation groups + inkRecognizer: operations.InkRecognizer; + + /** + * Initializes a new instance of the InkRecognizerClient class. + * @param endpoint Supported Cognitive Services endpoints (protocol and hostname, for example: + * https://westus2.api.cognitive.microsoft.com). + * @param credentials Subscription credentials which uniquely identify client subscription. + * @param [options] The parameter options + */ + constructor(credentials: msRest.ServiceClientCredentials, endpoint: string, options?: msRest.ServiceClientOptions) { + super(credentials, endpoint, options); + this.inkRecognizer = new operations.InkRecognizer(this); + } +} + +// Operation Specifications + +export { + InkRecognizerClient, + InkRecognizerClientContext, + Models as InkRecognizerModels, + Mappers as InkRecognizerMappers +}; +export * from "./operations"; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClientContext.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClientContext.ts new file mode 100644 index 000000000000..f66ccd6647e0 --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/inkRecognizerClientContext.ts @@ -0,0 +1,51 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; + +const packageName = "@azure/cognitiveservices-inkrecognizer"; +const packageVersion = "1.0.0"; + +export class InkRecognizerClientContext extends msRest.ServiceClient { + endpoint: string; + credentials: msRest.ServiceClientCredentials; + + /** + * Initializes a new instance of the InkRecognizerClientContext class. + * @param endpoint Supported Cognitive Services endpoints (protocol and hostname, for example: + * https://westus2.api.cognitive.microsoft.com). + * @param credentials Subscription credentials which uniquely identify client subscription. + * @param [options] The parameter options + */ + constructor(credentials: msRest.ServiceClientCredentials, endpoint: string, options?: msRest.ServiceClientOptions) { + if (endpoint == undefined) { + throw new Error("'endpoint' cannot be null."); + } + if (credentials == undefined) { + throw new Error("'credentials' cannot be null."); + } + + if (!options) { + options = {}; + } + + if (!options.userAgent) { + const defaultUserAgent = msRest.getDefaultUserAgentValue(); + options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`; + } + + super(credentials, options); + + this.baseUri = "https://{Endpoint}/inkrecognizer/v1.0-preview"; + this.requestContentType = "application/json; charset=utf-8"; + this.endpoint = endpoint; + this.credentials = credentials; + } +} diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/index.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/index.ts new file mode 100644 index 000000000000..4b0a2da796a9 --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/index.ts @@ -0,0 +1,576 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + + +import * as msRest from "@azure/ms-rest-js"; + +/** + * This shows the components of the color in rgba format + */ +export interface DrawingAttributesPatternColor { + /** + * The red component of the color + */ + r?: number; + /** + * The green component of the color + */ + g?: number; + /** + * The blue component of the color + */ + b?: number; + /** + * The alpha component of the color + */ + a?: number; +} + +/** + * The properties to use when rendering ink + */ +export interface DrawingAttributesPattern { + /** + * The width of the stylus used to draw the stroke + */ + width?: number; + /** + * This shows the components of the color in rgba format + */ + color?: DrawingAttributesPatternColor; + /** + * The height of the stylus used to draw the stroke + */ + height?: number; + /** + * This indicates whether Bezier smoothing is used to render the stroke + */ + fitToCurve?: boolean; + /** + * Possible values include: 'noOperation', 'copyPen', 'maskPen' + */ + rasterOp?: RasterOp; + /** + * This indicates whether the thickness of a rendered Stroke changes according the amount of + * pressure applied. + */ + ignorePressure?: boolean; + /** + * This specifies the tip to be used to draw a stroke. Possible values include: 'ellipse', + * 'rectangle' + */ + tip?: Tip; +} + +/** + * This holds all the properties of one point + */ +export interface PointDetailsPattern { + /** + * This represents the x coordinate of the point + */ + x: number; + /** + * This represents the y coordinate of the point + */ + y: number; +} + +/** + * An interface representing AlternatePatternItem. + */ +export interface AlternatePatternItem { + /** + * Possible values include: 'inkDrawing', 'inkBullet', 'inkWord', 'unknown' + */ + category: Leaf; + /** + * Array of point objects that represent points that are relevant to the type of recognition + * unit. For example, for leaf node of inkDrawing category that represents a triangle, points + * would include the x,y coordinates of the vertices of the recognized triangle. The points + * represent the coordinates of points used to create the perfectly drawn shape that is closest + * to the original input. They may not exactly match. + */ + points?: PointDetailsPattern[]; + /** + * The angular orientation of an object relative to the horizontal axis + */ + rotationAngle?: number; + /** + * A number between 0 and 1 which indicates the confidence level in the result + */ + confidence?: number; + /** + * The recognized string from an inkWord or the name of a recognized shape in an inkDrawing + * object + */ + recognizedString: string; +} + +/** + * A container for the attributes of a value contained in the ink point object. + */ +export interface InkPointValueAttribute { + /** + * The name of the point attribute. + */ + name?: string; + /** + * The minimum value for the attribute + */ + logicalMinimum?: number; + /** + * The maximum value for the attribute + */ + logicalMaximum?: number; +} + +/** + * An object containing the properties of an point in the path of an ink stroke. The main + * properties are the x and y values. Other include tip pressure, x tilt etc. For the coordinate + * values, it is recommended to have a precision of 8 digits after the decimal to obtain most + * accurate recognition results. The origin (0,0) of the canvas is assumed to be at the top left + * corner of the canvas + */ +export interface InkPoint { + /** + * The x coordinate of the pen location on the writing surface. + */ + x: number; + /** + * The y coordinate of the pen location on the writing surface. + */ + y: number; + /** + * The z coordinate of the pen location on the writing space. This may not be used for + * recognition. + */ + z?: number; + /** + * The force exerted against the tablet surface by the transducer, typically a stylus. This may + * not be used for recognition. + */ + tipPressure?: number; + /** + * The force exerted directly by the user on a transducer sensor, such as a pressure-sensitive + * button on the barrel of a stylus. This may not be used for recognition. + */ + barrelPressure?: number; + /** + * The time relative to the absolute time the transducer last became active. This may not be used + * for recognition. + */ + timestamp?: number; + /** + * The plane angle between the Y-Z plane and the plane containing the transducer axis and the Y + * axis. This may not be used for recognition. + */ + xTilt?: number; + /** + * The angle between the X-Z and transducer-X planes. A positive Y Tilt is toward the user. This + * may not be used for recognition. + */ + yTilt?: number; + /** + * The width of the tip of the writing instrument. This is used by touch screen devices to report + * the width of the finger contact on the writing surface. This may not be used for recognition. + */ + width?: number; + /** + * The height of the tip of the writing instrument. This is used by touch screen devices to + * report the height of the finger contact on the writing surface. This may not be used for + * recognition. + */ + height?: number; + /** + * A switch located on the tip of a stylus indicating contact of the stylus with a surface. This + * may not be used for recognition. + */ + tipSwitch?: boolean; + /** + * A value that indicates that the currently sensed position originates from the end of a stylus + * opposite the tip switch. This may not be used for recognition. + */ + inverted?: boolean; + /** + * A non-tip button located on the barrel of a stylus. Its function is typically mapped to a + * system secondary button. This may not be used for recognition. + */ + barrelSwitch?: boolean; + /** + * The control is used for erasing objects. It is typically located opposite the writing end of a + * stylus. This may not be used for recognition. + */ + eraser?: boolean; + /** + * A secondary switch used in conjunction with the tip switch to indicate pressure above a + * certain threshold applied with the stylus. This may not be used for recognition. + */ + secondaryTip?: boolean; +} + +/** + * The bounding rectangle of the recognition unit represented by the coordinates of the top left + * corner (topX,topY) along with width and height of the rectangle. Note that this rectangle is not + * rotated. So for rotated objects such as slanted handwriting, it will cover the entire object. + * The unit will be matched to the one specified in the original request (mm by default.) + */ +export interface RecognitionUnitItemBoundingRectangle { + /** + * This is the top left x coordinate + */ + topX?: number; + /** + * This is the top left y coordinate + */ + topY?: number; + /** + * This is width of the bounding rectangle + */ + width?: number; + /** + * The is the height of the bounding rectangle + */ + height?: number; +} + +/** + * This identifies the recognized entity + */ +export interface RecognitionUnitItem { + /** + * The identifier of the recognition unit. This id is used to indicate parent/child relationship + * between different recognition units. + */ + id: number; + /** + * Possible values include: 'root', 'writingRegion', 'paragraph', 'line', 'inkBullet', + * 'inkDrawing', 'inkWord', 'unknown' + */ + category: Category; + alternates?: AlternatePatternItem[]; + /** + * The coordinates (x,y) of the center of the recognition unit. + */ + center?: PointDetailsPattern; + /** + * Array of point objects that represent points that are relevant to the type of recognition + * unit. For example, for a leaf node of inkDrawing category that represents a triangle, points + * would include the x, y coordinates of the vertices of the recognized triangle. The points + * represent the coordinates used to create the perfectly drawn shape that is closest to the + * original input. They may not exactly match. + */ + points?: PointDetailsPattern[]; + /** + * An array of integers representing the identifier of each child of the current recognition + * unit. + */ + childIds?: number[]; + /** + * Possible values include: 'container', 'leaf' + */ + classProperty: ClassProperty; + /** + * The id of the parent node in the tree structure of the recognition results. parent = 0 + * indicates that there is no dedicated parent node for this unit. + */ + parentId: number; + /** + * The bounding rectangle of the recognition unit represented by the coordinates of the top left + * corner (topX,topY) along with width and height of the rectangle. Note that this rectangle is + * not rotated. So for rotated objects such as slanted handwriting, it will cover the entire + * object. The unit will be matched to the one specified in the original request (mm by default.) + */ + boundingRectangle?: RecognitionUnitItemBoundingRectangle; + /** + * This is the rotated bounding rectangle that covers the entire recognized object along the + * angle of rotation of the object. Note that this is NOT the same as rotating the + * boundingRectangle by the rotation angle. + */ + rotatedBoundingRectangle?: PointDetailsPattern[]; + /** + * This is an array of integers representing the list of stroke Identifiers from the input + * request body that belong to this recognition unit. + */ + strokeIds: number[]; + /** + * The string contains the text that was recognized. It can be an empty string if the recognizer + * cannot determine the text. + */ + recognizedText?: string; + /** + * A number between 0 and 1 which indicates the confidence level in the result. + */ + confidence?: number; + /** + * This is the angle at which the unit is rotated in degrees with respect to the positive X axis. + */ + rotationAngle?: number; + /** + * Possible values include: 'drawing', 'square', 'rectangle', 'circle', 'ellipse', 'triangle', + * 'isoscelesTriangle', 'equilateralTriangle', 'rightTriangle', 'quadrilateral', 'diamond', + * 'trapezoid', 'parallelogram', 'pentagon', 'hexagon', 'blockArrow', 'heart', 'starSimple', + * 'starCrossed', 'cloud', 'line', 'curve', 'polyLine' + */ + recognizedObject?: Shape; +} + +/** + * An interface representing Stroke. + */ +export interface Stroke { + /** + * This is treated as a unique identifier for each stroke within a request. If the id is repeated + * within the same request, the service will return an error. + */ + id: number; + /** + * The IETF BCP 47 language code (for ex. en-US, en-GB, hi-IN etc.) of the expected language for + * the handwritten content in this stroke. The response will include results from this language. + */ + language?: string; + points: InkPoint[]; + drawingAttributes?: DrawingAttributesPattern; + /** + * This is an optional property which influences the decision about what the stroke kind is + * between inkWriting and inkDrawing. This property should be set ONLY if the type of user + * content is known ahead of time. Not setting this value implies the kind is not known ahead of + * time. Kind represents the type of content the stroke is a part of. Possible values include: + * 'inkDrawing', 'inkWriting' + */ + kind?: Kind; +} + +/** + * This shows the expected contents of a response from the service + */ +export interface AnalysisResponse { + /** + * This is the physical unit of the ink strokes. It is up to the application developer to decide + * how to convert the device specific units to physical units before calling the service. The + * conversion factor can be different based on the type of the device used. Possible values + * include: 'mm', 'cm', 'in' + */ + unit?: Unit; + /** + * This is a scaling factor to be applied to the point coordinates when interpreting them in the + * physical units specified. + */ + unitMultiple?: number; + /** + * This is the language used for recognizing handwriting from the ink strokes in the request. + */ + language?: string; + recognitionUnits: RecognitionUnitItem[]; +} + +/** + * An interface representing ErrorModelDetailsItem. + */ +export interface ErrorModelDetailsItem { + /** + * This represents the error code + */ + code?: string; + /** + * This represents the error message + */ + message?: string; + /** + * This represents the target of the error message + */ + target?: string; +} + +/** + * An interface representing ErrorModel. + */ +export interface ErrorModel { + /** + * This represents the error code + */ + code: string; + /** + * This represents the error message + */ + message: string; + /** + * This represents the target of the error message + */ + target?: string; + /** + * This gives details of the reason(s) for the error + */ + details?: ErrorModelDetailsItem[]; +} + +/** + * This shows the expected contents of a request + */ +export interface AnalysisRequest { + /** + * This describes the domain of the client application. Possible values include: 'drawing', + * 'writing', 'mixed' + */ + applicationType?: Application; + /** + * This identifies the kind of device used as the writing instrument. Possible values include: + * 'digitizer', 'pen', 'lightPen', 'touchScreen', 'touchPad', 'whiteBoard', '3dDigitizer', + * 'stereoPlotter', 'articulatedArm', 'armature' + */ + inputDeviceKind?: InputDevice; + /** + * This is the physical unit of the ink strokes. It is up to the application developer to decide + * how to convert the device specific units to physical units before calling the service. The + * conversion factor can be different based on the type of the device used. Possible values + * include: 'mm', 'cm', 'in' + */ + unit?: Unit; + /** + * This is a scaling factor to be applied to the point coordinates when interpreting them in the + * physical units specified. + */ + unitMultiple?: number; + /** + * The IETF BCP 47 language code (for ex. en-US, en-GB, hi-IN etc.) of the expected language for + * the handwritten content in the ink strokes. The response will include results from this + * language. + */ + language: string; + inkPointValueAttributes?: InkPointValueAttribute[]; + /** + * This is the array of strokes sent for recognition. Best results are produced when the order of + * strokes added in the array matches the order in which the user created them. Changing the + * stroke order may produce unexpected results. + */ + strokes: Stroke[]; +} + +/** + * Optional Parameters. + */ +export interface InkRecognizerRecognizeOptionalParams extends msRest.RequestOptionsBase { + /** + * The request id used to uniquely identify each request during troubleshooting. This is an + * optional parameter useful for correlating logs and other artifacts. + */ + xMsClientRequestId?: string; +} + +/** + * Defines values for RasterOp. + * Possible values include: 'noOperation', 'copyPen', 'maskPen' + * @readonly + * @enum {string} + */ +export type RasterOp = 'noOperation' | 'copyPen' | 'maskPen'; + +/** + * Defines values for Tip. + * Possible values include: 'ellipse', 'rectangle' + * @readonly + * @enum {string} + */ +export type Tip = 'ellipse' | 'rectangle'; + +/** + * Defines values for Shape. + * Possible values include: 'drawing', 'square', 'rectangle', 'circle', 'ellipse', 'triangle', + * 'isoscelesTriangle', 'equilateralTriangle', 'rightTriangle', 'quadrilateral', 'diamond', + * 'trapezoid', 'parallelogram', 'pentagon', 'hexagon', 'blockArrow', 'heart', 'starSimple', + * 'starCrossed', 'cloud', 'line', 'curve', 'polyLine' + * @readonly + * @enum {string} + */ +export type Shape = 'drawing' | 'square' | 'rectangle' | 'circle' | 'ellipse' | 'triangle' | 'isoscelesTriangle' | 'equilateralTriangle' | 'rightTriangle' | 'quadrilateral' | 'diamond' | 'trapezoid' | 'parallelogram' | 'pentagon' | 'hexagon' | 'blockArrow' | 'heart' | 'starSimple' | 'starCrossed' | 'cloud' | 'line' | 'curve' | 'polyLine'; + +/** + * Defines values for Category. + * Possible values include: 'root', 'writingRegion', 'paragraph', 'line', 'inkBullet', + * 'inkDrawing', 'inkWord', 'unknown' + * @readonly + * @enum {string} + */ +export type Category = 'root' | 'writingRegion' | 'paragraph' | 'line' | 'inkBullet' | 'inkDrawing' | 'inkWord' | 'unknown'; + +/** + * Defines values for Container. + * Possible values include: 'root', 'writingRegion', 'paragraph', 'line' + * @readonly + * @enum {string} + */ +export type Container = 'root' | 'writingRegion' | 'paragraph' | 'line'; + +/** + * Defines values for Leaf. + * Possible values include: 'inkDrawing', 'inkBullet', 'inkWord', 'unknown' + * @readonly + * @enum {string} + */ +export type Leaf = 'inkDrawing' | 'inkBullet' | 'inkWord' | 'unknown'; + +/** + * Defines values for Kind. + * Possible values include: 'inkDrawing', 'inkWriting' + * @readonly + * @enum {string} + */ +export type Kind = 'inkDrawing' | 'inkWriting'; + +/** + * Defines values for Unit. + * Possible values include: 'mm', 'cm', 'in' + * @readonly + * @enum {string} + */ +export type Unit = 'mm' | 'cm' | 'in'; + +/** + * Defines values for Application. + * Possible values include: 'drawing', 'writing', 'mixed' + * @readonly + * @enum {string} + */ +export type Application = 'drawing' | 'writing' | 'mixed'; + +/** + * Defines values for InputDevice. + * Possible values include: 'digitizer', 'pen', 'lightPen', 'touchScreen', 'touchPad', + * 'whiteBoard', '3dDigitizer', 'stereoPlotter', 'articulatedArm', 'armature' + * @readonly + * @enum {string} + */ +export type InputDevice = 'digitizer' | 'pen' | 'lightPen' | 'touchScreen' | 'touchPad' | 'whiteBoard' | '3dDigitizer' | 'stereoPlotter' | 'articulatedArm' | 'armature'; + +/** + * Defines values for ClassProperty. + * Possible values include: 'container', 'leaf' + * @readonly + * @enum {string} + */ +export type ClassProperty = 'container' | 'leaf'; + +/** + * Contains response data for the recognize operation. + */ +export type InkRecognizerRecognizeResponse = AnalysisResponse & { + /** + * The underlying HTTP response. + */ + _response: msRest.HttpResponse & { + /** + * The response body as text (string format) + */ + bodyAsText: string; + + /** + * The response body as parsed JSON or XML + */ + parsedBody: AnalysisResponse; + }; +}; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/inkRecognizerMappers.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/inkRecognizerMappers.ts new file mode 100644 index 000000000000..82cbf7d1c116 --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/inkRecognizerMappers.ts @@ -0,0 +1,23 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +export { + AlternatePatternItem, + AnalysisRequest, + AnalysisResponse, + DrawingAttributesPattern, + DrawingAttributesPatternColor, + ErrorModel, + ErrorModelDetailsItem, + InkPoint, + InkPointValueAttribute, + PointDetailsPattern, + RecognitionUnitItem, + RecognitionUnitItemBoundingRectangle, + Stroke +} from "../models/mappers"; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/mappers.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/mappers.ts new file mode 100644 index 000000000000..08e316569a5a --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/mappers.ts @@ -0,0 +1,694 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; + + +export const DrawingAttributesPatternColor: msRest.CompositeMapper = { + serializedName: "drawingAttributesPattern_color", + type: { + name: "Composite", + className: "DrawingAttributesPatternColor", + modelProperties: { + r: { + serializedName: "r", + type: { + name: "Number" + } + }, + g: { + serializedName: "g", + type: { + name: "Number" + } + }, + b: { + serializedName: "b", + type: { + name: "Number" + } + }, + a: { + serializedName: "a", + type: { + name: "Number" + } + } + } + } +}; + +export const DrawingAttributesPattern: msRest.CompositeMapper = { + serializedName: "drawingAttributesPattern", + type: { + name: "Composite", + className: "DrawingAttributesPattern", + modelProperties: { + width: { + serializedName: "width", + type: { + name: "Number" + } + }, + color: { + serializedName: "color", + type: { + name: "Composite", + className: "DrawingAttributesPatternColor" + } + }, + height: { + serializedName: "height", + type: { + name: "Number" + } + }, + fitToCurve: { + serializedName: "fitToCurve", + type: { + name: "Boolean" + } + }, + rasterOp: { + serializedName: "rasterOp", + type: { + name: "String" + } + }, + ignorePressure: { + serializedName: "ignorePressure", + type: { + name: "Boolean" + } + }, + tip: { + serializedName: "tip", + type: { + name: "String" + } + } + } + } +}; + +export const PointDetailsPattern: msRest.CompositeMapper = { + serializedName: "pointDetailsPattern", + type: { + name: "Composite", + className: "PointDetailsPattern", + modelProperties: { + x: { + required: true, + serializedName: "x", + type: { + name: "Number" + } + }, + y: { + required: true, + serializedName: "y", + type: { + name: "Number" + } + } + } + } +}; + +export const AlternatePatternItem: msRest.CompositeMapper = { + serializedName: "alternatePatternItem", + type: { + name: "Composite", + className: "AlternatePatternItem", + modelProperties: { + category: { + required: true, + serializedName: "category", + type: { + name: "String" + } + }, + points: { + serializedName: "points", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PointDetailsPattern" + } + } + } + }, + rotationAngle: { + serializedName: "rotationAngle", + type: { + name: "Number" + } + }, + confidence: { + serializedName: "confidence", + type: { + name: "Number" + } + }, + recognizedString: { + required: true, + serializedName: "recognizedString", + type: { + name: "String" + } + } + } + } +}; + +export const InkPointValueAttribute: msRest.CompositeMapper = { + serializedName: "inkPointValueAttribute", + type: { + name: "Composite", + className: "InkPointValueAttribute", + modelProperties: { + name: { + serializedName: "name", + type: { + name: "String" + } + }, + logicalMinimum: { + serializedName: "logicalMinimum", + type: { + name: "Number" + } + }, + logicalMaximum: { + serializedName: "logicalMaximum", + type: { + name: "Number" + } + } + } + } +}; + +export const InkPoint: msRest.CompositeMapper = { + serializedName: "inkPoint", + type: { + name: "Composite", + className: "InkPoint", + modelProperties: { + x: { + required: true, + serializedName: "x", + type: { + name: "Number" + } + }, + y: { + required: true, + serializedName: "y", + type: { + name: "Number" + } + }, + z: { + serializedName: "z", + type: { + name: "Number" + } + }, + tipPressure: { + serializedName: "tipPressure", + type: { + name: "Number" + } + }, + barrelPressure: { + serializedName: "barrelPressure", + type: { + name: "Number" + } + }, + timestamp: { + serializedName: "timestamp", + type: { + name: "Number" + } + }, + xTilt: { + serializedName: "xTilt", + type: { + name: "Number" + } + }, + yTilt: { + serializedName: "yTilt", + type: { + name: "Number" + } + }, + width: { + serializedName: "width", + type: { + name: "Number" + } + }, + height: { + serializedName: "height", + type: { + name: "Number" + } + }, + tipSwitch: { + serializedName: "tipSwitch", + type: { + name: "Boolean" + } + }, + inverted: { + serializedName: "inverted", + type: { + name: "Boolean" + } + }, + barrelSwitch: { + serializedName: "barrelSwitch", + type: { + name: "Boolean" + } + }, + eraser: { + serializedName: "eraser", + type: { + name: "Boolean" + } + }, + secondaryTip: { + serializedName: "secondaryTip", + type: { + name: "Boolean" + } + } + } + } +}; + +export const RecognitionUnitItemBoundingRectangle: msRest.CompositeMapper = { + serializedName: "recognitionUnitItem_boundingRectangle", + type: { + name: "Composite", + className: "RecognitionUnitItemBoundingRectangle", + modelProperties: { + topX: { + serializedName: "topX", + type: { + name: "Number" + } + }, + topY: { + serializedName: "topY", + type: { + name: "Number" + } + }, + width: { + serializedName: "width", + type: { + name: "Number" + } + }, + height: { + serializedName: "height", + type: { + name: "Number" + } + } + } + } +}; + +export const RecognitionUnitItem: msRest.CompositeMapper = { + serializedName: "recognitionUnitItem", + type: { + name: "Composite", + className: "RecognitionUnitItem", + modelProperties: { + id: { + required: true, + serializedName: "id", + type: { + name: "Number" + } + }, + category: { + required: true, + serializedName: "category", + type: { + name: "String" + } + }, + alternates: { + serializedName: "alternates", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "AlternatePatternItem" + } + } + } + }, + center: { + serializedName: "center", + type: { + name: "Composite", + className: "PointDetailsPattern" + } + }, + points: { + serializedName: "points", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PointDetailsPattern" + } + } + } + }, + childIds: { + serializedName: "childIds", + type: { + name: "Sequence", + element: { + type: { + name: "Number" + } + } + } + }, + classProperty: { + required: true, + serializedName: "class", + type: { + name: "String" + } + }, + parentId: { + required: true, + serializedName: "parentId", + type: { + name: "Number" + } + }, + boundingRectangle: { + serializedName: "boundingRectangle", + type: { + name: "Composite", + className: "RecognitionUnitItemBoundingRectangle" + } + }, + rotatedBoundingRectangle: { + serializedName: "rotatedBoundingRectangle", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "PointDetailsPattern" + } + } + } + }, + strokeIds: { + required: true, + serializedName: "strokeIds", + type: { + name: "Sequence", + element: { + type: { + name: "Number" + } + } + } + }, + recognizedText: { + serializedName: "recognizedText", + type: { + name: "String" + } + }, + confidence: { + serializedName: "confidence", + type: { + name: "Number" + } + }, + rotationAngle: { + serializedName: "rotationAngle", + type: { + name: "Number" + } + }, + recognizedObject: { + serializedName: "recognizedObject", + type: { + name: "String" + } + } + } + } +}; + +export const Stroke: msRest.CompositeMapper = { + serializedName: "stroke", + type: { + name: "Composite", + className: "Stroke", + modelProperties: { + id: { + required: true, + serializedName: "id", + type: { + name: "Number" + } + }, + language: { + serializedName: "language", + type: { + name: "String" + } + }, + points: { + required: true, + serializedName: "points", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InkPoint" + } + } + } + }, + drawingAttributes: { + serializedName: "drawingAttributes", + type: { + name: "Composite", + className: "DrawingAttributesPattern" + } + }, + kind: { + serializedName: "kind", + type: { + name: "String" + } + } + } + } +}; + +export const AnalysisResponse: msRest.CompositeMapper = { + serializedName: "analysisResponse", + type: { + name: "Composite", + className: "AnalysisResponse", + modelProperties: { + unit: { + serializedName: "unit", + type: { + name: "String" + } + }, + unitMultiple: { + serializedName: "unitMultiple", + type: { + name: "Number" + } + }, + language: { + serializedName: "language", + type: { + name: "String" + } + }, + recognitionUnits: { + required: true, + serializedName: "recognitionUnits", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "RecognitionUnitItem" + } + } + } + } + } + } +}; + +export const ErrorModelDetailsItem: msRest.CompositeMapper = { + serializedName: "errorModel_detailsItem", + type: { + name: "Composite", + className: "ErrorModelDetailsItem", + modelProperties: { + code: { + serializedName: "code", + type: { + name: "String" + } + }, + message: { + serializedName: "message", + type: { + name: "String" + } + }, + target: { + serializedName: "target", + type: { + name: "String" + } + } + } + } +}; + +export const ErrorModel: msRest.CompositeMapper = { + serializedName: "errorModel", + type: { + name: "Composite", + className: "ErrorModel", + modelProperties: { + code: { + required: true, + serializedName: "code", + type: { + name: "String" + } + }, + message: { + required: true, + serializedName: "message", + type: { + name: "String" + } + }, + target: { + serializedName: "target", + type: { + name: "String" + } + }, + details: { + serializedName: "details", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "ErrorModelDetailsItem" + } + } + } + } + } + } +}; + +export const AnalysisRequest: msRest.CompositeMapper = { + serializedName: "analysisRequest", + type: { + name: "Composite", + className: "AnalysisRequest", + modelProperties: { + applicationType: { + serializedName: "applicationType", + type: { + name: "String" + } + }, + inputDeviceKind: { + serializedName: "inputDeviceKind", + type: { + name: "String" + } + }, + unit: { + serializedName: "unit", + type: { + name: "String" + } + }, + unitMultiple: { + serializedName: "unitMultiple", + type: { + name: "Number" + } + }, + language: { + required: true, + serializedName: "language", + type: { + name: "String" + } + }, + inkPointValueAttributes: { + serializedName: "inkPointValueAttributes", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "InkPointValueAttribute" + } + } + } + }, + strokes: { + required: true, + serializedName: "strokes", + type: { + name: "Sequence", + element: { + type: { + name: "Composite", + className: "Stroke" + } + } + } + } + } + } +}; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/parameters.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/parameters.ts new file mode 100644 index 000000000000..89e7a440c20b --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/models/parameters.ts @@ -0,0 +1,36 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; + +export const endpoint: msRest.OperationURLParameter = { + parameterPath: "endpoint", + mapper: { + required: true, + serializedName: "Endpoint", + defaultValue: '', + type: { + name: "String" + } + }, + skipEncoding: true +}; +export const xMsClientRequestId: msRest.OperationParameter = { + parameterPath: [ + "options", + "xMsClientRequestId" + ], + mapper: { + serializedName: "x-ms-client-request-id", + type: { + name: "String" + } + } +}; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/index.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/index.ts new file mode 100644 index 000000000000..44f5e3f74077 --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/index.ts @@ -0,0 +1,11 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +export * from "./inkRecognizer"; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/inkRecognizer.ts b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/inkRecognizer.ts new file mode 100644 index 000000000000..fa306c5bb619 --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/src/operations/inkRecognizer.ts @@ -0,0 +1,87 @@ +/* + * Copyright (c) Microsoft Corporation. All rights reserved. + * Licensed under the MIT License. See License.txt in the project root for + * license information. + * + * Code generated by Microsoft (R) AutoRest Code Generator. + * Changes may cause incorrect behavior and will be lost if the code is + * regenerated. + */ + +import * as msRest from "@azure/ms-rest-js"; +import * as Models from "../models"; +import * as Mappers from "../models/inkRecognizerMappers"; +import * as Parameters from "../models/parameters"; +import { InkRecognizerClientContext } from "../inkRecognizerClientContext"; + +/** Class representing a InkRecognizer. */ +export class InkRecognizer { + private readonly client: InkRecognizerClientContext; + + /** + * Create a InkRecognizer. + * @param {InkRecognizerClientContext} client Reference to the service client. + */ + constructor(client: InkRecognizerClientContext) { + this.client = client; + } + + /** + * Ink Recognition operation is used to perform ink layout and recognition of written words and + * shapes. It allows passing the ink strokes to the service to get the recognition results in the + * response. + * @param body The collection of stroke objects to send for analysis + * @param [options] The optional parameters + * @returns Promise + */ + recognize(body: Models.AnalysisRequest, options?: Models.InkRecognizerRecognizeOptionalParams): Promise; + /** + * @param body The collection of stroke objects to send for analysis + * @param callback The callback + */ + recognize(body: Models.AnalysisRequest, callback: msRest.ServiceCallback): void; + /** + * @param body The collection of stroke objects to send for analysis + * @param options The optional parameters + * @param callback The callback + */ + recognize(body: Models.AnalysisRequest, options: Models.InkRecognizerRecognizeOptionalParams, callback: msRest.ServiceCallback): void; + recognize(body: Models.AnalysisRequest, options?: Models.InkRecognizerRecognizeOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise { + return this.client.sendOperationRequest( + { + body, + options + }, + recognizeOperationSpec, + callback) as Promise; + } +} + +// Operation Specifications +const serializer = new msRest.Serializer(Mappers); +const recognizeOperationSpec: msRest.OperationSpec = { + httpMethod: "PUT", + path: "recognize", + urlParameters: [ + Parameters.endpoint + ], + headerParameters: [ + Parameters.xMsClientRequestId + ], + requestBody: { + parameterPath: "body", + mapper: { + ...Mappers.AnalysisRequest, + required: true + } + }, + responses: { + 200: { + bodyMapper: Mappers.AnalysisResponse + }, + default: { + bodyMapper: Mappers.ErrorModel + } + }, + serializer +}; diff --git a/sdk/cognitiveservices/cognitiveservices-inkrecognizer/tsconfig.json b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/tsconfig.json new file mode 100644 index 000000000000..422b584abd5e --- /dev/null +++ b/sdk/cognitiveservices/cognitiveservices-inkrecognizer/tsconfig.json @@ -0,0 +1,19 @@ +{ + "compilerOptions": { + "module": "es6", + "moduleResolution": "node", + "strict": true, + "target": "es5", + "sourceMap": true, + "declarationMap": true, + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "forceConsistentCasingInFileNames": true, + "lib": ["es6", "dom"], + "declaration": true, + "outDir": "./esm", + "importHelpers": true + }, + "include": ["./src/**/*.ts"], + "exclude": ["node_modules"] +}