@silexlabs/grapesjs-symbols
Version:
Symbols for GrapesJS
47 lines • 1.93 kB
JavaScript
;
var __assign = (this && this.__assign) || function () {
__assign = Object.assign || function(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
Object.defineProperty(exports, "__esModule", { value: true });
var SymbolsView_1 = require("./view/SymbolsView");
var SymbolsCommands_1 = require("./SymbolsCommands");
var capabilities_1 = require("./capabilities");
var traits_1 = require("./view/traits");
var id_utils_1 = require("./id-utils");
exports.default = (function (editor, opts) {
if (opts === void 0) { opts = {}; }
var options = __assign({
appendTo: '#symbols',
emptyText: 'No symbol yet.',
primaryColor: '#b9a5a6',
secondaryColor: '#463a3c',
highlightColor: '#d97aa6',
}, opts);
editor.on('load', function () {
// Display symbols
new SymbolsView_1.default(__assign(__assign({}, options), { editor: editor }));
// Commands to create/delete symbols
(0, SymbolsCommands_1.default)(editor);
// Add traits like a plugin
(0, traits_1.default)(editor, options);
// When a symbol instance is created (by any method: drop, duplicate, API, etc.),
// update ID references to match the new unique IDs generated by GrapesJS
editor.on('symbol:instance:add', function (_a) {
var component = _a.component;
(0, id_utils_1.makeInstanceIdsUnique)(editor, component);
});
});
// Register AI capabilities if grapesjs-ai-capabilities is loaded
editor.on('ai-capabilities:ready', function (addCapability) {
(0, capabilities_1.registerCapabilities)(addCapability);
});
});
//# sourceMappingURL=index.js.map