Skip to content

spokenaac/capacitor-mlkit-digitalink-plugin

Repository files navigation

capacitor-mlkit-digitalink-plugin

Capacitor plugin for use of the Google MLKit Digital Ink Recognition models.

Install

npm install capacitor-mlkit-digitalink-plugin
npx cap sync

API

initializePlugin()

initializePlugin() => Promise<{ ok: boolean; msg: string; }>

Initializes notifications on iOS -- NOT supported in Android due to the use of other event listeners

Returns: Promise<{ ok: boolean; msg: string; }>


erase()

erase() => Promise<{ ok: boolean; msg: string; }>

Erases natively stored stroke/point/ink data

Returns: Promise<{ ok: boolean; msg: string; }>


logStrokes(...)

logStrokes(options: XYTOptions) => Promise<{ ok: boolean; msg: string; options: XYTOptions; }>

Sends XY coordinate data to native code to be prepared for model inference Can include/exclude time values Ensure all units for coordinates/time are consistent between logs. Unit types don't matter, they just need to be the same -- all values are normalized

Param Type Description
options XYTOptions - [ X coordinate, Y coordinate, T time in milliseconds ]

Returns: Promise<{ ok: boolean; msg: string; options: XYTOptions; }>


doRecognition(...)

doRecognition(options: RecognitionOptions) => Promise<{ ok: boolean; msg: string; results: { candidates: string[]; scores: number[]; }; options: RecognitionOptions; }>

Runs inference either on the provided model via the model param, or on the default English model. All params are optional.

Param Type
options RecognitionOptions

Returns: Promise<{ ok: boolean; msg: string; results: { candidates: string[]; scores: number[]; }; options: RecognitionOptions; }>


downloadSingularModel(...)

downloadSingularModel(model: Model, callback: SingularModelCallback) => Promise<CallbackID>

Downloads singular model. Last callback has the 'done' property set to true, and signals the last callback.

Param Type Description
model Model model to download. Native code checks if model is valid and if it's already downloaded.
callback SingularModelCallback callback function that runs each time data is sent from the native code.

Returns: Promise<string>


downloadMultipleModels(...)

downloadMultipleModels(models: Models, callback: MultipleModelCallback) => Promise<CallbackID>

Downloads multiple models from a given array. Callback function will return a response or an error dependent on whether a given model has already been downloaded, is a valid/invalid model, or is finished being downloaded. The last model will be have the 'done' property set to true and signals the last callback.

Param Type Description
models Models array of models to download.
callback MultipleModelCallback callback that runs each time data is sent from the native code.

Returns: Promise<string>


deleteModel(...)

deleteModel(options: DeleteModelOptions, callback: DeleteModelCallback) => Promise<CallbackID>

Deletes a singular/collection of models downloaded to the device, or all models.

Param Type Description
options DeleteModelOptions delete all models, a singular model, or an array of models.
callback DeleteModelCallback

Returns: Promise<string>


getDownloadedModels()

getDownloadedModels() => Promise<{ ok: true; msg: string; models: string[]; }>

Returns: Promise<{ ok: true; msg: string; models: string[]; }>


Interfaces

XYTOptions

Prop Type
x number[]
y number[]
t number[]

RecognitionOptions

Prop Type
model string
context string
writingArea { w: number; h: number; }

Model

Prop Type
model string

Response

Prop Type
ok boolean
done boolean
msg string

Models

Prop Type
models string[]

DeleteModelOptions

Prop Type
all boolean
model string
models string[]

Type Aliases

SingularModelCallback

(response: Response, error?: any): void

CallbackID

string

MultipleModelCallback

(response: Response, error?: any): void

DeleteModelCallback

(response: Response, error?: any): void

About

Capacitor plugin for use of the Google MLKit Digital Ink Recognition models.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published