A google auth capacitor plugin
npm install @deldev/capacitor-google-authA google auth capacitor plugin
``bash`
npm install @deldev/capacitor-google-auth
npx cap sync
* initialize(...)
* signIn()
* refresh()
* signOut()
* Interfaces
`typescript`
initialize(options?: InitOptions) => Promise
Initializes the GoogleAuthPlugin, loading the gapi library and setting up the plugin.
| Param | Type | Description |
| ------------- | --------------------------------------------------- | ---------------------------------- |
| options | InitOptions | - Optional initialization options. |
Since: 3.1.0
--------------------
`typescript`
signIn() => Promise
Initiates the sign-in process and returns a Promise that resolves with the user information.
When grantOfflineAccess is true, the serverAuthCode will be populated.
You should send this code to your backend to exchange for tokens.
When grantOfflineAccess is false, you'll receive an accessToken directly.
Returns: Promise<User>
--------------------
`typescript`
refresh() => Promise
Refreshes the authentication token and returns a Promise that resolves with the updated authentication details.
Returns: Promise<Authentication>
--------------------
`typescript`
signOut() => Promise
Signs out the user and returns a Promise.
Returns: Promise<any>
--------------------
#### InitOptions
| Prop | Type | Description | Default | Since |
| ------------------------ | --------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------ | ----- |
| clientId | string | The app's client ID, found and created in the Google Developers Console. Common for Android or iOS. The default is defined in the configuration. | | 3.1.0 |
| scopes | string[] | Specifies the scopes required for accessing Google APIs The default is defined in the configuration. | | |
| grantOfflineAccess | boolean | Set if your application needs to refresh access tokens when the user is not present at the browser. In response use serverAuthCode key | backendUrlfalse | 3.1.0 |
| | string | Backend URL for token exchange (optional) If provided, the plugin can help with backend communication | | |
#### User
| Prop | Type | Description |
| -------------------- | --------------------------------------------------------- | -------------------------------------------------------------------------------- |
| id | string | The unique identifier for the user. |
| email | string | The email address associated with the user. |
| name | string | The user's full name. |
| familyName | string | The family name (last name) of the user. |
| givenName | string | The given name (first name) of the user. |
| imageUrl | string | The URL of the user's profile picture. |
| serverAuthCode | string | The server authentication code. Use this to exchange for tokens on your backend. |
| authentication | Authentication | The authentication details including access, refresh and ID tokens. |
#### Authentication
| Prop | Type | Description |
| ------------------ | ------------------- | ------------------------------------------------ |
| accessToken | string | The access token obtained during authentication. |
| idToken | string | The ID token obtained during authentication. |
| refreshToken` | string | The refresh token. |