diff --git a/Resources/Private/JavaScript/CkStyles/package.json b/Resources/Private/JavaScript/CkStyles/package.json
index 762a4da..123a146 100644
--- a/Resources/Private/JavaScript/CkStyles/package.json
+++ b/Resources/Private/JavaScript/CkStyles/package.json
@@ -7,11 +7,12 @@
"watch": "neos-react-scripts watch"
},
"devDependencies": {
- "@neos-project/neos-ui-extensibility": "*"
+ "@neos-project/neos-ui-extensibility": "^8.2.3"
},
"neos": {
"buildTargetDirectory": "../../../Public/JavaScript/CkStyles"
},
"dependencies": {
+ "@neos-project/build-essentials": "^8.2.3"
}
}
diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js b/Resources/Public/JavaScript/CkStyles/Plugin.js
index 14e7cbe..dac7537 100644
--- a/Resources/Public/JavaScript/CkStyles/Plugin.js
+++ b/Resources/Public/JavaScript/CkStyles/Plugin.js
@@ -96,9 +96,11 @@
"use strict";
+var __importDefault = undefined && undefined.__importDefault || function (mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+};
exports.__esModule = true;
-var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
-var manifest_1 = tslib_1.__importDefault(__webpack_require__(/*! ./manifest */ "./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js"));
+var manifest_1 = __importDefault(__webpack_require__(/*! ./manifest */ "./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js"));
var createReadOnlyValue = function createReadOnlyValue(value) {
return {
value: value,
@@ -112,7 +114,7 @@ function createConsumerApi(manifests, exposureMap) {
Object.keys(exposureMap).forEach(function (key) {
Object.defineProperty(api, key, createReadOnlyValue(exposureMap[key]));
});
- Object.defineProperty(api, '@manifest', createReadOnlyValue(manifest_1["default"](manifests)));
+ Object.defineProperty(api, '@manifest', createReadOnlyValue((0, manifest_1["default"])(manifests)));
Object.defineProperty(window, '@Neos:HostPluginAPI', createReadOnlyValue(api));
}
exports["default"] = createConsumerApi;
@@ -130,16 +132,19 @@ exports["default"] = createConsumerApi;
"use strict";
+var __importDefault = undefined && undefined.__importDefault || function (mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+};
exports.__esModule = true;
-var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
-var createConsumerApi_1 = tslib_1.__importDefault(__webpack_require__(/*! ./createConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js"));
+exports.SynchronousMetaRegistry = exports.SynchronousRegistry = exports.readFromConsumerApi = exports.createConsumerApi = void 0;
+var createConsumerApi_1 = __importDefault(__webpack_require__(/*! ./createConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js"));
exports.createConsumerApi = createConsumerApi_1["default"];
-var readFromConsumerApi_1 = tslib_1.__importDefault(__webpack_require__(/*! ./readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"));
+var readFromConsumerApi_1 = __importDefault(__webpack_require__(/*! ./readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"));
exports.readFromConsumerApi = readFromConsumerApi_1["default"];
var index_1 = __webpack_require__(/*! ./registry/index */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/index.js");
exports.SynchronousRegistry = index_1.SynchronousRegistry;
exports.SynchronousMetaRegistry = index_1.SynchronousMetaRegistry;
-exports["default"] = readFromConsumerApi_1["default"]('manifest');
+exports["default"] = (0, readFromConsumerApi_1["default"])('manifest');
//# sourceMappingURL=index.js.map
/***/ }),
@@ -178,8 +183,38 @@ exports["default"] = function (manifests) {
"use strict";
+var __read = undefined && undefined.__read || function (o, n) {
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
+ if (!m) return o;
+ var i = m.call(o),
+ r,
+ ar = [],
+ e;
+ try {
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) {
+ ar.push(r.value);
+ }
+ } catch (error) {
+ e = { error: error };
+ } finally {
+ try {
+ if (r && !r.done && (m = i["return"])) m.call(i);
+ } finally {
+ if (e) throw e.error;
+ }
+ }
+ return ar;
+};
+var __spreadArray = undefined && undefined.__spreadArray || function (to, from, pack) {
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
+ if (ar || !(i in from)) {
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
+ ar[i] = from[i];
+ }
+ }
+ return to.concat(ar || Array.prototype.slice.call(from));
+};
exports.__esModule = true;
-var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
function readFromConsumerApi(key) {
return function () {
var _a;
@@ -187,10 +222,10 @@ function readFromConsumerApi(key) {
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
- if (window['@Neos:HostPluginAPI'] && window['@Neos:HostPluginAPI']["@" + key]) {
- return (_a = window['@Neos:HostPluginAPI'])["@" + key].apply(_a, tslib_1.__spread(args));
+ if (window['@Neos:HostPluginAPI'] && window['@Neos:HostPluginAPI']["@".concat(key)]) {
+ return (_a = window['@Neos:HostPluginAPI'])["@".concat(key)].apply(_a, __spreadArray([], __read(args), false));
}
- throw new Error("You are trying to read from a consumer api that hasn't been initialized yet!");
+ throw new Error('You are trying to read from a consumer api that hasn\'t been initialized yet!');
};
}
exports["default"] = readFromConsumerApi;
@@ -231,11 +266,33 @@ exports["default"] = AbstractRegistry;
"use strict";
+var __extends = undefined && undefined.__extends || function () {
+ var _extendStatics = function extendStatics(d, b) {
+ _extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function (d, b) {
+ d.__proto__ = b;
+ } || function (d, b) {
+ for (var p in b) {
+ if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
+ }
+ };
+ return _extendStatics(d, b);
+ };
+ return function (d, b) {
+ if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+ _extendStatics(d, b);
+ function __() {
+ this.constructor = d;
+ }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ };
+}();
+var __importDefault = undefined && undefined.__importDefault || function (mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+};
exports.__esModule = true;
-var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
-var SynchronousRegistry_1 = tslib_1.__importDefault(__webpack_require__(/*! ./SynchronousRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js"));
+var SynchronousRegistry_1 = __importDefault(__webpack_require__(/*! ./SynchronousRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js"));
var SynchronousMetaRegistry = function (_super) {
- tslib_1.__extends(SynchronousMetaRegistry, _super);
+ __extends(SynchronousMetaRegistry, _super);
function SynchronousMetaRegistry() {
return _super !== null && _super.apply(this, arguments) || this;
}
@@ -262,12 +319,34 @@ exports["default"] = SynchronousMetaRegistry;
"use strict";
+var __extends = undefined && undefined.__extends || function () {
+ var _extendStatics = function extendStatics(d, b) {
+ _extendStatics = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function (d, b) {
+ d.__proto__ = b;
+ } || function (d, b) {
+ for (var p in b) {
+ if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p];
+ }
+ };
+ return _extendStatics(d, b);
+ };
+ return function (d, b) {
+ if (typeof b !== "function" && b !== null) throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
+ _extendStatics(d, b);
+ function __() {
+ this.constructor = d;
+ }
+ d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
+ };
+}();
+var __importDefault = undefined && undefined.__importDefault || function (mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+};
exports.__esModule = true;
-var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
-var AbstractRegistry_1 = tslib_1.__importDefault(__webpack_require__(/*! ./AbstractRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js"));
-var positional_array_sorter_1 = tslib_1.__importDefault(__webpack_require__(/*! @neos-project/positional-array-sorter */ "./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js"));
+var AbstractRegistry_1 = __importDefault(__webpack_require__(/*! ./AbstractRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js"));
+var positional_array_sorter_1 = __importDefault(__webpack_require__(/*! @neos-project/positional-array-sorter */ "./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js"));
var SynchronousRegistry = function (_super) {
- tslib_1.__extends(SynchronousRegistry, _super);
+ __extends(SynchronousRegistry, _super);
function SynchronousRegistry(description) {
var _this = _super.call(this, description) || this;
_this._registry = [];
@@ -311,7 +390,7 @@ var SynchronousRegistry = function (_super) {
var unsortedChildren = this._registry.filter(function (item) {
return item.key.indexOf(searchKey + '/') === 0;
});
- return positional_array_sorter_1["default"](unsortedChildren);
+ return (0, positional_array_sorter_1["default"])(unsortedChildren);
};
SynchronousRegistry.prototype.getChildrenAsObject = function (searchKey) {
var result = {};
@@ -335,7 +414,7 @@ var SynchronousRegistry = function (_super) {
}));
};
SynchronousRegistry.prototype._getAllWrapped = function () {
- return positional_array_sorter_1["default"](this._registry);
+ return (0, positional_array_sorter_1["default"])(this._registry);
};
SynchronousRegistry.prototype.getAllAsObject = function () {
var result = {};
@@ -366,11 +445,14 @@ exports["default"] = SynchronousRegistry;
"use strict";
+var __importDefault = undefined && undefined.__importDefault || function (mod) {
+ return mod && mod.__esModule ? mod : { "default": mod };
+};
exports.__esModule = true;
-var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js");
-var SynchronousRegistry_1 = tslib_1.__importDefault(__webpack_require__(/*! ./SynchronousRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js"));
+exports.SynchronousMetaRegistry = exports.SynchronousRegistry = void 0;
+var SynchronousRegistry_1 = __importDefault(__webpack_require__(/*! ./SynchronousRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js"));
exports.SynchronousRegistry = SynchronousRegistry_1["default"];
-var SynchronousMetaRegistry_1 = tslib_1.__importDefault(__webpack_require__(/*! ./SynchronousMetaRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js"));
+var SynchronousMetaRegistry_1 = __importDefault(__webpack_require__(/*! ./SynchronousMetaRegistry */ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js"));
exports.SynchronousMetaRegistry = SynchronousMetaRegistry_1["default"];
//# sourceMappingURL=index.js.map
@@ -1068,30 +1150,19 @@ Object.defineProperty(exports, "__esModule", {
});
exports.default = undefined;
-var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
var _ckeditor5Exports = __webpack_require__(/*! ckeditor5-exports */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js");
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted
-
-
/**
* Set a key-value block style; e.g. "fontColor=red".
*/
-var BlockStyleCommand = function (_Command) {
- _inherits(BlockStyleCommand, _Command);
-
+var BlockStyleCommand = class BlockStyleCommand extends _ckeditor5Exports.Command {
/**
* @param {module:core/editor/editor~Editor} editor
* @param {String} attributeKey Attribute that will be set by the command.
*/
- function BlockStyleCommand(editor, attributeKey) {
- _classCallCheck(this, BlockStyleCommand);
+ constructor(editor, attributeKey) {
+ super(editor);
/**
* The attribute that will be set by the command.
@@ -1099,9 +1170,7 @@ var BlockStyleCommand = function (_Command) {
* @readonly
* @member {String}
*/
- var _this = _possibleConstructorReturn(this, (BlockStyleCommand.__proto__ || Object.getPrototypeOf(BlockStyleCommand)).call(this, editor));
-
- _this.attributeKey = attributeKey;
+ this.attributeKey = attributeKey;
/**
* Flag indicating whether the command is active. The command is active when the
@@ -1111,151 +1180,137 @@ var BlockStyleCommand = function (_Command) {
* @readonly
* @member {Boolean} #value
*/
- return _this;
}
/**
* Updates the command's {@link #value} and {@link #isEnabled}.
*/
+ refresh() {
+ var model = this.editor.model;
+ var doc = model.document;
+ var blocksToChange = Array.from(doc.selection.getSelectedBlocks());
+ this.value = this._getValueFromBlockNode();
+ var _iteratorNormalCompletion = true;
+ var _didIteratorError = false;
+ var _iteratorError = undefined;
- _createClass(BlockStyleCommand, [{
- key: 'refresh',
- value: function refresh() {
- var model = this.editor.model;
- var doc = model.document;
- var blocksToChange = Array.from(doc.selection.getSelectedBlocks());
-
- this.value = this._getValueFromBlockNode();
- var _iteratorNormalCompletion = true;
- var _didIteratorError = false;
- var _iteratorError = undefined;
+ try {
+ for (var _iterator = blocksToChange[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
+ var block = _step.value;
+ if (model.schema.checkAttribute(block, this.attributeKey)) {
+ this.isEnabled = true;
+ }
+ }
+ } catch (err) {
+ _didIteratorError = true;
+ _iteratorError = err;
+ } finally {
try {
- for (var _iterator = blocksToChange[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
- var block = _step.value;
-
- if (model.schema.checkAttribute(block, this.attributeKey)) {
- this.isEnabled = true;
- }
+ if (!_iteratorNormalCompletion && _iterator.return) {
+ _iterator.return();
}
- } catch (err) {
- _didIteratorError = true;
- _iteratorError = err;
} finally {
- try {
- if (!_iteratorNormalCompletion && _iterator.return) {
- _iterator.return();
- }
- } finally {
- if (_didIteratorError) {
- throw _iteratorError;
- }
+ if (_didIteratorError) {
+ throw _iteratorError;
}
}
}
+ }
- /**
- * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the
- * attribute on each block.
- *
- * @fires execute
- * @param {Object} [options] Command options.
- * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.
- */
+ /**
+ * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the
+ * attribute on each block.
+ *
+ * @fires execute
+ * @param {Object} [options] Command options.
+ * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.
+ */
+ execute() {
+ var _this = this;
- }, {
- key: 'execute',
- value: function execute() {
- var _this2 = this;
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ var model = this.editor.model;
+ var doc = model.document;
+ var selection = doc.selection;
+ var value = options.value;
+ var blocksToChange = Array.from(selection.getSelectedBlocks());
+ model.change(function (writer) {
+ var _iteratorNormalCompletion2 = true;
+ var _didIteratorError2 = false;
+ var _iteratorError2 = undefined;
- var model = this.editor.model;
- var doc = model.document;
- var selection = doc.selection;
- var value = options.value;
- var blocksToChange = Array.from(selection.getSelectedBlocks());
- model.change(function (writer) {
- var _iteratorNormalCompletion2 = true;
- var _didIteratorError2 = false;
- var _iteratorError2 = undefined;
+ try {
+ for (var _iterator2 = blocksToChange[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
+ var block = _step2.value;
+ if (value) {
+ writer.setAttribute(_this.attributeKey, value, block);
+ } else {
+ writer.removeAttribute(_this.attributeKey, block);
+ }
+ }
+ } catch (err) {
+ _didIteratorError2 = true;
+ _iteratorError2 = err;
+ } finally {
try {
- for (var _iterator2 = blocksToChange[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
- var block = _step2.value;
-
- if (value) {
- writer.setAttribute(_this2.attributeKey, value, block);
- } else {
- writer.removeAttribute(_this2.attributeKey, block);
- }
+ if (!_iteratorNormalCompletion2 && _iterator2.return) {
+ _iterator2.return();
}
- } catch (err) {
- _didIteratorError2 = true;
- _iteratorError2 = err;
} finally {
- try {
- if (!_iteratorNormalCompletion2 && _iterator2.return) {
- _iterator2.return();
- }
- } finally {
- if (_didIteratorError2) {
- throw _iteratorError2;
- }
+ if (_didIteratorError2) {
+ throw _iteratorError2;
}
}
- });
- }
+ }
+ });
+ }
- /**
- * Checks the attribute value of the parent block node(s)
- *
- * @private
- * @returns {String} The attribute value.
- */
+ /**
+ * Checks the attribute value of the parent block node(s)
+ *
+ * @private
+ * @returns {String} The attribute value.
+ */
+ _getValueFromBlockNode() {
+ var model = this.editor.model;
+ var schema = model.schema;
+ var selection = model.document.selection;
+ var blocks = Array.from(selection.getSelectedBlocks());
- }, {
- key: '_getValueFromBlockNode',
- value: function _getValueFromBlockNode() {
- var model = this.editor.model;
- var schema = model.schema;
- var selection = model.document.selection;
- var blocks = Array.from(selection.getSelectedBlocks());
+ var _iteratorNormalCompletion3 = true;
+ var _didIteratorError3 = false;
+ var _iteratorError3 = undefined;
- var _iteratorNormalCompletion3 = true;
- var _didIteratorError3 = false;
- var _iteratorError3 = undefined;
+ try {
+ for (var _iterator3 = blocks[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
+ var block = _step3.value;
+ if (schema.checkAttribute(block, this.attributeKey)) {
+ return block.getAttribute(this.attributeKey);
+ }
+ }
+ } catch (err) {
+ _didIteratorError3 = true;
+ _iteratorError3 = err;
+ } finally {
try {
- for (var _iterator3 = blocks[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
- var block = _step3.value;
-
- if (schema.checkAttribute(block, this.attributeKey)) {
- return block.getAttribute(this.attributeKey);
- }
+ if (!_iteratorNormalCompletion3 && _iterator3.return) {
+ _iterator3.return();
}
- } catch (err) {
- _didIteratorError3 = true;
- _iteratorError3 = err;
} finally {
- try {
- if (!_iteratorNormalCompletion3 && _iterator3.return) {
- _iterator3.return();
- }
- } finally {
- if (_didIteratorError3) {
- throw _iteratorError3;
- }
+ if (_didIteratorError3) {
+ throw _iteratorError3;
}
}
-
- return undefined;
}
- }]);
- return BlockStyleCommand;
-}(_ckeditor5Exports.Command);
+ return undefined;
+ }
+}; // Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted
exports.default = BlockStyleCommand;
@@ -1275,8 +1330,6 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
-var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
var _ckeditor5Exports = __webpack_require__(/*! ckeditor5-exports */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js");
var _BlockStyleCommand = __webpack_require__(/*! ./BlockStyleCommand */ "./src/BlockStyleCommand.js");
@@ -1285,68 +1338,49 @@ var _BlockStyleCommand2 = _interopRequireDefault(_BlockStyleCommand);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
/**
* FACTORY FUNCTION for the plugin
* needs the current preset configuration as parameter.
*/
exports.default = function (presetIdentifier, presetConfiguration) {
- return function (_Plugin) {
- _inherits(BlockStyleEditing, _Plugin);
-
- function BlockStyleEditing() {
- _classCallCheck(this, BlockStyleEditing);
-
- return _possibleConstructorReturn(this, (BlockStyleEditing.__proto__ || Object.getPrototypeOf(BlockStyleEditing)).apply(this, arguments));
- }
-
- _createClass(BlockStyleEditing, [{
- key: 'init',
- value: function init() {
- var schema = this.editor.model.schema;
- var modelAttributeKey = 'blockStyles-' + presetIdentifier;
- var optionIdentifiers = Object.keys(presetConfiguration.options);
-
- schema.extend('$block', { allowAttributes: modelAttributeKey });
-
- // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html
- schema.setAttributeProperties(modelAttributeKey, { isFormatting: true });
-
- // Model configuration
- var config = {
- model: {
- key: modelAttributeKey,
- values: optionIdentifiers
- },
- view: {}
+ return class BlockStyleEditing extends _ckeditor5Exports.Plugin {
+ init() {
+ var schema = this.editor.model.schema;
+ var modelAttributeKey = 'blockStyles-' + presetIdentifier;
+ var optionIdentifiers = Object.keys(presetConfiguration.options);
+
+ schema.extend('$block', { allowAttributes: modelAttributeKey });
+
+ // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html
+ schema.setAttributeProperties(modelAttributeKey, { isFormatting: true });
+
+ // Model configuration
+ var config = {
+ model: {
+ key: modelAttributeKey,
+ values: optionIdentifiers
+ },
+ view: {}
+ };
+
+ // View configuration
+ optionIdentifiers.forEach(function (optionIdentifier) {
+ var options = presetConfiguration.options[optionIdentifier];
+ var attribute = options.attribute || 'class';
+ var attributeValues = attribute === options.attribute ? options.attributeValue : options.cssClass.split(' ');
+
+ config.view[optionIdentifier] = {
+ key: attribute,
+ value: attributeValues
};
+ });
- // View configuration
- optionIdentifiers.forEach(function (optionIdentifier) {
- var options = presetConfiguration.options[optionIdentifier];
- var attribute = options.attribute || 'class';
- var attributeValues = attribute === options.attribute ? options.attributeValue : options.cssClass.split(' ');
-
- config.view[optionIdentifier] = {
- key: attribute,
- value: attributeValues
- };
- });
-
- // Convert the model to view correctly
- this.editor.conversion.attributeToAttribute(config);
+ // Convert the model to view correctly
+ this.editor.conversion.attributeToAttribute(config);
- this.editor.commands.add('blockStyles:' + presetIdentifier, new _BlockStyleCommand2.default(this.editor, modelAttributeKey));
- }
- }]);
-
- return BlockStyleEditing;
- }(_ckeditor5Exports.Plugin);
+ this.editor.commands.add('blockStyles:' + presetIdentifier, new _BlockStyleCommand2.default(this.editor, modelAttributeKey));
+ }
+ };
};
/***/ }),
@@ -1366,30 +1400,19 @@ Object.defineProperty(exports, "__esModule", {
});
exports.default = undefined;
-var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
var _ckeditor5Exports = __webpack_require__(/*! ckeditor5-exports */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js");
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } // Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted
-
-
/**
* Set a key-value inline style; e.g. "fontColor=red".
*
*/
-var InlineStylesCommand = function (_Command) {
- _inherits(InlineStylesCommand, _Command);
-
+var InlineStylesCommand = class InlineStylesCommand extends _ckeditor5Exports.Command {
/**
* @param {module:core/editor/editor~Editor} editor
* @param {String} attributeKey Attribute that will be set by the command.
*/
- function InlineStylesCommand(editor, attributeKey) {
- _classCallCheck(this, InlineStylesCommand);
+ constructor(editor, attributeKey) {
+ super(editor);
/**
* The attribute that will be set by the command.
@@ -1397,9 +1420,7 @@ var InlineStylesCommand = function (_Command) {
* @readonly
* @member {String}
*/
- var _this = _possibleConstructorReturn(this, (InlineStylesCommand.__proto__ || Object.getPrototypeOf(InlineStylesCommand)).call(this, editor));
-
- _this.attributeKey = attributeKey;
+ this.attributeKey = attributeKey;
/**
* Flag indicating whether the command is active. The command is active when the
@@ -1409,162 +1430,148 @@ var InlineStylesCommand = function (_Command) {
* @readonly
* @member {Boolean} #value
*/
- return _this;
}
/**
* Updates the command's {@link #value} and {@link #isEnabled} based on the current selection.
*/
+ refresh() {
+ var model = this.editor.model;
+ var doc = model.document;
+ this.value = this._getValueFromFirstAllowedNode();
+ this.isEnabled = model.schema.checkAttributeInSelection(doc.selection, this.attributeKey);
+ }
- _createClass(InlineStylesCommand, [{
- key: 'refresh',
- value: function refresh() {
- var model = this.editor.model;
- var doc = model.document;
+ /**
+ * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the
+ * attribute.
+ *
+ * @fires execute
+ * @param {Object} [options] Command options.
+ * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.
+ */
+ execute() {
+ var _this = this;
- this.value = this._getValueFromFirstAllowedNode();
- this.isEnabled = model.schema.checkAttributeInSelection(doc.selection, this.attributeKey);
- }
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- /**
- * Executes the command — sets the attribute to the desired value. If there is no desired valued, removes the
- * attribute.
- *
- * @fires execute
- * @param {Object} [options] Command options.
- * @param {String} [options.value] The value to be set; if null or not existing, the attribute will be removed.
- */
+ var model = this.editor.model;
+ var doc = model.document;
+ var selection = doc.selection;
+ var value = options.value;
- }, {
- key: 'execute',
- value: function execute() {
- var _this2 = this;
+ model.change(function (writer) {
+ if (selection.isCollapsed) {
+ if (value) {
+ // value is existing, we want to set the selection attribute to the value.
+ writer.setSelectionAttribute(_this.attributeKey, value);
+ } else {
+ writer.removeSelectionAttribute(_this.attributeKey);
+ }
+ } else {
+ var ranges = model.schema.getValidRanges(selection.getRanges(), _this.attributeKey);
- var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
+ var _iteratorNormalCompletion = true;
+ var _didIteratorError = false;
+ var _iteratorError = undefined;
- var model = this.editor.model;
- var doc = model.document;
- var selection = doc.selection;
- var value = options.value;
+ try {
+ for (var _iterator = ranges[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
+ var range = _step.value;
- model.change(function (writer) {
- if (selection.isCollapsed) {
- if (value) {
- // value is existing, we want to set the selection attribute to the value.
- writer.setSelectionAttribute(_this2.attributeKey, value);
- } else {
- writer.removeSelectionAttribute(_this2.attributeKey);
+ if (value) {
+ writer.setAttribute(_this.attributeKey, value, range);
+ } else {
+ writer.removeAttribute(_this.attributeKey, range);
+ }
}
- } else {
- var ranges = model.schema.getValidRanges(selection.getRanges(), _this2.attributeKey);
-
- var _iteratorNormalCompletion = true;
- var _didIteratorError = false;
- var _iteratorError = undefined;
-
+ } catch (err) {
+ _didIteratorError = true;
+ _iteratorError = err;
+ } finally {
try {
- for (var _iterator = ranges[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
- var range = _step.value;
-
- if (value) {
- writer.setAttribute(_this2.attributeKey, value, range);
- } else {
- writer.removeAttribute(_this2.attributeKey, range);
- }
+ if (!_iteratorNormalCompletion && _iterator.return) {
+ _iterator.return();
}
- } catch (err) {
- _didIteratorError = true;
- _iteratorError = err;
} finally {
- try {
- if (!_iteratorNormalCompletion && _iterator.return) {
- _iterator.return();
- }
- } finally {
- if (_didIteratorError) {
- throw _iteratorError;
- }
+ if (_didIteratorError) {
+ throw _iteratorError;
}
}
}
- });
- }
+ }
+ });
+ }
- /**
- * Checks the attribute value of the first node in the selection that allows the attribute.
- * For the collapsed selection returns the selection attribute.
- *
- * @private
- * @returns {String} The attribute value.
- */
+ /**
+ * Checks the attribute value of the first node in the selection that allows the attribute.
+ * For the collapsed selection returns the selection attribute.
+ *
+ * @private
+ * @returns {String} The attribute value.
+ */
+ _getValueFromFirstAllowedNode() {
+ var model = this.editor.model;
+ var schema = model.schema;
+ var selection = model.document.selection;
- }, {
- key: '_getValueFromFirstAllowedNode',
- value: function _getValueFromFirstAllowedNode() {
- var model = this.editor.model;
- var schema = model.schema;
- var selection = model.document.selection;
+ if (selection.isCollapsed) {
+ return selection.getAttribute(this.attributeKey);
+ }
- if (selection.isCollapsed) {
- return selection.getAttribute(this.attributeKey);
- }
+ var _iteratorNormalCompletion2 = true;
+ var _didIteratorError2 = false;
+ var _iteratorError2 = undefined;
- var _iteratorNormalCompletion2 = true;
- var _didIteratorError2 = false;
- var _iteratorError2 = undefined;
+ try {
+ for (var _iterator2 = selection.getRanges()[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
+ var range = _step2.value;
+ var _iteratorNormalCompletion3 = true;
+ var _didIteratorError3 = false;
+ var _iteratorError3 = undefined;
- try {
- for (var _iterator2 = selection.getRanges()[Symbol.iterator](), _step2; !(_iteratorNormalCompletion2 = (_step2 = _iterator2.next()).done); _iteratorNormalCompletion2 = true) {
- var range = _step2.value;
- var _iteratorNormalCompletion3 = true;
- var _didIteratorError3 = false;
- var _iteratorError3 = undefined;
+ try {
+ for (var _iterator3 = range.getItems()[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
+ var item = _step3.value;
+ if (schema.checkAttribute(item, this.attributeKey)) {
+ return item.getAttribute(this.attributeKey);
+ }
+ }
+ } catch (err) {
+ _didIteratorError3 = true;
+ _iteratorError3 = err;
+ } finally {
try {
- for (var _iterator3 = range.getItems()[Symbol.iterator](), _step3; !(_iteratorNormalCompletion3 = (_step3 = _iterator3.next()).done); _iteratorNormalCompletion3 = true) {
- var item = _step3.value;
-
- if (schema.checkAttribute(item, this.attributeKey)) {
- return item.getAttribute(this.attributeKey);
- }
+ if (!_iteratorNormalCompletion3 && _iterator3.return) {
+ _iterator3.return();
}
- } catch (err) {
- _didIteratorError3 = true;
- _iteratorError3 = err;
} finally {
- try {
- if (!_iteratorNormalCompletion3 && _iterator3.return) {
- _iterator3.return();
- }
- } finally {
- if (_didIteratorError3) {
- throw _iteratorError3;
- }
+ if (_didIteratorError3) {
+ throw _iteratorError3;
}
}
}
- } catch (err) {
- _didIteratorError2 = true;
- _iteratorError2 = err;
+ }
+ } catch (err) {
+ _didIteratorError2 = true;
+ _iteratorError2 = err;
+ } finally {
+ try {
+ if (!_iteratorNormalCompletion2 && _iterator2.return) {
+ _iterator2.return();
+ }
} finally {
- try {
- if (!_iteratorNormalCompletion2 && _iterator2.return) {
- _iterator2.return();
- }
- } finally {
- if (_didIteratorError2) {
- throw _iteratorError2;
- }
+ if (_didIteratorError2) {
+ throw _iteratorError2;
}
}
-
- return undefined;
}
- }]);
- return InlineStylesCommand;
-}(_ckeditor5Exports.Command);
+ return undefined;
+ }
+}; // Originally taken from https://raw.githubusercontent.com/ckeditor/ckeditor5/master/packages/ckeditor5-basic-styles/src/attributecommand.js and adjusted
exports.default = InlineStylesCommand;
@@ -1584,8 +1591,6 @@ Object.defineProperty(exports, "__esModule", {
value: true
});
-var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
var _ckeditor5Exports = __webpack_require__(/*! ckeditor5-exports */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js");
var _InlineStylesCommand = __webpack_require__(/*! ./InlineStylesCommand */ "./src/InlineStylesCommand.js");
@@ -1596,69 +1601,50 @@ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { de
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
/**
* FACTORY FUNCTION for the plugin
* needs the current preset configuration as parameter.
*/
exports.default = function (presetIdentifier, presetConfiguration) {
- return function (_Plugin) {
- _inherits(InlineStylesEditing, _Plugin);
+ return class InlineStylesEditing extends _ckeditor5Exports.Plugin {
+ init() {
+ var schema = this.editor.model.schema;
+ var optionIdentifiers = Object.keys(presetConfiguration.options);
+ var modelAttributeKey = 'inlineStyles-' + presetIdentifier;
+
+ schema.extend('$text', { allowAttributes: modelAttributeKey });
+
+ // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html
+ schema.setAttributeProperties(modelAttributeKey, { isFormatting: true });
+
+ // Model configuration
+ var config = {
+ model: {
+ key: modelAttributeKey,
+ values: optionIdentifiers
+ },
+ view: {}
+ };
- function InlineStylesEditing() {
- _classCallCheck(this, InlineStylesEditing);
+ // View configuration
+ optionIdentifiers.forEach(function (optionIdentifier) {
+ var options = presetConfiguration.options[optionIdentifier];
+ var attribute = options.attribute;
- return _possibleConstructorReturn(this, (InlineStylesEditing.__proto__ || Object.getPrototypeOf(InlineStylesEditing)).apply(this, arguments));
- }
+ var classes = options.attributeValue || options.cssClass;
- _createClass(InlineStylesEditing, [{
- key: 'init',
- value: function init() {
- var schema = this.editor.model.schema;
- var optionIdentifiers = Object.keys(presetConfiguration.options);
- var modelAttributeKey = 'inlineStyles-' + presetIdentifier;
-
- schema.extend('$text', { allowAttributes: modelAttributeKey });
-
- // https://ckeditor.com/docs/ckeditor5/latest/features/remove-format.html
- schema.setAttributeProperties(modelAttributeKey, { isFormatting: true });
-
- // Model configuration
- var config = {
- model: {
- key: modelAttributeKey,
- values: optionIdentifiers
- },
- view: {}
+ config.view[optionIdentifier] = {
+ name: 'span',
+ attributes: _defineProperty({}, attribute ? attribute : 'class', classes)
};
+ });
- // View configuration
- optionIdentifiers.forEach(function (optionIdentifier) {
- var options = presetConfiguration.options[optionIdentifier];
- var attribute = options.attribute;
-
- var classes = options.attributeValue || options.cssClass;
-
- config.view[optionIdentifier] = {
- name: 'span',
- attributes: _defineProperty({}, attribute ? attribute : 'class', classes)
- };
- });
-
- // Convert the model to view correctly
- this.editor.conversion.attributeToElement(config);
-
- this.editor.commands.add('inlineStyles:' + presetIdentifier, new _InlineStylesCommand2.default(this.editor, modelAttributeKey));
- }
- }]);
+ // Convert the model to view correctly
+ this.editor.conversion.attributeToElement(config);
- return InlineStylesEditing;
- }(_ckeditor5Exports.Plugin);
+ this.editor.commands.add('inlineStyles:' + presetIdentifier, new _InlineStylesCommand2.default(this.editor, modelAttributeKey));
+ }
+ };
};
/***/ }),
@@ -1723,8 +1709,6 @@ exports.default = undefined;
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
-var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
var _dec, _class, _class2, _temp;
var _react = __webpack_require__(/*! react */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js");
@@ -1755,69 +1739,47 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
var BlockStyleSelector = (_dec = (0, _reactRedux.connect)((0, _plowJs.$transform)({
formattingUnderCursor: _neosUiReduxStore.selectors.UI.ContentCanvas.formattingUnderCursor
-})), _dec(_class = (_temp = _class2 = function (_PureComponent) {
- _inherits(BlockStyleSelector, _PureComponent);
+})), _dec(_class = (_temp = _class2 = class BlockStyleSelector extends _react.PureComponent {
- function BlockStyleSelector() {
- var _ref;
+ constructor() {
+ super(...arguments);
- _classCallCheck(this, BlockStyleSelector);
-
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
- args[_key] = arguments[_key];
- }
-
- var _this = _possibleConstructorReturn(this, (_ref = BlockStyleSelector.__proto__ || Object.getPrototypeOf(BlockStyleSelector)).call.apply(_ref, [this].concat(args)));
-
- _this.handleOnSelect = _this.handleOnSelect.bind(_this);
- return _this;
+ this.handleOnSelect = this.handleOnSelect.bind(this);
}
- _createClass(BlockStyleSelector, [{
- key: 'render',
- value: function render() {
- var optionsForSelect = Object.entries(this.props.presetConfiguration.options).map(function (_ref2) {
- var _ref3 = _slicedToArray(_ref2, 2),
- optionIdentifier = _ref3[0],
- optionConfiguration = _ref3[1];
-
- return {
- value: optionIdentifier,
- label: optionConfiguration.label
- };
- });
-
- if (optionsForSelect.length === 0) {
- return null;
- }
+ render() {
+ var optionsForSelect = Object.entries(this.props.presetConfiguration.options).map(function (_ref) {
+ var _ref2 = _slicedToArray(_ref, 2),
+ optionIdentifier = _ref2[0],
+ optionConfiguration = _ref2[1];
- var currentValue = this.props.formattingUnderCursor['blockStyles:' + this.props.presetIdentifier];
+ return {
+ value: optionIdentifier,
+ label: optionConfiguration.label
+ };
+ });
- return _react2.default.createElement(_reactUiComponents.SelectBox, {
- options: optionsForSelect,
- value: currentValue,
- allowEmpty: true,
- placeholder: this.props.presetConfiguration.label,
- onValueChange: this.handleOnSelect
- });
- }
- }, {
- key: 'handleOnSelect',
- value: function handleOnSelect(optionIdentifier) {
- CkEditorApi.executeCommand('blockStyles:' + this.props.presetIdentifier, { value: optionIdentifier });
+ if (optionsForSelect.length === 0) {
+ return null;
}
- }]);
- return BlockStyleSelector;
-}(_react.PureComponent), _class2.propTypes = {
+ var currentValue = this.props.formattingUnderCursor['blockStyles:' + this.props.presetIdentifier];
+
+ return _react2.default.createElement(_reactUiComponents.SelectBox, {
+ options: optionsForSelect,
+ value: currentValue,
+ allowEmpty: true,
+ placeholder: this.props.presetConfiguration.label,
+ onValueChange: this.handleOnSelect
+ });
+ }
+
+ handleOnSelect(optionIdentifier) {
+ CkEditorApi.executeCommand('blockStyles:' + this.props.presetIdentifier, { value: optionIdentifier });
+ }
+}, _class2.propTypes = {
// from outside props
presetIdentifier: _propTypes2.default.string.isRequired,
presetConfiguration: _PresetType2.default.isRequired,
@@ -1846,8 +1808,6 @@ exports.default = undefined;
var _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i["return"]) _i["return"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError("Invalid attempt to destructure non-iterable instance"); } }; }();
-var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();
-
var _dec, _class, _class2, _temp;
var _react = __webpack_require__(/*! react */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js");
@@ -1878,69 +1838,47 @@ function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj;
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
-function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
-
-function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; }
-
-function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }
-
var InlineStyleSelector = (_dec = (0, _reactRedux.connect)((0, _plowJs.$transform)({
formattingUnderCursor: _neosUiReduxStore.selectors.UI.ContentCanvas.formattingUnderCursor
-})), _dec(_class = (_temp = _class2 = function (_PureComponent) {
- _inherits(InlineStyleSelector, _PureComponent);
-
- function InlineStyleSelector() {
- var _ref;
+})), _dec(_class = (_temp = _class2 = class InlineStyleSelector extends _react.PureComponent {
- _classCallCheck(this, InlineStyleSelector);
-
- for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {
- args[_key] = arguments[_key];
- }
+ constructor() {
+ super(...arguments);
- var _this = _possibleConstructorReturn(this, (_ref = InlineStyleSelector.__proto__ || Object.getPrototypeOf(InlineStyleSelector)).call.apply(_ref, [this].concat(args)));
-
- _this.handleOnSelect = _this.handleOnSelect.bind(_this);
- return _this;
+ this.handleOnSelect = this.handleOnSelect.bind(this);
}
- _createClass(InlineStyleSelector, [{
- key: 'render',
- value: function render() {
- var optionsForSelect = Object.entries(this.props.presetConfiguration.options).map(function (_ref2) {
- var _ref3 = _slicedToArray(_ref2, 2),
- optionIdentifier = _ref3[0],
- optionConfiguration = _ref3[1];
-
- return {
- value: optionIdentifier,
- label: optionConfiguration.label
- };
- });
-
- if (optionsForSelect.length === 0) {
- return null;
- }
+ render() {
+ var optionsForSelect = Object.entries(this.props.presetConfiguration.options).map(function (_ref) {
+ var _ref2 = _slicedToArray(_ref, 2),
+ optionIdentifier = _ref2[0],
+ optionConfiguration = _ref2[1];
- var currentValue = this.props.formattingUnderCursor['inlineStyles:' + this.props.presetIdentifier];
+ return {
+ value: optionIdentifier,
+ label: optionConfiguration.label
+ };
+ });
- return _react2.default.createElement(_reactUiComponents.SelectBox, {
- options: optionsForSelect,
- value: currentValue,
- allowEmpty: true,
- placeholder: this.props.presetConfiguration.label,
- onValueChange: this.handleOnSelect
- });
- }
- }, {
- key: 'handleOnSelect',
- value: function handleOnSelect(optionIdentifier) {
- CkEditorApi.executeCommand('inlineStyles:' + this.props.presetIdentifier, { value: optionIdentifier });
+ if (optionsForSelect.length === 0) {
+ return null;
}
- }]);
- return InlineStyleSelector;
-}(_react.PureComponent), _class2.propTypes = {
+ var currentValue = this.props.formattingUnderCursor['inlineStyles:' + this.props.presetIdentifier];
+
+ return _react2.default.createElement(_reactUiComponents.SelectBox, {
+ options: optionsForSelect,
+ value: currentValue,
+ allowEmpty: true,
+ placeholder: this.props.presetConfiguration.label,
+ onValueChange: this.handleOnSelect
+ });
+ }
+
+ handleOnSelect(optionIdentifier) {
+ CkEditorApi.executeCommand('inlineStyles:' + this.props.presetIdentifier, { value: optionIdentifier });
+ }
+}, _class2.propTypes = {
// from outside props
presetIdentifier: _propTypes2.default.string.isRequired,
presetConfiguration: _PresetType2.default.isRequired,
diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js.map b/Resources/Public/JavaScript/CkStyles/Plugin.js.map
index 1ebe8f2..959c769 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 ? 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
+{"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":["__importDefault","mod","__esModule","exports","manifest_1","require","createReadOnlyValue","value","writable","enumerable","configurable","createConsumerApi","manifests","exposureMap","api","Object","keys","forEach","key","defineProperty","window","SynchronousMetaRegistry","SynchronousRegistry","readFromConsumerApi","createConsumerApi_1","readFromConsumerApi_1","index_1","identifier","options","bootstrap","_a","push","__read","o","n","m","Symbol","iterator","i","call","r","ar","e","next","done","error","__spreadArray","to","from","pack","arguments","length","l","Array","prototype","slice","concat","args","_i","apply","Error","AbstractRegistry","description","SERIAL_VERSION_UID","__extends","extendStatics","d","b","setPrototypeOf","__proto__","p","hasOwnProperty","TypeError","String","__","constructor","create","SynchronousRegistry_1","_super","set","AbstractRegistry_1","positional_array_sorter_1","_this","_registry","position","entry","indexOfItemWithTheSameKey","findIndex","item","get","console","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","tslib_1","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","positionValue","invalid","startsWith","weightMatch","match","weight","Number","reference","numberPosition","parseFloat","isNaN","isFinite","resultStart","resultMiddle","resultEnd","processedKeys","sortedWeights","dict","asc","weights","x","sort","a","reverse","addToResults","e_8","e_9","beforeWeights","beforeWeights_1","__values","beforeWeights_1_1","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","__spread","BlockStyleCommand","Command","editor","attributeKey","refresh","model","doc","document","blocksToChange","selection","getSelectedBlocks","_getValueFromBlockNode","block","schema","checkAttribute","isEnabled","execute","change","writer","setAttribute","removeAttribute","blocks","getAttribute","undefined","presetIdentifier","presetConfiguration","BlockStyleEditing","Plugin","init","modelAttributeKey","optionIdentifiers","extend","allowAttributes","setAttributeProperties","isFormatting","config","values","view","optionIdentifier","attribute","attributeValues","attributeValue","cssClass","split","conversion","attributeToAttribute","commands","add","InlineStylesCommand","_getValueFromFirstAllowedNode","checkAttributeInSelection","isCollapsed","setSelectionAttribute","removeSelectionAttribute","ranges","getValidRanges","getRanges","range","getItems","InlineStylesEditing","classes","name","attributes","attributeToElement","attributeValueOrCssClass","props","propName","componentName","shape","label","string","isRequired","objectOf","BlockStyleSelector","formattingUnderCursor","selectors","UI","ContentCanvas","PureComponent","handleOnSelect","bind","render","optionsForSelect","entries","optionConfiguration","currentValue","executeCommand","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\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nexports.__esModule = true;\nvar manifest_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((0, manifest_1[\"default\"])(manifests)));\n Object.defineProperty(window, '@Neos:HostPluginAPI', createReadOnlyValue(api));\n}\nexports[\"default\"] = createConsumerApi;\n//# sourceMappingURL=createConsumerApi.js.map","\"use strict\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nexports.__esModule = true;\nexports.SynchronousMetaRegistry = exports.SynchronousRegistry = exports.readFromConsumerApi = exports.createConsumerApi = void 0;\nvar createConsumerApi_1 = __importDefault(require(\"./createConsumerApi\"));\nexports.createConsumerApi = createConsumerApi_1[\"default\"];\nvar readFromConsumerApi_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\"] = (0, 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\";\nvar __read = (this && this.__read) || function (o, n) {\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\n if (!m) return o;\n var i = m.call(o), r, ar = [], e;\n try {\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\n }\n catch (error) { e = { error: error }; }\n finally {\n try {\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\n }\n finally { if (e) throw e.error; }\n }\n return ar;\n};\nvar __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\n if (ar || !(i in from)) {\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\n ar[i] = from[i];\n }\n }\n return to.concat(ar || Array.prototype.slice.call(from));\n};\nexports.__esModule = true;\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'][\"@\".concat(key)]) {\n return (_a = window['@Neos:HostPluginAPI'])[\"@\".concat(key)].apply(_a, __spreadArray([], __read(args), false));\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\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nexports.__esModule = true;\nvar SynchronousRegistry_1 = __importDefault(require(\"./SynchronousRegistry\"));\nvar SynchronousMetaRegistry = (function (_super) {\n __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\";\nvar __extends = (this && this.__extends) || (function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf ||\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\n return extendStatics(d, b);\n };\n return function (d, b) {\n if (typeof b !== \"function\" && b !== null)\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\n extendStatics(d, b);\n function __() { this.constructor = d; }\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n})();\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nexports.__esModule = true;\nvar AbstractRegistry_1 = __importDefault(require(\"./AbstractRegistry\"));\nvar positional_array_sorter_1 = __importDefault(require(\"@neos-project/positional-array-sorter\"));\nvar SynchronousRegistry = (function (_super) {\n __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 (0, 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 (0, 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\";\nvar __importDefault = (this && this.__importDefault) || function (mod) {\n return (mod && mod.__esModule) ? mod : { \"default\": mod };\n};\nexports.__esModule = true;\nexports.SynchronousMetaRegistry = exports.SynchronousRegistry = void 0;\nvar SynchronousRegistry_1 = __importDefault(require(\"./SynchronousRegistry\"));\nexports.SynchronousRegistry = SynchronousRegistry_1[\"default\"];\nvar SynchronousMetaRegistry_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
diff --git a/composer.json b/composer.json
index 3e6b72c..cac5eb4 100644
--- a/composer.json
+++ b/composer.json
@@ -14,7 +14,8 @@
}
],
"require": {
- "neos/neos-ui": ">=3.8 <9.0"
+ "neos/neos-ui": ">=3.8 <9.0",
+ "neos/neos": "^7.0 || ^8.0"
},
"extra": {
"neos": {