An advanced selector management plugin for GrapesJS, specifically designed for cases where the default Selector Manager falls short,
Before: GrapesJs default Selector Manager
After: GrapesJs Advanced Selector Manager
-screenshot to come soon-
- DEMO (TODO: Provide a live demo)
- Discussion on GrapesJS Forum
- Feature Request in Silex Project
- Replace the default Selector Manager UI with a custom interface
- Integrate with the Style Manager for editing complex CSS selectors
.child
(already possible with the default Selector Manager).child:pseudo
(already possible with the default Selector Manager).parent > .child
.parent:pseudo > .child
.parent:pseudo .child
tag .child
- Pseudo selectors with parameters, e.g.,
:nth-child(2)
- Pseudo selectors with a selector, e.g.,
:not(.child)
Choose one of the following methods:
<script src="https://unpkg.com/@silexlabs/grapesjs-advanced-selector"></script>
npm i @silexlabs/grapesjs-advanced-selector
git clone https://github.com/silexlabs/@silexlabs/grapesjs-advanced-selector.git
Include the plugin with GrapesJS in your HTML:
<link href="https://unpkg.com/grapesjs/dist/css/grapes.min.css" rel="stylesheet">
<script src="https://unpkg.com/grapesjs"></script>
<script src="https://unpkg.com/@silexlabs/grapesjs-advanced-selector"></script>
<div id="gjs"></div>
const editor = grapesjs.init({
container: '#gjs',
height: '100%',
fromElement: true,
storageManager: false,
plugins: ['@silexlabs/grapesjs-advanced-selector'],
});
Customize the plugin’s behavior by passing options:
Option | Description | Default |
---|---|---|
option1 |
Description for option1 | default value |
Use the plugin with modern JavaScript imports:
import grapesjs from 'grapesjs';
import plugin from '@silexlabs/grapesjs-advanced-selector';
import 'grapesjs/dist/css/grapes.min.css';
const editor = grapesjs.init({
container: '#gjs',
plugins: [plugin],
pluginsOpts: {
[plugin]: { /* options */ }
},
});
To contribute, follow these steps:
-
Clone the Repository:
git clone https://github.com/silexlabs/@silexlabs/grapesjs-advanced-selector.git cd @silexlabs/grapesjs-advanced-selector
-
Install Dependencies:
npm install
-
Start Development Server:
npm start
-
Build the Plugin:
npm run build
MIT License