Security News
Node.js EOL Versions CVE Dubbed the "Worst CVE of the Year" by Security Experts
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
react-talend-forms
Advanced tools
This library is designed to be used on top of react-jsonschema-form, a React component for building Web forms from JSONSchema.
In addition of Mozilla lib, this wrapper uses react-bootstrap to not have to maintain Bootstrap markup.
Run npm install --save react-talend-forms
.
The forms can be used like any other React components. You'll have to pass it a JSONSchema and a onSubmit callback as a minimum to handle forms rendering and get the data back.
import Form from 'react-talend-forms';
class MyForm extends React.Component {
onSubmit(formData) {
console.log(formData);
}
onCancel() {
console.log('Cancelled');
}
render() {
const actions = [
{ style: 'link', onClick: this.onCancel, type: 'button', label: 'CANCEL' },
{ style: 'primary', type: 'submit', label: 'VALIDATE' },
];
return (
<Form data={this.props.data} actions={actions} onSubmit={this.onSubmit} />
);
}
}
Here is the archetype of the data property required to render the form:
{
"jsonSchema": {},
"uiSchema": {},
"properties": {}
}
Forms now render a react-talend-components Action
component for each action given to it.
Each action accept the following properties :
property | propType | required | default | doc |
---|---|---|---|---|
iconPosition | other | no | - | |
icon | string | no | - | |
hideLabel | bool | no | - | |
disabled | bool | no | {false} | |
style | string | no | "default" | equivalent to action bsStyle props |
iconTransform | string | no | - | |
id | string | no | - | |
inProgress | bool | no | {false} | |
label | string | yes | - | |
link | bool | no | - | |
model | object | no | - | |
name | string | no | - | render a name button html property |
onClick | func | yes | - | execute the callback with formData , formId , propertyName , propertyValue as parameters |
tooltip | bool | no | - | |
tooltipPlacement | other | no | "top" | |
type | 'submit'|'button' | no | - | by default render a button without submit type |
If uiSchema has some triggers like
{
"jsonSchema": {
"id": "ListExample",
"type": "object",
"properties": {
"propertyName": {
"type": "string",
"enum": [
"option 0",
"option 1",
"option 2"
]
}
}
},
"uiSchema": {
"propertyName": {
"ui:trigger": [ "after" ]
}
},
"properties": {}
}
Then onChange
will be triggered when propertyName
field value has changed.
import Form from 'react-talend-forms';
class MyForm extends React.Component {
onChange(formData, formId, propertyName, propertyValue) {
console.log(formData, formId, propertyName, propertyValue);
}
onSubmit(formData) {
console.log(formData);
}
render() {
return (
<Form
data={this.props.data}
onChange={this.onChange}
onSubmit={this.onSubmit}
/>
);
}
}
The data and actions PropTypes are exported for easy reuse. You can use them by importing the DataPropTypes and ActionsPropTypes functions.
import Form, { DataPropTypes, ActionsPropTypes } from 'react-talend-forms'
Copyright (c) 2006-2016 Talend
Licensed under the Apache V2 License
FAQs
react-talend-forms library.
We found that react-talend-forms demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 5 open source maintainers 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.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.
Security News
cURL and Go security teams are publicly rejecting CVSS as flawed for assessing vulnerabilities and are calling for more accurate, context-aware approaches.
Security News
Bun 1.2 enhances its JavaScript runtime with 90% Node.js compatibility, built-in S3 and Postgres support, HTML Imports, and faster, cloud-first performance.