- Print
Keyboard
- Print
Keyboard Module 1.0.0
Usage
To use the Keyboard module, you can import it into your project from the Firebolt SDK:
import { Keyboard } from '@firebolt-js/sdk'
Overview
Methods for prompting users to enter text with task-oriented UX
Methods
Prompt the user for their email address with a simplified list of choices.
function email(type: EmailUsage, message?: string): Promise<string>
Parameters:
Param | Type | Required | Description |
---|---|---|---|
type | EmailUsage | true | Why the email is being requested, e.g. sign on or sign up values: 'signIn' | 'signUp' |
, | message | string | false |
Promise resolution:
string
Capabilities:
Role | Capability |
---|---|
uses | xrn:firebolt:capability:input:keyboard |
Examples
Prompt the user to select or type an email address
JavaScript:
import { Keyboard } from '@firebolt-js/sdk'
Keyboard.email("signIn", "Enter your email to sign into this app")
.then(email => {
console.log(email)
})
Value of email
:
"user@domain.com"
JSON-RPC:
Request:{
"jsonrpc": "2.0",
"id": 1,
"method": "Keyboard.email",
"params": {
"type": "signIn",
"message": "Enter your email to sign into this app"
}
}
Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": "user@domain.com"
}
Prompt the user to type an email address to sign up
JavaScript:
import { Keyboard } from '@firebolt-js/sdk'
Keyboard.email("signUp", "Enter your email to sign up for this app")
.then(email => {
console.log(email)
})
Value of email
:
"user@domain.com"
JSON-RPC:
Request:{
"jsonrpc": "2.0",
"id": 1,
"method": "Keyboard.email",
"params": {
"type": "signUp",
"message": "Enter your email to sign up for this app"
}
}
Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": "user@domain.com"
}
password
Show the password entry keyboard, with typing obfuscated from visibility
function password(message?: string): Promise<string>
Parameters:
Param | Type | Required | Description |
---|---|---|---|
message | string | false | The message to display while prompting |
Promise resolution:
string
Capabilities:
Role | Capability |
---|---|
uses | xrn:firebolt:capability:input:keyboard |
Examples
Prompt the user to enter their password
JavaScript:
import { Keyboard } from '@firebolt-js/sdk'
Keyboard.password("Enter your password")
.then(value => {
console.log(value)
})
Value of value
:
"abc123"
JSON-RPC:
Request:{
"jsonrpc": "2.0",
"id": 1,
"method": "Keyboard.password",
"params": {
"message": "Enter your password"
}
}
Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": "abc123"
}
standard
Show the standard platform keyboard, and return the submitted value
function standard(message: string): Promise<string>
Parameters:
Param | Type | Required | Description |
---|---|---|---|
message | string | true | The message to display while prompting |
Promise resolution:
string
Capabilities:
Role | Capability |
---|---|
uses | xrn:firebolt:capability:input:keyboard |
Examples
Prompt the user for an arbitrary string
JavaScript:
import { Keyboard } from '@firebolt-js/sdk'
Keyboard.standard("Enter the name you'd like to associate with this device")
.then(value => {
console.log(value)
})
Value of value
:
"Living Room"
JSON-RPC:
Request:{
"jsonrpc": "2.0",
"id": 1,
"method": "Keyboard.standard",
"params": {
"message": "Enter the name you'd like to associate with this device"
}
}
Response:
{
"jsonrpc": "2.0",
"id": 1,
"result": "Living Room"
}
Types
EmailUsage
enum EmailUsage {
SIGN_IN = 'signIn',
SIGN_UP = 'signUp'
}