capacitor-mlkit-digitalink-plugin v0.3.1
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 syncAPI
initializePlugin()erase()logStrokes(...)doRecognition(...)downloadSingularModel(...)downloadMultipleModels(...)deleteModel(...)getDownloadedModels()- Interfaces
- Type Aliases
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