Research
Security News
Malicious npm Packages Inject SSH Backdoors via Typosquatted Libraries
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
@miraidesigns/textfield
Advanced tools
Text fields allow for text based inputs.
<div class="mdf-textfield">
<label for="textfield" class="mdf-textfield__label">Label</label>
<input id="textfield" class="mdf-textfield__input" type="text">
</div>
// Include default styles without configuration
@forward '@miraidesigns/textfield/styles';
// Configure appearance
@use '@miraidesigns/textfield' with (
$variable: value
);
@include textfield.styles();
import { MDFTextfield } from '@miraidesigns/textfield';
new MDFTextfield(document.querySelector('.mdf-textfield'));
Some basic examples on how the module can be used.
Icons are a great way to add visual information to your input, like a search icon for example.
<!-- Leading icon -->
<div class="mdf-textfield mdf-textfield--icon-leading">
<label for="textfield" class="mdf-textfield__label">Label</label>
<input id="textfield" class="mdf-textfield__input" type="text">
<svg class="mdf-textfield__icon">
<use href="icons.svg#search"></use>
</svg>
</div>
<!-- Trailing icon -->
<div class="mdf-textfield mdf-textfield--icon-trailing">
<label for="textfield" class="mdf-textfield__label">Label</label>
<input id="textfield" class="mdf-textfield__input" type="text">
<svg class="mdf-textfield__icon">
<use href="icons.svg#lock"></use>
</svg>
</div>
Display the current character count and character limit.
<div class="mdf-textfield mdf-textfield--has-helper">
<label for="textfield-counter" class="mdf-textfield__label">Text field</label>
<input id="textfield-counter" class="mdf-textfield__input" type="text" maxlength="30">
<div class="mdf-textfield__helper-line">
<span class="mdf-textfield__helper mdf-textfield__helper--counter"></span>
</div>
</div>
Textareas automatically grow in size to accommodate their content.
<div class="mdf-textfield mdf-textfield--textarea">
<label for="textarea" class="mdf-textfield__label">Textarea</label>
<textarea id="textarea" class="mdf-textfield__input" rows="1"></textarea>
</div>
Password fields allow to toggle between hidden and plain text.
<div class="mdf-textfield mdf-textfield--has-helper mdf-textfield--icon-trailing">
<label for="password-field" class="mdf-textfield__label">Password</label>
<input id="password-field" class="mdf-textfield__input" type="password" minlength="8" maxlength="12" pattern="[a-zA-Z0-9]+">
<div class="mdf-textfield__helper-line">
<span class="mdf-textfield__helper"></span>
</div>
<button class="mdf-textfield__button mdf-textfield__button--toggle">
<svg class="mdf-textfield__icon" viewBox="0 0 24 24" aria-hidden="true">
<use href="icons.svg#visibility"></use>
<use class="mdf-hidden" href="icons.svg#visibility-off"></use>
</svg>
</button>
</div>
Name | Type | Description |
---|---|---|
mdf-textfield | Parent | Contains the input elements |
mdf-textfield--condensed | Modifier | Reduce the input's height |
mdf-textfield--stretch | Modifier | Stretches the input to the width of its parent |
mdf-textfield--disabled | Modifier | Greys out the input, stops all interaction with the element |
mdf-textfield--state-success | Modifier | Used in input validation, changes input colors to green |
mdf-textfield--state-warning | Modifier | Used in input validation, changes input colors to yellow |
mdf-textfield--state-error | Modifier | Used in input validation, changes input colors to red |
mdf-textfield--textarea | Modifier | For textarea elements |
mdf-textfield--number | Modifier | For number input elements |
mdf-textfield--has-helper | Modifier | Prepare the input for helper text (also used for error messages) |
mdf-textfield--icon-leading | Modifier | Prepare the input for a leading icon |
mdf-textfield--icon-trailing | Modifier | Prepare the input for a trailing icon |
mdf-textfield__label | Child | Label element, child to .mdf-textfield |
mdf-textfield__label--floating | Modifier | Moves the label above the input |
mdf-textfield__label--focus | Modifier | Focus styles for the label |
mdf-textfield__label--shake | Modifier | Play the shake animation |
mdf-textfield__input | Child | Input element. Child to .mdf-textfield |
mdf-textfield__icon | Child | Icon element. Child to .mdf-textfield |
mdf-textfield__button | Child | Button element. Child to .mdf-textfield |
mdf-textfield__helper-line | Parent / Child | Contains the helper text and text counter. Child to .mdf-textfield |
mdf-textfield__helper | Child | Helper text, used to display useful information and errors. Child to .mdf-textfield__helper-line |
mdf-textfield__helper--counter | Modifier | Used for the character counter |
Name | Type | Description |
---|---|---|
.counter | HTMLElement | Returns the counter element |
.helper | HTMLElement | Returns the helper element |
.input | HTMLInputElement | Returns the input element |
.label | HTMLElement | Returns the label element |
.leadingIcon | HTMLElement | Returns the leading icon element |
.toggle | HTMLElement | Returns the password toggle element |
.trailingIcon | HTMLElement | Returns the trailing icon element |
.type | string | Get or set the input's type |
.value | string | Get or set the input's value |
.length | number | Get the value's current length |
.minLength | number | Get or set the input's minLength |
.maxLength | number | Get or set the input's maxLength |
.min | string | Get or set the input's min |
.max | string | Get or set the input's max |
.step | string | Get or set the input's step |
.pattern | string | Get or set the input's pattern |
.required | boolean | Get or set the input's required state |
.disabled | boolean | Get or set the input's disabled state |
.prefix | string | Get or set the prefix text |
.suffix | string | Get or set the suffix text |
.message | string | Get or set the helper message |
.validate | boolean | Get or set if the input should use validation (defaults to true ) |
.state | string | Get the current input state |
.setState(state) | (string): void | Set the current input state. Valid value are Success Warning Error |
.clearState() | (): void | Clear the current input state |
.setError(error) | (string): void | Set Error state and display the given error message |
.clearError() | (): void | Clear input state and remove message |
.floatLabel(float) | (boolean): void | Float the label or restore the default position |
.focusLabel(focus) | (boolean): void | Focus the label or remove focus from it |
.shakeLabel() | (): void | Shake the label to indicate an invalid input |
FAQs
Mirai Designs Framework: Textfield module
We found that @miraidesigns/textfield demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Research
Security News
Socket’s threat research team has detected six malicious npm packages typosquatting popular libraries to insert SSH backdoors.
Security News
MITRE's 2024 CWE Top 25 highlights critical software vulnerabilities like XSS, SQL Injection, and CSRF, reflecting shifts due to a refined ranking methodology.
Security News
In this segment of the Risky Business podcast, Feross Aboukhadijeh and Patrick Gray discuss the challenges of tracking malware discovered in open source softare.