Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/grapesjs/components-forms
Set of form components and blocks for the GrapesJS editor
https://github.com/grapesjs/components-forms
builder form grapesjs website wysiwyg
Last synced: 7 days ago
JSON representation
Set of form components and blocks for the GrapesJS editor
- Host: GitHub
- URL: https://github.com/grapesjs/components-forms
- Owner: GrapesJS
- License: bsd-3-clause
- Created: 2017-06-15T19:57:41.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2023-06-07T11:51:23.000Z (over 1 year ago)
- Last Synced: 2024-11-24T12:04:36.341Z (29 days ago)
- Topics: builder, form, grapesjs, website, wysiwyg
- Language: TypeScript
- Size: 422 KB
- Stars: 72
- Watchers: 5
- Forks: 58
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GrapesJS Forms
This plugin adds some of the basic form components and blocks which help in working with forms easier
[Demo](http://grapesjs.com/demo.html)
Available components:
`form`
`input`
`textarea`
`select`
`option`
`checkbox`
`radio`
`button`
`label`## Options
| Option | Description | Default|
| --------------- | -------------------------------- | ----------------------------------------------------------------------------------------|
|`blocks`|Which blocks to add| `['form', 'input', 'textarea', 'select', 'button', 'label', 'checkbox', 'radio']` (all) |
|`category`|Category name|`Forms`|
|`block`|Add custom block options, based on block id.|`(blockId) => ({})`|## Download
* CDN
* `https://unpkg.com/grapesjs-plugin-forms`
* NPM
* `npm i grapesjs-plugin-forms`
* GIT
* `git clone https://github.com/GrapesJS/components-forms.git`## Usage
Directly in the browser
```html
var editor = grapesjs.init({
fromElement: 1,
container : '#gjs',
plugins: ['grapesjs-plugin-forms'],
pluginsOpts: {
'grapesjs-plugin-forms': {/* ...options */}
}
});```
Modern javascript
```js
import grapesjs from 'grapesjs';
import gjsForms from 'grapesjs-plugin-forms';const editor = grapesjs.init({
container : '#gjs',
// ...
plugins: [gjsForms],
pluginsOpts: {
[gjsForms]: { /* options */ }
}
// or
plugins: [
editor => gjsForms(editor, { /* options */ }),
],
});
```## I18n
If you need to change some of the components/traits labels, you can rely on the i18n module, here a complete example for the default `en` language
```js
editor.I18n.addMessages({
en: {
blockManager: {
labels: {
form: 'EN Form',
input: 'EN Input',
textarea: 'EN Textarea',
select: 'EN Select',
checkbox: 'EN Checkbox',
radio: 'EN Radio',
button: 'EN Button',
label: 'EN Label',
},
categories: {
forms: 'EN Forms',
}
},
domComponents: {
names: {
form: 'EN Form',
input: 'EN Input',
textarea: 'EN Textarea',
select: 'EN Select',
checkbox: 'EN Checkbox',
radio: 'EN Radio',
button: 'EN Button',
label: 'EN Label',
},
},
traitManager: {
traits: {
labels: {
method: 'EN Method',
action: 'EN Action',
name: 'EN Name',
placeholder: 'EN Placeholder',
type: 'EN Type',
required: 'EN Required',
options: 'EN Options',
id: 'EN Id',
for: 'EN For',
value: 'EN Value',
checked: 'EN Checked',
text: 'EN Text',
},
options: {
type: {
text: 'EN Text',
email: 'EN Email',
password: 'EN Password',
number: 'EN Number',
submit: 'EN Submit',
reset: 'EN Reset',
button: 'EN Button',
}
}
},
},
}
});
```## Development
Clone the repository
```sh
$ git clone https://github.com/GrapesJS/components-forms.git
$ cd grapesjs-plugin-forms
```Install it
```sh
$ npm i
```Start the dev server
```sh
$ npm start
```## License
BSD 3-Clause