Releases: GrapesJS/grapesjs
Releases · GrapesJS/grapesjs
v0.17.25
Docs
- Added Parser API Reference
- Added CssRule API Reference
- Added Block API Reference
- Added Device API Reference
- Updated Devices API Reference
Added
- Added
headless
option in order to use GrapesJS in Nodejs.
Not all the API are supported: #3672 - Added
canvas.getCoords
andcanvas.setCoords
methods #3668 - Added
default
device option in deviceManager configuration #3679 - Added
onClick
property to Block - Allow Content-Security-Policy without unsafe eval #3558
Fixed
v0.17.22
Added
- Allow exporting CSS rules from code manager by using
json
option.
editor.CodeManager.getCode(component, 'css', { json: 1 })
- Generate CSS code from the array of rules in code manager.
editor.CodeManager.getCode(null, 'css', { rules: [...] })
- Added
editor.addStyle
method - Added
editor.getEditing
method
Fixed
v0.17.19
Added
Changed
- Deprecated
style-signature
Component property
Fixed
v0.17.4
Added
- Add a new
extend
option in LayerManager config, in order to extend the layer item view
Changed
- Allow
droppable
component property to be a function for a more granular check #3393
Fixed
- Avoid tracking device changes in undo manager #3437
- Prevent breaking the changes counter #3412
- Fix destroy method #3442
- Check target in sorter before move #2498
- Fixed issue with panels visible attribute being not used #3430
Removed
⚠️ v0.17.3
v0.16.45
v0.16.44
v0.16.41
Added
- Added root options
optsHtml
andoptsCss
, in order to pass them as default toeditor.toHtml()
andeditor.toCss()
(eg. used already in the export code and the Storage) - Added
cleanId
option toeditor.getHtml
in order to remove unnecessary IDs (eg. those created automatically) - Added
Component.removeAttributes
method - Added
options
as a second argument to theComponent.components()
method - Added
ComponentView.onAttrUpdate
callback - Added
component:remove:before
event. This allows to put conditions before deleting a component
editor.on('component:remove:before', function(component, remove, opts) {
if (component.is('my-custom-type')) {
opts.abort = true; // This will abort the remove
// Pseudo-code of some modal/dialog
yourAsyncDialog('Are you sure?', {
confirmed: () => remove(), // complete the remove
});
}
});
Changed
- Skip the CSSRule from the JSON if there is no
style
- Avoid rendering
content
if the component has childrencomponents
Fixed
- Fixed useless updates in
component.addAttributes
- Defer SelectComponent in order to prevent canvas "freeze" #2692
- Make the Droppable end event more reliable
- Hide toolbars properly
- Pass properly options in setStyle #3176
- Trigger the counter change on text update #3224
- Fixed Sorter errors and moved them in the warning logs
- Avoid dropping non-selectable and non-editable text nodes inside the editor
v0.16.34
Docs
- Updated Components & JS guide with the new approach for the creation of Components with JS (the old one still works).
The biggest advantage over the previous one is how the final code is created. With the old one, you could have the wholescript
content duplicated as many times as components of the same type (new script content will be output only once per type). The new approach avoids also issues with different JS minifiers (due to string templates).
Added
- Added
script-props
property to Component. Read the new Components & JS - Wherever you add/remove/update a component you can now pass
noCount
option to avoid triggering the count of changes (eg. for skipping the Storage)
editor.addComponents('<div>New components</div>', { noCount: true });
// or
component.append('<div>New components</div>', { noCount: true });
- Added
move()
method to the Component
Changed
- Start using
grapesjs-cli
for the dev server and the build - In UndoManager, start using
noUndo
option instead ofavoidStore
for skipping the trigger - Rerender Component toolbar when necessary
- Keep track of selected components when turning on/off the preview
Fixed
- Avoid useless change counter updates #3189
- Properly hide all toolbars when a Component is removed #3175
- Pass properly the options when removing components and rules #3176
- Adjust editor listeners in PropertyView #3197
- Avoid twice the storage of
src
in Image components #3201 - Hide properly the toolbar on the preview on #3209
v0.16.30
Added
- Added Catalan language #3105
- Allow to pass
el
prop to Buttons from Panels module - New
getRules(selector)
method added in CssComposer module - Added and improved destroy method in all modules, in order to fix general memory leaks
- Added
limitlessMax
andlimitlessMin
props to InputNumber in order to allow showing calculated values from components #3147 - Added keydown event to handle up and down arrows in InputNumber #3158
- Added
contains
method to Component - Started Symbol implementation (for now, only private APIs)
Changed
- Codemirror version upgrade #3106
- Improve number trait #3132
- Replaced
node-sass
withdart-sass
#3148 - Apply
avoidDefaults
option also toSelectors
intoJSON
method
Fixed
- Clone properly the component with its related styles #3093
- Fix unbind of keymaps #2758
- Fix RTE update in text components #3069
- Fix update of properties on
setTarget
in StyleManager #3081 - Fix hover state in Layers #3065
- Prevent frame scroll on the first component drag #3134
- Parse single textnode as component #3034
- Prevent losing component id on undo/redo