diff --git a/Resources/Private/JavaScript/CkStyles/src/InlineStylesEditing.js b/Resources/Private/JavaScript/CkStyles/src/InlineStylesEditing.js
index 335bbf3..22dd402 100644
--- a/Resources/Private/JavaScript/CkStyles/src/InlineStylesEditing.js
+++ b/Resources/Private/JavaScript/CkStyles/src/InlineStylesEditing.js
@@ -40,7 +40,7 @@ export default (presetIdentifier, presetConfiguration) =>
config.view[optionIdentifier] = {
name: 'span',
- attributes: {[attribute]: classes}
+ attributes: {[attribute ? attribute : 'class']: classes}
}
});
diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js b/Resources/Public/JavaScript/CkStyles/Plugin.js
index 10119cc..14e7cbe 100644
--- a/Resources/Public/JavaScript/CkStyles/Plugin.js
+++ b/Resources/Public/JavaScript/CkStyles/Plugin.js
@@ -1646,7 +1646,7 @@ exports.default = function (presetIdentifier, presetConfiguration) {
config.view[optionIdentifier] = {
name: 'span',
- attributes: _defineProperty({}, attribute, classes)
+ attributes: _defineProperty({}, attribute ? attribute : 'class', classes)
};
});
diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js.map b/Resources/Public/JavaScript/CkStyles/Plugin.js.map
index 8ee89a9..1ebe8f2 100644
--- a/Resources/Public/JavaScript/CkStyles/Plugin.js.map
+++ b/Resources/Public/JavaScript/CkStyles/Plugin.js.map
@@ -1 +1 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js","webpack:///./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js","webpack:///./node_modules/tslib/tslib.es6.js","webpack:///./src/BlockStyleCommand.js","webpack:///./src/BlockStyleEditing.js","webpack:///./src/InlineStylesCommand.js","webpack:///./src/InlineStylesEditing.js","webpack:///./src/PresetType.js","webpack:///./src/components/BlockStyleSelector.js","webpack:///./src/components/InlineStyleSelector.js","webpack:///./src/index.js","webpack:///./src/manifest.js"],"names":["exports","__esModule","tslib_1","require","manifest_1","__importDefault","createReadOnlyValue","value","writable","enumerable","configurable","createConsumerApi","manifests","exposureMap","api","Object","keys","forEach","key","defineProperty","window","createConsumerApi_1","readFromConsumerApi_1","readFromConsumerApi","index_1","SynchronousRegistry","SynchronousMetaRegistry","identifier","options","bootstrap","_a","push","args","_i","arguments","length","apply","__spread","Error","AbstractRegistry","description","SERIAL_VERSION_UID","SynchronousRegistry_1","_super","__extends","prototype","set","call","AbstractRegistry_1","positional_array_sorter_1","_this","_registry","position","entry","indexOfItemWithTheSameKey","findIndex","item","get","console","error","result","find","_getChildrenWrapped","searchKey","unsortedChildren","filter","indexOf","getChildrenAsObject","getChildren","map","has","Boolean","_getAllWrapped","getAllAsObject","getAllAsList","assign","id","SynchronousMetaRegistry_1","module","CkEditorApi","NeosUiReduxStore","ReactUiComponents","CkEditor5","plow","PropTypes","reactRedux","React","positionalArraySorter","subject","idKey","e_1","e_2","_b","e_3","_c","e_4","_d","e_5","_e","e_6","_f","e_7","_g","positionAccessor","indexMapping","middleKeys","startKeys","endKeys","beforeKeys","afterKeys","index","String","positionValue","invalid","startsWith","weightMatch","match","weight","Number","reference","numberPosition","parseFloat","isNaN","isFinite","resultStart","resultMiddle","resultEnd","processedKeys","sortedWeights","dict","asc","weights","x","sort","a","b","reverse","addToResults","e_8","e_9","beforeWeights","beforeWeights_1","__values","beforeWeights_1_1","next","done","i","e_8_1","afterWeights","afterWeights_1","afterWeights_1_1","e_9_1","_h","_j","e_1_1","_k","_l","e_2_1","_m","_o","e_3_1","_p","_q","_r","_s","e_5_1","e_4_1","_t","_u","_v","_w","e_7_1","e_6_1","sortedKeys","BlockStyleCommand","editor","attributeKey","model","doc","document","blocksToChange","Array","from","selection","getSelectedBlocks","_getValueFromBlockNode","block","schema","checkAttribute","isEnabled","change","writer","setAttribute","removeAttribute","blocks","getAttribute","undefined","Command","presetIdentifier","presetConfiguration","modelAttributeKey","optionIdentifiers","extend","allowAttributes","setAttributeProperties","isFormatting","config","values","view","optionIdentifier","attribute","attributeValues","attributeValue","cssClass","split","conversion","attributeToAttribute","commands","add","Plugin","InlineStylesCommand","_getValueFromFirstAllowedNode","checkAttributeInSelection","isCollapsed","setSelectionAttribute","removeSelectionAttribute","ranges","getValidRanges","getRanges","range","getItems","classes","name","attributes","attributeToElement","attributeValueOrCssClass","props","propName","componentName","shape","label","string","isRequired","objectOf","BlockStyleSelector","formattingUnderCursor","selectors","UI","ContentCanvas","handleOnSelect","bind","optionsForSelect","entries","optionConfiguration","currentValue","executeCommand","PureComponent","propTypes","PresetType","object","InlineStyleSelector","globalRegistry","frontendConfiguration","ckEditorRegistry","richtextToolbar","inlineStyleConfiguration","blockStyleConfiguration","presets","blockStylePresetConfiguration","ckEditorConfiguration","editorOptions","editing","plugins","component","isVisible","inlineStylePresetConfiguration"],"mappings":"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","file":"Plugin.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./src/index.js\");\n","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar manifest_1 = tslib_1.__importDefault(require(\"./manifest\"));\nvar createReadOnlyValue = function (value) { return ({\n value: value,\n writable: false,\n enumerable: false,\n configurable: true\n}); };\nfunction createConsumerApi(manifests, exposureMap) {\n var api = {};\n Object.keys(exposureMap).forEach(function (key) {\n Object.defineProperty(api, key, createReadOnlyValue(exposureMap[key]));\n });\n Object.defineProperty(api, '@manifest', createReadOnlyValue(manifest_1[\"default\"](manifests)));\n Object.defineProperty(window, '@Neos:HostPluginAPI', createReadOnlyValue(api));\n}\nexports[\"default\"] = createConsumerApi;\n//# sourceMappingURL=createConsumerApi.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar createConsumerApi_1 = tslib_1.__importDefault(require(\"./createConsumerApi\"));\nexports.createConsumerApi = createConsumerApi_1[\"default\"];\nvar readFromConsumerApi_1 = tslib_1.__importDefault(require(\"./readFromConsumerApi\"));\nexports.readFromConsumerApi = readFromConsumerApi_1[\"default\"];\nvar index_1 = require(\"./registry/index\");\nexports.SynchronousRegistry = index_1.SynchronousRegistry;\nexports.SynchronousMetaRegistry = index_1.SynchronousMetaRegistry;\nexports[\"default\"] = readFromConsumerApi_1[\"default\"]('manifest');\n//# sourceMappingURL=index.js.map","\"use strict\";\nexports.__esModule = true;\nexports[\"default\"] = (function (manifests) {\n return function (identifier, options, bootstrap) {\n var _a;\n manifests.push((_a = {},\n _a[identifier] = {\n options: options,\n bootstrap: bootstrap\n },\n _a));\n };\n});\n//# sourceMappingURL=manifest.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nfunction readFromConsumerApi(key) {\n return function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (window['@Neos:HostPluginAPI'] && window['@Neos:HostPluginAPI'][\"@\" + key]) {\n return (_a = window['@Neos:HostPluginAPI'])[\"@\" + key].apply(_a, tslib_1.__spread(args));\n }\n throw new Error(\"You are trying to read from a consumer api that hasn't been initialized yet!\");\n };\n}\nexports[\"default\"] = readFromConsumerApi;\n//# sourceMappingURL=readFromConsumerApi.js.map","\"use strict\";\nexports.__esModule = true;\nvar AbstractRegistry = (function () {\n function AbstractRegistry(description) {\n this.SERIAL_VERSION_UID = 'd8a5aa78-978e-11e6-ae22-56b6b6499611';\n this.description = description;\n }\n return AbstractRegistry;\n}());\nexports[\"default\"] = AbstractRegistry;\n//# sourceMappingURL=AbstractRegistry.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar SynchronousRegistry_1 = tslib_1.__importDefault(require(\"./SynchronousRegistry\"));\nvar SynchronousMetaRegistry = (function (_super) {\n tslib_1.__extends(SynchronousMetaRegistry, _super);\n function SynchronousMetaRegistry() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SynchronousMetaRegistry.prototype.set = function (key, value) {\n if (value.SERIAL_VERSION_UID !== 'd8a5aa78-978e-11e6-ae22-56b6b6499611') {\n throw new Error('You can only add registries to a meta registry');\n }\n return _super.prototype.set.call(this, key, value);\n };\n return SynchronousMetaRegistry;\n}(SynchronousRegistry_1[\"default\"]));\nexports[\"default\"] = SynchronousMetaRegistry;\n//# sourceMappingURL=SynchronousMetaRegistry.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar AbstractRegistry_1 = tslib_1.__importDefault(require(\"./AbstractRegistry\"));\nvar positional_array_sorter_1 = tslib_1.__importDefault(require(\"@neos-project/positional-array-sorter\"));\nvar SynchronousRegistry = (function (_super) {\n tslib_1.__extends(SynchronousRegistry, _super);\n function SynchronousRegistry(description) {\n var _this = _super.call(this, description) || this;\n _this._registry = [];\n return _this;\n }\n SynchronousRegistry.prototype.set = function (key, value, position) {\n if (position === void 0) { position = 0; }\n if (typeof key !== 'string') {\n throw new Error('Key must be a string');\n }\n if (typeof position !== 'string' && typeof position !== 'number') {\n throw new Error('Position must be a string or a number');\n }\n var entry = { key: key, value: value };\n if (position) {\n entry.position = position;\n }\n var indexOfItemWithTheSameKey = this._registry.findIndex(function (item) { return item.key === key; });\n if (indexOfItemWithTheSameKey === -1) {\n this._registry.push(entry);\n }\n else {\n this._registry[indexOfItemWithTheSameKey] = entry;\n }\n return value;\n };\n SynchronousRegistry.prototype.get = function (key) {\n if (typeof key !== 'string') {\n console.error('Key must be a string');\n return null;\n }\n var result = this._registry.find(function (item) { return item.key === key; });\n return result ? result.value : null;\n };\n SynchronousRegistry.prototype._getChildrenWrapped = function (searchKey) {\n var unsortedChildren = this._registry.filter(function (item) { return item.key.indexOf(searchKey + '/') === 0; });\n return positional_array_sorter_1[\"default\"](unsortedChildren);\n };\n SynchronousRegistry.prototype.getChildrenAsObject = function (searchKey) {\n var result = {};\n this._getChildrenWrapped(searchKey).forEach(function (item) {\n result[item.key] = item.value;\n });\n return result;\n };\n SynchronousRegistry.prototype.getChildren = function (searchKey) {\n return this._getChildrenWrapped(searchKey).map(function (item) { return item.value; });\n };\n SynchronousRegistry.prototype.has = function (key) {\n if (typeof key !== 'string') {\n console.error('Key must be a string');\n return false;\n }\n return Boolean(this._registry.find(function (item) { return item.key === key; }));\n };\n SynchronousRegistry.prototype._getAllWrapped = function () {\n return positional_array_sorter_1[\"default\"](this._registry);\n };\n SynchronousRegistry.prototype.getAllAsObject = function () {\n var result = {};\n this._getAllWrapped().forEach(function (item) {\n result[item.key] = item.value;\n });\n return result;\n };\n SynchronousRegistry.prototype.getAllAsList = function () {\n return this._getAllWrapped().map(function (item) { return Object.assign({ id: item.key }, item.value); });\n };\n return SynchronousRegistry;\n}(AbstractRegistry_1[\"default\"]));\nexports[\"default\"] = SynchronousRegistry;\n//# sourceMappingURL=SynchronousRegistry.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar SynchronousRegistry_1 = tslib_1.__importDefault(require(\"./SynchronousRegistry\"));\nexports.SynchronousRegistry = SynchronousRegistry_1[\"default\"];\nvar SynchronousMetaRegistry_1 = tslib_1.__importDefault(require(\"./SynchronousMetaRegistry\"));\nexports.SynchronousMetaRegistry = SynchronousMetaRegistry_1[\"default\"];\n//# sourceMappingURL=index.js.map","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('NeosProjectPackages')().CkEditorApi;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('NeosProjectPackages')().NeosUiReduxStore;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('NeosProjectPackages')().ReactUiComponents;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().CkEditor5;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().plow;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().PropTypes;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().reactRedux;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().React;\n","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar positionalArraySorter = function (subject, position, idKey) {\n var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f, e_7, _g;\n if (position === void 0) { position = 'position'; }\n if (idKey === void 0) { idKey = 'key'; }\n var positionAccessor = typeof position === 'string' ? function (value) { return value[position]; } : position;\n var indexMapping = {};\n var middleKeys = {};\n var startKeys = {};\n var endKeys = {};\n var beforeKeys = {};\n var afterKeys = {};\n subject.forEach(function (item, index) {\n var key = item[idKey] ? item[idKey] : String(index);\n indexMapping[key] = index;\n var positionValue = positionAccessor(item);\n var position = String(positionValue ? positionValue : index);\n var invalid = false;\n if (position.startsWith('start')) {\n var weightMatch = position.match(/start\\s+(\\d+)/);\n var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0;\n if (!startKeys[weight]) {\n startKeys[weight] = [];\n }\n startKeys[weight].push(key);\n }\n else if (position.startsWith('end')) {\n var weightMatch = position.match(/end\\s+(\\d+)/);\n var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0;\n if (!endKeys[weight]) {\n endKeys[weight] = [];\n }\n endKeys[weight].push(key);\n }\n else if (position.startsWith('before')) {\n var match = position.match(/before\\s+(\\S+)(\\s+(\\d+))?/);\n if (!match) {\n invalid = true;\n }\n else {\n var reference = match[1];\n var weight = match[3] ? Number(match[3]) : 0;\n if (!beforeKeys[reference]) {\n beforeKeys[reference] = {};\n }\n if (!beforeKeys[reference][weight]) {\n beforeKeys[reference][weight] = [];\n }\n beforeKeys[reference][weight].push(key);\n }\n }\n else if (position.startsWith('after')) {\n var match = position.match(/after\\s+(\\S+)(\\s+(\\d+))?/);\n if (!match) {\n invalid = true;\n }\n else {\n var reference = match[1];\n var weight = match[3] ? Number(match[3]) : 0;\n if (!afterKeys[reference]) {\n afterKeys[reference] = {};\n }\n if (!afterKeys[reference][weight]) {\n afterKeys[reference][weight] = [];\n }\n afterKeys[reference][weight].push(key);\n }\n }\n else {\n invalid = true;\n }\n if (invalid) {\n var numberPosition = parseFloat(position);\n if (isNaN(numberPosition) || !isFinite(numberPosition)) {\n numberPosition = index;\n }\n if (!middleKeys[numberPosition]) {\n middleKeys[numberPosition] = [];\n }\n middleKeys[numberPosition].push(key);\n }\n });\n var resultStart = [];\n var resultMiddle = [];\n var resultEnd = [];\n var processedKeys = [];\n var sortedWeights = function (dict, asc) {\n var weights = Object.keys(dict).map(function (x) { return Number(x); }).sort(function (a, b) { return a - b; });\n return asc ? weights : weights.reverse();\n };\n var addToResults = function (keys, result) {\n keys.forEach(function (key) {\n var e_8, _a, e_9, _b;\n if (processedKeys.indexOf(key) >= 0) {\n return;\n }\n processedKeys.push(key);\n if (beforeKeys[key]) {\n var beforeWeights = sortedWeights(beforeKeys[key], true);\n try {\n for (var beforeWeights_1 = tslib_1.__values(beforeWeights), beforeWeights_1_1 = beforeWeights_1.next(); !beforeWeights_1_1.done; beforeWeights_1_1 = beforeWeights_1.next()) {\n var i = beforeWeights_1_1.value;\n addToResults(beforeKeys[key][i], result);\n }\n }\n catch (e_8_1) { e_8 = { error: e_8_1 }; }\n finally {\n try {\n if (beforeWeights_1_1 && !beforeWeights_1_1.done && (_a = beforeWeights_1[\"return\"])) _a.call(beforeWeights_1);\n }\n finally { if (e_8) throw e_8.error; }\n }\n }\n result.push(key);\n if (afterKeys[key]) {\n var afterWeights = sortedWeights(afterKeys[key], false);\n try {\n for (var afterWeights_1 = tslib_1.__values(afterWeights), afterWeights_1_1 = afterWeights_1.next(); !afterWeights_1_1.done; afterWeights_1_1 = afterWeights_1.next()) {\n var i = afterWeights_1_1.value;\n addToResults(afterKeys[key][i], result);\n }\n }\n catch (e_9_1) { e_9 = { error: e_9_1 }; }\n finally {\n try {\n if (afterWeights_1_1 && !afterWeights_1_1.done && (_b = afterWeights_1[\"return\"])) _b.call(afterWeights_1);\n }\n finally { if (e_9) throw e_9.error; }\n }\n }\n });\n };\n try {\n for (var _h = tslib_1.__values(sortedWeights(startKeys, false)), _j = _h.next(); !_j.done; _j = _h.next()) {\n var i = _j.value;\n addToResults(startKeys[i], resultStart);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_j && !_j.done && (_a = _h[\"return\"])) _a.call(_h);\n }\n finally { if (e_1) throw e_1.error; }\n }\n try {\n for (var _k = tslib_1.__values(sortedWeights(middleKeys, true)), _l = _k.next(); !_l.done; _l = _k.next()) {\n var i = _l.value;\n addToResults(middleKeys[i], resultMiddle);\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_l && !_l.done && (_b = _k[\"return\"])) _b.call(_k);\n }\n finally { if (e_2) throw e_2.error; }\n }\n try {\n for (var _m = tslib_1.__values(sortedWeights(endKeys, true)), _o = _m.next(); !_o.done; _o = _m.next()) {\n var i = _o.value;\n addToResults(endKeys[i], resultEnd);\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (_o && !_o.done && (_c = _m[\"return\"])) _c.call(_m);\n }\n finally { if (e_3) throw e_3.error; }\n }\n try {\n for (var _p = tslib_1.__values(Object.keys(beforeKeys)), _q = _p.next(); !_q.done; _q = _p.next()) {\n var key = _q.value;\n if (processedKeys.indexOf(key) >= 0) {\n continue;\n }\n try {\n for (var _r = (e_5 = void 0, tslib_1.__values(sortedWeights(beforeKeys[key], false))), _s = _r.next(); !_s.done; _s = _r.next()) {\n var i = _s.value;\n addToResults(beforeKeys[key][i], resultStart);\n }\n }\n catch (e_5_1) { e_5 = { error: e_5_1 }; }\n finally {\n try {\n if (_s && !_s.done && (_e = _r[\"return\"])) _e.call(_r);\n }\n finally { if (e_5) throw e_5.error; }\n }\n }\n }\n catch (e_4_1) { e_4 = { error: e_4_1 }; }\n finally {\n try {\n if (_q && !_q.done && (_d = _p[\"return\"])) _d.call(_p);\n }\n finally { if (e_4) throw e_4.error; }\n }\n try {\n for (var _t = tslib_1.__values(Object.keys(afterKeys)), _u = _t.next(); !_u.done; _u = _t.next()) {\n var key = _u.value;\n if (processedKeys.indexOf(key) >= 0) {\n continue;\n }\n try {\n for (var _v = (e_7 = void 0, tslib_1.__values(sortedWeights(afterKeys[key], false))), _w = _v.next(); !_w.done; _w = _v.next()) {\n var i = _w.value;\n addToResults(afterKeys[key][i], resultMiddle);\n }\n }\n catch (e_7_1) { e_7 = { error: e_7_1 }; }\n finally {\n try {\n if (_w && !_w.done && (_g = _v[\"return\"])) _g.call(_v);\n }\n finally { if (e_7) throw e_7.error; }\n }\n }\n }\n catch (e_6_1) { e_6 = { error: e_6_1 }; }\n finally {\n try {\n if (_u && !_u.done && (_f = _t[\"return\"])) _f.call(_t);\n }\n finally { if (e_6) throw e_6.error; }\n }\n var sortedKeys = tslib_1.__spread(resultStart, resultMiddle, resultEnd);\n return sortedKeys.map(function (key) { return indexMapping[key]; }).map(function (i) { return subject[i]; });\n};\nexports[\"default\"] = positionalArraySorter;\n//# sourceMappingURL=positionalArraySorter.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","// Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted\nimport {Command} from 'ckeditor5-exports';\n\n/**\n * Set a key-value block style; e.g. \"fontColor=red\".\n */\n\nexport default class BlockStyleCommand extends Command {\n /**\n * @param {module:core/editor/editor~Editor} editor\n * @param {String} attributeKey Attribute that will be set by the command.\n */\n constructor(editor, attributeKey) {\n super(editor);\n\n /**\n * The attribute that will be set by the command.\n *\n * @readonly\n * @member {String}\n */\n this.attributeKey = attributeKey;\n\n /**\n * Flag indicating whether the command is active. The command is active when the\n * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that:\n *\n * @observable\n * @readonly\n * @member {Boolean} #value\n */\n }\n\n /**\n * Updates the command's {@link #value} and {@link #isEnabled}.\n */\n refresh() {\n const model = this.editor.model;\n const doc = model.document;\n const blocksToChange = Array.from(doc.selection.getSelectedBlocks());\n\n this.value = this._getValueFromBlockNode();\n for (const block of blocksToChange) {\n if (model.schema.checkAttribute(block, this.attributeKey)) {\n this.isEnabled = true;\n }\n }\n }\n\n /**\n * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the\n * attribute on each block.\n *\n * @fires execute\n * @param {Object} [options] Command options.\n * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.\n */\n execute(options = {}) {\n const model = this.editor.model;\n const doc = model.document;\n const selection = doc.selection;\n const value = options.value;\n const blocksToChange = Array.from(selection.getSelectedBlocks());\n model.change(writer => {\n for (const block of blocksToChange) {\n if (value) {\n writer.setAttribute(this.attributeKey, value, block);\n } else {\n writer.removeAttribute(this.attributeKey, block);\n }\n }\n });\n }\n\n /**\n * Checks the attribute value of the parent block node(s)\n *\n * @private\n * @returns {String} The attribute value.\n */\n _getValueFromBlockNode() {\n const model = this.editor.model;\n const schema = model.schema;\n const selection = model.document.selection;\n const blocks = Array.from(selection.getSelectedBlocks());\n\n for (const block of blocks) {\n if (schema.checkAttribute(block, this.attributeKey)) {\n return block.getAttribute(this.attributeKey);\n }\n }\n\n return undefined;\n }\n}\n","import {Plugin, Paragraph} from 'ckeditor5-exports';\nimport BlockStyleCommand from \"./BlockStyleCommand\";\n\n/**\n * FACTORY FUNCTION for the plugin\n * needs the current preset configuration as parameter.\n */\nexport default (presetIdentifier, presetConfiguration) =>\n class BlockStyleEditing extends Plugin {\n init() {\n const schema = this.editor.model.schema;\n const modelAttributeKey = `blockStyles-${presetIdentifier}`;\n const optionIdentifiers = Object.keys(presetConfiguration.options);\n\n schema.extend(\n '$block',\n {allowAttributes: modelAttributeKey}\n );\n\n // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html\n schema.setAttributeProperties(\n modelAttributeKey,\n {isFormatting: true}\n );\n\n // Model configuration\n const config = {\n model: {\n key: modelAttributeKey,\n values: optionIdentifiers,\n },\n view: {}\n };\n\n // View configuration\n optionIdentifiers.forEach(optionIdentifier => {\n const options = presetConfiguration.options[optionIdentifier];\n const attribute = options.attribute || 'class';\n const attributeValues = (attribute === options.attribute) ? options.attributeValue : (options.cssClass).split(' ');\n\n config.view[optionIdentifier] = {\n key: attribute,\n value: attributeValues\n }\n });\n\n // Convert the model to view correctly\n this.editor.conversion.attributeToAttribute(config);\n\n this.editor.commands.add(`blockStyles:${presetIdentifier}`, new BlockStyleCommand(this.editor, modelAttributeKey));\n }\n };\n","// Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted\nimport {Command} from 'ckeditor5-exports';\n\n/**\n * Set a key-value inline style; e.g. \"fontColor=red\".\n *\n */\nexport default class InlineStylesCommand extends Command {\n /**\n * @param {module:core/editor/editor~Editor} editor\n * @param {String} attributeKey Attribute that will be set by the command.\n */\n constructor(editor, attributeKey) {\n super(editor);\n\n /**\n * The attribute that will be set by the command.\n *\n * @readonly\n * @member {String}\n */\n this.attributeKey = attributeKey;\n\n /**\n * Flag indicating whether the command is active. The command is active when the\n * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that:\n **\n * @observable\n * @readonly\n * @member {Boolean} #value\n */\n }\n\n /**\n * Updates the command's {@link #value} and {@link #isEnabled} based on the current selection.\n */\n refresh() {\n const model = this.editor.model;\n const doc = model.document;\n\n this.value = this._getValueFromFirstAllowedNode();\n this.isEnabled = model.schema.checkAttributeInSelection(doc.selection, this.attributeKey);\n }\n\n /**\n * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the\n * attribute.\n *\n * @fires execute\n * @param {Object} [options] Command options.\n * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.\n */\n execute(options = {}) {\n const model = this.editor.model;\n const doc = model.document;\n const selection = doc.selection;\n const value = options.value;\n\n model.change(writer => {\n if (selection.isCollapsed) {\n if (value) {\n // value is existing, we want to set the selection attribute to the value.\n writer.setSelectionAttribute(this.attributeKey, value);\n } else {\n writer.removeSelectionAttribute(this.attributeKey);\n }\n } else {\n const ranges = model.schema.getValidRanges(selection.getRanges(), this.attributeKey);\n\n for (const range of ranges) {\n if (value) {\n writer.setAttribute(this.attributeKey, value, range);\n } else {\n writer.removeAttribute(this.attributeKey, range);\n }\n }\n }\n });\n }\n\n /**\n * Checks the attribute value of the first node in the selection that allows the attribute.\n * For the collapsed selection returns the selection attribute.\n *\n * @private\n * @returns {String} The attribute value.\n */\n _getValueFromFirstAllowedNode() {\n const model = this.editor.model;\n const schema = model.schema;\n const selection = model.document.selection;\n\n if (selection.isCollapsed) {\n return selection.getAttribute(this.attributeKey);\n }\n\n for (const range of selection.getRanges()) {\n for (const item of range.getItems()) {\n if (schema.checkAttribute(item, this.attributeKey)) {\n return item.getAttribute(this.attributeKey);\n }\n }\n }\n\n return undefined;\n }\n}\n","import {Plugin} from 'ckeditor5-exports';\nimport InlineStylesCommand from './InlineStylesCommand';\n\n/**\n * FACTORY FUNCTION for the plugin\n * needs the current preset configuration as parameter.\n */\nexport default (presetIdentifier, presetConfiguration) =>\n class InlineStylesEditing extends Plugin {\n init() {\n const schema = this.editor.model.schema;\n const optionIdentifiers = Object.keys(presetConfiguration.options);\n const modelAttributeKey = `inlineStyles-${presetIdentifier}`;\n\n schema.extend(\n '$text',\n {allowAttributes: modelAttributeKey}\n );\n\n // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html\n schema.setAttributeProperties(\n modelAttributeKey,\n {isFormatting: true}\n );\n\n // Model configuration\n const config = {\n model: {\n key: modelAttributeKey,\n values: optionIdentifiers\n },\n view: {}\n };\n\n // View configuration\n optionIdentifiers.forEach(optionIdentifier => {\n const options = presetConfiguration.options[optionIdentifier];\n const {attribute} = options;\n const classes = options.attributeValue || options.cssClass;\n\n config.view[optionIdentifier] = {\n name: 'span',\n attributes: {[attribute]: classes}\n }\n });\n\n // Convert the model to view correctly\n this.editor.conversion.attributeToElement(config);\n\n this.editor.commands.add(`inlineStyles:${presetIdentifier}`, new InlineStylesCommand(this.editor, modelAttributeKey));\n }\n };\n","import PropTypes from 'prop-types';\n\nfunction attributeValueOrCssClass(props, propName, componentName) {\n if (props[propName] && typeof props[propName] !== 'string') {\n return new Error(`Prop '${propName}' must be a string.`);\n }\n if (!props.attributeValue && !props.cssClass) {\n return new Error(`Either prop 'attributeValue' or 'cssClass' must be supplied to ${componentName}.`);\n }\n}\n\nexport default PropTypes.shape({\n label: PropTypes.string.isRequired,\n\n // keys are the option values\n options: PropTypes.objectOf(PropTypes.shape({\n label: PropTypes.string.isRequired,\n attribute: PropTypes.string,\n attributeValue: attributeValueOrCssClass,\n cssClass: attributeValueOrCssClass,\n })),\n});","import React, {PureComponent} from 'react';\nimport PropTypes from 'prop-types';\nimport {SelectBox} from '@neos-project/react-ui-components';\nimport {connect} from 'react-redux';\nimport {$transform} from 'plow-js';\nimport PresetType from '../PresetType';\n\nimport {selectors} from '@neos-project/neos-ui-redux-store';\nimport * as CkEditorApi from '@neos-project/neos-ui-ckeditor5-bindings';\n\n@connect($transform({\n formattingUnderCursor: selectors.UI.ContentCanvas.formattingUnderCursor\n}))\nexport default class BlockStyleSelector extends PureComponent {\n static propTypes = {\n // from outside props\n presetIdentifier: PropTypes.string.isRequired,\n presetConfiguration: PresetType.isRequired,\n\n // from @connect\n formattingUnderCursor: PropTypes.object\n };\n\n constructor(...args) {\n super(...args);\n\n this.handleOnSelect = this.handleOnSelect.bind(this);\n }\n\n render() {\n const optionsForSelect = Object.entries(this.props.presetConfiguration.options)\n .map(([optionIdentifier, optionConfiguration]) => ({\n value: optionIdentifier,\n label: optionConfiguration.label\n }));\n\n if (optionsForSelect.length === 0) {\n return null;\n }\n\n const currentValue = this.props.formattingUnderCursor[`blockStyles:${this.props.presetIdentifier}`];\n\n return (\n \n );\n }\n\n handleOnSelect(optionIdentifier) {\n CkEditorApi.executeCommand(\n `blockStyles:${this.props.presetIdentifier}`,\n {value: optionIdentifier}\n );\n }\n}\n","import React, {PureComponent} from 'react';\nimport PropTypes from 'prop-types';\nimport {SelectBox} from '@neos-project/react-ui-components';\nimport {connect} from 'react-redux';\nimport {$transform} from 'plow-js';\nimport PresetType from '../PresetType';\n\nimport {selectors} from '@neos-project/neos-ui-redux-store';\nimport * as CkEditorApi from '@neos-project/neos-ui-ckeditor5-bindings';\n\n@connect($transform({\n formattingUnderCursor: selectors.UI.ContentCanvas.formattingUnderCursor\n}))\nexport default class InlineStyleSelector extends PureComponent {\n static propTypes = {\n // from outside props\n presetIdentifier: PropTypes.string.isRequired,\n presetConfiguration: PresetType.isRequired,\n\n // from @connect\n formattingUnderCursor: PropTypes.object\n };\n\n constructor(...args) {\n super(...args);\n\n this.handleOnSelect = this.handleOnSelect.bind(this);\n }\n\n render() {\n const optionsForSelect = Object.entries(this.props.presetConfiguration.options)\n .map(([optionIdentifier, optionConfiguration]) => ({\n value: optionIdentifier,\n label: optionConfiguration.label\n }));\n\n if (optionsForSelect.length === 0) {\n return null;\n }\n\n const currentValue = this.props.formattingUnderCursor[`inlineStyles:${this.props.presetIdentifier}`];\n\n return (\n \n );\n }\n\n handleOnSelect(optionIdentifier) {\n CkEditorApi.executeCommand(\n `inlineStyles:${this.props.presetIdentifier}`,\n {value: optionIdentifier}\n );\n }\n}\n","require('./manifest');","import manifest from '@neos-project/neos-ui-extensibility';\nimport {$get} from 'plow-js';\n\nimport InlineStylesEditing from './InlineStylesEditing';\nimport InlineStyleSelector from './components/InlineStyleSelector';\n\nimport BlockStyleEditing from \"./BlockStyleEditing\";\nimport BlockStyleSelector from \"./components/BlockStyleSelector\";\n\nmanifest('TechDivision.CkStyles:Styles', {}, (globalRegistry, {frontendConfiguration}) => {\n\n const ckEditorRegistry = globalRegistry.get('ckEditor5');\n const richtextToolbar = ckEditorRegistry.get('richtextToolbar');\n const config = ckEditorRegistry.get('config');\n\n const inlineStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:InlineStyles'];\n const blockStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:BlockStyles'];\n\n // Block style\n if (blockStyleConfiguration) {\n\n Object.keys(blockStyleConfiguration.presets).forEach(presetIdentifier => {\n\n const blockStylePresetConfiguration = blockStyleConfiguration.presets[presetIdentifier];\n\n config.set(`TechDivision.CkStyles:BlockStyles_${presetIdentifier}`, (ckEditorConfiguration, {editorOptions}) => {\n const editing = BlockStyleEditing(presetIdentifier, blockStylePresetConfiguration);\n ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || [];\n ckEditorConfiguration.plugins.push(editing);\n return ckEditorConfiguration;\n });\n\n richtextToolbar.set(`blockStyles_${presetIdentifier}`, {\n component: BlockStyleSelector,\n // Display only if the preset is activated in NodeType.yaml for this node property\n isVisible: function (editorOptions, formattingUnderCursor) {\n var isVisible = false;\n if (editorOptions['blockStyling'] !== undefined && editorOptions['blockStyling'][presetIdentifier] !== undefined) {\n isVisible = editorOptions['blockStyling'][presetIdentifier];\n }\n return isVisible;\n },\n presetIdentifier: presetIdentifier,\n presetConfiguration: blockStylePresetConfiguration\n });\n\n });\n }\n\n //Inline Style\n if (inlineStyleConfiguration) {\n\n Object.keys(inlineStyleConfiguration.presets).forEach((presetIdentifier) => {\n\n const inlineStylePresetConfiguration = inlineStyleConfiguration.presets[presetIdentifier];\n\n config.set(`TechDivision.CkStyle:InlineStyles_${presetIdentifier}`, (ckEditorConfiguration, {editorOptions}) => {\n ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || [];\n ckEditorConfiguration.plugins.push(InlineStylesEditing(presetIdentifier, inlineStylePresetConfiguration));\n return ckEditorConfiguration;\n });\n\n richtextToolbar.set(`inlineStyles_${presetIdentifier}`, {\n component: InlineStyleSelector,\n // Display only if the preset is activated in NodeType.yaml for this node property\n isVisible: function (editorOptions, formattingUnderCursor) {\n var isVisible = false;\n if (editorOptions['inlineStyling'] !== undefined && editorOptions['inlineStyling'][presetIdentifier] !== undefined) {\n isVisible = editorOptions['inlineStyling'][presetIdentifier];\n }\n return isVisible;\n },\n presetIdentifier: presetIdentifier,\n presetConfiguration: inlineStylePresetConfiguration\n });\n });\n }\n});\n"],"sourceRoot":""}
\ No newline at end of file
+{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/dist/registry/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js","webpack:///./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js","webpack:///./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js","webpack:///./node_modules/tslib/tslib.es6.js","webpack:///./src/BlockStyleCommand.js","webpack:///./src/BlockStyleEditing.js","webpack:///./src/InlineStylesCommand.js","webpack:///./src/InlineStylesEditing.js","webpack:///./src/PresetType.js","webpack:///./src/components/BlockStyleSelector.js","webpack:///./src/components/InlineStyleSelector.js","webpack:///./src/index.js","webpack:///./src/manifest.js"],"names":["exports","__esModule","tslib_1","require","manifest_1","__importDefault","createReadOnlyValue","value","writable","enumerable","configurable","createConsumerApi","manifests","exposureMap","api","Object","keys","forEach","key","defineProperty","window","createConsumerApi_1","readFromConsumerApi_1","readFromConsumerApi","index_1","SynchronousRegistry","SynchronousMetaRegistry","identifier","options","bootstrap","_a","push","args","_i","arguments","length","apply","__spread","Error","AbstractRegistry","description","SERIAL_VERSION_UID","SynchronousRegistry_1","_super","__extends","prototype","set","call","AbstractRegistry_1","positional_array_sorter_1","_this","_registry","position","entry","indexOfItemWithTheSameKey","findIndex","item","get","console","error","result","find","_getChildrenWrapped","searchKey","unsortedChildren","filter","indexOf","getChildrenAsObject","getChildren","map","has","Boolean","_getAllWrapped","getAllAsObject","getAllAsList","assign","id","SynchronousMetaRegistry_1","module","CkEditorApi","NeosUiReduxStore","ReactUiComponents","CkEditor5","plow","PropTypes","reactRedux","React","positionalArraySorter","subject","idKey","e_1","e_2","_b","e_3","_c","e_4","_d","e_5","_e","e_6","_f","e_7","_g","positionAccessor","indexMapping","middleKeys","startKeys","endKeys","beforeKeys","afterKeys","index","String","positionValue","invalid","startsWith","weightMatch","match","weight","Number","reference","numberPosition","parseFloat","isNaN","isFinite","resultStart","resultMiddle","resultEnd","processedKeys","sortedWeights","dict","asc","weights","x","sort","a","b","reverse","addToResults","e_8","e_9","beforeWeights","beforeWeights_1","__values","beforeWeights_1_1","next","done","i","e_8_1","afterWeights","afterWeights_1","afterWeights_1_1","e_9_1","_h","_j","e_1_1","_k","_l","e_2_1","_m","_o","e_3_1","_p","_q","_r","_s","e_5_1","e_4_1","_t","_u","_v","_w","e_7_1","e_6_1","sortedKeys","BlockStyleCommand","editor","attributeKey","model","doc","document","blocksToChange","Array","from","selection","getSelectedBlocks","_getValueFromBlockNode","block","schema","checkAttribute","isEnabled","change","writer","setAttribute","removeAttribute","blocks","getAttribute","undefined","Command","presetIdentifier","presetConfiguration","modelAttributeKey","optionIdentifiers","extend","allowAttributes","setAttributeProperties","isFormatting","config","values","view","optionIdentifier","attribute","attributeValues","attributeValue","cssClass","split","conversion","attributeToAttribute","commands","add","Plugin","InlineStylesCommand","_getValueFromFirstAllowedNode","checkAttributeInSelection","isCollapsed","setSelectionAttribute","removeSelectionAttribute","ranges","getValidRanges","getRanges","range","getItems","classes","name","attributes","attributeToElement","attributeValueOrCssClass","props","propName","componentName","shape","label","string","isRequired","objectOf","BlockStyleSelector","formattingUnderCursor","selectors","UI","ContentCanvas","handleOnSelect","bind","optionsForSelect","entries","optionConfiguration","currentValue","executeCommand","PureComponent","propTypes","PresetType","object","InlineStyleSelector","globalRegistry","frontendConfiguration","ckEditorRegistry","richtextToolbar","inlineStyleConfiguration","blockStyleConfiguration","presets","blockStylePresetConfiguration","ckEditorConfiguration","editorOptions","editing","plugins","component","isVisible","inlineStylePresetConfiguration"],"mappings":"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","file":"Plugin.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = \"./src/index.js\");\n","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar manifest_1 = tslib_1.__importDefault(require(\"./manifest\"));\nvar createReadOnlyValue = function (value) { return ({\n value: value,\n writable: false,\n enumerable: false,\n configurable: true\n}); };\nfunction createConsumerApi(manifests, exposureMap) {\n var api = {};\n Object.keys(exposureMap).forEach(function (key) {\n Object.defineProperty(api, key, createReadOnlyValue(exposureMap[key]));\n });\n Object.defineProperty(api, '@manifest', createReadOnlyValue(manifest_1[\"default\"](manifests)));\n Object.defineProperty(window, '@Neos:HostPluginAPI', createReadOnlyValue(api));\n}\nexports[\"default\"] = createConsumerApi;\n//# sourceMappingURL=createConsumerApi.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar createConsumerApi_1 = tslib_1.__importDefault(require(\"./createConsumerApi\"));\nexports.createConsumerApi = createConsumerApi_1[\"default\"];\nvar readFromConsumerApi_1 = tslib_1.__importDefault(require(\"./readFromConsumerApi\"));\nexports.readFromConsumerApi = readFromConsumerApi_1[\"default\"];\nvar index_1 = require(\"./registry/index\");\nexports.SynchronousRegistry = index_1.SynchronousRegistry;\nexports.SynchronousMetaRegistry = index_1.SynchronousMetaRegistry;\nexports[\"default\"] = readFromConsumerApi_1[\"default\"]('manifest');\n//# sourceMappingURL=index.js.map","\"use strict\";\nexports.__esModule = true;\nexports[\"default\"] = (function (manifests) {\n return function (identifier, options, bootstrap) {\n var _a;\n manifests.push((_a = {},\n _a[identifier] = {\n options: options,\n bootstrap: bootstrap\n },\n _a));\n };\n});\n//# sourceMappingURL=manifest.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nfunction readFromConsumerApi(key) {\n return function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n if (window['@Neos:HostPluginAPI'] && window['@Neos:HostPluginAPI'][\"@\" + key]) {\n return (_a = window['@Neos:HostPluginAPI'])[\"@\" + key].apply(_a, tslib_1.__spread(args));\n }\n throw new Error(\"You are trying to read from a consumer api that hasn't been initialized yet!\");\n };\n}\nexports[\"default\"] = readFromConsumerApi;\n//# sourceMappingURL=readFromConsumerApi.js.map","\"use strict\";\nexports.__esModule = true;\nvar AbstractRegistry = (function () {\n function AbstractRegistry(description) {\n this.SERIAL_VERSION_UID = 'd8a5aa78-978e-11e6-ae22-56b6b6499611';\n this.description = description;\n }\n return AbstractRegistry;\n}());\nexports[\"default\"] = AbstractRegistry;\n//# sourceMappingURL=AbstractRegistry.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar SynchronousRegistry_1 = tslib_1.__importDefault(require(\"./SynchronousRegistry\"));\nvar SynchronousMetaRegistry = (function (_super) {\n tslib_1.__extends(SynchronousMetaRegistry, _super);\n function SynchronousMetaRegistry() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n SynchronousMetaRegistry.prototype.set = function (key, value) {\n if (value.SERIAL_VERSION_UID !== 'd8a5aa78-978e-11e6-ae22-56b6b6499611') {\n throw new Error('You can only add registries to a meta registry');\n }\n return _super.prototype.set.call(this, key, value);\n };\n return SynchronousMetaRegistry;\n}(SynchronousRegistry_1[\"default\"]));\nexports[\"default\"] = SynchronousMetaRegistry;\n//# sourceMappingURL=SynchronousMetaRegistry.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar AbstractRegistry_1 = tslib_1.__importDefault(require(\"./AbstractRegistry\"));\nvar positional_array_sorter_1 = tslib_1.__importDefault(require(\"@neos-project/positional-array-sorter\"));\nvar SynchronousRegistry = (function (_super) {\n tslib_1.__extends(SynchronousRegistry, _super);\n function SynchronousRegistry(description) {\n var _this = _super.call(this, description) || this;\n _this._registry = [];\n return _this;\n }\n SynchronousRegistry.prototype.set = function (key, value, position) {\n if (position === void 0) { position = 0; }\n if (typeof key !== 'string') {\n throw new Error('Key must be a string');\n }\n if (typeof position !== 'string' && typeof position !== 'number') {\n throw new Error('Position must be a string or a number');\n }\n var entry = { key: key, value: value };\n if (position) {\n entry.position = position;\n }\n var indexOfItemWithTheSameKey = this._registry.findIndex(function (item) { return item.key === key; });\n if (indexOfItemWithTheSameKey === -1) {\n this._registry.push(entry);\n }\n else {\n this._registry[indexOfItemWithTheSameKey] = entry;\n }\n return value;\n };\n SynchronousRegistry.prototype.get = function (key) {\n if (typeof key !== 'string') {\n console.error('Key must be a string');\n return null;\n }\n var result = this._registry.find(function (item) { return item.key === key; });\n return result ? result.value : null;\n };\n SynchronousRegistry.prototype._getChildrenWrapped = function (searchKey) {\n var unsortedChildren = this._registry.filter(function (item) { return item.key.indexOf(searchKey + '/') === 0; });\n return positional_array_sorter_1[\"default\"](unsortedChildren);\n };\n SynchronousRegistry.prototype.getChildrenAsObject = function (searchKey) {\n var result = {};\n this._getChildrenWrapped(searchKey).forEach(function (item) {\n result[item.key] = item.value;\n });\n return result;\n };\n SynchronousRegistry.prototype.getChildren = function (searchKey) {\n return this._getChildrenWrapped(searchKey).map(function (item) { return item.value; });\n };\n SynchronousRegistry.prototype.has = function (key) {\n if (typeof key !== 'string') {\n console.error('Key must be a string');\n return false;\n }\n return Boolean(this._registry.find(function (item) { return item.key === key; }));\n };\n SynchronousRegistry.prototype._getAllWrapped = function () {\n return positional_array_sorter_1[\"default\"](this._registry);\n };\n SynchronousRegistry.prototype.getAllAsObject = function () {\n var result = {};\n this._getAllWrapped().forEach(function (item) {\n result[item.key] = item.value;\n });\n return result;\n };\n SynchronousRegistry.prototype.getAllAsList = function () {\n return this._getAllWrapped().map(function (item) { return Object.assign({ id: item.key }, item.value); });\n };\n return SynchronousRegistry;\n}(AbstractRegistry_1[\"default\"]));\nexports[\"default\"] = SynchronousRegistry;\n//# sourceMappingURL=SynchronousRegistry.js.map","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar SynchronousRegistry_1 = tslib_1.__importDefault(require(\"./SynchronousRegistry\"));\nexports.SynchronousRegistry = SynchronousRegistry_1[\"default\"];\nvar SynchronousMetaRegistry_1 = tslib_1.__importDefault(require(\"./SynchronousMetaRegistry\"));\nexports.SynchronousMetaRegistry = SynchronousMetaRegistry_1[\"default\"];\n//# sourceMappingURL=index.js.map","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('NeosProjectPackages')().CkEditorApi;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('NeosProjectPackages')().NeosUiReduxStore;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('NeosProjectPackages')().ReactUiComponents;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().CkEditor5;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().plow;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().PropTypes;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().reactRedux;\n","import readFromConsumerApi from '../../../../dist/readFromConsumerApi';\n\nmodule.exports = readFromConsumerApi('vendor')().React;\n","\"use strict\";\nexports.__esModule = true;\nvar tslib_1 = require(\"tslib\");\nvar positionalArraySorter = function (subject, position, idKey) {\n var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f, e_7, _g;\n if (position === void 0) { position = 'position'; }\n if (idKey === void 0) { idKey = 'key'; }\n var positionAccessor = typeof position === 'string' ? function (value) { return value[position]; } : position;\n var indexMapping = {};\n var middleKeys = {};\n var startKeys = {};\n var endKeys = {};\n var beforeKeys = {};\n var afterKeys = {};\n subject.forEach(function (item, index) {\n var key = item[idKey] ? item[idKey] : String(index);\n indexMapping[key] = index;\n var positionValue = positionAccessor(item);\n var position = String(positionValue ? positionValue : index);\n var invalid = false;\n if (position.startsWith('start')) {\n var weightMatch = position.match(/start\\s+(\\d+)/);\n var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0;\n if (!startKeys[weight]) {\n startKeys[weight] = [];\n }\n startKeys[weight].push(key);\n }\n else if (position.startsWith('end')) {\n var weightMatch = position.match(/end\\s+(\\d+)/);\n var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0;\n if (!endKeys[weight]) {\n endKeys[weight] = [];\n }\n endKeys[weight].push(key);\n }\n else if (position.startsWith('before')) {\n var match = position.match(/before\\s+(\\S+)(\\s+(\\d+))?/);\n if (!match) {\n invalid = true;\n }\n else {\n var reference = match[1];\n var weight = match[3] ? Number(match[3]) : 0;\n if (!beforeKeys[reference]) {\n beforeKeys[reference] = {};\n }\n if (!beforeKeys[reference][weight]) {\n beforeKeys[reference][weight] = [];\n }\n beforeKeys[reference][weight].push(key);\n }\n }\n else if (position.startsWith('after')) {\n var match = position.match(/after\\s+(\\S+)(\\s+(\\d+))?/);\n if (!match) {\n invalid = true;\n }\n else {\n var reference = match[1];\n var weight = match[3] ? Number(match[3]) : 0;\n if (!afterKeys[reference]) {\n afterKeys[reference] = {};\n }\n if (!afterKeys[reference][weight]) {\n afterKeys[reference][weight] = [];\n }\n afterKeys[reference][weight].push(key);\n }\n }\n else {\n invalid = true;\n }\n if (invalid) {\n var numberPosition = parseFloat(position);\n if (isNaN(numberPosition) || !isFinite(numberPosition)) {\n numberPosition = index;\n }\n if (!middleKeys[numberPosition]) {\n middleKeys[numberPosition] = [];\n }\n middleKeys[numberPosition].push(key);\n }\n });\n var resultStart = [];\n var resultMiddle = [];\n var resultEnd = [];\n var processedKeys = [];\n var sortedWeights = function (dict, asc) {\n var weights = Object.keys(dict).map(function (x) { return Number(x); }).sort(function (a, b) { return a - b; });\n return asc ? weights : weights.reverse();\n };\n var addToResults = function (keys, result) {\n keys.forEach(function (key) {\n var e_8, _a, e_9, _b;\n if (processedKeys.indexOf(key) >= 0) {\n return;\n }\n processedKeys.push(key);\n if (beforeKeys[key]) {\n var beforeWeights = sortedWeights(beforeKeys[key], true);\n try {\n for (var beforeWeights_1 = tslib_1.__values(beforeWeights), beforeWeights_1_1 = beforeWeights_1.next(); !beforeWeights_1_1.done; beforeWeights_1_1 = beforeWeights_1.next()) {\n var i = beforeWeights_1_1.value;\n addToResults(beforeKeys[key][i], result);\n }\n }\n catch (e_8_1) { e_8 = { error: e_8_1 }; }\n finally {\n try {\n if (beforeWeights_1_1 && !beforeWeights_1_1.done && (_a = beforeWeights_1[\"return\"])) _a.call(beforeWeights_1);\n }\n finally { if (e_8) throw e_8.error; }\n }\n }\n result.push(key);\n if (afterKeys[key]) {\n var afterWeights = sortedWeights(afterKeys[key], false);\n try {\n for (var afterWeights_1 = tslib_1.__values(afterWeights), afterWeights_1_1 = afterWeights_1.next(); !afterWeights_1_1.done; afterWeights_1_1 = afterWeights_1.next()) {\n var i = afterWeights_1_1.value;\n addToResults(afterKeys[key][i], result);\n }\n }\n catch (e_9_1) { e_9 = { error: e_9_1 }; }\n finally {\n try {\n if (afterWeights_1_1 && !afterWeights_1_1.done && (_b = afterWeights_1[\"return\"])) _b.call(afterWeights_1);\n }\n finally { if (e_9) throw e_9.error; }\n }\n }\n });\n };\n try {\n for (var _h = tslib_1.__values(sortedWeights(startKeys, false)), _j = _h.next(); !_j.done; _j = _h.next()) {\n var i = _j.value;\n addToResults(startKeys[i], resultStart);\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (_j && !_j.done && (_a = _h[\"return\"])) _a.call(_h);\n }\n finally { if (e_1) throw e_1.error; }\n }\n try {\n for (var _k = tslib_1.__values(sortedWeights(middleKeys, true)), _l = _k.next(); !_l.done; _l = _k.next()) {\n var i = _l.value;\n addToResults(middleKeys[i], resultMiddle);\n }\n }\n catch (e_2_1) { e_2 = { error: e_2_1 }; }\n finally {\n try {\n if (_l && !_l.done && (_b = _k[\"return\"])) _b.call(_k);\n }\n finally { if (e_2) throw e_2.error; }\n }\n try {\n for (var _m = tslib_1.__values(sortedWeights(endKeys, true)), _o = _m.next(); !_o.done; _o = _m.next()) {\n var i = _o.value;\n addToResults(endKeys[i], resultEnd);\n }\n }\n catch (e_3_1) { e_3 = { error: e_3_1 }; }\n finally {\n try {\n if (_o && !_o.done && (_c = _m[\"return\"])) _c.call(_m);\n }\n finally { if (e_3) throw e_3.error; }\n }\n try {\n for (var _p = tslib_1.__values(Object.keys(beforeKeys)), _q = _p.next(); !_q.done; _q = _p.next()) {\n var key = _q.value;\n if (processedKeys.indexOf(key) >= 0) {\n continue;\n }\n try {\n for (var _r = (e_5 = void 0, tslib_1.__values(sortedWeights(beforeKeys[key], false))), _s = _r.next(); !_s.done; _s = _r.next()) {\n var i = _s.value;\n addToResults(beforeKeys[key][i], resultStart);\n }\n }\n catch (e_5_1) { e_5 = { error: e_5_1 }; }\n finally {\n try {\n if (_s && !_s.done && (_e = _r[\"return\"])) _e.call(_r);\n }\n finally { if (e_5) throw e_5.error; }\n }\n }\n }\n catch (e_4_1) { e_4 = { error: e_4_1 }; }\n finally {\n try {\n if (_q && !_q.done && (_d = _p[\"return\"])) _d.call(_p);\n }\n finally { if (e_4) throw e_4.error; }\n }\n try {\n for (var _t = tslib_1.__values(Object.keys(afterKeys)), _u = _t.next(); !_u.done; _u = _t.next()) {\n var key = _u.value;\n if (processedKeys.indexOf(key) >= 0) {\n continue;\n }\n try {\n for (var _v = (e_7 = void 0, tslib_1.__values(sortedWeights(afterKeys[key], false))), _w = _v.next(); !_w.done; _w = _v.next()) {\n var i = _w.value;\n addToResults(afterKeys[key][i], resultMiddle);\n }\n }\n catch (e_7_1) { e_7 = { error: e_7_1 }; }\n finally {\n try {\n if (_w && !_w.done && (_g = _v[\"return\"])) _g.call(_v);\n }\n finally { if (e_7) throw e_7.error; }\n }\n }\n }\n catch (e_6_1) { e_6 = { error: e_6_1 }; }\n finally {\n try {\n if (_u && !_u.done && (_f = _t[\"return\"])) _f.call(_t);\n }\n finally { if (e_6) throw e_6.error; }\n }\n var sortedKeys = tslib_1.__spread(resultStart, resultMiddle, resultEnd);\n return sortedKeys.map(function (key) { return indexMapping[key]; }).map(function (i) { return subject[i]; });\n};\nexports[\"default\"] = positionalArraySorter;\n//# sourceMappingURL=positionalArraySorter.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","// Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted\nimport {Command} from 'ckeditor5-exports';\n\n/**\n * Set a key-value block style; e.g. \"fontColor=red\".\n */\n\nexport default class BlockStyleCommand extends Command {\n /**\n * @param {module:core/editor/editor~Editor} editor\n * @param {String} attributeKey Attribute that will be set by the command.\n */\n constructor(editor, attributeKey) {\n super(editor);\n\n /**\n * The attribute that will be set by the command.\n *\n * @readonly\n * @member {String}\n */\n this.attributeKey = attributeKey;\n\n /**\n * Flag indicating whether the command is active. The command is active when the\n * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that:\n *\n * @observable\n * @readonly\n * @member {Boolean} #value\n */\n }\n\n /**\n * Updates the command's {@link #value} and {@link #isEnabled}.\n */\n refresh() {\n const model = this.editor.model;\n const doc = model.document;\n const blocksToChange = Array.from(doc.selection.getSelectedBlocks());\n\n this.value = this._getValueFromBlockNode();\n for (const block of blocksToChange) {\n if (model.schema.checkAttribute(block, this.attributeKey)) {\n this.isEnabled = true;\n }\n }\n }\n\n /**\n * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the\n * attribute on each block.\n *\n * @fires execute\n * @param {Object} [options] Command options.\n * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.\n */\n execute(options = {}) {\n const model = this.editor.model;\n const doc = model.document;\n const selection = doc.selection;\n const value = options.value;\n const blocksToChange = Array.from(selection.getSelectedBlocks());\n model.change(writer => {\n for (const block of blocksToChange) {\n if (value) {\n writer.setAttribute(this.attributeKey, value, block);\n } else {\n writer.removeAttribute(this.attributeKey, block);\n }\n }\n });\n }\n\n /**\n * Checks the attribute value of the parent block node(s)\n *\n * @private\n * @returns {String} The attribute value.\n */\n _getValueFromBlockNode() {\n const model = this.editor.model;\n const schema = model.schema;\n const selection = model.document.selection;\n const blocks = Array.from(selection.getSelectedBlocks());\n\n for (const block of blocks) {\n if (schema.checkAttribute(block, this.attributeKey)) {\n return block.getAttribute(this.attributeKey);\n }\n }\n\n return undefined;\n }\n}\n","import {Plugin, Paragraph} from 'ckeditor5-exports';\nimport BlockStyleCommand from \"./BlockStyleCommand\";\n\n/**\n * FACTORY FUNCTION for the plugin\n * needs the current preset configuration as parameter.\n */\nexport default (presetIdentifier, presetConfiguration) =>\n class BlockStyleEditing extends Plugin {\n init() {\n const schema = this.editor.model.schema;\n const modelAttributeKey = `blockStyles-${presetIdentifier}`;\n const optionIdentifiers = Object.keys(presetConfiguration.options);\n\n schema.extend(\n '$block',\n {allowAttributes: modelAttributeKey}\n );\n\n // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html\n schema.setAttributeProperties(\n modelAttributeKey,\n {isFormatting: true}\n );\n\n // Model configuration\n const config = {\n model: {\n key: modelAttributeKey,\n values: optionIdentifiers,\n },\n view: {}\n };\n\n // View configuration\n optionIdentifiers.forEach(optionIdentifier => {\n const options = presetConfiguration.options[optionIdentifier];\n const attribute = options.attribute || 'class';\n const attributeValues = (attribute === options.attribute) ? options.attributeValue : (options.cssClass).split(' ');\n\n config.view[optionIdentifier] = {\n key: attribute,\n value: attributeValues\n }\n });\n\n // Convert the model to view correctly\n this.editor.conversion.attributeToAttribute(config);\n\n this.editor.commands.add(`blockStyles:${presetIdentifier}`, new BlockStyleCommand(this.editor, modelAttributeKey));\n }\n };\n","// Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted\nimport {Command} from 'ckeditor5-exports';\n\n/**\n * Set a key-value inline style; e.g. \"fontColor=red\".\n *\n */\nexport default class InlineStylesCommand extends Command {\n /**\n * @param {module:core/editor/editor~Editor} editor\n * @param {String} attributeKey Attribute that will be set by the command.\n */\n constructor(editor, attributeKey) {\n super(editor);\n\n /**\n * The attribute that will be set by the command.\n *\n * @readonly\n * @member {String}\n */\n this.attributeKey = attributeKey;\n\n /**\n * Flag indicating whether the command is active. The command is active when the\n * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that:\n **\n * @observable\n * @readonly\n * @member {Boolean} #value\n */\n }\n\n /**\n * Updates the command's {@link #value} and {@link #isEnabled} based on the current selection.\n */\n refresh() {\n const model = this.editor.model;\n const doc = model.document;\n\n this.value = this._getValueFromFirstAllowedNode();\n this.isEnabled = model.schema.checkAttributeInSelection(doc.selection, this.attributeKey);\n }\n\n /**\n * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the\n * attribute.\n *\n * @fires execute\n * @param {Object} [options] Command options.\n * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.\n */\n execute(options = {}) {\n const model = this.editor.model;\n const doc = model.document;\n const selection = doc.selection;\n const value = options.value;\n\n model.change(writer => {\n if (selection.isCollapsed) {\n if (value) {\n // value is existing, we want to set the selection attribute to the value.\n writer.setSelectionAttribute(this.attributeKey, value);\n } else {\n writer.removeSelectionAttribute(this.attributeKey);\n }\n } else {\n const ranges = model.schema.getValidRanges(selection.getRanges(), this.attributeKey);\n\n for (const range of ranges) {\n if (value) {\n writer.setAttribute(this.attributeKey, value, range);\n } else {\n writer.removeAttribute(this.attributeKey, range);\n }\n }\n }\n });\n }\n\n /**\n * Checks the attribute value of the first node in the selection that allows the attribute.\n * For the collapsed selection returns the selection attribute.\n *\n * @private\n * @returns {String} The attribute value.\n */\n _getValueFromFirstAllowedNode() {\n const model = this.editor.model;\n const schema = model.schema;\n const selection = model.document.selection;\n\n if (selection.isCollapsed) {\n return selection.getAttribute(this.attributeKey);\n }\n\n for (const range of selection.getRanges()) {\n for (const item of range.getItems()) {\n if (schema.checkAttribute(item, this.attributeKey)) {\n return item.getAttribute(this.attributeKey);\n }\n }\n }\n\n return undefined;\n }\n}\n","import {Plugin} from 'ckeditor5-exports';\nimport InlineStylesCommand from './InlineStylesCommand';\n\n/**\n * FACTORY FUNCTION for the plugin\n * needs the current preset configuration as parameter.\n */\nexport default (presetIdentifier, presetConfiguration) =>\n class InlineStylesEditing extends Plugin {\n init() {\n const schema = this.editor.model.schema;\n const optionIdentifiers = Object.keys(presetConfiguration.options);\n const modelAttributeKey = `inlineStyles-${presetIdentifier}`;\n\n schema.extend(\n '$text',\n {allowAttributes: modelAttributeKey}\n );\n\n // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html\n schema.setAttributeProperties(\n modelAttributeKey,\n {isFormatting: true}\n );\n\n // Model configuration\n const config = {\n model: {\n key: modelAttributeKey,\n values: optionIdentifiers\n },\n view: {}\n };\n\n // View configuration\n optionIdentifiers.forEach(optionIdentifier => {\n const options = presetConfiguration.options[optionIdentifier];\n const {attribute} = options;\n const classes = options.attributeValue || options.cssClass;\n\n config.view[optionIdentifier] = {\n name: 'span',\n attributes: {[attribute ? attribute : 'class']: classes}\n }\n });\n\n // Convert the model to view correctly\n this.editor.conversion.attributeToElement(config);\n\n this.editor.commands.add(`inlineStyles:${presetIdentifier}`, new InlineStylesCommand(this.editor, modelAttributeKey));\n }\n };\n","import PropTypes from 'prop-types';\n\nfunction attributeValueOrCssClass(props, propName, componentName) {\n if (props[propName] && typeof props[propName] !== 'string') {\n return new Error(`Prop '${propName}' must be a string.`);\n }\n if (!props.attributeValue && !props.cssClass) {\n return new Error(`Either prop 'attributeValue' or 'cssClass' must be supplied to ${componentName}.`);\n }\n}\n\nexport default PropTypes.shape({\n label: PropTypes.string.isRequired,\n\n // keys are the option values\n options: PropTypes.objectOf(PropTypes.shape({\n label: PropTypes.string.isRequired,\n attribute: PropTypes.string,\n attributeValue: attributeValueOrCssClass,\n cssClass: attributeValueOrCssClass,\n })),\n});","import React, {PureComponent} from 'react';\nimport PropTypes from 'prop-types';\nimport {SelectBox} from '@neos-project/react-ui-components';\nimport {connect} from 'react-redux';\nimport {$transform} from 'plow-js';\nimport PresetType from '../PresetType';\n\nimport {selectors} from '@neos-project/neos-ui-redux-store';\nimport * as CkEditorApi from '@neos-project/neos-ui-ckeditor5-bindings';\n\n@connect($transform({\n formattingUnderCursor: selectors.UI.ContentCanvas.formattingUnderCursor\n}))\nexport default class BlockStyleSelector extends PureComponent {\n static propTypes = {\n // from outside props\n presetIdentifier: PropTypes.string.isRequired,\n presetConfiguration: PresetType.isRequired,\n\n // from @connect\n formattingUnderCursor: PropTypes.object\n };\n\n constructor(...args) {\n super(...args);\n\n this.handleOnSelect = this.handleOnSelect.bind(this);\n }\n\n render() {\n const optionsForSelect = Object.entries(this.props.presetConfiguration.options)\n .map(([optionIdentifier, optionConfiguration]) => ({\n value: optionIdentifier,\n label: optionConfiguration.label\n }));\n\n if (optionsForSelect.length === 0) {\n return null;\n }\n\n const currentValue = this.props.formattingUnderCursor[`blockStyles:${this.props.presetIdentifier}`];\n\n return (\n \n );\n }\n\n handleOnSelect(optionIdentifier) {\n CkEditorApi.executeCommand(\n `blockStyles:${this.props.presetIdentifier}`,\n {value: optionIdentifier}\n );\n }\n}\n","import React, {PureComponent} from 'react';\nimport PropTypes from 'prop-types';\nimport {SelectBox} from '@neos-project/react-ui-components';\nimport {connect} from 'react-redux';\nimport {$transform} from 'plow-js';\nimport PresetType from '../PresetType';\n\nimport {selectors} from '@neos-project/neos-ui-redux-store';\nimport * as CkEditorApi from '@neos-project/neos-ui-ckeditor5-bindings';\n\n@connect($transform({\n formattingUnderCursor: selectors.UI.ContentCanvas.formattingUnderCursor\n}))\nexport default class InlineStyleSelector extends PureComponent {\n static propTypes = {\n // from outside props\n presetIdentifier: PropTypes.string.isRequired,\n presetConfiguration: PresetType.isRequired,\n\n // from @connect\n formattingUnderCursor: PropTypes.object\n };\n\n constructor(...args) {\n super(...args);\n\n this.handleOnSelect = this.handleOnSelect.bind(this);\n }\n\n render() {\n const optionsForSelect = Object.entries(this.props.presetConfiguration.options)\n .map(([optionIdentifier, optionConfiguration]) => ({\n value: optionIdentifier,\n label: optionConfiguration.label\n }));\n\n if (optionsForSelect.length === 0) {\n return null;\n }\n\n const currentValue = this.props.formattingUnderCursor[`inlineStyles:${this.props.presetIdentifier}`];\n\n return (\n \n );\n }\n\n handleOnSelect(optionIdentifier) {\n CkEditorApi.executeCommand(\n `inlineStyles:${this.props.presetIdentifier}`,\n {value: optionIdentifier}\n );\n }\n}\n","require('./manifest');","import manifest from '@neos-project/neos-ui-extensibility';\nimport {$get} from 'plow-js';\n\nimport InlineStylesEditing from './InlineStylesEditing';\nimport InlineStyleSelector from './components/InlineStyleSelector';\n\nimport BlockStyleEditing from \"./BlockStyleEditing\";\nimport BlockStyleSelector from \"./components/BlockStyleSelector\";\n\nmanifest('TechDivision.CkStyles:Styles', {}, (globalRegistry, {frontendConfiguration}) => {\n\n const ckEditorRegistry = globalRegistry.get('ckEditor5');\n const richtextToolbar = ckEditorRegistry.get('richtextToolbar');\n const config = ckEditorRegistry.get('config');\n\n const inlineStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:InlineStyles'];\n const blockStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:BlockStyles'];\n\n // Block style\n if (blockStyleConfiguration) {\n\n Object.keys(blockStyleConfiguration.presets).forEach(presetIdentifier => {\n\n const blockStylePresetConfiguration = blockStyleConfiguration.presets[presetIdentifier];\n\n config.set(`TechDivision.CkStyles:BlockStyles_${presetIdentifier}`, (ckEditorConfiguration, {editorOptions}) => {\n const editing = BlockStyleEditing(presetIdentifier, blockStylePresetConfiguration);\n ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || [];\n ckEditorConfiguration.plugins.push(editing);\n return ckEditorConfiguration;\n });\n\n richtextToolbar.set(`blockStyles_${presetIdentifier}`, {\n component: BlockStyleSelector,\n // Display only if the preset is activated in NodeType.yaml for this node property\n isVisible: function (editorOptions, formattingUnderCursor) {\n var isVisible = false;\n if (editorOptions['blockStyling'] !== undefined && editorOptions['blockStyling'][presetIdentifier] !== undefined) {\n isVisible = editorOptions['blockStyling'][presetIdentifier];\n }\n return isVisible;\n },\n presetIdentifier: presetIdentifier,\n presetConfiguration: blockStylePresetConfiguration\n });\n\n });\n }\n\n //Inline Style\n if (inlineStyleConfiguration) {\n\n Object.keys(inlineStyleConfiguration.presets).forEach((presetIdentifier) => {\n\n const inlineStylePresetConfiguration = inlineStyleConfiguration.presets[presetIdentifier];\n\n config.set(`TechDivision.CkStyle:InlineStyles_${presetIdentifier}`, (ckEditorConfiguration, {editorOptions}) => {\n ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || [];\n ckEditorConfiguration.plugins.push(InlineStylesEditing(presetIdentifier, inlineStylePresetConfiguration));\n return ckEditorConfiguration;\n });\n\n richtextToolbar.set(`inlineStyles_${presetIdentifier}`, {\n component: InlineStyleSelector,\n // Display only if the preset is activated in NodeType.yaml for this node property\n isVisible: function (editorOptions, formattingUnderCursor) {\n var isVisible = false;\n if (editorOptions['inlineStyling'] !== undefined && editorOptions['inlineStyling'][presetIdentifier] !== undefined) {\n isVisible = editorOptions['inlineStyling'][presetIdentifier];\n }\n return isVisible;\n },\n presetIdentifier: presetIdentifier,\n presetConfiguration: inlineStylePresetConfiguration\n });\n });\n }\n});\n"],"sourceRoot":""}
\ No newline at end of file