mirror of https://github.com/hashicorp/consul
0c66bbf2b4 | ||
---|---|---|
.. | ||
README.mdx | ||
index.hbs |
README.mdx
# ErrorState Consul UIs default 'error state' used when an error is returned form the backend. This component used `EmptyState` internally, so please refer to that for more details. Using this component for all of our errors means we can show a consistent error page for generic errors. This component show slightly different visuals and copy depending on the `status` of the error (the status is generally a HTTP error code). Please note: The examples below use a `hash` for demonstration purposes, you'll probably just be using an `error` object in real-life. ## Arguments | Argument | Type | Default | Description | | --- | --- | --- | --- | | `login` | `Function` | `undefined` | A login action to call when the login button is pressed (if not provided no login button will be shown | | `error` | `Object` | `undefined` | 'Consul UI error shaped' JSON `{status: String, message: String, detail: String}` | Specifically 403 errors **always** use the same header/body copy, this is hardcoded in and not currently overridable. ```hbs preview-template <ErrorState @error={{hash status='403'}} /> ``` Other StatusCodes have a global default text but these *are* overridable by using the message/detail properties of the Consul UI shaped errors. ```hbs preview-template <ErrorState @error={{hash status='404' message="`message` is what is shown in the header" detail="`detail` is what shown in the body" }} /> ``` As with `EmptyState` you can optionally chose to show a login button using the `@login` argument. ```hbs preview-template <ErrorState @error={{hash status='403'}} @login={{noop}} /> ```