
Research
/Security News
GlassWASM: WebAssembly Malware Found in Trojanized Open VSX Extensions
The trojanized extensions use TinyGo-compiled WebAssembly and Solana transaction memos to resolve command-and-control infrastructure.
react-input-material
Advanced tools
Reusable material design based input field with support for (richt-)text, code, selections, numbers, dates and so on.
Reusable material design based input field with support for (richt-)text, code, selections, numbers, dates and so on.
You can install via package manager or simply download the compiled version as zip file here and inject:
npm install react-input-material
import {
TextInput, FileInput, Checkbox, Inputs, Interval
} from 'react-input-material'
// ...
const Application = () =>
<TextInput<string>
name="simpleInput"
onChange={({value, invalid}) => {
console.log('Set value', value)
if (invalid)
console.log('Value is invalid!')
}}
/>
const Application = () => {
const [value, setValue] = useState<null | string>(null)
return <TextInput<null | string>
name = "simpleInputControlled"
onChangeValue = {setValue}
value = {value}
/>
}
const Application = () =>
<TextInput<number>
declaration="Number"
description="Place a number please."
name="number"
placeholder="100000"
maximum={200000}
minimum={10}
required
type="number"
/>
const Application = () =>
<TextInput<string>
className="text-input--code-editor"
editor="code(js)"
rows={6}
initialValue="const value = 2"
/>
const Application = () =>
<TextInput<string>
className="text-input--richtext-editor"
declaration="richtext"
description="Please your styled text here."
name="RichText"
placeholder="Hello Mr. Smith,<br><br>this is a Placeholder."
editor="richtext"
rows={6}
selectableEditor
initialValue="Hello Mr. Smith,<br><br>how are you?"
minimumLength={10}
maximumLength={100}
required
onChangeValue={(value) => {
console.log('Current value is', value)
}}
/>
const Application = () =>
<TextInput<number>
default={
new Date('2025-01-01T00:00:00.000Z')
.getTime() / 1000
}
name="timeInput"
type="date"
/>
const Application = () =>
<TextInput<number>
default="2025-01-01T23:00:00.000Z"
name="timeInput"
type="date-local"
/>
const Application = () =>
<TextInput<string>
declaration="Selection Example"
name="Example selection"
selection={['A', 'B', 'C']}
/>
const Application = () =>
<TextInput<string>
name="Another selection example"
required
selection={[
{value: 'A', label: 'a'},
{value: 'B', label: 'b'},
{value: 'C', label: 'c'}
]}
/>
const Application = () =>
<FileInput name="fileInput" />
const Application = () => <Checkbox />
const Application = () =>
<Inputs<boolean | null, CheckboxProps>
name="checkboxInputs"
default={[{
type: 'boolean',
value: false,
required: true,
showInitialValidationState: true
}]}
createItem={useMemorizedValue(({
index, item, properties: {name}
}: CreateItemOptions<
boolean | null,
CheckboxProps,
InputsProperties<boolean | null, CheckboxProps>
>): CheckboxProps => ({
...item,
name: `${name}-${String(index + 1)}`
}))}
maximumNumber={2}
minimumNumber={2}
showInitialValidationState
>
{({properties}) => <Checkbox {...properties} />}
</Inputs>
const Application = () =>
<Interval
name="Interval example"
required
step={60}
value={{
start: {default: 120, maximum: 3600},
end: {default: 240, minimum: 120}
}}
/>
FAQs
Reusable material design based input field with support for (richt-)text, code, selections, numbers, dates and so on.
The npm package react-input-material receives a total of 321 weekly downloads. As such, react-input-material popularity was classified as not popular.
We found that react-input-material demonstrated a healthy version release cadence and project activity because the last version was released less than 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
The trojanized extensions use TinyGo-compiled WebAssembly and Solana transaction memos to resolve command-and-control infrastructure.

Security News
Anthropic says the directive cited national security concerns over a narrow jailbreak, but offered no specific technical details.

Security News
A network of 152 Chrome live wallpaper extensions hid ad tracking and made extension-driven traffic look like Google search clicks.