@silexlabs/grapesjs-symbols
Version:
Symbols for GrapesJS
55 lines • 1.64 kB
JavaScript
import grapesjs from 'grapesjs';
import { createSymbol } from './model/Symbol';
// let's use the editor in headless mode
// to create components
const editor = grapesjs.init({
headless: true,
storageManager: { autoload: false },
});
export function getTestSymbols() {
const [comp1, comp2, comp3] = editor.addComponents([{
test: 'comp1 S1',
}, {
test: 'comp2 S1',
symbolId: 'S1',
}, {
test: 'comp3 S2',
}]);
const [child11, child12] = comp1.append([{
test: 'child11',
}, {
test: 'child12',
}]);
const [child111] = child11.append([{
test: 'child111',
}]);
const [child21, child22] = comp2.append([{
test: 'child21',
symbolChildId: child11.cid,
}, {
test: 'child22',
symbolChildId: child12.cid,
}]);
const [child211] = child21.append([{
test: 'child211',
symbolChildId: child111.cid,
}]);
const s1Data = {
icon: 'fa-cog',
label: 'S1',
symbolId: 'S1',
};
// This is equivalent to
// const s1 = createSymbol(comp1, s1Data)
const s1 = createSymbol(editor, comp1, s1Data);
s1.addInstance(comp2);
s1.get('model').set('test', 'S1 model');
const s2 = createSymbol(editor, comp3, {
icon: 'fa-cog',
label: 'S2',
});
s2.get('instances')
.set(comp3.cid, comp3);
return { child11, child12, child21, child22, child111, child211, comp1, comp2, s1, s2, s1Data, editor };
}
//# sourceMappingURL=test-utils.js.map