From a00e49110a23d294a62cb748cf4a3cc6047700bf Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 07:29:01 +0200 Subject: [PATCH 01/19] NCP-40 // Remove built script, Add Resources/Public to gitignore --- .gitignore | 3 +- .../Public/JavaScript/CkStyles/Plugin.js | 2081 ----------------- .../Public/JavaScript/CkStyles/Plugin.js.map | 1 - 3 files changed, 2 insertions(+), 2083 deletions(-) delete mode 100644 Resources/Public/JavaScript/CkStyles/Plugin.js delete mode 100644 Resources/Public/JavaScript/CkStyles/Plugin.js.map diff --git a/.gitignore b/.gitignore index ae1af26..aa21311 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,4 @@ .idea node_modules -yarn.lock \ No newline at end of file +yarn.lock +Resources/Public diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js b/Resources/Public/JavaScript/CkStyles/Plugin.js deleted file mode 100644 index 14e7cbe..0000000 --- a/Resources/Public/JavaScript/CkStyles/Plugin.js +++ /dev/null @@ -1,2081 +0,0 @@ -/******/ (function(modules) { // webpackBootstrap -/******/ // The module cache -/******/ var installedModules = {}; -/******/ -/******/ // The require function -/******/ function __webpack_require__(moduleId) { -/******/ -/******/ // Check if module is in cache -/******/ if(installedModules[moduleId]) { -/******/ return installedModules[moduleId].exports; -/******/ } -/******/ // Create a new module (and put it into the cache) -/******/ var module = installedModules[moduleId] = { -/******/ i: moduleId, -/******/ l: false, -/******/ exports: {} -/******/ }; -/******/ -/******/ // Execute the module function -/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); -/******/ -/******/ // Flag the module as loaded -/******/ module.l = true; -/******/ -/******/ // Return the exports of the module -/******/ return module.exports; -/******/ } -/******/ -/******/ -/******/ // expose the modules object (__webpack_modules__) -/******/ __webpack_require__.m = modules; -/******/ -/******/ // expose the module cache -/******/ __webpack_require__.c = installedModules; -/******/ -/******/ // define getter function for harmony exports -/******/ __webpack_require__.d = function(exports, name, getter) { -/******/ if(!__webpack_require__.o(exports, name)) { -/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); -/******/ } -/******/ }; -/******/ -/******/ // define __esModule on exports -/******/ __webpack_require__.r = function(exports) { -/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { -/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); -/******/ } -/******/ Object.defineProperty(exports, '__esModule', { value: true }); -/******/ }; -/******/ -/******/ // create a fake namespace object -/******/ // mode & 1: value is a module id, require it -/******/ // mode & 2: merge all properties of value into the ns -/******/ // mode & 4: return value when already ns object -/******/ // mode & 8|1: behave like require -/******/ __webpack_require__.t = function(value, mode) { -/******/ if(mode & 1) value = __webpack_require__(value); -/******/ if(mode & 8) return value; -/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; -/******/ var ns = Object.create(null); -/******/ __webpack_require__.r(ns); -/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); -/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); -/******/ return ns; -/******/ }; -/******/ -/******/ // getDefaultExport function for compatibility with non-harmony modules -/******/ __webpack_require__.n = function(module) { -/******/ var getter = module && module.__esModule ? -/******/ function getDefault() { return module['default']; } : -/******/ function getModuleExports() { return module; }; -/******/ __webpack_require__.d(getter, 'a', getter); -/******/ return getter; -/******/ }; -/******/ -/******/ // Object.prototype.hasOwnProperty.call -/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; -/******/ -/******/ // __webpack_public_path__ -/******/ __webpack_require__.p = ""; -/******/ -/******/ -/******/ // Load entry module and return exports -/******/ return __webpack_require__(__webpack_require__.s = "./src/index.js"); -/******/ }) -/************************************************************************/ -/******/ ({ - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js": -/*!************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js ***! - \************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -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 createReadOnlyValue = function createReadOnlyValue(value) { - return { - value: value, - writable: false, - enumerable: false, - configurable: true - }; -}; -function createConsumerApi(manifests, exposureMap) { - var api = {}; - Object.keys(exposureMap).forEach(function (key) { - Object.defineProperty(api, key, createReadOnlyValue(exposureMap[key])); - }); - Object.defineProperty(api, '@manifest', createReadOnlyValue(manifest_1["default"](manifests))); - Object.defineProperty(window, '@Neos:HostPluginAPI', createReadOnlyValue(api)); -} -exports["default"] = createConsumerApi; -//# sourceMappingURL=createConsumerApi.js.map - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/index.js": -/*!************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/index.js ***! - \************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -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.createConsumerApi = createConsumerApi_1["default"]; -var readFromConsumerApi_1 = tslib_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'); -//# sourceMappingURL=index.js.map - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js": -/*!***************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js ***! - \***************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; -exports["default"] = function (manifests) { - return function (identifier, options, bootstrap) { - var _a; - manifests.push((_a = {}, _a[identifier] = { - options: options, - bootstrap: bootstrap - }, _a)); - }; -}; -//# sourceMappingURL=manifest.js.map - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js": -/*!**************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js ***! - \**************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; -var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js"); -function readFromConsumerApi(key) { - return function () { - var _a; - var args = []; - 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)); - } - throw new Error("You are trying to read from a consumer api that hasn't been initialized yet!"); - }; -} -exports["default"] = readFromConsumerApi; -//# sourceMappingURL=readFromConsumerApi.js.map - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js": -/*!********************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js ***! - \********************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; -var AbstractRegistry = function () { - function AbstractRegistry(description) { - this.SERIAL_VERSION_UID = 'd8a5aa78-978e-11e6-ae22-56b6b6499611'; - this.description = description; - } - return AbstractRegistry; -}(); -exports["default"] = AbstractRegistry; -//# sourceMappingURL=AbstractRegistry.js.map - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js": -/*!***************************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js ***! - \***************************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -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 SynchronousMetaRegistry = function (_super) { - tslib_1.__extends(SynchronousMetaRegistry, _super); - function SynchronousMetaRegistry() { - return _super !== null && _super.apply(this, arguments) || this; - } - SynchronousMetaRegistry.prototype.set = function (key, value) { - if (value.SERIAL_VERSION_UID !== 'd8a5aa78-978e-11e6-ae22-56b6b6499611') { - throw new Error('You can only add registries to a meta registry'); - } - return _super.prototype.set.call(this, key, value); - }; - return SynchronousMetaRegistry; -}(SynchronousRegistry_1["default"]); -exports["default"] = SynchronousMetaRegistry; -//# sourceMappingURL=SynchronousMetaRegistry.js.map - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js": -/*!***********************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js ***! - \***********************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -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 SynchronousRegistry = function (_super) { - tslib_1.__extends(SynchronousRegistry, _super); - function SynchronousRegistry(description) { - var _this = _super.call(this, description) || this; - _this._registry = []; - return _this; - } - SynchronousRegistry.prototype.set = function (key, value, position) { - if (position === void 0) { - position = 0; - } - if (typeof key !== 'string') { - throw new Error('Key must be a string'); - } - if (typeof position !== 'string' && typeof position !== 'number') { - throw new Error('Position must be a string or a number'); - } - var entry = { key: key, value: value }; - if (position) { - entry.position = position; - } - var indexOfItemWithTheSameKey = this._registry.findIndex(function (item) { - return item.key === key; - }); - if (indexOfItemWithTheSameKey === -1) { - this._registry.push(entry); - } else { - this._registry[indexOfItemWithTheSameKey] = entry; - } - return value; - }; - SynchronousRegistry.prototype.get = function (key) { - if (typeof key !== 'string') { - console.error('Key must be a string'); - return null; - } - var result = this._registry.find(function (item) { - return item.key === key; - }); - return result ? result.value : null; - }; - SynchronousRegistry.prototype._getChildrenWrapped = function (searchKey) { - var unsortedChildren = this._registry.filter(function (item) { - return item.key.indexOf(searchKey + '/') === 0; - }); - return positional_array_sorter_1["default"](unsortedChildren); - }; - SynchronousRegistry.prototype.getChildrenAsObject = function (searchKey) { - var result = {}; - this._getChildrenWrapped(searchKey).forEach(function (item) { - result[item.key] = item.value; - }); - return result; - }; - SynchronousRegistry.prototype.getChildren = function (searchKey) { - return this._getChildrenWrapped(searchKey).map(function (item) { - return item.value; - }); - }; - SynchronousRegistry.prototype.has = function (key) { - if (typeof key !== 'string') { - console.error('Key must be a string'); - return false; - } - return Boolean(this._registry.find(function (item) { - return item.key === key; - })); - }; - SynchronousRegistry.prototype._getAllWrapped = function () { - return positional_array_sorter_1["default"](this._registry); - }; - SynchronousRegistry.prototype.getAllAsObject = function () { - var result = {}; - this._getAllWrapped().forEach(function (item) { - result[item.key] = item.value; - }); - return result; - }; - SynchronousRegistry.prototype.getAllAsList = function () { - return this._getAllWrapped().map(function (item) { - return Object.assign({ id: item.key }, item.value); - }); - }; - return SynchronousRegistry; -}(AbstractRegistry_1["default"]); -exports["default"] = SynchronousRegistry; -//# sourceMappingURL=SynchronousRegistry.js.map - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/index.js": -/*!*********************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/index.js ***! - \*********************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -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.SynchronousRegistry = SynchronousRegistry_1["default"]; -var SynchronousMetaRegistry_1 = tslib_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 - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js": -/*!****************************************************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js ***! - \****************************************************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('NeosProjectPackages')().CkEditorApi; - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js": -/*!*********************************************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js ***! - \*********************************************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('NeosProjectPackages')().NeosUiReduxStore; - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js": -/*!*********************************************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js ***! - \*********************************************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('NeosProjectPackages')().ReactUiComponents; - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js": -/*!******************************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js ***! - \******************************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('vendor')().CkEditor5; - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js": -/*!********************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js ***! - \********************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('vendor')().plow; - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js": -/*!***********************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js ***! - \***********************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('vendor')().PropTypes; - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js": -/*!************************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js ***! - \************************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('vendor')().reactRedux; - -/***/ }), - -/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js": -/*!******************************************************************************************!*\ - !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js ***! - \******************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); - -var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -module.exports = (0, _readFromConsumerApi2.default)('vendor')().React; - -/***/ }), - -/***/ "./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js": -/*!******************************************************************************************!*\ - !*** ./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js ***! - \******************************************************************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -exports.__esModule = true; -var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js"); -var positionalArraySorter = function positionalArraySorter(subject, position, idKey) { - var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f, e_7, _g; - if (position === void 0) { - position = 'position'; - } - if (idKey === void 0) { - idKey = 'key'; - } - var positionAccessor = typeof position === 'string' ? function (value) { - return value[position]; - } : position; - var indexMapping = {}; - var middleKeys = {}; - var startKeys = {}; - var endKeys = {}; - var beforeKeys = {}; - var afterKeys = {}; - subject.forEach(function (item, index) { - var key = item[idKey] ? item[idKey] : String(index); - indexMapping[key] = index; - var positionValue = positionAccessor(item); - var position = String(positionValue ? positionValue : index); - var invalid = false; - if (position.startsWith('start')) { - var weightMatch = position.match(/start\s+(\d+)/); - var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0; - if (!startKeys[weight]) { - startKeys[weight] = []; - } - startKeys[weight].push(key); - } else if (position.startsWith('end')) { - var weightMatch = position.match(/end\s+(\d+)/); - var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0; - if (!endKeys[weight]) { - endKeys[weight] = []; - } - endKeys[weight].push(key); - } else if (position.startsWith('before')) { - var match = position.match(/before\s+(\S+)(\s+(\d+))?/); - if (!match) { - invalid = true; - } else { - var reference = match[1]; - var weight = match[3] ? Number(match[3]) : 0; - if (!beforeKeys[reference]) { - beforeKeys[reference] = {}; - } - if (!beforeKeys[reference][weight]) { - beforeKeys[reference][weight] = []; - } - beforeKeys[reference][weight].push(key); - } - } else if (position.startsWith('after')) { - var match = position.match(/after\s+(\S+)(\s+(\d+))?/); - if (!match) { - invalid = true; - } else { - var reference = match[1]; - var weight = match[3] ? Number(match[3]) : 0; - if (!afterKeys[reference]) { - afterKeys[reference] = {}; - } - if (!afterKeys[reference][weight]) { - afterKeys[reference][weight] = []; - } - afterKeys[reference][weight].push(key); - } - } else { - invalid = true; - } - if (invalid) { - var numberPosition = parseFloat(position); - if (isNaN(numberPosition) || !isFinite(numberPosition)) { - numberPosition = index; - } - if (!middleKeys[numberPosition]) { - middleKeys[numberPosition] = []; - } - middleKeys[numberPosition].push(key); - } - }); - var resultStart = []; - var resultMiddle = []; - var resultEnd = []; - var processedKeys = []; - var sortedWeights = function sortedWeights(dict, asc) { - var weights = Object.keys(dict).map(function (x) { - return Number(x); - }).sort(function (a, b) { - return a - b; - }); - return asc ? weights : weights.reverse(); - }; - var addToResults = function addToResults(keys, result) { - keys.forEach(function (key) { - var e_8, _a, e_9, _b; - if (processedKeys.indexOf(key) >= 0) { - return; - } - processedKeys.push(key); - if (beforeKeys[key]) { - var beforeWeights = sortedWeights(beforeKeys[key], true); - try { - for (var beforeWeights_1 = tslib_1.__values(beforeWeights), beforeWeights_1_1 = beforeWeights_1.next(); !beforeWeights_1_1.done; beforeWeights_1_1 = beforeWeights_1.next()) { - var i = beforeWeights_1_1.value; - addToResults(beforeKeys[key][i], result); - } - } catch (e_8_1) { - e_8 = { error: e_8_1 }; - } finally { - try { - if (beforeWeights_1_1 && !beforeWeights_1_1.done && (_a = beforeWeights_1["return"])) _a.call(beforeWeights_1); - } finally { - if (e_8) throw e_8.error; - } - } - } - result.push(key); - if (afterKeys[key]) { - var afterWeights = sortedWeights(afterKeys[key], false); - try { - for (var afterWeights_1 = tslib_1.__values(afterWeights), afterWeights_1_1 = afterWeights_1.next(); !afterWeights_1_1.done; afterWeights_1_1 = afterWeights_1.next()) { - var i = afterWeights_1_1.value; - addToResults(afterKeys[key][i], result); - } - } catch (e_9_1) { - e_9 = { error: e_9_1 }; - } finally { - try { - if (afterWeights_1_1 && !afterWeights_1_1.done && (_b = afterWeights_1["return"])) _b.call(afterWeights_1); - } finally { - if (e_9) throw e_9.error; - } - } - } - }); - }; - try { - for (var _h = tslib_1.__values(sortedWeights(startKeys, false)), _j = _h.next(); !_j.done; _j = _h.next()) { - var i = _j.value; - addToResults(startKeys[i], resultStart); - } - } catch (e_1_1) { - e_1 = { error: e_1_1 }; - } finally { - try { - if (_j && !_j.done && (_a = _h["return"])) _a.call(_h); - } finally { - if (e_1) throw e_1.error; - } - } - try { - for (var _k = tslib_1.__values(sortedWeights(middleKeys, true)), _l = _k.next(); !_l.done; _l = _k.next()) { - var i = _l.value; - addToResults(middleKeys[i], resultMiddle); - } - } catch (e_2_1) { - e_2 = { error: e_2_1 }; - } finally { - try { - if (_l && !_l.done && (_b = _k["return"])) _b.call(_k); - } finally { - if (e_2) throw e_2.error; - } - } - try { - for (var _m = tslib_1.__values(sortedWeights(endKeys, true)), _o = _m.next(); !_o.done; _o = _m.next()) { - var i = _o.value; - addToResults(endKeys[i], resultEnd); - } - } catch (e_3_1) { - e_3 = { error: e_3_1 }; - } finally { - try { - if (_o && !_o.done && (_c = _m["return"])) _c.call(_m); - } finally { - if (e_3) throw e_3.error; - } - } - try { - for (var _p = tslib_1.__values(Object.keys(beforeKeys)), _q = _p.next(); !_q.done; _q = _p.next()) { - var key = _q.value; - if (processedKeys.indexOf(key) >= 0) { - continue; - } - try { - for (var _r = (e_5 = void 0, tslib_1.__values(sortedWeights(beforeKeys[key], false))), _s = _r.next(); !_s.done; _s = _r.next()) { - var i = _s.value; - addToResults(beforeKeys[key][i], resultStart); - } - } catch (e_5_1) { - e_5 = { error: e_5_1 }; - } finally { - try { - if (_s && !_s.done && (_e = _r["return"])) _e.call(_r); - } finally { - if (e_5) throw e_5.error; - } - } - } - } catch (e_4_1) { - e_4 = { error: e_4_1 }; - } finally { - try { - if (_q && !_q.done && (_d = _p["return"])) _d.call(_p); - } finally { - if (e_4) throw e_4.error; - } - } - try { - for (var _t = tslib_1.__values(Object.keys(afterKeys)), _u = _t.next(); !_u.done; _u = _t.next()) { - var key = _u.value; - if (processedKeys.indexOf(key) >= 0) { - continue; - } - try { - for (var _v = (e_7 = void 0, tslib_1.__values(sortedWeights(afterKeys[key], false))), _w = _v.next(); !_w.done; _w = _v.next()) { - var i = _w.value; - addToResults(afterKeys[key][i], resultMiddle); - } - } catch (e_7_1) { - e_7 = { error: e_7_1 }; - } finally { - try { - if (_w && !_w.done && (_g = _v["return"])) _g.call(_v); - } finally { - if (e_7) throw e_7.error; - } - } - } - } catch (e_6_1) { - e_6 = { error: e_6_1 }; - } finally { - try { - if (_u && !_u.done && (_f = _t["return"])) _f.call(_t); - } finally { - if (e_6) throw e_6.error; - } - } - var sortedKeys = tslib_1.__spread(resultStart, resultMiddle, resultEnd); - return sortedKeys.map(function (key) { - return indexMapping[key]; - }).map(function (i) { - return subject[i]; - }); -}; -exports["default"] = positionalArraySorter; -//# sourceMappingURL=positionalArraySorter.js.map - -/***/ }), - -/***/ "./node_modules/tslib/tslib.es6.js": -/*!*****************************************!*\ - !*** ./node_modules/tslib/tslib.es6.js ***! - \*****************************************/ -/*! exports provided: __extends, __assign, __rest, __decorate, __param, __metadata, __awaiter, __generator, __createBinding, __exportStar, __values, __read, __spread, __spreadArrays, __await, __asyncGenerator, __asyncDelegator, __asyncValues, __makeTemplateObject, __importStar, __importDefault, __classPrivateFieldGet, __classPrivateFieldSet */ -/***/ (function(module, __webpack_exports__, __webpack_require__) { - -"use strict"; -__webpack_require__.r(__webpack_exports__); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__extends", function() { return __extends; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__assign", function() { return __assign; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__rest", function() { return __rest; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__decorate", function() { return __decorate; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__param", function() { return __param; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__metadata", function() { return __metadata; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__awaiter", function() { return __awaiter; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__generator", function() { return __generator; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__createBinding", function() { return __createBinding; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__exportStar", function() { return __exportStar; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__values", function() { return __values; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__read", function() { return __read; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__spread", function() { return __spread; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__spreadArrays", function() { return __spreadArrays; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__await", function() { return __await; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncGenerator", function() { return __asyncGenerator; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncDelegator", function() { return __asyncDelegator; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncValues", function() { return __asyncValues; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__makeTemplateObject", function() { return __makeTemplateObject; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__importStar", function() { return __importStar; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__importDefault", function() { return __importDefault; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__classPrivateFieldGet", function() { return __classPrivateFieldGet; }); -/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__classPrivateFieldSet", function() { return __classPrivateFieldSet; }); -/*! ***************************************************************************** -Copyright (c) Microsoft Corporation. - -Permission to use, copy, modify, and/or distribute this software for any -purpose with or without fee is hereby granted. - -THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH -REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY -AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, -INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM -LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR -OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR -PERFORMANCE OF THIS SOFTWARE. -***************************************************************************** */ -/* global Reflect, Promise */ - -var extendStatics = function(d, b) { - extendStatics = Object.setPrototypeOf || - ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || - function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; - return extendStatics(d, b); -}; - -function __extends(d, b) { - extendStatics(d, b); - function __() { this.constructor = d; } - d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); -} - -var __assign = function() { - __assign = Object.assign || function __assign(t) { - for (var s, i = 1, n = arguments.length; i < n; i++) { - s = arguments[i]; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; - } - return t; - } - return __assign.apply(this, arguments); -} - -function __rest(s, e) { - var t = {}; - for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) - t[p] = s[p]; - if (s != null && typeof Object.getOwnPropertySymbols === "function") - for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { - if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) - t[p[i]] = s[p[i]]; - } - return t; -} - -function __decorate(decorators, target, key, desc) { - var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; - if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); - 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; - return c > 3 && r && Object.defineProperty(target, key, r), r; -} - -function __param(paramIndex, decorator) { - return function (target, key) { decorator(target, key, paramIndex); } -} - -function __metadata(metadataKey, metadataValue) { - if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); -} - -function __awaiter(thisArg, _arguments, P, generator) { - function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } - return new (P || (P = Promise))(function (resolve, reject) { - function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } - function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } - function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } - step((generator = generator.apply(thisArg, _arguments || [])).next()); - }); -} - -function __generator(thisArg, body) { - var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; - return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; - function verb(n) { return function (v) { return step([n, v]); }; } - function step(op) { - if (f) throw new TypeError("Generator is already executing."); - while (_) try { - 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; - if (y = 0, t) op = [op[0] & 2, t.value]; - switch (op[0]) { - case 0: case 1: t = op; break; - case 4: _.label++; return { value: op[1], done: false }; - case 5: _.label++; y = op[1]; op = [0]; continue; - case 7: op = _.ops.pop(); _.trys.pop(); continue; - default: - if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } - if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } - if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } - if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } - if (t[2]) _.ops.pop(); - _.trys.pop(); continue; - } - op = body.call(thisArg, _); - } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } - if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; - } -} - -function __createBinding(o, m, k, k2) { - if (k2 === undefined) k2 = k; - o[k2] = m[k]; -} - -function __exportStar(m, exports) { - for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p]; -} - -function __values(o) { - var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; - if (m) return m.call(o); - if (o && typeof o.length === "number") return { - next: function () { - if (o && i >= o.length) o = void 0; - return { value: o && o[i++], done: !o }; - } - }; - throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); -} - -function __read(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; -} - -function __spread() { - for (var ar = [], i = 0; i < arguments.length; i++) - ar = ar.concat(__read(arguments[i])); - return ar; -} - -function __spreadArrays() { - for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; - for (var r = Array(s), k = 0, i = 0; i < il; i++) - for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) - r[k] = a[j]; - return r; -}; - -function __await(v) { - return this instanceof __await ? (this.v = v, this) : new __await(v); -} - -function __asyncGenerator(thisArg, _arguments, generator) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var g = generator.apply(thisArg, _arguments || []), i, q = []; - return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; - 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); }); }; } - function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } - function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } - function fulfill(value) { resume("next", value); } - function reject(value) { resume("throw", value); } - function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } -} - -function __asyncDelegator(o) { - var i, p; - return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; - 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; } -} - -function __asyncValues(o) { - if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); - var m = o[Symbol.asyncIterator], i; - 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); - 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); }); }; } - function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } -} - -function __makeTemplateObject(cooked, raw) { - if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } - return cooked; -}; - -function __importStar(mod) { - if (mod && mod.__esModule) return mod; - var result = {}; - if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; - result.default = mod; - return result; -} - -function __importDefault(mod) { - return (mod && mod.__esModule) ? mod : { default: mod }; -} - -function __classPrivateFieldGet(receiver, privateMap) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to get private field on non-instance"); - } - return privateMap.get(receiver); -} - -function __classPrivateFieldSet(receiver, privateMap, value) { - if (!privateMap.has(receiver)) { - throw new TypeError("attempted to set private field on non-instance"); - } - privateMap.set(receiver, value); - return value; -} - - -/***/ }), - -/***/ "./src/BlockStyleCommand.js": -/*!**********************************!*\ - !*** ./src/BlockStyleCommand.js ***! - \**********************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -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); - - /** - * @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); - - /** - * The attribute that will be set by the command. - * - * @readonly - * @member {String} - */ - var _this = _possibleConstructorReturn(this, (BlockStyleCommand.__proto__ || Object.getPrototypeOf(BlockStyleCommand)).call(this, editor)); - - _this.attributeKey = attributeKey; - - /** - * Flag indicating whether the command is active. The command is active when the - * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that: - * - * @observable - * @readonly - * @member {Boolean} #value - */ - return _this; - } - - /** - * Updates the command's {@link #value} and {@link #isEnabled}. - */ - - - _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 { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - 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. - */ - - }, { - key: 'execute', - value: function execute() { - var _this2 = this; - - 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; - - 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); - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - }); - } - - /** - * Checks the attribute value of the parent block node(s) - * - * @private - * @returns {String} The attribute value. - */ - - }, { - 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; - - 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 { - if (!_iteratorNormalCompletion3 && _iterator3.return) { - _iterator3.return(); - } - } finally { - if (_didIteratorError3) { - throw _iteratorError3; - } - } - } - - return undefined; - } - }]); - - return BlockStyleCommand; -}(_ckeditor5Exports.Command); - -exports.default = BlockStyleCommand; - -/***/ }), - -/***/ "./src/BlockStyleEditing.js": -/*!**********************************!*\ - !*** ./src/BlockStyleEditing.js ***! - \**********************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -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"); - -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: {} - }; - - // 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); - - this.editor.commands.add('blockStyles:' + presetIdentifier, new _BlockStyleCommand2.default(this.editor, modelAttributeKey)); - } - }]); - - return BlockStyleEditing; - }(_ckeditor5Exports.Plugin); -}; - -/***/ }), - -/***/ "./src/InlineStylesCommand.js": -/*!************************************!*\ - !*** ./src/InlineStylesCommand.js ***! - \************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -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); - - /** - * @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); - - /** - * The attribute that will be set by the command. - * - * @readonly - * @member {String} - */ - var _this = _possibleConstructorReturn(this, (InlineStylesCommand.__proto__ || Object.getPrototypeOf(InlineStylesCommand)).call(this, editor)); - - _this.attributeKey = attributeKey; - - /** - * Flag indicating whether the command is active. The command is active when the - * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that: - ** - * @observable - * @readonly - * @member {Boolean} #value - */ - return _this; - } - - /** - * Updates the command's {@link #value} and {@link #isEnabled} based on the current selection. - */ - - - _createClass(InlineStylesCommand, [{ - key: 'refresh', - value: function refresh() { - var model = this.editor.model; - var doc = model.document; - - this.value = this._getValueFromFirstAllowedNode(); - this.isEnabled = model.schema.checkAttributeInSelection(doc.selection, this.attributeKey); - } - - /** - * 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. - */ - - }, { - key: 'execute', - value: function execute() { - var _this2 = this; - - 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; - - 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); - } - } else { - var ranges = model.schema.getValidRanges(selection.getRanges(), _this2.attributeKey); - - var _iteratorNormalCompletion = true; - var _didIteratorError = false; - var _iteratorError = undefined; - - 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); - } - } - } catch (err) { - _didIteratorError = true; - _iteratorError = err; - } finally { - try { - if (!_iteratorNormalCompletion && _iterator.return) { - _iterator.return(); - } - } finally { - 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. - */ - - }, { - 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); - } - - 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 _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 { - if (!_iteratorNormalCompletion3 && _iterator3.return) { - _iterator3.return(); - } - } finally { - if (_didIteratorError3) { - throw _iteratorError3; - } - } - } - } - } catch (err) { - _didIteratorError2 = true; - _iteratorError2 = err; - } finally { - try { - if (!_iteratorNormalCompletion2 && _iterator2.return) { - _iterator2.return(); - } - } finally { - if (_didIteratorError2) { - throw _iteratorError2; - } - } - } - - return undefined; - } - }]); - - return InlineStylesCommand; -}(_ckeditor5Exports.Command); - -exports.default = InlineStylesCommand; - -/***/ }), - -/***/ "./src/InlineStylesEditing.js": -/*!************************************!*\ - !*** ./src/InlineStylesEditing.js ***! - \************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -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"); - -var _InlineStylesCommand2 = _interopRequireDefault(_InlineStylesCommand); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -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); - - function InlineStylesEditing() { - _classCallCheck(this, InlineStylesEditing); - - return _possibleConstructorReturn(this, (InlineStylesEditing.__proto__ || Object.getPrototypeOf(InlineStylesEditing)).apply(this, arguments)); - } - - _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: {} - }; - - // 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)); - } - }]); - - return InlineStylesEditing; - }(_ckeditor5Exports.Plugin); -}; - -/***/ }), - -/***/ "./src/PresetType.js": -/*!***************************!*\ - !*** ./src/PresetType.js ***! - \***************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); - -var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js"); - -var _propTypes2 = _interopRequireDefault(_propTypes); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -function attributeValueOrCssClass(props, propName, componentName) { - if (props[propName] && typeof props[propName] !== 'string') { - return new Error('Prop \'' + propName + '\' must be a string.'); - } - if (!props.attributeValue && !props.cssClass) { - return new Error('Either prop \'attributeValue\' or \'cssClass\' must be supplied to ' + componentName + '.'); - } -} - -exports.default = _propTypes2.default.shape({ - label: _propTypes2.default.string.isRequired, - - // keys are the option values - options: _propTypes2.default.objectOf(_propTypes2.default.shape({ - label: _propTypes2.default.string.isRequired, - attribute: _propTypes2.default.string, - attributeValue: attributeValueOrCssClass, - cssClass: attributeValueOrCssClass - })) -}); - -/***/ }), - -/***/ "./src/components/BlockStyleSelector.js": -/*!**********************************************!*\ - !*** ./src/components/BlockStyleSelector.js ***! - \**********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -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"); - -var _react2 = _interopRequireDefault(_react); - -var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js"); - -var _propTypes2 = _interopRequireDefault(_propTypes); - -var _reactUiComponents = __webpack_require__(/*! @neos-project/react-ui-components */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js"); - -var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js"); - -var _plowJs = __webpack_require__(/*! plow-js */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js"); - -var _PresetType = __webpack_require__(/*! ../PresetType */ "./src/PresetType.js"); - -var _PresetType2 = _interopRequireDefault(_PresetType); - -var _neosUiReduxStore = __webpack_require__(/*! @neos-project/neos-ui-redux-store */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js"); - -var _neosUiCkeditor5Bindings = __webpack_require__(/*! @neos-project/neos-ui-ckeditor5-bindings */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js"); - -var CkEditorApi = _interopRequireWildcard(_neosUiCkeditor5Bindings); - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -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); - - function BlockStyleSelector() { - var _ref; - - _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; - } - - _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; - } - - 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 - }); - } - }, { - key: 'handleOnSelect', - value: function handleOnSelect(optionIdentifier) { - CkEditorApi.executeCommand('blockStyles:' + this.props.presetIdentifier, { value: optionIdentifier }); - } - }]); - - return BlockStyleSelector; -}(_react.PureComponent), _class2.propTypes = { - // from outside props - presetIdentifier: _propTypes2.default.string.isRequired, - presetConfiguration: _PresetType2.default.isRequired, - - // from @connect - formattingUnderCursor: _propTypes2.default.object -}, _temp)) || _class); -exports.default = BlockStyleSelector; - -/***/ }), - -/***/ "./src/components/InlineStyleSelector.js": -/*!***********************************************!*\ - !*** ./src/components/InlineStyleSelector.js ***! - \***********************************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -Object.defineProperty(exports, "__esModule", { - value: true -}); -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"); - -var _react2 = _interopRequireDefault(_react); - -var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js"); - -var _propTypes2 = _interopRequireDefault(_propTypes); - -var _reactUiComponents = __webpack_require__(/*! @neos-project/react-ui-components */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js"); - -var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js"); - -var _plowJs = __webpack_require__(/*! plow-js */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js"); - -var _PresetType = __webpack_require__(/*! ../PresetType */ "./src/PresetType.js"); - -var _PresetType2 = _interopRequireDefault(_PresetType); - -var _neosUiReduxStore = __webpack_require__(/*! @neos-project/neos-ui-redux-store */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js"); - -var _neosUiCkeditor5Bindings = __webpack_require__(/*! @neos-project/neos-ui-ckeditor5-bindings */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js"); - -var CkEditorApi = _interopRequireWildcard(_neosUiCkeditor5Bindings); - -function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } - -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; - - _classCallCheck(this, InlineStyleSelector); - - for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { - args[_key] = arguments[_key]; - } - - var _this = _possibleConstructorReturn(this, (_ref = InlineStyleSelector.__proto__ || Object.getPrototypeOf(InlineStyleSelector)).call.apply(_ref, [this].concat(args))); - - _this.handleOnSelect = _this.handleOnSelect.bind(_this); - return _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; - } - - 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 - }); - } - }, { - key: 'handleOnSelect', - value: function handleOnSelect(optionIdentifier) { - CkEditorApi.executeCommand('inlineStyles:' + this.props.presetIdentifier, { value: optionIdentifier }); - } - }]); - - return InlineStyleSelector; -}(_react.PureComponent), _class2.propTypes = { - // from outside props - presetIdentifier: _propTypes2.default.string.isRequired, - presetConfiguration: _PresetType2.default.isRequired, - - // from @connect - formattingUnderCursor: _propTypes2.default.object -}, _temp)) || _class); -exports.default = InlineStyleSelector; - -/***/ }), - -/***/ "./src/index.js": -/*!**********************!*\ - !*** ./src/index.js ***! - \**********************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -__webpack_require__(/*! ./manifest */ "./src/manifest.js"); - -/***/ }), - -/***/ "./src/manifest.js": -/*!*************************!*\ - !*** ./src/manifest.js ***! - \*************************/ -/*! no static exports found */ -/***/ (function(module, exports, __webpack_require__) { - -"use strict"; - - -var _neosUiExtensibility = __webpack_require__(/*! @neos-project/neos-ui-extensibility */ "./node_modules/@neos-project/neos-ui-extensibility/dist/index.js"); - -var _neosUiExtensibility2 = _interopRequireDefault(_neosUiExtensibility); - -var _plowJs = __webpack_require__(/*! plow-js */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js"); - -var _InlineStylesEditing = __webpack_require__(/*! ./InlineStylesEditing */ "./src/InlineStylesEditing.js"); - -var _InlineStylesEditing2 = _interopRequireDefault(_InlineStylesEditing); - -var _InlineStyleSelector = __webpack_require__(/*! ./components/InlineStyleSelector */ "./src/components/InlineStyleSelector.js"); - -var _InlineStyleSelector2 = _interopRequireDefault(_InlineStyleSelector); - -var _BlockStyleEditing = __webpack_require__(/*! ./BlockStyleEditing */ "./src/BlockStyleEditing.js"); - -var _BlockStyleEditing2 = _interopRequireDefault(_BlockStyleEditing); - -var _BlockStyleSelector = __webpack_require__(/*! ./components/BlockStyleSelector */ "./src/components/BlockStyleSelector.js"); - -var _BlockStyleSelector2 = _interopRequireDefault(_BlockStyleSelector); - -function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } - -(0, _neosUiExtensibility2.default)('TechDivision.CkStyles:Styles', {}, function (globalRegistry, _ref) { - var frontendConfiguration = _ref.frontendConfiguration; - - - var ckEditorRegistry = globalRegistry.get('ckEditor5'); - var richtextToolbar = ckEditorRegistry.get('richtextToolbar'); - var config = ckEditorRegistry.get('config'); - - var inlineStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:InlineStyles']; - var blockStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:BlockStyles']; - - // Block style - if (blockStyleConfiguration) { - - Object.keys(blockStyleConfiguration.presets).forEach(function (presetIdentifier) { - - var blockStylePresetConfiguration = blockStyleConfiguration.presets[presetIdentifier]; - - config.set('TechDivision.CkStyles:BlockStyles_' + presetIdentifier, function (ckEditorConfiguration, _ref2) { - var editorOptions = _ref2.editorOptions; - - var editing = (0, _BlockStyleEditing2.default)(presetIdentifier, blockStylePresetConfiguration); - ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || []; - ckEditorConfiguration.plugins.push(editing); - return ckEditorConfiguration; - }); - - richtextToolbar.set('blockStyles_' + presetIdentifier, { - component: _BlockStyleSelector2.default, - // Display only if the preset is activated in NodeType.yaml for this node property - isVisible: function isVisible(editorOptions, formattingUnderCursor) { - var isVisible = false; - if (editorOptions['blockStyling'] !== undefined && editorOptions['blockStyling'][presetIdentifier] !== undefined) { - isVisible = editorOptions['blockStyling'][presetIdentifier]; - } - return isVisible; - }, - presetIdentifier: presetIdentifier, - presetConfiguration: blockStylePresetConfiguration - }); - }); - } - - //Inline Style - if (inlineStyleConfiguration) { - - Object.keys(inlineStyleConfiguration.presets).forEach(function (presetIdentifier) { - - var inlineStylePresetConfiguration = inlineStyleConfiguration.presets[presetIdentifier]; - - config.set('TechDivision.CkStyle:InlineStyles_' + presetIdentifier, function (ckEditorConfiguration, _ref3) { - var editorOptions = _ref3.editorOptions; - - ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || []; - ckEditorConfiguration.plugins.push((0, _InlineStylesEditing2.default)(presetIdentifier, inlineStylePresetConfiguration)); - return ckEditorConfiguration; - }); - - richtextToolbar.set('inlineStyles_' + presetIdentifier, { - component: _InlineStyleSelector2.default, - // Display only if the preset is activated in NodeType.yaml for this node property - isVisible: function isVisible(editorOptions, formattingUnderCursor) { - var isVisible = false; - if (editorOptions['inlineStyling'] !== undefined && editorOptions['inlineStyling'][presetIdentifier] !== undefined) { - isVisible = editorOptions['inlineStyling'][presetIdentifier]; - } - return isVisible; - }, - presetIdentifier: presetIdentifier, - presetConfiguration: inlineStylePresetConfiguration - }); - }); - } -}); - -/***/ }) - -/******/ }); -//# sourceMappingURL=Plugin.js.map \ No newline at end of file diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js.map b/Resources/Public/JavaScript/CkStyles/Plugin.js.map deleted file mode 100644 index 1ebe8f2..0000000 --- a/Resources/Public/JavaScript/CkStyles/Plugin.js.map +++ /dev/null @@ -1 +0,0 @@ -{"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":";QAAA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;;QAEA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;;;QAGA;QACA;;QAEA;QACA;;QAEA;QACA;QACA;QACA,0CAA0C,gCAAgC;QAC1E;QACA;;QAEA;QACA;QACA;QACA,wDAAwD,kBAAkB;QAC1E;QACA,iDAAiD,cAAc;QAC/D;;QAEA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA;QACA,yCAAyC,iCAAiC;QAC1E,gHAAgH,mBAAmB,EAAE;QACrI;QACA;;QAEA;QACA;QACA;QACA,2BAA2B,0BAA0B,EAAE;QACvD,iCAAiC,eAAe;QAChD;QACA;QACA;;QAEA;QACA,sDAAsD,+DAA+D;;QAErH;QACA;;;QAGA;QACA;;;;;;;;;;;;;AClFa;;AACbA,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIC,UAAUC,mBAAOA,CAAC,gDAAR,CAAd;AACA,IAAIC,aAAaF,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,uFAAR,CAAxB,CAAjB;AACA,IAAIG,sBAAsB,SAAtBA,mBAAsB,CAAUC,KAAV,EAAiB;AAAE,WAAQ;AACjDA,eAAOA,KAD0C;AAEjDC,kBAAU,KAFuC;AAGjDC,oBAAY,KAHqC;AAIjDC,sBAAc;AAJmC,KAAR;AAKxC,CALL;AAMA,SAASC,iBAAT,CAA2BC,SAA3B,EAAsCC,WAAtC,EAAmD;AAC/C,QAAIC,MAAM,EAAV;AACAC,WAAOC,IAAP,CAAYH,WAAZ,EAAyBI,OAAzB,CAAiC,UAAUC,GAAV,EAAe;AAC5CH,eAAOI,cAAP,CAAsBL,GAAtB,EAA2BI,GAA3B,EAAgCZ,oBAAoBO,YAAYK,GAAZ,CAApB,CAAhC;AACH,KAFD;AAGAH,WAAOI,cAAP,CAAsBL,GAAtB,EAA2B,WAA3B,EAAwCR,oBAAoBF,WAAW,SAAX,EAAsBQ,SAAtB,CAApB,CAAxC;AACAG,WAAOI,cAAP,CAAsBC,MAAtB,EAA8B,qBAA9B,EAAqDd,oBAAoBQ,GAApB,CAArD;AACH;AACDd,QAAQ,SAAR,IAAqBW,iBAArB;AACA,6C;;;;;;;;;;;;ACnBa;;AACbX,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIC,UAAUC,mBAAOA,CAAC,gDAAR,CAAd;AACA,IAAIkB,sBAAsBnB,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,yGAAR,CAAxB,CAA1B;AACAH,QAAQW,iBAAR,GAA4BU,oBAAoB,SAApB,CAA5B;AACA,IAAIC,wBAAwBpB,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,6GAAR,CAAxB,CAA5B;AACAH,QAAQuB,mBAAR,GAA8BD,sBAAsB,SAAtB,CAA9B;AACA,IAAIE,UAAUrB,mBAAOA,CAAC,mGAAR,CAAd;AACAH,QAAQyB,mBAAR,GAA8BD,QAAQC,mBAAtC;AACAzB,QAAQ0B,uBAAR,GAAkCF,QAAQE,uBAA1C;AACA1B,QAAQ,SAAR,IAAqBsB,sBAAsB,SAAtB,EAAiC,UAAjC,CAArB;AACA,iC;;;;;;;;;;;;ACXa;;AACbtB,QAAQC,UAAR,GAAqB,IAArB;AACAD,QAAQ,SAAR,IAAsB,UAAUY,SAAV,EAAqB;AACvC,WAAO,UAAUe,UAAV,EAAsBC,OAAtB,EAA+BC,SAA/B,EAA0C;AAC7C,YAAIC,EAAJ;AACAlB,kBAAUmB,IAAV,EAAgBD,KAAK,EAAL,EACZA,GAAGH,UAAH,IAAiB;AACbC,qBAASA,OADI;AAEbC,uBAAWA;AAFE,SADL,EAKZC,EALJ;AAMH,KARD;AASH,CAVD;AAWA,oC;;;;;;;;;;;;ACba;;AACb9B,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIC,UAAUC,mBAAOA,CAAC,gDAAR,CAAd;AACA,SAASoB,mBAAT,CAA6BL,GAA7B,EAAkC;AAC9B,WAAO,YAAY;AACf,YAAIY,EAAJ;AACA,YAAIE,OAAO,EAAX;AACA,aAAK,IAAIC,KAAK,CAAd,EAAiBA,KAAKC,UAAUC,MAAhC,EAAwCF,IAAxC,EAA8C;AAC1CD,iBAAKC,EAAL,IAAWC,UAAUD,EAAV,CAAX;AACH;AACD,YAAIb,OAAO,qBAAP,KAAiCA,OAAO,qBAAP,EAA8B,MAAMF,GAApC,CAArC,EAA+E;AAC3E,mBAAO,CAACY,KAAKV,OAAO,qBAAP,CAAN,EAAqC,MAAMF,GAA3C,EAAgDkB,KAAhD,CAAsDN,EAAtD,EAA0D5B,QAAQmC,QAAR,CAAiBL,IAAjB,CAA1D,CAAP;AACH;AACD,cAAM,IAAIM,KAAJ,CAAU,8EAAV,CAAN;AACH,KAVD;AAWH;AACDtC,QAAQ,SAAR,IAAqBuB,mBAArB;AACA,+C;;;;;;;;;;;;ACjBa;;AACbvB,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIsC,mBAAoB,YAAY;AAChC,aAASA,gBAAT,CAA0BC,WAA1B,EAAuC;AACnC,aAAKC,kBAAL,GAA0B,sCAA1B;AACA,aAAKD,WAAL,GAAmBA,WAAnB;AACH;AACD,WAAOD,gBAAP;AACH,CANuB,EAAxB;AAOAvC,QAAQ,SAAR,IAAqBuC,gBAArB;AACA,4C;;;;;;;;;;;;ACVa;;AACbvC,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIC,UAAUC,mBAAOA,CAAC,gDAAR,CAAd;AACA,IAAIuC,wBAAwBxC,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,sHAAR,CAAxB,CAA5B;AACA,IAAIuB,0BAA2B,UAAUiB,MAAV,EAAkB;AAC7CzC,YAAQ0C,SAAR,CAAkBlB,uBAAlB,EAA2CiB,MAA3C;AACA,aAASjB,uBAAT,GAAmC;AAC/B,eAAOiB,WAAW,IAAX,IAAmBA,OAAOP,KAAP,CAAa,IAAb,EAAmBF,SAAnB,CAAnB,IAAoD,IAA3D;AACH;AACDR,4BAAwBmB,SAAxB,CAAkCC,GAAlC,GAAwC,UAAU5B,GAAV,EAAeX,KAAf,EAAsB;AAC1D,YAAIA,MAAMkC,kBAAN,KAA6B,sCAAjC,EAAyE;AACrE,kBAAM,IAAIH,KAAJ,CAAU,gDAAV,CAAN;AACH;AACD,eAAOK,OAAOE,SAAP,CAAiBC,GAAjB,CAAqBC,IAArB,CAA0B,IAA1B,EAAgC7B,GAAhC,EAAqCX,KAArC,CAAP;AACH,KALD;AAMA,WAAOmB,uBAAP;AACH,CAZ8B,CAY7BgB,sBAAsB,SAAtB,CAZ6B,CAA/B;AAaA1C,QAAQ,SAAR,IAAqB0B,uBAArB;AACA,mD;;;;;;;;;;;;AClBa;;AACb1B,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIC,UAAUC,mBAAOA,CAAC,gDAAR,CAAd;AACA,IAAI6C,qBAAqB9C,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,gHAAR,CAAxB,CAAzB;AACA,IAAI8C,4BAA4B/C,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,iIAAR,CAAxB,CAAhC;AACA,IAAIsB,sBAAuB,UAAUkB,MAAV,EAAkB;AACzCzC,YAAQ0C,SAAR,CAAkBnB,mBAAlB,EAAuCkB,MAAvC;AACA,aAASlB,mBAAT,CAA6Be,WAA7B,EAA0C;AACtC,YAAIU,QAAQP,OAAOI,IAAP,CAAY,IAAZ,EAAkBP,WAAlB,KAAkC,IAA9C;AACAU,cAAMC,SAAN,GAAkB,EAAlB;AACA,eAAOD,KAAP;AACH;AACDzB,wBAAoBoB,SAApB,CAA8BC,GAA9B,GAAoC,UAAU5B,GAAV,EAAeX,KAAf,EAAsB6C,QAAtB,EAAgC;AAChE,YAAIA,aAAa,KAAK,CAAtB,EAAyB;AAAEA,uBAAW,CAAX;AAAe;AAC1C,YAAI,OAAOlC,GAAP,KAAe,QAAnB,EAA6B;AACzB,kBAAM,IAAIoB,KAAJ,CAAU,sBAAV,CAAN;AACH;AACD,YAAI,OAAOc,QAAP,KAAoB,QAApB,IAAgC,OAAOA,QAAP,KAAoB,QAAxD,EAAkE;AAC9D,kBAAM,IAAId,KAAJ,CAAU,uCAAV,CAAN;AACH;AACD,YAAIe,QAAQ,EAAEnC,KAAKA,GAAP,EAAYX,OAAOA,KAAnB,EAAZ;AACA,YAAI6C,QAAJ,EAAc;AACVC,kBAAMD,QAAN,GAAiBA,QAAjB;AACH;AACD,YAAIE,4BAA4B,KAAKH,SAAL,CAAeI,SAAf,CAAyB,UAAUC,IAAV,EAAgB;AAAE,mBAAOA,KAAKtC,GAAL,KAAaA,GAApB;AAA0B,SAArE,CAAhC;AACA,YAAIoC,8BAA8B,CAAC,CAAnC,EAAsC;AAClC,iBAAKH,SAAL,CAAepB,IAAf,CAAoBsB,KAApB;AACH,SAFD,MAGK;AACD,iBAAKF,SAAL,CAAeG,yBAAf,IAA4CD,KAA5C;AACH;AACD,eAAO9C,KAAP;AACH,KApBD;AAqBAkB,wBAAoBoB,SAApB,CAA8BY,GAA9B,GAAoC,UAAUvC,GAAV,EAAe;AAC/C,YAAI,OAAOA,GAAP,KAAe,QAAnB,EAA6B;AACzBwC,oBAAQC,KAAR,CAAc,sBAAd;AACA,mBAAO,IAAP;AACH;AACD,YAAIC,SAAS,KAAKT,SAAL,CAAeU,IAAf,CAAoB,UAAUL,IAAV,EAAgB;AAAE,mBAAOA,KAAKtC,GAAL,KAAaA,GAApB;AAA0B,SAAhE,CAAb;AACA,eAAO0C,SAASA,OAAOrD,KAAhB,GAAwB,IAA/B;AACH,KAPD;AAQAkB,wBAAoBoB,SAApB,CAA8BiB,mBAA9B,GAAoD,UAAUC,SAAV,EAAqB;AACrE,YAAIC,mBAAmB,KAAKb,SAAL,CAAec,MAAf,CAAsB,UAAUT,IAAV,EAAgB;AAAE,mBAAOA,KAAKtC,GAAL,CAASgD,OAAT,CAAiBH,YAAY,GAA7B,MAAsC,CAA7C;AAAiD,SAAzF,CAAvB;AACA,eAAOd,0BAA0B,SAA1B,EAAqCe,gBAArC,CAAP;AACH,KAHD;AAIAvC,wBAAoBoB,SAApB,CAA8BsB,mBAA9B,GAAoD,UAAUJ,SAAV,EAAqB;AACrE,YAAIH,SAAS,EAAb;AACA,aAAKE,mBAAL,CAAyBC,SAAzB,EAAoC9C,OAApC,CAA4C,UAAUuC,IAAV,EAAgB;AACxDI,mBAAOJ,KAAKtC,GAAZ,IAAmBsC,KAAKjD,KAAxB;AACH,SAFD;AAGA,eAAOqD,MAAP;AACH,KAND;AAOAnC,wBAAoBoB,SAApB,CAA8BuB,WAA9B,GAA4C,UAAUL,SAAV,EAAqB;AAC7D,eAAO,KAAKD,mBAAL,CAAyBC,SAAzB,EAAoCM,GAApC,CAAwC,UAAUb,IAAV,EAAgB;AAAE,mBAAOA,KAAKjD,KAAZ;AAAoB,SAA9E,CAAP;AACH,KAFD;AAGAkB,wBAAoBoB,SAApB,CAA8ByB,GAA9B,GAAoC,UAAUpD,GAAV,EAAe;AAC/C,YAAI,OAAOA,GAAP,KAAe,QAAnB,EAA6B;AACzBwC,oBAAQC,KAAR,CAAc,sBAAd;AACA,mBAAO,KAAP;AACH;AACD,eAAOY,QAAQ,KAAKpB,SAAL,CAAeU,IAAf,CAAoB,UAAUL,IAAV,EAAgB;AAAE,mBAAOA,KAAKtC,GAAL,KAAaA,GAApB;AAA0B,SAAhE,CAAR,CAAP;AACH,KAND;AAOAO,wBAAoBoB,SAApB,CAA8B2B,cAA9B,GAA+C,YAAY;AACvD,eAAOvB,0BAA0B,SAA1B,EAAqC,KAAKE,SAA1C,CAAP;AACH,KAFD;AAGA1B,wBAAoBoB,SAApB,CAA8B4B,cAA9B,GAA+C,YAAY;AACvD,YAAIb,SAAS,EAAb;AACA,aAAKY,cAAL,GAAsBvD,OAAtB,CAA8B,UAAUuC,IAAV,EAAgB;AAC1CI,mBAAOJ,KAAKtC,GAAZ,IAAmBsC,KAAKjD,KAAxB;AACH,SAFD;AAGA,eAAOqD,MAAP;AACH,KAND;AAOAnC,wBAAoBoB,SAApB,CAA8B6B,YAA9B,GAA6C,YAAY;AACrD,eAAO,KAAKF,cAAL,GAAsBH,GAAtB,CAA0B,UAAUb,IAAV,EAAgB;AAAE,mBAAOzC,OAAO4D,MAAP,CAAc,EAAEC,IAAIpB,KAAKtC,GAAX,EAAd,EAAgCsC,KAAKjD,KAArC,CAAP;AAAqD,SAAjG,CAAP;AACH,KAFD;AAGA,WAAOkB,mBAAP;AACH,CAvE0B,CAuEzBuB,mBAAmB,SAAnB,CAvEyB,CAA3B;AAwEAhD,QAAQ,SAAR,IAAqByB,mBAArB;AACA,+C;;;;;;;;;;;;AC9Ea;;AACbzB,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIC,UAAUC,mBAAOA,CAAC,gDAAR,CAAd;AACA,IAAIuC,wBAAwBxC,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,sHAAR,CAAxB,CAA5B;AACAH,QAAQyB,mBAAR,GAA8BiB,sBAAsB,SAAtB,CAA9B;AACA,IAAImC,4BAA4B3E,QAAQG,eAAR,CAAwBF,mBAAOA,CAAC,8HAAR,CAAxB,CAAhC;AACAH,QAAQ0B,uBAAR,GAAkCmD,0BAA0B,SAA1B,CAAlC;AACA,iC;;;;;;;;;;;;;;ACPA;;;;;;AAEAC,OAAO9E,OAAP,GAAiB,mCAAoB,qBAApB,IAA6C+E,WAA9D,C;;;;;;;;;;;;;;ACFA;;;;;;AAEAD,OAAO9E,OAAP,GAAiB,mCAAoB,qBAApB,IAA6CgF,gBAA9D,C;;;;;;;;;;;;;;ACFA;;;;;;AAEAF,OAAO9E,OAAP,GAAiB,mCAAoB,qBAApB,IAA6CiF,iBAA9D,C;;;;;;;;;;;;;;ACFA;;;;;;AAEAH,OAAO9E,OAAP,GAAiB,mCAAoB,QAApB,IAAgCkF,SAAjD,C;;;;;;;;;;;;;;ACFA;;;;;;AAEAJ,OAAO9E,OAAP,GAAiB,mCAAoB,QAApB,IAAgCmF,IAAjD,C;;;;;;;;;;;;;;ACFA;;;;;;AAEAL,OAAO9E,OAAP,GAAiB,mCAAoB,QAApB,IAAgCoF,SAAjD,C;;;;;;;;;;;;;;ACFA;;;;;;AAEAN,OAAO9E,OAAP,GAAiB,mCAAoB,QAApB,IAAgCqF,UAAjD,C;;;;;;;;;;;;;;ACFA;;;;;;AAEAP,OAAO9E,OAAP,GAAiB,mCAAoB,QAApB,IAAgCsF,KAAjD,C;;;;;;;;;;;;ACFa;;AACbtF,QAAQC,UAAR,GAAqB,IAArB;AACA,IAAIC,UAAUC,mBAAOA,CAAC,gDAAR,CAAd;AACA,IAAIoF,wBAAwB,SAAxBA,qBAAwB,CAAUC,OAAV,EAAmBpC,QAAnB,EAA6BqC,KAA7B,EAAoC;AAC5D,QAAIC,GAAJ,EAAS5D,EAAT,EAAa6D,GAAb,EAAkBC,EAAlB,EAAsBC,GAAtB,EAA2BC,EAA3B,EAA+BC,GAA/B,EAAoCC,EAApC,EAAwCC,GAAxC,EAA6CC,EAA7C,EAAiDC,GAAjD,EAAsDC,EAAtD,EAA0DC,GAA1D,EAA+DC,EAA/D;AACA,QAAIlD,aAAa,KAAK,CAAtB,EAAyB;AAAEA,mBAAW,UAAX;AAAwB;AACnD,QAAIqC,UAAU,KAAK,CAAnB,EAAsB;AAAEA,gBAAQ,KAAR;AAAgB;AACxC,QAAIc,mBAAmB,OAAOnD,QAAP,KAAoB,QAApB,GAA+B,UAAU7C,KAAV,EAAiB;AAAE,eAAOA,MAAM6C,QAAN,CAAP;AAAyB,KAA3E,GAA8EA,QAArG;AACA,QAAIoD,eAAe,EAAnB;AACA,QAAIC,aAAa,EAAjB;AACA,QAAIC,YAAY,EAAhB;AACA,QAAIC,UAAU,EAAd;AACA,QAAIC,aAAa,EAAjB;AACA,QAAIC,YAAY,EAAhB;AACArB,YAAQvE,OAAR,CAAgB,UAAUuC,IAAV,EAAgBsD,KAAhB,EAAuB;AACnC,YAAI5F,MAAMsC,KAAKiC,KAAL,IAAcjC,KAAKiC,KAAL,CAAd,GAA4BsB,OAAOD,KAAP,CAAtC;AACAN,qBAAatF,GAAb,IAAoB4F,KAApB;AACA,YAAIE,gBAAgBT,iBAAiB/C,IAAjB,CAApB;AACA,YAAIJ,WAAW2D,OAAOC,gBAAgBA,aAAhB,GAAgCF,KAAvC,CAAf;AACA,YAAIG,UAAU,KAAd;AACA,YAAI7D,SAAS8D,UAAT,CAAoB,OAApB,CAAJ,EAAkC;AAC9B,gBAAIC,cAAc/D,SAASgE,KAAT,CAAe,eAAf,CAAlB;AACA,gBAAIC,SAASF,eAAeA,YAAY,CAAZ,CAAf,GAAgCG,OAAOH,YAAY,CAAZ,CAAP,CAAhC,GAAyD,CAAtE;AACA,gBAAI,CAACT,UAAUW,MAAV,CAAL,EAAwB;AACpBX,0BAAUW,MAAV,IAAoB,EAApB;AACH;AACDX,sBAAUW,MAAV,EAAkBtF,IAAlB,CAAuBb,GAAvB;AACH,SAPD,MAQK,IAAIkC,SAAS8D,UAAT,CAAoB,KAApB,CAAJ,EAAgC;AACjC,gBAAIC,cAAc/D,SAASgE,KAAT,CAAe,aAAf,CAAlB;AACA,gBAAIC,SAASF,eAAeA,YAAY,CAAZ,CAAf,GAAgCG,OAAOH,YAAY,CAAZ,CAAP,CAAhC,GAAyD,CAAtE;AACA,gBAAI,CAACR,QAAQU,MAAR,CAAL,EAAsB;AAClBV,wBAAQU,MAAR,IAAkB,EAAlB;AACH;AACDV,oBAAQU,MAAR,EAAgBtF,IAAhB,CAAqBb,GAArB;AACH,SAPI,MAQA,IAAIkC,SAAS8D,UAAT,CAAoB,QAApB,CAAJ,EAAmC;AACpC,gBAAIE,QAAQhE,SAASgE,KAAT,CAAe,2BAAf,CAAZ;AACA,gBAAI,CAACA,KAAL,EAAY;AACRH,0BAAU,IAAV;AACH,aAFD,MAGK;AACD,oBAAIM,YAAYH,MAAM,CAAN,CAAhB;AACA,oBAAIC,SAASD,MAAM,CAAN,IAAWE,OAAOF,MAAM,CAAN,CAAP,CAAX,GAA8B,CAA3C;AACA,oBAAI,CAACR,WAAWW,SAAX,CAAL,EAA4B;AACxBX,+BAAWW,SAAX,IAAwB,EAAxB;AACH;AACD,oBAAI,CAACX,WAAWW,SAAX,EAAsBF,MAAtB,CAAL,EAAoC;AAChCT,+BAAWW,SAAX,EAAsBF,MAAtB,IAAgC,EAAhC;AACH;AACDT,2BAAWW,SAAX,EAAsBF,MAAtB,EAA8BtF,IAA9B,CAAmCb,GAAnC;AACH;AACJ,SAhBI,MAiBA,IAAIkC,SAAS8D,UAAT,CAAoB,OAApB,CAAJ,EAAkC;AACnC,gBAAIE,QAAQhE,SAASgE,KAAT,CAAe,0BAAf,CAAZ;AACA,gBAAI,CAACA,KAAL,EAAY;AACRH,0BAAU,IAAV;AACH,aAFD,MAGK;AACD,oBAAIM,YAAYH,MAAM,CAAN,CAAhB;AACA,oBAAIC,SAASD,MAAM,CAAN,IAAWE,OAAOF,MAAM,CAAN,CAAP,CAAX,GAA8B,CAA3C;AACA,oBAAI,CAACP,UAAUU,SAAV,CAAL,EAA2B;AACvBV,8BAAUU,SAAV,IAAuB,EAAvB;AACH;AACD,oBAAI,CAACV,UAAUU,SAAV,EAAqBF,MAArB,CAAL,EAAmC;AAC/BR,8BAAUU,SAAV,EAAqBF,MAArB,IAA+B,EAA/B;AACH;AACDR,0BAAUU,SAAV,EAAqBF,MAArB,EAA6BtF,IAA7B,CAAkCb,GAAlC;AACH;AACJ,SAhBI,MAiBA;AACD+F,sBAAU,IAAV;AACH;AACD,YAAIA,OAAJ,EAAa;AACT,gBAAIO,iBAAiBC,WAAWrE,QAAX,CAArB;AACA,gBAAIsE,MAAMF,cAAN,KAAyB,CAACG,SAASH,cAAT,CAA9B,EAAwD;AACpDA,iCAAiBV,KAAjB;AACH;AACD,gBAAI,CAACL,WAAWe,cAAX,CAAL,EAAiC;AAC7Bf,2BAAWe,cAAX,IAA6B,EAA7B;AACH;AACDf,uBAAWe,cAAX,EAA2BzF,IAA3B,CAAgCb,GAAhC;AACH;AACJ,KArED;AAsEA,QAAI0G,cAAc,EAAlB;AACA,QAAIC,eAAe,EAAnB;AACA,QAAIC,YAAY,EAAhB;AACA,QAAIC,gBAAgB,EAApB;AACA,QAAIC,gBAAgB,SAAhBA,aAAgB,CAAUC,IAAV,EAAgBC,GAAhB,EAAqB;AACrC,YAAIC,UAAUpH,OAAOC,IAAP,CAAYiH,IAAZ,EAAkB5D,GAAlB,CAAsB,UAAU+D,CAAV,EAAa;AAAE,mBAAOd,OAAOc,CAAP,CAAP;AAAmB,SAAxD,EAA0DC,IAA1D,CAA+D,UAAUC,CAAV,EAAaC,CAAb,EAAgB;AAAE,mBAAOD,IAAIC,CAAX;AAAe,SAAhG,CAAd;AACA,eAAOL,MAAMC,OAAN,GAAgBA,QAAQK,OAAR,EAAvB;AACH,KAHD;AAIA,QAAIC,eAAe,SAAfA,YAAe,CAAUzH,IAAV,EAAgB4C,MAAhB,EAAwB;AACvC5C,aAAKC,OAAL,CAAa,UAAUC,GAAV,EAAe;AACxB,gBAAIwH,GAAJ,EAAS5G,EAAT,EAAa6G,GAAb,EAAkB/C,EAAlB;AACA,gBAAImC,cAAc7D,OAAd,CAAsBhD,GAAtB,KAA8B,CAAlC,EAAqC;AACjC;AACH;AACD6G,0BAAchG,IAAd,CAAmBb,GAAnB;AACA,gBAAI0F,WAAW1F,GAAX,CAAJ,EAAqB;AACjB,oBAAI0H,gBAAgBZ,cAAcpB,WAAW1F,GAAX,CAAd,EAA+B,IAA/B,CAApB;AACA,oBAAI;AACA,yBAAK,IAAI2H,kBAAkB3I,QAAQ4I,QAAR,CAAiBF,aAAjB,CAAtB,EAAuDG,oBAAoBF,gBAAgBG,IAAhB,EAAhF,EAAwG,CAACD,kBAAkBE,IAA3H,EAAiIF,oBAAoBF,gBAAgBG,IAAhB,EAArJ,EAA6K;AACzK,4BAAIE,IAAIH,kBAAkBxI,KAA1B;AACAkI,qCAAa7B,WAAW1F,GAAX,EAAgBgI,CAAhB,CAAb,EAAiCtF,MAAjC;AACH;AACJ,iBALD,CAMA,OAAOuF,KAAP,EAAc;AAAET,0BAAM,EAAE/E,OAAOwF,KAAT,EAAN;AAAyB,iBANzC,SAOQ;AACJ,wBAAI;AACA,4BAAIJ,qBAAqB,CAACA,kBAAkBE,IAAxC,KAAiDnH,KAAK+G,gBAAgB,QAAhB,CAAtD,CAAJ,EAAsF/G,GAAGiB,IAAH,CAAQ8F,eAAR;AACzF,qBAFD,SAGQ;AAAE,4BAAIH,GAAJ,EAAS,MAAMA,IAAI/E,KAAV;AAAkB;AACxC;AACJ;AACDC,mBAAO7B,IAAP,CAAYb,GAAZ;AACA,gBAAI2F,UAAU3F,GAAV,CAAJ,EAAoB;AAChB,oBAAIkI,eAAepB,cAAcnB,UAAU3F,GAAV,CAAd,EAA8B,KAA9B,CAAnB;AACA,oBAAI;AACA,yBAAK,IAAImI,iBAAiBnJ,QAAQ4I,QAAR,CAAiBM,YAAjB,CAArB,EAAqDE,mBAAmBD,eAAeL,IAAf,EAA7E,EAAoG,CAACM,iBAAiBL,IAAtH,EAA4HK,mBAAmBD,eAAeL,IAAf,EAA/I,EAAsK;AAClK,4BAAIE,IAAII,iBAAiB/I,KAAzB;AACAkI,qCAAa5B,UAAU3F,GAAV,EAAegI,CAAf,CAAb,EAAgCtF,MAAhC;AACH;AACJ,iBALD,CAMA,OAAO2F,KAAP,EAAc;AAAEZ,0BAAM,EAAEhF,OAAO4F,KAAT,EAAN;AAAyB,iBANzC,SAOQ;AACJ,wBAAI;AACA,4BAAID,oBAAoB,CAACA,iBAAiBL,IAAtC,KAA+CrD,KAAKyD,eAAe,QAAf,CAApD,CAAJ,EAAmFzD,GAAG7C,IAAH,CAAQsG,cAAR;AACtF,qBAFD,SAGQ;AAAE,4BAAIV,GAAJ,EAAS,MAAMA,IAAIhF,KAAV;AAAkB;AACxC;AACJ;AACJ,SAvCD;AAwCH,KAzCD;AA0CA,QAAI;AACA,aAAK,IAAI6F,KAAKtJ,QAAQ4I,QAAR,CAAiBd,cAActB,SAAd,EAAyB,KAAzB,CAAjB,CAAT,EAA4D+C,KAAKD,GAAGR,IAAH,EAAtE,EAAiF,CAACS,GAAGR,IAArF,EAA2FQ,KAAKD,GAAGR,IAAH,EAAhG,EAA2G;AACvG,gBAAIE,IAAIO,GAAGlJ,KAAX;AACAkI,yBAAa/B,UAAUwC,CAAV,CAAb,EAA2BtB,WAA3B;AACH;AACJ,KALD,CAMA,OAAO8B,KAAP,EAAc;AAAEhE,cAAM,EAAE/B,OAAO+F,KAAT,EAAN;AAAyB,KANzC,SAOQ;AACJ,YAAI;AACA,gBAAID,MAAM,CAACA,GAAGR,IAAV,KAAmBnH,KAAK0H,GAAG,QAAH,CAAxB,CAAJ,EAA2C1H,GAAGiB,IAAH,CAAQyG,EAAR;AAC9C,SAFD,SAGQ;AAAE,gBAAI9D,GAAJ,EAAS,MAAMA,IAAI/B,KAAV;AAAkB;AACxC;AACD,QAAI;AACA,aAAK,IAAIgG,KAAKzJ,QAAQ4I,QAAR,CAAiBd,cAAcvB,UAAd,EAA0B,IAA1B,CAAjB,CAAT,EAA4DmD,KAAKD,GAAGX,IAAH,EAAtE,EAAiF,CAACY,GAAGX,IAArF,EAA2FW,KAAKD,GAAGX,IAAH,EAAhG,EAA2G;AACvG,gBAAIE,IAAIU,GAAGrJ,KAAX;AACAkI,yBAAahC,WAAWyC,CAAX,CAAb,EAA4BrB,YAA5B;AACH;AACJ,KALD,CAMA,OAAOgC,KAAP,EAAc;AAAElE,cAAM,EAAEhC,OAAOkG,KAAT,EAAN;AAAyB,KANzC,SAOQ;AACJ,YAAI;AACA,gBAAID,MAAM,CAACA,GAAGX,IAAV,KAAmBrD,KAAK+D,GAAG,QAAH,CAAxB,CAAJ,EAA2C/D,GAAG7C,IAAH,CAAQ4G,EAAR;AAC9C,SAFD,SAGQ;AAAE,gBAAIhE,GAAJ,EAAS,MAAMA,IAAIhC,KAAV;AAAkB;AACxC;AACD,QAAI;AACA,aAAK,IAAImG,KAAK5J,QAAQ4I,QAAR,CAAiBd,cAAcrB,OAAd,EAAuB,IAAvB,CAAjB,CAAT,EAAyDoD,KAAKD,GAAGd,IAAH,EAAnE,EAA8E,CAACe,GAAGd,IAAlF,EAAwFc,KAAKD,GAAGd,IAAH,EAA7F,EAAwG;AACpG,gBAAIE,IAAIa,GAAGxJ,KAAX;AACAkI,yBAAa9B,QAAQuC,CAAR,CAAb,EAAyBpB,SAAzB;AACH;AACJ,KALD,CAMA,OAAOkC,KAAP,EAAc;AAAEnE,cAAM,EAAElC,OAAOqG,KAAT,EAAN;AAAyB,KANzC,SAOQ;AACJ,YAAI;AACA,gBAAID,MAAM,CAACA,GAAGd,IAAV,KAAmBnD,KAAKgE,GAAG,QAAH,CAAxB,CAAJ,EAA2ChE,GAAG/C,IAAH,CAAQ+G,EAAR;AAC9C,SAFD,SAGQ;AAAE,gBAAIjE,GAAJ,EAAS,MAAMA,IAAIlC,KAAV;AAAkB;AACxC;AACD,QAAI;AACA,aAAK,IAAIsG,KAAK/J,QAAQ4I,QAAR,CAAiB/H,OAAOC,IAAP,CAAY4F,UAAZ,CAAjB,CAAT,EAAoDsD,KAAKD,GAAGjB,IAAH,EAA9D,EAAyE,CAACkB,GAAGjB,IAA7E,EAAmFiB,KAAKD,GAAGjB,IAAH,EAAxF,EAAmG;AAC/F,gBAAI9H,MAAMgJ,GAAG3J,KAAb;AACA,gBAAIwH,cAAc7D,OAAd,CAAsBhD,GAAtB,KAA8B,CAAlC,EAAqC;AACjC;AACH;AACD,gBAAI;AACA,qBAAK,IAAIiJ,MAAMlE,MAAM,KAAK,CAAX,EAAc/F,QAAQ4I,QAAR,CAAiBd,cAAcpB,WAAW1F,GAAX,CAAd,EAA+B,KAA/B,CAAjB,CAApB,CAAJ,EAAkFkJ,KAAKD,GAAGnB,IAAH,EAA5F,EAAuG,CAACoB,GAAGnB,IAA3G,EAAiHmB,KAAKD,GAAGnB,IAAH,EAAtH,EAAiI;AAC7H,wBAAIE,IAAIkB,GAAG7J,KAAX;AACAkI,iCAAa7B,WAAW1F,GAAX,EAAgBgI,CAAhB,CAAb,EAAiCtB,WAAjC;AACH;AACJ,aALD,CAMA,OAAOyC,KAAP,EAAc;AAAEpE,sBAAM,EAAEtC,OAAO0G,KAAT,EAAN;AAAyB,aANzC,SAOQ;AACJ,oBAAI;AACA,wBAAID,MAAM,CAACA,GAAGnB,IAAV,KAAmB/C,KAAKiE,GAAG,QAAH,CAAxB,CAAJ,EAA2CjE,GAAGnD,IAAH,CAAQoH,EAAR;AAC9C,iBAFD,SAGQ;AAAE,wBAAIlE,GAAJ,EAAS,MAAMA,IAAItC,KAAV;AAAkB;AACxC;AACJ;AACJ,KApBD,CAqBA,OAAO2G,KAAP,EAAc;AAAEvE,cAAM,EAAEpC,OAAO2G,KAAT,EAAN;AAAyB,KArBzC,SAsBQ;AACJ,YAAI;AACA,gBAAIJ,MAAM,CAACA,GAAGjB,IAAV,KAAmBjD,KAAKiE,GAAG,QAAH,CAAxB,CAAJ,EAA2CjE,GAAGjD,IAAH,CAAQkH,EAAR;AAC9C,SAFD,SAGQ;AAAE,gBAAIlE,GAAJ,EAAS,MAAMA,IAAIpC,KAAV;AAAkB;AACxC;AACD,QAAI;AACA,aAAK,IAAI4G,KAAKrK,QAAQ4I,QAAR,CAAiB/H,OAAOC,IAAP,CAAY6F,SAAZ,CAAjB,CAAT,EAAmD2D,KAAKD,GAAGvB,IAAH,EAA7D,EAAwE,CAACwB,GAAGvB,IAA5E,EAAkFuB,KAAKD,GAAGvB,IAAH,EAAvF,EAAkG;AAC9F,gBAAI9H,MAAMsJ,GAAGjK,KAAb;AACA,gBAAIwH,cAAc7D,OAAd,CAAsBhD,GAAtB,KAA8B,CAAlC,EAAqC;AACjC;AACH;AACD,gBAAI;AACA,qBAAK,IAAIuJ,MAAMpE,MAAM,KAAK,CAAX,EAAcnG,QAAQ4I,QAAR,CAAiBd,cAAcnB,UAAU3F,GAAV,CAAd,EAA8B,KAA9B,CAAjB,CAApB,CAAJ,EAAiFwJ,KAAKD,GAAGzB,IAAH,EAA3F,EAAsG,CAAC0B,GAAGzB,IAA1G,EAAgHyB,KAAKD,GAAGzB,IAAH,EAArH,EAAgI;AAC5H,wBAAIE,IAAIwB,GAAGnK,KAAX;AACAkI,iCAAa5B,UAAU3F,GAAV,EAAegI,CAAf,CAAb,EAAgCrB,YAAhC;AACH;AACJ,aALD,CAMA,OAAO8C,KAAP,EAAc;AAAEtE,sBAAM,EAAE1C,OAAOgH,KAAT,EAAN;AAAyB,aANzC,SAOQ;AACJ,oBAAI;AACA,wBAAID,MAAM,CAACA,GAAGzB,IAAV,KAAmB3C,KAAKmE,GAAG,QAAH,CAAxB,CAAJ,EAA2CnE,GAAGvD,IAAH,CAAQ0H,EAAR;AAC9C,iBAFD,SAGQ;AAAE,wBAAIpE,GAAJ,EAAS,MAAMA,IAAI1C,KAAV;AAAkB;AACxC;AACJ;AACJ,KApBD,CAqBA,OAAOiH,KAAP,EAAc;AAAEzE,cAAM,EAAExC,OAAOiH,KAAT,EAAN;AAAyB,KArBzC,SAsBQ;AACJ,YAAI;AACA,gBAAIJ,MAAM,CAACA,GAAGvB,IAAV,KAAmB7C,KAAKmE,GAAG,QAAH,CAAxB,CAAJ,EAA2CnE,GAAGrD,IAAH,CAAQwH,EAAR;AAC9C,SAFD,SAGQ;AAAE,gBAAIpE,GAAJ,EAAS,MAAMA,IAAIxC,KAAV;AAAkB;AACxC;AACD,QAAIkH,aAAa3K,QAAQmC,QAAR,CAAiBuF,WAAjB,EAA8BC,YAA9B,EAA4CC,SAA5C,CAAjB;AACA,WAAO+C,WAAWxG,GAAX,CAAe,UAAUnD,GAAV,EAAe;AAAE,eAAOsF,aAAatF,GAAb,CAAP;AAA2B,KAA3D,EAA6DmD,GAA7D,CAAiE,UAAU6E,CAAV,EAAa;AAAE,eAAO1D,QAAQ0D,CAAR,CAAP;AAAoB,KAApG,CAAP;AACH,CApOD;AAqOAlJ,QAAQ,SAAR,IAAqBuF,qBAArB;AACA,iD;;;;;;;;;;;;ACzOA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;;AAEA;AACA;;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA,UAAU,gBAAgB,sCAAsC,iBAAiB,EAAE;AACnF,yBAAyB,uDAAuD;AAChF;AACA;;AAEO;AACP;AACA,mBAAmB,sBAAsB;AACzC;AACA;;AAEO;AACP;AACA,gDAAgD,OAAO;AACvD;AACA;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA,4DAA4D,cAAc;AAC1E;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA,4CAA4C,QAAQ;AACpD;AACA;;AAEO;AACP,mCAAmC,oCAAoC;AACvE;;AAEO;AACP;AACA;;AAEO;AACP,2BAA2B,+DAA+D,gBAAgB,EAAE,EAAE;AAC9G;AACA,mCAAmC,MAAM,6BAA6B,EAAE,YAAY,WAAW,EAAE;AACjG,kCAAkC,MAAM,iCAAiC,EAAE,YAAY,WAAW,EAAE;AACpG,+BAA+B,qFAAqF;AACpH;AACA,KAAK;AACL;;AAEO;AACP,aAAa,6BAA6B,0BAA0B,aAAa,EAAE,qBAAqB;AACxG,gBAAgB,qDAAqD,oEAAoE,aAAa,EAAE;AACxJ,sBAAsB,sBAAsB,qBAAqB,GAAG;AACpE;AACA;AACA;AACA;AACA;AACA;AACA,uCAAuC;AACvC,kCAAkC,SAAS;AAC3C,kCAAkC,WAAW,UAAU;AACvD,yCAAyC,cAAc;AACvD;AACA,6GAA6G,OAAO,UAAU;AAC9H,gFAAgF,iBAAiB,OAAO;AACxG,wDAAwD,gBAAgB,QAAQ,OAAO;AACvF,8CAA8C,gBAAgB,gBAAgB,OAAO;AACrF;AACA,iCAAiC;AACjC;AACA;AACA,SAAS,YAAY,aAAa,OAAO,EAAE,UAAU,WAAW;AAChE,mCAAmC,SAAS;AAC5C;AACA;;AAEO;AACP;AACA;AACA;;AAEO;AACP;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA,oBAAoB;AACpB;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;AACA,mBAAmB,MAAM,gBAAgB;AACzC;AACA;AACA;AACA;AACA,iBAAiB,sBAAsB;AACvC;AACA;AACA;;AAEO;AACP,4BAA4B,sBAAsB;AAClD;AACA;AACA;;AAEO;AACP,iDAAiD,QAAQ;AACzD,wCAAwC,QAAQ;AAChD,wDAAwD,QAAQ;AAChE;AACA;AACA;;AAEO;AACP;AACA;;AAEO;AACP;AACA;AACA,iBAAiB,sFAAsF,aAAa,EAAE;AACtH,sBAAsB,gCAAgC,qCAAqC,0CAA0C,EAAE,EAAE,GAAG;AAC5I,2BAA2B,MAAM,eAAe,EAAE,YAAY,oBAAoB,EAAE;AACpF,sBAAsB,oGAAoG;AAC1H,6BAA6B,uBAAuB;AACpD,4BAA4B,wBAAwB;AACpD,2BAA2B,yDAAyD;AACpF;;AAEO;AACP;AACA,iBAAiB,4CAA4C,SAAS,EAAE,qDAAqD,aAAa,EAAE;AAC5I,yBAAyB,6BAA6B,oBAAoB,gDAAgD,gBAAgB,EAAE,KAAK;AACjJ;;AAEO;AACP;AACA;AACA,2GAA2G,sFAAsF,aAAa,EAAE;AAChN,sBAAsB,8BAA8B,gDAAgD,uDAAuD,EAAE,EAAE,GAAG;AAClK,4CAA4C,sCAAsC,UAAU,oBAAoB,EAAE,EAAE,UAAU;AAC9H;;AAEO;AACP,gCAAgC,uCAAuC,aAAa,EAAE,EAAE,OAAO,kBAAkB;AACjH;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;;AAEO;AACP,4CAA4C;AAC5C;;AAEO;AACP;AACA;AACA;AACA;AACA;;AAEO;AACP;AACA;AACA;AACA;AACA;AACA;;;;;;;;;;;;;;;;;;;;;;ACxNA;;;;;;+eADA;;;AAGA;;;;IAIqBuF,iB;;;AACjB;;;;AAIA,+BAAYC,MAAZ,EAAoBC,YAApB,EAAkC;AAAA;;AAG9B;;;;;;AAH8B,0IACxBD,MADwB;;AAS9B,cAAKC,YAAL,GAAoBA,YAApB;;AAEA;;;;;;;;AAX8B;AAmBjC;;AAED;;;;;;;kCAGU;AACN,gBAAMC,QAAQ,KAAKF,MAAL,CAAYE,KAA1B;AACA,gBAAMC,MAAMD,MAAME,QAAlB;AACA,gBAAMC,iBAAiBC,MAAMC,IAAN,CAAWJ,IAAIK,SAAJ,CAAcC,iBAAd,EAAX,CAAvB;;AAEA,iBAAKjL,KAAL,GAAa,KAAKkL,sBAAL,EAAb;AALM;AAAA;AAAA;;AAAA;AAMN,qCAAoBL,cAApB,8HAAoC;AAAA,wBAAzBM,KAAyB;;AAChC,wBAAIT,MAAMU,MAAN,CAAaC,cAAb,CAA4BF,KAA5B,EAAmC,KAAKV,YAAxC,CAAJ,EAA2D;AACvD,6BAAKa,SAAL,GAAiB,IAAjB;AACH;AACJ;AAVK;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAWT;;AAED;;;;;;;;;;;kCAQsB;AAAA;;AAAA,gBAAdjK,OAAc,uEAAJ,EAAI;;AAClB,gBAAMqJ,QAAQ,KAAKF,MAAL,CAAYE,KAA1B;AACA,gBAAMC,MAAMD,MAAME,QAAlB;AACA,gBAAMI,YAAYL,IAAIK,SAAtB;AACA,gBAAMhL,QAAQqB,QAAQrB,KAAtB;AACA,gBAAM6K,iBAAiBC,MAAMC,IAAN,CAAWC,UAAUC,iBAAV,EAAX,CAAvB;AACAP,kBAAMa,MAAN,CAAa,kBAAU;AAAA;AAAA;AAAA;;AAAA;AACnB,0CAAoBV,cAApB,mIAAoC;AAAA,4BAAzBM,KAAyB;;AAChC,4BAAInL,KAAJ,EAAW;AACPwL,mCAAOC,YAAP,CAAoB,OAAKhB,YAAzB,EAAuCzK,KAAvC,EAA8CmL,KAA9C;AACH,yBAFD,MAEO;AACHK,mCAAOE,eAAP,CAAuB,OAAKjB,YAA5B,EAA0CU,KAA1C;AACH;AACJ;AAPkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAQtB,aARD;AASH;;AAED;;;;;;;;;iDAMyB;AACrB,gBAAMT,QAAQ,KAAKF,MAAL,CAAYE,KAA1B;AACA,gBAAMU,SAASV,MAAMU,MAArB;AACA,gBAAMJ,YAAYN,MAAME,QAAN,CAAeI,SAAjC;AACA,gBAAMW,SAASb,MAAMC,IAAN,CAAWC,UAAUC,iBAAV,EAAX,CAAf;;AAJqB;AAAA;AAAA;;AAAA;AAMrB,sCAAoBU,MAApB,mIAA4B;AAAA,wBAAjBR,KAAiB;;AACxB,wBAAIC,OAAOC,cAAP,CAAsBF,KAAtB,EAA6B,KAAKV,YAAlC,CAAJ,EAAqD;AACjD,+BAAOU,MAAMS,YAAN,CAAmB,KAAKnB,YAAxB,CAAP;AACH;AACJ;AAVoB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAYrB,mBAAOoB,SAAP;AACH;;;;EAtF0CC,yB;;kBAA1BvB,iB;;;;;;;;;;;;;;;;;;;;ACPrB;;AACA;;;;;;;;;;;;AAEA;;;;kBAIe,UAACwB,gBAAD,EAAmBC,mBAAnB;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA,mCAEA;AACH,oBAAMZ,SAAS,KAAKZ,MAAL,CAAYE,KAAZ,CAAkBU,MAAjC;AACA,oBAAMa,qCAAmCF,gBAAzC;AACA,oBAAMG,oBAAoB1L,OAAOC,IAAP,CAAYuL,oBAAoB3K,OAAhC,CAA1B;;AAEA+J,uBAAOe,MAAP,CACI,QADJ,EAEI,EAACC,iBAAiBH,iBAAlB,EAFJ;;AAKA;AACAb,uBAAOiB,sBAAP,CACIJ,iBADJ,EAEI,EAACK,cAAc,IAAf,EAFJ;;AAKA;AACA,oBAAMC,SAAS;AACX7B,2BAAO;AACH/J,6BAAKsL,iBADF;AAEHO,gCAAQN;AAFL,qBADI;AAKXO,0BAAM;AALK,iBAAf;;AAQA;AACAP,kCAAkBxL,OAAlB,CAA0B,4BAAoB;AAC1C,wBAAMW,UAAU2K,oBAAoB3K,OAApB,CAA4BqL,gBAA5B,CAAhB;AACA,wBAAMC,YAAYtL,QAAQsL,SAAR,IAAqB,OAAvC;AACA,wBAAMC,kBAAmBD,cAActL,QAAQsL,SAAvB,GAAoCtL,QAAQwL,cAA5C,GAA8DxL,QAAQyL,QAAT,CAAmBC,KAAnB,CAAyB,GAAzB,CAArF;;AAEAR,2BAAOE,IAAP,CAAYC,gBAAZ,IAAgC;AAC5B/L,6BAAKgM,SADuB;AAE5B3M,+BAAO4M;AAFqB,qBAAhC;AAIH,iBATD;;AAWA;AACA,qBAAKpC,MAAL,CAAYwC,UAAZ,CAAuBC,oBAAvB,CAA4CV,MAA5C;;AAEA,qBAAK/B,MAAL,CAAY0C,QAAZ,CAAqBC,GAArB,kBAAwCpB,gBAAxC,EAA4D,IAAIxB,2BAAJ,CAAsB,KAAKC,MAA3B,EAAmCyB,iBAAnC,CAA5D;AACH;AA3CM;;AAAA;AAAA,MACqBmB,wBADrB;AAAA,C;;;;;;;;;;;;;;;;;;;;;ACNf;;;;;;+eADA;;;AAGA;;;;IAIqBC,mB;;;AACjB;;;;AAIA,iCAAY7C,MAAZ,EAAoBC,YAApB,EAAkC;AAAA;;AAG9B;;;;;;AAH8B,8IACxBD,MADwB;;AAS9B,cAAKC,YAAL,GAAoBA,YAApB;;AAEA;;;;;;;;AAX8B;AAmBjC;;AAED;;;;;;;kCAGU;AACN,gBAAMC,QAAQ,KAAKF,MAAL,CAAYE,KAA1B;AACA,gBAAMC,MAAMD,MAAME,QAAlB;;AAEA,iBAAK5K,KAAL,GAAa,KAAKsN,6BAAL,EAAb;AACA,iBAAKhC,SAAL,GAAiBZ,MAAMU,MAAN,CAAamC,yBAAb,CAAuC5C,IAAIK,SAA3C,EAAsD,KAAKP,YAA3D,CAAjB;AACH;;AAED;;;;;;;;;;;kCAQsB;AAAA;;AAAA,gBAAdpJ,OAAc,uEAAJ,EAAI;;AAClB,gBAAMqJ,QAAQ,KAAKF,MAAL,CAAYE,KAA1B;AACA,gBAAMC,MAAMD,MAAME,QAAlB;AACA,gBAAMI,YAAYL,IAAIK,SAAtB;AACA,gBAAMhL,QAAQqB,QAAQrB,KAAtB;;AAEA0K,kBAAMa,MAAN,CAAa,kBAAU;AACnB,oBAAIP,UAAUwC,WAAd,EAA2B;AACvB,wBAAIxN,KAAJ,EAAW;AACP;AACAwL,+BAAOiC,qBAAP,CAA6B,OAAKhD,YAAlC,EAAgDzK,KAAhD;AACH,qBAHD,MAGO;AACHwL,+BAAOkC,wBAAP,CAAgC,OAAKjD,YAArC;AACH;AACJ,iBAPD,MAOO;AACH,wBAAMkD,SAASjD,MAAMU,MAAN,CAAawC,cAAb,CAA4B5C,UAAU6C,SAAV,EAA5B,EAAmD,OAAKpD,YAAxD,CAAf;;AADG;AAAA;AAAA;;AAAA;AAGH,6CAAoBkD,MAApB,8HAA4B;AAAA,gCAAjBG,KAAiB;;AACxB,gCAAI9N,KAAJ,EAAW;AACPwL,uCAAOC,YAAP,CAAoB,OAAKhB,YAAzB,EAAuCzK,KAAvC,EAA8C8N,KAA9C;AACH,6BAFD,MAEO;AACHtC,uCAAOE,eAAP,CAAuB,OAAKjB,YAA5B,EAA0CqD,KAA1C;AACH;AACJ;AATE;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAUN;AACJ,aAnBD;AAoBH;;AAED;;;;;;;;;;wDAOgC;AAC5B,gBAAMpD,QAAQ,KAAKF,MAAL,CAAYE,KAA1B;AACA,gBAAMU,SAASV,MAAMU,MAArB;AACA,gBAAMJ,YAAYN,MAAME,QAAN,CAAeI,SAAjC;;AAEA,gBAAIA,UAAUwC,WAAd,EAA2B;AACvB,uBAAOxC,UAAUY,YAAV,CAAuB,KAAKnB,YAA5B,CAAP;AACH;;AAP2B;AAAA;AAAA;;AAAA;AAS5B,sCAAoBO,UAAU6C,SAAV,EAApB,mIAA2C;AAAA,wBAAhCC,KAAgC;AAAA;AAAA;AAAA;;AAAA;AACvC,8CAAmBA,MAAMC,QAAN,EAAnB,mIAAqC;AAAA,gCAA1B9K,IAA0B;;AACjC,gCAAImI,OAAOC,cAAP,CAAsBpI,IAAtB,EAA4B,KAAKwH,YAAjC,CAAJ,EAAoD;AAChD,uCAAOxH,KAAK2I,YAAL,CAAkB,KAAKnB,YAAvB,CAAP;AACH;AACJ;AALsC;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAM1C;AAf2B;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;AAiB5B,mBAAOoB,SAAP;AACH;;;;EAlG4CC,yB;;kBAA5BuB,mB;;;;;;;;;;;;;;;;;;;;ACPrB;;AACA;;;;;;;;;;;;;;AAEA;;;;kBAIe,UAACtB,gBAAD,EAAmBC,mBAAnB;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;;AAAA;AAAA;AAAA,mCAEA;AACH,oBAAMZ,SAAS,KAAKZ,MAAL,CAAYE,KAAZ,CAAkBU,MAAjC;AACA,oBAAMc,oBAAoB1L,OAAOC,IAAP,CAAYuL,oBAAoB3K,OAAhC,CAA1B;AACA,oBAAM4K,sCAAoCF,gBAA1C;;AAEAX,uBAAOe,MAAP,CACI,OADJ,EAEI,EAACC,iBAAiBH,iBAAlB,EAFJ;;AAKA;AACAb,uBAAOiB,sBAAP,CACIJ,iBADJ,EAEI,EAACK,cAAc,IAAf,EAFJ;;AAKA;AACA,oBAAMC,SAAS;AACX7B,2BAAO;AACH/J,6BAAKsL,iBADF;AAEHO,gCAAQN;AAFL,qBADI;AAKXO,0BAAM;AALK,iBAAf;;AAQA;AACAP,kCAAkBxL,OAAlB,CAA0B,4BAAoB;AAC1C,wBAAMW,UAAU2K,oBAAoB3K,OAApB,CAA4BqL,gBAA5B,CAAhB;AAD0C,wBAEnCC,SAFmC,GAEtBtL,OAFsB,CAEnCsL,SAFmC;;AAG1C,wBAAMqB,UAAU3M,QAAQwL,cAAR,IAA0BxL,QAAQyL,QAAlD;;AAEAP,2BAAOE,IAAP,CAAYC,gBAAZ,IAAgC;AAC5BuB,8BAAM,MADsB;AAE5BC,wDAAcvB,YAAYA,SAAZ,GAAwB,OAAtC,EAAgDqB,OAAhD;AAF4B,qBAAhC;AAIH,iBATD;;AAWA;AACA,qBAAKxD,MAAL,CAAYwC,UAAZ,CAAuBmB,kBAAvB,CAA0C5B,MAA1C;;AAEA,qBAAK/B,MAAL,CAAY0C,QAAZ,CAAqBC,GAArB,mBAAyCpB,gBAAzC,EAA6D,IAAIsB,6BAAJ,CAAwB,KAAK7C,MAA7B,EAAqCyB,iBAArC,CAA7D;AACH;AA3CM;;AAAA;AAAA,MACuBmB,wBADvB;AAAA,C;;;;;;;;;;;;;;;;;;ACPf;;;;;;AAEA,SAASgB,wBAAT,CAAkCC,KAAlC,EAAyCC,QAAzC,EAAmDC,aAAnD,EAAkE;AAC9D,QAAIF,MAAMC,QAAN,KAAmB,OAAOD,MAAMC,QAAN,CAAP,KAA2B,QAAlD,EAA4D;AACxD,eAAO,IAAIvM,KAAJ,aAAmBuM,QAAnB,0BAAP;AACH;AACD,QAAI,CAACD,MAAMxB,cAAP,IAAyB,CAACwB,MAAMvB,QAApC,EAA8C;AAC1C,eAAO,IAAI/K,KAAJ,yEAA4EwM,aAA5E,OAAP;AACH;AACJ;;kBAEc1J,oBAAU2J,KAAV,CAAgB;AAC3BC,WAAO5J,oBAAU6J,MAAV,CAAiBC,UADG;;AAG3B;AACAtN,aAASwD,oBAAU+J,QAAV,CAAmB/J,oBAAU2J,KAAV,CAAgB;AACxCC,eAAO5J,oBAAU6J,MAAV,CAAiBC,UADgB;AAExChC,mBAAW9H,oBAAU6J,MAFmB;AAGxC7B,wBAAgBuB,wBAHwB;AAIxCtB,kBAAUsB;AAJ8B,KAAhB,CAAnB;AAJkB,CAAhB,C;;;;;;;;;;;;;;;;;;;;;;;;;ACXf;;;;AACA;;;;AACA;;AACA;;AACA;;AACA;;;;AAEA;;AACA;;IAAY5J,W;;;;;;;;;;;;IAKSqK,kB,WAHpB,yBAAQ,wBAAW;AAChBC,2BAAuBC,4BAAUC,EAAV,CAAaC,aAAb,CAA2BH;AADlC,CAAX,CAAR,C;;;AAaG,kCAAqB;AAAA;;AAAA;;AAAA,0CAANrN,IAAM;AAANA,gBAAM;AAAA;;AAAA,uKACRA,IADQ;;AAGjB,cAAKyN,cAAL,GAAsB,MAAKA,cAAL,CAAoBC,IAApB,OAAtB;AAHiB;AAIpB;;;;iCAEQ;AACL,gBAAMC,mBAAmB5O,OAAO6O,OAAP,CAAe,KAAKhB,KAAL,CAAWrC,mBAAX,CAA+B3K,OAA9C,EACpByC,GADoB,CAChB;AAAA;AAAA,oBAAE4I,gBAAF;AAAA,oBAAoB4C,mBAApB;;AAAA,uBAA8C;AAC/CtP,2BAAO0M,gBADwC;AAE/C+B,2BAAOa,oBAAoBb;AAFoB,iBAA9C;AAAA,aADgB,CAAzB;;AAMA,gBAAIW,iBAAiBxN,MAAjB,KAA4B,CAAhC,EAAmC;AAC/B,uBAAO,IAAP;AACH;;AAED,gBAAM2N,eAAe,KAAKlB,KAAL,CAAWS,qBAAX,kBAAgD,KAAKT,KAAL,CAAWtC,gBAA3D,CAArB;;AAEA,mBACI,8BAAC,4BAAD;AACI,yBAASqD,gBADb;AAEI,uBAAOG,YAFX;AAGI,4BAAY,IAHhB;AAII,6BAAa,KAAKlB,KAAL,CAAWrC,mBAAX,CAA+ByC,KAJhD;AAKI,+BAAe,KAAKS;AALxB,cADJ;AASH;;;uCAEcxC,gB,EAAkB;AAC7BlI,wBAAYgL,cAAZ,kBACmB,KAAKnB,KAAL,CAAWtC,gBAD9B,EAEI,EAAC/L,OAAO0M,gBAAR,EAFJ;AAIH;;;;EA7C2C+C,oB,WACrCC,S,GAAY;AACf;AACA3D,sBAAkBlH,oBAAU6J,MAAV,CAAiBC,UAFpB;AAGf3C,yBAAqB2D,qBAAWhB,UAHjB;;AAKf;AACAG,2BAAuBjK,oBAAU+K;AANlB,C;kBADFf,kB;;;;;;;;;;;;;;;;;;;;;;;;;ACbrB;;;;AACA;;;;AACA;;AACA;;AACA;;AACA;;;;AAEA;;AACA;;IAAYrK,W;;;;;;;;;;;;IAKSqL,mB,WAHpB,yBAAQ,wBAAW;AAChBf,2BAAuBC,4BAAUC,EAAV,CAAaC,aAAb,CAA2BH;AADlC,CAAX,CAAR,C;;;AAaG,mCAAqB;AAAA;;AAAA;;AAAA,0CAANrN,IAAM;AAANA,gBAAM;AAAA;;AAAA,yKACRA,IADQ;;AAGjB,cAAKyN,cAAL,GAAsB,MAAKA,cAAL,CAAoBC,IAApB,OAAtB;AAHiB;AAIpB;;;;iCAEQ;AACL,gBAAMC,mBAAmB5O,OAAO6O,OAAP,CAAe,KAAKhB,KAAL,CAAWrC,mBAAX,CAA+B3K,OAA9C,EACpByC,GADoB,CAChB;AAAA;AAAA,oBAAE4I,gBAAF;AAAA,oBAAoB4C,mBAApB;;AAAA,uBAA8C;AAC/CtP,2BAAO0M,gBADwC;AAE/C+B,2BAAOa,oBAAoBb;AAFoB,iBAA9C;AAAA,aADgB,CAAzB;;AAMA,gBAAIW,iBAAiBxN,MAAjB,KAA4B,CAAhC,EAAmC;AAC/B,uBAAO,IAAP;AACH;;AAED,gBAAM2N,eAAe,KAAKlB,KAAL,CAAWS,qBAAX,mBAAiD,KAAKT,KAAL,CAAWtC,gBAA5D,CAArB;;AAEA,mBACI,8BAAC,4BAAD;AACI,yBAASqD,gBADb;AAEI,uBAAOG,YAFX;AAGI,4BAAY,IAHhB;AAII,6BAAa,KAAKlB,KAAL,CAAWrC,mBAAX,CAA+ByC,KAJhD;AAKI,+BAAe,KAAKS;AALxB,cADJ;AASH;;;uCAEcxC,gB,EAAkB;AAC7BlI,wBAAYgL,cAAZ,mBACoB,KAAKnB,KAAL,CAAWtC,gBAD/B,EAEI,EAAC/L,OAAO0M,gBAAR,EAFJ;AAIH;;;;EA7C4C+C,oB,WACtCC,S,GAAY;AACf;AACA3D,sBAAkBlH,oBAAU6J,MAAV,CAAiBC,UAFpB;AAGf3C,yBAAqB2D,qBAAWhB,UAHjB;;AAKf;AACAG,2BAAuBjK,oBAAU+K;AANlB,C;kBADFC,mB;;;;;;;;;;;;;;ACbrBjQ,mBAAOA,CAAC,qCAAR,E;;;;;;;;;;;;;;ACAA;;;;AACA;;AAEA;;;;AACA;;;;AAEA;;;;AACA;;;;;;AAEA,mCAAS,8BAAT,EAAyC,EAAzC,EAA6C,UAACkQ,cAAD,QAA6C;AAAA,QAA3BC,qBAA2B,QAA3BA,qBAA2B;;;AAEtF,QAAMC,mBAAmBF,eAAe5M,GAAf,CAAmB,WAAnB,CAAzB;AACA,QAAM+M,kBAAkBD,iBAAiB9M,GAAjB,CAAqB,iBAArB,CAAxB;AACA,QAAMqJ,SAASyD,iBAAiB9M,GAAjB,CAAqB,QAArB,CAAf;;AAEA,QAAMgN,2BAA2BH,sBAAsB,oCAAtB,CAAjC;AACA,QAAMI,0BAA0BJ,sBAAsB,mCAAtB,CAAhC;;AAEA;AACA,QAAII,uBAAJ,EAA6B;;AAEzB3P,eAAOC,IAAP,CAAY0P,wBAAwBC,OAApC,EAA6C1P,OAA7C,CAAqD,4BAAoB;;AAErE,gBAAM2P,gCAAgCF,wBAAwBC,OAAxB,CAAgCrE,gBAAhC,CAAtC;;AAEAQ,mBAAOhK,GAAP,wCAAgDwJ,gBAAhD,EAAoE,UAACuE,qBAAD,SAA4C;AAAA,oBAAnBC,aAAmB,SAAnBA,aAAmB;;AAC5G,oBAAMC,UAAU,iCAAkBzE,gBAAlB,EAAoCsE,6BAApC,CAAhB;AACAC,sCAAsBG,OAAtB,GAAgCH,sBAAsBG,OAAtB,IAAiC,EAAjE;AACAH,sCAAsBG,OAAtB,CAA8BjP,IAA9B,CAAmCgP,OAAnC;AACA,uBAAOF,qBAAP;AACH,aALD;;AAOAL,4BAAgB1N,GAAhB,kBAAmCwJ,gBAAnC,EAAuD;AACnD2E,2BAAW7B,4BADwC;AAEnD;AACA8B,2BAAW,mBAAUJ,aAAV,EAAyBzB,qBAAzB,EAAgD;AACvD,wBAAI6B,YAAY,KAAhB;AACA,wBAAIJ,cAAc,cAAd,MAAkC1E,SAAlC,IAA+C0E,cAAc,cAAd,EAA8BxE,gBAA9B,MAAoDF,SAAvG,EAAkH;AAC9G8E,oCAAYJ,cAAc,cAAd,EAA8BxE,gBAA9B,CAAZ;AACH;AACD,2BAAO4E,SAAP;AACH,iBATkD;AAUnD5E,kCAAkBA,gBAViC;AAWnDC,qCAAqBqE;AAX8B,aAAvD;AAcH,SAzBD;AA0BH;;AAED;AACA,QAAIH,wBAAJ,EAA8B;;AAE1B1P,eAAOC,IAAP,CAAYyP,yBAAyBE,OAArC,EAA8C1P,OAA9C,CAAsD,UAACqL,gBAAD,EAAsB;;AAExE,gBAAM6E,iCAAiCV,yBAAyBE,OAAzB,CAAiCrE,gBAAjC,CAAvC;;AAEAQ,mBAAOhK,GAAP,wCAAgDwJ,gBAAhD,EAAoE,UAACuE,qBAAD,SAA4C;AAAA,oBAAnBC,aAAmB,SAAnBA,aAAmB;;AAC5GD,sCAAsBG,OAAtB,GAAgCH,sBAAsBG,OAAtB,IAAiC,EAAjE;AACAH,sCAAsBG,OAAtB,CAA8BjP,IAA9B,CAAmC,mCAAoBuK,gBAApB,EAAsC6E,8BAAtC,CAAnC;AACA,uBAAON,qBAAP;AACH,aAJD;;AAMAL,4BAAgB1N,GAAhB,mBAAoCwJ,gBAApC,EAAwD;AACpD2E,2BAAWb,6BADyC;AAEpD;AACAc,2BAAW,mBAAUJ,aAAV,EAAyBzB,qBAAzB,EAAgD;AACvD,wBAAI6B,YAAY,KAAhB;AACA,wBAAIJ,cAAc,eAAd,MAAmC1E,SAAnC,IAAgD0E,cAAc,eAAd,EAA+BxE,gBAA/B,MAAqDF,SAAzG,EAAoH;AAChH8E,oCAAYJ,cAAc,eAAd,EAA+BxE,gBAA/B,CAAZ;AACH;AACD,2BAAO4E,SAAP;AACH,iBATmD;AAUpD5E,kCAAkBA,gBAVkC;AAWpDC,qCAAqB4E;AAX+B,aAAxD;AAaH,SAvBD;AAwBH;AACJ,CApED,E","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 From 2d452b4240a17300e5ad47ed91f8c6645312fad3 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 07:41:26 +0200 Subject: [PATCH 02/19] NCP-40 // Bump node version --- .nvmrc | 2 +- Resources/Private/JavaScript/CkStyles/.nvmrc | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.nvmrc b/.nvmrc index d16c3a3..9ddeeba 100644 --- a/.nvmrc +++ b/.nvmrc @@ -1 +1 @@ -10.15.3 \ No newline at end of file +14.19.1 diff --git a/Resources/Private/JavaScript/CkStyles/.nvmrc b/Resources/Private/JavaScript/CkStyles/.nvmrc index d16c3a3..9ddeeba 100644 --- a/Resources/Private/JavaScript/CkStyles/.nvmrc +++ b/Resources/Private/JavaScript/CkStyles/.nvmrc @@ -1 +1 @@ -10.15.3 \ No newline at end of file +14.19.1 From 69e5e51cddcd736ac44febde2729ae76c53389af Mon Sep 17 00:00:00 2001 From: MVogge <34127888+MVogge@users.noreply.github.com> Date: Thu, 7 Apr 2022 07:51:35 +0200 Subject: [PATCH 03/19] Create webpack.yml --- .github/workflows/webpack.yml | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 .github/workflows/webpack.yml diff --git a/.github/workflows/webpack.yml b/.github/workflows/webpack.yml new file mode 100644 index 0000000..2af0f99 --- /dev/null +++ b/.github/workflows/webpack.yml @@ -0,0 +1,28 @@ +name: NodeJS with Webpack + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + runs-on: ubuntu-latest + + strategy: + matrix: + node-version: [ 14.x ] + + steps: + - uses: actions/checkout@v3 + + - name: Use Node.js ${{ matrix.node-version }} + uses: actions/setup-node@v3 + with: + node-version: ${{ matrix.node-version }} + + - name: Build + run: | + npm install + npx webpack From 9b3ccd0e220563b461641e5edfd790d1619e1b55 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 08:06:41 +0200 Subject: [PATCH 04/19] NCP-40 // Add yarn to composer.json and build frontend with yarn instead of webpack --- .github/workflows/webpack.yml | 2 +- composer.json | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.github/workflows/webpack.yml b/.github/workflows/webpack.yml index 2af0f99..7ca6dfa 100644 --- a/.github/workflows/webpack.yml +++ b/.github/workflows/webpack.yml @@ -25,4 +25,4 @@ jobs: - name: Build run: | npm install - npx webpack + npx yarn --cwd Resources/Private/JavaScript/CkStyles build diff --git a/composer.json b/composer.json index 626da10..6894ff1 100644 --- a/composer.json +++ b/composer.json @@ -14,7 +14,8 @@ } ], "require": { - "neos/neos-ui": ">=3.8 <8.0" + "neos/neos-ui": ">=3.8 <8.0", + "yarn": "*" }, "extra": { "neos": { From 73a32621c8945d0a9f434172bd2d1b0a2f830f16 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 08:11:34 +0200 Subject: [PATCH 05/19] NCP-40 // Execute github action when pushing to any branch --- .github/workflows/webpack.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/webpack.yml b/.github/workflows/webpack.yml index 7ca6dfa..3ee0cdd 100644 --- a/.github/workflows/webpack.yml +++ b/.github/workflows/webpack.yml @@ -2,7 +2,7 @@ name: NodeJS with Webpack on: push: - branches: [ master ] + branches: [ '**' ] pull_request: branches: [ master ] From 5daafe73956e9cb8f52157450f4dddf71f89d541 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 08:14:23 +0200 Subject: [PATCH 06/19] NCP-40 // Add yarn dependency fetching from build script --- .github/workflows/webpack.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/webpack.yml b/.github/workflows/webpack.yml index 3ee0cdd..2bdcb66 100644 --- a/.github/workflows/webpack.yml +++ b/.github/workflows/webpack.yml @@ -25,4 +25,5 @@ jobs: - name: Build run: | npm install + npx yarn --cwd Resources/Private/JavaScript/CkStyles npx yarn --cwd Resources/Private/JavaScript/CkStyles build From fe25a3a3d50b0e334fa9ce1f5169ff5a49bb10c9 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 08:16:06 +0200 Subject: [PATCH 07/19] NCP-40 // Remove execution on push to any branch, as it already worked in pushes to pull requests --- .github/workflows/webpack.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/webpack.yml b/.github/workflows/webpack.yml index 2bdcb66..6713678 100644 --- a/.github/workflows/webpack.yml +++ b/.github/workflows/webpack.yml @@ -2,7 +2,7 @@ name: NodeJS with Webpack on: push: - branches: [ '**' ] + branches: [ master ] pull_request: branches: [ master ] From 100db37231a6316881054757352873300234be6f Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 08:26:25 +0200 Subject: [PATCH 08/19] NCP-40 // Use build script instead of the commands maybe? --- .github/workflows/webpack.yml | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/.github/workflows/webpack.yml b/.github/workflows/webpack.yml index 6713678..728b256 100644 --- a/.github/workflows/webpack.yml +++ b/.github/workflows/webpack.yml @@ -25,5 +25,4 @@ jobs: - name: Build run: | npm install - npx yarn --cwd Resources/Private/JavaScript/CkStyles - npx yarn --cwd Resources/Private/JavaScript/CkStyles build + ./build.sh From ead67dc64a670ada0ce8969f286251b7f7d6ec4e Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 09:04:53 +0200 Subject: [PATCH 09/19] NCP-40 // Remove dependency to ckEditor basic styles, add .DS_Store to gitignore --- .gitignore | 1 + Resources/Private/JavaScript/CkStyles/package.json | 3 +-- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index aa21311..3b9211c 100644 --- a/.gitignore +++ b/.gitignore @@ -2,3 +2,4 @@ node_modules yarn.lock Resources/Public +.DS_Store diff --git a/Resources/Private/JavaScript/CkStyles/package.json b/Resources/Private/JavaScript/CkStyles/package.json index 839b807..762a4da 100644 --- a/Resources/Private/JavaScript/CkStyles/package.json +++ b/Resources/Private/JavaScript/CkStyles/package.json @@ -13,6 +13,5 @@ "buildTargetDirectory": "../../../Public/JavaScript/CkStyles" }, "dependencies": { - "@ckeditor/ckeditor5-basic-styles": "^10.0.0" } -} \ No newline at end of file +} From 765dedc1b79ae5317b73e0f97e2256e8dbb28bdc Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 09:37:31 +0200 Subject: [PATCH 10/19] NCP-40 // Remove faulty yarn dependency --- composer.json | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/composer.json b/composer.json index 6894ff1..626da10 100644 --- a/composer.json +++ b/composer.json @@ -14,8 +14,7 @@ } ], "require": { - "neos/neos-ui": ">=3.8 <8.0", - "yarn": "*" + "neos/neos-ui": ">=3.8 <8.0" }, "extra": { "neos": { From f56a50250e54a1192d28826adbe0892844143416 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 09:40:47 +0200 Subject: [PATCH 11/19] NCP-40 // Remove npm install from Action, build script should be sufficient --- .github/workflows/webpack.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/webpack.yml b/.github/workflows/webpack.yml index 728b256..06d47ba 100644 --- a/.github/workflows/webpack.yml +++ b/.github/workflows/webpack.yml @@ -24,5 +24,4 @@ jobs: - name: Build run: | - npm install ./build.sh From cc0398893a6a48c4d6ebea4f5c21343ff7a04259 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 16:44:19 +0200 Subject: [PATCH 12/19] NCP-40 // Change name of workflow --- .../{webpack.yml => build-frontend-and-attach-to-tag.yml} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{webpack.yml => build-frontend-and-attach-to-tag.yml} (100%) diff --git a/.github/workflows/webpack.yml b/.github/workflows/build-frontend-and-attach-to-tag.yml similarity index 100% rename from .github/workflows/webpack.yml rename to .github/workflows/build-frontend-and-attach-to-tag.yml From 4331dba48960a24fb744b1d131b22cbd1d9d5f5f Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 16:49:40 +0200 Subject: [PATCH 13/19] NCP-40 // Change workflow to release and attach built script --- .../workflows/build-frontend-and-attach-to-tag.yml | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/.github/workflows/build-frontend-and-attach-to-tag.yml b/.github/workflows/build-frontend-and-attach-to-tag.yml index 06d47ba..78d8324 100644 --- a/.github/workflows/build-frontend-and-attach-to-tag.yml +++ b/.github/workflows/build-frontend-and-attach-to-tag.yml @@ -1,10 +1,8 @@ name: NodeJS with Webpack on: - push: - branches: [ master ] - pull_request: - branches: [ master ] + release: + types: [ published ] jobs: build: @@ -25,3 +23,8 @@ jobs: - name: Build run: | ./build.sh + + - name: Upload + uses: softprops/action-gh-release@v1 + with: + files: Resources/Public/* From 5d2d3ef053ab055eaa3290016e8c079cb82714c1 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Thu, 7 Apr 2022 17:29:28 +0200 Subject: [PATCH 14/19] NCP-40 // Change workflow trigger --- .github/workflows/build-frontend-and-attach-to-tag.yml | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/.github/workflows/build-frontend-and-attach-to-tag.yml b/.github/workflows/build-frontend-and-attach-to-tag.yml index 78d8324..c1bc6a0 100644 --- a/.github/workflows/build-frontend-and-attach-to-tag.yml +++ b/.github/workflows/build-frontend-and-attach-to-tag.yml @@ -1,12 +1,11 @@ name: NodeJS with Webpack -on: - release: - types: [ published ] +on: push jobs: build: runs-on: ubuntu-latest + if: startsWith(github.ref, 'refs/tags/') strategy: matrix: From 4f78a7f8e02fb4770af2d998728804fc8943812e Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Fri, 8 Apr 2022 07:03:53 +0200 Subject: [PATCH 15/19] NCP-40 // Change path to Uploaded resource in Action --- .github/workflows/build-frontend-and-attach-to-tag.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-frontend-and-attach-to-tag.yml b/.github/workflows/build-frontend-and-attach-to-tag.yml index c1bc6a0..f35cd59 100644 --- a/.github/workflows/build-frontend-and-attach-to-tag.yml +++ b/.github/workflows/build-frontend-and-attach-to-tag.yml @@ -26,4 +26,4 @@ jobs: - name: Upload uses: softprops/action-gh-release@v1 with: - files: Resources/Public/* + files: Resources/Public/**/* From 1a3f4c015e99533b61f1443304914849210351a4 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Fri, 8 Apr 2022 07:36:43 +0200 Subject: [PATCH 16/19] NCP-40 // Add comment to upload path --- .github/workflows/build-frontend-and-attach-to-tag.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-frontend-and-attach-to-tag.yml b/.github/workflows/build-frontend-and-attach-to-tag.yml index f35cd59..c08f78a 100644 --- a/.github/workflows/build-frontend-and-attach-to-tag.yml +++ b/.github/workflows/build-frontend-and-attach-to-tag.yml @@ -26,4 +26,4 @@ jobs: - name: Upload uses: softprops/action-gh-release@v1 with: - files: Resources/Public/**/* + files: Resources/Public/**/* # Upload every file that is built in any subfolder of Resource/Public/ From 0f081d1a1ce6898b76a58d5afd09e14256e9bdf6 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Fri, 8 Apr 2022 07:38:01 +0200 Subject: [PATCH 17/19] NCP-40 // Change workflow name --- .github/workflows/build-frontend-and-attach-to-tag.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-frontend-and-attach-to-tag.yml b/.github/workflows/build-frontend-and-attach-to-tag.yml index c08f78a..a31abc0 100644 --- a/.github/workflows/build-frontend-and-attach-to-tag.yml +++ b/.github/workflows/build-frontend-and-attach-to-tag.yml @@ -1,4 +1,4 @@ -name: NodeJS with Webpack +name: NodeJS with Yarn and Upload to Tag on: push From d5b04d8191f83141ae36a1c3a1dec5d7d449f4f3 Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Fri, 8 Apr 2022 11:02:20 +0200 Subject: [PATCH 18/19] NCP-40 // Check the built script back in, as there is no other way to include it for composer --- .gitignore | 1 - .../Public/JavaScript/CkStyles/Plugin.js | 2081 +++++++++++++++++ .../Public/JavaScript/CkStyles/Plugin.js.map | 1 + 3 files changed, 2082 insertions(+), 1 deletion(-) create mode 100644 Resources/Public/JavaScript/CkStyles/Plugin.js create mode 100644 Resources/Public/JavaScript/CkStyles/Plugin.js.map diff --git a/.gitignore b/.gitignore index 3b9211c..effeffd 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ .idea node_modules yarn.lock -Resources/Public .DS_Store diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js b/Resources/Public/JavaScript/CkStyles/Plugin.js new file mode 100644 index 0000000..14e7cbe --- /dev/null +++ b/Resources/Public/JavaScript/CkStyles/Plugin.js @@ -0,0 +1,2081 @@ +/******/ (function(modules) { // webpackBootstrap +/******/ // The module cache +/******/ var installedModules = {}; +/******/ +/******/ // The require function +/******/ function __webpack_require__(moduleId) { +/******/ +/******/ // Check if module is in cache +/******/ if(installedModules[moduleId]) { +/******/ return installedModules[moduleId].exports; +/******/ } +/******/ // Create a new module (and put it into the cache) +/******/ var module = installedModules[moduleId] = { +/******/ i: moduleId, +/******/ l: false, +/******/ exports: {} +/******/ }; +/******/ +/******/ // Execute the module function +/******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); +/******/ +/******/ // Flag the module as loaded +/******/ module.l = true; +/******/ +/******/ // Return the exports of the module +/******/ return module.exports; +/******/ } +/******/ +/******/ +/******/ // expose the modules object (__webpack_modules__) +/******/ __webpack_require__.m = modules; +/******/ +/******/ // expose the module cache +/******/ __webpack_require__.c = installedModules; +/******/ +/******/ // define getter function for harmony exports +/******/ __webpack_require__.d = function(exports, name, getter) { +/******/ if(!__webpack_require__.o(exports, name)) { +/******/ Object.defineProperty(exports, name, { enumerable: true, get: getter }); +/******/ } +/******/ }; +/******/ +/******/ // define __esModule on exports +/******/ __webpack_require__.r = function(exports) { +/******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) { +/******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' }); +/******/ } +/******/ Object.defineProperty(exports, '__esModule', { value: true }); +/******/ }; +/******/ +/******/ // create a fake namespace object +/******/ // mode & 1: value is a module id, require it +/******/ // mode & 2: merge all properties of value into the ns +/******/ // mode & 4: return value when already ns object +/******/ // mode & 8|1: behave like require +/******/ __webpack_require__.t = function(value, mode) { +/******/ if(mode & 1) value = __webpack_require__(value); +/******/ if(mode & 8) return value; +/******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value; +/******/ var ns = Object.create(null); +/******/ __webpack_require__.r(ns); +/******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value }); +/******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key)); +/******/ return ns; +/******/ }; +/******/ +/******/ // getDefaultExport function for compatibility with non-harmony modules +/******/ __webpack_require__.n = function(module) { +/******/ var getter = module && module.__esModule ? +/******/ function getDefault() { return module['default']; } : +/******/ function getModuleExports() { return module; }; +/******/ __webpack_require__.d(getter, 'a', getter); +/******/ return getter; +/******/ }; +/******/ +/******/ // Object.prototype.hasOwnProperty.call +/******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); }; +/******/ +/******/ // __webpack_public_path__ +/******/ __webpack_require__.p = ""; +/******/ +/******/ +/******/ // Load entry module and return exports +/******/ return __webpack_require__(__webpack_require__.s = "./src/index.js"); +/******/ }) +/************************************************************************/ +/******/ ({ + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js": +/*!************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/createConsumerApi.js ***! + \************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +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 createReadOnlyValue = function createReadOnlyValue(value) { + return { + value: value, + writable: false, + enumerable: false, + configurable: true + }; +}; +function createConsumerApi(manifests, exposureMap) { + var api = {}; + Object.keys(exposureMap).forEach(function (key) { + Object.defineProperty(api, key, createReadOnlyValue(exposureMap[key])); + }); + Object.defineProperty(api, '@manifest', createReadOnlyValue(manifest_1["default"](manifests))); + Object.defineProperty(window, '@Neos:HostPluginAPI', createReadOnlyValue(api)); +} +exports["default"] = createConsumerApi; +//# sourceMappingURL=createConsumerApi.js.map + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/index.js": +/*!************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/index.js ***! + \************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +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.createConsumerApi = createConsumerApi_1["default"]; +var readFromConsumerApi_1 = tslib_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'); +//# sourceMappingURL=index.js.map + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js": +/*!***************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/manifest.js ***! + \***************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +exports["default"] = function (manifests) { + return function (identifier, options, bootstrap) { + var _a; + manifests.push((_a = {}, _a[identifier] = { + options: options, + bootstrap: bootstrap + }, _a)); + }; +}; +//# sourceMappingURL=manifest.js.map + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js": +/*!**************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js ***! + \**************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js"); +function readFromConsumerApi(key) { + return function () { + var _a; + var args = []; + 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)); + } + throw new Error("You are trying to read from a consumer api that hasn't been initialized yet!"); + }; +} +exports["default"] = readFromConsumerApi; +//# sourceMappingURL=readFromConsumerApi.js.map + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js": +/*!********************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/AbstractRegistry.js ***! + \********************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +var AbstractRegistry = function () { + function AbstractRegistry(description) { + this.SERIAL_VERSION_UID = 'd8a5aa78-978e-11e6-ae22-56b6b6499611'; + this.description = description; + } + return AbstractRegistry; +}(); +exports["default"] = AbstractRegistry; +//# sourceMappingURL=AbstractRegistry.js.map + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js": +/*!***************************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousMetaRegistry.js ***! + \***************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +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 SynchronousMetaRegistry = function (_super) { + tslib_1.__extends(SynchronousMetaRegistry, _super); + function SynchronousMetaRegistry() { + return _super !== null && _super.apply(this, arguments) || this; + } + SynchronousMetaRegistry.prototype.set = function (key, value) { + if (value.SERIAL_VERSION_UID !== 'd8a5aa78-978e-11e6-ae22-56b6b6499611') { + throw new Error('You can only add registries to a meta registry'); + } + return _super.prototype.set.call(this, key, value); + }; + return SynchronousMetaRegistry; +}(SynchronousRegistry_1["default"]); +exports["default"] = SynchronousMetaRegistry; +//# sourceMappingURL=SynchronousMetaRegistry.js.map + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js": +/*!***********************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/SynchronousRegistry.js ***! + \***********************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +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 SynchronousRegistry = function (_super) { + tslib_1.__extends(SynchronousRegistry, _super); + function SynchronousRegistry(description) { + var _this = _super.call(this, description) || this; + _this._registry = []; + return _this; + } + SynchronousRegistry.prototype.set = function (key, value, position) { + if (position === void 0) { + position = 0; + } + if (typeof key !== 'string') { + throw new Error('Key must be a string'); + } + if (typeof position !== 'string' && typeof position !== 'number') { + throw new Error('Position must be a string or a number'); + } + var entry = { key: key, value: value }; + if (position) { + entry.position = position; + } + var indexOfItemWithTheSameKey = this._registry.findIndex(function (item) { + return item.key === key; + }); + if (indexOfItemWithTheSameKey === -1) { + this._registry.push(entry); + } else { + this._registry[indexOfItemWithTheSameKey] = entry; + } + return value; + }; + SynchronousRegistry.prototype.get = function (key) { + if (typeof key !== 'string') { + console.error('Key must be a string'); + return null; + } + var result = this._registry.find(function (item) { + return item.key === key; + }); + return result ? result.value : null; + }; + SynchronousRegistry.prototype._getChildrenWrapped = function (searchKey) { + var unsortedChildren = this._registry.filter(function (item) { + return item.key.indexOf(searchKey + '/') === 0; + }); + return positional_array_sorter_1["default"](unsortedChildren); + }; + SynchronousRegistry.prototype.getChildrenAsObject = function (searchKey) { + var result = {}; + this._getChildrenWrapped(searchKey).forEach(function (item) { + result[item.key] = item.value; + }); + return result; + }; + SynchronousRegistry.prototype.getChildren = function (searchKey) { + return this._getChildrenWrapped(searchKey).map(function (item) { + return item.value; + }); + }; + SynchronousRegistry.prototype.has = function (key) { + if (typeof key !== 'string') { + console.error('Key must be a string'); + return false; + } + return Boolean(this._registry.find(function (item) { + return item.key === key; + })); + }; + SynchronousRegistry.prototype._getAllWrapped = function () { + return positional_array_sorter_1["default"](this._registry); + }; + SynchronousRegistry.prototype.getAllAsObject = function () { + var result = {}; + this._getAllWrapped().forEach(function (item) { + result[item.key] = item.value; + }); + return result; + }; + SynchronousRegistry.prototype.getAllAsList = function () { + return this._getAllWrapped().map(function (item) { + return Object.assign({ id: item.key }, item.value); + }); + }; + return SynchronousRegistry; +}(AbstractRegistry_1["default"]); +exports["default"] = SynchronousRegistry; +//# sourceMappingURL=SynchronousRegistry.js.map + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/dist/registry/index.js": +/*!*********************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/dist/registry/index.js ***! + \*********************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +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.SynchronousRegistry = SynchronousRegistry_1["default"]; +var SynchronousMetaRegistry_1 = tslib_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 + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js": +/*!****************************************************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js ***! + \****************************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('NeosProjectPackages')().CkEditorApi; + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js": +/*!*********************************************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('NeosProjectPackages')().NeosUiReduxStore; + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js": +/*!*********************************************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js ***! + \*********************************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('NeosProjectPackages')().ReactUiComponents; + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js": +/*!******************************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/ckeditor5-exports/index.js ***! + \******************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('vendor')().CkEditor5; + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js": +/*!********************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js ***! + \********************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('vendor')().plow; + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js": +/*!***********************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js ***! + \***********************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('vendor')().PropTypes; + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js": +/*!************************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js ***! + \************************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('vendor')().reactRedux; + +/***/ }), + +/***/ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js": +/*!******************************************************************************************!*\ + !*** ./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react/index.js ***! + \******************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _readFromConsumerApi = __webpack_require__(/*! ../../../../dist/readFromConsumerApi */ "./node_modules/@neos-project/neos-ui-extensibility/dist/readFromConsumerApi.js"); + +var _readFromConsumerApi2 = _interopRequireDefault(_readFromConsumerApi); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +module.exports = (0, _readFromConsumerApi2.default)('vendor')().React; + +/***/ }), + +/***/ "./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js": +/*!******************************************************************************************!*\ + !*** ./node_modules/@neos-project/positional-array-sorter/dist/positionalArraySorter.js ***! + \******************************************************************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +exports.__esModule = true; +var tslib_1 = __webpack_require__(/*! tslib */ "./node_modules/tslib/tslib.es6.js"); +var positionalArraySorter = function positionalArraySorter(subject, position, idKey) { + var e_1, _a, e_2, _b, e_3, _c, e_4, _d, e_5, _e, e_6, _f, e_7, _g; + if (position === void 0) { + position = 'position'; + } + if (idKey === void 0) { + idKey = 'key'; + } + var positionAccessor = typeof position === 'string' ? function (value) { + return value[position]; + } : position; + var indexMapping = {}; + var middleKeys = {}; + var startKeys = {}; + var endKeys = {}; + var beforeKeys = {}; + var afterKeys = {}; + subject.forEach(function (item, index) { + var key = item[idKey] ? item[idKey] : String(index); + indexMapping[key] = index; + var positionValue = positionAccessor(item); + var position = String(positionValue ? positionValue : index); + var invalid = false; + if (position.startsWith('start')) { + var weightMatch = position.match(/start\s+(\d+)/); + var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0; + if (!startKeys[weight]) { + startKeys[weight] = []; + } + startKeys[weight].push(key); + } else if (position.startsWith('end')) { + var weightMatch = position.match(/end\s+(\d+)/); + var weight = weightMatch && weightMatch[1] ? Number(weightMatch[1]) : 0; + if (!endKeys[weight]) { + endKeys[weight] = []; + } + endKeys[weight].push(key); + } else if (position.startsWith('before')) { + var match = position.match(/before\s+(\S+)(\s+(\d+))?/); + if (!match) { + invalid = true; + } else { + var reference = match[1]; + var weight = match[3] ? Number(match[3]) : 0; + if (!beforeKeys[reference]) { + beforeKeys[reference] = {}; + } + if (!beforeKeys[reference][weight]) { + beforeKeys[reference][weight] = []; + } + beforeKeys[reference][weight].push(key); + } + } else if (position.startsWith('after')) { + var match = position.match(/after\s+(\S+)(\s+(\d+))?/); + if (!match) { + invalid = true; + } else { + var reference = match[1]; + var weight = match[3] ? Number(match[3]) : 0; + if (!afterKeys[reference]) { + afterKeys[reference] = {}; + } + if (!afterKeys[reference][weight]) { + afterKeys[reference][weight] = []; + } + afterKeys[reference][weight].push(key); + } + } else { + invalid = true; + } + if (invalid) { + var numberPosition = parseFloat(position); + if (isNaN(numberPosition) || !isFinite(numberPosition)) { + numberPosition = index; + } + if (!middleKeys[numberPosition]) { + middleKeys[numberPosition] = []; + } + middleKeys[numberPosition].push(key); + } + }); + var resultStart = []; + var resultMiddle = []; + var resultEnd = []; + var processedKeys = []; + var sortedWeights = function sortedWeights(dict, asc) { + var weights = Object.keys(dict).map(function (x) { + return Number(x); + }).sort(function (a, b) { + return a - b; + }); + return asc ? weights : weights.reverse(); + }; + var addToResults = function addToResults(keys, result) { + keys.forEach(function (key) { + var e_8, _a, e_9, _b; + if (processedKeys.indexOf(key) >= 0) { + return; + } + processedKeys.push(key); + if (beforeKeys[key]) { + var beforeWeights = sortedWeights(beforeKeys[key], true); + try { + for (var beforeWeights_1 = tslib_1.__values(beforeWeights), beforeWeights_1_1 = beforeWeights_1.next(); !beforeWeights_1_1.done; beforeWeights_1_1 = beforeWeights_1.next()) { + var i = beforeWeights_1_1.value; + addToResults(beforeKeys[key][i], result); + } + } catch (e_8_1) { + e_8 = { error: e_8_1 }; + } finally { + try { + if (beforeWeights_1_1 && !beforeWeights_1_1.done && (_a = beforeWeights_1["return"])) _a.call(beforeWeights_1); + } finally { + if (e_8) throw e_8.error; + } + } + } + result.push(key); + if (afterKeys[key]) { + var afterWeights = sortedWeights(afterKeys[key], false); + try { + for (var afterWeights_1 = tslib_1.__values(afterWeights), afterWeights_1_1 = afterWeights_1.next(); !afterWeights_1_1.done; afterWeights_1_1 = afterWeights_1.next()) { + var i = afterWeights_1_1.value; + addToResults(afterKeys[key][i], result); + } + } catch (e_9_1) { + e_9 = { error: e_9_1 }; + } finally { + try { + if (afterWeights_1_1 && !afterWeights_1_1.done && (_b = afterWeights_1["return"])) _b.call(afterWeights_1); + } finally { + if (e_9) throw e_9.error; + } + } + } + }); + }; + try { + for (var _h = tslib_1.__values(sortedWeights(startKeys, false)), _j = _h.next(); !_j.done; _j = _h.next()) { + var i = _j.value; + addToResults(startKeys[i], resultStart); + } + } catch (e_1_1) { + e_1 = { error: e_1_1 }; + } finally { + try { + if (_j && !_j.done && (_a = _h["return"])) _a.call(_h); + } finally { + if (e_1) throw e_1.error; + } + } + try { + for (var _k = tslib_1.__values(sortedWeights(middleKeys, true)), _l = _k.next(); !_l.done; _l = _k.next()) { + var i = _l.value; + addToResults(middleKeys[i], resultMiddle); + } + } catch (e_2_1) { + e_2 = { error: e_2_1 }; + } finally { + try { + if (_l && !_l.done && (_b = _k["return"])) _b.call(_k); + } finally { + if (e_2) throw e_2.error; + } + } + try { + for (var _m = tslib_1.__values(sortedWeights(endKeys, true)), _o = _m.next(); !_o.done; _o = _m.next()) { + var i = _o.value; + addToResults(endKeys[i], resultEnd); + } + } catch (e_3_1) { + e_3 = { error: e_3_1 }; + } finally { + try { + if (_o && !_o.done && (_c = _m["return"])) _c.call(_m); + } finally { + if (e_3) throw e_3.error; + } + } + try { + for (var _p = tslib_1.__values(Object.keys(beforeKeys)), _q = _p.next(); !_q.done; _q = _p.next()) { + var key = _q.value; + if (processedKeys.indexOf(key) >= 0) { + continue; + } + try { + for (var _r = (e_5 = void 0, tslib_1.__values(sortedWeights(beforeKeys[key], false))), _s = _r.next(); !_s.done; _s = _r.next()) { + var i = _s.value; + addToResults(beforeKeys[key][i], resultStart); + } + } catch (e_5_1) { + e_5 = { error: e_5_1 }; + } finally { + try { + if (_s && !_s.done && (_e = _r["return"])) _e.call(_r); + } finally { + if (e_5) throw e_5.error; + } + } + } + } catch (e_4_1) { + e_4 = { error: e_4_1 }; + } finally { + try { + if (_q && !_q.done && (_d = _p["return"])) _d.call(_p); + } finally { + if (e_4) throw e_4.error; + } + } + try { + for (var _t = tslib_1.__values(Object.keys(afterKeys)), _u = _t.next(); !_u.done; _u = _t.next()) { + var key = _u.value; + if (processedKeys.indexOf(key) >= 0) { + continue; + } + try { + for (var _v = (e_7 = void 0, tslib_1.__values(sortedWeights(afterKeys[key], false))), _w = _v.next(); !_w.done; _w = _v.next()) { + var i = _w.value; + addToResults(afterKeys[key][i], resultMiddle); + } + } catch (e_7_1) { + e_7 = { error: e_7_1 }; + } finally { + try { + if (_w && !_w.done && (_g = _v["return"])) _g.call(_v); + } finally { + if (e_7) throw e_7.error; + } + } + } + } catch (e_6_1) { + e_6 = { error: e_6_1 }; + } finally { + try { + if (_u && !_u.done && (_f = _t["return"])) _f.call(_t); + } finally { + if (e_6) throw e_6.error; + } + } + var sortedKeys = tslib_1.__spread(resultStart, resultMiddle, resultEnd); + return sortedKeys.map(function (key) { + return indexMapping[key]; + }).map(function (i) { + return subject[i]; + }); +}; +exports["default"] = positionalArraySorter; +//# sourceMappingURL=positionalArraySorter.js.map + +/***/ }), + +/***/ "./node_modules/tslib/tslib.es6.js": +/*!*****************************************!*\ + !*** ./node_modules/tslib/tslib.es6.js ***! + \*****************************************/ +/*! exports provided: __extends, __assign, __rest, __decorate, __param, __metadata, __awaiter, __generator, __createBinding, __exportStar, __values, __read, __spread, __spreadArrays, __await, __asyncGenerator, __asyncDelegator, __asyncValues, __makeTemplateObject, __importStar, __importDefault, __classPrivateFieldGet, __classPrivateFieldSet */ +/***/ (function(module, __webpack_exports__, __webpack_require__) { + +"use strict"; +__webpack_require__.r(__webpack_exports__); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__extends", function() { return __extends; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__assign", function() { return __assign; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__rest", function() { return __rest; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__decorate", function() { return __decorate; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__param", function() { return __param; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__metadata", function() { return __metadata; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__awaiter", function() { return __awaiter; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__generator", function() { return __generator; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__createBinding", function() { return __createBinding; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__exportStar", function() { return __exportStar; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__values", function() { return __values; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__read", function() { return __read; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__spread", function() { return __spread; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__spreadArrays", function() { return __spreadArrays; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__await", function() { return __await; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncGenerator", function() { return __asyncGenerator; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncDelegator", function() { return __asyncDelegator; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__asyncValues", function() { return __asyncValues; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__makeTemplateObject", function() { return __makeTemplateObject; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__importStar", function() { return __importStar; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__importDefault", function() { return __importDefault; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__classPrivateFieldGet", function() { return __classPrivateFieldGet; }); +/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "__classPrivateFieldSet", function() { return __classPrivateFieldSet; }); +/*! ***************************************************************************** +Copyright (c) Microsoft Corporation. + +Permission to use, copy, modify, and/or distribute this software for any +purpose with or without fee is hereby granted. + +THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH +REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY +AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, +INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM +LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR +OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR +PERFORMANCE OF THIS SOFTWARE. +***************************************************************************** */ +/* global Reflect, Promise */ + +var extendStatics = function(d, b) { + extendStatics = Object.setPrototypeOf || + ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || + function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; + return extendStatics(d, b); +}; + +function __extends(d, b) { + extendStatics(d, b); + function __() { this.constructor = d; } + d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); +} + +var __assign = function() { + __assign = Object.assign || function __assign(t) { + for (var s, i = 1, n = arguments.length; i < n; i++) { + s = arguments[i]; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; + } + return t; + } + return __assign.apply(this, arguments); +} + +function __rest(s, e) { + var t = {}; + for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) + t[p] = s[p]; + if (s != null && typeof Object.getOwnPropertySymbols === "function") + for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) { + if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) + t[p[i]] = s[p[i]]; + } + return t; +} + +function __decorate(decorators, target, key, desc) { + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); + 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; + return c > 3 && r && Object.defineProperty(target, key, r), r; +} + +function __param(paramIndex, decorator) { + return function (target, key) { decorator(target, key, paramIndex); } +} + +function __metadata(metadataKey, metadataValue) { + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); +} + +function __awaiter(thisArg, _arguments, P, generator) { + function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } + return new (P || (P = Promise))(function (resolve, reject) { + function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } + function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } + function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } + step((generator = generator.apply(thisArg, _arguments || [])).next()); + }); +} + +function __generator(thisArg, body) { + var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; + return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; + function verb(n) { return function (v) { return step([n, v]); }; } + function step(op) { + if (f) throw new TypeError("Generator is already executing."); + while (_) try { + 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; + if (y = 0, t) op = [op[0] & 2, t.value]; + switch (op[0]) { + case 0: case 1: t = op; break; + case 4: _.label++; return { value: op[1], done: false }; + case 5: _.label++; y = op[1]; op = [0]; continue; + case 7: op = _.ops.pop(); _.trys.pop(); continue; + default: + if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } + if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } + if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } + if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } + if (t[2]) _.ops.pop(); + _.trys.pop(); continue; + } + op = body.call(thisArg, _); + } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } + if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; + } +} + +function __createBinding(o, m, k, k2) { + if (k2 === undefined) k2 = k; + o[k2] = m[k]; +} + +function __exportStar(m, exports) { + for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) exports[p] = m[p]; +} + +function __values(o) { + var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0; + if (m) return m.call(o); + if (o && typeof o.length === "number") return { + next: function () { + if (o && i >= o.length) o = void 0; + return { value: o && o[i++], done: !o }; + } + }; + throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined."); +} + +function __read(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; +} + +function __spread() { + for (var ar = [], i = 0; i < arguments.length; i++) + ar = ar.concat(__read(arguments[i])); + return ar; +} + +function __spreadArrays() { + for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length; + for (var r = Array(s), k = 0, i = 0; i < il; i++) + for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++) + r[k] = a[j]; + return r; +}; + +function __await(v) { + return this instanceof __await ? (this.v = v, this) : new __await(v); +} + +function __asyncGenerator(thisArg, _arguments, generator) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var g = generator.apply(thisArg, _arguments || []), i, q = []; + return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; + 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); }); }; } + function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } + function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } + function fulfill(value) { resume("next", value); } + function reject(value) { resume("throw", value); } + function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } +} + +function __asyncDelegator(o) { + var i, p; + return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; + 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; } +} + +function __asyncValues(o) { + if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); + var m = o[Symbol.asyncIterator], i; + 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); + 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); }); }; } + function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); } +} + +function __makeTemplateObject(cooked, raw) { + if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; } + return cooked; +}; + +function __importStar(mod) { + if (mod && mod.__esModule) return mod; + var result = {}; + if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k]; + result.default = mod; + return result; +} + +function __importDefault(mod) { + return (mod && mod.__esModule) ? mod : { default: mod }; +} + +function __classPrivateFieldGet(receiver, privateMap) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to get private field on non-instance"); + } + return privateMap.get(receiver); +} + +function __classPrivateFieldSet(receiver, privateMap, value) { + if (!privateMap.has(receiver)) { + throw new TypeError("attempted to set private field on non-instance"); + } + privateMap.set(receiver, value); + return value; +} + + +/***/ }), + +/***/ "./src/BlockStyleCommand.js": +/*!**********************************!*\ + !*** ./src/BlockStyleCommand.js ***! + \**********************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +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); + + /** + * @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); + + /** + * The attribute that will be set by the command. + * + * @readonly + * @member {String} + */ + var _this = _possibleConstructorReturn(this, (BlockStyleCommand.__proto__ || Object.getPrototypeOf(BlockStyleCommand)).call(this, editor)); + + _this.attributeKey = attributeKey; + + /** + * Flag indicating whether the command is active. The command is active when the + * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that: + * + * @observable + * @readonly + * @member {Boolean} #value + */ + return _this; + } + + /** + * Updates the command's {@link #value} and {@link #isEnabled}. + */ + + + _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 { + if (!_iteratorNormalCompletion && _iterator.return) { + _iterator.return(); + } + } finally { + 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. + */ + + }, { + key: 'execute', + value: function execute() { + var _this2 = this; + + 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; + + 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); + } + } + } catch (err) { + _didIteratorError2 = true; + _iteratorError2 = err; + } finally { + try { + if (!_iteratorNormalCompletion2 && _iterator2.return) { + _iterator2.return(); + } + } finally { + if (_didIteratorError2) { + throw _iteratorError2; + } + } + } + }); + } + + /** + * Checks the attribute value of the parent block node(s) + * + * @private + * @returns {String} The attribute value. + */ + + }, { + 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; + + 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 { + if (!_iteratorNormalCompletion3 && _iterator3.return) { + _iterator3.return(); + } + } finally { + if (_didIteratorError3) { + throw _iteratorError3; + } + } + } + + return undefined; + } + }]); + + return BlockStyleCommand; +}(_ckeditor5Exports.Command); + +exports.default = BlockStyleCommand; + +/***/ }), + +/***/ "./src/BlockStyleEditing.js": +/*!**********************************!*\ + !*** ./src/BlockStyleEditing.js ***! + \**********************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +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"); + +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: {} + }; + + // 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); + + this.editor.commands.add('blockStyles:' + presetIdentifier, new _BlockStyleCommand2.default(this.editor, modelAttributeKey)); + } + }]); + + return BlockStyleEditing; + }(_ckeditor5Exports.Plugin); +}; + +/***/ }), + +/***/ "./src/InlineStylesCommand.js": +/*!************************************!*\ + !*** ./src/InlineStylesCommand.js ***! + \************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +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); + + /** + * @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); + + /** + * The attribute that will be set by the command. + * + * @readonly + * @member {String} + */ + var _this = _possibleConstructorReturn(this, (InlineStylesCommand.__proto__ || Object.getPrototypeOf(InlineStylesCommand)).call(this, editor)); + + _this.attributeKey = attributeKey; + + /** + * Flag indicating whether the command is active. The command is active when the + * {@link module:engine/model/selection~Selection#hasAttribute selection has the attribute} which means that: + ** + * @observable + * @readonly + * @member {Boolean} #value + */ + return _this; + } + + /** + * Updates the command's {@link #value} and {@link #isEnabled} based on the current selection. + */ + + + _createClass(InlineStylesCommand, [{ + key: 'refresh', + value: function refresh() { + var model = this.editor.model; + var doc = model.document; + + this.value = this._getValueFromFirstAllowedNode(); + this.isEnabled = model.schema.checkAttributeInSelection(doc.selection, this.attributeKey); + } + + /** + * 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. + */ + + }, { + key: 'execute', + value: function execute() { + var _this2 = this; + + 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; + + 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); + } + } else { + var ranges = model.schema.getValidRanges(selection.getRanges(), _this2.attributeKey); + + var _iteratorNormalCompletion = true; + var _didIteratorError = false; + var _iteratorError = undefined; + + 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); + } + } + } catch (err) { + _didIteratorError = true; + _iteratorError = err; + } finally { + try { + if (!_iteratorNormalCompletion && _iterator.return) { + _iterator.return(); + } + } finally { + 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. + */ + + }, { + 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); + } + + 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 _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 { + if (!_iteratorNormalCompletion3 && _iterator3.return) { + _iterator3.return(); + } + } finally { + if (_didIteratorError3) { + throw _iteratorError3; + } + } + } + } + } catch (err) { + _didIteratorError2 = true; + _iteratorError2 = err; + } finally { + try { + if (!_iteratorNormalCompletion2 && _iterator2.return) { + _iterator2.return(); + } + } finally { + if (_didIteratorError2) { + throw _iteratorError2; + } + } + } + + return undefined; + } + }]); + + return InlineStylesCommand; +}(_ckeditor5Exports.Command); + +exports.default = InlineStylesCommand; + +/***/ }), + +/***/ "./src/InlineStylesEditing.js": +/*!************************************!*\ + !*** ./src/InlineStylesEditing.js ***! + \************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +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"); + +var _InlineStylesCommand2 = _interopRequireDefault(_InlineStylesCommand); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +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); + + function InlineStylesEditing() { + _classCallCheck(this, InlineStylesEditing); + + return _possibleConstructorReturn(this, (InlineStylesEditing.__proto__ || Object.getPrototypeOf(InlineStylesEditing)).apply(this, arguments)); + } + + _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: {} + }; + + // 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)); + } + }]); + + return InlineStylesEditing; + }(_ckeditor5Exports.Plugin); +}; + +/***/ }), + +/***/ "./src/PresetType.js": +/*!***************************!*\ + !*** ./src/PresetType.js ***! + \***************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); + +var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js"); + +var _propTypes2 = _interopRequireDefault(_propTypes); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +function attributeValueOrCssClass(props, propName, componentName) { + if (props[propName] && typeof props[propName] !== 'string') { + return new Error('Prop \'' + propName + '\' must be a string.'); + } + if (!props.attributeValue && !props.cssClass) { + return new Error('Either prop \'attributeValue\' or \'cssClass\' must be supplied to ' + componentName + '.'); + } +} + +exports.default = _propTypes2.default.shape({ + label: _propTypes2.default.string.isRequired, + + // keys are the option values + options: _propTypes2.default.objectOf(_propTypes2.default.shape({ + label: _propTypes2.default.string.isRequired, + attribute: _propTypes2.default.string, + attributeValue: attributeValueOrCssClass, + cssClass: attributeValueOrCssClass + })) +}); + +/***/ }), + +/***/ "./src/components/BlockStyleSelector.js": +/*!**********************************************!*\ + !*** ./src/components/BlockStyleSelector.js ***! + \**********************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +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"); + +var _react2 = _interopRequireDefault(_react); + +var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js"); + +var _propTypes2 = _interopRequireDefault(_propTypes); + +var _reactUiComponents = __webpack_require__(/*! @neos-project/react-ui-components */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js"); + +var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js"); + +var _plowJs = __webpack_require__(/*! plow-js */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js"); + +var _PresetType = __webpack_require__(/*! ../PresetType */ "./src/PresetType.js"); + +var _PresetType2 = _interopRequireDefault(_PresetType); + +var _neosUiReduxStore = __webpack_require__(/*! @neos-project/neos-ui-redux-store */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js"); + +var _neosUiCkeditor5Bindings = __webpack_require__(/*! @neos-project/neos-ui-ckeditor5-bindings */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js"); + +var CkEditorApi = _interopRequireWildcard(_neosUiCkeditor5Bindings); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +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); + + function BlockStyleSelector() { + var _ref; + + _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; + } + + _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; + } + + 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 + }); + } + }, { + key: 'handleOnSelect', + value: function handleOnSelect(optionIdentifier) { + CkEditorApi.executeCommand('blockStyles:' + this.props.presetIdentifier, { value: optionIdentifier }); + } + }]); + + return BlockStyleSelector; +}(_react.PureComponent), _class2.propTypes = { + // from outside props + presetIdentifier: _propTypes2.default.string.isRequired, + presetConfiguration: _PresetType2.default.isRequired, + + // from @connect + formattingUnderCursor: _propTypes2.default.object +}, _temp)) || _class); +exports.default = BlockStyleSelector; + +/***/ }), + +/***/ "./src/components/InlineStyleSelector.js": +/*!***********************************************!*\ + !*** ./src/components/InlineStyleSelector.js ***! + \***********************************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +Object.defineProperty(exports, "__esModule", { + value: true +}); +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"); + +var _react2 = _interopRequireDefault(_react); + +var _propTypes = __webpack_require__(/*! prop-types */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/prop-types/index.js"); + +var _propTypes2 = _interopRequireDefault(_propTypes); + +var _reactUiComponents = __webpack_require__(/*! @neos-project/react-ui-components */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/react-ui-components/index.js"); + +var _reactRedux = __webpack_require__(/*! react-redux */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/react-redux/index.js"); + +var _plowJs = __webpack_require__(/*! plow-js */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js"); + +var _PresetType = __webpack_require__(/*! ../PresetType */ "./src/PresetType.js"); + +var _PresetType2 = _interopRequireDefault(_PresetType); + +var _neosUiReduxStore = __webpack_require__(/*! @neos-project/neos-ui-redux-store */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-redux-store/index.js"); + +var _neosUiCkeditor5Bindings = __webpack_require__(/*! @neos-project/neos-ui-ckeditor5-bindings */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/neosProjectPackages/neos-ui-ckeditor5-bindings/index.js"); + +var CkEditorApi = _interopRequireWildcard(_neosUiCkeditor5Bindings); + +function _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) newObj[key] = obj[key]; } } newObj.default = obj; return newObj; } } + +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; + + _classCallCheck(this, InlineStyleSelector); + + for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { + args[_key] = arguments[_key]; + } + + var _this = _possibleConstructorReturn(this, (_ref = InlineStyleSelector.__proto__ || Object.getPrototypeOf(InlineStyleSelector)).call.apply(_ref, [this].concat(args))); + + _this.handleOnSelect = _this.handleOnSelect.bind(_this); + return _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; + } + + 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 + }); + } + }, { + key: 'handleOnSelect', + value: function handleOnSelect(optionIdentifier) { + CkEditorApi.executeCommand('inlineStyles:' + this.props.presetIdentifier, { value: optionIdentifier }); + } + }]); + + return InlineStyleSelector; +}(_react.PureComponent), _class2.propTypes = { + // from outside props + presetIdentifier: _propTypes2.default.string.isRequired, + presetConfiguration: _PresetType2.default.isRequired, + + // from @connect + formattingUnderCursor: _propTypes2.default.object +}, _temp)) || _class); +exports.default = InlineStyleSelector; + +/***/ }), + +/***/ "./src/index.js": +/*!**********************!*\ + !*** ./src/index.js ***! + \**********************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +__webpack_require__(/*! ./manifest */ "./src/manifest.js"); + +/***/ }), + +/***/ "./src/manifest.js": +/*!*************************!*\ + !*** ./src/manifest.js ***! + \*************************/ +/*! no static exports found */ +/***/ (function(module, exports, __webpack_require__) { + +"use strict"; + + +var _neosUiExtensibility = __webpack_require__(/*! @neos-project/neos-ui-extensibility */ "./node_modules/@neos-project/neos-ui-extensibility/dist/index.js"); + +var _neosUiExtensibility2 = _interopRequireDefault(_neosUiExtensibility); + +var _plowJs = __webpack_require__(/*! plow-js */ "./node_modules/@neos-project/neos-ui-extensibility/src/shims/vendor/plow-js/index.js"); + +var _InlineStylesEditing = __webpack_require__(/*! ./InlineStylesEditing */ "./src/InlineStylesEditing.js"); + +var _InlineStylesEditing2 = _interopRequireDefault(_InlineStylesEditing); + +var _InlineStyleSelector = __webpack_require__(/*! ./components/InlineStyleSelector */ "./src/components/InlineStyleSelector.js"); + +var _InlineStyleSelector2 = _interopRequireDefault(_InlineStyleSelector); + +var _BlockStyleEditing = __webpack_require__(/*! ./BlockStyleEditing */ "./src/BlockStyleEditing.js"); + +var _BlockStyleEditing2 = _interopRequireDefault(_BlockStyleEditing); + +var _BlockStyleSelector = __webpack_require__(/*! ./components/BlockStyleSelector */ "./src/components/BlockStyleSelector.js"); + +var _BlockStyleSelector2 = _interopRequireDefault(_BlockStyleSelector); + +function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } + +(0, _neosUiExtensibility2.default)('TechDivision.CkStyles:Styles', {}, function (globalRegistry, _ref) { + var frontendConfiguration = _ref.frontendConfiguration; + + + var ckEditorRegistry = globalRegistry.get('ckEditor5'); + var richtextToolbar = ckEditorRegistry.get('richtextToolbar'); + var config = ckEditorRegistry.get('config'); + + var inlineStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:InlineStyles']; + var blockStyleConfiguration = frontendConfiguration['TechDivision.CkStyles:BlockStyles']; + + // Block style + if (blockStyleConfiguration) { + + Object.keys(blockStyleConfiguration.presets).forEach(function (presetIdentifier) { + + var blockStylePresetConfiguration = blockStyleConfiguration.presets[presetIdentifier]; + + config.set('TechDivision.CkStyles:BlockStyles_' + presetIdentifier, function (ckEditorConfiguration, _ref2) { + var editorOptions = _ref2.editorOptions; + + var editing = (0, _BlockStyleEditing2.default)(presetIdentifier, blockStylePresetConfiguration); + ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || []; + ckEditorConfiguration.plugins.push(editing); + return ckEditorConfiguration; + }); + + richtextToolbar.set('blockStyles_' + presetIdentifier, { + component: _BlockStyleSelector2.default, + // Display only if the preset is activated in NodeType.yaml for this node property + isVisible: function isVisible(editorOptions, formattingUnderCursor) { + var isVisible = false; + if (editorOptions['blockStyling'] !== undefined && editorOptions['blockStyling'][presetIdentifier] !== undefined) { + isVisible = editorOptions['blockStyling'][presetIdentifier]; + } + return isVisible; + }, + presetIdentifier: presetIdentifier, + presetConfiguration: blockStylePresetConfiguration + }); + }); + } + + //Inline Style + if (inlineStyleConfiguration) { + + Object.keys(inlineStyleConfiguration.presets).forEach(function (presetIdentifier) { + + var inlineStylePresetConfiguration = inlineStyleConfiguration.presets[presetIdentifier]; + + config.set('TechDivision.CkStyle:InlineStyles_' + presetIdentifier, function (ckEditorConfiguration, _ref3) { + var editorOptions = _ref3.editorOptions; + + ckEditorConfiguration.plugins = ckEditorConfiguration.plugins || []; + ckEditorConfiguration.plugins.push((0, _InlineStylesEditing2.default)(presetIdentifier, inlineStylePresetConfiguration)); + return ckEditorConfiguration; + }); + + richtextToolbar.set('inlineStyles_' + presetIdentifier, { + component: _InlineStyleSelector2.default, + // Display only if the preset is activated in NodeType.yaml for this node property + isVisible: function isVisible(editorOptions, formattingUnderCursor) { + var isVisible = false; + if (editorOptions['inlineStyling'] !== undefined && editorOptions['inlineStyling'][presetIdentifier] !== undefined) { + isVisible = editorOptions['inlineStyling'][presetIdentifier]; + } + return isVisible; + }, + presetIdentifier: presetIdentifier, + presetConfiguration: inlineStylePresetConfiguration + }); + }); + } +}); + +/***/ }) + +/******/ }); +//# sourceMappingURL=Plugin.js.map \ No newline at end of file diff --git a/Resources/Public/JavaScript/CkStyles/Plugin.js.map b/Resources/Public/JavaScript/CkStyles/Plugin.js.map new file mode 100644 index 0000000..1ebe8f2 --- /dev/null +++ b/Resources/Public/JavaScript/CkStyles/Plugin.js.map @@ -0,0 +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 From fe3e376fb4297477f1e4373a835fff63108d07eb Mon Sep 17 00:00:00 2001 From: Maximilian Voggenauer Date: Fri, 8 Apr 2022 11:03:16 +0200 Subject: [PATCH 19/19] NCP-40 // Remove the GitHub Action as it has no use for us at the moment --- .../build-frontend-and-attach-to-tag.yml | 29 ------------------- 1 file changed, 29 deletions(-) delete mode 100644 .github/workflows/build-frontend-and-attach-to-tag.yml diff --git a/.github/workflows/build-frontend-and-attach-to-tag.yml b/.github/workflows/build-frontend-and-attach-to-tag.yml deleted file mode 100644 index a31abc0..0000000 --- a/.github/workflows/build-frontend-and-attach-to-tag.yml +++ /dev/null @@ -1,29 +0,0 @@ -name: NodeJS with Yarn and Upload to Tag - -on: push - -jobs: - build: - runs-on: ubuntu-latest - if: startsWith(github.ref, 'refs/tags/') - - strategy: - matrix: - node-version: [ 14.x ] - - steps: - - uses: actions/checkout@v3 - - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v3 - with: - node-version: ${{ matrix.node-version }} - - - name: Build - run: | - ./build.sh - - - name: Upload - uses: softprops/action-gh-release@v1 - with: - files: Resources/Public/**/* # Upload every file that is built in any subfolder of Resource/Public/