@justeat/f-form-field v6.6.1
f-form-field
Fozzie Form Field Component.
Usage
Installation
Install the module using npm or Yarn:
yarn add @justeat/f-form-fieldnpm install @justeat/f-form-fieldVue Applications
You can import it in your Vue SFC like this (please note that styles have to be imported separately):
import FormField from '@justeat/f-form-field';
import '@justeat/f-form-field/dist/f-form-field.css';
export default {
components: {
FormField
}
}If you are using Webpack, you can import the component dynamically to separate the f-form-field bundle from the main bundle.client.js:
import '@justeat/f-form-field/dist/f-form-field.css';
export default {
components: {
// …
FormField: () => import(/* webpackChunkName: "form-field" */ '@justeat/f-form-field')
}
}Configuration
Props
There may be props that allow you to customise its functionality.
The props that can be defined are as follows (if any):
| Prop | Type | Default | Description |
|---|---|---|---|
assistiveText | String | '' | Text to assist the user that will display underneath the input field. |
dropdownOptions | Array | null | The options to be displayed in the dropdown. Each option can contain the following properties: text (required) - The text to be displayed.value (required) - The underlying value for the option.disabled (optional) - Can be used to prevent an option from being selected.selected (optional) - This will be ignored by v-model (see Vue docs on Form Input Bindings), but it may be used together with disabled to create a placeholder. |
fieldSize | String | medium | The size of the form field. Options: small, medium, large |
hasError | Boolean | false | When true border colour changes to red. |
inputType | String | text | The type of input needed. Options: text, email, password, radio, checkbox, dropdown, number, tel, textarea |
isGrouped | Boolean | false | When true will remove margin between all grouped form fields. |
labelDescription | String | '' | Extra text that will display underneath the label text. |
labelDetails | String | '' | Details for the label that will display on the right of label text. |
labelText | String | '' | The text that will be displayed in the form field label. |
locale | String | '' | Sets locale for I18n. |
maxNumber | Number or undefined | undefined | Sets the value of the max property when inputType is number |
minNumber | Number or undefined | undefined | Sets the value of the min property when inputType is number |
prefix | String | '' | Prefix will display on the left of the input field. |
shouldShowLabelText | Boolean | true | Hides the label if set to false |
suffix | String | '' | Suffix will display on the right of the input field. |
value | String or Number | '' | The value of the form field. |
isVisuallyRequired | Boolean | true | Adds a visual indicator (e.g., an asterisk) to the form field label when the field also has the attribute required=required. When false, a field can still be required but there will be no visual indicator. |
required | Boolean | n/a This is an optional attribute, not a prop. | This attribute will be passed to the native field elements (e.g., input, select, textarea) and should be passed to fields that are required for the form to be valid. Fields are now not required by default. |
Slots
Available slots that can be used.
| Slot Name | Type | Description |
|---|---|---|
icon-leading | Icon | Will display an icon inside the input field on the left hand side. |
icon-trailing | Icon | Will display an icon inside the input field on the right hand side. |
Events
The events that can be subscribed to are as follows (if any):
| Event | Description |
|---|---|
input | Fired when a user changes the value of the form field, args contain details of the change and its context. |
Development
Start by cloning the repository and installing the required dependencies:
$ git clone git@github.com:justeat/fozzie-components.git
$ cd fozzie-components
$ yarnChange directory to the f-form-field package:
$ cd packages/components/molecules/f-form-fieldTesting
Unit, Integration and Contract
To test all components, run from root directory.
To test only f-form-field, run from the ./fozzie-components/packages/f-form-field directory.
yarn testComponent Tests
# Run Component tests for all components
# Note: Ensure Storybook is not running when running the following commands
cd ./fozzie-components
yarn storybook:build
yarn storybook:serve-static
yarn test-component:chromeOR
# Run Component tests for f-form-field
# Note: Ensure Storybook is not running when running the following commands
cd ./fozzie-components/packages/f-form-field
yarn test-component:chromeDocumentation to be completed once module is in stable state.
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago