open-consul/ui/packages/consul-ui/app/components/token-source
John Cowen da8a8924dd
ui: Store the default partition when logging in (#11591)
Make sure we store the default Partition for a users token.
2021-11-17 17:52:31 +00:00
..
README.mdx ui: Partitions Application Layer (#11017) 2021-09-15 19:50:11 +01:00
chart.xstate.js ui: Move to Workspaced Structure (#8994) 2020-10-21 15:23:16 +01:00
index.hbs ui: Make it hard to not URLEncode DataSource srcs/URIs (#11117) 2021-09-30 15:54:46 +01:00
index.js ui: Store the default partition when logging in (#11591) 2021-11-17 17:52:31 +00:00

README.mdx

---
class: ember
---
## TokenSource

```hbs
  <TokenSource
    @dc={{dc}}
    @nspace={{nspace}}
    @partition={{partition}}
    @type={{or 'oidc' 'secret'}}
    @value={{or identifierForProvider secret}}
    @onchange={{action 'change'}}
    @onerror={{action 'error'}}
  />
```

### Arguments

| Argument | Type | Default | Description |
| --- | --- | --- | --- |
| `dc` | `String` | | The name of the current datacenter |
| `nspace` | `String` | | The name of the current namespace |
| `partition` | `String` | | The name of the current partition |
| `onchange` | `Function` |  | The action to fire when the data changes. Emits an Event-like object with a `data` property containing the jwt data, in this case the autorizationCode and the status |
| `onerror` | `Function` |  | The action to fire when an error occurs. Emits ErrorEvent object with an `error` property containing the Error. |

This component will go through the steps of requesting a JWT token from a third party oauth provider. `src` should contain the full URL of the authorization URL for the 3rd party provider. Once the user has logged into the 3rd party provider the `onchange` event will be fired containing an event-like object whose data contains the JWT information.

The component need only be place into the DOM in order to begin the OAuth dance.

### See

- [Component Source Code](./index.js)
- [Template Source Code](./index.hbs)

---