{"version":3,"sources":["../vendor/ckeditor5-build-custom/build/ckeditor.js","../vendor/ckeditor5-build-custom/build/translations/it.js","middlewares/request/requestActions.ts","components/hero/index.jsx","components/fullscreen-dialog/index.jsx","components/custom-dialog-title/index.jsx","components/catalog-metadata-button/index.jsx","components/sanitized-html/index.jsx","components/catalog-info-button/index.jsx","components/custom-link/index.jsx","components/cards-grid/index.jsx","components/page-section/index.jsx","components/page/index.jsx","state/user/userReducer.ts","serverApi/urls.ts","components/settings-dialog/index.jsx","constants/getUserErrorsTranslations.js","components/user-errors/index.jsx","components/user-login-dialog/user-recover-password-form/index.jsx","state/user/userActions.ts","components/user-login-dialog/index.jsx","state/usersConfig/usersConfigActions.ts","utils/i18n.js","utils/formatters.js","components/settings-select/users-settings-form/user-settings-form/index.jsx","components/button-select/index.jsx","components/user-select/user-change-password-form/index.jsx","hocs/call/index.jsx","components/user-select/edit-user-form/index.jsx","state/rootActions.ts","middlewares/persistence/middleware.js","utils/user.ts","utils/dashboards.js","utils/jsonStat.js","components/label-format-selector/constants.js","utils/criteria.js","state/otherConfig/otherConfigActions.ts","links.js","components/custom-material-table/index.jsx","components/settings-select/user-views-settings-form/index.jsx","components/selector/index.jsx","components/i18n-input-adornment-select/index.jsx","components/i18n-delayed-text-field/index.jsx","components/html-editor/index.jsx","components/i18n-html-editor/index.jsx","constants/getDashboardDynamicFilterLabelTranslations.js","components/dashboard-builder/index.jsx","components/attribute-list/index.jsx","utils/download.js","state/dataset/datasetActions.ts","utils/tree.js","middlewares/fetchDatasetAsyncHandler/actions.js","components/custom-empty/index.jsx","utils/other.js","constants/getNutsLevelTranslations.js","utils/style.js","components/infinite-scroll-table/sort-buttons/index.jsx","components/infinite-scroll-table/contants.js","components/infinite-scroll-table/utils.js","components/auto-search-input/index.jsx","components/infinite-scroll-table/pre-header/index.jsx","components/infinite-scroll-table/footer/index.jsx","components/infinite-scroll-table/filter-button/index.jsx","components/infinite-scroll-table/index.jsx","components/chart-settings/Colors.jsx","components/chart/index.jsx","state/spinner/spinnerActions.ts","components/map/index.jsx","utils/validator.js","middlewares/action-decorator/actionDecoratorMiddlewareFactory.js","state/dataset/datasetReducer.ts","constants/getTimingsLabelTranslation.js","components/data-viewer/Timings.jsx","components/i18n-text-field/index.jsx","components/data-viewer/ViewBuilder.jsx","components/table/utils.js","components/table/Scrollbars.jsx","components/table/index.jsx","components/data-viewer/TemplateBuilder.jsx","components/query/index.jsx","components/attribute-button/index.jsx","components/dimension-attribute-list/index.jsx","components/attribute-icon/index.jsx","components/data-viewer/Header.jsx","components/data-viewer/Sidebar.jsx","components/data-viewer/Footer.jsx","components/dataset-filters/index.jsx","components/enhanced-tree/index.jsx","components/custom-date-picker/index.jsx","components/criteria/TimePeriod.jsx","components/criteria/index.jsx","components/layout-section/index.jsx","components/table-layout/index.jsx","components/font-size-selector/index.jsx","components/custom-icons/AreaIcon.jsx","components/custom-icons/RadarIcon.jsx","components/custom-icons/PolarIcon.jsx","components/custom-icons/PyramindIcon.jsx","components/chart-layout/index.jsx","components/label-format-selector/index.jsx","components/chart-settings/index.jsx","components/map-settings/index.jsx","components/variation-selector/index.jsx","components/data-viewer/index.jsx","middlewares/fetchDashboardDatasetAsyncHandler/actions.js","state/dashboard/dashboardReducer.ts","state/dashboard/dashboardActions.ts","components/dashboard/DashboardCol.jsx","components/dashboard/DashboardRow.jsx","components/dashboard/index.jsx","components/settings-select/user-dashboards-settings-form/index.jsx","components/user-select/index.jsx","components/categories-tree/index.jsx","state/hubConfig/hubConfigActions.ts","components/file-input/index.jsx","components/dashboards-manager/index.jsx","components/info-tooltip/index.jsx","components/form-label-with-tooltip/index.jsx","components/settings-select/app-settings-form/index.jsx","state/nodesConfig/nodesConfigActions.ts","components/settings-select/nodes-settings-form/node-settings-form/index.jsx","state/cache/cacheActions.ts","components/settings-select/nodes-settings-form/cache-setting-form/index.jsx","state/noteTemplatesConfig/nodeTemplatesConfigActions.ts","components/settings-select/nodes-settings-form/templates-settings-form/index.jsx","components/settings-select/nodes-settings-form/permissions-settings-form/index.jsx","state/nodePermissionsConfig/nodePermissionsConfigActions.ts","components/settings-select/nodes-settings-form/dashboards-settings-form/index.jsx","components/settings-select/nodes-settings-form/index.jsx","components/settings-select/users-settings-form/index.jsx","components/settings-select/index.jsx","components/settings-select/actions.js","components/autocomplete-search-input/index.jsx","components/search-dialog/index.jsx","components/app-language-select/index.jsx","components/a11y-select/index.jsx","components/app-info/index.jsx","components/node-header/index.jsx","components/footer/index.jsx","components/home/index.jsx","state/hub/hubActions.ts","components/node/index.jsx","state/catalog/catalogActions.ts","components/results/ResultTree.jsx","components/results/getDownloadButtonStyle.js","components/results/DatasetCard.jsx","components/results/utils.js","components/results/index.jsx","components/data/index.jsx","domains/DatasetDomain.jsx","components/dashboard-filters/index.jsx","state/pending-request/pendingRequestActions.ts","components/dashboards/index.jsx","domains/DashboardsDomain.jsx","components/categories-lists/index.jsx","components/categories/index.jsx","domains/NodeDomain.jsx","state/node/nodeActions.ts","domains/MultiLanguageDomain.jsx","state/app/appActions.ts","utils/defaultTheme.js","components/not-implemented-snackbar/NotImplementedSnackbar.jsx","components/error-snackbar/ErrorSnackbar.jsx","components/delete-conflict-modal/index.jsx","state/delete-conflict-modal/deleteConflictModalActions.ts","components/user-set-password-dialog/user-set-password-form/index.jsx","components/user-set-password-dialog/index.jsx","components/spinner/Spinner.jsx","components/error-boundary/index.jsx","components/with-custom-theme/index.jsx","domains/A11yDomain.jsx","domains/HubDomain.jsx","App.jsx","state/hub/hubReducer.ts","state/node/nodeReducer.ts","model/LocalCategoryProvider.ts","state/pending-request/pendingRequestReducer.ts","state/rootReducer.ts","state/spinner/spinnerReducer.ts","state/appConfig/appConfigReducer.ts","state/config/configReducer.ts","state/dashboardConfig/dashboardConfigReducer.ts","state/app/appReducer.ts","state/noteTemplatesConfig/nodeTemplatesConfigReducer.ts","state/catalog/catalogReducer.ts","state/hubConfig/hubConfigReducer.ts","state/nodesConfig/nodesConfigReducer.ts","state/cache/cacheReducer.ts","state/otherConfig/otherConfigReducer.ts","state/usersConfig/usersConfigReducer.ts","state/nodePermissionsConfig/nodePermissionsConfigReducer.ts","state/delete-conflict-modal/deleteConflictModalReducer.ts","middlewares/user/userMiddlewareFactory.js","middlewares/request/requestMiddlewareFactory.ts","middlewares/config/configMiddleware.js","middlewares/file-save/middleware.js","middlewares/i18n-middleware/middleware.js","middlewares/request-spinner/requestSpinnerMiddlewareFactory.js","middlewares/feedback/feedbackMiddleware.js","middlewares/fetchDatasetAsyncHandler/middlewareFactory.js","middlewares/fetchDashboardDatasetAsyncHandler/middlewareFactory.js","middlewares/a11y-middleware/middleware.js","middlewares/node/middleware.js","init.js","index.jsx"],"names":["t","e","en","dictionary","Object","assign","Alignment","Aquamarine","Background","Black","Blue","Bold","Border","Cancel","Circle","Color","Column","Dashed","Decimal","Dimensions","Disc","Dotted","Double","Downloadable","Green","Grey","Groove","Heading","Height","Inset","Italic","Justify","Link","Next","None","Orange","Outset","Padding","Paragraph","Previous","Purple","Red","Redo","Ridge","Row","Save","Solid","Square","Strikethrough","Style","Turquoise","Underline","Undo","Unlink","White","Width","Yellow","window","CKEDITOR_TRANSLATIONS","module","exports","n","o","i","l","call","m","c","d","defineProperty","enumerable","get","r","Symbol","toStringTag","value","__esModule","create","bind","default","prototype","hasOwnProperty","p","s","JSON","stringify","name","context","data","is","message","stack","Error","console","warn","a","error","document","querySelector","HTMLIFrameElement","contentDocument","head","length","identifier","base","concat","h","u","css","media","sourceMap","references","updater","push","f","createElement","attributes","nonce","nc","keys","forEach","setAttribute","insert","appendChild","filter","Boolean","join","styleSheet","cssText","createTextNode","childNodes","removeChild","insertBefore","removeAttribute","btoa","unescape","encodeURIComponent","firstChild","g","singleton","parentNode","all","atob","toString","splice","Array","isArray","iterator","next","done","return","slice","constructor","from","test","TypeError","sources","map","sourceRoot","this","self","Function","nodeType","Buffer","isBuffer","process","require","types","binding","CKEDITOR_VERSION","allocUnsafe","copy","webpackPolyfill","children","version","names","mappings","sourcesContent","Ga","$a","hu","getPrototypeOf","b","k","w","_","C","A","y","x","E","P","clear","set","__data__","size","delete","pop","has","V","I","M","z","L","H","exec","IE_PROTO","j","q","W","G","$","U","J","Y","RegExp","replace","Q","K","Z","X","tt","et","it","st","lt","dt","mt","ut","kt","hash","string","wt","Ct","At","yt","xt","configurable","writable","Et","St","Dt","Bt","Pt","It","Rt","propertyIsEnumerable","Ft","arguments","Ot","Nt","Mt","Vt","zt","Lt","Kt","jt","qt","isTypedArray","Wt","Gt","$t","Tt","String","Ut","Jt","Yt","Qt","Zt","te","Xt","oe","ie","ne","re","ae","ce","de","he","ue","getOwnPropertySymbols","me","le","pe","fe","ke","we","_e","Ce","Ae","ve","ye","xe","Ee","Se","De","Te","Be","Pe","Ie","Re","Fe","Oe","ArrayBuffer","resolve","Ne","Me","ze","Uint8Array","Le","byteLength","Ke","qe","We","valueOf","$e","buffer","byteOffset","Ue","He","source","lastIndex","je","Ge","Je","Ye","Qe","Ze","isMap","tn","nn","isSet","on","rn","sn","cn","ln","index","input","Ve","be","se","ge","ee","add","keysIn","vt","dn","hn","un","_config","define","mn","_setObjectToTarget","_setToTarget","_getFromSource","split","gn","fn","path","stop","called","off","bn","fill","kn","Math","random","wn","normal","highest","high","low","lowest","_n","Cn","An","vn","listenTo","once","stopListening","xn","yn","emitter","callbacks","En","childEvents","substr","lastIndexOf","Sn","priority","callback","Bn","fire","Dn","apply","_delegations","Tn","rethrowUnexpectedError","delegate","to","Map","stopDelegating","_events","indexOf","Pn","In","getOwnPropertyNames","getOwnPropertyDescriptor","Rn","_items","_itemMap","_idProperty","idProperty","_bindToExternalToInternalMap","WeakMap","_bindToInternalToExternalMap","_skippedIndexesFromExternal","_getItemIdBeforeAdding","addMany","added","removed","_remove","find","_bindToCollection","as","_setUpBindToBinding","using","getIndex","remove","reduce","Fn","_context","_plugins","_availablePlugins","pluginName","_contextPlugins","plugin","Set","plugins","Promise","reject","then","includes","requires","isContextPlugin","requiredBy","_add","catch","destroy","plugin1","plugin2","On","quantity","id","plural","getPluralForm","Number","Nn","Mn","uiLanguage","contentLanguage","uiLanguageDirection","Vn","contentLanguageDirection","_t","zn","config","defaultConfig","builtinPlugins","locale","ui","editors","_contextOwner","Plugin","init","initPlugins","Ln","min","Hn","Kn","parent","root","unshift","includeSelf","parentFirst","getAncestors","getPath","isBefore","_removeChildren","_fireChange","getChildIndex","getChild","jn","_textData","qn","textNode","substring","offsetInText","Wn","Gn","_patterns","classes","$n","element","pattern","match","hasAttribute","getAttribute","getClassNames","hasClass","styles","hasStyle","getStyle","Un","Jn","Yn","Xn","cache","Cache","Zn","eo","no","charCodeAt","io","ro","so","oo","ao","co","Qn","ho","uo","mo","po","go","lo","bo","ko","wo","Co","vo","_o","Ao","xo","Eo","So","max","To","Bo","Po","Date","now","Io","Ro","Do","Oo","Fo","No","yo","Vo","Mo","zo","_styles","_styleProcessor","charAt","trim","entries","toNormalizedForm","isEmpty","getReducedForm","Ho","fo","_cleanEmptyObjectsOnPath","getNormalized","_getStylesEntries","sort","getStyleNames","Lo","_normalizers","_extractors","_reducers","_consumables","Ko","_mapStyleNames","jo","_attrs","_children","_insertChild","_classes","qo","stylesProcessor","setTo","_customProperties","getAsString","getChildren","_clone","getFillerOffset","childCount","Wo","Go","$o","Uo","Jo","Yo","Qo","Zo","ni","property","ti","toMany","ei","_observable","_bindProperties","_to","_bindings","unbind","decorate","object","methodName","Xo","properties","observable","oi","every","ii","selection","editableElement","isFocused","ri","si","rootName","getCustomProperty","_setCustomProperty","ai","boundaries","startPosition","direction","position","ci","_createAt","singleCharacters","shallow","ignoreElementEnd","_boundaryStartParent","start","_boundaryEndParent","end","_next","_previous","clone","offset","isAtEnd","_createAfter","_formatReturnValue","isAtStart","_createBefore","isEqual","type","item","previousPosition","nextPosition","skip","compareWith","li","getLastMatchingPosition","di","isAfter","nodeAfter","nodeBefore","isCollapsed","containsPosition","isIntersecting","getCommonAncestor","nextSibling","previousSibling","getShiftedBy","_createFromParentsAndOffsets","offsetSize","_createFromPositionAndShift","hi","_ranges","_lastRangeBackward","_isFake","_fakeSelectionLabel","getFirstRange","getLastRange","isFake","fakeSelectionLabel","rangeCount","anchor","focus","isBackward","getRanges","getTrimmed","getContainedElement","_setRanges","_setFakeOptions","mi","fake","label","backward","_createIn","_createOn","_addRange","_pushRange","addedRange","intersectingRange","_selection","getFirstPosition","getLastPosition","getSelectedElement","isSimilar","setFocus","gi","roots","_postFixers","pi","fi","_priority","_id","_clonesGroup","bi","DEFAULT_PRIORITY","ki","wi","_i","navigator","userAgent","toLowerCase","Ci","Ai","search","vi","ctrl","shift","alt","yi","arrowleft","arrowup","arrowright","arrowdown","backspace","enter","space","esc","tab","cmd","fromCharCode","xi","key","keyCode","altKey","ctrlKey","shiftKey","Ei","Pi","Si","Di","Ti","Bi","Ii","Fi","toDomElement","getAttributeKeys","Oi","Ni","Mi","Vi","_cloneGroups","_setTo","_setFocus","_document","render","_setAttribute","_removeAttribute","_addClass","_removeClass","_setStyle","_removeStyle","_removeCustomProperty","_breakAttributes","_breakAttributesRange","move","_removeFromClonedElementsGroup","mergeAttributes","ji","_appendChild","qi","Wi","some","zi","_addToClonedElementsGroup","$i","getWalker","_wrapPosition","setSelection","_wrapRange","_unwrapChildren","getAttributes","_wrapAttributeElement","Li","_wrapChildren","_unwrapAttributeElement","Hi","Ki","createAttributeElement","POSITIVE_INFINITY","wrap","Ui","setStyle","addClass","removeClass","removeStyle","Gi","getIdentity","_data","Ji","Yi","Qi","dataset","ckeFiller","Xi","Zi","tr","er","nr","domTarget","ownerDocument","defaultView","getSelection","getRangeAt","collapsed","startContainer","startOffset","collapse","or","ir","firstIndex","lastIndexOld","lastIndexNew","rr","values","howMany","reverse","sr","fastDiff","ar","cr","lr","Document","Node","dr","domDocuments","domConverter","markedAttributes","markedChildren","markedTexts","_inlineFiller","_fakeSelectionContainer","mapViewToDom","_updateChildrenMappings","_isSelectionInInlineFiller","_removeInlineFiller","_getInlineFillerPosition","_needsInlineFillerAtSelection","_updateAttrs","_updateChildren","inlineFillerPosition","_updateText","viewPositionToDom","hr","_updateSelection","_updateFocus","viewChildrenToDom","withChildren","_diffNodeLists","_findReplaceActions","equal","_updateElementMappings","unbindDomElement","bindElements","findAncestor","findCorrespondingDomText","viewToDom","insertData","deleteData","_markDescendantTextToSync","domToView","mr","ur","_removeDomSelection","_removeFakeSelection","_updateFakeSelection","_updateDomSelection","style","top","left","width","textContent","bindFakeSelection","_fakeSelectionNeedsUpdate","parentElement","createRange","removeAllRanges","selectNodeContents","addRange","_domSelectionNeedsUpdate","extend","ELEMENT_NODE","tagName","isDomSelectionCorrect","domSelectionToView","anchorNode","contains","activeElement","mapDomToView","COMMENT_NODE","isBlockFiller","gr","pr","fr","DOCUMENT_NODE","br","kr","blockFillerMode","preElements","blockElements","_blockFiller","_domToViewMapping","_viewToDomMapping","_fakeSelectionMapping","_processDataFromViewText","createDocumentFragment","bindDocumentFragments","createElementNS","setStart","setEnd","getHostViewElement","_processDataFromDomText","isComment","isDocumentFragment","keepOriginalCase","domChildrenToView","fakeSelectionToView","isDomSelectionBackward","domRangeToView","domPositionToView","endContainer","endOffset","findCorrespondingViewText","isElement","scrollX","scrollY","_r","scrollLeft","scrollTop","scrollTo","DOCUMENT_FRAGMENT_NODE","isEqualNode","Cr","anchorOffset","focusNode","focusOffset","detach","_isDomSelectionPositionCorrect","_getTouchingViewTextNode","_nodeEndsWithSpace","wr","_getTouchingInlineDomNode","_checkShouldLeftTrimDomText","_checkShouldRightTrimDomText","Text","createTreeWalker","NodeFilter","SHOW_TEXT","SHOW_ELEMENT","acceptNode","FILTER_ACCEPT","FILTER_SKIP","currentNode","Ar","vr","_getProxyEmitter","yr","attach","xr","_domNode","_domListeners","capture","useCapture","passive","usePassive","_createDomListener","addEventListener","removeListener","removeEventListener","Er","view","isEnabled","disable","matches","Tr","Br","Pr","Ir","Rr","Fr","Or","Nr","Mr","zr","Hr","Kr","jr","qr","Wr","Vr","Lr","Gr","$r","Ur","childList","characterData","characterDataOldValue","subtree","renderer","_renderer","_domElements","_mutationObserver","MutationObserver","_onMutations","takeRecords","observe","disconnect","target","_isBogusBrMutation","oldText","newText","node","markToSync","oldChildren","newChildren","forceRender","removedNodes","addedNodes","Jr","domEvent","preventDefault","stopPropagation","Yr","domEventType","checkShouldIgnoreEventFromTarget","onDomEvent","Qr","metaKey","Xr","Zr","ts","es","ns","os","parseInt","NaN","rs","ss","setTimeout","clearTimeout","leading","maxWait","trailing","cancel","flush","cs","_fireSelectionChangeDoneDebounced","_handleSelectionMove","oldSelection","newSelection","domSelection","ls","mutationObserver","getObserver","_documents","WeakSet","_clearInfiniteLoopInterval","setInterval","_clearInfiniteLoop","_loopbackCounter","_handleSelectionChange","clearInterval","hasDomSelection","ds","_renderTimeoutId","hs","isComposing","us","ms","gs","getComputedStyle","borderTopWidth","right","borderRightWidth","bottom","borderBottomWidth","borderLeftWidth","ps","fs","_source","getDomRangeRects","bs","getBoundingRect","getBoundingClientRect","innerWidth","innerHeight","height","getIntersection","getArea","ks","commonAncestorContainer","documentElement","clientWidth","clientHeight","offsetWidth","offsetHeight","getClientRects","NEGATIVE_INFINITY","body","ws","viewportOffset","Es","Cs","Ss","Ds","_s","frameElement","moveBy","excludeScrollbarsAndBorders","vs","As","ys","xs","scrollViewportToShowTarget","scrollAncestorsToShowTarget","Ts","domRoots","_initialDomRootAttributes","_observers","_ongoingChange","_postFixersInProgress","_renderingDisabled","_hasChangedSinceTheLastRendering","_writer","addObserver","Ri","_render","getRoot","_name","isReadOnly","change","enable","viewRangeToDom","isRenderingInProgress","_callPostFixers","disableObservers","enableObservers","Bs","getChildStartOffset","Ps","Is","Rs","_nodes","_insertNodes","getNodeIndex","maxOffset","getNodeStartOffset","nodeList","toJSON","Fs","getNode","offsetToIndex","_removeNodes","fromJSON","Os","Ms","stickiness","_visitedParent","Vs","zs","Ns","Ls","getParentPath","_getTransformedByInsertOperation","_getTransformedByMoveOperation","_getTransformedBySplitOperation","_getTransformedByMergeOperation","_getTransformedByInsertion","_getTransformedByMove","sourcePosition","targetPosition","movedRange","_getCombined","splitPosition","moveTargetPosition","graveyardPosition","insertionPosition","_getTransformedByDeletion","deletionPosition","graveyard","Hs","isTouching","getCommonPath","getTransformedByOperation","containsRange","getDifference","Ks","_modelToViewMapping","_viewToModelMapping","_viewToModelLengthCallbacks","_markerNameToElements","_elementToMarkerNames","_unboundMarkerNames","viewPosition","modelPosition","findPositionIn","findMappedViewAncestor","_toModelOffset","toModelElement","toViewElement","toModelPosition","toViewPosition","mapper","isPhantom","getElementsWithSameId","getModelLength","_moveViewPositionToTextNode","js","_consumable","_textProxyRegistry","qs","_getSymbolForTextProxy","_addSymbolForTextProxy","Ws","conversionApi","dispatcher","_reconversionEventsMapping","getMarkersToRemove","convertMarkerRemove","range","_mapChangesWithAutomaticReconversion","convertInsert","convertRemove","reconvertElement","convertAttribute","attributeKey","attributeOldValue","attributeNewValue","flushUnboundMarkerNames","getRange","convertMarkerAdd","getMarkersToAdd","writer","consumable","_createInsertConsumable","$s","_convertInsertWithAttributes","_clearConversionApi","_createConsumableForRange","_testAndFire","Us","createRangeOn","unbindViewElement","getMarkersAtPosition","_createSelectionConsumable","Gs","markerName","markerRange","getItems","getChanges","_isReconvertTriggerEvent","containsItem","Js","_removeAllRanges","directChange","_popRange","attributeKeys","Xs","Zs","Qs","_checkRange","Ys","model","schema","isBlock","isLimit","ta","ea","isDocumentOperation","na","_createFromRanges","toRange","oa","ia","ra","getSelectedBlocks","containsEntireContent","_updateMarkers","_updateAttributes","_getStoredAttributes","overrideGravity","restoreGravity","hasOwnRange","isGravityOverridden","markers","startsWith","_model","_attributePriority","_selectionRestorePosition","_hasChangedRange","_overriddenGravityRegister","_fixGraveyardSelection","_validateSelectionRange","differ","enqueueChange","_getDefaultRange","uid","_prepareRange","fromRange","oldMarkers","_getSurroundingAttributes","_setAttributesTo","sa","isInline","isObject","getNearestSelectionRange","aa","_dispatchers","ca","la","ua","consume","converterPriority","triggerBy","_mapReconversionTriggerEvent","ma","toViewRange","unwrap","ga","isOpening","bindElementToMarker","markerNameToElements","unbindElementFromMarkerName","clearClonedElementsGroup","pa","da","group","ha","checkChild","createUIElement","createContainerElement","fa","getRootNames","insertElement","ba","createContext","ka","createPositionAt","wa","_a","va","ya","Ca","Aa","xa","modelCursor","modelRange","convertChildren","viewItem","safeInsert","updateConversionResult","checkAttribute","Ea","downcastDispatcher","_disableRendering","convertChanges","convertSelection","toModelRange","createSelection","createText","createRangeIn","isAttached","breakAttributes","bindTo","Sa","_commands","commandName","execute","commands","Da","Ta","revert","consumablesFromElement","createFrom","_canConsumeName","_test","_consume","_revert","getRelatedStyles","Ba","_sourceDefinitions","_attributeProperties","Pa","getDefinition","itemName","_clearCache","_compiledDefinitions","_compile","getDefinitions","isSelectable","isContent","_checkContextMatch","last","allowAttributes","checkMerge","getAttributeProperties","getMinimalFlatRanges","_getValidRangesForRange","walker","Ka","getPositions","Ia","Ra","Fa","Oa","Na","Ma","Va","getItem","allowIn","Ha","getNames","endsWith","allowContentOf","allowWhere","allowAttributesOf","inheritTypesFrom","za","inheritAllFrom","La","ja","_splitParts","_cursorParents","_modelCursor","convertItem","_convertItem","_convertChildren","_safeInsert","_updateConversionResult","splitToAllowedParent","_splitToAllowedParent","getSplitParts","_getSplitParts","append","store","_removeEmptyElements","createPositionBefore","createPositionAfter","findAllowedParent","_registerSplitPair","cursorParent","qa","processor","upcastDispatcher","viewDocument","_viewWriter","_checkIfRootsExists","hasContent","ignoreWhitespaces","toView","toData","clearBindings","options","main","parse","removeSelectionAttribute","toModel","convert","Wa","_helpers","_downcast","_createConversionHelpers","dispatchers","isDowncast","_upcast","for","elementToElement","attributeToElement","elementToAttribute","attributeToAttribute","upcastAlso","Ua","operations","batch","baseVersion","Ja","__className","className","Ya","Qa","tc","ec","Xa","isFlat","Za","oc","ic","rc","oldValue","newValue","sc","ac","getMovedRangeStart","cc","nodes","shouldReceiveAttributes","lc","oldRange","newRange","affectsData","_markers","dc","oldName","newName","hc","uc","mc","getInsertionPosition","gc","pc","_assertWriterUsedCorrectly","_c","addOperation","applyOperation","usingOperation","updateMarker","addMarker","fc","bc","_addOperationForAffectedMarkers","wc","_merge","_mergeDetached","createPositionFromPath","kc","_set","managedUsingOperations","_refresh","_setSelectionAttribute","_removeSelectionAttribute","_overrideGravity","_restoreGravity","_getStoreAttributeKey","_currentWriter","Cc","_markerCollection","_changesInElement","_elementSnapshots","_changedMarkers","_changeCount","_cachedChanges","_cachedChangesWithGraveyard","_isInInsertedElement","_markRemove","_markInsert","getMarkersIntersectingRange","bufferMarkerChange","_markAttribute","includeChangesInGraveyard","Ac","vc","_getInsertDiff","_getRemoveDiff","_getAttributesDiff","changeCount","yc","count","_markChange","_removeAllNestedChanges","_makeSnapshot","_getChangesForElement","_handleChange","nodesToHandle","repeat","xc","_operations","_undoPairs","_undoneOperations","Ec","Sc","Dc","Tc","history","_hasSelectionChangedFromTheLastChangeBlock","createRoot","operation","bufferOperation","_hasDocumentChangedFromTheLastChangeBlock","refresh","hasDataChanges","reset","_getDefaultRoot","Bc","Pc","Ic","_attachLiveRange","_managedUsingOperations","_affectsData","_destroyMarker","_detachLiveRange","_liveRange","Rc","Fc","Oc","Nc","Mc","toPosition","Vc","canMergeWith","_filterAttributesOf","_affectedStart","_affectedEnd","_handleNode","isFirst","isLast","removeDisallowedAttributes","nodeToSelect","_handleObject","_checkAndSplitToAllowedPosition","_insert","_mergeSiblingsOf","_handleDisallowedNode","_tryAutoparagraphing","handleNodes","fromPosition","_setAffectedBoundaries","_canMergeLeft","_canMergeRight","merge","_getAllowedIn","Lc","Kc","Hc","rename","clearAttributes","setAttributes","fromEntries","jc","qc","Wc","Gc","isForward","unit","Uc","Jc","$c","Yc","Xc","getLimitElement","tl","Zc","el","_pendingChanges","_validate","register","addChildCheck","registerPostFixer","Qc","_runPendingChanges","_execute","deleteContent","doNotAutoparagraph","getSelectionRange","getAffectedRange","doNotResetEntireContent","ignoreMarkers","modifySelection","leaveUnmerged","zc","setSelectionFocus","getNodeByPath","appendText","cloneElement","_handleChangeBlock","nl","_listener","ol","editor","il","language","_addEditor","_getEditorConfig","state","editing","conversion","addAlias","keystrokes","_removeEditor","sl","updateSourceElement","sourceElement","HTMLTextAreaElement","innerHTML","al","implementation","createHTMLDocument","cl","_domParser","DOMParser","_domConverter","_htmlWriter","getHtml","_toDom","parseFromString","ll","_components","originalName","dl","hl","_elements","_nextEventLoopTimeout","_focus","_blur","focusedElement","ul","componentFactory","focusTracker","_editableElementsMap","update","ckeditorInstance","editorUI","ml","gl","pl","injectType","locals","bl","wl","_l","text","isDirectHost","hostElement","kl","Cl","_replacedElements","newElement","display","Al","_toolbarConfig","items","_elementReplacer","editable","setEditableElement","attachDomRoot","_initPlaceholder","_initToolbar","restore","detachDomRoot","stickyPanel","limiterElement","viewportTopOffset","toolbar","fillFromConfig","origin","originKeystrokeHandler","originFocusTracker","beforeFocus","afterBlur","vl","_renderViewIntoCollectionParent","_parentElement","isRendered","yl","Fl","Rl","_isRendered","_revertData","_renderNode","intoFragment","bindings","isApplying","revertData","_revertTemplateFromNode","Ll","Hl","tag","_renderText","_renderElement","_renderAttributes","_renderElementChildren","_setUpListeners","Dl","_bindToObservable","Bl","jl","Pl","_renderStyleAttribute","zl","Nl","setAttributeNS","Il","Kl","setParent","eventListeners","activateDomEventListener","Tl","activateAttributeListener","El","eventNameOrFunction","attribute","if","Sl","valueIfTrue","Vl","Ml","xl","getValue","removeAttributeNS","Ol","Gl","ql","_viewCollections","_unboundChildren","createCollection","template","registerChild","getViews","_bindTemplate","$l","Ul","_bodyCollectionContainer","class","dir","xmlns","childElementCount","Jl","Ql","attachToDom","detachFromDom","Xl","td","bindTemplate","setTemplate","ed","_voiceLabelView","_createVoiceLabel","role","lang","extendTemplate","od","_editingView","_editableElement","_hasExternalElement","_updateIsFocusedClasses","rd","ad","cd","content","_contentPanelPlaceholder","_panelRect","_contentPanel","limiterBottomOffset","marginLeft","_checkIfShouldBeSticky","_limiterRect","isSticky","isActive","_isStickyToTheLimiter","_hasViewportTopOffset","_marginLeft","ld","actions","keystrokeHandler","first","previous","current","focusables","dd","_getFocusableItem","hd","ud","_observerInstance","_createObserver","_element","_callback","_addElementCallback","_deleteElementCallback","_elementCallbacks","_getElementCallbacks","unobserve","ResizeObserver","md","_previousRects","_periodicCheckTimeout","_checkElementRectsAndExecuteCallback","_startPeriodicCheck","_stopPeriodicCheck","_hasRectChanged","contentRect","gd","selectstart","focusLast","pd","bd","positions","limiter","fitInViewport","offsetParent","viewportRect","elementRect","targetRect","limiterRect","kd","getIntersectionArea","positionName","positionRect","limiterIntersectArea","viewportIntersectArea","wd","getVisible","_d","moveTo","Cd","buttonView","panelView","isOpen","panelPosition","_getOptimalPosition","_panelPositions","defaultPanelPositions","southEast","southWest","northEast","northWest","Ad","yd","viewBox","_updateXMLContent","_colorFillPaths","fillColor","querySelectorAll","xd","Sd","Dd","Bd","tooltipView","_createTooltipView","labelView","_createLabelView","iconView","keystrokeView","_createKeystrokeView","_getTooltipString","tabindex","isToggleable","mousedown","click","icon","withKeystroke","Pd","Id","arrowView","_createArrowView","Rd","Od","_focusCycler","focusPrevious","focusNext","focusFirst","Nd","Md","Vd","Ld","toggleSwitchView","_createToggleView","Hd","activator","contextElements","composedPath","Kd","qd","Gd","$d","toolbarView","Qd","Ud","listView","Jd","itemsView","Xd","maxWidth","_behavior","shouldGroupWhenFull","th","Zd","viewChildren","viewFocusables","viewItemsView","viewFocusTracker","viewLocale","ungroupedItems","groupedItems","groupedItemsDropdown","_createGroupedItemsDropdown","resizeObserver","cachedPadding","shouldUpdateGroupingOnNextResize","_updateFocusCycleableItems","_updateGrouping","viewElement","_enableGroupingOnResize","_enableGroupingOnMaxWidthChange","_areItemsOverflowing","_groupLastItem","_ungroupFirstItem","tooltip","lastChild","eh","oh","shouldToolbarGroupWhenFull","ih","form","submit","initialData","setData","getData","rh","_disableStack","sh","ah","forceDisabled","clearForceDisabled","ch","lh","dh","hh","uh","mh","gh","_canBeAligned","ph","setAttributeProperties","isFormatting","fh","bh","kh","wh","_h","Ch","_addButton","isVertical","ariaLabel","findIndex","localizedOptionTitles","center","justify","Ah","vh","testCallback","hasMatch","_startListening","_evaluateTextBeforeSelection","xh","Eh","Th","Bh","Ph","Ih","Rh","Fh","Oh","Nh","Mh","Vh","Lh","zh","Sh","Hh","yh","Kh","jh","qh","Wh","Gh","$h","href","setCustomProperty","Uh","Jh","Yh","Qh","Xh","_enableTypingHandling","_enableEnterHandling","_enableShiftEnterHandling","Zh","url","isInput","_applyAutoLink","_checkAndApplyAutoLinkOnRange","checkAttributeInSelection","tu","_getValueFromFirstAllowedNode","forceValue","setSelectionAttribute","getValidRanges","eu","nu","copyOnEnter","ou","iu","keystroke","ru","files","kind","getAsFile","_native","su","dropRange","dataTransfer","targetRanges","clipboardData","clientX","clientY","caretRangeFromPoint","rangeParent","rangeOffset","au","asPlainText","cu","du","getSelectedContent","method","_htmlDataProcessor","scrollToTheSelection","insertContent","lu","uu","mu","gu","isSoft","pu","fu","bu","ku","wu","createEmptyElement","_u","Cu","Au","vu","yu","xu","Eu","limit","isLocked","_changeCallback","_batch","_reset","_selectionChangeCallback","createBatch","Su","_buffer","_batches","resultRange","lock","unlock","Du","Tu","Bu","Pu","Iu","_handleContainerChildrenMutations","_handleTextMutation","_handleTextNodeInsertion","Ru","Fu","firstChangeAt","insertions","deletions","Ou","handle","Nu","_shouldEntireContentBeReplacedWithParagraph","sequence","_replaceEntireContentWithParagraph","Mu","inputType","selectionToRemove","Vu","zu","Lu","Hu","Ku","ju","qu","Wu","useRelations","forceWeakRemove","setOriginalOperations","originalOperations","operationsA","operationsB","nextBaseVersionA","nextBaseVersionB","originalOperationsACount","originalOperationsBCount","getContext","updateRelation","padWithNoOps","$u","Gu","_history","_useRelations","_forceWeakRemove","_relations","_setRelation","side","wasInLeftElement","wasStartBeforeMergedElement","wasEndBeforeMergedElement","wasInRightElement","aIsStrong","aWasUndone","_wasUndone","bWasUndone","abRelation","_getRelation","baRelation","wasUndone","isUndoneOperation","getUndoneOperation","Uu","Ju","Yu","hasSameParentAs","getReversed","Qu","_stack","_createdBatches","clearStack","ranges","getTransformedByOperations","flat","Zu","Xu","getOperations","setOperationAsUndone","getJoined","tm","_undo","_restoreSelection","em","nm","_batchRegistry","_undoCommand","_redoCommand","addBatch","om","im","rm","sm","am","cm","backgroundColor","lm","hm","colorDefinitions","columns","gridTemplateColumns","isOn","color","selectedColor","hasBorder","um","mm","gm","fm","colors","removeButtonLabel","documentColorsLabel","documentColorsCount","documentColors","_documentColorsLabel","_removeColorButton","_addColorToDocumentColors","documentColorsGrid","staticColorsGrid","_createStaticColorsGrid","_createDocumentColorsGrid","withText","bm","km","wm","_m","Cm","Am","vm","ym","xm","Em","Sm","Dm","Tm","Bm","Pm","Im","Rm","Fm","Om","Nm","Mm","Vm","zm","Lm","Hm","qm","Km","jm","Wm","setNormalizer","Gm","setReducer","attachment","image","$m","addStyleProcessorRules","Um","Jm","Ym","Qm","componentName","dropdownLabel","colorTableView","dropdownView","appendGrids","updateDocumentColors","updateSelectedColors","Xm","Zm","tg","eg","ng","og","ig","rg","paragraphLikeElements","sg","modelElements","ag","cg","lg","title","_addDefaultH1Conversion","dg","hg","mg","commandValue","gg","_childCommands","_getFirstEnabledCommand","_checkEnabled","pg","fg","bg","kg","_defineButton","wg","_g","Cg","Ag","vg","yg","_overrideUid","_handleForwardMovement","_handleBackwardMovement","_isNextGravityRestorationSkipped","_isGravityOverridden","Dg","xg","Sg","Eg","overrideSelectionGravity","restoreSelectionGravity","Tg","Bg","Pg","_definitions","Ig","manualDecorators","automaticDecorators","_getDecoratorStateFromModel","_isRangeToUpdate","Rg","Fg","defaultValue","Og","Mg","Vg","zg","addTargetToExternalLinks","_enableAutomaticDecorators","mode","_enableManualDecorators","registerAttribute","_enableInsertContentSelectionAttributesFixer","_enableClickingAfterLink","_enableTypingOverLink","_handleDeleteContentAfterLink","rel","getDispatcher","Lg","Hg","Kg","jg","Wg","Gg","$g","isVisible","show","defaultPositions","southArrowNorth","southArrowNorthMiddleWest","southArrowNorthMiddleEast","southArrowNorthWest","southArrowNorthEast","northArrowSouth","northArrowSouthMiddleWest","northArrowSouthMiddleEast","northArrowSouthWest","northArrowSouthEast","unpin","_pinWhenIsVisibleCallback","_startPinning","_stopPinning","hide","attachTo","Ug","Jg","arrowVerticalOffset","Yg","arrowHorizontalOffset","northWestArrowSouthWest","northWestArrowSouthMiddleWest","northWestArrowSouth","northWestArrowSouthMiddleEast","northWestArrowSouthEast","northEastArrowSouthWest","northEastArrowSouthMiddleWest","northEastArrowSouth","northEastArrowSouthMiddleEast","northEastArrowSouthEast","southWestArrowNorthWest","southWestArrowNorthMiddleWest","southWestArrowNorth","southWestArrowNorthMiddleEast","southWestArrowNorthEast","southEastArrowNorthWest","southEastArrowNorthMiddleWest","southEastArrowNorth","southEastArrowNorthMiddleEast","southEastArrowNorthEast","Qg","Zg","ep","np","positionLimiter","_viewToStack","_idToStack","_rotatorView","_createRotatorView","_fakePanelsView","_createFakePanelsView","hasView","stackId","_numberOfStacks","_visibleStack","singleViewMode","showStack","_showView","_singleViewMode","visibleView","_showNextStack","hideView","_getStackId","pin","_getBalloonPosition","updatePosition","visibleStack","op","buttonNextView","buttonPrevView","_showPrevStack","ip","balloonClassName","withArrow","showView","_createButtonView","_balloonPanelView","_addPanels","_removePanels","deregisterChild","numberOfPanels","rp","ap","fieldView","statusView","_createStatusView","cp","dp","placeholder","readonly","select","hp","ariaDescribedById","errorText","up","mp","gp","pp","fp","kp","_p","urlInputView","_createUrlInput","saveButtonView","_createButton","cancelButtonView","_manualDecoratorSwitches","_createManualDecoratorSwitches","_createFormChildren","_focusables","Cp","vp","previewButtonView","_createPreviewButton","unlinkButtonView","editButtonView","yp","xp","actionsView","_createActionsView","formView","_createFormView","_balloon","_createToolbarLinkButton","_enableUserBalloonInteractions","markerToHighlight","markerToElement","_addFormView","_hideUI","getDecoratorSwitchesState","_closeFormView","_showUI","_getSelectedLinkElement","_areActionsVisible","_isUIVisible","_isUIInPanel","_areActionsInPanel","_getBalloonPositionData","_isFormInPanel","restoreManualDecoratorStates","_removeFormView","_hideFakeVisualSelection","_addActionsView","_showFakeVisualSelection","_startUpdatingUI","Ep","Sp","removeMarker","Dp","_getValue","Bp","listIndent","Tp","listType","Pp","_indentBy","Rp","Np","sameIndent","smallerIndent","breakContainer","Op","Fp","mergeContainers","Mp","Vp","zp","Lp","Ip","Hp","Kp","jp","qp","Wp","Yp","Gp","Xp","$p","Up","Jp","Qp","foo","Zp","registerViewToModelLength","tf","registerChildCommand","ef","nf","of","rf","_defaultType","sf","af","cf","lf","_mergeListStyleAttributeWhileMergingLists","df","hf","mf","actionView","_createActionView","gf","ff","bf","parentCommandName","buttonLabel","buttonIcon","toolbarAriaLabel","styleDefinitions","listStyleCommand","kf","wf","_f","_getFormattingItems","_getFormattingAttributes","Cf","Af","vf","yf","xf","Ef","Sf","Df","getCellLocation","column","Bf","Pf","_table","_startRow","row","startRow","_endRow","endRow","_startColumn","startColumn","_endColumn","endColumn","_includeAllSlots","includeAllSlots","_skipRows","_row","_column","_cellIndex","_spannedCells","_nextCellAtColumn","_isOverEndRow","_isOverEndColumn","_advanceToNextRow","_getSpanned","_shouldSkipSlot","_formatOutValue","cell","_recordSpans","If","_markSpannedCell","cellAnchorRow","cellAnchorColumn","Rf","_insertDescriptor","Ff","oldDescriptor","newDescriptor","_removeDescriptor","Of","Nf","Mf","Vf","zf","Kf","Lf","Hf","jf","Uf","hasSelectionHandle","qf","Wf","Gf","$f","Jf","asWidget","headingRows","headingColumns","tb","Zf","Yf","Qf","ib","Xf","eb","createEditableElement","rb","nb","ob","sb","createTable","ab","mb","cb","lb","db","gb","hb","ub","fb","pb","bb","order","insertRows","at","copyStructureFromAbove","kb","insertColumns","wb","splitCellHorizontally","splitCellVertically","_b","isAnchor","xb","Cb","cellHeight","Ab","rowspan","colspan","getPositionBefore","vb","cellWidth","yb","Eb","getColumns","removeColumns","Sb","removeRows","Db","Tb","firstColumn","lastColumn","lastRow","Bb","firstRow","Pb","isHorizontal","_getMergeableCell","Ib","Rb","getRows","rows","Fb","Ob","_isInHeading","Nb","Mb","Vb","abs","skipRow","zb","cellsToMove","cellsToTrim","Lb","newCellsSpan","updatedSpan","floor","Hb","qb","mergeWidth","mergeHeight","Kb","jb","Wb","Gb","Ub","Jb","Yb","Xb","Zb","tk","ek","ok","rk","ak","refreshItem","ik","$b","nk","Qb","ck","dk","_createGridCollection","_highlightGridBoxes","hk","uk","bindIsOn","_prepareDropdown","_prepareMergeSplitButtonDropdown","_fillDropdownWithListOptions","mk","gk","fk","_handleDeleteContent","_defineSelectionConverter","_enablePluginDisabling","getSelectedTableCells","_getCellsToSelect","cells","bk","_onCopyCut","_onInsertContent","getSelectionAsFragment","wk","kk","_replaceSelectedCellsWithPasted","_replaceTableSlotCell","_k","Ck","_handleTabOnSelectedTable","_getTabHandler","_onKeydown","getFocusCell","_handleArrowKeys","_navigateFromCellInDirection","_isSelectionAtCellEdge","getAnchorCell","setCellSelection","Ak","vk","_enableShiftClickSelection","_enableMouseDragSelection","_getModelTableCellFromDomEvent","yk","buttons","xk","Sk","Dk","Tk","Bk","_currentFakeCaretModelElement","_enableTypeAroundUIInjection","_enableInsertingParagraphsOnButtonClick","_enableInsertingParagraphsOnEnterKeypress","_enableInsertingParagraphsOnTypingKeystroke","_enableTypeAroundFakeCaretActivationUsingKeyboardArrows","_enableDeleteIntegration","_enableInsertContentIntegration","_insertParagraph","before","after","importNode","_listenToIfEnabled","_handleArrowKeyPress","_handleArrowKeyPressOnSelectedWidget","_handleArrowKeyPressWhenSelectionNextToAWidget","_getObjectElementNextToSelection","_setSelectionOverElement","closest","classList","_insertParagraphAccordingToFakeCaretPosition","Pk","Fk","Ok","Nk","_previouslySelected","_clearPreviouslySelectedWidgets","Mk","_onMousedown","_handleSelectionChangeOnArrowKeyPress","_preventDefaultOnArrowKeyPress","round","Rk","_handleDelete","detail","Vk","Lk","_toolbarDefinitions","_updateToolbarsVisibility","getRelatedElement","toolbarId","_isToolbarVisible","_hideToolbar","_isToolbarInBalloon","_showToolbar","Hk","Kk","jk","Wk","qk","Gk","$k","Uk","Jk","Qk","setExtractor","Xk","nw","ew","setStyleRelation","tw","Yk","border","Zk","ow","iw","getNormalizedStyle","rw","sw","aw","cw","attributeName","_getValueToSet","lw","dw","hw","parseFloat","isNaN","uw","mw","gw","pw","fw","bw","kw","ww","float","align","_w","Cw","vw","_dropdownView","_createDropdownView","_inputView","_createInputTextView","_stillTyping","_setInputValue","_createColorGrid","_createRemoveColorButton","blur","yw","xw","Ew","none","solid","dotted","dashed","double","groove","ridge","inset","outset","Sw","Dw","Tw","Bw","Nw","Pw","Iw","_borderStyleValue","Rw","icons","labels","propertyName","nameToValue","Fw","Ow","colorConfig","Mw","zw","_role","_ariaLabelledBy","Lw","Kw","jw","Ww","$w","Jw","Yw","borderStyle","borderWidth","borderColor","alignment","_createBorderFields","borderStyleDropdown","borderWidthInput","borderColorInput","borderRowLabel","_createDimensionFields","widthInput","operatorLabel","heightInput","dimensionsLabel","_createAlignmentFields","alignmentToolbar","alignmentLabel","backgroundInput","_createBackgroundField","_createActionButtons","borderColors","Qw","backgroundColors","isCompact","_alignmentLabels","Xw","Zw","t_","e_","o_","n_","i_","r_","s_","_createPropertiesView","_undoStepBatch","_hideView","_isViewVisible","_isViewInBalloon","_getPropertyChangeCallback","_getValidatedPropertyChangeCallback","viewField","validator","_fillViewFormFromCommandValues","a_","l_","middle","d_","padding","horizontalAlignment","verticalAlignment","horizontalAlignmentToolbar","verticalAlignmentToolbar","paddingInput","_createPaddingField","h_","_horizontalAlignmentLabels","_verticalAlignmentLabels","u_","m_","g_","p_","_getSingleValue","_getAttribute","f_","b_","k_","w_","__","C_","A_","v_","y_","x_","E_","S_","valign","D_","T_","B_","P_","I_","F_","table","contentToolbar","link","defaultProtocol","decorators","RequestMethod","withStyles","theme","flexDirection","justifyContent","alignItems","background","objectFit","zIndex","textContainer","textAlign","fontSize","letterSpacing","slogan","fontWeight","buttonsContainer","marginTop","logo","maxHeight","Helmet","Typography","variant","Box","jQuery","FullscreenDialog","props","useEffect","Dialog","fullScreen","TransitionProps","onEnter","onExit","closeButton","marginRight","onClose","useTranslation","DialogTitle","disableTypography","Grid","container","IconButton","aria-label","onClick","compose","metadataIcon","lineHeight","withTranslation","metadataUrl","iconSize","useState","setVisibility","ev","open","DialogContent","src","DialogActions","Button","SanitizedHTML","html","allowTarget","undefined","dangerouslySetInnerHTML","__html","sanitize","ADD_ATTR","info","fullWidth","borderRadius","outlineOffset","linkEnabled","cursor","palette","primary","textDecoration","linkDisabled","linkContent","linkContentImage","linkContentText","linkContentTextIcon","linkContentTextText","linkContentSubText","textStyle","subText","subTextStyle","imageStyle","disabled","card","list","getHref","hideLabelOnElemWithImage","spacing","Card","description","CardActions","PageSection","sectiontitle","gutterBottom","margin","Divider","Page","transparent","isOldBrowserWarningVisible","handleScroll","pageYOffset","setState","handleStyle","nodeHeaderHeight","getElementById","closeWarning","ref","scrollIntoView","behavior","alignToTop","scroll","isIE","documentMode","isEdge","StyleMedia","oldBrowserWarning","Zoom","in","Fab","fab","ArrowUpward","childrenContainer","Component","appBar","REQUEST_INIT","REQUEST_ERROR","REQUEST_SUCCESS","UserRoles","UserPermissions","initRequest","GET","messages","extra","baseURL","getHideErrorMessage","hideSpinner","contentType","doNotTransformResponse","payload","uuid","uuidv4","errorRequest","requestActionPayload","statusCode","response","getDatasetUrl","nodeId","datasetId","getDatasetDownloadUrl","format","zipped","getDatasetDownloadCustomUrl","getNodeDeleteUrl","force","getUserConfigGetUrl","userId","getUserConfigPutUrl","getGeometryUrl","getDashboardsUrl","dashboardId","SettingsDialog","onSubmit","hasSubmit","noMinHeight","customSubmitLabel","noFullScreen","dialogContent","minHeight","paddingBottom","disableEscapeKeyDown","disableBackdropClick","disableEnforceFocus","getUserErrorsTranslations","DuplicateEmail","DuplicateUserName","InvalidLogin","PasswordRequiresDigit","PasswordTooShort","PasswordRequiresNonAlphanumeric","PasswordRequiresUpper","PasswordRequiresLower","InvalidEmail","InvalidToken","DefaultError","ConcurrencyFailure","PasswordMismatch","LoginAlreadyAssociated","InvalidUserName","InvalidRoleName","DuplicateRoleName","UserAlreadyHasPassword","UserLockoutNotEnabled","UserAlreadyInRole","UserNotInRole","translations","str","UserErrors","errors","Alert","severity","marginBottom","Form","field","paper","tabContent","overflowY","overflowX","forwardRef","useForm","handleSubmit","useImperativeHandle","val","FormControl","TextField","email","helperText","required","inputRef","connect","usersConfig","user","userErrors","dispatch","sendConfig","POST","onStart","recoverPassword","secondary","onHide","onRegister","alert","isRecoverPasswordModalOpen","setIsRecoverPasswordModalOpen","recoverPasswordFormRef","useRef","keyDownHandler","useCallback","evt","onEntered","userField","pswField","autoFocus","password","fetchUsersConfigUsers","validateI18nObj","obj","pickBy","localizeI18nObj","prefLang","langs","code","getI18nObjCustomFilterAndSearch","languages","getI18nObjFromLanguages","fromPairs","numberFormatter","Intl","NumberFormat","getFormattedInt","valueStr","separator","subStrs","sign","getRoundedNumber","number","decimalPlaces","pow","getFormattedValue","decimalSeparator","emptyChar","thousandsSeparator","valParts","integerPart","decimalPart","getTrimmedStr","disclaimerLink","onCancel","isAnonymous","hub","defaultValues","organization","disclaimerAccepted","watch","setValue","showPassword","setShowPassword","showPasswordConfirm","setShowPasswordConfirm","isDisclaimerModalOpen","setIsDisclaimerModalOpen","emailConfirm","passwordConfirm","validate","FormControlLabel","control","Checkbox","checked","onChange","SelectProps","SelectDisplayProps","MenuItem","firstName","lastName","InputProps","endAdornment","InputAdornment","Visibility","VisibilityOff","inputProps","autoComplete","FormHelperText","disclaimer","appConfig","app","fetchConfig","sendConfigCreate","sendUsersConfigUserCreate","PUT","clearConfig","needConfig","setNeedConfig","typeOptions","ButtonSelect","anchorEl","setAnchorEl","handleMenu","event","currentTarget","handleClose","selectedIdx","unselectableIndexes","buttonStyle","Item","isSelected","isUnselectable","menuItem","menuItemUnselectable","tabIndex","disableRipple","startIcon","endIcon","anchorOrigin","vertical","horizontal","keepMounted","transformOrigin","showOldPassword","setShowOldPassword","showNewPassword","setShowNewPassword","showNewPasswordConfirm","setShowNewPasswordConfirm","oldPassword","newPassword","newPasswordConfirm","Call","cbParam","React","fetchUserEditUser","submitConfig","submitUserEditUser","INIT","persistenceMiddleware","getState","action","localStorage","result","setItem","isSetPasswordDialogOpen","initialState","isAuthenticated","roles","permissions","token","refreshTokenExpiration","tokenTTL","tokenReceivedTime","isLoginDialogOpen","delayedRequest","isChangePasswordDialogOpen","isRegisterDialogOpen","isEditUserDialogOpen","userReducer","setPasswordToken","getTime","haveError","request","status","getPermissionStr","permission","canDisplayAppSettingsForm","Administrator","canCreateNode","canSortNodes","canDisplayNodesSettingsForm","ManageCache","ManageTemplate","ManageConfig","canDisplayUsersSettingsForm","canDisplayCacheSettingForm","canDisplayTemplatesSettingsForm","canSaveTemplate","canEditNode","canDisplayUserViews","canSaveAsView","canGetQueryLog","canDisplayPermissionsSettingsForm","canManagePersonalDashboards","canManageAppDashboards","canDeleteNodes","emptyDashboardElem","getViewIdxFromRowAndCol","rowIdx","colIdx","getVariationValueLabels","toUpperCaseFirst","toUpperCase","getDimensionLabelFromJsonStat","jsonStat","dimension","getDimensionValueLabelFromJsonStat","category","getDataIdxFromCoordinatesArray","dimensions","dataIdx","multiplier","getCoordinatesArrayFromDataIdx","coordinates","dimensionSize","getFilterTreeFromJsonStat","layout","filters","primaryDim","secondaryDim","paths","dim","dimValueIdx","tree","currentLevel","elem","getInitialFiltersValue","filterTree","selectedPrimaryDim","selectedSecondaryDim","primDimKey","primaryDimValues","secDimKey","secondaryDimValues","filtersValue","iter","selectableValues","allValues","selectedVal","dimVal","getFilteredLayout","initialLayout","cloneDeep","dimArraysKey","territoryDim","found","getInitialChartLayout","getFilteredTableLayout","cols","sections","getFilteredMapLayout","getFilteredChartLayout","getUpdatedLayout","newLayout","tmpLayout","isLayoutValid","primDimVal","secDimVal","isFilterValid","allSecondaryDimValues","getDimensionFilterValues","withLabels","dimensionIdx","prevFilters","availableValue","ret","getDimensionValuesIndexesMap","indexesMap","dimValue","idx","getAttributeObject","attributeIdx","attributeValueIdx","valueId","valueLabel","getAttributeObjects","attributeCoordinates","attributeObjList","hiddenAttributes","ids","hasAsterisk","coordinate","getDimensionAttributeMap","getIdsHtmlString","series","extension","seriesIndexes","dimAttributeMap","dimIdx","attributeObjects","htmlString","getObservationAttributeMap","observations","observation","observationIndexes","obsAttributeMap","hasError","getDatasetAttributeList","datasetAttributes","dataSet","datasetIndexes","getSeriesAttributeList","labelFormat","seriesAttributes","dimsId","dimsValueId","dims","attrs","attr","getAttributeLabel","getAttributeValueLabel","frequencies","getMinAndMax","timePeriodCodelist","freq","nodeConfig","nodeExtras","extras","nodeConfigMin","nodeConfigMax","moment","getDefaultMaxPeriod","missingRange","getTimePeriod","initialTimePeriod","criteria","freqCodelist","filterValues","minAndMax","minDate","maxDate","selectorType","fromDate","toDate","periods","period","getFreq","freqValues","getCriteriaArrayFromObject","criteriaObj","criteriaArr","getCriteriaObjectFromArray","dimensionCriteria","fetchOtherConfigViews","getNewDashboard","dashboard","dashboardConfig","newDashboard","col","filterDimension","newFilterLevels","filterLevels","viewIds","getParamsStr","opts","paramsStrs","viewId","query","isA11y","getHomeInternalUrl","noLanguage","getNodeInternalUrl","nodeCode","getNodeCategoriesInternalUrl","getDatasetsInternalUrl","categoryPath","getDatasetInternalUrl","getNodeDashboardsInternalUrl","goToHome","goToNode","goToDataset","goToDatasetsSearch","getDatasetsSearchInternalUrl","goToHubDashboards","goToNodeDashboards","goToDashboard","getDashboardInternalUrl","tableIcons","Add","Check","Clear","Delete","DetailPanel","Edit","Export","Filter","FirstPage","LastPage","NextPage","PreviousPage","ResetSearch","Search","SortArrow","ThirdStateCheck","ViewColumn","toolbarSearch","toolbarActions","components","rightActions","toolbarRightActionsWidth","outerWidth","toolbarHeight","customProps","localization","emptyDataSourceMessage","header","searchPlaceholder","searchTooltip","paging","draggable","showTitle","searchFieldAlignment","mergedProps","Container","Toolbar","toolbarProps","tableToolbar","defaultLanguage","views","otherConfig","fetchViews","clearViews","deleteView","getDeleteViewUrl","DELETE","deleteOtherConfigView","onViewsClose","needViews","setNeedViews","deleteViewId","setDeleteViewId","deleteViewNodeId","setDeleteViewNodeId","customFilterAndSearch","viewTemplateId","location","DeleteIcon","actionsColumnIndex","iconStyle","Selector","callOnChange","detailTitle","selectTitle","resetTitle","onDetail","onSelect","onReset","readOnly","startAdornment","nextProps","CUSTOM_LANG_TO_COUNTRY","customLangToCountry","showAsIcon","langToCountry","setLangToCountry","res","langCode","CountryLanguage","getLanguageCountries","err","countries","code_2","iconValue","data-value","ConnectedComponent","textFieldProps","setLanguage","emptyValue","getInitialInternalValue","internalValue","setInternalValue","timeoutId","setTimeoutId","setValueForLanguage","newInternalValue","I18nDelayedTextField","HtmlEditor","getInitState","handleEditorChange","customConfig","minimalToolbar","Editor","preToolbar","htmlEditorProps","I18nHtmlEditor","getDashboardDynamicFilterLabelTranslations","Region","Province","Municipality","getStrippedHtmlText","$span","innerText","DashboardBuilderCol","onColRemove","onTypeReset","onViewReset","onTextEdit","onShowTitleChange","onEnableFiltersChange","onFilterDimensionChange","colContainer","viewContainer","formLabel","labelPlacement","multilineInput","multiline","divider","colActions","DashboardBuilderRow","onRowRemove","onColAdd","rowContainer","rowActions","rowAction","handleHeight","each","outerHeight","verticalAlign","onViewsHide","selectedRowIdx","setSelectedRowIdx","selectedColIdx","setSelectedColIdx","isEditTextVisible","setEditTextVisibility","tempTextValue","setTempTextValue","handleRowRemove","handleColAdd","totalWidth","handleColRemove","handleTypeReset","handleViewReset","handleEditTextShow","handleEditTextHide","handleShowTitleChange","handleEnableFiltersChange","handleFilterDimensionChange","onRowClick","rowData","handleViewSet","handleTextChange","Attribute","cardTitle","datasetAttributesCard","attributeGroup","CardHeader","downloadFormats","param","viewers","isDownloadFormatValid","getDownloadFormatLabelFromFormat","getDownloadFormatExtensionFromFormat","getDownloadFormatViewersFromFormat","exportViewerCanvas","canvas","fileName","div","appendTo","staticFiltersDivs","dimLabel","oldCanvas","newCanvas","drawImage","getClonedCanvas","html2canvas","download","toDataURL","getCustomExportRequestBody","datasetTitle","originalLayout","params","ignoreFilters","hasVariation","showTrend","showCyclical","datasetLabel","dataCriterias","parameters","decimalNumber","emptyCellPlaceHolder","customLabelFormat","csvSeparator","colsSeparator","csvTextQualifier","textQualifier","datasetAttributesLabel","seriesAttributesLabel","excelLimitMessage","excelRowsLimitMessage","rowsLimit","exportConfig","maxRowsPerSheet","excelColumnsLimitMessage","colsLimit","maxColsPerSheet","observationValueLabel","variation","variationLabel","trendLabel","cyclicalLabel","submitDatasetDownload","formatParam","fileSave","getNodesAtDepth","childrenKey","depth","recursive","subTree","currDepth","getTreeFromArray","arr","parentKey","mappedArr","getFilteredTreeWithPaths","errorFetchDatasetAsyncHandler","fontStyle","transform","showGenericError","getNthValorizedElementIndexInBooleanArray","array","lastIdx","getGeometryDetailLevels","geometries","hideSingleGeometry","nutsLevel","acc","level","0","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","getNutsLevelTranslations","counter","getStorageDatasetKey","getColorLuminanceFromRgba","rgbaColor","rgbaArr","rgbArr","getL","getLightOrDarkColorBasedOnContrastRatio","rgbaLightColor","rgbaDarkColor","colorL","lightColorL","getPageTitle","toggleFullScreen","elementId","elementParentId","fullscreen","$root","$element","$elementParent","insertAfter","visibility","areElementsOverlap","el1Id","el2Id","el1","el2","domRect1","domRect2","getScrollBarWidth","temp","overflow","widthWithScroll","getTextWidth","SortButtons","CHECKBOX_WIDTH","DATA_INDEX_CHECKED","DEFAULT_PAGE_SIZE","getIndexesFromPaginationParams","pageSize","pageNum","startIdx","stopIdx","AutoSearchInput","tempValue","timeout","onClear","onSearch","searchText","selectedRowCount","tableActions","renderTableAction","leftActions","hasToolbarActions","isLoading","isHidden","rowNumStart","rowNumEnd","rowCount","CircularProgress","FilterButton","Popover","option","InfiniteScrollTable","renderGridRow","colWidths","isPaginated","isPaginating","currentPageIndexes","queriedRows","rowIndex","sum","onSearchTextChange","onFiltersChange","onSortChange","getSelectedRowKeys","onRowSelectionChange","getCols","getNormalizedTableActions","renderActions","renderGridRowCols","renderFixedActions","renderHeaderCells","renderCheckboxTitle","renderCheckbox","getPopulatedRows","getColWidths","getQueriedRows","getRenderedRows","onRenderedRowsChange","getGridHeight","onWindowResize","getIsVerticalScrollbarVisible","gridKeyForRefresh","gridScrollbarWidth","sortCol","sortByDesc","selectedRowKeys","rowSelection","populatedRows","renderedRows","isResizing","resizeTimeout","pageRequestTimeout","pageRequestParams","viewStartIdx","viewEndIdx","viewIndexesUpdateTimeout","doNotCallOnChangeOnNextRenderedRowsChange","multilangStrDataIndexes","fixedActions","altActions","getIsAltRow","getActionsObjs","populatedRow","dataIndex","getTextWidthEl","colTitleWidth","noFilter","noSort","CELL_PADDING","widthToContent","minWidthToContent","renderText","minWidth","isVariableSizeCol","variableSizeCols","colWidthsSum","availableWidth","widthToAdd","colWidth","colIndex","colsWidths","getRowKey","resRow","getFilteredGridRows","getSearchTextFilteredGridRows","getSortedGridRows","prevProps","isArrayPropertyChangedLazy","newCols","newPopulatedRows","newColWidths","newRenderedRows","newQueriedRows","newScrollTop","$grid","updateRenderedRows","_this","newScrollLeft","which","newHeight","nextState","nextContext","newFilters","newPageRequestParams","applyQueryChange","newSearchText","colDataIndex","newSortCol","newSortByDesc","rowKey","selected","getIsDisabledRow","onSelectAll","newSelectedRowKeys","selRowKey","titleRender","noSearchText","getNormalizedFixedActions","disableOnRowClickForCell","getNormalizedActions","getNormalizedAltActions","preHeaderHeight","headerHeight","footerHeight","withValuesFilter","isValuePassingSearchText","sorter","defaultSorter","getRowStyle","cellData","isRowClickDisabled","colLeftAttr","rowStyle","ROW_HEIGHT","columnWidths","uniqBy","isCheckDisabled","checkboxProps","getCheckboxProps","overscanStartIdx","overscanEndIdx","pageRowsThird","MAX_PAGE_SIZE","newPaginationParams","maxIdx","minPageSize","maxPageSize","pageNumForMinPageSize","isInteger","minPageNum","ceil","maxPageNum","indexes","getPaginationParamsFromIndexes","rowNum","showHeader","autoSearch","itemSize","itemCount","itemData","initialScrollOffset","onItemsRendered","visibleStartIndex","visibleStopIndex","overscanStartIndex","overscanStopIndex","prevProp","prop","isDesc","normalize","withSize","getAllDimValuesLabel","getClearedColors","newColors","dimKey","dimValKey","onColorEdit","onColorRemove","rowDimension","itemLabel","itemColor","scrollableRows","whiteSpace","textOverflow","selector","initialColors","onColorsSet","setColors","isAddColorVisible","setAddColorVisibility","newDim","setNewDim","newDimVal","setNewDimVal","newColor","setNewColor","isDimension","setIsDimension","isColorPickerVisible","setColorPickerVisibility","tmpDim","setTmpDim","tmpDimVal","setTmpDimVal","tmpColor","setTmpColor","handleAddColorClose","handleColorRemove","handleColorEdit","handleColorPickerClose","rgb","rgba","defaultColorArr","defaultChartSettings","chartStacked","chartLegendPosition","chartColors","chartShowAxesLabel","chartCustomizeCategoryAxis","chartCategoryAxisLabel","chartValueAxisLabel","chartDataLabelType","getCompleteChartSettings","chartSetting","newChartSettings","getChartType","getVariationChartType","isBarChart","isLineChart","isBarOrLineChart","chartType","timePeriodsByFreq","chartSettings","primaryDimArr","originalPrimaryDimValues","secondaryDimArr","originalSecondaryDimValues","valorizedDataMap","secondaryDimValue","valorizedValues","valorizedDataArr","getParsedValue","datasets","getDataset","secDimIdx","dataAttributes","primaryDimValue","primDimIdx","valueIdx","variations","variationDimValue","yAxisID","isVariation","availableTimePeriods","getPrimaryDimValueColors","datasetIdx","valIdx","getDatasetColors","getFill","lineTension","pointBackgroundColor","pointRadius","pointHoverRadius","pointBorderColor","pointBorderWidth","pointHoverBorderWidth","getOptions","primaryDimLabel","disableWheelZoom","categoryAxisLabel","valueAxisLabel","xAxes","scaleLabel","labelString","gridLines","ticks","beginAtZero","axisDecimalPlaces","stacked","yAxes","responsive","maintainAspectRatio","hover","animationDuration","scales","legend","tooltips","enabled","tooltipItems","tooltipItem","datasetIndex","footer","footerFontStyle","footerMarginTop","zoom","pan","datalabels","formatter","ctx","toFixed","font","family","clamp","Chart","chartRef","createRef","externalChartSettings","ChartJs","defaults","global","defaultFontFamily","myChart","beforeDraw","chart","fillStyle","fillRect","prevChartSettings","chartId","isInvalidPyramid","isChartEmpty","isChartVisible","aria-hidden","addSpinnerMessage","markSpinnerMessage","isError","validMapZoomControlPositions","detailLevelSelector","copyright","attributesGrid","attributesTitle","addSpinner","markSpinner","mapId","onGeometryFetch","geometryDetailLevels","isFullscreen","externalDetailLevel","detailLevel","setExternalDetailLevel","setDetailLevel","externalClassificationMethod","classificationMethod","externalPaletteStartColor","paletteStartColor","externalPaletteEndColor","paletteEndColor","externalPaletteCardinality","paletteCardinality","externalOpacity","opacity","externalIsLegendCollapsed","isLegendCollapsed","setSettings","zoomControlPosition","disableDetailLevelSelector","isGeometryData","enableLog","isRendering","setIsRendering","filteredGeometries","setFilteredGeometries","layerOptions","setLayerOptions","setClassificationMethod","setPaletteStartColor","setPaletteEndColor","setPaletteCardinality","setOpacity","setIsLegendCollapsed","setObsAttributeMap","setDimAttributeMap","geometryIdMap","setGeometryIdMap","geometryId","setGeometryId","spinnerUuid","LMap","isInitialized","destroyMap","dispatchEvent","Event","geometryMap","missingGeometryList","geomId","missingEntry","log","prevDetailLevel","firstNotEmptyLevelIndex","newDetailLevel","territoryDimValues","levelsCounter","newGeometryIdMap","territoryDimValue","dimValueArray","geom","obsAttributes","dimAttributes","hasAttributes","uniqueId","geometry","wkt","suffix","srid","legendSettings","pointStartRadius","pointEndRadius","pointRadiusCardinality","onDataRender","valueFormatter","centerMarker","centerMarkerText","selectedCenterMarker","disableSettings","dataInfoDuration","onDataClick","legendTitle","updateLayer","mapTranslations","configure","classification","equalInterval","naturalBreaks","quantile","numberOfClasses","startColor","endColor","preview","uncollapse","hubExtras","mapOptions","baseMap","BaseMap","baseMapToGray","zoomControlClass","onLoadingStart","onLoadingFinish","onSettingsChange","settings","newClassificationMethod","newPaletteStartColor","newPaletteEndColor","newPaletteCardinality","newOpacity","mapClassificationMethod","mapPaletteStartColor","mapPaletteEndColor","mapPaletteCardinality","mapOpacity","legendFontFamily","initMap","addLayer","isMapVisible","InputLabel","Select","MapCopyright","isValidIntegerInInclusiveRange","int","getCurrentNodeConfig","actionDecoratorMiddlewareFactory","decoratedAction","isFirstFetch","isPartialData","isEmptyData","isTooBigData","isTooLongQuery","isCriteriaVisible","isCriteriaAlertVisible","freqDimension","viewerIdx","hasViewLayout","hasTemplateLayout","hasAnnotationLayout","tableLayout","mapLayout","chartLayout","tableFilterTree","mapFilterTree","chartFilterTree","initialCriteria","tableEmptyChar","chartShowTitle","chartTitle","chartShowFilters","mapDetailLevel","mapSettings","mapIsLegendCollapsed","mapShowTitle","mapTitle","mapShowFilters","hasMapStartColor","hasMapEndColor","enableCriteria","enableLayout","enableVariation","maxAllowedCells","codes","isCodesFlat","codelists","areCodelistsFlat","codelistsLength","timePeriod","criteriaObsCount","timings","isFetchStructureDisabled","isFetchDatasetDisabled","isDownloadWarningVisible","isUnavailableViewWarningVisible","backup","isViewVisible","isViewErrorVisible","viewErrorMessage","isTemplateVisible","templateGeometries","templateGeometryDetailLevels","isQueryVisible","structureQuery","dataQuery","datasetReducer","getViewerTypeFromIdx","layouts","storageKey","sessionStorage","newCriteria","timePeriodCriteria","time","worker","terminate","isResponseValid","isResponseNotValid","responseHeaders","backendtimers","isPayloadTooLarge","isView","criteriaView","VIEW_KEY","TEMPLATE_KEY","storageItem","hasSessionBackup","viewTemplate","hasBackup","viewTemplateLayouts","templateLayouts","layoutChart","structureCriteria","getViewerIdxFromType","maxTableCells","dimensionCodelist","flatCodes","codelistIdx","newCodelistsLength","parentId","defaultLastNPeriods","obsCount","dimensionCodelists","dimensionId","flatCodelists","codelist","timePeriodIdx","freqIdx","structureUrl","dataflowUrl","getTimingsLabelTranslations","nsiResponse","nsiResponseDownload","getRow","isTitle","I18nTextField","getValorizedElCount","timeoutID","intervalID","isOnMouseDownOnSliderThumb","CustomSlider","orientation","maxValue","onIncrement","isVerticalScrollbarVisible","onMouseUp","handleChange","sliderId","step","containerRect","isEventInContainer","button","onMouseDown","Slider","sliderRoot","rail","sliderRail","track","sliderTrack","SLIDER_THICKNESS","spinnerOverlay","verticalValue","verticalMaxValue","verticalTicks","onVerticalScroll","horizontalValue","horizontalMaxValue","horizontalTicks","onHorizontalScroll","isHorizontalScrollbarVisible","setRow","setCol","setIsPaginating","handleSliderScroll","getIncrementedValue","prevValue","delta","isIncrement","handleIncrement","prevRow","prevCol","handleWheelScroll","wheelDeltaY","wheelDelta","wheelDeltaX","isBetween","newRow","newCol","isFirstRender","isElementInContainer","checkOnlyVertical","onTimeSet","setDatasetHtmlGeneratingTime","removeSpinner","isPreview","removeEmptyLines","tableSupportStructures","setTableSupportStructures","htmlTable","setHtmlTable","visibleRowCount","setVisibleRowCount","visibleColCount","setVisibleColCount","setHorizontalScrollbarVisibility","setVerticalScrollbarVisibility","isCopiedVisible","setCopiedVisibility","Worker","$tooltip","$elem","rect","empty","handleScrollbar","updateVisibleRowAndColCount","$tableContainer","colCount","$table","onmessage","onerror","postMessage","func","paginationParams","rowStart","rowEnd","colStart","colEnd","origColStart","origColEnd","repCountMap","dimValuesMap","sectionDimCombinations","valorizedCols","valorizedRows","valorizedRowsPerSection","sectionsLength","t0","performance","cellText","colVisited","fullColSpan","colSpan","sectionLabel","section","sectionsStarts","subHeaderHandled","currentSectionIdx","getSectionRow","sectionRow","currentSectionIdxClone","subHeader","rowSpan","getDataCell","dataObj","dataIndexArr","t1","getTableHtml","Snackbar","autoHideDuration","prevVal","viewer","viewerTable","viewerChart","paddingTop","tabId","setTabId","setChartType","hiddenDimensions","uniq","Tabs","scrollButtons","Tab","titleTypographyProps","Autocomplete","multiple","renderInput","tableDefaultLayout","idList","paperHeader","Paper","AttributeButton","attributeIcon","fontFamily","DimensionAttributeList","dimValuesAttributeList","attributeButton","attributeIconAst","attributeIconChar","dimValuesAttributes","getDimensionValuesAttributeList","placement","getEmptyViewTemplate","titleContainer","titleAction","layoutIcon","attributeId","attributeAst","queryContainer","onViewTemplateShow","showDatasetViewTemplate","onViewTemplateHide","hideDatasetViewTemplate","onViewErrorHide","onViewTemplateGeometriesFetch","fetchDatasetViewTemplateGeometries","onQueryShow","onQueryHide","fetchQuery","getDatasetSdmxQueryUrl","fetchDatasetSdmxQuery","nodeDownloadFormats","showQueryInfo","structureView","structureTemplate","notes","attachedFiles","onViewTemplateSubmit","onDownloadSubmit","initialView","setInitialView","setView","initialTemplate","setInitialTemplate","isAttributesVisible","setAttributesVisibility","isNotesVisible","setNotesVisibility","isTimingsVisible","setTimingsVisibility","setDownloadFormats","isUpdatingView","setIsUpdatingView","actionsWidth","newDownloadFormats","handleViewOpen","isUpdate","handleViewClose","handleTemplateClose","currentFilters","subtitle","hasNotes","canViewTemplateOrAnnotationIcon","canViewTimesLog","handleTemplateOpen","canShare","notImplemented","attachedFile","formats","getCanvas","chartCanvas","formatLabel","handleViewSubmit","hidden","outline","floatingMenuOption","floatingMenuOptionSelected","categoryTitle","referenceMetadataIcon","iFrame","navigationActionDisabled","isCriteriaDisabled","isLayoutDisabled","isTableDisabled","isChartDisabled","isMapDisabled","referenceMetadataUrl","onViewerSelect","onCriteriaOpen","onLayoutOpen","isRefMetaVisible","setRefMetaVisibility","handleViewerSelect","BottomNavigation","showLabels","BottomNavigationAction","controls","sheets","sheetContainer","sheet","onDatasetsChange","setDatasets","setSelectedIdx","datasetToRemove","setDatasetToRemove","isScrollLeftDisabled","setIsScrollLeftDisabled","isScrollRightDisabled","setIsScrollRightDisabled","scrollWidth","newDatasets","newSelectedIdx","Chip","deleteIcon","onDelete","uniqWith","handleAddDataset","removeItem","getFormattedName","dimensionValueId","dimensionValueName","isMultiSelectDim","itemWrapper","itemDisabled","pointerEvents","dimensionTitle","visibleId","setVisibleId","checkedKeys","setCheckedKeys","handleFilterClose","handleFilterSubmit","isArr","getValueLabel","renderValue","onOpen","visibleIdx","handleFilterOpen","getKeys","getNodeKey","treeActions","treeLevelSelector","treeNode","treeNodeCheckbox","treeNodeLabel","levelTreeNodeLabel","treeNodeAction","showMoreNode","treeAction","labelKey","getNodeLabel","checkable","defaultExpandedKeys","nodeActions","withoutSearch","withoutCheckControls","withoutExpandControls","withLevelSelector","withoutPagination","getIsCheckable","isLabelNotMultilingual","checkboxCheckedIcon","checkboxUncheckedIcon","showDisabledCheckbox","treeActionsDirection","parsedHubExtras","treePageSize","TreePageSize","filteredTree","setFilteredTree","setSearchText","expandedKeys","setExpandedKeys","showMoreKeyClicks","setShowMoreKeyClicks","lsExpandedKeys","setLsExpandedKeys","handleCheck","checkedNode","newCheckedKeys","onCheck","handleLevelCheck","nodesAtDepth","handleExpand","onExpand","actionHeight","levelSelectorHeight","nodeHeight","filtTree","filtTreeKeys","newFilteredTree","filterNode","filteredChildren","getFilteredTree","searchedStr","isSearchedNode","getShowMoreNode","remaining","TreeItem","more","getTreeNode","isLevelTree","act","isNodeCheckable","checkedIcon","onLabelClick","child","levelTree","maxTreeDepth","getMaxTreeDepth","TREE_NODE_KEY_OF_LEVEL_PREFIX","pointer","TreeView","defaultCollapseIcon","defaultExpandIcon","disableSelection","expanded","onNodeToggle","nodeIds","handleLsExpand","getLocale","itLocale","enLocale","frLocale","esLocale","pt","ptLocale","appLang","openTo","inputVariant","utils","DateFnsUtils","DatePicker","clearable","cancelLabel","clearLabel","okLabel","todayLabel","year","S1","endOf","S2","Q1","Q2","Q3","Q4","getYearsArray","startYear","endYear","startYearNumeric","endYearNumeric","getPeriod","date","dateMoment","getNewTimePeriodFromYear","minYear","maxYear","minPeriod","maxPeriod","isFrom","newDate","isSameOrAfter","isSameOrBefore","handleSetTimePeriodRange","newTimePeriod","onSetTimePeriod","setCriteriaValidity","selectContainer","formControl","timePeriodInput","lastPeriodsLabel","lastPeriodsInput","lastPeriodsMenu","isCriteriaValid","fromYear","toYear","fromPeriod","toPeriod","fromPeriods","toPeriods","handleSetTimePeriodPeriods","dimId","codelistInfoHeight","criteriaContainer","criteriaContainerDimension","codelistInfo","codelistContainer","emptyContainer","timePeriodContainer","tabLabel","lineClamp","boxOrient","fetchCodelist","flatCriteria","getDatasetStructureDynamicCodelistUrl","isFull","getDatasetStructureCodelistUrl","fetchDatasetStructureCodelist","fetchCodelists","getDatasetStructureCodelistsUrl","fetchDatasetStructureCodelists","onSetCriteria","setDatasetStructureCodelistCriteria","setDatasetStructureCodelistTimePeriod","isCallDisabled","setIsCallDisabled","tmpCriteria","setTmpCriteria","tmpTabId","setTmpTabId","lastNotCodedFilter","setLastNotCodedFilter","fun","lastValorizedDimension","newDimensionCriteria","handleFetch","newTabId","filterValue","DataStructureRef","criteriaToRemove","handleTabChange","aria-controls","aria-labelledby","childrenKeys","unselectedChildrenKeys","sectionHeaderContainer","sectionHeaderContent","sectionHeaderIcon","sectionHeaderTitle","sectionContentWrapper","draggingHover","sectionContent","sectionItem","dimensionLabel","Icon","droppableId","provided","snapshot","isDraggingOver","innerRef","draggableId","isDragDisabled","draggableProps","dragHandleProps","isDragging","draggableStyle","userSelect","onDragEnd","setDimensions","destination","newDimensions","startIndex","endIndex","reorder","droppableSource","droppableDestination","layoutContainer","previewContainer","setLayout","getFontSizeIcon","styleClasses","fontSizeIcon","fontSizeIconSm","fontSizeIconMd","fontSizeIconLg","fontSizeSelected","boxShadow","setFontSize","AreaIcon","SvgIcon","RadarIcon","PolarIcon","PyramidIcon","sourceArr","destinationArr","removedSrc","removedDst","swap","leftSection","rightSection","setLabelFormat","tabs","paddingLeft","onSettingsSet","onVariationSet","setOpen","newSelected","MenuProps","viewerType","hubFooterHeight","$actions","$filters","$filtersAndActions","filtersWidth","alignSelf","viewerHeaderHeight","getFilterCombinationCount","getColsSeparators","getInitialCsvParams","page","sidebar","viewerContainer","filtersAndActions","warningAlert","criteriaContent","exportLabel","fieldLastRow","onDatasetFetch","fetchDataset","onFetchDatasetEnable","onCriteriaShow","onCriteriaHide","onCriteriaAlertHide","onViewerSet","setDatasetViewer","onTableLayoutSet","submitDatasetTableLayout","onTableFilterTreeSet","submitDatasetTableFilterTree","onMapLayoutSet","submitDatasetMapLayout","onChartLayoutSet","submitDatasetChartLayout","onChartFilterTreeSet","submitDatasetChartFilterTree","onLabelFormatSet","setDatasetLabelFormat","setDatasetVariation","onChartSettingsSet","onMapDetailLevelSet","setDatasetMapDetailLevel","onMapSettingsSet","setDatasetMapSettings","onDownloadHide","getCreateViewUrl","getCreateTemplateUrl","submitDatasetViewTemplate","onUnavailableViewHide","fetchDatasetGeometries","maxObservation","tmpTableLayout","setTmpTableLayout","tmpChartLayout","setTmpChartLayout","isLayoutVisible","setLayoutVisibility","setFullscreen","isChartSettingsVisible","setChartSettingsVisibility","tmpChartSettings","setTmpChartSettings","isMapSettingsVisible","setMapSettingsVisibility","tmpMapSettings","setTmpMapSettings","isObsCountWarningVisible","setIsObsCountWarningVisible","exportFormat","setExportFormat","exportParams","setExportParams","singleSheet","setSingleSheet","filteredDataset","setFilteredDataset","csvParams","setCsvParams","fetch","configFolderPath","doc","styleEl","colorRules","cssRules","selectorText","colorString","hex","CUSTOM_CSS_MAP_SELECTOR_NODE_PREFIX","CUSTOM_CSS_MAP_SELECTOR_PREFIX","handleLayoutClose","handleLayoutSubmit","newTableFilterTree","newPrimaryDim","newSecondaryDim","prevPrimaryDim","prevSecondaryDim","isSecondaryDimChanged","newChartFilterTree","handleCriteriaClose","handleCriteriaSubmit","handleChartSettingsClose","handleMapSettingsClose","handleExportExcelHide","handleExportCsvHide","DownloadFormats","HiddenAttributes","QueryInfo","handleExportCsvShow","DefaultLastNPeriods","maxExcelSheets","sheetsLimit","labelWidth","exportLayout","errorFetchDashboardDatasetAsyncHandler","requestIds","dashboards","fetchedDashboards","jsonStats","filterTrees","maps","dynamicViewPendingRequests","dashboardReducer","newFetchedDashboards","dynamic","currentDashboardJsonStats","currentDashboardLayouts","currentDashboardFilterTrees","currentDashboardTimePeriodsByFreq","viewIdx","isStaticView","isFetchingDynamicView","requestUuid","fetchedDashboard","static","dashboardJsonStats","dashboardLayouts","dashboardFilterTrees","dashboardTimePeriodsByFreq","dashboardMaps","dashboardElem","minDashboardWidth","$col","$header","$title","$controllers","$placeHolder","$staticFilters","$activeFilters","$view","viewContainerHeader","viewContainerHeaderTitle","viewContainerHeaderControllers","viewContainerHeaderStaticFilters","viewContainerHeaderActiveFilters","viewContainerHeaderPlaceholder","viewContainerView","externalJsonStat","externalLayoutObj","externalFilterTree","externalTimePeriodsByFreq","externalMap","rowWithView","fetchMapGeometries","setJsonStat","layoutObj","setLayoutObj","setFilterTree","setTimePeriodsByFreq","setMap","prevJsonStat","prevLayoutObj","prevFilterTree","prevTimePeriodsByFreq","prevMaps","handleFullscreen","nodeMinimalInfo","nodeHiddenAttributes","showAttributeIcon","staticFilters","TitleComponent","ControllersComponent","StaticFiltersComponent","ActiveFiltersComponent","PlaceHolderComponent","Dashboard","externalDashboard","onFilterSet","setDashboard","prevDashboard","getStaticDashboard","staticDashboard","initialDashboard","previewDialog","needDashboards","dashboardViews","fetchDashboards","clearDashboards","createDashboard","createOtherConfigDashboard","updateDashboard","updateOtherConfigDashboard","changeDashboard","changeOtherConfigDashboard","submitDashboardCreate","submitOtherConfigDashboardCreate","submitDashboardUpdate","getUpdateDashboardUrl","submitOtherConfigDashboardUpdate","deleteDashboard","getDeleteDashboardUrl","deleteOtherConfigDashboard","hideDashboard","fetchOtherConfigDashboardsDataset","setOtherConfigDashboardsDatasetFilter","fetchOtherConfigDashboardsMapGeometries","clearDatasets","onDashboardsClose","deleteDashboardId","setDeleteDashboardId","updateDashboardId","setUpdateDashboardId","isPreviewVisible","setPreviewVisibility","VisibilityIcon","EditIcon","requests","onLogin","Email","Password","fetchUser","onLogout","onLoginFormShow","onLoginFormHide","onChangePasswordShow","onChangePasswordHide","onRegisterModalShow","onRegisterModalHide","onEditModalShow","onEditModalHide","registerFormRef","changePasswordFormRef","editUserFormRef","viewsSettigsRef","dashboardsSettingsRef","isViewsOpen","setIsViewsOpen","isDashboardsOpen","setIsDashboardsOpen","getNodeId","catId","prevPath","getSelectedNodeIds","CategoriesTree","selectedCategoryPath","catalog","getTreeItems","cat","folderIcon","nodeLabel","nodeIcon","nodeRoot","labelSelected","datasetIdentifiers","childrenCategories","datasetsCount","categoryGroups","categories","uncategorizedDatasets","fetchHubConfigDashboards","fileInput","setFileName","accept","file","fileFormData","FormData","headers","credentials","json","filePath","htmlFor","component","buttonAction","typography","allDashboards","fetchAllDashboards","addDashboard","removeDashboard","sendDashboardsOrders","clearAllDashboards","needFetch","setNeedFetch","orderedDashboardsIds","assigned","AddIcon","tableData","ArrowDropUpIcon","ArrowDropDownIcon","withTheme","FormLabelWithTooltip","tooltipOnRight","Tooltip","disclaimerLabel","mapCopyrightLabel","setTab","dashboardsManagerRef","isCopyrightVisible","setCopyrightVisibility","tmpCopyright","setTmpCopyright","handleCopyrightClose","configExtras","PageSize","mapCopyright","headerLogoSmallURL","HeaderLogoSmallURL","headerLogoAlt","HeaderLogoAlt","headerLogoHref","HeaderLogoHref","headerLogoTitle","supportedLanguages","freeSolo","renderTags","getTagProps","maxObservationsAfterCriteria","maxCells","getBaseMapOptions","hubConfig","hubDashboards","sendHubConfig","getAddHubDashboardUrl","addHubConfigDashboardsDashboard","getRemoveHubDashboardUrl","removeHubConfigDashboardsDashboard","orderedDashboarIds","fetchNodesConfigNodes","fetchNodesConfigNodeDashboards","getNodeDashboardsUrl","mustChangeTabOnErrors","setMustChangeTabOnErrors","active","annotationConfig","showCategoryLevels","catalogNavigationMode","restDataResponseXml","supportPostFilters","supportPostFiltersStructure","enableEndpointV20","endpointV20","showHubDashboards","showVirtualDataflow","queryInfo","showOnlyFileDataflow","timePeriodRangeStart","timePeriodRangeEnd","hideLabelOnCategoryWithImage","enableHttpAuth","enableProxy","isCriteriaSelectionModeDynamic","isLastNPeriodsDisabled","optimizeCallWithSoap","namespaceV20","namespaceV21","isPublic","defaultLastNPeriodsExtra","showHubDashboardsExtra","queryInfoExtra","showOnlyFileDataflowExtra","timePeriodRangeStartExtra","timePeriodRangeEndExtra","hideLabelOnCategoryWithImageExtra","isPort","firstFieldWithErrors","textTransform","agency","criteriaSelectionMode","endPoint","subheader","radioValue","RadioGroup","Radio","authHttpUsername","proxyAddress","proxyPort","ttlCatalog","ttlDataflow","getOptionLabel","helper","nodesConfig","getNodeConfigGetUrl","fetchNodesConfigNode","sendNodesConfigNodeEdit","fetchDataflowCache","getDataflowsCacheListUrl","wellFormattedTimeString","days","hours","mins","sec","cacheConfig","fetchCache","clearCache","updateCache","cacheId","ttl","getDataflowsCacheUpdateUrl","updateDataflowCache","createCache","getDataflowsCreateCacheUrl","oldData","createDataflowCache","deleteFromCache","getDataflowsClearCacheUrl","deleteDataflowCache","deleteAllFromCache","getDataflowsClearAllCacheUrl","deleteAllDataflowCache","deleteCatalogCache","getClearNodeCatalogMemoryCacheUrl","hideEmptyDataflowCache","setEmptyDataflowCacheHidden","emptyRowsCounter","setEmptyRowsCounter","rowsCounter","setRowsCounter","cacheSize","totalSeconds","minutes","seconds","secondsToHms","onRowUpdate","newData","onRowDelete","dataDelete","editRow","deleteText","editTooltip","deleteTooltip","fetchNodeTemplatesConfig","getNodeTemplatesUrl","templates","nodeTemplatesConfig","fetchTemplates","deleteTemplate","getDeleteTemplateUrl","deleteNodeTemplatesConfigTemplate","clearTemplates","defaultNodeOpen","onTemplatesClose","needTemplates","setNeedTemplates","deleteTemplateId","setDeleteTemplateId","PERMISSIONS","getPermissionsTranslations","userVal","nodePermissions","nodePermissionsConfig","getNodePermissionsConfigGetUrl","fetchNodePermissionsConfig","getNodePermissionsConfigPutUrl","sendNodePermissionsConfig","nodeDashboards","getAddNodeDashboardUrl","addNodesConfigDashboardsNodeDashboard","getRemoveNodeDashboardUrl","removeNodesConfigDashboardsNodeDashboard","dashboardsIds","getOrderNodeDashboardsUrl","sendNodesConfigDashboardsNodeOrders","isNodeVisible","setNodeVisibility","visible","setNodesConfigNodeVisibility","setNodeId","setNodesConfigNodeId","sendOrders","orderedIds","sendNodesConfigNodesOrder","deleteNode","onForce","deleteNodesConfigNode","onNodesClose","nodeDeleteFormNodeId","setNodeDeleteFormNodeId","cacheFormNodeId","setCacheFormNodeId","isCacheFormVisible","setCacheFormVisibility","templatesNodeId","setTemplatesNodeId","permissionsNodeId","setPermissionsNodeId","dashboardsNodeId","setDashboardsNodeId","nodeFormRef","cacheFormRef","templatesRef","permissionsRef","dashboardsRef","orderedNodes","orderedNodesIds","PersonIcon","canManageNodeDashboards","DashboardIcon","false","users","deleteUser","getUserDeleteUrl","deleteUsersConfigUser","onUserFormShow","showUserConfigForm","onUserFormHide","userDeleteFormUserId","setUserDeleteFormUserId","userFormRef","SettingsSelect","isAppOpen","isNodesOpen","isUsersOpen","appSettingsRef","nodesSettingsRef","usersSettingsRef","isLogDownloadOpen","logLimit","onAppOpen","onAppClose","showSnackbar","isAppSubmitSnackbarVisible","onNodesOpen","onUsersOpen","onUsersClose","onLogDownloadOpen","onLogDownloadClose","onLogLimitSet","onLogDownload","Input","getQueryLog","stringifyResponse","downloadQueryLog","onCacheClear","renderRow","OuterElementContext","OuterElementType","outerProps","useContext","ListboxComponent","other","Children","toArray","getChildSize","isValidElement","ListSubheader","gridRef","resetAfterIndex","useResetCache","Provider","outerElementType","innerElementType","overscanCount","shape","inputRoot","inputInput","listbox","boxSizing","disableListWrap","renderOption","inputValue","noWrap","dialogTop","setIsOpen","onRendered","PaperProps","trimmedValue","onDatasetBackup","useLocation","pathname","badge","badgeActive","success","badgeIcon","getCustomA11yPath","getAdditionalA11yUrlParams","Badge","showZero","badgeContent","URLSearchParams","additionalA11yUrlParams","paramsStr","logoContainer","nameContainer","versionContainer","headerLogoURL","Accordion","borderBottom","MuiAccordion","AccordionSummary","expandIcon","transition","MuiAccordionSummary","AccordionDetails","MuiAccordionDetails","NavigationDrawerButton","onNavigationDrawerOpen","NodeSelector","isDefaultUniqueNode","nodeSelector","HubLogo","img","onLoad","hubLogo","HubName","hubNameLink","hubName","SearchButton","noNode","modalWidth","LanguageButton","A11yButton","DashboardButton","AdminSettingButton","defaultAppConfigOpen","defaultNodesConfigOpen","defaultUsersConfigOpen","defaultNodeConfigOpen","canClearServerCache","defaultAppOpen","defaultNodesOpen","defaultUsersOpen","UserSettingsButton","InfoButton","onInfoOpen","NodeHeader","isFirstRowCollapsed","enableHeaderAutoResponsiveness","isCenterContainerCollapsed","centerContainerWidth","navigationDrawerBtnWidth","homeBtnWidth","isNavigationDrawerOpen","isCategoriesExpanded","onNavigationDrawerClose","onToolbarDrawerOpen","isToolbarDrawerOpen","onToolbarDrawerClose","isInfoOpen","onInfoClose","handleCategoriesExpand","defaultTreeOpen","isDefault","isSecondRowVisible","isThirdRowVisible","AppBar","firstRowContainer","firstRowLeftContainer","hiddenContainer","firstRowCenterContainer","firstRowRightContainer","secondRow","thirdRow","Drawer","navigationDrawer","navigationDrawerHeader","navigationDrawerHeaderTitle","navigationDrawerDivider","navigationDrawerLink","toolbarDrawer","toolbarDrawerDivider","withRouter","getLocalizedFooter","footers","footerLang","appLanguage","Home","nodesRef","isListMode","defaultUserConfigOpen","logoURL","backgroundMediaURL","autoPlay","muted","loop","defaultBackground","preventScroll","fullWidthContainer","anchorContainer","nodesContainer","light","mixins","fetchHub","otherNodes","goToNodeCategories","fetchCatalog","getNodeCatalogUrl","resCount","checkbox","categoryGroupsWithCount","uncategorizedDatasetsCount","uncategorizedSelected","defaultExpanded","noCheckbox","flexWrap","getDownloadButtonStyle","rdf","csv","xml","xls","getIdFromDatasetIdentifier","downloadChipDeleteIcon","counterAvatar","descriptionTextWrapper","descriptionTextWrapperCollapsed","descriptionTextWrapperExpanded","descriptionText","descriptionIcon","isExpanded","onViewDataset","onCollapse","isMultiCategorized","isDownloadModalOpen","setIsDownloadModalOpen","downloadModal","setDownloadModal","textHeight","textWrapperHeight","groupedAttachments","attachedDataFiles","urls","catalogType","note","referenceMetadata","Avatar","deleteIconSmall","onExited","ListItem","scrollResultsToDatasetByParam","datasetIdParam","split2","decodeURIComponent","Results","expandedIndexes","configIsListMode","expand","onListModeToggle","subCategories","isAccessible","onAccessibleDatasetFetch","categoryPathLabels","nodeName","searchTitle","Breadcrumbs","breadcrumbsSeparator","breadcrumbs","breadcrumbsLastElem","categoriesTitle","results","cardActions","setNodeExtras","setHubExtras","newNodeExtras","newHubExtras","DatasetDomain","onFetchStructureEnable","dsDatasetId","dsNodeCode","dsCategoryPath","dsViewId","onDatasetReset","fetchStructure","enableDatasetStructureFetch","getDatasetStructureUrl","fetchDatasetStructure","getLabelsMap","getNodes","selectValues","setSelectValues","lastValorizedIdx","setLastValorizedIdx","onFilterApply","onFilterReset","isApplyDisabled","setIsApplyDisable","labelsMap","foundNodes","foundNodesInChild","selects","lastLavorizableIdx","newSelectedValues","handleFilterSelect","cancelPendingRequests","requestUuids","dashboardsBreadcrumbsHeight","dashboardsTitleHeight","dashboardsFiltersHeight","dashboardsHeaderHeight","getIsFilterEnabled","hasDynamicView","fetchDashboard","fetchDashboardsDashboard","fetchDashboardsDataset","setDashboardsDatasetFilter","fetchDashboardsMapGeometries","submitDashboardDatasetDownload","dashboardTitle","commonsFilters","dashboardHeader","setFilterValue","allowedDashboards","setAllowedDashboards","tabIdx","setTabIdx","exportArgs","setExportArgs","exportCsvParams","setExportCsvParams","newAllowedDashboards","handleFilterApply","handleFetchDatasets","fetchStatic","fetchDynamic","dynamicFilterValue","addRequest","handleExportCsvSubmit","handleExport","currentDashboardId","DashboardsDomain","paddingRight","cardContainer","useTheme","chunkSize","useMediaQuery","breakpoints","categoriesChunk","rootCategory","fontSizes","Subtree","parentPath","ListItemText","categorySchemesTabs","categorySchemeTab","setCategorySchemeTab","uncategorizedCategory","goToDatasets","categorizedDataset","uncategorizedDataset","getCategory","categorySchema","fetchNode","getNodeUrl","clearNode","clearCatalog","accessibleDataset","setAccessibleDataset","nodeHavingCode","isFetchNodeEnabled","areNodeAndCatalogOk","exact","filtersParams","testDSForQuery","keywords","keyword","testCatForFilters","dssForCount","dssForResults","searchRecursive","overrideCatSatisfyFilters","catSatisfyFilters","dssSatisfyQueryMap","categoryGroup","recursiveCountAndFilterZero","visited","uniqueDssSatisfyQueryCount","dsId","resultsMap","a11yParam","filtered","scrollToDatasetId","viewParam","fullPath","setAppLanguage","DEFAULT_THEME","dark","contrastText","setIsInitialized","ClickAwayListenerProps","onClickAway","ErrorSnackbar","setIsVisible","setMessage","setIsError","deleteConflictModal","usedBy","getObjectTranslation","username","setUserPassword","setPasswordFormRef","overlay","progressContainer","progress","messagesContainer","messageRow","spinner","flushSpinner","isHandlerOn","setIsHandlerOn","LinearProgress","aria-live","aria-busy","ErrorBoundary","goHome","reload","setTheme","mounted","customTheme","createMuiTheme","CssBaseline","ThemeProvider","isA11yParam","WithCustomThemeForNode","prefix","a11yPrefix","WithCustomThemeNoNode","onUserSetPasswordFormShow","showUserSetPasswordForm","clearPendingRequests","defaultNode","tokenParam","hubReducer","nodeReducer","LocalCategoryProvider","categ","excludedRequestFromClear","rootReducer","pendingRequest","newRequest","requestLabel","cancelTokenSource","newPendingRequests","v","datasetMap","datasetUncategorized","newState","dataflowId","cachedDataflow","viewLayout","viewLayouts","timePeriodsByFreqTree","onDeleteConflictForce","userMiddlewareFactory","requestMiddlewareFactory","handleSuccess","requestAction","onSuccess","successRequest","handleGenericError","onGenericError","handleError","onManagedServerError","handleManagedServerError","axios","CancelToken","withCredentials","transformResponse","responseType","cancelToken","isCancel","configMiddleware","fileSaveMiddleware","partialcontent","FileSaver","saveAs","Blob","i18nMiddleware","i18n","changeLanguage","requestSpinnerMiddlewareFactory","spinnerState","feedbackMiddlewareFactory","fetchDatasetAsyncHandlerMiddlewareFactory","myWorker","cellCount","successFetchDatasetAsyncHandler","fetchDashboardDatasetAsyncHandlerMiddlewareFactory","initFetchDashboardDatasetAsyncHandler","successFetchDashboardDatasetAsyncHandler","resetFetchDashboardDatasetAsyncHandler","a11yMiddleware","nodeMiddleware","getRandomParam","configFiles","origBaseURL","responses","configs","resources","translation","supportedAndTranslatedLanguages","htmlStr","use","initReactI18next","lng","returnEmptyString","interpolation","escapeValue","configureStore","reducer","middleware","initAction","ReactDOM"],"mappings":"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","file":"static/js/main.710910d0.chunk.js","sourcesContent":["/*!\r\n * @license Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\r\n * For licensing, see LICENSE.md.\r\n */\r\n!function(t){const e=t.en=t.en||{};e.dictionary=Object.assign(e.dictionary||{},{\"%0 of %1\":\"%0 of %1\",\"Align cell text to the bottom\":\"Align cell text to the bottom\",\"Align cell text to the center\":\"Align cell text to the center\",\"Align cell text to the left\":\"Align cell text to the left\",\"Align cell text to the middle\":\"Align cell text to the middle\",\"Align cell text to the right\":\"Align cell text to the right\",\"Align cell text to the top\":\"Align cell text to the top\",\"Align center\":\"Align center\",\"Align left\":\"Align left\",\"Align right\":\"Align right\",\"Align table to the left\":\"Align table to the left\",\"Align table to the right\":\"Align table to the right\",Alignment:\"Alignment\",Aquamarine:\"Aquamarine\",Background:\"Background\",Black:\"Black\",Blue:\"Blue\",Bold:\"Bold\",Border:\"Border\",\"Bulleted List\":\"Bulleted List\",\"Bulleted list styles toolbar\":\"Bulleted list styles toolbar\",Cancel:\"Cancel\",\"Cell properties\":\"Cell properties\",\"Center table\":\"Center table\",\"Choose heading\":\"Choose heading\",Circle:\"Circle\",Color:\"Color\",\"Color picker\":\"Color picker\",Column:\"Column\",Dashed:\"Dashed\",Decimal:\"Decimal\",\"Decimal with leading zero\":\"Decimal with leading zero\",\"Decrease indent\":\"Decrease indent\",\"Delete column\":\"Delete column\",\"Delete row\":\"Delete row\",\"Dim grey\":\"Dim grey\",Dimensions:\"Dimensions\",Disc:\"Disc\",\"Document colors\":\"Document colors\",Dotted:\"Dotted\",Double:\"Double\",Downloadable:\"Downloadable\",\"Dropdown toolbar\":\"Dropdown toolbar\",\"Edit link\":\"Edit link\",\"Editor toolbar\":\"Editor toolbar\",\"Font Background Color\":\"Font Background Color\",\"Font Color\":\"Font Color\",Green:\"Green\",Grey:\"Grey\",Groove:\"Groove\",\"Header column\":\"Header column\",\"Header row\":\"Header row\",Heading:\"Heading\",\"Heading 1\":\"Heading 1\",\"Heading 2\":\"Heading 2\",\"Heading 3\":\"Heading 3\",\"Heading 4\":\"Heading 4\",\"Heading 5\":\"Heading 5\",\"Heading 6\":\"Heading 6\",Height:\"Height\",\"Horizontal text alignment toolbar\":\"Horizontal text alignment toolbar\",\"Increase indent\":\"Increase indent\",\"Insert column left\":\"Insert column left\",\"Insert column right\":\"Insert column right\",\"Insert paragraph after block\":\"Insert paragraph after block\",\"Insert paragraph before block\":\"Insert paragraph before block\",\"Insert row above\":\"Insert row above\",\"Insert row below\":\"Insert row below\",\"Insert table\":\"Insert table\",Inset:\"Inset\",Italic:\"Italic\",Justify:\"Justify\",\"Justify cell text\":\"Justify cell text\",\"Light blue\":\"Light blue\",\"Light green\":\"Light green\",\"Light grey\":\"Light grey\",Link:\"Link\",\"Link URL\":\"Link URL\",\"Lower-latin\":\"Lower-latin\",\"Lower–roman\":\"Lower–roman\",\"Merge cell down\":\"Merge cell down\",\"Merge cell left\":\"Merge cell left\",\"Merge cell right\":\"Merge cell right\",\"Merge cell up\":\"Merge cell up\",\"Merge cells\":\"Merge cells\",Next:\"Next\",None:\"None\",\"Numbered List\":\"Numbered List\",\"Numbered list styles toolbar\":\"Numbered list styles toolbar\",\"Open in a new tab\":\"Open in a new tab\",\"Open link in new tab\":\"Open link in new tab\",Orange:\"Orange\",Outset:\"Outset\",Padding:\"Padding\",Paragraph:\"Paragraph\",Previous:\"Previous\",Purple:\"Purple\",Red:\"Red\",Redo:\"Redo\",\"Remove color\":\"Remove color\",\"Remove Format\":\"Remove Format\",\"Rich Text Editor\":\"Rich Text Editor\",\"Rich Text Editor, %0\":\"Rich Text Editor, %0\",Ridge:\"Ridge\",Row:\"Row\",Save:\"Save\",\"Select all\":\"Select all\",\"Select column\":\"Select column\",\"Select row\":\"Select row\",\"Show more items\":\"Show more items\",Solid:\"Solid\",\"Split cell horizontally\":\"Split cell horizontally\",\"Split cell vertically\":\"Split cell vertically\",Square:\"Square\",Strikethrough:\"Strikethrough\",Style:\"Style\",\"Table alignment toolbar\":\"Table alignment toolbar\",\"Table cell text alignment\":\"Table cell text alignment\",\"Table properties\":\"Table properties\",\"Table toolbar\":\"Table toolbar\",\"Text alignment\":\"Text alignment\",\"Text alignment toolbar\":\"Text alignment toolbar\",'The color is invalid. Try \"#FF0000\" or \"rgb(255,0,0)\" or \"red\".':'The color is invalid. Try \"#FF0000\" or \"rgb(255,0,0)\" or \"red\".','The value is invalid. Try \"10px\" or \"2em\" or simply \"2\".':'The value is invalid. Try \"10px\" or \"2em\" or simply \"2\".',\"This link has no URL\":\"This link has no URL\",\"Toggle the circle list style\":\"Toggle the circle list style\",\"Toggle the decimal list style\":\"Toggle the decimal list style\",\"Toggle the decimal with leading zero list style\":\"Toggle the decimal with leading zero list style\",\"Toggle the disc list style\":\"Toggle the disc list style\",\"Toggle the lower–latin list style\":\"Toggle the lower–latin list style\",\"Toggle the lower–roman list style\":\"Toggle the lower–roman list style\",\"Toggle the square list style\":\"Toggle the square list style\",\"Toggle the upper–latin list style\":\"Toggle the upper–latin list style\",\"Toggle the upper–roman list style\":\"Toggle the upper–roman list style\",Turquoise:\"Turquoise\",Underline:\"Underline\",Undo:\"Undo\",Unlink:\"Unlink\",\"Upper-latin\":\"Upper-latin\",\"Upper-roman\":\"Upper-roman\",\"Vertical text alignment toolbar\":\"Vertical text alignment toolbar\",White:\"White\",\"Widget toolbar\":\"Widget toolbar\",Width:\"Width\",Yellow:\"Yellow\"})}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={})),function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define([],e):\"object\"==typeof exports?exports.ClassicEditor=e():t.ClassicEditor=e()}(window,(function(){return function(t){var e={};function n(o){if(e[o])return e[o].exports;var i=e[o]={i:o,l:!1,exports:{}};return t[o].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var i in t)n.d(o,i,function(e){return t[e]}.bind(null,i));return o},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,\"a\",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p=\"\",n(n.s=57)}([function(t,e,n){\"use strict\";n.d(e,\"a\",(function(){return o})),n.d(e,\"c\",(function(){return i})),n.d(e,\"b\",(function(){return r}));class o extends Error{constructor(t,e,n){super(`${t}${n?` ${JSON.stringify(n)}`:\"\"}${s(t)}`),this.name=\"CKEditorError\",this.context=e,this.data=n}is(t){return\"CKEditorError\"===t}static rethrowUnexpectedError(t,e){if(t.is&&t.is(\"CKEditorError\"))throw t;const n=new o(t.message,e);throw n.stack=t.stack,n}}function i(t,e){console.warn(...a(t,e))}function r(t,e){console.error(...a(t,e))}function s(t){return`\\nRead more: https://ckeditor.com/docs/ckeditor5/latest/framework/guides/support/error-codes.html#error-${t}`}function a(t,e){const n=s(t);return e?[t,e,n]:[t,n]}},function(t,e,n){\"use strict\";var o,i=function(){return void 0===o&&(o=Boolean(window&&document&&document.all&&!window.atob)),o},r=function(){var t={};return function(e){if(void 0===t[e]){var n=document.querySelector(e);if(window.HTMLIFrameElement&&n instanceof window.HTMLIFrameElement)try{n=n.contentDocument.head}catch(t){n=null}t[e]=n}return t[e]}}(),s=[];function a(t){for(var e=-1,n=0;nt.length)&&(e=t.length);for(var n=0,o=new Array(e);n:first-child{margin-top:var(--ck-spacing-large)}.ck.ck-editor__editable_inline>:last-child{margin-bottom:var(--ck-spacing-large)}.ck.ck-editor__editable_inline.ck-blurred ::selection{background:var(--ck-color-editable-blur-selection)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_n]:after{border-bottom-color:var(--ck-color-base-foreground)}.ck.ck-balloon-panel.ck-toolbar-container[class*=arrow_s]:after{border-top-color:var(--ck-color-base-foreground)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/editorui/editorui.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\"],names:[],mappings:\"AAWA,MACC,0CACD,CAEA,yDCJC,eDWD,CAPA,yJCAE,qCDOF,CAJC,oEERA,YAAa,CACb,2BAA2B,CCF3B,qCHYA,CAGD,+BACC,aAAc,CACd,oCAAqC,CACrC,4BAwBD,CAtBC,wCACC,eACD,CAEA,wCACC,gBACD,CAGA,4CACC,kCACD,CAGA,2CACC,qCACD,CAGA,sDACC,kDACD,CAKA,gEACC,mDACD,CAIA,gEACC,gDACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n@import \"../../../mixins/_disabled.css\";\\n@import \"../../../mixins/_shadow.css\";\\n@import \"../../../mixins/_focus.css\";\\n@import \"../../mixins/_button.css\";\\n\\n:root {\\n\\t--ck-color-editable-blur-selection: hsl(0, 0%, 85%);\\n}\\n\\n.ck.ck-editor__editable:not(.ck-editor__nested-editable) {\\n\\t@mixin ck-rounded-corners;\\n\\n\\t&.ck-focused {\\n\\t\\t@mixin ck-focus-ring;\\n\\t\\t@mixin ck-box-shadow var(--ck-inner-shadow);\\n\\t}\\n}\\n\\n.ck.ck-editor__editable_inline {\\n\\toverflow: auto;\\n\\tpadding: 0 var(--ck-spacing-standard);\\n\\tborder: 1px solid transparent;\\n\\n\\t&[dir=\"ltr\"] {\\n\\t\\ttext-align: left;\\n\\t}\\n\\n\\t&[dir=\"rtl\"] {\\n\\t\\ttext-align: right;\\n\\t}\\n\\n\\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/116 */\\n\\t& > *:first-child {\\n\\t\\tmargin-top: var(--ck-spacing-large);\\n\\t}\\n\\n\\t/* https://github.com/ckeditor/ckeditor5/issues/847 */\\n\\t& > *:last-child {\\n\\t\\tmargin-bottom: var(--ck-spacing-large);\\n\\t}\\n\\n\\t/* https://github.com/ckeditor/ckeditor5/issues/6517 */\\n\\t&.ck-blurred ::selection {\\n\\t\\tbackground: var(--ck-color-editable-blur-selection);\\n\\t}\\n}\\n\\n/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/111 */\\n.ck.ck-balloon-panel.ck-toolbar-container[class*=\"arrow_n\"] {\\n\\t&::after {\\n\\t\\tborder-bottom-color: var(--ck-color-base-foreground);\\n\\t}\\n}\\n\\n.ck.ck-balloon-panel.ck-toolbar-container[class*=\"arrow_s\"] {\\n\\t&::after {\\n\\t\\tborder-top-color: var(--ck-color-base-foreground);\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A visual style of focused element's border.\\n */\\n@define-mixin ck-focus-ring {\\n\\t/* Disable native outline. */\\n\\toutline: none;\\n\\tborder: var(--ck-focus-ring)\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-label{display:block}.ck.ck-voice-label{display:none}.ck.ck-label{font-weight:700}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/label/label.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/label/label.css\"],names:[],mappings:\"AAKA,aACC,aACD,CAEA,mBACC,YACD,CCNA,aACC,eACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-label {\\n\\tdisplay: block;\\n}\\n\\n.ck.ck-voice-label {\\n\\tdisplay: none;\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-label {\\n\\tfont-weight: bold;\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-sticky-panel .ck-sticky-panel__content_sticky{z-index:var(--ck-z-modal);position:fixed;top:0}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky_bottom-limit{top:auto;position:absolute}.ck.ck-sticky-panel .ck-sticky-panel__content_sticky{box-shadow:var(--ck-drop-shadow),0 0;border-width:0 1px 1px;border-top-left-radius:0;border-top-right-radius:0}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/stickypanel.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/stickypanel.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\"],names:[],mappings:\"AAMC,qDACC,yBAA0B,CAC1B,cAAe,CACf,KACD,CAEA,kEACC,QAAS,CACT,iBACD,CCPA,qDCCA,oCAA8B,CDE7B,sBAAuB,CACvB,wBAAyB,CACzB,yBACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-sticky-panel {\\n\\t& .ck-sticky-panel__content_sticky {\\n\\t\\tz-index: var(--ck-z-modal); /* #315 */\\n\\t\\tposition: fixed;\\n\\t\\ttop: 0;\\n\\t}\\n\\n\\t& .ck-sticky-panel__content_sticky_bottom-limit {\\n\\t\\ttop: auto;\\n\\t\\tposition: absolute;\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_shadow.css\";\\n\\n.ck.ck-sticky-panel {\\n\\t& .ck-sticky-panel__content_sticky {\\n\\t\\t@mixin ck-drop-shadow;\\n\\n\\t\\tborder-width: 0 1px 1px;\\n\\t\\tborder-top-left-radius: 0;\\n\\t\\tborder-top-right-radius: 0;\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-dropdown{display:inline-block;position:relative}.ck.ck-dropdown .ck-dropdown__arrow{pointer-events:none;z-index:var(--ck-z-default)}.ck.ck-dropdown .ck-button.ck-dropdown__button{width:100%}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on .ck-tooltip{display:none}.ck.ck-dropdown .ck-dropdown__panel{-webkit-backface-visibility:hidden;display:none;z-index:var(--ck-z-modal);position:absolute}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel-visible{display:inline-block}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw{bottom:100%}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{top:100%;bottom:auto}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_ne,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_se{left:0}.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_nw,.ck.ck-dropdown .ck-dropdown__panel.ck-dropdown__panel_sw{right:0}.ck.ck-toolbar .ck-dropdown__panel{z-index:calc(var(--ck-z-modal) + 1)}:root{--ck-dropdown-arrow-size:calc(var(--ck-icon-size)*0.5)}.ck.ck-dropdown{font-size:inherit}.ck.ck-dropdown .ck-dropdown__arrow{width:var(--ck-dropdown-arrow-size)}[dir=ltr] .ck.ck-dropdown .ck-dropdown__arrow{right:var(--ck-spacing-standard);margin-left:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-dropdown .ck-dropdown__arrow{left:var(--ck-spacing-standard);margin-right:var(--ck-spacing-small)}.ck.ck-dropdown.ck-disabled .ck-dropdown__arrow{opacity:var(--ck-disabled-opacity)}[dir=ltr] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-left:var(--ck-spacing-small)}[dir=rtl] .ck.ck-dropdown .ck-button.ck-dropdown__button:not(.ck-button_with-text){padding-right:var(--ck-spacing-small)}.ck.ck-dropdown .ck-button.ck-dropdown__button .ck-button__label{width:7em;overflow:hidden;text-overflow:ellipsis}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-on{border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-dropdown .ck-button.ck-dropdown__button.ck-dropdown__button_label-width_auto .ck-button__label{width:auto}.ck.ck-dropdown__panel{border-radius:0}.ck-rounded-corners .ck.ck-dropdown__panel,.ck.ck-dropdown__panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-dropdown__panel{box-shadow:var(--ck-drop-shadow),0 0;background:var(--ck-color-dropdown-panel-background);border:1px solid var(--ck-color-dropdown-panel-border);bottom:0;min-width:100%}.ck.ck-dropdown__panel.ck-dropdown__panel_se{border-top-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_sw{border-top-right-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_ne{border-bottom-left-radius:0}.ck.ck-dropdown__panel.ck-dropdown__panel_nw{border-bottom-right-radius:0}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/dropdown.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/mixins/_tooltip.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/dropdown.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\"],names:[],mappings:\"AAOA,gBACC,oBAAqB,CACrB,iBAyDD,CAvDC,oCACC,mBAAoB,CACpB,2BACD,CAGA,+CACC,UAOD,CCcA,iEACC,YACD,CDdA,oCAGC,kCAAmC,CAEnC,YAAa,CACb,yBAA0B,CAE1B,iBA8BD,CA5BC,+DACC,oBACD,CAEA,oHAEC,WACD,CAEA,oHAMC,QAAS,CACT,WACD,CAEA,oHAEC,MACD,CAEA,oHAEC,OACD,CAQF,mCACC,mCACD,CEhEA,MACC,sDACD,CAEA,gBAEC,iBAiED,CA/DC,oCACC,mCACD,CAGC,8CACC,gCAAiC,CAGjC,sCACD,CAIA,8CACC,+BAAgC,CAGhC,oCACD,CAGD,gDC/BA,kCDiCA,CAIE,mFAEC,oCACD,CAIA,mFAEC,qCACD,CAID,iEACC,SAAU,CACV,eAAgB,CAChB,sBACD,CAGA,6EC1DD,kCD4DC,CAGA,qDACC,2BAA4B,CAC5B,4BACD,CAEA,sGACC,UACD,CAIF,uBExEC,eFoGD,CA5BA,qFEpEE,qCFgGF,CA5BA,uBG1EC,oCAA8B,CH8E9B,oDAAqD,CACrD,sDAAuD,CACvD,QAAS,CAGT,cAmBD,CAfC,6CACC,wBACD,CAEA,6CACC,yBACD,CAEA,6CACC,2BACD,CAEA,6CACC,4BACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \\\"../tooltip/mixins/_tooltip.css\\\";\\n\\n.ck.ck-dropdown {\\n\\tdisplay: inline-block;\\n\\tposition: relative;\\n\\n\\t& .ck-dropdown__arrow {\\n\\t\\tpointer-events: none;\\n\\t\\tz-index: var(--ck-z-default);\\n\\t}\\n\\n\\t/* Dropdown button should span horizontally, e.g. in vertical toolbars */\\n\\t& .ck-button.ck-dropdown__button {\\n\\t\\twidth: 100%;\\n\\n\\t\\t/* Disable main button's tooltip when the dropdown is open. Otherwise the panel may\\n\\t\\tpartially cover the tooltip */\\n\\t\\t&.ck-on {\\n\\t\\t\\t@mixin ck-tooltip_disabled;\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck-dropdown__panel {\\n\\t\\t/* This is to get rid of flickering when the tooltip is shown under the panel,\\n\\t\\twhich looks like the panel moves vertically a pixel down and up. */\\n\\t\\t-webkit-backface-visibility: hidden;\\n\\n\\t\\tdisplay: none;\\n\\t\\tz-index: var(--ck-z-modal);\\n\\n\\t\\tposition: absolute;\\n\\n\\t\\t&.ck-dropdown__panel-visible {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t}\\n\\n\\t\\t&.ck-dropdown__panel_ne,\\n\\t\\t&.ck-dropdown__panel_nw {\\n\\t\\t\\tbottom: 100%;\\n\\t\\t}\\n\\n\\t\\t&.ck-dropdown__panel_se,\\n\\t\\t&.ck-dropdown__panel_sw {\\n\\t\\t\\t/*\\n\\t\\t\\t * Using transform: translate3d( 0, 100%, 0 ) causes blurry dropdown on Chrome 67-78+ on non-retina displays.\\n\\t\\t\\t * See https://github.com/ckeditor/ckeditor5/issues/1053.\\n\\t\\t\\t */\\n\\t\\t\\ttop: 100%;\\n\\t\\t\\tbottom: auto;\\n\\t\\t}\\n\\n\\t\\t&.ck-dropdown__panel_ne,\\n\\t\\t&.ck-dropdown__panel_se {\\n\\t\\t\\tleft: 0px;\\n\\t\\t}\\n\\n\\t\\t&.ck-dropdown__panel_nw,\\n\\t\\t&.ck-dropdown__panel_sw {\\n\\t\\t\\tright: 0px;\\n\\t\\t}\\n\\t}\\n}\\n\\n/*\\n * Toolbar dropdown panels should be always above the UI (eg. other dropdown panels) from the editor's content.\\n * See https://github.com/ckeditor/ckeditor5/issues/7874\\n */\\n.ck.ck-toolbar .ck-dropdown__panel {\\n\\tz-index: calc( var(--ck-z-modal) + 1 );\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Enables the tooltip, which is the tooltip is in DOM but\\n * not yet displayed.\\n */\\n@define-mixin ck-tooltip_enabled {\\n\\t& .ck-tooltip {\\n\\t\\tdisplay: block;\\n\\n\\t\\t/*\\n\\t\\t * Don't display tooltips in devices which don't support :hover.\\n\\t\\t * In fact, it's all about iOS, which forces user to click UI elements twice to execute\\n\\t\\t * the primary action, when tooltips are enabled.\\n\\t\\t *\\n\\t\\t * Q: OK, but why not the following query?\\n\\t\\t *\\n\\t\\t * @media (hover) {\\n\\t\\t * display: block;\\n\\t\\t * }\\n\\t\\t *\\n\\t\\t * A: Because FF does not support it and it would completely disable tooltips\\n\\t\\t * in that browser.\\n\\t\\t *\\n\\t\\t * More in https://github.com/ckeditor/ckeditor5/issues/920.\\n\\t\\t */\\n\\t\\t@media (hover:none) {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n/**\\n * Disables the tooltip making it disappear from DOM.\\n */\\n@define-mixin ck-tooltip_disabled {\\n\\t& .ck-tooltip {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\\n/**\\n * Shows the tooltip, which is already in DOM.\\n * Requires `ck-tooltip_enabled` first.\\n */\\n@define-mixin ck-tooltip_visible {\\n\\t& .ck-tooltip {\\n\\t\\tvisibility: visible;\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n@import \"../../../mixins/_disabled.css\";\\n@import \"../../../mixins/_shadow.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n:root {\\n\\t--ck-dropdown-arrow-size: calc(0.5 * var(--ck-icon-size));\\n}\\n\\n.ck.ck-dropdown {\\n\\t/* Enable font size inheritance, which allows fluid UI scaling. */\\n\\tfont-size: inherit;\\n\\n\\t& .ck-dropdown__arrow {\\n\\t\\twidth: var(--ck-dropdown-arrow-size);\\n\\t}\\n\\n\\t@mixin ck-dir ltr {\\n\\t\\t& .ck-dropdown__arrow {\\n\\t\\t\\tright: var(--ck-spacing-standard);\\n\\n\\t\\t\\t/* A space to accommodate the triangle. */\\n\\t\\t\\tmargin-left: var(--ck-spacing-standard);\\n\\t\\t}\\n\\t}\\n\\n\\t@mixin ck-dir rtl {\\n\\t\\t& .ck-dropdown__arrow {\\n\\t\\t\\tleft: var(--ck-spacing-standard);\\n\\n\\t\\t\\t/* A space to accommodate the triangle. */\\n\\t\\t\\tmargin-right: var(--ck-spacing-small);\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-disabled .ck-dropdown__arrow {\\n\\t\\t@mixin ck-disabled;\\n\\t}\\n\\n\\t& .ck-button.ck-dropdown__button {\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t&:not(.ck-button_with-text) {\\n\\t\\t\\t\\t/* Make sure dropdowns with just an icon have the right inner spacing */\\n\\t\\t\\t\\tpadding-left: var(--ck-spacing-small);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t&:not(.ck-button_with-text) {\\n\\t\\t\\t\\t/* Make sure dropdowns with just an icon have the right inner spacing */\\n\\t\\t\\t\\tpadding-right: var(--ck-spacing-small);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t/* #23 */\\n\\t\\t& .ck-button__label {\\n\\t\\t\\twidth: 7em;\\n\\t\\t\\toverflow: hidden;\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t}\\n\\n\\t\\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\\n\\t\\t&.ck-disabled .ck-button__label {\\n\\t\\t\\t@mixin ck-disabled;\\n\\t\\t}\\n\\n\\t\\t/* https://github.com/ckeditor/ckeditor5/issues/816 */\\n\\t\\t&.ck-on {\\n\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t}\\n\\n\\t\\t&.ck-dropdown__button_label-width_auto .ck-button__label {\\n\\t\\t\\twidth: auto;\\n\\t\\t}\\n\\t}\\n}\\n\\n.ck.ck-dropdown__panel {\\n\\t@mixin ck-rounded-corners;\\n\\t@mixin ck-drop-shadow;\\n\\n\\tbackground: var(--ck-color-dropdown-panel-background);\\n\\tborder: 1px solid var(--ck-color-dropdown-panel-border);\\n\\tbottom: 0;\\n\\n\\t/* Make sure the panel is at least as wide as the drop-down\\'s button. */\\n\\tmin-width: 100%;\\n\\n\\t/* Disabled corner border radius to be consistent with the .dropdown__button\\n\\thttps://github.com/ckeditor/ckeditor5/issues/816 */\\n\\t&.ck-dropdown__panel_se {\\n\\t\\tborder-top-left-radius: 0;\\n\\t}\\n\\n\\t&.ck-dropdown__panel_sw {\\n\\t\\tborder-top-right-radius: 0;\\n\\t}\\n\\n\\t&.ck-dropdown__panel_ne {\\n\\t\\tborder-bottom-left-radius: 0;\\n\\t}\\n\\n\\t&.ck-dropdown__panel_nw {\\n\\t\\tborder-bottom-right-radius: 0;\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A class which indicates that an element holding it is disabled.\\n */\\n@define-mixin ck-disabled {\\n\\topacity: var(--ck-disabled-opacity);\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-icon{vertical-align:middle}:root{--ck-icon-size:calc(var(--ck-line-height-base)*var(--ck-font-size-normal))}.ck.ck-icon{width:var(--ck-icon-size);height:var(--ck-icon-size);font-size:.8333350694em;will-change:transform}.ck.ck-icon,.ck.ck-icon *{color:inherit;cursor:inherit}.ck.ck-icon :not([fill]){fill:currentColor}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/icon/icon.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/icon/icon.css\"],names:[],mappings:\"AAKA,YACC,qBACD,CCFA,MACC,0EACD,CAEA,YACC,yBAA0B,CAC1B,0BAA2B,CAG3B,uBAAwB,CAQxB,qBAcD,CAZC,0BARA,aAAc,CAGd,cAgBA,CAJC,yBAEC,iBACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-icon {\\n\\tvertical-align: middle;\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-icon-size: calc(var(--ck-line-height-base) * var(--ck-font-size-normal));\\n}\\n\\n.ck.ck-icon {\\n\\twidth: var(--ck-icon-size);\\n\\theight: var(--ck-icon-size);\\n\\n\\t/* Multiplied by the height of the line in \"px\" should give SVG \"viewport\" dimensions */\\n\\tfont-size: .8333350694em;\\n\\n\\tcolor: inherit;\\n\\n\\t/* Inherit cursor style (#5). */\\n\\tcursor: inherit;\\n\\n\\t/* This will prevent blurry icons on Firefox. See #340. */\\n\\twill-change: transform;\\n\\n\\t& * {\\n\\t\\t/* Inherit cursor style (#5). */\\n\\t\\tcursor: inherit;\\n\\n\\t\\t/* Allows dynamic coloring of the icons. */\\n\\t\\tcolor: inherit;\\n\\n\\t\\t&:not([fill]) {\\n\\t\\t\\t/* Needed by FF. */\\n\\t\\t\\tfill: currentColor;\\n\\t\\t}\\n\\t}\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,'.ck.ck-tooltip,.ck.ck-tooltip .ck-tooltip__text:after{position:absolute;pointer-events:none;-webkit-backface-visibility:hidden}.ck.ck-tooltip{visibility:hidden;opacity:0;display:none;z-index:var(--ck-z-modal)}.ck.ck-tooltip .ck-tooltip__text{display:inline-block}.ck.ck-tooltip .ck-tooltip__text:after{content:\"\";width:0;height:0}:root{--ck-tooltip-arrow-size:5px}.ck.ck-tooltip{left:50%;top:0;transition:opacity .2s ease-in-out .2s}.ck.ck-tooltip .ck-tooltip__text{border-radius:0}.ck-rounded-corners .ck.ck-tooltip .ck-tooltip__text,.ck.ck-tooltip .ck-tooltip__text.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-tooltip .ck-tooltip__text{font-size:.9em;line-height:1.5;color:var(--ck-color-tooltip-text);padding:var(--ck-spacing-small) var(--ck-spacing-medium);background:var(--ck-color-tooltip-background);position:relative;left:-50%}.ck.ck-tooltip .ck-tooltip__text:after{transition:opacity .2s ease-in-out .2s;border-style:solid;left:50%}.ck.ck-tooltip.ck-tooltip_s,.ck.ck-tooltip.ck-tooltip_sw{bottom:calc(var(--ck-tooltip-arrow-size)*-1);transform:translateY(100%)}.ck.ck-tooltip.ck-tooltip_s .ck-tooltip__text:after,.ck.ck-tooltip.ck-tooltip_sw .ck-tooltip__text:after{top:calc(var(--ck-tooltip-arrow-size)*-1 + 1px);transform:translateX(-50%);border-left-color:transparent;border-bottom-color:var(--ck-color-tooltip-background);border-right-color:transparent;border-top-color:transparent;border-left-width:var(--ck-tooltip-arrow-size);border-bottom-width:var(--ck-tooltip-arrow-size);border-right-width:var(--ck-tooltip-arrow-size);border-top-width:0}.ck.ck-tooltip.ck-tooltip_sw{right:50%;left:auto}.ck.ck-tooltip.ck-tooltip_sw .ck-tooltip__text{left:auto;right:calc(var(--ck-tooltip-arrow-size)*-2)}.ck.ck-tooltip.ck-tooltip_sw .ck-tooltip__text:after{left:auto;right:0}.ck.ck-tooltip.ck-tooltip_n{top:calc(var(--ck-tooltip-arrow-size)*-1);transform:translateY(-100%)}.ck.ck-tooltip.ck-tooltip_n .ck-tooltip__text:after{bottom:calc(var(--ck-tooltip-arrow-size)*-1);transform:translateX(-50%);border-left-color:transparent;border-bottom-color:transparent;border-right-color:transparent;border-top-color:var(--ck-color-tooltip-background);border-left-width:var(--ck-tooltip-arrow-size);border-bottom-width:0;border-right-width:var(--ck-tooltip-arrow-size);border-top-width:var(--ck-tooltip-arrow-size)}',\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/tooltip.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/tooltip/tooltip.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAKA,sDAEC,iBAAkB,CAGlB,mBAAoB,CAIpB,kCACD,CAEA,eAEC,iBAAkB,CAClB,SAAU,CACV,YAAa,CACb,yBAWD,CATC,iCACC,oBAOD,CALC,uCACC,UAAW,CACX,OAAQ,CACR,QACD,CCxBF,MACC,2BACD,CAEA,eACC,QAAS,CAMT,KAAM,CAON,sCA6FD,CA3FC,iCChBA,eDqCA,CArBA,yGCZC,qCDiCD,CArBA,iCAGC,cAAe,CACf,eAAgB,CAChB,kCAAmC,CACnC,wDAAyD,CACzD,6CAA8C,CAC9C,iBAAkB,CAClB,SAYD,CAVC,uCAMC,sCAAuC,CACvC,kBAAmB,CACnB,QACD,CAYD,yDAEC,4CAA+C,CAC/C,0BASD,CAPC,yGAEC,+CAAkD,CAClD,0BAA6B,CAC7B,6BAAoF,CAApF,sDAAoF,CAApF,8BAAoF,CAApF,4BAAoF,CACpF,8CAAsG,CAAtG,gDAAsG,CAAtG,+CAAsG,CAAtG,kBACD,CAaD,6BACC,SAAU,CACV,SAWD,CATC,+CACC,SAAU,CACV,2CACD,CAEA,qDACC,SAAU,CACV,OACD,CAYD,4BACC,yCAA4C,CAC5C,2BAQD,CANC,oDACC,4CAA+C,CAC/C,0BAA6B,CAC7B,6BAAoF,CAApF,+BAAoF,CAApF,8BAAoF,CAApF,mDAAoF,CACpF,8CAAsG,CAAtG,qBAAsG,CAAtG,+CAAsG,CAAtG,6CACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-tooltip,\\n.ck.ck-tooltip .ck-tooltip__text::after {\\n\\tposition: absolute;\\n\\n\\t/* Without this, hovering the tooltip could keep it visible. */\\n\\tpointer-events: none;\\n\\n\\t/* This is to get rid of flickering when transitioning opacity in Chrome.\\n\\tIt\\'s weird but it works. */\\n\\t-webkit-backface-visibility: hidden;\\n}\\n\\n.ck.ck-tooltip {\\n\\t/* Tooltip is hidden by default. */\\n\\tvisibility: hidden;\\n\\topacity: 0;\\n\\tdisplay: none;\\n\\tz-index: var(--ck-z-modal);\\n\\n\\t& .ck-tooltip__text {\\n\\t\\tdisplay: inline-block;\\n\\n\\t\\t&::after {\\n\\t\\t\\tcontent: \"\";\\n\\t\\t\\twidth: 0;\\n\\t\\t\\theight: 0;\\n\\t\\t}\\n\\t}\\n}\\n','/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n\\n:root {\\n\\t--ck-tooltip-arrow-size: 5px;\\n}\\n\\n.ck.ck-tooltip {\\n\\tleft: 50%;\\n\\n\\t/*\\n\\t * Prevent blurry tooltips in LoDPI environments.\\n\\t * See https://github.com/ckeditor/ckeditor5/issues/1802.\\n\\t */\\n\\ttop: 0;\\n\\n\\t/*\\n\\t * For the transition to work, the tooltip must be controlled\\n\\t * using visibility+opacity. A delay prevents a \"tooltip avalanche\"\\n\\t * i.e. when scanning the toolbar with mouse cursor.\\n\\t */\\n\\ttransition: opacity .2s ease-in-out .2s;\\n\\n\\t& .ck-tooltip__text {\\n\\t\\t@mixin ck-rounded-corners;\\n\\n\\t\\tfont-size: .9em;\\n\\t\\tline-height: 1.5;\\n\\t\\tcolor: var(--ck-color-tooltip-text);\\n\\t\\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\\n\\t\\tbackground: var(--ck-color-tooltip-background);\\n\\t\\tposition: relative;\\n\\t\\tleft: -50%;\\n\\n\\t\\t&::after {\\n\\t\\t\\t/*\\n\\t\\t\\t * For the transition to work, the tooltip must be controlled\\n\\t\\t\\t * using visibility+opacity. A delay prevents a \"tooltip avalanche\"\\n\\t\\t\\t * i.e. when scanning the toolbar with mouse cursor.\\n\\t\\t\\t */\\n\\t\\t\\ttransition: opacity .2s ease-in-out .2s;\\n\\t\\t\\tborder-style: solid;\\n\\t\\t\\tleft: 50%;\\n\\t\\t}\\n\\t}\\n\\n\\t/**\\n\\t * A class that displays the tooltip south of the element.\\n\\t *\\n\\t * [element]\\n\\t * ^\\n\\t * +-----------+\\n\\t * | Tooltip |\\n\\t * +-----------+\\n\\t */\\n\\t&.ck-tooltip_s,\\n\\t&.ck-tooltip_sw {\\n\\t\\tbottom: calc(-1 * var(--ck-tooltip-arrow-size));\\n\\t\\ttransform: translateY( 100% );\\n\\n\\t\\t& .ck-tooltip__text::after {\\n\\t\\t\\t/* 1px addresses gliches in rendering causing gap between the triangle and the text */\\n\\t\\t\\ttop: calc(-1 * var(--ck-tooltip-arrow-size) + 1px);\\n\\t\\t\\ttransform: translateX( -50% );\\n\\t\\t\\tborder-color: transparent transparent var(--ck-color-tooltip-background) transparent;\\n\\t\\t\\tborder-width: 0 var(--ck-tooltip-arrow-size) var(--ck-tooltip-arrow-size) var(--ck-tooltip-arrow-size);\\n\\t\\t}\\n\\t}\\n\\n\\t/**\\n\\t * A class that displays the tooltip south-west of the element.\\n\\t *\\n\\t * [element]\\n\\t * ^\\n\\t * +-----------+\\n\\t * | Tooltip |\\n\\t * +-----------+\\n\\t */\\n\\n\\t&.ck-tooltip_sw {\\n\\t\\tright: 50%;\\n\\t\\tleft: auto;\\n\\n\\t\\t& .ck-tooltip__text {\\n\\t\\t\\tleft: auto;\\n\\t\\t\\tright: calc( -2 * var(--ck-tooltip-arrow-size));\\n\\t\\t}\\n\\n\\t\\t& .ck-tooltip__text::after {\\n\\t\\t\\tleft: auto;\\n\\t\\t\\tright: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t/**\\n\\t * A class that displays the tooltip north of the element.\\n\\t *\\n\\t * +-----------+\\n\\t * | Tooltip |\\n\\t * +-----------+\\n\\t * V\\n\\t * [element]\\n\\t */\\n\\t&.ck-tooltip_n {\\n\\t\\ttop: calc(-1 * var(--ck-tooltip-arrow-size));\\n\\t\\ttransform: translateY( -100% );\\n\\n\\t\\t& .ck-tooltip__text::after {\\n\\t\\t\\tbottom: calc(-1 * var(--ck-tooltip-arrow-size));\\n\\t\\t\\ttransform: translateX( -50% );\\n\\t\\t\\tborder-color: var(--ck-color-tooltip-background) transparent transparent transparent;\\n\\t\\t\\tborder-width: var(--ck-tooltip-arrow-size) var(--ck-tooltip-arrow-size) 0 var(--ck-tooltip-arrow-size);\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-button,a.ck.ck-button{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none}.ck.ck-button .ck-tooltip,a.ck.ck-button .ck-tooltip{display:block}@media (hover:none){.ck.ck-button .ck-tooltip,a.ck.ck-button .ck-tooltip{display:none}}.ck.ck-button,a.ck.ck-button{position:relative;display:inline-flex;align-items:center;justify-content:left}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{display:none}.ck.ck-button.ck-button_with-text .ck-button__label,a.ck.ck-button.ck-button_with-text .ck-button__label{display:inline-block}.ck.ck-button:not(.ck-button_with-text),a.ck.ck-button:not(.ck-button_with-text){justify-content:center}.ck.ck-button:hover .ck-tooltip,a.ck.ck-button:hover .ck-tooltip{visibility:visible;opacity:1}.ck.ck-button:focus:not(:hover) .ck-tooltip,a.ck.ck-button:focus:not(:hover) .ck-tooltip{display:none}.ck.ck-button,a.ck.ck-button{background:var(--ck-color-button-default-background)}.ck.ck-button:not(.ck-disabled):hover,a.ck.ck-button:not(.ck-disabled):hover{background:var(--ck-color-button-default-hover-background)}.ck.ck-button:not(.ck-disabled):active,a.ck.ck-button:not(.ck-disabled):active{background:var(--ck-color-button-default-active-background);box-shadow:inset 0 2px 2px var(--ck-color-button-default-active-shadow)}.ck.ck-button.ck-disabled,a.ck.ck-button.ck-disabled{background:var(--ck-color-button-default-disabled-background)}.ck.ck-button,a.ck.ck-button{border-radius:0}.ck-rounded-corners .ck.ck-button,.ck-rounded-corners a.ck.ck-button,.ck.ck-button.ck-rounded-corners,a.ck.ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-button,a.ck.ck-button{white-space:nowrap;cursor:default;vertical-align:middle;padding:var(--ck-spacing-tiny);text-align:center;min-width:var(--ck-ui-component-min-height);min-height:var(--ck-ui-component-min-height);line-height:1;font-size:inherit;border:1px solid transparent;transition:box-shadow .2s ease-in-out,border .2s ease-in-out;-webkit-appearance:none}.ck.ck-button:active,.ck.ck-button:focus,a.ck.ck-button:active,a.ck.ck-button:focus{outline:none;border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),0 0}.ck.ck-button .ck-button__icon use,.ck.ck-button .ck-button__icon use *,a.ck.ck-button .ck-button__icon use,a.ck.ck-button .ck-button__icon use *{color:inherit}.ck.ck-button .ck-button__label,a.ck.ck-button .ck-button__label{font-size:inherit;font-weight:inherit;color:inherit;cursor:inherit;vertical-align:middle}[dir=ltr] .ck.ck-button .ck-button__label,[dir=ltr] a.ck.ck-button .ck-button__label{text-align:left}[dir=rtl] .ck.ck-button .ck-button__label,[dir=rtl] a.ck.ck-button .ck-button__label{text-align:right}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{color:inherit}[dir=ltr] .ck.ck-button .ck-button__keystroke,[dir=ltr] a.ck.ck-button .ck-button__keystroke{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-button .ck-button__keystroke,[dir=rtl] a.ck.ck-button .ck-button__keystroke{margin-right:var(--ck-spacing-large)}.ck.ck-button .ck-button__keystroke,a.ck.ck-button .ck-button__keystroke{font-weight:700;opacity:.7}.ck.ck-button.ck-disabled:active,.ck.ck-button.ck-disabled:focus,a.ck.ck-button.ck-disabled:active,a.ck.ck-button.ck-disabled:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),0 0}.ck.ck-button.ck-disabled .ck-button__icon,a.ck.ck-button.ck-disabled .ck-button__icon{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-disabled .ck-button__label,a.ck.ck-button.ck-disabled .ck-button__label{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-disabled .ck-button__keystroke,a.ck.ck-button.ck-disabled .ck-button__keystroke{opacity:.3}.ck.ck-button.ck-button_with-text,a.ck.ck-button.ck-button_with-text{padding:var(--ck-spacing-tiny) var(--ck-spacing-standard)}[dir=ltr] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=ltr] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-left:calc(var(--ck-spacing-small)*-1);margin-right:var(--ck-spacing-small)}[dir=rtl] .ck.ck-button.ck-button_with-text .ck-button__icon,[dir=rtl] a.ck.ck-button.ck-button_with-text .ck-button__icon{margin-right:calc(var(--ck-spacing-small)*-1);margin-left:var(--ck-spacing-small)}.ck.ck-button.ck-button_with-keystroke .ck-button__label,a.ck.ck-button.ck-button_with-keystroke .ck-button__label{flex-grow:1}.ck.ck-button.ck-on,a.ck.ck-button.ck-on{background:var(--ck-color-button-on-background)}.ck.ck-button.ck-on:not(.ck-disabled):hover,a.ck.ck-button.ck-on:not(.ck-disabled):hover{background:var(--ck-color-button-on-hover-background)}.ck.ck-button.ck-on:not(.ck-disabled):active,a.ck.ck-button.ck-on:not(.ck-disabled):active{background:var(--ck-color-button-on-active-background);box-shadow:inset 0 2px 2px var(--ck-color-button-on-active-shadow)}.ck.ck-button.ck-on.ck-disabled,a.ck.ck-button.ck-on.ck-disabled{background:var(--ck-color-button-on-disabled-background)}.ck.ck-button.ck-button-save,a.ck.ck-button.ck-button-save{color:var(--ck-color-button-save)}.ck.ck-button.ck-button-cancel,a.ck.ck-button.ck-button-cancel{color:var(--ck-color-button-cancel)}.ck.ck-button-action,a.ck.ck-button-action{background:var(--ck-color-button-action-background)}.ck.ck-button-action:not(.ck-disabled):hover,a.ck.ck-button-action:not(.ck-disabled):hover{background:var(--ck-color-button-action-hover-background)}.ck.ck-button-action:not(.ck-disabled):active,a.ck.ck-button-action:not(.ck-disabled):active{background:var(--ck-color-button-action-active-background);box-shadow:inset 0 2px 2px var(--ck-color-button-action-active-shadow)}.ck.ck-button-action.ck-disabled,a.ck.ck-button-action.ck-disabled{background:var(--ck-color-button-action-disabled-background)}.ck.ck-button-action,a.ck.ck-button-action{color:var(--ck-color-button-action-text)}.ck.ck-button-bold,a.ck.ck-button-bold{font-weight:700}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/button.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/mixins/_tooltip.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/button.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/mixins/_button.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css\"],names:[],mappings:\"AAQA,6BCCC,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBD6BD,CE/BC,qDACC,aAqBD,CAHC,oBAnBD,qDAoBE,YAEF,CADC,CFvBF,6BAKC,iBAAkB,CAClB,mBAAoB,CACpB,kBAAmB,CACnB,oBAyBD,CAvBC,iEACC,YACD,CAGC,yGACC,oBACD,CAID,iFACC,sBACD,CEkBA,iEACC,kBAAmB,CACnB,SACD,CAbA,yFACC,YACD,CC7BD,6BCAC,oDD0ID,CCvIE,6EACC,0DACD,CAEA,+EACC,2DAA4C,CAC5C,uEACD,CAID,qDACC,6DACD,CDhBD,6BEDC,eF2ID,CA1IA,wIEGE,qCFuIF,CA1IA,6BAKC,kBAAmB,CACnB,cAAe,CACf,qBAAsB,CACtB,8BAA+B,CAC/B,iBAAkB,CAGlB,2CAA4C,CAC5C,4CAA6C,CAI7C,aAAc,CAGd,iBAAkB,CAGlB,4BAA6B,CAG7B,4DAA8D,CAG9D,uBA6GD,CA3GC,oFGjCA,YAAa,CACb,2BAA2B,CCF3B,2CJsCA,CAIC,kJAEC,aACD,CAGD,iEAEC,iBAAkB,CAClB,mBAAoB,CACpB,aAAc,CACd,cAAe,CAIf,qBASD,CAlBA,qFAYE,eAMF,CAlBA,qFAgBE,gBAEF,CAEA,yEACC,aAYD,CAbA,6FAIE,mCASF,CAbA,6FAQE,oCAKF,CAbA,yEAWC,eAAiB,CACjB,UACD,CAIC,oIIrFD,oDJyFC,CAEA,uFK3FD,kCL6FC,CAGA,yFKhGD,kCLkGC,CAEA,iGACC,UACD,CAGD,qEACC,yDAcD,CAXC,2HAEE,4CAA+C,CAC/C,oCAOF,CAVA,2HAOE,6CAAgD,CAChD,mCAEF,CAKA,mHACC,WACD,CAID,yCC/HA,+CDiIA,CC9HC,yFACC,qDACD,CAEA,2FACC,sDAA4C,CAC5C,kEACD,CAID,iEACC,wDACD,CDmHA,2DACC,iCACD,CAEA,+DACC,mCACD,CAID,2CC7IC,mDDkJD,CC/IE,2FACC,yDACD,CAEA,6FACC,0DAA4C,CAC5C,sEACD,CAID,mEACC,4DACD,CD6HD,2CAIC,wCACD,CAEA,uCAEC,eACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../mixins/_unselectable.css\";\\n@import \"../tooltip/mixins/_tooltip.css\";\\n\\n.ck.ck-button,\\na.ck.ck-button {\\n\\t@mixin ck-unselectable;\\n\\t@mixin ck-tooltip_enabled;\\n\\n\\tposition: relative;\\n\\tdisplay: inline-flex;\\n\\talign-items: center;\\n\\tjustify-content: left;\\n\\n\\t& .ck-button__label {\\n\\t\\tdisplay: none;\\n\\t}\\n\\n\\t&.ck-button_with-text {\\n\\t\\t& .ck-button__label {\\n\\t\\t\\tdisplay: inline-block;\\n\\t\\t}\\n\\t}\\n\\n\\t/* Center the icon horizontally in a button without text. */\\n\\t&:not(.ck-button_with-text) {\\n\\t\\tjustify-content: center;\\n\\t}\\n\\n\\t&:hover {\\n\\t\\t@mixin ck-tooltip_visible;\\n\\t}\\n\\n\\t/* Get rid of the native focus outline around the tooltip when focused (but not :hover). */\\n\\t&:focus:not(:hover) {\\n\\t\\t@mixin ck-tooltip_disabled;\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Makes element unselectable.\\n */\\n@define-mixin ck-unselectable {\\n\\t-moz-user-select: none;\\n\\t-webkit-user-select: none;\\n\\t-ms-user-select: none;\\n\\tuser-select: none\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Enables the tooltip, which is the tooltip is in DOM but\\n * not yet displayed.\\n */\\n@define-mixin ck-tooltip_enabled {\\n\\t& .ck-tooltip {\\n\\t\\tdisplay: block;\\n\\n\\t\\t/*\\n\\t\\t * Don't display tooltips in devices which don't support :hover.\\n\\t\\t * In fact, it's all about iOS, which forces user to click UI elements twice to execute\\n\\t\\t * the primary action, when tooltips are enabled.\\n\\t\\t *\\n\\t\\t * Q: OK, but why not the following query?\\n\\t\\t *\\n\\t\\t * @media (hover) {\\n\\t\\t * display: block;\\n\\t\\t * }\\n\\t\\t *\\n\\t\\t * A: Because FF does not support it and it would completely disable tooltips\\n\\t\\t * in that browser.\\n\\t\\t *\\n\\t\\t * More in https://github.com/ckeditor/ckeditor5/issues/920.\\n\\t\\t */\\n\\t\\t@media (hover:none) {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n/**\\n * Disables the tooltip making it disappear from DOM.\\n */\\n@define-mixin ck-tooltip_disabled {\\n\\t& .ck-tooltip {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\\n/**\\n * Shows the tooltip, which is already in DOM.\\n * Requires `ck-tooltip_enabled` first.\\n */\\n@define-mixin ck-tooltip_visible {\\n\\t& .ck-tooltip {\\n\\t\\tvisibility: visible;\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_focus.css\";\\n@import \"../../../mixins/_shadow.css\";\\n@import \"../../../mixins/_disabled.css\";\\n@import \"../../../mixins/_rounded.css\";\\n@import \"../../mixins/_button.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n.ck.ck-button,\\na.ck.ck-button {\\n\\t@mixin ck-button-colors --ck-color-button-default;\\n\\t@mixin ck-rounded-corners;\\n\\n\\twhite-space: nowrap;\\n\\tcursor: default;\\n\\tvertical-align: middle;\\n\\tpadding: var(--ck-spacing-tiny);\\n\\ttext-align: center;\\n\\n\\t/* A very important piece of styling. Go to variable declaration to learn more. */\\n\\tmin-width: var(--ck-ui-component-min-height);\\n\\tmin-height: var(--ck-ui-component-min-height);\\n\\n\\t/* Normalize the height of the line. Removing this will break consistent height\\n\\tamong text and text-less buttons (with icons). */\\n\\tline-height: 1;\\n\\n\\t/* Enable font size inheritance, which allows fluid UI scaling. */\\n\\tfont-size: inherit;\\n\\n\\t/* Avoid flickering when the foucs border shows up. */\\n\\tborder: 1px solid transparent;\\n\\n\\t/* Apply some smooth transition to the box-shadow and border. */\\n\\ttransition: box-shadow .2s ease-in-out, border .2s ease-in-out;\\n\\n\\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/189 */\\n\\t-webkit-appearance: none;\\n\\n\\t&:active,\\n\\t&:focus {\\n\\t\\t@mixin ck-focus-ring;\\n\\t\\t@mixin ck-box-shadow var(--ck-focus-outer-shadow);\\n\\t}\\n\\n\\t/* Allow icon coloring using the text \"color\" property. */\\n\\t& .ck-button__icon {\\n\\t\\t& use,\\n\\t\\t& use * {\\n\\t\\t\\tcolor: inherit;\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck-button__label {\\n\\t\\t/* Enable font size inheritance, which allows fluid UI scaling. */\\n\\t\\tfont-size: inherit;\\n\\t\\tfont-weight: inherit;\\n\\t\\tcolor: inherit;\\n\\t\\tcursor: inherit;\\n\\n\\t\\t/* Must be consistent with .ck-icon\\'s vertical align. Otherwise, buttons with and\\n\\t\\twithout labels (but with icons) have different sizes in Chrome */\\n\\t\\tvertical-align: middle;\\n\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\ttext-align: left;\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\ttext-align: right;\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck-button__keystroke {\\n\\t\\tcolor: inherit;\\n\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\tmargin-left: var(--ck-spacing-large);\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\tmargin-right: var(--ck-spacing-large);\\n\\t\\t}\\n\\n\\t\\tfont-weight: bold;\\n\\t\\topacity: .7;\\n\\t}\\n\\n\\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/70 */\\n\\t&.ck-disabled {\\n\\t\\t&:active,\\n\\t\\t&:focus {\\n\\t\\t\\t/* The disabled button should have a slightly less visible shadow when focused. */\\n\\t\\t\\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow);\\n\\t\\t}\\n\\n\\t\\t& .ck-button__icon {\\n\\t\\t\\t@mixin ck-disabled;\\n\\t\\t}\\n\\n\\t\\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\\n\\t\\t& .ck-button__label {\\n\\t\\t\\t@mixin ck-disabled;\\n\\t\\t}\\n\\n\\t\\t& .ck-button__keystroke {\\n\\t\\t\\topacity: .3;\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-button_with-text {\\n\\t\\tpadding: var(--ck-spacing-tiny) var(--ck-spacing-standard);\\n\\n\\t\\t/* stylelint-disable-next-line no-descending-specificity */\\n\\t\\t& .ck-button__icon {\\n\\t\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t\\tmargin-left: calc(-1 * var(--ck-spacing-small));\\n\\t\\t\\t\\tmargin-right: var(--ck-spacing-small);\\n\\t\\t\\t}\\n\\n\\t\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t\\tmargin-right: calc(-1 * var(--ck-spacing-small));\\n\\t\\t\\t\\tmargin-left: var(--ck-spacing-small);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-button_with-keystroke {\\n\\t\\t/* stylelint-disable-next-line no-descending-specificity */\\n\\t\\t& .ck-button__label {\\n\\t\\t\\tflex-grow: 1;\\n\\t\\t}\\n\\t}\\n\\n\\t/* A style of the button which is currently on, e.g. its feature is active. */\\n\\t&.ck-on {\\n\\t\\t@mixin ck-button-colors --ck-color-button-on;\\n\\t}\\n\\n\\t&.ck-button-save {\\n\\t\\tcolor: var(--ck-color-button-save);\\n\\t}\\n\\n\\t&.ck-button-cancel {\\n\\t\\tcolor: var(--ck-color-button-cancel);\\n\\t}\\n}\\n\\n/* A style of the button which handles the primary action. */\\n.ck.ck-button-action,\\na.ck.ck-button-action {\\n\\t@mixin ck-button-colors --ck-color-button-action;\\n\\n\\tcolor: var(--ck-color-button-action-text);\\n}\\n\\n.ck.ck-button-bold,\\na.ck.ck-button-bold {\\n\\tfont-weight: bold;\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements a button of given background color.\\n *\\n * @param {String} $background - Background color of the button.\\n * @param {String} $border - Border color of the button.\\n */\\n@define-mixin ck-button-colors $prefix {\\n\\tbackground: var($(prefix)-background);\\n\\n\\t&:not(.ck-disabled) {\\n\\t\\t&:hover {\\n\\t\\t\\tbackground: var($(prefix)-hover-background);\\n\\t\\t}\\n\\n\\t\\t&:active {\\n\\t\\t\\tbackground: var($(prefix)-active-background);\\n\\t\\t\\tbox-shadow: inset 0 2px 2px var($(prefix)-active-shadow);\\n\\t\\t}\\n\\t}\\n\\n\\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/98 */\\n\\t&.ck-disabled {\\n\\t\\tbackground: var($(prefix)-disabled-background);\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A visual style of focused element's border.\\n */\\n@define-mixin ck-focus-ring {\\n\\t/* Disable native outline. */\\n\\toutline: none;\\n\\tborder: var(--ck-focus-ring)\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A class which indicates that an element holding it is disabled.\\n */\\n@define-mixin ck-disabled {\\n\\topacity: var(--ck-disabled-opacity);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-list{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-direction:column}.ck.ck-list .ck-list__item,.ck.ck-list .ck-list__separator{display:block}.ck.ck-list .ck-list__item>:focus{position:relative;z-index:var(--ck-z-default)}.ck.ck-list{border-radius:0}.ck-rounded-corners .ck.ck-list,.ck.ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-list{list-style-type:none;background:var(--ck-color-list-background)}.ck.ck-list__item{cursor:default;min-width:12em}.ck.ck-list__item .ck-button{min-height:unset;width:100%;text-align:left;border-radius:0;padding:calc(var(--ck-line-height-base)*0.2*var(--ck-font-size-base)) calc(var(--ck-line-height-base)*0.4*var(--ck-font-size-base))}.ck.ck-list__item .ck-button .ck-button__label{line-height:calc(var(--ck-line-height-base)*1.2*var(--ck-font-size-base))}.ck.ck-list__item .ck-button:active{box-shadow:none}.ck.ck-list__item .ck-button.ck-on{background:var(--ck-color-list-button-on-background);color:var(--ck-color-list-button-on-text)}.ck.ck-list__item .ck-button.ck-on:active{box-shadow:none}.ck.ck-list__item .ck-button.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-on-background-focus)}.ck.ck-list__item .ck-button.ck-on:focus:not(.ck-disabled){border-color:var(--ck-color-base-background)}.ck.ck-list__item .ck-button:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background)}.ck.ck-list__item .ck-switchbutton.ck-on{background:var(--ck-color-list-background);color:inherit}.ck.ck-list__item .ck-switchbutton.ck-on:hover:not(.ck-disabled){background:var(--ck-color-list-button-hover-background);color:inherit}.ck.ck-list__separator{height:1px;width:100%;background:var(--ck-color-base-border)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/list/list.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/list/list.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAOA,YCEC,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBAAgB,CDFhB,YAAa,CACb,qBAcD,CAZC,2DAEC,aACD,CAKA,kCACC,iBAAkB,CAClB,2BACD,CEfD,YCEC,eDGD,CALA,+DCME,qCDDF,CALA,YAGC,oBAAqB,CACrB,0CACD,CAEA,kBACC,cAAe,CACf,cA2DD,CAzDC,6BACC,gBAAiB,CACjB,UAAW,CACX,eAAgB,CAChB,eAAgB,CAKhB,mIAiCD,CA7BC,+CAEC,yEACD,CAEA,oCACC,eACD,CAEA,mCACC,oDAAqD,CACrD,yCAaD,CAXC,0CACC,eACD,CAEA,2DACC,0DACD,CAEA,2DACC,4CACD,CAGD,qDACC,uDACD,CAMA,yCACC,0CAA2C,CAC3C,aAMD,CAJC,iEACC,uDAAwD,CACxD,aACD,CAKH,uBACC,UAAW,CACX,UAAW,CACX,sCACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../mixins/_unselectable.css\";\\n\\n.ck.ck-list {\\n\\t@mixin ck-unselectable;\\n\\n\\tdisplay: flex;\\n\\tflex-direction: column;\\n\\n\\t& .ck-list__item,\\n\\t& .ck-list__separator {\\n\\t\\tdisplay: block;\\n\\t}\\n\\n\\t/* Make sure that whatever child of the list item gets focus, it remains on the\\n\\ttop. Thanks to that, styles like box-shadow, outline, etc. are not masked by\\n\\tadjacent list items. */\\n\\t& .ck-list__item > *:focus {\\n\\t\\tposition: relative;\\n\\t\\tz-index: var(--ck-z-default);\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Makes element unselectable.\\n */\\n@define-mixin ck-unselectable {\\n\\t-moz-user-select: none;\\n\\t-webkit-user-select: none;\\n\\t-ms-user-select: none;\\n\\tuser-select: none\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_disabled.css\";\\n@import \"../../../mixins/_rounded.css\";\\n@import \"../../../mixins/_shadow.css\";\\n\\n.ck.ck-list {\\n\\t@mixin ck-rounded-corners;\\n\\n\\tlist-style-type: none;\\n\\tbackground: var(--ck-color-list-background);\\n}\\n\\n.ck.ck-list__item {\\n\\tcursor: default;\\n\\tmin-width: 12em;\\n\\n\\t& .ck-button {\\n\\t\\tmin-height: unset;\\n\\t\\twidth: 100%;\\n\\t\\ttext-align: left;\\n\\t\\tborder-radius: 0;\\n\\n\\t\\t/* List items should have the same height. Use absolute units to make sure it is so\\n\\t\\t because e.g. different heading styles may have different height\\n\\t\\t https://github.com/ckeditor/ckeditor5-heading/issues/63 */\\n\\t\\tpadding:\\n\\t\\t\\tcalc(.2 * var(--ck-line-height-base) * var(--ck-font-size-base))\\n\\t\\t\\tcalc(.4 * var(--ck-line-height-base) * var(--ck-font-size-base));\\n\\n\\t\\t& .ck-button__label {\\n\\t\\t\\t/* https://github.com/ckeditor/ckeditor5-heading/issues/63 */\\n\\t\\t\\tline-height: calc(1.2 * var(--ck-line-height-base) * var(--ck-font-size-base));\\n\\t\\t}\\n\\n\\t\\t&:active {\\n\\t\\t\\tbox-shadow: none;\\n\\t\\t}\\n\\n\\t\\t&.ck-on {\\n\\t\\t\\tbackground: var(--ck-color-list-button-on-background);\\n\\t\\t\\tcolor: var(--ck-color-list-button-on-text);\\n\\n\\t\\t\\t&:active {\\n\\t\\t\\t\\tbox-shadow: none;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:hover:not(.ck-disabled) {\\n\\t\\t\\t\\tbackground: var(--ck-color-list-button-on-background-focus);\\n\\t\\t\\t}\\n\\n\\t\\t\\t&:focus:not(.ck-disabled) {\\n\\t\\t\\t\\tborder-color: var(--ck-color-base-background);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&:hover:not(.ck-disabled) {\\n\\t\\t\\tbackground: var(--ck-color-list-button-hover-background);\\n\\t\\t}\\n\\t}\\n\\n\\t/* It\\'s unnecessary to change the background/text of a switch toggle; it has different ways\\n\\tof conveying its state (like the switcher) */\\n\\t& .ck-switchbutton {\\n\\t\\t&.ck-on {\\n\\t\\t\\tbackground: var(--ck-color-list-background);\\n\\t\\t\\tcolor: inherit;\\n\\n\\t\\t\\t&:hover:not(.ck-disabled) {\\n\\t\\t\\t\\tbackground: var(--ck-color-list-button-hover-background);\\n\\t\\t\\t\\tcolor: inherit;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n.ck.ck-list__separator {\\n\\theight: 1px;\\n\\twidth: 100%;\\n\\tbackground: var(--ck-color-base-border);\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{display:block}:root{--ck-switch-button-toggle-width:2.6153846154em;--ck-switch-button-toggle-inner-size:1.0769230769em;--ck-switch-button-toggle-spacing:1px;--ck-switch-button-translation:calc(var(--ck-switch-button-toggle-width) - var(--ck-switch-button-toggle-inner-size) - var(--ck-switch-button-toggle-spacing)*2)}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__label{margin-right:calc(var(--ck-spacing-large)*2)}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__label{margin-left:calc(var(--ck-spacing-large)*2)}.ck.ck-button.ck-switchbutton .ck-button__toggle{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle,.ck.ck-button.ck-switchbutton .ck-button__toggle.ck-rounded-corners{border-radius:var(--ck-border-radius)}[dir=ltr] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-left:auto}[dir=rtl] .ck.ck-button.ck-switchbutton .ck-button__toggle{margin-right:auto}.ck.ck-button.ck-switchbutton .ck-button__toggle{transition:background .4s ease;width:var(--ck-switch-button-toggle-width);background:var(--ck-color-switch-button-off-background)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{border-radius:0}.ck-rounded-corners .ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner,.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:calc(var(--ck-border-radius)*0.5)}.ck.ck-button.ck-switchbutton .ck-button__toggle .ck-button__toggle__inner{margin:var(--ck-switch-button-toggle-spacing);width:var(--ck-switch-button-toggle-inner-size);height:var(--ck-switch-button-toggle-inner-size);background:var(--ck-color-switch-button-inner-background);transition:all .3s ease}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover{background:var(--ck-color-switch-button-off-hover-background)}.ck.ck-button.ck-switchbutton .ck-button__toggle:hover .ck-button__toggle__inner{box-shadow:0 0 0 5px var(--ck-color-switch-button-inner-shadow)}.ck.ck-button.ck-switchbutton.ck-disabled .ck-button__toggle{opacity:var(--ck-disabled-opacity)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle{background:var(--ck-color-switch-button-on-background)}.ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle:hover{background:var(--ck-color-switch-button-on-hover-background)}[dir=ltr] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(var(--ck-switch-button-translation))}[dir=rtl] .ck.ck-button.ck-switchbutton.ck-on .ck-button__toggle .ck-button__toggle__inner{transform:translateX(calc(var(--ck-switch-button-translation)*-1))}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/button/switchbutton.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/button/switchbutton.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_disabled.css\"],names:[],mappings:\"AASE,4HACC,aACD,CCCF,MAEC,8CAA+C,CAE/C,mDAAoD,CACpD,qCAAsC,CACtC,gKAKD,CAGC,0DAGE,4CAOF,CAVA,0DAQE,2CAEF,CAEA,iDC3BA,eDoEA,CAzCA,yICvBC,qCDgED,CAzCA,2DAKE,gBAoCF,CAzCA,2DAUE,iBA+BF,CAzCA,iDAcC,8BAAiC,CAEjC,0CAA2C,CAC3C,uDAwBD,CAtBC,2EC9CD,eD2DC,CAbA,6LC1CA,qCAAsC,CD4CpC,+CAWF,CAbA,2EAMC,6CAA8C,CAC9C,+CAAgD,CAChD,gDAAiD,CACjD,yDAA0D,CAG1D,uBACD,CAEA,uDACC,6DAKD,CAHC,iFACC,+DACD,CAIF,6DExEA,kCF0EA,CAEA,uDACC,sDAkBD,CAhBC,6DACC,4DACD,CAEA,2FAKE,yDAMF,CAXA,2FASE,kEAEF\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-button.ck-switchbutton {\\n\\t& .ck-button__toggle {\\n\\t\\tdisplay: block;\\n\\n\\t\\t& .ck-button__toggle__inner {\\n\\t\\t\\tdisplay: block;\\n\\t\\t}\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n@import \"../../../mixins/_disabled.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n/* Note: To avoid rendering issues (aliasing) but to preserve the responsive nature\\nof the component, floating–point numbers have been used which, for the default font size\\n(see: --ck-font-size-base), will generate simple integers. */\\n:root {\\n\\t/* 34px at 13px font-size */\\n\\t--ck-switch-button-toggle-width: 2.6153846154em;\\n\\t/* 14px at 13px font-size */\\n\\t--ck-switch-button-toggle-inner-size: 1.0769230769em;\\n\\t--ck-switch-button-toggle-spacing: 1px;\\n\\t--ck-switch-button-translation: calc(\\n\\t\\tvar(--ck-switch-button-toggle-width) -\\n\\t\\tvar(--ck-switch-button-toggle-inner-size) -\\n\\t\\t2 * var(--ck-switch-button-toggle-spacing)\\n\\t);\\n}\\n\\n.ck.ck-button.ck-switchbutton {\\n\\t& .ck-button__label {\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t/* Separate the label from the switch */\\n\\t\\t\\tmargin-right: calc(2 * var(--ck-spacing-large));\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t/* Separate the label from the switch */\\n\\t\\t\\tmargin-left: calc(2 * var(--ck-spacing-large));\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck-button__toggle {\\n\\t\\t@mixin ck-rounded-corners;\\n\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t/* Make sure the toggle is always to the right as far as possible. */\\n\\t\\t\\tmargin-left: auto;\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t/* Make sure the toggle is always to the left as far as possible. */\\n\\t\\t\\tmargin-right: auto;\\n\\t\\t}\\n\\n\\t\\t/* Gently animate the background color of the toggle switch */\\n\\t\\ttransition: background 400ms ease;\\n\\n\\t\\twidth: var(--ck-switch-button-toggle-width);\\n\\t\\tbackground: var(--ck-color-switch-button-off-background);\\n\\n\\t\\t& .ck-button__toggle__inner {\\n\\t\\t\\t@mixin ck-rounded-corners {\\n\\t\\t\\t\\tborder-radius: calc(.5 * var(--ck-border-radius));\\n\\t\\t\\t}\\n\\n\\t\\t\\t/* Leave some tiny bit of space around the inner part of the switch */\\n\\t\\t\\tmargin: var(--ck-switch-button-toggle-spacing);\\n\\t\\t\\twidth: var(--ck-switch-button-toggle-inner-size);\\n\\t\\t\\theight: var(--ck-switch-button-toggle-inner-size);\\n\\t\\t\\tbackground: var(--ck-color-switch-button-inner-background);\\n\\n\\t\\t\\t/* Gently animate the inner part of the toggle switch */\\n\\t\\t\\ttransition: all 300ms ease;\\n\\t\\t}\\n\\n\\t\\t&:hover {\\n\\t\\t\\tbackground: var(--ck-color-switch-button-off-hover-background);\\n\\n\\t\\t\\t& .ck-button__toggle__inner {\\n\\t\\t\\t\\tbox-shadow: 0 0 0 5px var(--ck-color-switch-button-inner-shadow);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-disabled .ck-button__toggle {\\n\\t\\t@mixin ck-disabled;\\n\\t}\\n\\n\\t&.ck-on .ck-button__toggle {\\n\\t\\tbackground: var(--ck-color-switch-button-on-background);\\n\\n\\t\\t&:hover {\\n\\t\\t\\tbackground: var(--ck-color-switch-button-on-hover-background);\\n\\t\\t}\\n\\n\\t\\t& .ck-button__toggle__inner {\\n\\t\\t\\t/*\\n\\t\\t\\t * Move the toggle switch to the right. It will be animated.\\n\\t\\t\\t */\\n\\t\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t\\ttransform: translateX( var( --ck-switch-button-translation ) );\\n\\t\\t\\t}\\n\\n\\t\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t\\ttransform: translateX( calc( -1 * var( --ck-switch-button-translation ) ) );\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A class which indicates that an element holding it is disabled.\\n */\\n@define-mixin ck-disabled {\\n\\topacity: var(--ck-disabled-opacity);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-toolbar-dropdown .ck.ck-toolbar .ck.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar-dropdown .ck-dropdown__panel .ck-button:focus{z-index:calc(var(--ck-z-default) + 1)}.ck.ck-toolbar-dropdown .ck-toolbar{border:0}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/toolbardropdown.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/toolbardropdown.css\"],names:[],mappings:\"AAMC,6DACC,gBACD,CAGC,6DACC,qCACD,CCRF,oCACC,QACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-toolbar-dropdown {\\n\\t& .ck.ck-toolbar .ck.ck-toolbar__items {\\n\\t\\tflex-wrap: nowrap;\\n\\t}\\n\\n\\t& .ck-dropdown__panel .ck-button {\\n\\t\\t&:focus {\\n\\t\\t\\tz-index: calc(var(--ck-z-default) + 1);\\n\\t\\t}\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-toolbar-dropdown .ck-toolbar {\\n\\tborder: 0;\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-dropdown .ck-dropdown__panel .ck-list{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list,.ck.ck-dropdown .ck-dropdown__panel .ck-list.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0}.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button,.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:first-child .ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button{border-radius:0}.ck-rounded-corners .ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button,.ck.ck-dropdown .ck-dropdown__panel .ck-list .ck-list__item:last-child .ck-button.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/listdropdown.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAOA,6CCIC,eDqBD,CAzBA,iICQE,qCAAsC,CDJtC,wBAqBF,CAfE,mFCND,eDYC,CANA,6MCFA,qCAAsC,CDIpC,wBAAyB,CACzB,2BAA4B,CAC5B,4BAEF,CAEA,kFCdD,eDmBC,CALA,2MCVA,qCAAsC,CDYpC,wBAAyB,CACzB,yBAEF\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n\\n.ck.ck-dropdown .ck-dropdown__panel .ck-list {\\n\\t/* Disabled radius of top-left border to be consistent with .dropdown__button\\n\\thttps://github.com/ckeditor/ckeditor5/issues/816 */\\n\\t@mixin ck-rounded-corners {\\n\\t\\tborder-top-left-radius: 0;\\n\\t}\\n\\n\\t/* Make sure the button belonging to the first/last child of the list goes well with the\\n\\tborder radius of the entire panel. */\\n\\t& .ck-list__item {\\n\\t\\t&:first-child .ck-button {\\n\\t\\t\\t@mixin ck-rounded-corners {\\n\\t\\t\\t\\tborder-top-left-radius: 0;\\n\\t\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&:last-child .ck-button {\\n\\t\\t\\t@mixin ck-rounded-corners {\\n\\t\\t\\t\\tborder-top-left-radius: 0;\\n\\t\\t\\t\\tborder-top-right-radius: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-toolbar{-moz-user-select:none;-webkit-user-select:none;-ms-user-select:none;user-select:none;display:flex;flex-flow:row nowrap;align-items:center}.ck.ck-toolbar>.ck-toolbar__items{display:flex;flex-flow:row wrap;align-items:center;flex-grow:1}.ck.ck-toolbar .ck.ck-toolbar__separator{display:inline-block}.ck.ck-toolbar .ck.ck-toolbar__separator:first-child,.ck.ck-toolbar .ck.ck-toolbar__separator:last-child{display:none}.ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items{flex-direction:column}.ck.ck-toolbar.ck-toolbar_floating>.ck-toolbar__items{flex-wrap:nowrap}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck-dropdown__button .ck-dropdown__arrow{display:none}.ck.ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-toolbar,.ck.ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-toolbar{background:var(--ck-color-toolbar-background);padding:0 var(--ck-spacing-small);border:1px solid var(--ck-color-toolbar-border)}.ck.ck-toolbar .ck.ck-toolbar__separator{align-self:stretch;width:1px;min-width:1px;background:var(--ck-color-toolbar-border);margin-top:var(--ck-spacing-small);margin-bottom:var(--ck-spacing-small)}.ck.ck-toolbar>.ck-toolbar__items>*{margin-top:var(--ck-spacing-small);margin-bottom:var(--ck-spacing-small);margin-right:var(--ck-spacing-small)}.ck.ck-toolbar>.ck-toolbar__items:empty+.ck.ck-toolbar__separator{display:none}.ck.ck-toolbar>.ck-toolbar__items>*,.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown{margin-top:var(--ck-spacing-small);margin-bottom:var(--ck-spacing-small)}.ck.ck-toolbar.ck-toolbar_vertical{padding:0}.ck.ck-toolbar.ck-toolbar_vertical>.ck-toolbar__items>.ck{width:100%;margin:0;border-radius:0;border:0}.ck.ck-toolbar.ck-toolbar_compact{padding:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>*{margin:0}.ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>:not(:first-child):not(:last-child){border-radius:0}.ck.ck-toolbar>.ck.ck-toolbar__grouped-dropdown>.ck.ck-button.ck-dropdown__button{padding-left:var(--ck-spacing-tiny)}.ck-toolbar-container .ck.ck-toolbar{border:0}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck{margin-right:0}.ck.ck-toolbar[dir=rtl]:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck,[dir=rtl] .ck.ck-toolbar:not(.ck-toolbar_compact)>.ck-toolbar__items>.ck{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=rtl]>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-left:0}.ck.ck-toolbar[dir=rtl].ck-toolbar_compact>.ck-toolbar__items>.ck:first-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-top-left-radius:0;border-bottom-left-radius:0}.ck.ck-toolbar[dir=rtl].ck-toolbar_compact>.ck-toolbar__items>.ck:last-child,[dir=rtl] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-top-right-radius:0;border-bottom-right-radius:0}.ck.ck-toolbar[dir=rtl]>.ck.ck-toolbar__separator,[dir=rtl] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=rtl].ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=rtl] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child){margin-left:var(--ck-spacing-small)}.ck.ck-toolbar[dir=ltr]>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar>.ck-toolbar__items>.ck:last-child{margin-right:0}.ck.ck-toolbar[dir=ltr].ck-toolbar_compact>.ck-toolbar__items>.ck:first-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:first-child{border-top-right-radius:0;border-bottom-right-radius:0}.ck.ck-toolbar[dir=ltr].ck-toolbar_compact>.ck-toolbar__items>.ck:last-child,[dir=ltr] .ck.ck-toolbar.ck-toolbar_compact>.ck-toolbar__items>.ck:last-child{border-top-left-radius:0;border-bottom-left-radius:0}.ck.ck-toolbar[dir=ltr]>.ck.ck-toolbar__separator,[dir=ltr] .ck.ck-toolbar>.ck.ck-toolbar__separator{margin-right:var(--ck-spacing-small)}.ck.ck-toolbar[dir=ltr].ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child),[dir=ltr] .ck.ck-toolbar.ck-toolbar_grouping>.ck-toolbar__items:not(:empty):not(:only-child){margin-right:var(--ck-spacing-small)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/toolbar/toolbar.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/toolbar/toolbar.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAOA,eCEC,qBAAsB,CACtB,wBAAyB,CACzB,oBAAqB,CACrB,gBAAgB,CDFhB,YAAa,CACb,oBAAqB,CACrB,kBAyCD,CAvCC,kCACC,YAAa,CACb,kBAAmB,CACnB,kBAAmB,CACnB,WAED,CAEA,yCACC,oBAWD,CAJC,yGAEC,YACD,CAGD,sDACC,gBACD,CAEA,sDACC,qBACD,CAEA,sDACC,gBACD,CAGC,yFACC,YACD,CE3CF,eCGC,eD0FD,CA7FA,qECOE,qCDsFF,CA7FA,eAGC,6CAA8C,CAC9C,iCAAkC,CAClC,+CAwFD,CAtFC,yCACC,kBAAmB,CACnB,SAAU,CACV,aAAc,CACd,yCAA0C,CAM1C,kCAAmC,CACnC,qCACD,CAGC,oCAEC,kCAAmC,CACnC,qCAAsC,CAGtC,oCACD,CAIA,kEACC,YACD,CAGD,oFAGC,kCAAmC,CACnC,qCACD,CAEA,mCAEC,SAgBD,CAbC,0DAEC,UAAW,CAGX,QAAS,CAGT,eAAgB,CAGhB,QACD,CAGD,kCAEC,SAWD,CATC,uDAEC,QAMD,CAHC,yFACC,eACD,CASD,kFACC,mCACD,CAvFF,qCA2FE,QAEF,CAYC,+FACC,cACD,CAEA,iJAEC,mCACD,CAEA,qHACC,aACD,CAIC,6JACC,wBAAyB,CACzB,2BACD,CAGA,2JACC,yBAA0B,CAC1B,4BACD,CAID,qGACC,mCACD,CAGA,yLACC,mCACD,CAWA,qHACC,cACD,CAIC,6JACC,yBAA0B,CAC1B,4BACD,CAGA,2JACC,wBAAyB,CACzB,2BACD,CAID,qGACC,oCACD,CAGA,yLACC,oCACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../mixins/_unselectable.css\";\\n\\n.ck.ck-toolbar {\\n\\t@mixin ck-unselectable;\\n\\n\\tdisplay: flex;\\n\\tflex-flow: row nowrap;\\n\\talign-items: center;\\n\\n\\t& > .ck-toolbar__items {\\n\\t\\tdisplay: flex;\\n\\t\\tflex-flow: row wrap;\\n\\t\\talign-items: center;\\n\\t\\tflex-grow: 1;\\n\\n\\t}\\n\\n\\t& .ck.ck-toolbar__separator {\\n\\t\\tdisplay: inline-block;\\n\\n\\t\\t/*\\n\\t\\t * A leading or trailing separator makes no sense (separates from nothing on one side).\\n\\t\\t * For instance, it can happen when toolbar items (also separators) are getting grouped one by one and\\n\\t\\t * moved to another toolbar in the dropdown.\\n\\t\\t */\\n\\t\\t&:first-child,\\n\\t\\t&:last-child {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-toolbar_grouping > .ck-toolbar__items {\\n\\t\\tflex-wrap: nowrap;\\n\\t}\\n\\n\\t&.ck-toolbar_vertical > .ck-toolbar__items {\\n\\t\\tflex-direction: column;\\n\\t}\\n\\n\\t&.ck-toolbar_floating > .ck-toolbar__items {\\n\\t\\tflex-wrap: nowrap;\\n\\t}\\n\\n\\t& > .ck.ck-toolbar__grouped-dropdown {\\n\\t\\t& > .ck-dropdown__button .ck-dropdown__arrow {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Makes element unselectable.\\n */\\n@define-mixin ck-unselectable {\\n\\t-moz-user-select: none;\\n\\t-webkit-user-select: none;\\n\\t-ms-user-select: none;\\n\\tuser-select: none\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n.ck.ck-toolbar {\\n\\t@mixin ck-rounded-corners;\\n\\n\\tbackground: var(--ck-color-toolbar-background);\\n\\tpadding: 0 var(--ck-spacing-small);\\n\\tborder: 1px solid var(--ck-color-toolbar-border);\\n\\n\\t& .ck.ck-toolbar__separator {\\n\\t\\talign-self: stretch;\\n\\t\\twidth: 1px;\\n\\t\\tmin-width: 1px;\\n\\t\\tbackground: var(--ck-color-toolbar-border);\\n\\n\\t\\t/*\\n\\t\\t * These margins make the separators look better in balloon toolbars (when aligned with the \"tip\").\\n\\t\\t * See https://github.com/ckeditor/ckeditor5/issues/7493.\\n\\t\\t */\\n\\t\\tmargin-top: var(--ck-spacing-small);\\n\\t\\tmargin-bottom: var(--ck-spacing-small);\\n\\t}\\n\\n\\t& > .ck-toolbar__items {\\n\\t\\t& > * {\\n\\t\\t\\t/* Make sure items wrapped to the next line have v-spacing */\\n\\t\\t\\tmargin-top: var(--ck-spacing-small);\\n\\t\\t\\tmargin-bottom: var(--ck-spacing-small);\\n\\n\\t\\t\\t/* (#11) Separate toolbar items. */\\n\\t\\t\\tmargin-right: var(--ck-spacing-small);\\n\\t\\t}\\n\\n\\t\\t/* Don\\'t display a separator after an empty items container, for instance,\\n\\t\\twhen all items were grouped */\\n\\t\\t&:empty + .ck.ck-toolbar__separator {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\n\\t& > .ck-toolbar__items > *,\\n\\t& > .ck.ck-toolbar__grouped-dropdown {\\n\\t\\t/* Make sure items wrapped to the next line have v-spacing */\\n\\t\\tmargin-top: var(--ck-spacing-small);\\n\\t\\tmargin-bottom: var(--ck-spacing-small);\\n\\t}\\n\\n\\t&.ck-toolbar_vertical {\\n\\t\\t/* Items in a vertical toolbar span the entire width. */\\n\\t\\tpadding: 0;\\n\\n\\t\\t/* Specificity matters here. See https://github.com/ckeditor/ckeditor5-theme-lark/issues/168. */\\n\\t\\t& > .ck-toolbar__items > .ck {\\n\\t\\t\\t/* Items in a vertical toolbar should span the horizontal space. */\\n\\t\\t\\twidth: 100%;\\n\\n\\t\\t\\t/* Items in a vertical toolbar should have no margin. */\\n\\t\\t\\tmargin: 0;\\n\\n\\t\\t\\t/* Items in a vertical toolbar span the entire width so rounded corners are pointless. */\\n\\t\\t\\tborder-radius: 0;\\n\\n\\t\\t\\t/* Items in a vertical toolbar span the entire width so any border is pointless. */\\n\\t\\t\\tborder: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-toolbar_compact {\\n\\t\\t/* No spacing around items. */\\n\\t\\tpadding: 0;\\n\\n\\t\\t& > .ck-toolbar__items > * {\\n\\t\\t\\t/* Compact toolbar items have no spacing between them. */\\n\\t\\t\\tmargin: 0;\\n\\n\\t\\t\\t/* \"Middle\" children should have no rounded corners. */\\n\\t\\t\\t&:not(:first-child):not(:last-child) {\\n\\t\\t\\t\\tborder-radius: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t& > .ck.ck-toolbar__grouped-dropdown {\\n\\t\\t/*\\n\\t\\t * Dropdown button has asymmetric padding to fit the arrow.\\n\\t\\t * This button has no arrow so let\\'s revert that padding back to normal.\\n\\t\\t */\\n\\t\\t& > .ck.ck-button.ck-dropdown__button {\\n\\t\\t\\tpadding-left: var(--ck-spacing-tiny);\\n\\t\\t}\\n\\t}\\n\\n\\t@nest .ck-toolbar-container & {\\n\\t\\tborder: 0;\\n\\t}\\n}\\n\\n/* stylelint-disable */\\n\\n/*\\n * Styles for RTL toolbars.\\n *\\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own \"dir\"\\n * because its parent is not controlled by the editor framework.\\n */\\n[dir=\"rtl\"] .ck.ck-toolbar,\\n.ck.ck-toolbar[dir=\"rtl\"] {\\n\\t& > .ck-toolbar__items > .ck {\\n\\t\\tmargin-right: 0;\\n\\t}\\n\\n\\t&:not(.ck-toolbar_compact) > .ck-toolbar__items > .ck {\\n\\t\\t/* (#11) Separate toolbar items. */\\n\\t\\tmargin-left: var(--ck-spacing-small);\\n\\t}\\n\\n\\t& > .ck-toolbar__items > .ck:last-child {\\n\\t\\tmargin-left: 0;\\n\\t}\\n\\n\\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\\n\\t\\t/* No rounded corners on the right side of the first child. */\\n\\t\\t&:first-child {\\n\\t\\t\\tborder-top-left-radius: 0;\\n\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t}\\n\\n\\t\\t/* No rounded corners on the left side of the last child. */\\n\\t\\t&:last-child {\\n\\t\\t\\tborder-top-right-radius: 0;\\n\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\\n\\t& > .ck.ck-toolbar__separator {\\n\\t\\tmargin-left: var(--ck-spacing-small);\\n\\t}\\n\\n\\t/* Some spacing between the items and the separator before the grouped items dropdown. */\\n\\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\\n\\t\\tmargin-left: var(--ck-spacing-small);\\n\\t}\\n}\\n\\n/*\\n * Styles for LTR toolbars.\\n *\\n * Note: In some cases (e.g. a decoupled editor), the toolbar has its own \"dir\"\\n * because its parent is not controlled by the editor framework.\\n */\\n[dir=\"ltr\"] .ck.ck-toolbar,\\n.ck.ck-toolbar[dir=\"ltr\"] {\\n\\t& > .ck-toolbar__items > .ck:last-child {\\n\\t\\tmargin-right: 0;\\n\\t}\\n\\n\\t&.ck-toolbar_compact > .ck-toolbar__items > .ck {\\n\\t\\t/* No rounded corners on the right side of the first child. */\\n\\t\\t&:first-child {\\n\\t\\t\\tborder-top-right-radius: 0;\\n\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t}\\n\\n\\t\\t/* No rounded corners on the left side of the last child. */\\n\\t\\t&:last-child {\\n\\t\\t\\tborder-top-left-radius: 0;\\n\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t/* Separate the the separator form the grouping dropdown when some items are grouped. */\\n\\t& > .ck.ck-toolbar__separator {\\n\\t\\tmargin-right: var(--ck-spacing-small);\\n\\t}\\n\\n\\t/* Some spacing between the items and the separator before the grouped items dropdown. */\\n\\t&.ck-toolbar_grouping > .ck-toolbar__items:not(:empty):not(:only-child) {\\n\\t\\tmargin-right: var(--ck-spacing-small);\\n\\t}\\n}\\n\\n/* stylelint-enable */\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-editor{position:relative}.ck.ck-editor .ck-editor__top .ck-sticky-panel .ck-toolbar{z-index:var(--ck-z-modal)}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-bottom-left-radius:0;border-bottom-right-radius:0}.ck.ck-editor__top .ck-sticky-panel .ck-toolbar{border-bottom-width:0}.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar{border-bottom-width:1px;border-radius:0}.ck-rounded-corners .ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar,.ck.ck-editor__top .ck-sticky-panel .ck-sticky-panel__content_sticky .ck-toolbar.ck-rounded-corners{border-radius:var(--ck-border-radius);border-radius:0}.ck.ck-editor__main>.ck-editor__editable{background:var(--ck-color-base-background);border-radius:0}.ck-rounded-corners .ck.ck-editor__main>.ck-editor__editable,.ck.ck-editor__main>.ck-editor__editable.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:0;border-top-right-radius:0}.ck.ck-editor__main>.ck-editor__editable:not(.ck-focused){border-color:var(--ck-color-base-border)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-editor-classic/theme/classiceditor.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-editor-classic/classiceditor.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAKA,cAIC,iBAMD,CAJC,2DAEC,yBACD,CCLC,gDCED,eDKC,CAPA,uICMA,qCAAsC,CDJpC,2BAA4B,CAC5B,4BAIF,CAPA,gDAMC,qBACD,CAEA,iFACC,uBAAwB,CCR1B,eDaC,CANA,yMCHA,qCAAsC,CDOpC,eAEF,CAKF,yCAEC,0CAA2C,CCpB3C,eD8BD,CAZA,yHCdE,qCAAsC,CDmBtC,wBAAyB,CACzB,yBAMF,CAHC,0DACC,wCACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-editor {\\n\\t/* All the elements within `.ck-editor` are positioned relatively to it.\\n\\t If any element needs to be positioned with respect to the , etc.,\\n\\t it must land outside of the `.ck-editor` in DOM. */\\n\\tposition: relative;\\n\\n\\t& .ck-editor__top .ck-sticky-panel .ck-toolbar {\\n\\t\\t/* https://github.com/ckeditor/ckeditor5-editor-classic/issues/62 */\\n\\t\\tz-index: var(--ck-z-modal);\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../mixins/_rounded.css\";\\n\\n.ck.ck-editor__top {\\n\\t& .ck-sticky-panel {\\n\\t\\t& .ck-toolbar {\\n\\t\\t\\t@mixin ck-rounded-corners {\\n\\t\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\tborder-bottom-width: 0;\\n\\t\\t}\\n\\n\\t\\t& .ck-sticky-panel__content_sticky .ck-toolbar {\\n\\t\\t\\tborder-bottom-width: 1px;\\n\\n\\t\\t\\t@mixin ck-rounded-corners {\\n\\t\\t\\t\\tborder-radius: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n/* Note: Use ck-editor__main to make sure these styles don\\'t apply to other editor types */\\n.ck.ck-editor__main > .ck-editor__editable {\\n\\t/* https://github.com/ckeditor/ckeditor5-theme-lark/issues/113 */\\n\\tbackground: var(--ck-color-base-background);\\n\\n\\t@mixin ck-rounded-corners {\\n\\t\\tborder-top-left-radius: 0;\\n\\t\\tborder-top-right-radius: 0;\\n\\t}\\n\\n\\t&:not(.ck-focused) {\\n\\t\\tborder-color: var(--ck-color-base-border);\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-color-grid{display:grid}:root{--ck-color-grid-tile-size:24px;--ck-color-color-grid-check-icon:#000}.ck.ck-color-grid{grid-gap:5px;padding:8px}.ck.ck-color-grid__tile{width:var(--ck-color-grid-tile-size);height:var(--ck-color-grid-tile-size);min-width:var(--ck-color-grid-tile-size);min-height:var(--ck-color-grid-tile-size);padding:0;transition:box-shadow .2s ease;border:0}.ck.ck-color-grid__tile.ck-disabled{cursor:unset;transition:unset}.ck.ck-color-grid__tile.ck-color-table__color-tile_bordered{box-shadow:0 0 0 1px var(--ck-color-base-border)}.ck.ck-color-grid__tile .ck.ck-icon{display:none;color:var(--ck-color-color-grid-check-icon)}.ck.ck-color-grid__tile.ck-on{box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-base-text)}.ck.ck-color-grid__tile.ck-on .ck.ck-icon{display:block}.ck.ck-color-grid__tile.ck-on,.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){border:0}.ck.ck-color-grid__tile:focus:not(.ck-disabled),.ck.ck-color-grid__tile:hover:not(.ck-disabled){box-shadow:inset 0 0 0 1px var(--ck-color-base-background),0 0 0 2px var(--ck-color-focus-border)}.ck.ck-color-grid__label{padding:0 var(--ck-spacing-standard)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/colorgrid/colorgrid.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/colorgrid/colorgrid.css\"],names:[],mappings:\"AAKA,kBACC,YACD,CCAA,MACC,8BAA+B,CAK/B,qCACD,CAEA,kBACC,YAAa,CACb,WACD,CAEA,wBACC,oCAAqC,CACrC,qCAAsC,CACtC,wCAAyC,CACzC,yCAA0C,CAC1C,SAAU,CACV,8BAA+B,CAC/B,QAmCD,CAjCC,oCACC,YAAa,CACb,gBACD,CAEA,4DACC,gDACD,CAEA,oCACC,YAAa,CACb,2CACD,CAEA,8BACC,8FAKD,CAHC,0CACC,aACD,CAGD,8HAIC,QACD,CAEA,gGAEC,iGACD,CAGD,yBACC,oCACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-color-grid {\\n\\tdisplay: grid;\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n\\n:root {\\n\\t--ck-color-grid-tile-size: 24px;\\n\\n\\t/* Not using global colors here because these may change but some colors in a pallette\\n\\t * require special treatment. For instance, this ensures no matter what the UI text color is,\\n\\t * the check icon will look good on the black color tile. */\\n\\t--ck-color-color-grid-check-icon: hsl(0, 0%, 0%);\\n}\\n\\n.ck.ck-color-grid {\\n\\tgrid-gap: 5px;\\n\\tpadding: 8px;\\n}\\n\\n.ck.ck-color-grid__tile {\\n\\twidth: var(--ck-color-grid-tile-size);\\n\\theight: var(--ck-color-grid-tile-size);\\n\\tmin-width: var(--ck-color-grid-tile-size);\\n\\tmin-height: var(--ck-color-grid-tile-size);\\n\\tpadding: 0;\\n\\ttransition: .2s ease box-shadow;\\n\\tborder: 0;\\n\\n\\t&.ck-disabled {\\n\\t\\tcursor: unset;\\n\\t\\ttransition: unset;\\n\\t}\\n\\n\\t&.ck-color-table__color-tile_bordered {\\n\\t\\tbox-shadow: 0 0 0 1px var(--ck-color-base-border);\\n\\t}\\n\\n\\t& .ck.ck-icon {\\n\\t\\tdisplay: none;\\n\\t\\tcolor: var(--ck-color-color-grid-check-icon);\\n\\t}\\n\\n\\t&.ck-on {\\n\\t\\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-base-text);\\n\\n\\t\\t& .ck.ck-icon {\\n\\t\\t\\tdisplay: block;\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-on,\\n\\t&:focus:not( .ck-disabled ),\\n\\t&:hover:not( .ck-disabled ) {\\n\\t\\t/* Disable the default .ck-button\\'s border ring. */\\n\\t\\tborder: 0;\\n\\t}\\n\\n\\t&:focus:not( .ck-disabled ),\\n\\t&:hover:not( .ck-disabled ) {\\n\\t\\tbox-shadow: inset 0 0 0 1px var(--ck-color-base-background), 0 0 0 2px var(--ck-color-focus-border);\\n\\t}\\n}\\n\\n.ck.ck-color-grid__label {\\n\\tpadding: 0 var(--ck-spacing-standard);\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck .ck-button.ck-color-table__remove-color{display:flex;align-items:center;width:100%}label.ck.ck-color-grid__label{font-weight:unset}.ck .ck-button.ck-color-table__remove-color{padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard);border-bottom-left-radius:0;border-bottom-right-radius:0}.ck .ck-button.ck-color-table__remove-color:not(:focus){border-bottom:1px solid var(--ck-color-base-border)}[dir=ltr] .ck .ck-button.ck-color-table__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck .ck-button.ck-color-table__remove-color .ck.ck-icon{margin-left:var(--ck-spacing-standard)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-font/theme/fontcolor.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-font/fontcolor.css\"],names:[],mappings:\"AAKA,4CACC,YAAa,CACb,kBAAmB,CACnB,UACD,CAEA,8BACC,iBACD,CCNA,4CACC,qEAAyE,CACzE,2BAA4B,CAC5B,4BAeD,CAbC,wDACC,mDACD,CAEA,kEAEE,uCAMF,CARA,kEAME,sCAEF\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck .ck-button.ck-color-table__remove-color {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\twidth: 100%;\\n}\\n\\nlabel.ck.ck-color-grid__label {\\n\\tfont-weight: unset;\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n.ck .ck-button.ck-color-table__remove-color {\\n\\tpadding: calc(var(--ck-spacing-standard) / 2 ) var(--ck-spacing-standard);\\n\\tborder-bottom-left-radius: 0;\\n\\tborder-bottom-right-radius: 0;\\n\\n\\t&:not(:focus) {\\n\\t\\tborder-bottom: 1px solid var(--ck-color-base-border);\\n\\t}\\n\\n\\t& .ck.ck-icon {\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\tmargin-right: var(--ck-spacing-standard);\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\tmargin-left: var(--ck-spacing-standard);\\n\\t\\t}\\n\\t}\\n}\\n\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-heading_heading1{font-size:20px}.ck.ck-heading_heading2{font-size:17px}.ck.ck-heading_heading3{font-size:14px}.ck[class*=ck-heading_heading]{font-weight:700}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__button .ck-button__label{width:8em}.ck.ck-dropdown.ck-heading-dropdown .ck-dropdown__panel .ck-list__item{min-width:18em}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-heading/theme/heading.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-heading/heading.css\"],names:[],mappings:\"AAKA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,wBACC,cACD,CAEA,+BACC,eACD,CCZC,2EACC,SACD,CAEA,uEACC,cACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-heading_heading1 {\\n\\tfont-size: 20px;\\n}\\n\\n.ck.ck-heading_heading2 {\\n\\tfont-size: 17px;\\n}\\n\\n.ck.ck-heading_heading3 {\\n\\tfont-size: 14px;\\n}\\n\\n.ck[class*=\"ck-heading_heading\"] {\\n\\tfont-weight: bold;\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/* Resize dropdown's button label. */\\n.ck.ck-dropdown.ck-heading-dropdown {\\n\\t& .ck-dropdown__button .ck-button__label {\\n\\t\\twidth: 8em;\\n\\t}\\n\\n\\t& .ck-dropdown__panel .ck-list__item {\\n\\t\\tmin-width: 18em;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck .ck-link_selected{background:var(--ck-color-link-selected-background)}.ck .ck-fake-link-selection{background:var(--ck-color-link-fake-selection)}.ck .ck-fake-link-selection_collapsed{height:100%;border-right:1px solid var(--ck-color-base-text);margin-right:-1px;outline:1px solid hsla(0,0%,100%,.5)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/link.css\"],names:[],mappings:\"AAMA,sBACC,mDACD,CAMA,4BACC,8CACD,CAGA,sCACC,WAAY,CACZ,gDAAiD,CACjD,iBAAkB,CAClB,oCACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/* Class added to span element surrounding currently selected link. */\\n.ck .ck-link_selected {\\n\\tbackground: var(--ck-color-link-selected-background);\\n}\\n\\n/*\\n * Classes used by the \"fake visual selection\" displayed in the content when an input\\n * in the link UI has focus (the browser does not render the native selection in this state).\\n */\\n.ck .ck-fake-link-selection {\\n\\tbackground: var(--ck-color-link-fake-selection);\\n}\\n\\n/* A collapsed fake visual selection. */\\n.ck .ck-fake-link-selection_collapsed {\\n\\theight: 100%;\\n\\tborder-right: 1px solid var(--ck-color-base-text);\\n\\tmargin-right: -1px;\\n\\toutline: solid 1px hsla(0, 0%, 100%, .5);\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,':root{--ck-balloon-panel-arrow-z-index:calc(var(--ck-z-default) - 3)}.ck.ck-balloon-panel{display:none;position:absolute;z-index:var(--ck-z-modal)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{content:\"\";position:absolute}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_n]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_n]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel[class*=arrow_s]:before{z-index:var(--ck-balloon-panel-arrow-z-index)}.ck.ck-balloon-panel[class*=arrow_s]:after{z-index:calc(var(--ck-balloon-panel-arrow-z-index) + 1)}.ck.ck-balloon-panel.ck-balloon-panel_visible{display:block}:root{--ck-balloon-arrow-offset:2px;--ck-balloon-arrow-height:10px;--ck-balloon-arrow-half-width:8px;--ck-balloon-arrow-drop-shadow:0 2px 2px var(--ck-color-shadow-drop)}.ck.ck-balloon-panel{border-radius:0}.ck-rounded-corners .ck.ck-balloon-panel,.ck.ck-balloon-panel.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-balloon-panel{box-shadow:var(--ck-drop-shadow),0 0;min-height:15px;background:var(--ck-color-panel-background);border:1px solid var(--ck-color-panel-border)}.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:after,.ck.ck-balloon-panel.ck-balloon-panel_with-arrow:before{width:0;height:0;border-style:solid}.ck.ck-balloon-panel[class*=arrow_n]:after,.ck.ck-balloon-panel[class*=arrow_n]:before{border-left-width:var(--ck-balloon-arrow-half-width);border-bottom-width:var(--ck-balloon-arrow-height);border-right-width:var(--ck-balloon-arrow-half-width);border-top-width:0}.ck.ck-balloon-panel[class*=arrow_n]:before{border-bottom-color:var(--ck-color-panel-border)}.ck.ck-balloon-panel[class*=arrow_n]:after,.ck.ck-balloon-panel[class*=arrow_n]:before{border-left-color:transparent;border-right-color:transparent;border-top-color:transparent}.ck.ck-balloon-panel[class*=arrow_n]:after{border-bottom-color:var(--ck-color-panel-background);margin-top:var(--ck-balloon-arrow-offset)}.ck.ck-balloon-panel[class*=arrow_s]:after,.ck.ck-balloon-panel[class*=arrow_s]:before{border-left-width:var(--ck-balloon-arrow-half-width);border-bottom-width:0;border-right-width:var(--ck-balloon-arrow-half-width);border-top-width:var(--ck-balloon-arrow-height)}.ck.ck-balloon-panel[class*=arrow_s]:before{border-top-color:var(--ck-color-panel-border);filter:drop-shadow(var(--ck-balloon-arrow-drop-shadow))}.ck.ck-balloon-panel[class*=arrow_s]:after,.ck.ck-balloon-panel[class*=arrow_s]:before{border-left-color:transparent;border-bottom-color:transparent;border-right-color:transparent}.ck.ck-balloon-panel[class*=arrow_s]:after{border-top-color:var(--ck-color-panel-background);margin-bottom:var(--ck-balloon-arrow-offset)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_n:before{left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nw:before{left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_ne:before{right:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_s:before{left:50%;margin-left:calc(var(--ck-balloon-arrow-half-width)*-1);bottom:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sw:before{left:calc(var(--ck-balloon-arrow-half-width)*2);bottom:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_se:before{right:calc(var(--ck-balloon-arrow-half-width)*2);bottom:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_sme:before{right:25%;margin-right:calc(var(--ck-balloon-arrow-half-width)*2);bottom:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_smw:before{left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2);bottom:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nme:before{right:25%;margin-right:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:after,.ck.ck-balloon-panel.ck-balloon-panel_arrow_nmw:before{left:25%;margin-left:calc(var(--ck-balloon-arrow-half-width)*2);top:calc(var(--ck-balloon-arrow-height)*-1)}',\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonpanel.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonpanel.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\"],names:[],mappings:\"AAKA,MAEC,8DACD,CAEA,qBACC,YAAa,CACb,iBAAkB,CAElB,yBAyCD,CAtCE,+GAEC,UAAW,CACX,iBACD,CAEA,wDACC,6CACD,CAEA,uDACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAIA,4CACC,6CACD,CAEA,2CACC,uDACD,CAGD,8CACC,aACD,CC9CD,MACC,6BAA8B,CAC9B,8BAA+B,CAC/B,iCAAkC,CAClC,oEACD,CAEA,qBCJC,eD4ID,CAxIA,iFCAE,qCDwIF,CAxIA,qBENC,oCAA8B,CFU9B,eAAgB,CAEhB,2CAA4C,CAC5C,6CAiID,CA9HE,+GAEC,OAAQ,CACR,QAAS,CACT,kBACD,CAIA,uFAEC,oDAAoH,CAApH,kDAAoH,CAApH,qDAAoH,CAApH,kBACD,CAEA,4CACC,gDACD,CAEA,uFAHC,6BAA8E,CAA9E,8BAA8E,CAA9E,4BAMD,CAHA,2CACC,oDAAkF,CAClF,yCACD,CAIA,uFAEC,oDAAoH,CAApH,qBAAoH,CAApH,qDAAoH,CAApH,+CACD,CAEA,4CACC,6CAAkE,CAClE,uDACD,CAEA,uFAJC,6BAAkE,CAAlE,+BAAkE,CAAlE,8BAOD,CAHA,2CACC,iDAAkF,CAClF,4CACD,CAIA,yGAEC,QAAS,CACT,uDAA0D,CAC1D,2CACD,CAIA,2GAEC,+CAAkD,CAClD,2CACD,CAIA,2GAEC,gDAAmD,CACnD,2CACD,CAIA,yGAEC,QAAS,CACT,uDAA0D,CAC1D,8CACD,CAIA,2GAEC,+CAAkD,CAClD,8CACD,CAIA,2GAEC,gDAAmD,CACnD,8CACD,CAIA,6GAEC,SAAU,CACV,uDAA0D,CAC1D,8CACD,CAIA,6GAEC,QAAS,CACT,sDAAyD,CACzD,8CACD,CAIA,6GAEC,SAAU,CACV,uDAA0D,CAC1D,2CACD,CAIA,6GAEC,QAAS,CACT,sDAAyD,CACzD,2CACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t/* Make sure the balloon arrow does not float over its children. */\\n\\t--ck-balloon-panel-arrow-z-index: calc(var(--ck-z-default) - 3);\\n}\\n\\n.ck.ck-balloon-panel {\\n\\tdisplay: none;\\n\\tposition: absolute;\\n\\n\\tz-index: var(--ck-z-modal);\\n\\n\\t&.ck-balloon-panel_with-arrow {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tcontent: \"\";\\n\\t\\t\\tposition: absolute;\\n\\t\\t}\\n\\n\\t\\t&::before {\\n\\t\\t\\tz-index: var(--ck-balloon-panel-arrow-z-index);\\n\\t\\t}\\n\\n\\t\\t&::after {\\n\\t\\t\\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\\n\\t\\t}\\n\\t}\\n\\n\\t&[class*=\"arrow_n\"] {\\n\\t\\t&::before {\\n\\t\\t\\tz-index: var(--ck-balloon-panel-arrow-z-index);\\n\\t\\t}\\n\\n\\t\\t&::after {\\n\\t\\t\\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\\n\\t\\t}\\n\\t}\\n\\n\\t&[class*=\"arrow_s\"] {\\n\\t\\t&::before {\\n\\t\\t\\tz-index: var(--ck-balloon-panel-arrow-z-index);\\n\\t\\t}\\n\\n\\t\\t&::after {\\n\\t\\t\\tz-index: calc(var(--ck-balloon-panel-arrow-z-index) + 1);\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_visible {\\n\\t\\tdisplay: block;\\n\\t}\\n}\\n','/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n@import \"../../../mixins/_shadow.css\";\\n\\n:root {\\n\\t--ck-balloon-arrow-offset: 2px;\\n\\t--ck-balloon-arrow-height: 10px;\\n\\t--ck-balloon-arrow-half-width: 8px;\\n\\t--ck-balloon-arrow-drop-shadow: 0 2px 2px var(--ck-color-shadow-drop);\\n}\\n\\n.ck.ck-balloon-panel {\\n\\t@mixin ck-rounded-corners;\\n\\t@mixin ck-drop-shadow;\\n\\n\\tmin-height: 15px;\\n\\n\\tbackground: var(--ck-color-panel-background);\\n\\tborder: 1px solid var(--ck-color-panel-border);\\n\\n\\t&.ck-balloon-panel_with-arrow {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\twidth: 0;\\n\\t\\t\\theight: 0;\\n\\t\\t\\tborder-style: solid;\\n\\t\\t}\\n\\t}\\n\\n\\t&[class*=\"arrow_n\"] {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tborder-width: 0 var(--ck-balloon-arrow-half-width) var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width);\\n\\t\\t}\\n\\n\\t\\t&::before {\\n\\t\\t\\tborder-color: transparent transparent var(--ck-color-panel-border) transparent;\\n\\t\\t}\\n\\n\\t\\t&::after {\\n\\t\\t\\tborder-color: transparent transparent var(--ck-color-panel-background) transparent;\\n\\t\\t\\tmargin-top: var(--ck-balloon-arrow-offset);\\n\\t\\t}\\n\\t}\\n\\n\\t&[class*=\"arrow_s\"] {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tborder-width: var(--ck-balloon-arrow-height) var(--ck-balloon-arrow-half-width) 0 var(--ck-balloon-arrow-half-width);\\n\\t\\t}\\n\\n\\t\\t&::before {\\n\\t\\t\\tborder-color: var(--ck-color-panel-border) transparent transparent;\\n\\t\\t\\tfilter: drop-shadow(var(--ck-balloon-arrow-drop-shadow));\\n\\t\\t}\\n\\n\\t\\t&::after {\\n\\t\\t\\tborder-color: var(--ck-color-panel-background) transparent transparent transparent;\\n\\t\\t\\tmargin-bottom: var(--ck-balloon-arrow-offset);\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_n {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tleft: 50%;\\n\\t\\t\\tmargin-left: calc(-1 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\ttop: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_nw {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tleft: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\ttop: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_ne {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tright: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\ttop: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_s {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tleft: 50%;\\n\\t\\t\\tmargin-left: calc(-1 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_sw {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tleft: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_se {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tright: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_sme {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tright: 25%;\\n\\t\\t\\tmargin-right: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_smw {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tleft: 25%;\\n\\t\\t\\tmargin-left: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\tbottom: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_nme {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tright: 25%;\\n\\t\\t\\tmargin-right: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\ttop: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-balloon-panel_arrow_nmw {\\n\\t\\t&::before,\\n\\t\\t&::after {\\n\\t\\t\\tleft: 25%;\\n\\t\\t\\tmargin-left: calc(2 * var(--ck-balloon-arrow-half-width));\\n\\t\\t\\ttop: calc(-1 * var(--ck-balloon-arrow-height));\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck .ck-balloon-rotator__navigation{display:flex;align-items:center;justify-content:center}.ck .ck-balloon-rotator__content .ck-toolbar{justify-content:center}.ck .ck-balloon-rotator__navigation{background:var(--ck-color-toolbar-background);border-bottom:1px solid var(--ck-color-toolbar-border);padding:0 var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation>*{margin-right:var(--ck-spacing-small);margin-top:var(--ck-spacing-small);margin-bottom:var(--ck-spacing-small)}.ck .ck-balloon-rotator__navigation .ck-balloon-rotator__counter{margin-right:var(--ck-spacing-standard);margin-left:var(--ck-spacing-small)}.ck .ck-balloon-rotator__content .ck.ck-annotation-wrapper{box-shadow:none}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/balloonrotator.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/balloonrotator.css\"],names:[],mappings:\"AAKA,oCACC,YAAa,CACb,kBAAmB,CACnB,sBACD,CAKA,6CACC,sBACD,CCXA,oCACC,6CAA8C,CAC9C,sDAAuD,CACvD,iCAgBD,CAbC,sCACC,oCAAqC,CACrC,kCAAmC,CACnC,qCACD,CAGA,iEACC,uCAAwC,CAGxC,mCACD,CAMA,2DACC,eACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck .ck-balloon-rotator__navigation {\\n\\tdisplay: flex;\\n\\talign-items: center;\\n\\tjustify-content: center;\\n}\\n\\n/* Buttons inside a toolbar should be centered when rotator bar is wider.\\n * See: https://github.com/ckeditor/ckeditor5-ui/issues/495\\n */\\n.ck .ck-balloon-rotator__content .ck-toolbar {\\n\\tjustify-content: center;\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck .ck-balloon-rotator__navigation {\\n\\tbackground: var(--ck-color-toolbar-background);\\n\\tborder-bottom: 1px solid var(--ck-color-toolbar-border);\\n\\tpadding: 0 var(--ck-spacing-small);\\n\\n\\t/* Let's keep similar appearance to `ck-toolbar`. */\\n\\t& > * {\\n\\t\\tmargin-right: var(--ck-spacing-small);\\n\\t\\tmargin-top: var(--ck-spacing-small);\\n\\t\\tmargin-bottom: var(--ck-spacing-small);\\n\\t}\\n\\n\\t/* Gives counter more breath than buttons. */\\n\\t& .ck-balloon-rotator__counter {\\n\\t\\tmargin-right: var(--ck-spacing-standard);\\n\\n\\t\\t/* We need to use smaller margin because of previous button's right margin. */\\n\\t\\tmargin-left: var(--ck-spacing-small);\\n\\t}\\n}\\n\\n.ck .ck-balloon-rotator__content {\\n\\n\\t/* Disable default annotation shadow inside rotator with fake panels. */\\n\\t& .ck.ck-annotation-wrapper {\\n\\t\\tbox-shadow: none;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck .ck-fake-panel{position:absolute;z-index:calc(var(--ck-z-modal) - 1)}.ck .ck-fake-panel div{position:absolute}.ck .ck-fake-panel div:first-child{z-index:2}.ck .ck-fake-panel div:nth-child(2){z-index:1}:root{--ck-balloon-fake-panel-offset-horizontal:6px;--ck-balloon-fake-panel-offset-vertical:6px}.ck .ck-fake-panel div{box-shadow:var(--ck-drop-shadow),0 0;min-height:15px;background:var(--ck-color-panel-background);border:1px solid var(--ck-color-panel-border);border-radius:var(--ck-border-radius);width:100%;height:100%}.ck .ck-fake-panel div:first-child{margin-left:var(--ck-balloon-fake-panel-offset-horizontal);margin-top:var(--ck-balloon-fake-panel-offset-vertical)}.ck .ck-fake-panel div:nth-child(2){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*2);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*2)}.ck .ck-fake-panel div:nth-child(3){margin-left:calc(var(--ck-balloon-fake-panel-offset-horizontal)*3);margin-top:calc(var(--ck-balloon-fake-panel-offset-vertical)*3)}.ck .ck-balloon-panel_arrow_s+.ck-fake-panel,.ck .ck-balloon-panel_arrow_se+.ck-fake-panel,.ck .ck-balloon-panel_arrow_sw+.ck-fake-panel{--ck-balloon-fake-panel-offset-vertical:-6px}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/panel/fakepanel.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/panel/fakepanel.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\"],names:[],mappings:\"AAKA,mBACC,iBAAkB,CAGlB,mCACD,CAEA,uBACC,iBACD,CAEA,mCACC,SACD,CAEA,oCACC,SACD,CCfA,MACC,6CAA8C,CAC9C,2CACD,CAGA,uBCJC,oCAA8B,CDO9B,eAAgB,CAEhB,2CAA4C,CAC5C,6CAA8C,CAC9C,qCAAsC,CAEtC,UAAW,CACX,WACD,CAEA,mCACC,0DAA2D,CAC3D,uDACD,CAEA,oCACC,kEAAqE,CACrE,+DACD,CACA,oCACC,kEAAqE,CACrE,+DACD,CAGA,yIAGC,4CACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck .ck-fake-panel {\\n\\tposition: absolute;\\n\\n\\t/* Fake panels should be placed under main balloon content. */\\n\\tz-index: calc(var(--ck-z-modal) - 1);\\n}\\n\\n.ck .ck-fake-panel div {\\n\\tposition: absolute;\\n}\\n\\n.ck .ck-fake-panel div:nth-child( 1 ) {\\n\\tz-index: 2;\\n}\\n\\n.ck .ck-fake-panel div:nth-child( 2 ) {\\n\\tz-index: 1;\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_shadow.css\";\\n\\n:root {\\n\\t--ck-balloon-fake-panel-offset-horizontal: 6px;\\n\\t--ck-balloon-fake-panel-offset-vertical: 6px;\\n}\\n\\n/* Let\\'s use `.ck-balloon-panel` appearance. See: balloonpanel.css. */\\n.ck .ck-fake-panel div {\\n\\t@mixin ck-drop-shadow;\\n\\n\\tmin-height: 15px;\\n\\n\\tbackground: var(--ck-color-panel-background);\\n\\tborder: 1px solid var(--ck-color-panel-border);\\n\\tborder-radius: var(--ck-border-radius);\\n\\n\\twidth: 100%;\\n\\theight: 100%;\\n}\\n\\n.ck .ck-fake-panel div:nth-child( 1 ) {\\n\\tmargin-left: var(--ck-balloon-fake-panel-offset-horizontal);\\n\\tmargin-top: var(--ck-balloon-fake-panel-offset-vertical);\\n}\\n\\n.ck .ck-fake-panel div:nth-child( 2 ) {\\n\\tmargin-left: calc(var(--ck-balloon-fake-panel-offset-horizontal) * 2);\\n\\tmargin-top: calc(var(--ck-balloon-fake-panel-offset-vertical) * 2);\\n}\\n.ck .ck-fake-panel div:nth-child( 3 ) {\\n\\tmargin-left: calc(var(--ck-balloon-fake-panel-offset-horizontal) * 3);\\n\\tmargin-top: calc(var(--ck-balloon-fake-panel-offset-vertical) * 3);\\n}\\n\\n/* If balloon is positioned above element, we need to move fake panel to the top. */\\n.ck .ck-balloon-panel_arrow_s + .ck-fake-panel,\\n.ck .ck-balloon-panel_arrow_se + .ck-fake-panel,\\n.ck .ck-balloon-panel_arrow_sw + .ck-fake-panel {\\n\\t--ck-balloon-fake-panel-offset-vertical: -6px;\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-labeled-field-view .ck-labeled-field-view__status{font-size:var(--ck-font-size-small);margin-top:var(--ck-spacing-small);white-space:normal}.ck.ck-labeled-field-view .ck-labeled-field-view__status_error{color:var(--ck-color-base-error)}.ck.ck-labeled-field-view>.ck.ck-label{width:100%;text-overflow:ellipsis;overflow:hidden}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/labeledfield/labeledfieldview.css\"],names:[],mappings:\"AAKA,yDACC,mCAAoC,CACpC,kCAAmC,CAInC,kBACD,CAEA,+DACC,gCACD,CAEA,uCACC,UAAW,CACX,sBAAuB,CACvB,eACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-labeled-field-view .ck-labeled-field-view__status {\\n\\tfont-size: var(--ck-font-size-small);\\n\\tmargin-top: var(--ck-spacing-small);\\n\\n\\t/* Let the info wrap to the next line to avoid stretching the layout horizontally.\\n\\tThe status could be very long. */\\n\\twhite-space: normal;\\n}\\n\\n.ck.ck-labeled-field-view .ck-labeled-field-view__status_error {\\n\\tcolor: var(--ck-color-base-error);\\n}\\n\\n.ck.ck-labeled-field-view > .ck.ck-label {\\n\\twidth: 100%;\\n\\ttext-overflow: ellipsis;\\n\\toverflow: hidden;\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\":root{--ck-input-text-width:18em}.ck.ck-input-text{border-radius:0}.ck-rounded-corners .ck.ck-input-text,.ck.ck-input-text.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input-text{box-shadow:var(--ck-inner-shadow),0 0;background:var(--ck-color-input-background);border:1px solid var(--ck-color-input-border);padding:var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);min-width:var(--ck-input-text-width);min-height:var(--ck-ui-component-min-height);transition:box-shadow .2s ease-in-out,border .2s ease-in-out}.ck.ck-input-text:focus{outline:none;border:var(--ck-focus-ring);box-shadow:var(--ck-focus-outer-shadow),var(--ck-inner-shadow)}.ck.ck-input-text[readonly]{border:1px solid var(--ck-color-input-disabled-border);background:var(--ck-color-input-disabled-background);color:var(--ck-color-input-disabled-text)}.ck.ck-input-text[readonly]:focus{box-shadow:var(--ck-focus-disabled-outer-shadow),var(--ck-inner-shadow)}.ck.ck-input-text.ck-error{border-color:var(--ck-color-input-error-border);animation:ck-text-input-shake .3s ease both}.ck.ck-input-text.ck-error:focus{box-shadow:var(--ck-focus-error-outer-shadow),var(--ck-inner-shadow)}@keyframes ck-text-input-shake{20%{transform:translateX(-2px)}40%{transform:translateX(2px)}60%{transform:translateX(-1px)}80%{transform:translateX(1px)}}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/inputtext/inputtext.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css\"],names:[],mappings:\"AASA,MACC,0BACD,CAEA,kBCFC,eDyCD,CAvCA,2ECEE,qCDqCF,CAvCA,kBEJC,qCAA8B,CFQ9B,2CAA4C,CAC5C,6CAA8C,CAC9C,6DAA8D,CAC9D,oCAAqC,CAGrC,4CAA6C,CAG7C,4DA0BD,CAxBC,wBGlBA,YAAa,CACb,2BAA2B,CDF3B,8DFsBA,CAEA,4BACC,sDAAuD,CACvD,oDAAqD,CACrD,yCAMD,CAJC,kCE7BD,uEFgCC,CAGD,2BACC,+CAAgD,CAChD,2CAKD,CAHC,iCEvCD,oEFyCC,CAIF,+BACC,IACC,0BACD,CAEA,IACC,yBACD,CAEA,IACC,0BACD,CAEA,IACC,yBACD,CACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n@import \"../../../mixins/_focus.css\";\\n@import \"../../../mixins/_shadow.css\";\\n\\n:root {\\n\\t--ck-input-text-width: 18em;\\n}\\n\\n.ck.ck-input-text {\\n\\t@mixin ck-rounded-corners;\\n\\t@mixin ck-box-shadow var(--ck-inner-shadow);\\n\\n\\tbackground: var(--ck-color-input-background);\\n\\tborder: 1px solid var(--ck-color-input-border);\\n\\tpadding: var(--ck-spacing-extra-tiny) var(--ck-spacing-medium);\\n\\tmin-width: var(--ck-input-text-width);\\n\\n\\t/* This is important to stay of the same height as surrounding buttons */\\n\\tmin-height: var(--ck-ui-component-min-height);\\n\\n\\t/* Apply some smooth transition to the box-shadow and border. */\\n\\ttransition: box-shadow .2s ease-in-out, border .2s ease-in-out;\\n\\n\\t&:focus {\\n\\t\\t@mixin ck-focus-ring;\\n\\t\\t@mixin ck-box-shadow var(--ck-focus-outer-shadow), var(--ck-inner-shadow);\\n\\t}\\n\\n\\t&[readonly] {\\n\\t\\tborder: 1px solid var(--ck-color-input-disabled-border);\\n\\t\\tbackground: var(--ck-color-input-disabled-background);\\n\\t\\tcolor: var(--ck-color-input-disabled-text);\\n\\n\\t\\t&:focus {\\n\\t\\t\\t/* The read-only input should have a slightly less visible shadow when focused. */\\n\\t\\t\\t@mixin ck-box-shadow var(--ck-focus-disabled-outer-shadow), var(--ck-inner-shadow);\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-error {\\n\\t\\tborder-color: var(--ck-color-input-error-border);\\n\\t\\tanimation: ck-text-input-shake .3s ease both;\\n\\n\\t\\t&:focus {\\n\\t\\t\\t@mixin ck-box-shadow var(--ck-focus-error-outer-shadow), var(--ck-inner-shadow);\\n\\t\\t}\\n\\t}\\n}\\n\\n@keyframes ck-text-input-shake {\\n\\t20% {\\n\\t\\ttransform: translateX(-2px);\\n\\t}\\n\\n\\t40% {\\n\\t\\ttransform: translateX(2px);\\n\\t}\\n\\n\\t60% {\\n\\t\\ttransform: translateX(-1px);\\n\\t}\\n\\n\\t80% {\\n\\t\\ttransform: translateX(1px);\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A visual style of focused element's border.\\n */\\n@define-mixin ck-focus-ring {\\n\\t/* Disable native outline. */\\n\\toutline: none;\\n\\tborder: var(--ck-focus-ring)\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-link-form{display:flex}.ck.ck-link-form .ck-label{display:none}@media screen and (max-width:600px){.ck.ck-link-form{flex-wrap:wrap}.ck.ck-link-form .ck-labeled-field-view{flex-basis:100%}.ck.ck-link-form .ck-button{flex-basis:50%}}.ck.ck-link-form_layout-vertical{display:block;padding:0;min-width:var(--ck-input-text-width)}.ck.ck-link-form_layout-vertical .ck-labeled-field-view{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) var(--ck-spacing-small)}.ck.ck-link-form_layout-vertical .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-link-form_layout-vertical .ck-button{padding:var(--ck-spacing-standard);margin:0;border-radius:0;border:0;border-top:1px solid var(--ck-color-base-border);width:50%}[dir=ltr] .ck.ck-link-form_layout-vertical .ck-button,[dir=rtl] .ck.ck-link-form_layout-vertical .ck-button{margin-left:0}[dir=rtl] .ck.ck-link-form_layout-vertical .ck-button:last-of-type{border-right:1px solid var(--ck-color-base-border)}.ck.ck-link-form_layout-vertical .ck.ck-list{margin-left:0}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton{border:0;width:100%}.ck.ck-link-form_layout-vertical .ck.ck-list .ck-button.ck-switchbutton:hover{background:none}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkform.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkform.css\"],names:[],mappings:\"AAOA,iBACC,YAiBD,CAfC,2BACC,YACD,CCNA,oCDCD,iBAQE,cAUF,CARE,wCACC,eACD,CAEA,4BACC,cACD,CCfD,CDuBD,iCACC,aAAc,CEpBd,SAAU,CACV,oCFoBD,CElBC,wDACC,oFAMD,CAJC,uEACC,WAAY,CACZ,UACD,CAGD,4CACC,kCAAmC,CACnC,QAAS,CACT,eAAgB,CAChB,QAAS,CACT,gDAAiD,CACjD,SAaD,CAnBA,4GAaE,aAMF,CAJE,mEACC,kDACD,CAKF,6CACC,aAUD,CARC,wEACC,QAAS,CACT,UAKD,CAHC,8EACC,eACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\";\\n\\n.ck.ck-link-form {\\n\\tdisplay: flex;\\n\\n\\t& .ck-label {\\n\\t\\tdisplay: none;\\n\\t}\\n\\n\\t@mixin ck-media-phone {\\n\\t\\tflex-wrap: wrap;\\n\\n\\t\\t& .ck-labeled-field-view {\\n\\t\\t\\tflex-basis: 100%;\\n\\t\\t}\\n\\n\\t\\t& .ck-button {\\n\\t\\t\\tflex-basis: 50%;\\n\\t\\t}\\n\\t}\\n}\\n\\n/*\\n * Style link form differently when manual decorators are available.\\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\\n */\\n.ck.ck-link-form_layout-vertical {\\n\\tdisplay: block;\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@define-mixin ck-media-phone {\\n\\t@media screen and (max-width: 600px) {\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n/*\\n * Style link form differently when manual decorators are available.\\n * See: https://github.com/ckeditor/ckeditor5-link/issues/186.\\n */\\n.ck.ck-link-form_layout-vertical {\\n\\tpadding: 0;\\n\\tmin-width: var(--ck-input-text-width);\\n\\n\\t& .ck-labeled-field-view {\\n\\t\\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) var(--ck-spacing-small);\\n\\n\\t\\t& .ck-input-text {\\n\\t\\t\\tmin-width: 0;\\n\\t\\t\\twidth: 100%;\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck-button {\\n\\t\\tpadding: var(--ck-spacing-standard);\\n\\t\\tmargin: 0;\\n\\t\\tborder-radius: 0;\\n\\t\\tborder: 0;\\n\\t\\tborder-top: 1px solid var(--ck-color-base-border);\\n\\t\\twidth: 50%;\\n\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\tmargin-left: 0;\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\tmargin-left: 0;\\n\\n\\t\\t\\t&:last-of-type {\\n\\t\\t\\t\\tborder-right: 1px solid var(--ck-color-base-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t/* Using additional `.ck` class for stronger CSS specificity than `.ck.ck-link-form > :not(:first-child)`. */\\n\\t& .ck.ck-list {\\n\\t\\tmargin-left: 0;\\n\\n\\t\\t& .ck-button.ck-switchbutton {\\n\\t\\t\\tborder: 0;\\n\\t\\t\\twidth: 100%;\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\tbackground: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,'.ck-vertical-form .ck-button:after{content:\"\";width:0;position:absolute;right:-1px;top:var(--ck-spacing-small);bottom:var(--ck-spacing-small);z-index:1}@media screen and (max-width:600px){.ck.ck-responsive-form .ck-button:after{content:\"\";width:0;position:absolute;right:-1px;top:var(--ck-spacing-small);bottom:var(--ck-spacing-small);z-index:1}}.ck-vertical-form>.ck-button:nth-last-child(2):after{border-right:1px solid var(--ck-color-base-border)}.ck.ck-responsive-form{padding:var(--ck-spacing-standard)}.ck.ck-responsive-form:focus{outline:none}[dir=ltr] .ck.ck-responsive-form>:not(:first-child),[dir=rtl] .ck.ck-responsive-form>:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-responsive-form{padding:0;width:calc(var(--ck-input-text-width)*0.8)}.ck.ck-responsive-form .ck-labeled-field-view{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-responsive-form .ck-labeled-field-view .ck-input-text{min-width:0;width:100%}.ck.ck-responsive-form .ck-labeled-field-view .ck-labeled-field-view__error{white-space:normal}.ck.ck-responsive-form>.ck-button:last-child,.ck.ck-responsive-form>.ck-button:nth-last-child(2){padding:var(--ck-spacing-standard);margin-top:var(--ck-spacing-standard);border-radius:0;border:0;border-top:1px solid var(--ck-color-base-border)}[dir=ltr] .ck.ck-responsive-form>.ck-button:last-child,[dir=ltr] .ck.ck-responsive-form>.ck-button:nth-last-child(2),[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2){margin-left:0}.ck.ck-responsive-form>.ck-button:nth-last-child(2):after,[dir=rtl] .ck.ck-responsive-form>.ck-button:last-child:last-of-type,[dir=rtl] .ck.ck-responsive-form>.ck-button:nth-last-child(2):last-of-type{border-right:1px solid var(--ck-color-base-border)}}',\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/responsive-form/responsiveform.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/responsive-form/responsiveform.css\"],names:[],mappings:\"AAOA,mCACC,UAAW,CACX,OAAQ,CACR,iBAAkB,CAClB,UAAW,CACX,2BAA4B,CAC5B,8BAA+B,CAC/B,SACD,CCTC,oCDaC,wCACC,UAAW,CACX,OAAQ,CACR,iBAAkB,CAClB,UAAW,CACX,2BAA4B,CAC5B,8BAA+B,CAC/B,SACD,CCnBD,CCAD,qDACC,kDACD,CAEA,uBACC,kCAkED,CAhEC,6BAEC,YACD,CASC,uGACC,sCACD,CDvBD,oCCMD,uBAqBE,SAAU,CACV,0CA6CF,CA3CE,8CACC,8DAWD,CATC,6DACC,WAAY,CACZ,UACD,CAGA,4EACC,kBACD,CAID,iGAEC,kCAAmC,CACnC,qCAAsC,CAEtC,eAAgB,CAChB,QAAS,CACT,gDAaD,CApBA,0OAcE,aAMF,CAGC,yMACC,kDACD,CDpEF\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\";\\n\\n.ck-vertical-form .ck-button::after {\\n\\tcontent: \"\";\\n\\twidth: 0;\\n\\tposition: absolute;\\n\\tright: -1px;\\n\\ttop: var(--ck-spacing-small);\\n\\tbottom: var(--ck-spacing-small);\\n\\tz-index: 1;\\n}\\n\\n.ck.ck-responsive-form {\\n\\t@mixin ck-media-phone {\\n\\t\\t& .ck-button::after {\\n\\t\\t\\tcontent: \"\";\\n\\t\\t\\twidth: 0;\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tright: -1px;\\n\\t\\t\\ttop: var(--ck-spacing-small);\\n\\t\\t\\tbottom: var(--ck-spacing-small);\\n\\t\\t\\tz-index: 1;\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@define-mixin ck-media-phone {\\n\\t@media screen and (max-width: 600px) {\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n.ck-vertical-form > .ck-button:nth-last-child(2)::after {\\n\\tborder-right: 1px solid var(--ck-color-base-border);\\n}\\n\\n.ck.ck-responsive-form {\\n\\tpadding: var(--ck-spacing-standard);\\n\\n\\t&:focus {\\n\\t\\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\\n\\t\\toutline: none;\\n\\t}\\n\\n\\t@mixin ck-dir ltr {\\n\\t\\t& > :not(:first-child) {\\n\\t\\t\\tmargin-left: var(--ck-spacing-standard);\\n\\t\\t}\\n\\t}\\n\\n\\t@mixin ck-dir rtl {\\n\\t\\t& > :not(:last-child) {\\n\\t\\t\\tmargin-left: var(--ck-spacing-standard);\\n\\t\\t}\\n\\t}\\n\\n\\t@mixin ck-media-phone {\\n\\t\\tpadding: 0;\\n\\t\\twidth: calc(.8 * var(--ck-input-text-width));\\n\\n\\t\\t& .ck-labeled-field-view {\\n\\t\\t\\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\\n\\n\\t\\t\\t& .ck-input-text {\\n\\t\\t\\t\\tmin-width: 0;\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\n\\t\\t\\t/* Let the long error messages wrap in the narrow form. */\\n\\t\\t\\t& .ck-labeled-field-view__error {\\n\\t\\t\\t\\twhite-space: normal;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t/* Styles for two last buttons in the form (save&cancel, edit&unlink, etc.). */\\n\\t\\t& > .ck-button:nth-last-child(1),\\n\\t\\t& > .ck-button:nth-last-child(2) {\\n\\t\\t\\tpadding: var(--ck-spacing-standard);\\n\\t\\t\\tmargin-top: var(--ck-spacing-standard);\\n\\n\\t\\t\\tborder-radius: 0;\\n\\t\\t\\tborder: 0;\\n\\t\\t\\tborder-top: 1px solid var(--ck-color-base-border);\\n\\n\\t\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t\\tmargin-left: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t\\tmargin-left: 0;\\n\\n\\t\\t\\t\\t&:last-of-type {\\n\\t\\t\\t\\t\\tborder-right: 1px solid var(--ck-color-base-border);\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t& > .ck-button:nth-last-child(2) {\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tborder-right: 1px solid var(--ck-color-base-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-link-actions{display:flex;flex-direction:row;flex-wrap:nowrap}.ck.ck-link-actions .ck-link-actions__preview{display:inline-block}.ck.ck-link-actions .ck-link-actions__preview .ck-button__label{overflow:hidden}@media screen and (max-width:600px){.ck.ck-link-actions{flex-wrap:wrap}.ck.ck-link-actions .ck-link-actions__preview{flex-basis:100%}.ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){flex-basis:50%}}.ck.ck-link-actions .ck-button.ck-link-actions__preview{padding-left:0;padding-right:0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{padding:0 var(--ck-spacing-medium);color:var(--ck-color-link-default);text-overflow:ellipsis;cursor:pointer;max-width:var(--ck-input-text-width);min-width:3em;text-align:center}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label:hover{text-decoration:underline}.ck.ck-link-actions .ck-button.ck-link-actions__preview,.ck.ck-link-actions .ck-button.ck-link-actions__preview:active,.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus,.ck.ck-link-actions .ck-button.ck-link-actions__preview:hover{background:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:active{box-shadow:none}.ck.ck-link-actions .ck-button.ck-link-actions__preview:focus .ck-button__label{text-decoration:underline}[dir=ltr] .ck.ck-link-actions .ck-button:not(:first-child),[dir=rtl] .ck.ck-link-actions .ck-button:not(:last-child){margin-left:var(--ck-spacing-standard)}@media screen and (max-width:600px){.ck.ck-link-actions .ck-button.ck-link-actions__preview{margin:var(--ck-spacing-standard) var(--ck-spacing-standard) 0}.ck.ck-link-actions .ck-button.ck-link-actions__preview .ck-button__label{min-width:0;max-width:100%}[dir=ltr] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview),[dir=rtl] .ck.ck-link-actions .ck-button:not(.ck-link-actions__preview){margin-left:0}}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-link/theme/linkactions.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-link/linkactions.css\"],names:[],mappings:\"AAOA,oBACC,YAAa,CACb,kBAAmB,CACnB,gBAqBD,CAnBC,8CACC,oBAKD,CAHC,gEACC,eACD,CCXD,oCDCD,oBAcE,cAUF,CARE,8CACC,eACD,CAEA,8DACC,cACD,CCrBD,CCKA,wDACC,cAAe,CACf,eAmCD,CAjCC,0EACC,kCAAmC,CACnC,kCAAmC,CACnC,sBAAuB,CACvB,cAAe,CAIf,oCAAqC,CACrC,aAAc,CACd,iBAKD,CAHC,gFACC,yBACD,CAGD,mPAIC,eACD,CAEA,+DACC,eACD,CAGC,gFACC,yBACD,CAWD,qHACC,sCACD,CDvDD,oCC2DC,wDACC,8DAMD,CAJC,0EACC,WAAY,CACZ,cACD,CAGD,gJAME,aAEF,CD1ED\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\";\\n\\n.ck.ck-link-actions {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tflex-wrap: nowrap;\\n\\n\\t& .ck-link-actions__preview {\\n\\t\\tdisplay: inline-block;\\n\\n\\t\\t& .ck-button__label {\\n\\t\\t\\toverflow: hidden;\\n\\t\\t}\\n\\t}\\n\\n\\t@mixin ck-media-phone {\\n\\t\\tflex-wrap: wrap;\\n\\n\\t\\t& .ck-link-actions__preview {\\n\\t\\t\\tflex-basis: 100%;\\n\\t\\t}\\n\\n\\t\\t& .ck-button:not(.ck-link-actions__preview) {\\n\\t\\t\\tflex-basis: 50%;\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@define-mixin ck-media-phone {\\n\\t@media screen and (max-width: 600px) {\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/components/tooltip/mixins/_tooltip.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_unselectable.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n@import \"../mixins/_focus.css\";\\n@import \"../mixins/_shadow.css\";\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_rwd.css\";\\n\\n.ck.ck-link-actions {\\n\\t& .ck-button.ck-link-actions__preview {\\n\\t\\tpadding-left: 0;\\n\\t\\tpadding-right: 0;\\n\\n\\t\\t& .ck-button__label {\\n\\t\\t\\tpadding: 0 var(--ck-spacing-medium);\\n\\t\\t\\tcolor: var(--ck-color-link-default);\\n\\t\\t\\ttext-overflow: ellipsis;\\n\\t\\t\\tcursor: pointer;\\n\\n\\t\\t\\t/* Match the box model of the link editor form\\'s input so the balloon\\n\\t\\t\\tdoes not change width when moving between actions and the form. */\\n\\t\\t\\tmax-width: var(--ck-input-text-width);\\n\\t\\t\\tmin-width: 3em;\\n\\t\\t\\ttext-align: center;\\n\\n\\t\\t\\t&:hover {\\n\\t\\t\\t\\ttext-decoration: underline;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&,\\n\\t\\t&:hover,\\n\\t\\t&:focus,\\n\\t\\t&:active {\\n\\t\\t\\tbackground: none;\\n\\t\\t}\\n\\n\\t\\t&:active {\\n\\t\\t\\tbox-shadow: none;\\n\\t\\t}\\n\\n\\t\\t&:focus {\\n\\t\\t\\t& .ck-button__label {\\n\\t\\t\\t\\ttext-decoration: underline;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t@mixin ck-dir ltr {\\n\\t\\t& .ck-button:not(:first-child) {\\n\\t\\t\\tmargin-left: var(--ck-spacing-standard);\\n\\t\\t}\\n\\t}\\n\\n\\t@mixin ck-dir rtl {\\n\\t\\t& .ck-button:not(:last-child) {\\n\\t\\t\\tmargin-left: var(--ck-spacing-standard);\\n\\t\\t}\\n\\t}\\n\\n\\t@mixin ck-media-phone {\\n\\t\\t& .ck-button.ck-link-actions__preview {\\n\\t\\t\\tmargin: var(--ck-spacing-standard) var(--ck-spacing-standard) 0;\\n\\n\\t\\t\\t& .ck-button__label {\\n\\t\\t\\t\\tmin-width: 0;\\n\\t\\t\\t\\tmax-width: 100%;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t& .ck-button:not(.ck-link-actions__preview) {\\n\\t\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t\\tmargin-left: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t\\tmargin-left: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-splitbutton{font-size:inherit}.ck.ck-splitbutton .ck-splitbutton__action:focus{z-index:calc(var(--ck-z-default) + 1)}.ck.ck-splitbutton.ck-splitbutton_open>.ck-button .ck-tooltip{display:none}:root{--ck-color-split-button-hover-background:#ebebeb;--ck-color-split-button-hover-border:#b3b3b3}[dir=ltr] .ck.ck-splitbutton>.ck-splitbutton__action{border-top-right-radius:unset;border-bottom-right-radius:unset}[dir=rtl] .ck.ck-splitbutton>.ck-splitbutton__action{border-top-left-radius:unset;border-bottom-left-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow{min-width:unset}[dir=ltr] .ck.ck-splitbutton>.ck-splitbutton__arrow{border-radius:0}.ck-rounded-corners [dir=ltr] .ck.ck-splitbutton>.ck-splitbutton__arrow,[dir=ltr] .ck.ck-splitbutton>.ck-splitbutton__arrow.ck-rounded-corners{border-radius:var(--ck-border-radius);border-top-left-radius:unset;border-bottom-left-radius:unset}[dir=rtl] .ck.ck-splitbutton>.ck-splitbutton__arrow{border-top-right-radius:unset;border-bottom-right-radius:unset}.ck.ck-splitbutton>.ck-splitbutton__arrow svg{width:var(--ck-dropdown-arrow-size)}.ck.ck-splitbutton.ck-splitbutton_open>.ck-button:not(.ck-on):not(.ck-disabled):not(:hover),.ck.ck-splitbutton:hover>.ck-button:not(.ck-on):not(.ck-disabled):not(:hover){background:var(--ck-color-split-button-hover-background)}[dir=ltr] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled),[dir=ltr] .ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled){border-left-color:var(--ck-color-split-button-hover-border)}[dir=rtl] .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow:not(.ck-disabled),[dir=rtl] .ck.ck-splitbutton:hover>.ck-splitbutton__arrow:not(.ck-disabled){border-right-color:var(--ck-color-split-button-hover-border)}.ck.ck-splitbutton.ck-splitbutton_open{border-radius:0}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__action,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners>.ck-splitbutton__action{border-bottom-left-radius:0}.ck-rounded-corners .ck.ck-splitbutton.ck-splitbutton_open>.ck-splitbutton__arrow,.ck.ck-splitbutton.ck-splitbutton_open.ck-rounded-corners>.ck-splitbutton__arrow{border-bottom-right-radius:0}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/dropdown/splitbutton.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/tooltip/mixins/_tooltip.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/dropdown/splitbutton.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAOA,mBAEC,iBAUD,CARC,iDACC,qCACD,CC0BA,8DACC,YACD,CClCD,MACC,gDAAyD,CACzD,4CACD,CAMC,qDAGE,6BAA8B,CAC9B,gCAQF,CAZA,qDASE,4BAA6B,CAC7B,+BAEF,CAEA,0CAGC,eAmBD,CAtBA,oDCnBA,eDyCA,CAtBA,+ICfC,qCAAsC,CDuBpC,4BAA6B,CAC7B,+BAaH,CAtBA,oDAeE,6BAA8B,CAC9B,gCAMF,CAHC,8CACC,mCACD,CASA,0KACC,wDACD,CAGC,sKACC,2DACD,CAIA,sKACC,4DACD,CAMF,uCCpEA,eD8EA,CAVA,qHChEC,qCD0ED,CARE,qKACC,2BACD,CAEA,mKACC,4BACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../tooltip/mixins/_tooltip.css\";\\n\\n.ck.ck-splitbutton {\\n\\t/* Enable font size inheritance, which allows fluid UI scaling. */\\n\\tfont-size: inherit;\\n\\n\\t& .ck-splitbutton__action:focus {\\n\\t\\tz-index: calc(var(--ck-z-default) + 1);\\n\\t}\\n\\n\\t/* Disable tooltips for the buttons when the button is \"open\" */\\n\\t&.ck-splitbutton_open > .ck-button {\\n\\t\\t@mixin ck-tooltip_disabled;\\n\\t}\\n}\\n\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Enables the tooltip, which is the tooltip is in DOM but\\n * not yet displayed.\\n */\\n@define-mixin ck-tooltip_enabled {\\n\\t& .ck-tooltip {\\n\\t\\tdisplay: block;\\n\\n\\t\\t/*\\n\\t\\t * Don't display tooltips in devices which don't support :hover.\\n\\t\\t * In fact, it's all about iOS, which forces user to click UI elements twice to execute\\n\\t\\t * the primary action, when tooltips are enabled.\\n\\t\\t *\\n\\t\\t * Q: OK, but why not the following query?\\n\\t\\t *\\n\\t\\t * @media (hover) {\\n\\t\\t * display: block;\\n\\t\\t * }\\n\\t\\t *\\n\\t\\t * A: Because FF does not support it and it would completely disable tooltips\\n\\t\\t * in that browser.\\n\\t\\t *\\n\\t\\t * More in https://github.com/ckeditor/ckeditor5/issues/920.\\n\\t\\t */\\n\\t\\t@media (hover:none) {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n/**\\n * Disables the tooltip making it disappear from DOM.\\n */\\n@define-mixin ck-tooltip_disabled {\\n\\t& .ck-tooltip {\\n\\t\\tdisplay: none;\\n\\t}\\n}\\n\\n/**\\n * Shows the tooltip, which is already in DOM.\\n * Requires `ck-tooltip_enabled` first.\\n */\\n@define-mixin ck-tooltip_visible {\\n\\t& .ck-tooltip {\\n\\t\\tvisibility: visible;\\n\\t\\topacity: 1;\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../../../mixins/_rounded.css\";\\n\\n:root {\\n\\t--ck-color-split-button-hover-background: hsl(0, 0%, 92%);\\n\\t--ck-color-split-button-hover-border: hsl(0, 0%, 70%);\\n}\\n\\n.ck.ck-splitbutton {\\n\\t/*\\n\\t * Note: ck-rounded and ck-dir mixins don\\'t go together (because they both use @nest).\\n\\t */\\n\\t& > .ck-splitbutton__action {\\n\\t\\t@nest [dir=\"ltr\"] & {\\n\\t\\t\\t/* Don\\'t round the action button on the right side */\\n\\t\\t\\tborder-top-right-radius: unset;\\n\\t\\t\\tborder-bottom-right-radius: unset;\\n\\t\\t}\\n\\n\\t\\t@nest [dir=\"rtl\"] & {\\n\\t\\t\\t/* Don\\'t round the action button on the left side */\\n\\t\\t\\tborder-top-left-radius: unset;\\n\\t\\t\\tborder-bottom-left-radius: unset;\\n\\t\\t}\\n\\t}\\n\\n\\t& > .ck-splitbutton__arrow {\\n\\t\\t/* It\\'s a text-less button and since the icon is positioned absolutely in such situation,\\n\\t\\tit must get some arbitrary min-width. */\\n\\t\\tmin-width: unset;\\n\\n\\t\\t@nest [dir=\"ltr\"] & {\\n\\t\\t\\t/* Don\\'t round the arrow button on the left side */\\n\\t\\t\\t@mixin ck-rounded-corners {\\n\\t\\t\\t\\tborder-top-left-radius: unset;\\n\\t\\t\\t\\tborder-bottom-left-radius: unset;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t@nest [dir=\"rtl\"] & {\\n\\t\\t\\t/* Don\\'t round the arrow button on the right side */\\n\\t\\t\\tborder-top-right-radius: unset;\\n\\t\\t\\tborder-bottom-right-radius: unset;\\n\\t\\t}\\n\\n\\t\\t& svg {\\n\\t\\t\\twidth: var(--ck-dropdown-arrow-size);\\n\\t\\t}\\n\\t}\\n\\n\\t/* When the split button is \"open\" (the arrow is on) or being hovered, it should get some styling\\n\\tas a whole. The background of both buttons should stand out and there should be a visual\\n\\tseparation between both buttons. */\\n\\t&.ck-splitbutton_open,\\n\\t&:hover {\\n\\t\\t/* When the split button hovered as a whole, not as individual buttons. */\\n\\t\\t& > .ck-button:not(.ck-on):not(.ck-disabled):not(:hover) {\\n\\t\\t\\tbackground: var(--ck-color-split-button-hover-background);\\n\\t\\t}\\n\\n\\t\\t@nest [dir=\"ltr\"] & {\\n\\t\\t\\t& > .ck-splitbutton__arrow:not(.ck-disabled) {\\n\\t\\t\\t\\tborder-left-color: var(--ck-color-split-button-hover-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t@nest [dir=\"rtl\"] & {\\n\\t\\t\\t& > .ck-splitbutton__arrow:not(.ck-disabled) {\\n\\t\\t\\t\\tborder-right-color: var(--ck-color-split-button-hover-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t/* Don\\'t round the bottom left and right corners of the buttons when \"open\"\\n\\thttps://github.com/ckeditor/ckeditor5/issues/816 */\\n\\t&.ck-splitbutton_open {\\n\\t\\t@mixin ck-rounded-corners {\\n\\t\\t\\t& > .ck-splitbutton__action {\\n\\t\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& > .ck-splitbutton__arrow {\\n\\t\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-list-styles-dropdown>.ck-dropdown__panel>.ck-toolbar>.ck-toolbar__items{display:grid}:root{--ck-list-style-button-size:44px}.ck.ck-list-styles-dropdown>.ck-dropdown__panel>.ck-toolbar{background:none;padding:0}.ck.ck-list-styles-dropdown>.ck-dropdown__panel>.ck-toolbar>.ck-toolbar__items{grid-template-columns:repeat(3,auto);row-gap:var(--ck-spacing-medium);column-gap:var(--ck-spacing-medium);padding:var(--ck-spacing-medium)}.ck.ck-list-styles-dropdown>.ck-dropdown__panel>.ck-toolbar>.ck-toolbar__items .ck-button{width:var(--ck-list-style-button-size);height:var(--ck-list-style-button-size);padding:0;margin:0;box-sizing:content-box}.ck.ck-list-styles-dropdown>.ck-dropdown__panel>.ck-toolbar>.ck-toolbar__items .ck-button .ck-icon{width:var(--ck-list-style-button-size);height:var(--ck-list-style-button-size)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-list/theme/liststyles.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-list/liststyles.css\"],names:[],mappings:\"AAKA,+EAKC,YACD,CCNA,MACC,gCACD,CAEA,4DACC,eAAgB,CAChB,SAiCD,CA/BC,+EACC,oCAAwC,CACxC,gCAAiC,CACjC,mCAAoC,CACpC,gCA0BD,CAxBC,0FAEC,sCAAuC,CACvC,uCAAwC,CACxC,SAAU,CAMV,QAAS,CAOT,sBAMD,CAJC,mGACC,sCAAuC,CACvC,uCACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-list-styles-dropdown > .ck-dropdown__panel > .ck-toolbar > .ck-toolbar__items {\\n\\t/*\\n\\t * Use the benefits of the toolbar (e.g. out-of-the-box keyboard navigation) but make it look\\n\\t * like a panel with thumbnails (previews).\\n\\t */\\n\\tdisplay: grid;\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-list-style-button-size: 44px;\\n}\\n\\n.ck.ck-list-styles-dropdown > .ck-dropdown__panel > .ck-toolbar {\\n\\tbackground: none;\\n\\tpadding: 0;\\n\\n\\t& > .ck-toolbar__items {\\n\\t\\tgrid-template-columns: repeat( 3, auto );\\n\\t\\trow-gap: var(--ck-spacing-medium);\\n\\t\\tcolumn-gap: var(--ck-spacing-medium);\\n\\t\\tpadding: var(--ck-spacing-medium);\\n\\n\\t\\t& .ck-button {\\n\\t\\t\\t/* Make the button look like a thumbnail (the icon \"takes it all\"). */\\n\\t\\t\\twidth: var(--ck-list-style-button-size);\\n\\t\\t\\theight: var(--ck-list-style-button-size);\\n\\t\\t\\tpadding: 0;\\n\\n\\t\\t\\t/*\\n\\t\\t\\t * Buttons are aligned by the grid so disable default button margins to not collide with the\\n\\t\\t\\t * gaps in the grid.\\n\\t\\t\\t */\\n\\t\\t\\tmargin: 0;\\n\\n\\t\\t\\t/*\\n\\t\\t\\t * Make sure the button border (which is displayed on focus, BTW) does not steal pixels\\n\\t\\t\\t * from the button dimensions and, as a result, decrease the size of the icon\\n\\t\\t\\t * (which becomes blurry as it scales down).\\n\\t\\t\\t */\\n\\t\\t\\tbox-sizing: content-box;\\n\\n\\t\\t\\t& .ck-icon {\\n\\t\\t\\t\\twidth: var(--ck-list-style-button-size);\\n\\t\\t\\t\\theight: var(--ck-list-style-button-size);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\":root{--ck-color-table-focused-cell-background:rgba(158,207,250,0.3)}.ck-widget.table td.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table td.ck-editor__nested-editable:focus,.ck-widget.table th.ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck-widget.table th.ck-editor__nested-editable:focus{background:var(--ck-color-table-focused-cell-background);border-style:none;outline:1px solid var(--ck-color-focus-border);outline-offset:-1px}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableediting.css\"],names:[],mappings:\"AAKA,MACC,8DACD,CAKE,8QAGC,wDAAyD,CAKzD,iBAAkB,CAClB,8CAA+C,CAC/C,mBACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-color-table-focused-cell-background: hsla(208, 90%, 80%, .3);\\n}\\n\\n.ck-widget.table {\\n\\t& td,\\n\\t& th {\\n\\t\\t&.ck-editor__nested-editable.ck-editor__nested-editable_focused,\\n\\t\\t&.ck-editor__nested-editable:focus {\\n\\t\\t\\t/* A very slight background to highlight the focused cell */\\n\\t\\t\\tbackground: var(--ck-color-table-focused-cell-background);\\n\\n\\t\\t\\t/* Fixes the problem where surrounding cells cover the focused cell's border.\\n\\t\\t\\tIt does not fix the problem in all places but the UX is improved.\\n\\t\\t\\tSee https://github.com/ckeditor/ckeditor5-table/issues/29. */\\n\\t\\t\\tborder-style: none;\\n\\t\\t\\toutline: 1px solid var(--ck-color-focus-border);\\n\\t\\t\\toutline-offset: -1px; /* progressive enhancement - no IE support */\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck .ck-insert-table-dropdown__grid{display:flex;flex-direction:row;flex-wrap:wrap}:root{--ck-insert-table-dropdown-padding:10px;--ck-insert-table-dropdown-box-height:11px;--ck-insert-table-dropdown-box-width:12px;--ck-insert-table-dropdown-box-margin:1px}.ck .ck-insert-table-dropdown__grid{width:calc(var(--ck-insert-table-dropdown-box-width)*10 + var(--ck-insert-table-dropdown-box-margin)*20 + var(--ck-insert-table-dropdown-padding)*2);padding:var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0}.ck .ck-insert-table-dropdown__label{text-align:center}.ck .ck-insert-table-dropdown-grid-box{width:var(--ck-insert-table-dropdown-box-width);height:var(--ck-insert-table-dropdown-box-height);margin:var(--ck-insert-table-dropdown-box-margin);border:1px solid var(--ck-color-base-border);border-radius:1px}.ck .ck-insert-table-dropdown-grid-box.ck-on{border-color:var(--ck-color-focus-border);background:var(--ck-color-focus-outer-shadow)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-table/theme/inserttable.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/inserttable.css\"],names:[],mappings:\"AAKA,oCACC,YAAa,CACb,kBAAmB,CACnB,cACD,CCJA,MACC,uCAAwC,CACxC,0CAA2C,CAC3C,yCAA0C,CAC1C,yCACD,CAEA,oCAEC,oJAA2J,CAC3J,yFACD,CAEA,qCACC,iBACD,CAEA,uCACC,+CAAgD,CAChD,iDAAkD,CAClD,iDAAkD,CAClD,4CAA6C,CAC7C,iBAMD,CAJC,6CACC,yCAA0C,CAC1C,6CACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck .ck-insert-table-dropdown__grid {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tflex-wrap: wrap;\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-insert-table-dropdown-padding: 10px;\\n\\t--ck-insert-table-dropdown-box-height: 11px;\\n\\t--ck-insert-table-dropdown-box-width: 12px;\\n\\t--ck-insert-table-dropdown-box-margin: 1px;\\n}\\n\\n.ck .ck-insert-table-dropdown__grid {\\n\\t/* The width of a container should match 10 items in a row so there will be a 10x10 grid. */\\n\\twidth: calc(var(--ck-insert-table-dropdown-box-width) * 10 + var(--ck-insert-table-dropdown-box-margin) * 20 + var(--ck-insert-table-dropdown-padding) * 2);\\n\\tpadding: var(--ck-insert-table-dropdown-padding) var(--ck-insert-table-dropdown-padding) 0;\\n}\\n\\n.ck .ck-insert-table-dropdown__label {\\n\\ttext-align: center;\\n}\\n\\n.ck .ck-insert-table-dropdown-grid-box {\\n\\twidth: var(--ck-insert-table-dropdown-box-width);\\n\\theight: var(--ck-insert-table-dropdown-box-height);\\n\\tmargin: var(--ck-insert-table-dropdown-box-margin);\\n\\tborder: 1px solid var(--ck-color-base-border);\\n\\tborder-radius: 1px;\\n\\n\\t&.ck-on {\\n\\t\\tborder-color: var(--ck-color-focus-border);\\n\\t\\tbackground: var(--ck-color-focus-outer-shadow);\\n\\t}\\n}\\n\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,':root{--ck-table-selected-cell-background:rgba(158,207,250,0.3)}.ck.ck-editor__editable .table table td.ck-editor__editable_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected{position:relative;caret-color:transparent;outline:unset;box-shadow:unset}.ck.ck-editor__editable .table table td.ck-editor__editable_selected:after,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:after{content:\"\";pointer-events:none;background-color:var(--ck-table-selected-cell-background);position:absolute;top:0;left:0;right:0;bottom:0}.ck.ck-editor__editable .table table td.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table td.ck-editor__editable_selected:focus,.ck.ck-editor__editable .table table th.ck-editor__editable_selected ::selection,.ck.ck-editor__editable .table table th.ck-editor__editable_selected:focus{background-color:transparent}.ck.ck-editor__editable .table table td.ck-editor__editable_selected .ck-widget_selected,.ck.ck-editor__editable .table table th.ck-editor__editable_selected .ck-widget_selected{outline:unset}',\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableselection.css\"],names:[],mappings:\"AAKA,MACC,yDACD,CAGC,0IAEC,iBAAkB,CAClB,uBAAwB,CACxB,aAAc,CACd,gBAsBD,CAnBC,sJACC,UAAW,CACX,mBAAoB,CACpB,yDAA0D,CAC1D,iBAAkB,CAClB,KAAM,CACN,MAAO,CACP,OAAQ,CACR,QACD,CAEA,wTAEC,4BACD,CAEA,kLACC,aACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-table-selected-cell-background: hsla(208, 90%, 80%, .3);\\n}\\n\\n.ck.ck-editor__editable .table table {\\n\\t& td.ck-editor__editable_selected,\\n\\t& th.ck-editor__editable_selected {\\n\\t\\tposition: relative;\\n\\t\\tcaret-color: transparent;\\n\\t\\toutline: unset;\\n\\t\\tbox-shadow: unset;\\n\\n\\t\\t/* https://github.com/ckeditor/ckeditor5/issues/6446 */\\n\\t\\t&:after {\\n\\t\\t\\tcontent: '';\\n\\t\\t\\tpointer-events: none;\\n\\t\\t\\tbackground-color: var(--ck-table-selected-cell-background);\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 0;\\n\\t\\t\\tleft: 0;\\n\\t\\t\\tright: 0;\\n\\t\\t\\tbottom: 0;\\n\\t\\t}\\n\\n\\t\\t& ::selection,\\n\\t\\t&:focus {\\n\\t\\t\\tbackground-color: transparent;\\n\\t\\t}\\n\\n\\t\\t& .ck-widget_selected {\\n\\t\\t\\toutline: unset;\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,'.ck .ck-widget .ck-widget__type-around__button{display:block;position:absolute;overflow:hidden;z-index:var(--ck-z-default)}.ck .ck-widget .ck-widget__type-around__button svg{position:absolute;top:50%;left:50%;z-index:calc(var(--ck-z-default) + 2)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_before{top:calc(var(--ck-widget-outline-thickness)*-0.5);left:min(10%,30px);transform:translateY(-50%)}.ck .ck-widget .ck-widget__type-around__button.ck-widget__type-around__button_after{bottom:calc(var(--ck-widget-outline-thickness)*-0.5);right:min(10%,30px);transform:translateY(50%)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{content:\"\";display:block;position:absolute;top:1px;left:1px;z-index:calc(var(--ck-z-default) + 1)}.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__fake-caret{display:none;position:absolute;left:0;right:0}.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__fake-caret{left:calc(var(--ck-widget-outline-thickness)*-1);right:calc(var(--ck-widget-outline-thickness)*-1)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__fake-caret{top:calc(var(--ck-widget-outline-thickness)*-1 - 1px);display:block}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__fake-caret{bottom:calc(var(--ck-widget-outline-thickness)*-1 - 1px);display:block}.ck.ck-editor__editable.ck-read-only .ck-widget__type-around,.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around,.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around{display:none}:root{--ck-widget-type-around-button-size:20px;--ck-color-widget-type-around-button-active:var(--ck-color-focus-border);--ck-color-widget-type-around-button-hover:var(--ck-color-widget-hover-border);--ck-color-widget-type-around-button-blurred-editable:var(--ck-color-widget-blurred-border);--ck-color-widget-type-around-button-radar-start-alpha:0;--ck-color-widget-type-around-button-radar-end-alpha:.3;--ck-color-widget-type-around-button-icon:var(--ck-color-base-background)}.ck .ck-widget .ck-widget__type-around__button{width:var(--ck-widget-type-around-button-size);height:var(--ck-widget-type-around-button-size);background:var(--ck-color-widget-type-around-button);border-radius:100px;transition:opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);opacity:0;pointer-events:none}.ck .ck-widget .ck-widget__type-around__button svg{width:10px;height:8px;transform:translate(-50%,-50%);transition:transform .5s ease;margin-top:1px}.ck .ck-widget .ck-widget__type-around__button svg *{stroke-dasharray:10;stroke-dashoffset:0;fill:none;stroke:var(--ck-color-widget-type-around-button-icon);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round}.ck .ck-widget .ck-widget__type-around__button svg line{stroke-dasharray:7}.ck .ck-widget .ck-widget__type-around__button:hover{animation:ck-widget-type-around-button-sonar 1s ease infinite}.ck .ck-widget .ck-widget__type-around__button:hover svg polyline{animation:ck-widget-type-around-arrow-dash 2s linear}.ck .ck-widget .ck-widget__type-around__button:hover svg line{animation:ck-widget-type-around-arrow-tip-dash 2s linear}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:1;pointer-events:auto}.ck .ck-widget:not(.ck-widget_selected)>.ck-widget__type-around>.ck-widget__type-around__button{background:var(--ck-color-widget-type-around-button-hover)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover{background:var(--ck-color-widget-type-around-button-active)}.ck .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:after,.ck .ck-widget>.ck-widget__type-around>.ck-widget__type-around__button:hover:after{width:calc(var(--ck-widget-type-around-button-size) - 2px);height:calc(var(--ck-widget-type-around-button-size) - 2px);border-radius:100px;background:linear-gradient(135deg,hsla(0,0%,100%,0),hsla(0,0%,100%,.3))}.ck .ck-widget.ck-widget_with-selection-handle>.ck-widget__type-around>.ck-widget__type-around__button_before{margin-left:20px}.ck .ck-widget .ck-widget__type-around__fake-caret{pointer-events:none;height:1px;animation:ck-widget-type-around-fake-caret-pulse 1s linear infinite normal forwards;outline:1px solid hsla(0,0%,100%,.5);background:var(--ck-color-base-text)}.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_after,.ck .ck-widget.ck-widget_selected.ck-widget_type-around_show-fake-caret_before{outline-color:transparent}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected:hover,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after>.ck-widget__type-around>.ck-widget__type-around__button,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected:hover>.ck-widget__selection-handle,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_with-selection-handle.ck-widget_selected>.ck-widget__selection-handle{opacity:0}.ck .ck-widget.ck-widget_type-around_show-fake-caret_after.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer,.ck .ck-widget.ck-widget_type-around_show-fake-caret_before.ck-widget_selected.ck-widget_with-resizer>.ck-widget__resizer{opacity:0}.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button,.ck-editor__nested-editable.ck-editor__editable_selected .ck-widget:hover>.ck-widget__type-around>.ck-widget__type-around__button{opacity:0;pointer-events:none}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover){background:var(--ck-color-widget-type-around-button-blurred-editable)}.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected>.ck-widget__type-around>.ck-widget__type-around__button:not(:hover) svg *{stroke:#999}@keyframes ck-widget-type-around-arrow-dash{0%{stroke-dashoffset:10}20%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-arrow-tip-dash{0%,20%{stroke-dashoffset:7}40%,to{stroke-dashoffset:0}}@keyframes ck-widget-type-around-button-sonar{0%{box-shadow:0 0 0 0 hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}50%{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-end-alpha))}to{box-shadow:0 0 0 5px hsla(var(--ck-color-focus-border-coordinates),var(--ck-color-widget-type-around-button-radar-start-alpha))}}@keyframes ck-widget-type-around-fake-caret-pulse{0%{opacity:1}49%{opacity:1}50%{opacity:0}99%{opacity:0}to{opacity:1}}',\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widgettypearound.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widgettypearound.css\"],names:[],mappings:\"AASC,+CACC,aAAc,CACd,iBAAkB,CAClB,eAAgB,CAChB,2BAwBD,CAtBC,mDACC,iBAAkB,CAClB,OAAQ,CACR,QAAS,CACT,qCACD,CAEA,qFAEC,iDAAoD,CACpD,kBAAoB,CAEpB,0BACD,CAEA,oFAEC,oDAAuD,CACvD,mBAAqB,CAErB,yBACD,CAUA,mLACC,UAAW,CACX,aAAc,CACd,iBAAkB,CAClB,OAAQ,CACR,QAAS,CACT,qCACD,CAMD,2EACC,YAAa,CACb,iBAAkB,CAClB,MAAO,CACP,OACD,CAOA,iFACC,gDAAqD,CACrD,iDACD,CAKA,wHACC,qDAA0D,CAC1D,aACD,CAKA,uHACC,wDAA6D,CAC7D,aACD,CAoBD,mOACC,YACD,CC3GA,MACC,wCAAyC,CACzC,wEAAyE,CACzE,8EAA+E,CAC/E,2FAA4F,CAC5F,wDAAyD,CACzD,uDAAwD,CACxD,yEACD,CAgBC,+CACC,8CAA+C,CAC/C,+CAAgD,CAChD,oDAAqD,CACrD,mBAAoB,CACpB,uMAAyM,CAb1M,SAAU,CACV,mBA0DA,CA1CC,mDACC,UAAW,CACX,UAAW,CACX,8BAA+B,CAC/B,6BAA8B,CAC9B,cAgBD,CAdC,qDACC,mBAAoB,CACpB,mBAAoB,CAEpB,SAAU,CACV,qDAAsD,CACtD,kBAAmB,CACnB,oBAAqB,CACrB,qBACD,CAEA,wDACC,kBACD,CAGD,qDAIC,6DAcD,CARE,kEACC,oDACD,CAEA,8DACC,wDACD,CAUF,uKAvED,SAAU,CACV,mBAwEC,CAOD,gGACC,0DACD,CAOA,uKAEC,2DAQD,CANC,mLACC,0DAA2D,CAC3D,2DAA4D,CAC5D,mBAAoB,CACpB,uEACD,CAOD,8GACC,gBACD,CAKA,mDACC,mBAAoB,CACpB,UAAW,CACX,mFAAoF,CAMpF,oCAAwC,CACxC,oCACD,CAOC,6JAEC,yBACD,CAUA,yKACC,iDACD,CAMA,uOAlJD,SAAU,CACV,mBAmJC,CASE,0jBACC,SACD,CASF,mPACC,SACD,CAcC,iRAxLF,SAAU,CACV,mBAyLE,CAQH,kIACC,qEAKD,CAHC,wIACC,WACD,CAGD,4CACC,GACC,oBACD,CACA,OACC,mBACD,CACD,CAEA,gDACC,OACC,mBACD,CACA,OACC,mBACD,CACD,CAEA,8CACC,GACC,6HACD,CACA,IACC,6HACD,CACA,GACC,+HACD,CACD,CAEA,kDACC,GACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,IACC,SACD,CACA,GACC,SACD,CACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck .ck-widget {\\n\\t/*\\n\\t * Styles of the type around buttons\\n\\t */\\n\\t& .ck-widget__type-around__button {\\n\\t\\tdisplay: block;\\n\\t\\tposition: absolute;\\n\\t\\toverflow: hidden;\\n\\t\\tz-index: var(--ck-z-default);\\n\\n\\t\\t& svg {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 50%;\\n\\t\\t\\tleft: 50%;\\n\\t\\t\\tz-index: calc(var(--ck-z-default) + 2);\\n\\t\\t}\\n\\n\\t\\t&.ck-widget__type-around__button_before {\\n\\t\\t\\t/* Place it in the middle of the outline */\\n\\t\\t\\ttop: calc(-0.5 * var(--ck-widget-outline-thickness));\\n\\t\\t\\tleft: min(10%, 30px);\\n\\n\\t\\t\\ttransform: translateY(-50%);\\n\\t\\t}\\n\\n\\t\\t&.ck-widget__type-around__button_after {\\n\\t\\t\\t/* Place it in the middle of the outline */\\n\\t\\t\\tbottom: calc(-0.5 * var(--ck-widget-outline-thickness));\\n\\t\\t\\tright: min(10%, 30px);\\n\\n\\t\\t\\ttransform: translateY(50%);\\n\\t\\t}\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the buttons when:\\n\\t * - the widget is selected,\\n\\t * - or the button is being hovered (regardless of the widget state).\\n\\t */\\n\\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\\n\\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\\n\\t\\t&::after {\\n\\t\\t\\tcontent: \"\";\\n\\t\\t\\tdisplay: block;\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\ttop: 1px;\\n\\t\\t\\tleft: 1px;\\n\\t\\t\\tz-index: calc(var(--ck-z-default) + 1);\\n\\t\\t}\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the horizontal \"fake caret\" which is displayed when the user navigates using the keyboard.\\n\\t */\\n\\t& > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\\n\\t\\tdisplay: none;\\n\\t\\tposition: absolute;\\n\\t\\tleft: 0;\\n\\t\\tright: 0;\\n\\t}\\n\\n\\t/*\\n\\t * When the widget is hovered the \"fake caret\" would normally be narrower than the\\n\\t * extra outline displayed around the widget. Let\\'s extend the \"fake caret\" to match\\n\\t * the full width of the widget.\\n\\t */\\n\\t&:hover > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\\n\\t\\tleft: calc( -1 * var(--ck-widget-outline-thickness) );\\n\\t\\tright: calc( -1 * var(--ck-widget-outline-thickness) );\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the horizontal \"fake caret\" when it should be displayed before the widget (backward keyboard navigation).\\n\\t */\\n\\t&.ck-widget_type-around_show-fake-caret_before > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\\n\\t\\ttop: calc( -1 * var(--ck-widget-outline-thickness) - 1px );\\n\\t\\tdisplay: block;\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the horizontal \"fake caret\" when it should be displayed after the widget (forward keyboard navigation).\\n\\t */\\n\\t&.ck-widget_type-around_show-fake-caret_after > .ck-widget__type-around > .ck-widget__type-around__fake-caret {\\n\\t\\tbottom: calc( -1 * var(--ck-widget-outline-thickness) - 1px );\\n\\t\\tdisplay: block;\\n\\t}\\n}\\n\\n/*\\n * Integration with the read-only mode of the editor.\\n */\\n.ck.ck-editor__editable.ck-read-only .ck-widget__type-around {\\n\\tdisplay: none;\\n}\\n\\n/*\\n * Integration with the restricted editing mode (feature) of the editor.\\n */\\n.ck.ck-editor__editable.ck-restricted-editing_mode_restricted .ck-widget__type-around {\\n\\tdisplay: none;\\n}\\n\\n/*\\n * Integration with the #isEnabled property of the WidgetTypeAround plugin.\\n */\\n.ck.ck-editor__editable.ck-widget__type-around_disabled .ck-widget__type-around {\\n\\tdisplay: none;\\n}\\n','/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-widget-type-around-button-size: 20px;\\n\\t--ck-color-widget-type-around-button-active: var(--ck-color-focus-border);\\n\\t--ck-color-widget-type-around-button-hover: var(--ck-color-widget-hover-border);\\n\\t--ck-color-widget-type-around-button-blurred-editable: var(--ck-color-widget-blurred-border);\\n\\t--ck-color-widget-type-around-button-radar-start-alpha: 0;\\n\\t--ck-color-widget-type-around-button-radar-end-alpha: .3;\\n\\t--ck-color-widget-type-around-button-icon: var(--ck-color-base-background);\\n}\\n\\n@define-mixin ck-widget-type-around-button-visible {\\n\\topacity: 1;\\n\\tpointer-events: auto;\\n}\\n\\n@define-mixin ck-widget-type-around-button-hidden {\\n\\topacity: 0;\\n\\tpointer-events: none;\\n}\\n\\n.ck .ck-widget {\\n\\t/*\\n\\t * Styles of the type around buttons\\n\\t */\\n\\t& .ck-widget__type-around__button {\\n\\t\\twidth: var(--ck-widget-type-around-button-size);\\n\\t\\theight: var(--ck-widget-type-around-button-size);\\n\\t\\tbackground: var(--ck-color-widget-type-around-button);\\n\\t\\tborder-radius: 100px;\\n\\t\\ttransition: opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve), background var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\\n\\n\\t\\t@mixin ck-widget-type-around-button-hidden;\\n\\n\\t\\t& svg {\\n\\t\\t\\twidth: 10px;\\n\\t\\t\\theight: 8px;\\n\\t\\t\\ttransform: translate(-50%,-50%);\\n\\t\\t\\ttransition: transform .5s ease;\\n\\t\\t\\tmargin-top: 1px;\\n\\n\\t\\t\\t& * {\\n\\t\\t\\t\\tstroke-dasharray: 10;\\n\\t\\t\\t\\tstroke-dashoffset: 0;\\n\\n\\t\\t\\t\\tfill: none;\\n\\t\\t\\t\\tstroke: var(--ck-color-widget-type-around-button-icon);\\n\\t\\t\\t\\tstroke-width: 1.5px;\\n\\t\\t\\t\\tstroke-linecap: round;\\n\\t\\t\\t\\tstroke-linejoin: round;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& line {\\n\\t\\t\\t\\tstroke-dasharray: 7;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&:hover {\\n\\t\\t\\t/*\\n\\t\\t\\t * Display the \"sonar\" around the button when hovered.\\n\\t\\t\\t */\\n\\t\\t\\tanimation: ck-widget-type-around-button-sonar 1s ease infinite;\\n\\n\\t\\t\\t/*\\n\\t\\t\\t * Animate active button\\'s icon.\\n\\t\\t\\t */\\n\\t\\t\\t& svg {\\n\\t\\t\\t\\t& polyline {\\n\\t\\t\\t\\t\\tanimation: ck-widget-type-around-arrow-dash 2s linear;\\n\\t\\t\\t\\t}\\n\\n\\t\\t\\t\\t& line {\\n\\t\\t\\t\\t\\tanimation: ck-widget-type-around-arrow-tip-dash 2s linear;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t/*\\n\\t * Show type around buttons when the widget gets selected or being hovered.\\n\\t */\\n\\t&.ck-widget_selected,\\n\\t&:hover {\\n\\t\\t& > .ck-widget__type-around > .ck-widget__type-around__button {\\n\\t\\t\\t@mixin ck-widget-type-around-button-visible;\\n\\t\\t}\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the buttons when the widget is NOT selected (but the buttons are visible\\n\\t * and still can be hovered).\\n\\t */\\n\\t&:not(.ck-widget_selected) > .ck-widget__type-around > .ck-widget__type-around__button {\\n\\t\\tbackground: var(--ck-color-widget-type-around-button-hover);\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the buttons when:\\n\\t * - the widget is selected,\\n\\t * - or the button is being hovered (regardless of the widget state).\\n\\t */\\n\\t&.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button,\\n\\t& > .ck-widget__type-around > .ck-widget__type-around__button:hover {\\n\\t\\tbackground: var(--ck-color-widget-type-around-button-active);\\n\\n\\t\\t&::after {\\n\\t\\t\\twidth: calc(var(--ck-widget-type-around-button-size) - 2px);\\n\\t\\t\\theight: calc(var(--ck-widget-type-around-button-size) - 2px);\\n\\t\\t\\tborder-radius: 100px;\\n\\t\\t\\tbackground: linear-gradient(135deg, hsla(0,0%,100%,0) 0%, hsla(0,0%,100%,.3) 100%);\\n\\t\\t}\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the \"before\" button when the widget has a selection handle. Because some space\\n\\t * is consumed by the handle, the button must be moved slightly to the right to let it breathe.\\n\\t */\\n\\t&.ck-widget_with-selection-handle > .ck-widget__type-around > .ck-widget__type-around__button_before {\\n\\t\\tmargin-left: 20px;\\n\\t}\\n\\n\\t/*\\n\\t * Styles for the horizontal \"fake caret\" which is displayed when the user navigates using the keyboard.\\n\\t */\\n\\t& .ck-widget__type-around__fake-caret {\\n\\t\\tpointer-events: none;\\n\\t\\theight: 1px;\\n\\t\\tanimation: ck-widget-type-around-fake-caret-pulse linear 1s infinite normal forwards;\\n\\n\\t\\t/*\\n\\t\\t * The semi-transparent-outline+background combo improves the contrast\\n\\t\\t * when the background underneath the fake caret is dark.\\n\\t\\t */\\n\\t\\toutline: solid 1px hsla(0, 0%, 100%, .5);\\n\\t\\tbackground: var(--ck-color-base-text);\\n\\t}\\n\\n\\t/*\\n\\t * Styles of the widget when the \"fake caret\" is blinking (e.g. upon keyboard navigation).\\n\\t * Despite the widget being physically selected in the model, its outline should disappear.\\n\\t */\\n\\t&.ck-widget_selected {\\n\\t\\t&.ck-widget_type-around_show-fake-caret_before,\\n\\t\\t&.ck-widget_type-around_show-fake-caret_after {\\n\\t\\t\\toutline-color: transparent;\\n\\t\\t}\\n\\t}\\n\\n\\t&.ck-widget_type-around_show-fake-caret_before,\\n\\t&.ck-widget_type-around_show-fake-caret_after {\\n\\t\\t/*\\n\\t\\t * When the \"fake caret\" is visible we simulate that the widget is not selected\\n\\t\\t * (despite being physically selected), so the outline color should be for the\\n\\t\\t * unselected widget.\\n\\t\\t */\\n\\t\\t&.ck-widget_selected:hover {\\n\\t\\t\\toutline-color: var(--ck-color-widget-hover-border);\\n\\t\\t}\\n\\n\\t\\t/*\\n\\t\\t * Styles of the type around buttons when the \"fake caret\" is blinking (e.g. upon keyboard navigation).\\n\\t\\t * In this state, the type around buttons would collide with the fake carets so they should disappear.\\n\\t\\t */\\n\\t\\t& > .ck-widget__type-around > .ck-widget__type-around__button {\\n\\t\\t\\t@mixin ck-widget-type-around-button-hidden;\\n\\t\\t}\\n\\n\\t\\t/*\\n\\t\\t * Fake horizontal caret integration with the selection handle. When the caret is visible, simply\\n\\t\\t * hide the handle because it intersects with the caret (and does not make much sense anyway).\\n\\t\\t */\\n\\t\\t&.ck-widget_with-selection-handle {\\n\\t\\t\\t&.ck-widget_selected,\\n\\t\\t\\t&.ck-widget_selected:hover {\\n\\t\\t\\t\\t& > .ck-widget__selection-handle {\\n\\t\\t\\t\\t\\topacity: 0\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t/*\\n\\t\\t * Fake horizontal caret integration with the resize UI. When the caret is visible, simply\\n\\t\\t * hide the resize UI because it creates too much noise. It can be visible when the user\\n\\t\\t * hovers the widget, though.\\n\\t\\t */\\n\\t\\t&.ck-widget_selected.ck-widget_with-resizer > .ck-widget__resizer {\\n\\t\\t\\topacity: 0\\n\\t\\t}\\n\\t}\\n}\\n\\n/*\\n * Hide type around buttons when the widget is selected as a child of a selected\\n * nested editable (e.g. mulit-cell table selection).\\n *\\n * See https://github.com/ckeditor/ckeditor5/issues/7263.\\n */\\n.ck-editor__nested-editable.ck-editor__editable_selected {\\n\\t& .ck-widget {\\n\\t\\t&.ck-widget_selected,\\n\\t\\t&:hover {\\n\\t\\t\\t& > .ck-widget__type-around > .ck-widget__type-around__button {\\n\\t\\t\\t\\t@mixin ck-widget-type-around-button-hidden;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n/*\\n * Styles for the buttons when the widget is selected but the user clicked outside of the editor (blurred the editor).\\n */\\n.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected > .ck-widget__type-around > .ck-widget__type-around__button:not(:hover) {\\n\\tbackground: var(--ck-color-widget-type-around-button-blurred-editable);\\n\\n\\t& svg * {\\n\\t\\tstroke: hsl(0,0%,60%);\\n\\t}\\n}\\n\\n@keyframes ck-widget-type-around-arrow-dash {\\n\\t0% {\\n\\t\\tstroke-dashoffset: 10;\\n\\t}\\n\\t20%, 100% {\\n\\t\\tstroke-dashoffset: 0;\\n\\t}\\n}\\n\\n@keyframes ck-widget-type-around-arrow-tip-dash {\\n\\t0%, 20% {\\n\\t\\tstroke-dashoffset: 7;\\n\\t}\\n\\t40%, 100% {\\n\\t\\tstroke-dashoffset: 0;\\n\\t}\\n}\\n\\n@keyframes ck-widget-type-around-button-sonar {\\n\\t0% {\\n\\t\\tbox-shadow: 0 0 0 0 hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\\n\\t}\\n\\t50% {\\n\\t\\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-end-alpha));\\n\\t}\\n\\t100% {\\n\\t\\tbox-shadow: 0 0 0 5px hsla(var(--ck-color-focus-border-coordinates), var(--ck-color-widget-type-around-button-radar-start-alpha));\\n\\t}\\n}\\n\\n@keyframes ck-widget-type-around-fake-caret-pulse {\\n\\t0% {\\n\\t\\topacity: 1;\\n\\t}\\n\\t49% {\\n\\t\\topacity: 1;\\n\\t}\\n\\t50% {\\n\\t\\topacity: 0;\\n\\t}\\n\\t99% {\\n\\t\\topacity: 0;\\n\\t}\\n\\t100% {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\":root{--ck-color-resizer:var(--ck-color-focus-border);--ck-resizer-size:10px;--ck-resizer-border-width:1px;--ck-resizer-border-radius:2px;--ck-resizer-offset:calc(var(--ck-resizer-size)/-2 - 2px);--ck-resizer-tooltip-offset:10px;--ck-color-resizer-tooltip-background:#262626;--ck-color-resizer-tooltip-text:#f2f2f2}.ck .ck-widget,.ck .ck-widget.ck-widget_with-selection-handle{position:relative}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{position:absolute}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{display:block}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected .ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle:hover .ck-widget__selection-handle{visibility:visible}.ck .ck-size-view{background:var(--ck-color-resizer-tooltip-background);color:var(--ck-color-resizer-tooltip-text);border:1px solid var(--ck-color-resizer-tooltip-text);border-radius:var(--ck-resizer-border-radius);font-size:var(--ck-font-size-tiny);display:block;padding:var(--ck-spacing-small)}.ck .ck-size-view.ck-orientation-bottom-left,.ck .ck-size-view.ck-orientation-bottom-right,.ck .ck-size-view.ck-orientation-top-left,.ck .ck-size-view.ck-orientation-top-right{position:absolute}.ck .ck-size-view.ck-orientation-top-left{top:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-top-right{top:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-right{bottom:var(--ck-resizer-tooltip-offset);right:var(--ck-resizer-tooltip-offset)}.ck .ck-size-view.ck-orientation-bottom-left{bottom:var(--ck-resizer-tooltip-offset);left:var(--ck-resizer-tooltip-offset)}:root{--ck-widget-outline-thickness:3px;--ck-widget-handler-icon-size:16px;--ck-widget-handler-animation-duration:200ms;--ck-widget-handler-animation-curve:ease;--ck-color-widget-blurred-border:#dedede;--ck-color-widget-hover-border:#ffc83d;--ck-color-widget-editable-focus-background:var(--ck-color-base-background);--ck-color-widget-drag-handler-icon-color:var(--ck-color-base-background)}.ck .ck-widget{outline-width:var(--ck-widget-outline-thickness);outline-style:solid;outline-color:transparent;transition:outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_selected,.ck .ck-widget.ck-widget_selected:hover{outline:var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border)}.ck .ck-widget:hover{outline-color:var(--ck-color-widget-hover-border)}.ck .ck-editor__nested-editable{border:1px solid transparent}.ck .ck-editor__nested-editable.ck-editor__nested-editable_focused,.ck .ck-editor__nested-editable:focus{outline:none;border:var(--ck-focus-ring);box-shadow:var(--ck-inner-shadow),0 0;background-color:var(--ck-color-widget-editable-focus-background)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{padding:4px;box-sizing:border-box;background-color:transparent;opacity:0;transition:background-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),visibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),opacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);border-radius:var(--ck-border-radius) var(--ck-border-radius) 0 0;transform:translateY(-100%);left:calc(0px - var(--ck-widget-outline-thickness))}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon{width:var(--ck-widget-handler-icon-size);height:var(--ck-widget-handler-icon-size);color:var(--ck-color-widget-drag-handler-icon-color)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:0;transition:opacity .3s var(--ck-widget-handler-animation-curve)}.ck .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover .ck-icon .ck-icon__selected-indicator{opacity:1}.ck .ck-widget.ck-widget_with-selection-handle:hover .ck-widget__selection-handle{opacity:1;background-color:var(--ck-color-widget-hover-border)}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected .ck-widget__selection-handle,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover .ck-widget__selection-handle{opacity:1;background-color:var(--ck-color-focus-border)}.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator,.ck .ck-widget.ck-widget_with-selection-handle.ck-widget_selected:hover .ck-widget__selection-handle .ck-icon .ck-icon__selected-indicator{opacity:1}.ck[dir=rtl] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle{left:auto;right:calc(0px - var(--ck-widget-outline-thickness))}.ck.ck-editor__editable.ck-read-only .ck-widget{transition:none}.ck.ck-editor__editable.ck-read-only .ck-widget:not(.ck-widget_selected){--ck-widget-outline-thickness:0px}.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-read-only .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover{outline-color:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected.ck-widget_with-selection-handle .ck-widget__selection-handle:hover,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover.ck-widget_with-selection-handle .ck-widget__selection-handle,.ck.ck-editor__editable.ck-blurred .ck-widget.ck-widget_selected:hover.ck-widget_with-selection-handle .ck-widget__selection-handle:hover{background:var(--ck-color-widget-blurred-border)}.ck.ck-editor__editable>.ck-widget.ck-widget_with-selection-handle:first-child,.ck.ck-editor__editable blockquote>.ck-widget.ck-widget_with-selection-handle:first-child{margin-top:calc(1em + var(--ck-widget-handler-icon-size))}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-widget/theme/widget.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-widget/widget.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_focus.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_shadow.css\"],names:[],mappings:\"AAKA,MACC,+CAAgD,CAChD,sBAAuB,CACvB,6BAA8B,CAC9B,8BAA+B,CAG/B,yDAAiE,CAEjE,gCAAiC,CACjC,6CAAsD,CACtD,uCACD,CAOA,8DAEC,iBAuBD,CArBC,4EACC,iBAOD,CALC,qFAGC,aACD,CAWD,iLACC,kBACD,CAGD,kBACC,qDAAsD,CACtD,0CAA2C,CAC3C,qDAAsD,CACtD,6CAA8C,CAC9C,kCAAmC,CACnC,aAAc,CACd,+BA4BD,CA1BC,gLAIC,iBACD,CAEA,0CACC,oCAAuC,CACvC,qCACD,CAEA,2CACC,oCAAuC,CACvC,sCACD,CAEA,8CACC,uCAA0C,CAC1C,sCACD,CAEA,6CACC,uCAA0C,CAC1C,qCACD,CC7ED,MACC,iCAAkC,CAClC,kCAAmC,CACnC,4CAA6C,CAC7C,wCAAyC,CAEzC,wCAAiD,CACjD,sCAAkD,CAClD,2EAA4E,CAC5E,yEACD,CAEA,eACC,gDAAiD,CACjD,mBAAoB,CACpB,yBAA0B,CAC1B,6GAUD,CARC,0EAEC,6EACD,CAEA,qBACC,iDACD,CAGD,gCACC,4BAWD,CAPC,yGC/BA,YAAa,CACb,2BAA2B,CCF3B,qCAA8B,CFqC7B,iEACD,CAIA,4EACC,WAAY,CACZ,qBAAsB,CAGtB,4BAA6B,CAC7B,SAAU,CAMV,6SAG6F,CAG7F,iEAAkE,CAGlE,2BAA4B,CAC5B,mDAqBD,CAnBC,qFAEC,wCAAyC,CACzC,yCAA0C,CAC1C,oDASD,CANC,kHACC,SAAU,CAGV,+DACD,CAID,wHACC,SACD,CAID,kFACC,SAAU,CACV,oDACD,CAKC,oMACC,SAAU,CACV,6CAMD,CAHC,gRACC,SACD,CAOH,qFACC,SAAU,CACV,oDACD,CAGA,gDAEC,eAkBD,CAhBC,yEAOC,iCACD,CAGC,gOAEC,gDACD,CAOD,wIAEC,mDAQD,CALE,ghBAEC,gDACD,CAKH,yKAOC,yDACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-color-resizer: var(--ck-color-focus-border);\\n\\t--ck-resizer-size: 10px;\\n\\t--ck-resizer-border-width: 1px;\\n\\t--ck-resizer-border-radius: 2px;\\n\\n\\t/* Set the resizer with a 50% offset. */\\n\\t--ck-resizer-offset: calc( ( var(--ck-resizer-size) / -2 ) - 2px);\\n\\n\\t--ck-resizer-tooltip-offset: 10px;\\n\\t--ck-color-resizer-tooltip-background: hsl(0, 0%, 15%);\\n\\t--ck-color-resizer-tooltip-text: hsl(0, 0%, 95%);\\n}\\n\\n.ck .ck-widget {\\n\\t/* This is neccessary for type around UI to be positioned properly. */\\n\\tposition: relative;\\n}\\n\\n.ck .ck-widget.ck-widget_with-selection-handle {\\n\\t/* Make the widget wrapper a relative positioning container for the drag handle. */\\n\\tposition: relative;\\n\\n\\t& .ck-widget__selection-handle {\\n\\t\\tposition: absolute;\\n\\n\\t\\t& .ck-icon {\\n\\t\\t\\t/* Make sure the icon in not a subject to font-size or line-height to avoid\\n\\t\\t\\tunnecessary spacing around it. */\\n\\t\\t\\tdisplay: block;\\n\\t\\t}\\n\\t}\\n\\n\\t/* Show the selection handle on mouse hover over the widget. */\\n\\t&:hover {\\n\\t\\t& .ck-widget__selection-handle {\\n\\t\\t\\tvisibility: visible;\\n\\t\\t}\\n\\t}\\n\\n\\t/* Show the selection handle when the widget is selected. */\\n\\t&.ck-widget_selected .ck-widget__selection-handle {\\n\\t\\tvisibility: visible;\\n\\t}\\n}\\n\\n.ck .ck-size-view {\\n\\tbackground: var(--ck-color-resizer-tooltip-background);\\n\\tcolor: var(--ck-color-resizer-tooltip-text);\\n\\tborder: 1px solid var(--ck-color-resizer-tooltip-text);\\n\\tborder-radius: var(--ck-resizer-border-radius);\\n\\tfont-size: var(--ck-font-size-tiny);\\n\\tdisplay: block;\\n\\tpadding: var(--ck-spacing-small);\\n\\n\\t&.ck-orientation-top-left,\\n\\t&.ck-orientation-top-right,\\n\\t&.ck-orientation-bottom-right,\\n\\t&.ck-orientation-bottom-left {\\n\\t\\tposition: absolute;\\n\\t}\\n\\n\\t&.ck-orientation-top-left {\\n\\t\\ttop: var( --ck-resizer-tooltip-offset );\\n\\t\\tleft: var( --ck-resizer-tooltip-offset );\\n\\t}\\n\\n\\t&.ck-orientation-top-right {\\n\\t\\ttop: var( --ck-resizer-tooltip-offset );\\n\\t\\tright: var( --ck-resizer-tooltip-offset );\\n\\t}\\n\\n\\t&.ck-orientation-bottom-right {\\n\\t\\tbottom: var( --ck-resizer-tooltip-offset );\\n\\t\\tright: var( --ck-resizer-tooltip-offset );\\n\\t}\\n\\n\\t&.ck-orientation-bottom-left {\\n\\t\\tbottom: var( --ck-resizer-tooltip-offset );\\n\\t\\tleft: var( --ck-resizer-tooltip-offset );\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../mixins/_focus.css\";\\n@import \"../mixins/_shadow.css\";\\n\\n:root {\\n\\t--ck-widget-outline-thickness: 3px;\\n\\t--ck-widget-handler-icon-size: 16px;\\n\\t--ck-widget-handler-animation-duration: 200ms;\\n\\t--ck-widget-handler-animation-curve: ease;\\n\\n\\t--ck-color-widget-blurred-border: hsl(0, 0%, 87%);\\n\\t--ck-color-widget-hover-border: hsl(43, 100%, 62%);\\n\\t--ck-color-widget-editable-focus-background: var(--ck-color-base-background);\\n\\t--ck-color-widget-drag-handler-icon-color: var(--ck-color-base-background);\\n}\\n\\n.ck .ck-widget {\\n\\toutline-width: var(--ck-widget-outline-thickness);\\n\\toutline-style: solid;\\n\\toutline-color: transparent;\\n\\ttransition: outline-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\\n\\n\\t&.ck-widget_selected,\\n\\t&.ck-widget_selected:hover {\\n\\t\\toutline: var(--ck-widget-outline-thickness) solid var(--ck-color-focus-border);\\n\\t}\\n\\n\\t&:hover {\\n\\t\\toutline-color: var(--ck-color-widget-hover-border);\\n\\t}\\n}\\n\\n.ck .ck-editor__nested-editable {\\n\\tborder: 1px solid transparent;\\n\\n\\t/* The :focus style is applied before .ck-editor__nested-editable_focused class is rendered in the view.\\n\\tThese styles show a different border for a blink of an eye, so `:focus` need to have same styles applied. */\\n\\t&.ck-editor__nested-editable_focused,\\n\\t&:focus {\\n\\t\\t@mixin ck-focus-ring;\\n\\t\\t@mixin ck-box-shadow var(--ck-inner-shadow);\\n\\n\\t\\tbackground-color: var(--ck-color-widget-editable-focus-background);\\n\\t}\\n}\\n\\n.ck .ck-widget.ck-widget_with-selection-handle {\\n\\t& .ck-widget__selection-handle {\\n\\t\\tpadding: 4px;\\n\\t\\tbox-sizing: border-box;\\n\\n\\t\\t/* Background and opacity will be animated as the handler shows up or the widget gets selected. */\\n\\t\\tbackground-color: transparent;\\n\\t\\topacity: 0;\\n\\n\\t\\t/* Transition:\\n\\t\\t * background-color for the .ck-widget_selected state change,\\n\\t\\t * visibility for hiding the handler,\\n\\t\\t * opacity for the proper look of the icon when the handler disappears. */\\n\\t\\ttransition:\\n\\t\\t\\tbackground-color var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\\n\\t\\t\\tvisibility var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve),\\n\\t\\t\\topacity var(--ck-widget-handler-animation-duration) var(--ck-widget-handler-animation-curve);\\n\\n\\t\\t/* Make only top corners round. */\\n\\t\\tborder-radius: var(--ck-border-radius) var(--ck-border-radius) 0 0;\\n\\n\\t\\t/* Place the drag handler outside the widget wrapper. */\\n\\t\\ttransform: translateY(-100%);\\n\\t\\tleft: calc(0px - var(--ck-widget-outline-thickness));\\n\\n\\t\\t& .ck-icon {\\n\\t\\t\\t/* Make sure the dimensions of the icon are independent of the fon-size of the content. */\\n\\t\\t\\twidth: var(--ck-widget-handler-icon-size);\\n\\t\\t\\theight: var(--ck-widget-handler-icon-size);\\n\\t\\t\\tcolor: var(--ck-color-widget-drag-handler-icon-color);\\n\\n\\t\\t\\t/* The \"selected\" part of the icon is invisible by default */\\n\\t\\t\\t& .ck-icon__selected-indicator {\\n\\t\\t\\t\\topacity: 0;\\n\\n\\t\\t\\t\\t/* Note: The animation is longer on purpose. Simply feels better. */\\n\\t\\t\\t\\ttransition: opacity 300ms var(--ck-widget-handler-animation-curve);\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t/* Advertise using the look of the icon that once clicked the handler, the widget will be selected. */\\n\\t\\t&:hover .ck-icon .ck-icon__selected-indicator {\\n\\t\\t\\topacity: 1;\\n\\t\\t}\\n\\t}\\n\\n\\t/* Show the selection handler on mouse hover over the widget. */\\n\\t&:hover .ck-widget__selection-handle {\\n\\t\\topacity: 1;\\n\\t\\tbackground-color: var(--ck-color-widget-hover-border);\\n\\t}\\n\\n\\t/* Show the selection handler when the widget is selected. */\\n\\t&.ck-widget_selected,\\n\\t&.ck-widget_selected:hover {\\n\\t\\t& .ck-widget__selection-handle {\\n\\t\\t\\topacity: 1;\\n\\t\\t\\tbackground-color: var(--ck-color-focus-border);\\n\\n\\t\\t\\t/* When the widget is selected, notify the user using the proper look of the icon. */\\n\\t\\t\\t& .ck-icon .ck-icon__selected-indicator {\\n\\t\\t\\t\\topacity: 1;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n/* In a RTL environment, align the selection handler to the right side of the widget */\\n/* stylelint-disable-next-line no-descending-specificity */\\n.ck[dir=\"rtl\"] .ck-widget.ck-widget_with-selection-handle .ck-widget__selection-handle {\\n\\tleft: auto;\\n\\tright: calc(0px - var(--ck-widget-outline-thickness));\\n}\\n\\n/* https://github.com/ckeditor/ckeditor5/issues/6415 */\\n.ck.ck-editor__editable.ck-read-only .ck-widget {\\n\\t/* Prevent the :hover outline from showing up because of the used outline-color transition. */\\n\\ttransition: none;\\n\\n\\t&:not(.ck-widget_selected) {\\n\\t\\t/* Disable visual effects of hover/active widget when CKEditor is in readOnly mode.\\n\\t\\t * See: https://github.com/ckeditor/ckeditor5/issues/1261\\n\\t\\t *\\n\\t\\t * Leave the unit because this custom property is used in calc() by other features.\\n\\t\\t * See: https://github.com/ckeditor/ckeditor5/issues/6775\\n\\t\\t */\\n\\t\\t--ck-widget-outline-thickness: 0px;\\n\\t}\\n\\n\\t&.ck-widget_with-selection-handle {\\n\\t\\t& .ck-widget__selection-handle,\\n\\t\\t& .ck-widget__selection-handle:hover {\\n\\t\\t\\tbackground: var(--ck-color-widget-blurred-border);\\n\\t\\t}\\n\\t}\\n}\\n\\n/* Style the widget when it\\'s selected but the editable it belongs to lost focus. */\\n/* stylelint-disable-next-line no-descending-specificity */\\n.ck.ck-editor__editable.ck-blurred .ck-widget {\\n\\t&.ck-widget_selected,\\n\\t&.ck-widget_selected:hover {\\n\\t\\toutline-color: var(--ck-color-widget-blurred-border);\\n\\n\\t\\t&.ck-widget_with-selection-handle {\\n\\t\\t\\t& .ck-widget__selection-handle,\\n\\t\\t\\t& .ck-widget__selection-handle:hover {\\n\\t\\t\\t\\tbackground: var(--ck-color-widget-blurred-border);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\\n.ck.ck-editor__editable > .ck-widget.ck-widget_with-selection-handle:first-child,\\n.ck.ck-editor__editable blockquote > .ck-widget.ck-widget_with-selection-handle:first-child {\\n\\t/* Do not crop selection handler if a widget is a first-child in the blockquote or in the root editable.\\n\\tIn fact, anything with overflow: hidden.\\n\\thttps://github.com/ckeditor/ckeditor5-block-quote/issues/28\\n\\thttps://github.com/ckeditor/ckeditor5-widget/issues/44\\n\\thttps://github.com/ckeditor/ckeditor5-widget/issues/66 */\\n\\tmargin-top: calc(1em + var(--ck-widget-handler-icon-size));\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A visual style of focused element's border.\\n */\\n@define-mixin ck-focus-ring {\\n\\t/* Disable native outline. */\\n\\toutline: none;\\n\\tborder: var(--ck-focus-ring)\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * A helper to combine multiple shadows.\\n */\\n@define-mixin ck-box-shadow $shadowA, $shadowB: 0 0 {\\n\\tbox-shadow: $shadowA, $shadowB;\\n}\\n\\n/**\\n * Gives an element a drop shadow so it looks like a floating panel.\\n */\\n@define-mixin ck-drop-shadow {\\n\\t@mixin ck-box-shadow var(--ck-drop-shadow);\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck-content .table{margin:1em auto;display:table}.ck-content .table table{border-collapse:collapse;border-spacing:0;width:100%;height:100%;border:1px double #b3b3b3}.ck-content .table table td,.ck-content .table table th{min-width:2em;padding:.4em;border:1px solid #bfbfbf}.ck-content .table table th{font-weight:700;background:hsla(0,0%,0%,5%)}.ck-content[dir=rtl] .table th{text-align:right}.ck-content[dir=ltr] .table th{text-align:left}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-table/theme/table.css\"],names:[],mappings:\"AAKA,mBAEC,eAAgB,CAChB,aAgCD,CA9BC,yBAEC,wBAAyB,CACzB,gBAAiB,CAIjB,UAAW,CACX,WAAY,CAIZ,yBAiBD,CAfC,wDAEC,aAAc,CACd,YAAa,CAKb,wBACD,CAEA,4BACC,eAAiB,CACjB,2BACD,CAMF,+BACC,gBACD,CAEA,+BACC,eACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck-content .table {\\n\\t/* Give the table widget some air and center it horizontally */\\n\\tmargin: 1em auto;\\n\\tdisplay: table;\\n\\n\\t& table {\\n\\t\\t/* The table cells should have slight borders */\\n\\t\\tborder-collapse: collapse;\\n\\t\\tborder-spacing: 0;\\n\\n\\t\\t/* Table width and height are set on the parent
. Make sure the table inside stretches\\n\\t\\tto the full dimensions of the container (https://github.com/ckeditor/ckeditor5/issues/6186). */\\n\\t\\twidth: 100%;\\n\\t\\theight: 100%;\\n\\n\\t\\t/* The outer border of the table should be slightly darker than the inner lines.\\n\\t\\tAlso see https://github.com/ckeditor/ckeditor5-table/issues/50. */\\n\\t\\tborder: 1px double hsl(0, 0%, 70%);\\n\\n\\t\\t& td,\\n\\t\\t& th {\\n\\t\\t\\tmin-width: 2em;\\n\\t\\t\\tpadding: .4em;\\n\\n\\t\\t\\t/* The border is inherited from .ck-editor__nested-editable styles, so theoretically it\\'s not necessary here.\\n\\t\\t\\tHowever, the border is a content style, so it should use .ck-content (so it works outside the editor).\\n\\t\\t\\tHence, the duplication. See https://github.com/ckeditor/ckeditor5/issues/6314 */\\n\\t\\t\\tborder: 1px solid hsl(0, 0%, 75%);\\n\\t\\t}\\n\\n\\t\\t& th {\\n\\t\\t\\tfont-weight: bold;\\n\\t\\t\\tbackground: hsla(0, 0%, 0%, 5%);\\n\\t\\t}\\n\\t}\\n}\\n\\n/* Text alignment of the table header should match the editor settings and override the native browser styling,\\nwhen content is available outside the ediitor. See https://github.com/ckeditor/ckeditor5/issues/6638 */\\n.ck-content[dir=\"rtl\"] .table th {\\n\\ttext-align: right;\\n}\\n\\n.ck-content[dir=\"ltr\"] .table th {\\n\\ttext-align: left;\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-input-color{width:100%;display:flex}.ck.ck-input-color>input.ck.ck-input-text{min-width:auto;flex-grow:1}.ck.ck-input-color>input.ck.ck-input-text:active,.ck.ck-input-color>input.ck.ck-input-text:focus{z-index:var(--ck-z-default)}.ck.ck-input-color>div.ck.ck-dropdown{min-width:auto}.ck.ck-input-color>div.ck.ck-dropdown>.ck-input-color__button .ck-dropdown__arrow{display:none}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview{position:relative;overflow:hidden}.ck.ck-input-color .ck.ck-input-color__button .ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{position:absolute;display:block}[dir=ltr] .ck.ck-input-color>.ck.ck-input-text{border-top-right-radius:0;border-bottom-right-radius:0}[dir=rtl] .ck.ck-input-color>.ck.ck-input-text{border-top-left-radius:0;border-bottom-left-radius:0}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button{padding:0}[dir=ltr] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button{border-top-left-radius:0;border-bottom-left-radius:0;margin-left:-1px}[dir=rtl] .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button{border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-1px}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button.ck-disabled{background:var(--ck-color-input-disabled-background)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button>.ck.ck-input-color__button__preview{border-radius:0}.ck-rounded-corners .ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button>.ck.ck-input-color__button__preview,.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button>.ck.ck-input-color__button__preview.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button>.ck.ck-input-color__button__preview{width:20px;height:20px;border:1px solid var(--ck-color-input-border)}.ck.ck-input-color>.ck.ck-dropdown>.ck.ck-input-color__button>.ck.ck-input-color__button__preview>.ck.ck-input-color__button__preview__no-color-indicator{top:-30%;left:50%;height:150%;width:8%;background:red;border-radius:2px;transform:rotate(45deg);transform-origin:50%}.ck.ck-input-color .ck.ck-input-color__remove-color{width:100%;border-bottom:1px solid var(--ck-color-input-border);padding:calc(var(--ck-spacing-standard)/2) var(--ck-spacing-standard);border-bottom-left-radius:0;border-bottom-right-radius:0}[dir=ltr] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-right-radius:0}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color{border-top-left-radius:0}.ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:var(--ck-spacing-standard)}[dir=rtl] .ck.ck-input-color .ck.ck-input-color__remove-color .ck.ck-icon{margin-right:0;margin-left:var(--ck-spacing-standard)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-table/theme/colorinput.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/colorinput.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAKA,mBACC,UAAW,CACX,YAgCD,CA9BC,0CACC,cAAe,CACf,WAMD,CAJC,iGAEC,2BACD,CAGD,sCACC,cAMD,CAHC,kFACC,YACD,CAIA,kFACC,iBAAkB,CAClB,eAMD,CAJC,0IACC,iBAAkB,CAClB,aACD,CC3BF,+CAEE,yBAA0B,CAC1B,4BAOF,CAVA,+CAOE,wBAAyB,CACzB,2BAEF,CAGC,8DACC,SAoCD,CArCA,wEAIE,wBAAyB,CACzB,2BAA4B,CAC5B,gBA+BF,CArCA,wEAUE,yBAA0B,CAC1B,4BAA6B,CAC7B,iBAyBF,CAtBC,0EACC,oDACD,CAEA,kGC9BF,eD+CE,CAjBA,2OC1BD,qCD2CC,CAjBA,kGAGC,UAAW,CACX,WAAY,CACZ,6CAYD,CAVC,0JACC,QAAS,CACT,QAAS,CACT,WAAY,CACZ,QAAS,CACT,cAA6B,CAC7B,iBAAkB,CAClB,uBAAwB,CACxB,oBACD,CAKH,oDACC,UAAW,CACX,oDAAqD,CACrD,qEAAwE,CAExE,2BAA4B,CAC5B,4BAkBD,CAxBA,8DASE,yBAeF,CAxBA,8DAaE,wBAWF,CARC,gEACC,uCAMD,CAPA,0EAIE,cAAe,CACf,sCAEF\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-input-color {\\n\\twidth: 100%;\\n\\tdisplay: flex;\\n\\n\\t& > input.ck.ck-input-text {\\n\\t\\tmin-width: auto;\\n\\t\\tflex-grow: 1;\\n\\n\\t\\t&:active,\\n\\t\\t&:focus {\\n\\t\\t\\tz-index: var(--ck-z-default);\\n\\t\\t}\\n\\t}\\n\\n\\t& > div.ck.ck-dropdown {\\n\\t\\tmin-width: auto;\\n\\n\\t\\t/* This dropdown has no arrow but a color preview instead. */\\n\\t\\t& > .ck-input-color__button .ck-dropdown__arrow {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck.ck-input-color__button {\\n\\t\\t& .ck.ck-input-color__button__preview {\\n\\t\\t\\tposition: relative;\\n\\t\\t\\toverflow: hidden;\\n\\n\\t\\t\\t& > .ck.ck-input-color__button__preview__no-color-indicator {\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\tdisplay: block;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n@import \"../mixins/_rounded.css\";\\n\\n.ck.ck-input-color {\\n\\t& > .ck.ck-input-text {\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\tborder-top-right-radius: 0;\\n\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\tborder-top-left-radius: 0;\\n\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t}\\n\\t}\\n\\n\\t& > .ck.ck-dropdown {\\n\\t\\t& > .ck.ck-input-color__button {\\n\\t\\t\\tpadding: 0;\\n\\n\\t\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t\\tborder-top-left-radius: 0;\\n\\t\\t\\t\\tborder-bottom-left-radius: 0;\\n\\t\\t\\t\\tmargin-left: -1px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t\\tborder-top-right-radius: 0;\\n\\t\\t\\t\\tborder-bottom-right-radius: 0;\\n\\t\\t\\t\\tmargin-right: -1px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t&.ck-disabled {\\n\\t\\t\\t\\tbackground: var(--ck-color-input-disabled-background);\\n\\t\\t\\t}\\n\\n\\t\\t\\t& > .ck.ck-input-color__button__preview {\\n\\t\\t\\t\\t@mixin ck-rounded-corners;\\n\\n\\t\\t\\t\\twidth: 20px;\\n\\t\\t\\t\\theight: 20px;\\n\\t\\t\\t\\tborder: 1px solid var(--ck-color-input-border);\\n\\n\\t\\t\\t\\t& > .ck.ck-input-color__button__preview__no-color-indicator {\\n\\t\\t\\t\\t\\ttop: -30%;\\n\\t\\t\\t\\t\\tleft: 50%;\\n\\t\\t\\t\\t\\theight: 150%;\\n\\t\\t\\t\\t\\twidth: 8%;\\n\\t\\t\\t\\t\\tbackground: hsl(0, 100%, 50%);\\n\\t\\t\\t\\t\\tborder-radius: 2px;\\n\\t\\t\\t\\t\\ttransform: rotate(45deg);\\n\\t\\t\\t\\t\\ttransform-origin: 50%;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck.ck-input-color__remove-color {\\n\\t\\twidth: 100%;\\n\\t\\tborder-bottom: 1px solid var(--ck-color-input-border);\\n\\t\\tpadding: calc(var(--ck-spacing-standard) / 2) var(--ck-spacing-standard);\\n\\n\\t\\tborder-bottom-left-radius: 0;\\n\\t\\tborder-bottom-right-radius: 0;\\n\\n\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\tborder-top-right-radius: 0;\\n\\t\\t}\\n\\n\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\tborder-top-left-radius: 0;\\n\\t\\t}\\n\\n\\t\\t& .ck.ck-icon {\\n\\t\\t\\tmargin-right: var(--ck-spacing-standard);\\n\\n\\t\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t\\tmargin-right: 0;\\n\\t\\t\\t\\tmargin-left: var(--ck-spacing-standard);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-form__row{display:flex;flex-direction:row;flex-wrap:nowrap;justify-content:space-between}.ck.ck-form__row>:not(.ck-label){flex-grow:1}.ck.ck-form__row.ck-table-form__action-row .ck-button-cancel,.ck.ck-form__row.ck-table-form__action-row .ck-button-save{justify-content:center}.ck.ck-form__row{padding:var(--ck-spacing-standard) var(--ck-spacing-large) 0}[dir=ltr] .ck.ck-form__row>:not(.ck-label)+*{margin-left:var(--ck-spacing-large)}[dir=rtl] .ck.ck-form__row>:not(.ck-label)+*{margin-right:var(--ck-spacing-large)}.ck.ck-form__row>.ck-label{width:100%;min-width:100%}.ck.ck-form__row.ck-table-form__action-row{margin-top:var(--ck-spacing-large)}.ck.ck-form__row.ck-table-form__action-row .ck-button .ck-button__label{color:var(--ck-color-text)}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-table/theme/formrow.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/formrow.css\"],names:[],mappings:\"AAKA,iBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,6BAaD,CAVC,iCACC,WACD,CAGC,wHAEC,sBACD,CCbF,iBACC,4DA2BD,CAvBE,6CAEE,mCAMF,CARA,6CAME,oCAEF,CAGD,2BACC,UAAW,CACX,cACD,CAEA,2CACC,kCAKD,CAHC,wEACC,0BACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-form__row {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tflex-wrap: nowrap;\\n\\tjustify-content: space-between;\\n\\n\\t/* Ignore labels that work as fieldset legends */\\n\\t& > *:not(.ck-label) {\\n\\t\\tflex-grow: 1;\\n\\t}\\n\\n\\t&.ck-table-form__action-row {\\n\\t\\t& .ck-button-save,\\n\\t\\t& .ck-button-cancel {\\n\\t\\t\\tjustify-content: center;\\n\\t\\t}\\n\\t}\\n}\\n\",'/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"@ckeditor/ckeditor5-ui/theme/mixins/_dir.css\";\\n\\n.ck.ck-form__row {\\n\\tpadding: var(--ck-spacing-standard) var(--ck-spacing-large) 0;\\n\\n\\t/* Ignore labels that work as fieldset legends */\\n\\t& > *:not(.ck-label) {\\n\\t\\t& + * {\\n\\t\\t\\t@mixin ck-dir ltr {\\n\\t\\t\\t\\tmargin-left: var(--ck-spacing-large);\\n\\t\\t\\t}\\n\\n\\t\\t\\t@mixin ck-dir rtl {\\n\\t\\t\\t\\tmargin-right: var(--ck-spacing-large);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t& > .ck-label {\\n\\t\\twidth: 100%;\\n\\t\\tmin-width: 100%;\\n\\t}\\n\\n\\t&.ck-table-form__action-row {\\n\\t\\tmargin-top: var(--ck-spacing-large);\\n\\n\\t\\t& .ck-button .ck-button__label {\\n\\t\\t\\tcolor: var(--ck-color-text);\\n\\t\\t}\\n\\t}\\n}\\n'],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-form__header{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:center;justify-content:space-between}:root{--ck-form-header-height:38px}.ck.ck-form__header{padding:var(--ck-spacing-small) var(--ck-spacing-large);height:var(--ck-form-header-height);line-height:var(--ck-form-header-height);border-bottom:1px solid var(--ck-color-base-border)}.ck.ck-form__header .ck-form__header__label{font-weight:700}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-ui/theme/components/formheader/formheader.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-ui/components/formheader/formheader.css\"],names:[],mappings:\"AAKA,oBACC,YAAa,CACb,kBAAmB,CACnB,gBAAiB,CACjB,kBAAmB,CACnB,6BACD,CCNA,MACC,4BACD,CAEA,oBACC,uDAAwD,CACxD,mCAAoC,CACpC,wCAAyC,CACzC,mDAKD,CAHC,4CACC,eACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-form__header {\\n\\tdisplay: flex;\\n\\tflex-direction: row;\\n\\tflex-wrap: nowrap;\\n\\talign-items: center;\\n\\tjustify-content: space-between;\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n:root {\\n\\t--ck-form-header-height: 38px;\\n}\\n\\n.ck.ck-form__header {\\n\\tpadding: var(--ck-spacing-small) var(--ck-spacing-large);\\n\\theight: var(--ck-form-header-height);\\n\\tline-height: var(--ck-form-header-height);\\n\\tborder-bottom: 1px solid var(--ck-color-base-border);\\n\\n\\t& .ck-form__header__label {\\n\\t\\tfont-weight: bold;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-form{padding:0 0 var(--ck-spacing-large)}.ck.ck-form:focus{outline:none}.ck.ck-form .ck.ck-input-text{min-width:100%;width:0}.ck.ck-form .ck.ck-dropdown{min-width:100%}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button:not(:focus){border:1px solid var(--ck-color-base-border)}.ck.ck-form .ck.ck-dropdown .ck-dropdown__button .ck-button__label{width:100%}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/form.css\"],names:[],mappings:\"AAKA,YACC,mCAyBD,CAvBC,kBAEC,YACD,CAEA,8BACC,cAAe,CACf,OACD,CAEA,4BACC,cAWD,CARE,6DACC,4CACD,CAEA,mEACC,UACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-form {\\n\\tpadding: 0 0 var(--ck-spacing-large);\\n\\n\\t&:focus {\\n\\t\\t/* See: https://github.com/ckeditor/ckeditor5/issues/4773 */\\n\\t\\toutline: none;\\n\\t}\\n\\n\\t& .ck.ck-input-text {\\n\\t\\tmin-width: 100%;\\n\\t\\twidth: 0;\\n\\t}\\n\\n\\t& .ck.ck-dropdown {\\n\\t\\tmin-width: 100%;\\n\\n\\t\\t& .ck-dropdown__button {\\n\\t\\t\\t&:not(:focus) {\\n\\t\\t\\t\\tborder: 1px solid var(--ck-color-base-border);\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-button__label {\\n\\t\\t\\t\\twidth: 100%;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,'.ck.ck-table-form .ck-form__row.ck-table-form__border-row{flex-wrap:wrap}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view{display:flex;flex-direction:column-reverse}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view .ck.ck-dropdown,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style,.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{flex-grow:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{flex-wrap:wrap;align-items:center}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view{display:flex;flex-direction:column-reverse;align-items:center}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view .ck.ck-dropdown,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{flex-grow:0}.ck.ck-table-form .ck.ck-labeled-field-view{position:relative}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{position:absolute;left:50%;bottom:calc(var(--ck-table-properties-error-arrow-size)*-1);transform:translate(-50%,100%);z-index:1}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{content:\"\";position:absolute;top:calc(var(--ck-table-properties-error-arrow-size)*-1);left:50%;transform:translateX(-50%)}:root{--ck-table-properties-error-arrow-size:6px;--ck-table-properties-min-error-width:150px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-labeled-field-view>.ck-label{font-size:var(--ck-font-size-tiny);text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-style{width:80px;min-width:80px}.ck.ck-table-form .ck-form__row.ck-table-form__border-row .ck-table-form__border-width{width:50px;min-width:50px}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row{padding:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-labeled-field-view>.ck-label{font-size:10px;text-align:center}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__height,.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimensions-row__width{margin:0}.ck.ck-table-form .ck-form__row.ck-table-form__dimensions-row .ck-table-form__dimension-operator{align-self:start;display:inline-block;height:var(--ck-ui-component-min-height);line-height:var(--ck-ui-component-min-height);margin:0 var(--ck-spacing-small)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{border-radius:0}.ck-rounded-corners .ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status,.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status.ck-rounded-corners{border-radius:var(--ck-border-radius)}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{background:var(--ck-color-base-error);color:var(--ck-color-base-background);padding:var(--ck-spacing-small) var(--ck-spacing-medium);min-width:var(--ck-table-properties-min-error-width);text-align:center}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status:after{border-left:var(--ck-table-properties-error-arrow-size) solid transparent;border-bottom:var(--ck-table-properties-error-arrow-size) solid var(--ck-color-base-error);border-right:var(--ck-table-properties-error-arrow-size) solid transparent;border-top:0 solid transparent}.ck.ck-table-form .ck.ck-labeled-field-view .ck.ck-labeled-field-view__status{animation:ck-table-form-labeled-view-status-appear .15s ease both}.ck.ck-table-form .ck.ck-labeled-field-view .ck-input.ck-error:not(:focus)+.ck.ck-labeled-field-view__status{display:none}@keyframes ck-table-form-labeled-view-status-appear{0%{opacity:0}to{opacity:1}}',\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tableform.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableform.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/mixins/_rounded.css\"],names:[],mappings:\"AAOE,0DACC,cAkBD,CAhBC,iFACC,YAAa,CACb,6BAKD,CAMA,+QACC,WACD,CAGD,8DACC,cAAe,CACf,kBAeD,CAbC,qFACC,YAAa,CACb,6BAA8B,CAC9B,kBAKD,CAEA,sMACC,WACD,CAIF,4CAEC,iBAoBD,CAlBC,8EACC,iBAAkB,CAClB,QAAS,CACT,2DAAgE,CAChE,8BAA+B,CAG/B,SAUD,CAPC,oFACC,UAAW,CACX,iBAAkB,CAClB,wDAA6D,CAC7D,QAAS,CACT,0BACD,CC7DH,MACC,0CAA2C,CAC3C,2CACD,CAMI,2FACC,kCAAmC,CACnC,iBACD,CAGD,uFACC,UAAW,CACX,cACD,CAEA,uFACC,UAAW,CACX,cACD,CAGD,8DACC,SAmBD,CAjBC,+FACC,cAAe,CACf,iBACD,CAEA,yMAEC,QACD,CAEA,iGACC,gBAAiB,CACjB,oBAAqB,CACrB,wCAAyC,CACzC,6CAA8C,CAC9C,gCACD,CAKD,8EC9CD,eD+DC,CAjBA,mMC1CA,qCD2DA,CAjBA,8EAGC,qCAAsC,CACtC,qCAAsC,CACtC,wDAAyD,CACzD,oDAAqD,CACrD,iBAUD,CAPC,oFAGC,yEAAmB,CAAnB,0FAAmB,CAAnB,0EAAmB,CAAnB,8BACD,CAdD,8EAgBC,iEACD,CAGA,6GACC,YACD,CAIF,oDACC,GACC,SACD,CAEA,GACC,SACD,CACD\",sourcesContent:['/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-table-form {\\n\\t& .ck-form__row {\\n\\t\\t&.ck-table-form__border-row {\\n\\t\\t\\tflex-wrap: wrap;\\n\\n\\t\\t\\t& .ck-labeled-field-view {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tflex-direction: column-reverse;\\n\\n\\t\\t\\t\\t& .ck.ck-dropdown {\\n\\t\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-table-form__border-style {\\n\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-table-form__border-width {\\n\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&.ck-table-form__dimensions-row {\\n\\t\\t\\tflex-wrap: wrap;\\n\\t\\t\\talign-items: center;\\n\\n\\t\\t\\t& .ck-labeled-field-view {\\n\\t\\t\\t\\tdisplay: flex;\\n\\t\\t\\t\\tflex-direction: column-reverse;\\n\\t\\t\\t\\talign-items: center;\\n\\n\\t\\t\\t\\t& .ck.ck-dropdown {\\n\\t\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-table-form__dimension-operator {\\n\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck.ck-labeled-field-view {\\n\\t\\t/* Allow absolute positioning of the status (error) balloons. */\\n\\t\\tposition: relative;\\n\\n\\t\\t& .ck.ck-labeled-field-view__status {\\n\\t\\t\\tposition: absolute;\\n\\t\\t\\tleft: 50%;\\n\\t\\t\\tbottom: calc( -1 * var(--ck-table-properties-error-arrow-size) );\\n\\t\\t\\ttransform: translate(-50%,100%);\\n\\n\\t\\t\\t/* Make sure the balloon status stays on top of other form elements. */\\n\\t\\t\\tz-index: 1;\\n\\n\\t\\t\\t/* The arrow pointing towards the field. */\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tcontent: \"\";\\n\\t\\t\\t\\tposition: absolute;\\n\\t\\t\\t\\ttop: calc( -1 * var(--ck-table-properties-error-arrow-size) );\\n\\t\\t\\t\\tleft: 50%;\\n\\t\\t\\t\\ttransform: translateX( -50% );\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n','/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n@import \"../mixins/_rounded.css\";\\n\\n:root {\\n\\t--ck-table-properties-error-arrow-size: 6px;\\n\\t--ck-table-properties-min-error-width: 150px;\\n}\\n\\n.ck.ck-table-form {\\n\\t& .ck-form__row {\\n\\t\\t&.ck-table-form__border-row {\\n\\t\\t\\t& .ck-labeled-field-view {\\n\\t\\t\\t\\t& > .ck-label {\\n\\t\\t\\t\\t\\tfont-size: var(--ck-font-size-tiny);\\n\\t\\t\\t\\t\\ttext-align: center;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-table-form__border-style {\\n\\t\\t\\t\\twidth: 80px;\\n\\t\\t\\t\\tmin-width: 80px;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-table-form__border-width {\\n\\t\\t\\t\\twidth: 50px;\\n\\t\\t\\t\\tmin-width: 50px;\\n\\t\\t\\t}\\n\\t\\t}\\n\\n\\t\\t&.ck-table-form__dimensions-row {\\n\\t\\t\\tpadding: 0;\\n\\n\\t\\t\\t& .ck-labeled-field-view > .ck-label {\\n\\t\\t\\t\\tfont-size: 10px;\\n\\t\\t\\t\\ttext-align: center;\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-table-form__dimensions-row__width,\\n\\t\\t\\t& .ck-table-form__dimensions-row__height {\\n\\t\\t\\t\\tmargin: 0\\n\\t\\t\\t}\\n\\n\\t\\t\\t& .ck-table-form__dimension-operator {\\n\\t\\t\\t\\talign-self: start;\\n\\t\\t\\t\\tdisplay: inline-block;\\n\\t\\t\\t\\theight: var(--ck-ui-component-min-height);\\n\\t\\t\\t\\tline-height: var(--ck-ui-component-min-height);\\n\\t\\t\\t\\tmargin: 0 var(--ck-spacing-small);\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n\\n\\t& .ck.ck-labeled-field-view {\\n\\t\\t& .ck.ck-labeled-field-view__status {\\n\\t\\t\\t@mixin ck-rounded-corners;\\n\\n\\t\\t\\tbackground: var(--ck-color-base-error);\\n\\t\\t\\tcolor: var(--ck-color-base-background);\\n\\t\\t\\tpadding: var(--ck-spacing-small) var(--ck-spacing-medium);\\n\\t\\t\\tmin-width: var(--ck-table-properties-min-error-width);\\n\\t\\t\\ttext-align: center;\\n\\n\\t\\t\\t/* The arrow pointing towards the field. */\\n\\t\\t\\t&::after {\\n\\t\\t\\t\\tborder-color: transparent transparent var(--ck-color-base-error) transparent;\\n\\t\\t\\t\\tborder-width: 0 var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size) var(--ck-table-properties-error-arrow-size);\\n\\t\\t\\t\\tborder-style: solid;\\n\\t\\t\\t}\\n\\n\\t\\t\\tanimation: ck-table-form-labeled-view-status-appear .15s ease both;\\n\\t\\t}\\n\\n\\t\\t/* Hide the error balloon when the field is blurred. Makes the experience much more clear. */\\n\\t\\t& .ck-input.ck-error:not(:focus) + .ck.ck-labeled-field-view__status {\\n\\t\\t\\tdisplay: none;\\n\\t\\t}\\n\\t}\\n}\\n\\n@keyframes ck-table-form-labeled-view-status-appear {\\n\\t0% {\\n\\t\\topacity: 0;\\n\\t}\\n\\n\\t100% {\\n\\t\\topacity: 1;\\n\\t}\\n}\\n',\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n/**\\n * Implements rounded corner interface for .ck-rounded-corners class.\\n *\\n * @see $ck-border-radius\\n */\\n@define-mixin ck-rounded-corners {\\n\\tborder-radius: 0;\\n\\n\\t@nest .ck-rounded-corners &,\\n\\t&.ck-rounded-corners {\\n\\t\\tborder-radius: var(--ck-border-radius);\\n\\t\\t@mixin-content;\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{flex-wrap:wrap;flex-basis:0;align-content:baseline}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items{flex-wrap:nowrap}.ck.ck-table-properties-form{width:320px}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row{padding:0}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar{background:none}.ck.ck-table-properties-form .ck-form__row.ck-table-properties-form__alignment-row .ck.ck-toolbar .ck-toolbar__items>*{width:40px}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tableproperties.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tableproperties.css\"],names:[],mappings:\"AAOE,mFACC,cAAe,CACf,YAAa,CACb,sBAKD,CAHC,qHACC,gBACD,CCTH,6BACC,WAeD,CAZE,mFACC,SASD,CAPC,kGACC,eAKD,CAHC,uHACC,UACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-table-properties-form {\\n\\t& .ck-form__row {\\n\\t\\t&.ck-table-properties-form__alignment-row {\\n\\t\\t\\tflex-wrap: wrap;\\n\\t\\t\\tflex-basis: 0;\\n\\t\\t\\talign-content: baseline;\\n\\n\\t\\t\\t& .ck.ck-toolbar .ck-toolbar__items {\\n\\t\\t\\t\\tflex-wrap: nowrap;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-table-properties-form {\\n\\twidth: 320px;\\n\\n\\t& .ck-form__row {\\n\\t\\t&.ck-table-properties-form__alignment-row {\\n\\t\\t\\tpadding: 0;\\n\\n\\t\\t\\t& .ck.ck-toolbar {\\n\\t\\t\\t\\tbackground: none;\\n\\n\\t\\t\\t\\t& .ck-toolbar__items > * {\\n\\t\\t\\t\\t\\twidth: 40px;\\n\\t\\t\\t\\t}\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row{flex-wrap:wrap}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{flex-grow:0}.ck.ck-table-cell-properties-form{width:320px}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__padding-row{padding:0;width:35%}.ck.ck-table-cell-properties-form .ck-form__row.ck-table-cell-properties-form__alignment-row .ck.ck-toolbar{background:none}\",\"\",{version:3,sources:[\"webpack://./node_modules/@ckeditor/ckeditor5-table/theme/tablecellproperties.css\",\"webpack://./node_modules/@ckeditor/ckeditor5-theme-lark/theme/ckeditor5-table/tablecellproperties.css\"],names:[],mappings:\"AAOE,6FACC,cAKD,CAHC,4GACC,WACD,CCPH,kCACC,WAcD,CAXE,2FACC,SAAU,CACV,SACD,CAGC,4GACC,eACD\",sourcesContent:[\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-table-cell-properties-form {\\n\\t& .ck-form__row {\\n\\t\\t&.ck-table-cell-properties-form__alignment-row {\\n\\t\\t\\tflex-wrap: wrap;\\n\\n\\t\\t\\t& .ck.ck-toolbar {\\n\\t\\t\\t\\tflex-grow: 0;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\",\"/*\\n * Copyright (c) 2003-2020, CKSource - Frederico Knabben. All rights reserved.\\n * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-oss-license\\n */\\n\\n.ck.ck-table-cell-properties-form {\\n\\twidth: 320px;\\n\\n\\t& .ck-form__row {\\n\\t\\t&.ck-table-cell-properties-form__padding-row {\\n\\t\\t\\tpadding: 0;\\n\\t\\t\\twidth: 35%;\\n\\t\\t}\\n\\n\\t\\t&.ck-table-cell-properties-form__alignment-row {\\n\\t\\t\\t& .ck.ck-toolbar {\\n\\t\\t\\t\\tbackground: none;\\n\\t\\t\\t}\\n\\t\\t}\\n\\t}\\n}\\n\"],sourceRoot:\"\"}]),e.a=s},function(t,e,n){\"use strict\";var o=n(2),i=n.n(o),r=n(3),s=n.n(r)()(i.a);s.push([t.i,\".ck-rounded-corners .ck.ck-balloon-panel{z-index:9999}.ck.ck-responsive-form>:not(:first-child),.ck.ck-responsive-form>:not(:last-child){margin-left:0!important}\",\"\",{version:3,sources:[\"webpack://./src/style.css\"],names:[],mappings:\"AAAA,yCACI,YACJ,CAEA,mFACI,uBACJ\",sourcesContent:[\".ck-rounded-corners .ck.ck-balloon-panel {\\r\\n z-index: 9999;\\r\\n}\\r\\n\\r\\n.ck.ck-responsive-form > :not(:first-child), .ck.ck-responsive-form > :not(:last-child) {\\r\\n margin-left: 0 !important;\\r\\n}\"],sourceRoot:\"\"}]),e.a=s},function(t,e){var n;n=function(){return this}();try{n=n||new Function(\"return this\")()}catch(t){\"object\"==typeof window&&(n=window)}t.exports=n},function(t,e,n){\"use strict\";e.a=function(){return!1}},function(t,e,n){\"use strict\";n.r(e);var o=n(5),i=o.a.Symbol,r=Object.prototype,s=r.hasOwnProperty,a=r.toString,c=i?i.toStringTag:void 0;var l=function(t){var e=s.call(t,c),n=t[c];try{t[c]=void 0;var o=!0}catch(t){}var i=a.call(t);return o&&(e?t[c]=n:delete t[c]),i},d=Object.prototype.toString;var h=function(t){return d.call(t)},u=i?i.toStringTag:void 0;var m=function(t){return null==t?void 0===t?\"[object Undefined]\":\"[object Null]\":u&&u in Object(t)?l(t):h(t)};var g=function(t,e){return function(n){return t(e(n))}},p=g(Object.getPrototypeOf,Object);var f=function(t){return null!=t&&\"object\"==typeof t},b=Function.prototype,k=Object.prototype,w=b.toString,_=k.hasOwnProperty,C=w.call(Object);var A=function(t){if(!f(t)||\"[object Object]\"!=m(t))return!1;var e=p(t);if(null===e)return!0;var n=_.call(e,\"constructor\")&&e.constructor;return\"function\"==typeof n&&n instanceof n&&w.call(n)==C};var v=function(){this.__data__=[],this.size=0};var y=function(t,e){return t===e||t!=t&&e!=e};var x=function(t,e){for(var n=t.length;n--;)if(y(t[n][0],e))return n;return-1},E=Array.prototype.splice;var S=function(t){var e=this.__data__,n=x(e,t);return!(n<0)&&(n==e.length-1?e.pop():E.call(e,n,1),--this.size,!0)};var D=function(t){var e=this.__data__,n=x(e,t);return n<0?void 0:e[n][1]};var T=function(t){return x(this.__data__,t)>-1};var B=function(t,e){var n=this.__data__,o=x(n,t);return o<0?(++this.size,n.push([t,e])):n[o][1]=e,this};function P(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e-1&&t%1==0&&t-1&&t%1==0&&t<=9007199254740991},Lt={};Lt[\"[object Float32Array]\"]=Lt[\"[object Float64Array]\"]=Lt[\"[object Int8Array]\"]=Lt[\"[object Int16Array]\"]=Lt[\"[object Int32Array]\"]=Lt[\"[object Uint8Array]\"]=Lt[\"[object Uint8ClampedArray]\"]=Lt[\"[object Uint16Array]\"]=Lt[\"[object Uint32Array]\"]=!0,Lt[\"[object Arguments]\"]=Lt[\"[object Array]\"]=Lt[\"[object ArrayBuffer]\"]=Lt[\"[object Boolean]\"]=Lt[\"[object DataView]\"]=Lt[\"[object Date]\"]=Lt[\"[object Error]\"]=Lt[\"[object Function]\"]=Lt[\"[object Map]\"]=Lt[\"[object Number]\"]=Lt[\"[object Object]\"]=Lt[\"[object RegExp]\"]=Lt[\"[object Set]\"]=Lt[\"[object String]\"]=Lt[\"[object WeakMap]\"]=!1;var Ht=function(t){return f(t)&&zt(t.length)&&!!Lt[m(t)]};var Kt=function(t){return function(e){return t(e)}},jt=n(7),qt=jt.a&&jt.a.isTypedArray,Wt=qt?Kt(qt):Ht,Gt=Object.prototype.hasOwnProperty;var $t=function(t,e){var n=Ot(t),o=!n&&Ft(t),i=!n&&!o&&Object(Nt.a)(t),r=!n&&!o&&!i&&Wt(t),s=n||o||i||r,a=s?Tt(t.length,String):[],c=a.length;for(var l in t)!e&&!Gt.call(t,l)||s&&(\"length\"==l||i&&(\"offset\"==l||\"parent\"==l)||r&&(\"buffer\"==l||\"byteLength\"==l||\"byteOffset\"==l)||Vt(l,c))||a.push(l);return a},Ut=Object.prototype;var Jt=function(t){var e=t&&t.constructor;return t===(\"function\"==typeof e&&e.prototype||Ut)},Yt=g(Object.keys,Object),Qt=Object.prototype.hasOwnProperty;var Xt=function(t){if(!Jt(t))return Yt(t);var e=[];for(var n in Object(t))Qt.call(t,n)&&\"constructor\"!=n&&e.push(n);return e};var Zt=function(t){return null!=t&&zt(t.length)&&!z(t)};var te=function(t){return Zt(t)?$t(t):Xt(t)};var ee=function(t,e){return t&&Dt(e,te(e),t)};var ne=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e},oe=Object.prototype.hasOwnProperty;var ie=function(t){if(!M(t))return ne(t);var e=Jt(t),n=[];for(var o in t)(\"constructor\"!=o||!e&&oe.call(t,o))&&n.push(o);return n};var re=function(t){return Zt(t)?$t(t,!0):ie(t)};var se=function(t,e){return t&&Dt(e,re(e),t)},ae=n(10);var ce=function(t,e){var n=-1,o=t.length;for(e||(e=Array(o));++n{this._setToTarget(t,o,e[o],n)}))}}function mn(t){return dn(t,gn)}function gn(t){return hn(t)?t:void 0}var pn=function(){return function t(){t.called=!0}};class fn{constructor(t,e){this.source=t,this.name=e,this.path=[],this.stop=pn(),this.off=pn()}}const bn=new Array(256).fill().map(((t,e)=>(\"0\"+e.toString(16)).slice(-2)));function kn(){const t=4294967296*Math.random()>>>0,e=4294967296*Math.random()>>>0,n=4294967296*Math.random()>>>0,o=4294967296*Math.random()>>>0;return\"e\"+bn[t>>0&255]+bn[t>>8&255]+bn[t>>16&255]+bn[t>>24&255]+bn[e>>0&255]+bn[e>>8&255]+bn[e>>16&255]+bn[e>>24&255]+bn[n>>0&255]+bn[n>>8&255]+bn[n>>16&255]+bn[n>>24&255]+bn[o>>0&255]+bn[o>>8&255]+bn[o>>16&255]+bn[o>>24&255]}var wn={get(t){return\"number\"!=typeof t?this[t]||this.normal:t},highest:1e5,high:1e3,normal:0,low:-1e3,lowest:-1e5},_n=(n(8),n(0));const Cn=Symbol(\"listeningTo\"),An=Symbol(\"emitterId\");var vn={on(t,e,n={}){this.listenTo(this,t,e,n)},once(t,e,n){let o=!1;this.listenTo(this,t,(function(t,...n){o||(o=!0,t.off(),e.call(this,t,...n))}),n)},off(t,e){this.stopListening(this,t,e)},listenTo(t,e,n,o={}){let i,r;this[Cn]||(this[Cn]={});const s=this[Cn];xn(t)||yn(t);const a=xn(t);(i=s[a])||(i=s[a]={emitter:t,callbacks:{}}),(r=i.callbacks[e])||(r=i.callbacks[e]=[]),r.push(n),function(t,e){const n=En(t);if(n[e])return;let o=e,i=null;const r=[];for(;\"\"!==o&&!n[o];)n[o]={callbacks:[],childEvents:[]},r.push(n[o]),i&&n[o].childEvents.push(i),i=o,o=o.substr(0,o.lastIndexOf(\":\"));if(\"\"!==o){for(const t of r)t.callbacks=n[o].callbacks.slice();n[o].childEvents.push(i)}}(t,e);const c=Sn(t,e),l=wn.get(o.priority),d={callback:n,priority:l};for(const t of c){let e=!1;for(let n=0;n{this._delegations||(this._delegations=new Map),t.forEach((t=>{const o=this._delegations.get(t);o?o.set(e,n):this._delegations.set(t,new Map([[e,n]]))}))}}},stopDelegating(t,e){if(this._delegations)if(t)if(e){const n=this._delegations.get(t);n&&n.delete(e)}else this._delegations.delete(t);else this._delegations.clear()}};function yn(t,e){t[An]||(t[An]=e||kn())}function xn(t){return t[An]}function En(t){return t._events||Object.defineProperty(t,\"_events\",{value:{}}),t._events}function Sn(t,e){const n=En(t)[e];if(!n)return[];let o=[n.callbacks];for(let e=0;e-1?Dn(t,e.substr(0,e.lastIndexOf(\":\"))):null}function Tn(t,e,n){for(let[o,i]of t){i?\"function\"==typeof i&&(i=i(e.name)):i=e.name;const t=new fn(e.source,i);t.path=[...e.path],o.fire(t,...n)}}function Bn(t,e,n){const o=Sn(t,e);for(const t of o)for(let e=0;e{Object.getOwnPropertyNames(e).concat(Object.getOwnPropertySymbols(e)).forEach((n=>{if(n in t.prototype)return;const o=Object.getOwnPropertyDescriptor(e,n);o.enumerable=!1,Object.defineProperty(t.prototype,n,o)}))}))}class Rn{constructor(t={},e={}){const n=Pn(t);if(n||(e=t),this._items=[],this._itemMap=new Map,this._idProperty=e.idProperty||\"id\",this._bindToExternalToInternalMap=new WeakMap,this._bindToInternalToExternalMap=new WeakMap,this._skippedIndexesFromExternal=[],n)for(const e of t)this._items.push(e),this._itemMap.set(this._getItemIdBeforeAdding(e),e)}get length(){return this._items.length}get first(){return this._items[0]||null}get last(){return this._items[this.length-1]||null}add(t,e){return this.addMany([t],e)}addMany(t,e){if(void 0===e)e=this._items.length;else if(e>this._items.length||e<0)throw new _n.a(\"collection-add-item-invalid-index\",this);for(let n=0;n{this._setUpBindToBinding((e=>new t(e)))},using:t=>{\"function\"==typeof t?this._setUpBindToBinding((e=>t(e))):this._setUpBindToBinding((e=>e[t]))}}}_setUpBindToBinding(t){const e=this._bindToCollection,n=(n,o,i)=>{const r=e._bindToCollection==this,s=e._bindToInternalToExternalMap.get(o);if(r&&s)this._bindToExternalToInternalMap.set(o,s),this._bindToInternalToExternalMap.set(s,o);else{const n=t(o);if(!n)return void this._skippedIndexesFromExternal.push(i);let r=i;for(const t of this._skippedIndexesFromExternal)i>t&&r--;for(const t of e._skippedIndexesFromExternal)r>=t&&r++;this._bindToExternalToInternalMap.set(o,n),this._bindToInternalToExternalMap.set(n,o),this.add(n,r);for(let t=0;t{const o=this._bindToExternalToInternalMap.get(e);o&&this.remove(o),this._skippedIndexesFromExternal=this._skippedIndexesFromExternal.reduce(((t,e)=>(ne&&t.push(e),t)),[])}))}_getItemIdBeforeAdding(t){const e=this._idProperty;let n;if(e in t){if(n=t[e],\"string\"!=typeof n)throw new _n.a(\"collection-add-invalid-id\",this);if(this.get(n))throw new _n.a(\"collection-add-item-already-exists\",this)}else t[e]=n=kn();return n}_remove(t){let e,n,o,i=!1;const r=this._idProperty;if(\"string\"==typeof t?(n=t,o=this._itemMap.get(n),i=!o,o&&(e=this._items.indexOf(o))):\"number\"==typeof t?(e=t,o=this._items[e],i=!o,o&&(n=o[r])):(o=t,n=o[r],e=this._items.indexOf(o),i=-1==e||!this._itemMap.get(n)),i)throw new _n.a(\"collection-remove-404\",this);this._items.splice(e,1),this._itemMap.delete(n);const s=this._bindToInternalToExternalMap.get(o);return this._bindToInternalToExternalMap.delete(o),this._bindToExternalToInternalMap.delete(s),this.fire(\"remove\",o,e),[o,e]}[Symbol.iterator](){return this._items[Symbol.iterator]()}}In(Rn,vn);class Fn{constructor(t,e=[],n=[]){this._context=t,this._plugins=new Map,this._availablePlugins=new Map;for(const t of e)t.pluginName&&this._availablePlugins.set(t.pluginName,t);this._contextPlugins=new Map;for(const[t,e]of n)this._contextPlugins.set(t,e),this._contextPlugins.set(e,t),t.pluginName&&this._availablePlugins.set(t.pluginName,t)}*[Symbol.iterator](){for(const t of this._plugins)\"function\"==typeof t[0]&&(yield t)}get(t){const e=this._plugins.get(t);if(!e){let e=t;throw\"function\"==typeof t&&(e=t.pluginName||t.name),new _n.a(\"plugincollection-plugin-not-loaded\",this._context,{plugin:e})}return e}has(t){return this._plugins.has(t)}init(t,e=[]){const n=this,o=this._context,i=new Set,r=[],s=u(t),a=u(e),c=function(t){const e=[];for(const n of t)h(n)||e.push(n);return e.length?e:null}(t);if(c){const t=\"plugincollection-plugin-not-found\";return Object(_n.b)(t,{plugins:c}),Promise.reject(new _n.a(t,o,{plugins:c}))}return Promise.all(s.map(l)).then((()=>d(r,\"init\"))).then((()=>d(r,\"afterInit\"))).then((()=>r));function l(t){if(!a.includes(t)&&!n._plugins.has(t)&&!i.has(t))return function(t){return new Promise((s=>{i.add(t),t.requires&&t.requires.forEach((n=>{const i=h(n);if(t.isContextPlugin&&!i.isContextPlugin)throw new _n.a(\"plugincollection-context-required\",null,{plugin:i.name,requiredBy:t.name});if(e.includes(i))throw new _n.a(\"plugincollection-required\",o,{plugin:i.name,requiredBy:t.name});l(i)}));const a=n._contextPlugins.get(t)||new t(o);n._add(t,a),r.push(a),s()}))}(t).catch((e=>{throw Object(_n.b)(\"plugincollection-load\",{plugin:t}),e}))}function d(t,e){return t.reduce(((t,o)=>o[e]?n._contextPlugins.has(o)?t:t.then(o[e].bind(o)):t),Promise.resolve())}function h(t){return\"function\"==typeof t?t:n._availablePlugins.get(t)}function u(t){return t.map((t=>h(t))).filter((t=>!!t))}}destroy(){const t=[];for(const[,e]of this)\"function\"!=typeof e.destroy||this._contextPlugins.has(e)||t.push(e.destroy());return Promise.all(t)}_add(t,e){this._plugins.set(t,e);const n=t.pluginName;if(n){if(this._plugins.has(n))throw new _n.a(\"plugincollection-plugin-name-conflict\",null,{pluginName:n,plugin1:this._plugins.get(n).constructor,plugin2:t});this._plugins.set(n,e)}}}function On(t,e,n=1){if(\"number\"!=typeof n)throw new _n.a(\"translation-service-quantity-not-a-number\",null,{quantity:n});const o=Object.keys(window.CKEDITOR_TRANSLATIONS).length;1===o&&(t=Object.keys(window.CKEDITOR_TRANSLATIONS)[0]);const i=e.id||e.string;if(0===o||!function(t,e){return!!window.CKEDITOR_TRANSLATIONS[t]&&!!window.CKEDITOR_TRANSLATIONS[t].dictionary[e]}(t,i))return 1!==n?e.plural:e.string;const r=window.CKEDITOR_TRANSLATIONS[t].dictionary,s=window.CKEDITOR_TRANSLATIONS[t].getPluralForm||(t=>1===t?0:1);if(\"string\"==typeof r[i])return r[i];const a=Number(s(n));return r[i][a]}In(Fn,vn),window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={});const Nn=[\"ar\",\"fa\",\"he\",\"ku\",\"ug\"];class Mn{constructor(t={}){this.uiLanguage=t.uiLanguage||\"en\",this.contentLanguage=t.contentLanguage||this.uiLanguage,this.uiLanguageDirection=Vn(this.uiLanguage),this.contentLanguageDirection=Vn(this.contentLanguage),this.t=(t,e)=>this._t(t,e)}get language(){return console.warn(\"locale-deprecated-language-property: The Locale#language property has been deprecated and will be removed in the near future. Please use #uiLanguage and #contentLanguage properties instead.\"),this.uiLanguage}_t(t,e=[]){Array.isArray(e)||(e=[e]),\"string\"==typeof t&&(t={string:t});const n=!!t.plural?e[0]:1;return function(t,e){return t.replace(/%(\\d+)/g,((t,n)=>nt.destroy()))).then((()=>this.plugins.destroy()))}_addEditor(t,e){if(this._contextOwner)throw new _n.a(\"context-addeditor-private-context\");this.editors.add(t),e&&(this._contextOwner=t)}_removeEditor(t){return this.editors.has(t)&&this.editors.remove(t),this._contextOwner===t?this.destroy():Promise.resolve()}_getEditorConfig(){const t={};for(const e of this.config.names())[\"plugins\",\"removePlugins\",\"extraPlugins\"].includes(e)||(t[e]=this.config.get(e));return t}static create(t){return new Promise((e=>{const n=new this(t);e(n.initPlugins().then((()=>n)))}))}}function Ln(t,e){const n=Math.min(t.length,e.length);for(let o=0;ot.data.length)throw new _n.a(\"view-textproxy-wrong-offsetintext\",this);if(n<0||e+n>t.data.length)throw new _n.a(\"view-textproxy-wrong-length\",this);this.data=t.data.substring(e,e+n),this.offsetInText=e}get offsetSize(){return this.data.length}get isPartial(){return this.data.length!==this.textNode.data.length}get parent(){return this.textNode.parent}get root(){return this.textNode.root}get document(){return this.textNode.document}is(t){return\"$textProxy\"===t||\"view:$textProxy\"===t||\"textProxy\"===t||\"view:textProxy\"===t}getAncestors(t={includeSelf:!1,parentFirst:!1}){const e=[];let n=t.includeSelf?this.textNode:this.parent;for(;null!==n;)e[t.parentFirst?\"push\":\"unshift\"](n),n=n.parent;return e}}function Wn(t){return Pn(t)?new Map(t):function(t){const e=new Map;for(const n in t)e.set(n,t[n]);return e}(t)}class Gn{constructor(...t){this._patterns=[],this.add(...t)}add(...t){for(let e of t)(\"string\"==typeof e||e instanceof RegExp)&&(e={name:e}),e.classes&&(\"string\"==typeof e.classes||e.classes instanceof RegExp)&&(e.classes=[e.classes]),this._patterns.push(e)}match(...t){for(const e of t)for(const t of this._patterns){const n=$n(e,t);if(n)return{element:e,pattern:t,match:n}}return null}matchAll(...t){const e=[];for(const n of t)for(const t of this._patterns){const o=$n(n,t);o&&e.push({element:n,pattern:t,match:o})}return e.length>0?e:null}getElementName(){if(1!==this._patterns.length)return null;const t=this._patterns[0],e=t.name;return\"function\"==typeof t||!e||e instanceof RegExp?null:e}}function $n(t,e){if(\"function\"==typeof e)return e(t);const n={};return e.name&&(n.name=function(t,e){if(t instanceof RegExp)return t.test(e);return t===e}(e.name,t.name),!n.name)||e.attributes&&(n.attributes=function(t,e){const n=[];for(const o in t){const i=t[o];if(!e.hasAttribute(o))return null;{const t=e.getAttribute(o);if(!0===i)n.push(o);else if(i instanceof RegExp){if(!i.test(t))return null;n.push(o)}else{if(t!==i)return null;n.push(o)}}}return n}(e.attributes,t),!n.attributes)?null:!(e.classes&&(n.classes=function(t,e){const n=[];for(const o of t)if(o instanceof RegExp){const t=e.getClassNames();for(const e of t)o.test(e)&&n.push(e);if(0===n.length)return null}else{if(!e.hasClass(o))return null;n.push(o)}return n}(e.classes,t),!n.classes))&&(!(e.styles&&(n.styles=function(t,e){const n=[];for(const o in t){const i=t[o];if(!e.hasStyle(o))return null;{const t=e.getStyle(o);if(i instanceof RegExp){if(!i.test(t))return null;n.push(o)}else{if(t!==i)return null;n.push(o)}}}return n}(e.styles,t),!n.styles))&&n)}var Un=function(t){return\"symbol\"==typeof t||f(t)&&\"[object Symbol]\"==m(t)},Jn=/\\.|\\[(?:[^[\\]]*|([\"'])(?:(?!\\1)[^\\\\]|\\\\.)*?\\1)\\]/,Yn=/^\\w*$/;var Qn=function(t,e){if(Ot(t))return!1;var n=typeof t;return!(\"number\"!=n&&\"symbol\"!=n&&\"boolean\"!=n&&null!=t&&!Un(t))||(Yn.test(t)||!Jn.test(t)||null!=e&&t in Object(e))};function Xn(t,e){if(\"function\"!=typeof t||null!=e&&\"function\"!=typeof e)throw new TypeError(\"Expected a function\");var n=function(){var o=arguments,i=e?e.apply(this,o):o[0],r=n.cache;if(r.has(i))return r.get(i);var s=t.apply(this,o);return n.cache=r.set(i,s)||r,s};return n.cache=new(Xn.Cache||wt),n}Xn.Cache=wt;var Zn=Xn;var to=/[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g,eo=/\\\\(\\\\)?/g,no=function(t){var e=Zn(t,(function(t){return 500===n.size&&n.clear(),t})),n=e.cache;return e}((function(t){var e=[];return 46===t.charCodeAt(0)&&e.push(\"\"),t.replace(to,(function(t,n,o,i){e.push(o?i.replace(eo,\"$1\"):n||t)})),e}));var oo=function(t,e){for(var n=-1,o=null==t?0:t.length,i=Array(o);++ni?0:i+e),(n=n>i?i:n)<0&&(n+=i),i=e>n?0:n-e>>>0,e>>>=0;for(var r=Array(i);++o0){if(++e>=800)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(Bo);var Ro=function(t,e){return Io(Do(t,e,xo),t+\"\")};var Fo=function(t,e,n){if(!M(n))return!1;var o=typeof e;return!!(\"number\"==o?Zt(n)&&Vt(e,n.length):\"string\"==o&&e in n)&&y(n[e],t)};var Oo=function(t){return Ro((function(e,n){var o=-1,i=n.length,r=i>1?n[i-1]:void 0,s=i>2?n[2]:void 0;for(r=t.length>3&&\"function\"==typeof r?(i--,r):void 0,s&&Fo(n[0],n[1],s)&&(r=i<3?void 0:r,i=1),e=Object(e);++oe===t));return Array.isArray(e)}set(t,e){if(M(t))for(const[e,n]of Object.entries(t))this._styleProcessor.toNormalizedForm(e,n,this._styles);else this._styleProcessor.toNormalizedForm(t,e,this._styles)}remove(t){const e=Ho(t);fo(this._styles,e),delete this._styles[t],this._cleanEmptyObjectsOnPath(e)}getNormalized(t){return this._styleProcessor.getNormalized(t,this._styles)}toString(){return this.isEmpty?\"\":this._getStylesEntries().map((t=>t.join(\":\"))).sort().join(\";\")+\";\"}getAsString(t){if(this.isEmpty)return;if(this._styles[t]&&!M(this._styles[t]))return this._styles[t];const e=this._styleProcessor.getReducedForm(t,this._styles).find((([e])=>e===t));return Array.isArray(e)?e[1]:void 0}getStyleNames(){if(this.isEmpty)return[];return this._getStylesEntries().map((([t])=>t))}clear(){this._styles={}}_getStylesEntries(){const t=[],e=Object.keys(this._styles);for(const n of e)t.push(...this._styleProcessor.getReducedForm(n,this._styles));return t}_cleanEmptyObjectsOnPath(t){const e=t.split(\".\");if(!(e.length>1))return;const n=e.splice(0,e.length-1).join(\".\"),o=bo(this._styles,n);if(!o)return;!Array.from(Object.keys(o)).length&&this.remove(n)}}class Lo{constructor(){this._normalizers=new Map,this._extractors=new Map,this._reducers=new Map,this._consumables=new Map}toNormalizedForm(t,e,n){if(M(e))Ko(n,Ho(t),e);else if(this._normalizers.has(t)){const o=this._normalizers.get(t),{path:i,value:r}=o(e);Ko(n,i,r)}else Ko(n,t,e)}getNormalized(t,e){if(!t)return No({},e);if(void 0!==e[t])return e[t];if(this._extractors.has(t)){const n=this._extractors.get(t);if(\"string\"==typeof n)return bo(e,n);const o=n(t,e);if(o)return o}return bo(e,Ho(t))}getReducedForm(t,e){const n=this.getNormalized(t,e);if(void 0===n)return[];if(this._reducers.has(t)){return this._reducers.get(t)(n)}return[[t,n]]}getRelatedStyles(t){return this._consumables.get(t)||[]}setNormalizer(t,e){this._normalizers.set(t,e)}setExtractor(t,e){this._extractors.set(t,e)}setReducer(t,e){this._reducers.set(t,e)}setStyleRelation(t,e){this._mapStyleNames(t,e);for(const n of e)this._mapStyleNames(n,[t])}_mapStyleNames(t,e){this._consumables.has(t)||this._consumables.set(t,[]),this._consumables.get(t).push(...e)}}function Ho(t){return t.replace(\"-\",\".\")}function Ko(t,e,n){let o=n;M(n)&&(o=No({},bo(t,e),n)),Vo(t,e,o)}class jo extends Kn{constructor(t,e,n,o){if(super(t),this.name=e,this._attrs=function(t){t=Wn(t);for(const[e,n]of t)null===n?t.delete(e):\"string\"!=typeof n&&t.set(e,String(n));return t}(n),this._children=[],o&&this._insertChild(0,o),this._classes=new Set,this._attrs.has(\"class\")){const t=this._attrs.get(\"class\");qo(this._classes,t),this._attrs.delete(\"class\")}this._styles=new zo(this.document.stylesProcessor),this._attrs.has(\"style\")&&(this._styles.setTo(this._attrs.get(\"style\")),this._attrs.delete(\"style\")),this._customProperties=new Map}get childCount(){return this._children.length}get isEmpty(){return 0===this._children.length}is(t,e=null){return e?e===this.name&&(\"element\"===t||\"view:element\"===t):\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}*getAttributeKeys(){this._classes.size>0&&(yield\"class\"),this._styles.isEmpty||(yield\"style\"),yield*this._attrs.keys()}*getAttributes(){yield*this._attrs.entries(),this._classes.size>0&&(yield[\"class\",this.getAttribute(\"class\")]),this._styles.isEmpty||(yield[\"style\",this.getAttribute(\"style\")])}getAttribute(t){if(\"class\"==t)return this._classes.size>0?[...this._classes].join(\" \"):void 0;if(\"style\"==t){const t=this._styles.toString();return\"\"==t?void 0:t}return this._attrs.get(t)}hasAttribute(t){return\"class\"==t?this._classes.size>0:\"style\"==t?!this._styles.isEmpty:this._attrs.has(t)}isSimilar(t){if(!(t instanceof jo))return!1;if(this===t)return!0;if(this.name!=t.name)return!1;if(this._attrs.size!==t._attrs.size||this._classes.size!==t._classes.size||this._styles.size!==t._styles.size)return!1;for(const[e,n]of this._attrs)if(!t._attrs.has(e)||t._attrs.get(e)!==n)return!1;for(const e of this._classes)if(!t._classes.has(e))return!1;for(const e of this._styles.getStyleNames())if(!t._styles.has(e)||t._styles.getAsString(e)!==this._styles.getAsString(e))return!1;return!0}hasClass(...t){for(const e of t)if(!this._classes.has(e))return!1;return!0}getClassNames(){return this._classes.keys()}getStyle(t){return this._styles.getAsString(t)}getNormalizedStyle(t){return this._styles.getNormalized(t)}getStyleNames(){return this._styles.getStyleNames()}hasStyle(...t){for(const e of t)if(!this._styles.has(e))return!1;return!0}findAncestor(...t){const e=new Gn(...t);let n=this.parent;for(;n;){if(e.match(n))return n;n=n.parent}return null}getCustomProperty(t){return this._customProperties.get(t)}*getCustomProperties(){yield*this._customProperties.entries()}getIdentity(){const t=Array.from(this._classes).sort().join(\",\"),e=this._styles.toString(),n=Array.from(this._attrs).map((t=>`${t[0]}=\"${t[1]}\"`)).sort().join(\" \");return this.name+(\"\"==t?\"\":` class=\"${t}\"`)+(e?` style=\"${e}\"`:\"\")+(\"\"==n?\"\":` ${n}`)}_clone(t=!1){const e=[];if(t)for(const n of this.getChildren())e.push(n._clone(t));const n=new this.constructor(this.document,this.name,this._attrs,e);return n._classes=new Set(this._classes),n._styles.set(this._styles.getNormalized()),n._customProperties=new Map(this._customProperties),n.getFillerOffset=this.getFillerOffset,n}_appendChild(t){return this._insertChild(this.childCount,t)}_insertChild(t,e){this._fireChange(\"children\",this);let n=0;const o=function(t,e){if(\"string\"==typeof e)return[new jn(t,e)];Pn(e)||(e=[e]);return Array.from(e).map((e=>\"string\"==typeof e?new jn(t,e):e instanceof qn?new jn(t,e.data):e))}(this.document,e);for(const e of o)null!==e.parent&&e._remove(),e.parent=this,e.document=this.document,this._children.splice(t,0,e),t++,n++;return n}_removeChildren(t,e=1){this._fireChange(\"children\",this);for(let n=t;n0&&(this._classes.clear(),!0):\"style\"==t?!this._styles.isEmpty&&(this._styles.clear(),!0):this._attrs.delete(t)}_addClass(t){this._fireChange(\"attributes\",this),(t=Array.isArray(t)?t:[t]).forEach((t=>this._classes.add(t)))}_removeClass(t){this._fireChange(\"attributes\",this),(t=Array.isArray(t)?t:[t]).forEach((t=>this._classes.delete(t)))}_setStyle(t,e){this._fireChange(\"attributes\",this),this._styles.set(t,e)}_removeStyle(t){this._fireChange(\"attributes\",this),(t=Array.isArray(t)?t:[t]).forEach((t=>this._styles.remove(t)))}_setCustomProperty(t,e){this._customProperties.set(t,e)}_removeCustomProperty(t){return this._customProperties.delete(t)}}function qo(t,e){const n=e.split(/\\s+/);t.clear(),n.forEach((e=>t.add(e)))}class Wo extends jo{constructor(t,e,n,o){super(t,e,n,o),this.getFillerOffset=Go}is(t,e=null){return e?e===this.name&&(\"containerElement\"===t||\"view:containerElement\"===t||\"element\"===t||\"view:element\"===t):\"containerElement\"===t||\"view:containerElement\"===t||\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}}function Go(){const t=[...this.getChildren()],e=t[this.childCount-1];if(e&&e.is(\"element\",\"br\"))return this.childCount;for(const e of t)if(!e.is(\"uiElement\"))return null;return this.childCount}var $o=Oo((function(t,e){Dt(e,re(e),t)}));const Uo=Symbol(\"observableProperties\"),Jo=Symbol(\"boundObservables\"),Yo=Symbol(\"boundProperties\"),Qo={set(t,e){if(M(t))return void Object.keys(t).forEach((e=>{this.set(e,t[e])}),this);Zo(this);const n=this[Uo];if(t in this&&!n.has(t))throw new _n.a(\"observable-set-cannot-override\",this);Object.defineProperty(this,t,{enumerable:!0,configurable:!0,get:()=>n.get(t),set(e){const o=n.get(t);let i=this.fire(\"set:\"+t,t,e,o);void 0===i&&(i=e),o===i&&n.has(t)||(n.set(t,i),this.fire(\"change:\"+t,t,i,o))}}),this[t]=e},bind(...t){if(!t.length||!ni(t))throw new _n.a(\"observable-bind-wrong-properties\",this);if(new Set(t).size!==t.length)throw new _n.a(\"observable-bind-duplicate-properties\",this);Zo(this);const e=this[Yo];t.forEach((t=>{if(e.has(t))throw new _n.a(\"observable-bind-rebind\",this)}));const n=new Map;return t.forEach((t=>{const o={property:t,to:[]};e.set(t,o),n.set(t,o)})),{to:ti,toMany:ei,_observable:this,_bindProperties:t,_to:[],_bindings:n}},unbind(...t){if(!this[Uo])return;const e=this[Yo],n=this[Jo];if(t.length){if(!ni(t))throw new _n.a(\"observable-unbind-wrong-properties\",this);t.forEach((t=>{const o=e.get(t);if(!o)return;let i,r,s,a;o.to.forEach((t=>{i=t[0],r=t[1],s=n.get(i),a=s[r],a.delete(o),a.size||delete s[r],Object.keys(s).length||(n.delete(i),this.stopListening(i,\"change\"))})),e.delete(t)}))}else n.forEach(((t,e)=>{this.stopListening(e,\"change\")})),n.clear(),e.clear()},decorate(t){const e=this[t];if(!e)throw new _n.a(\"observablemixin-cannot-decorate-undefined\",this,{object:this,methodName:t});this.on(t,((t,n)=>{t.return=e.apply(this,n)})),this[t]=function(...e){return this.fire(t,e)}}};$o(Qo,vn);var Xo=Qo;function Zo(t){t[Uo]||(Object.defineProperty(t,Uo,{value:new Map}),Object.defineProperty(t,Jo,{value:new Map}),Object.defineProperty(t,Yo,{value:new Map}))}function ti(...t){const e=function(...t){if(!t.length)throw new _n.a(\"observable-bind-to-parse-error\",null);const e={to:[]};let n;\"function\"==typeof t[t.length-1]&&(e.callback=t.pop());return t.forEach((t=>{if(\"string\"==typeof t)n.properties.push(t);else{if(\"object\"!=typeof t)throw new _n.a(\"observable-bind-to-parse-error\",null);n={observable:t,properties:[]},e.to.push(n)}})),e}(...t),n=Array.from(this._bindings.keys()),o=n.length;if(!e.callback&&e.to.length>1)throw new _n.a(\"observable-bind-to-no-callback\",this);if(o>1&&e.callback)throw new _n.a(\"observable-bind-to-extra-callback\",this);var i;e.to.forEach((t=>{if(t.properties.length&&t.properties.length!==o)throw new _n.a(\"observable-bind-to-properties-length\",this);t.properties.length||(t.properties=this._bindProperties)})),this._to=e.to,e.callback&&(this._bindings.get(n[0]).callback=e.callback),i=this._observable,this._to.forEach((t=>{const e=i[Jo];let n;e.get(t.observable)||i.listenTo(t.observable,\"change\",((o,r)=>{n=e.get(t.observable)[r],n&&n.forEach((t=>{oi(i,t.property)}))}))})),function(t){let e;t._bindings.forEach(((n,o)=>{t._to.forEach((i=>{e=i.properties[n.callback?0:t._bindProperties.indexOf(o)],n.to.push([i.observable,e]),function(t,e,n,o){const i=t[Jo],r=i.get(n),s=r||{};s[o]||(s[o]=new Set);s[o].add(e),r||i.set(n,s)}(t._observable,n,i.observable,e)}))}))}(this),this._bindProperties.forEach((t=>{oi(this._observable,t)}))}function ei(t,e,n){if(this._bindings.size>1)throw new _n.a(\"observable-bind-to-many-not-one-binding\",this);this.to(...function(t,e){const n=t.map((t=>[t,e]));return Array.prototype.concat.apply([],n)}(t,e),n)}function ni(t){return t.every((t=>\"string\"==typeof t))}function oi(t,e){const n=t[Yo].get(e);let o;n.callback?o=n.callback.apply(t,n.to.map((t=>t[0][t[1]]))):(o=n.to[0],o=o[0][o[1]]),Object.prototype.hasOwnProperty.call(t,e)?t[e]=o:t.set(e,o)}class ii extends Wo{constructor(t,e,n,o){super(t,e,n,o),this.set(\"isReadOnly\",!1),this.set(\"isFocused\",!1),this.bind(\"isReadOnly\").to(t),this.bind(\"isFocused\").to(t,\"isFocused\",(e=>e&&t.selection.editableElement==this)),this.listenTo(t.selection,\"change\",(()=>{this.isFocused=t.isFocused&&t.selection.editableElement==this}))}is(t,e=null){return e?e===this.name&&(\"editableElement\"===t||\"view:editableElement\"===t||\"containerElement\"===t||\"view:containerElement\"===t||\"element\"===t||\"view:element\"===t):\"editableElement\"===t||\"view:editableElement\"===t||\"containerElement\"===t||\"view:containerElement\"===t||\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}destroy(){this.stopListening()}}In(ii,Xo);const ri=Symbol(\"rootName\");class si extends ii{constructor(t,e){super(t,e),this.rootName=\"main\"}is(t,e=null){return e?e===this.name&&(\"rootElement\"===t||\"view:rootElement\"===t||\"editableElement\"===t||\"view:editableElement\"===t||\"containerElement\"===t||\"view:containerElement\"===t||\"element\"===t||\"view:element\"===t):\"rootElement\"===t||\"view:rootElement\"===t||\"editableElement\"===t||\"view:editableElement\"===t||\"containerElement\"===t||\"view:containerElement\"===t||\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}get rootName(){return this.getCustomProperty(ri)}set rootName(t){this._setCustomProperty(ri,t)}set _name(t){this.name=t}}class ai{constructor(t={}){if(!t.boundaries&&!t.startPosition)throw new _n.a(\"view-tree-walker-no-start-position\",null);if(t.direction&&\"forward\"!=t.direction&&\"backward\"!=t.direction)throw new _n.a(\"view-tree-walker-unknown-direction\",t.startPosition,{direction:t.direction});this.boundaries=t.boundaries||null,t.startPosition?this.position=ci._createAt(t.startPosition):this.position=ci._createAt(t.boundaries[\"backward\"==t.direction?\"end\":\"start\"]),this.direction=t.direction||\"forward\",this.singleCharacters=!!t.singleCharacters,this.shallow=!!t.shallow,this.ignoreElementEnd=!!t.ignoreElementEnd,this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null,this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null}[Symbol.iterator](){return this}skip(t){let e,n,o;do{o=this.position,({done:e,value:n}=this.next())}while(!e&&t(n));e||(this.position=o)}next(){return\"forward\"==this.direction?this._next():this._previous()}_next(){let t=this.position.clone();const e=this.position,n=t.parent;if(null===n.parent&&t.offset===n.childCount)return{done:!0};if(n===this._boundaryEndParent&&t.offset==this.boundaries.end.offset)return{done:!0};let o;if(n instanceof jn){if(t.isAtEnd)return this.position=ci._createAfter(n),this._next();o=n.data[t.offset]}else o=n.getChild(t.offset);if(o instanceof jo)return this.shallow?t.offset++:t=new ci(o,0),this.position=t,this._formatReturnValue(\"elementStart\",o,e,t,1);if(o instanceof jn){if(this.singleCharacters)return t=new ci(o,0),this.position=t,this._next();{let n,i=o.data.length;return o==this._boundaryEndParent?(i=this.boundaries.end.offset,n=new qn(o,0,i),t=ci._createAfter(n)):(n=new qn(o,0,o.data.length),t.offset++),this.position=t,this._formatReturnValue(\"text\",n,e,t,i)}}if(\"string\"==typeof o){let o;if(this.singleCharacters)o=1;else{o=(n===this._boundaryEndParent?this.boundaries.end.offset:n.data.length)-t.offset}const i=new qn(n,t.offset,o);return t.offset+=o,this.position=t,this._formatReturnValue(\"text\",i,e,t,o)}return t=ci._createAfter(n),this.position=t,this.ignoreElementEnd?this._next():this._formatReturnValue(\"elementEnd\",n,e,t)}_previous(){let t=this.position.clone();const e=this.position,n=t.parent;if(null===n.parent&&0===t.offset)return{done:!0};if(n==this._boundaryStartParent&&t.offset==this.boundaries.start.offset)return{done:!0};let o;if(n instanceof jn){if(t.isAtStart)return this.position=ci._createBefore(n),this._previous();o=n.data[t.offset-1]}else o=n.getChild(t.offset-1);if(o instanceof jo)return this.shallow?(t.offset--,this.position=t,this._formatReturnValue(\"elementStart\",o,e,t,1)):(t=new ci(o,o.childCount),this.position=t,this.ignoreElementEnd?this._previous():this._formatReturnValue(\"elementEnd\",o,e,t));if(o instanceof jn){if(this.singleCharacters)return t=new ci(o,o.data.length),this.position=t,this._previous();{let n,i=o.data.length;if(o==this._boundaryStartParent){const e=this.boundaries.start.offset;n=new qn(o,e,o.data.length-e),i=n.data.length,t=ci._createBefore(n)}else n=new qn(o,0,o.data.length),t.offset--;return this.position=t,this._formatReturnValue(\"text\",n,e,t,i)}}if(\"string\"==typeof o){let o;if(this.singleCharacters)o=1;else{const e=n===this._boundaryStartParent?this.boundaries.start.offset:0;o=t.offset-e}t.offset-=o;const i=new qn(n,t.offset,o);return this.position=t,this._formatReturnValue(\"text\",i,e,t,o)}return t=ci._createBefore(n),this.position=t,this._formatReturnValue(\"elementStart\",n,e,t,1)}_formatReturnValue(t,e,n,o,i){return e instanceof qn&&(e.offsetInText+e.data.length==e.textNode.data.length&&(\"forward\"!=this.direction||this.boundaries&&this.boundaries.end.isEqual(this.position)?n=ci._createAfter(e.textNode):(o=ci._createAfter(e.textNode),this.position=o)),0===e.offsetInText&&(\"backward\"!=this.direction||this.boundaries&&this.boundaries.start.isEqual(this.position)?n=ci._createBefore(e.textNode):(o=ci._createBefore(e.textNode),this.position=o))),{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:o,length:i}}}}class ci{constructor(t,e){this.parent=t,this.offset=e}get nodeAfter(){return this.parent.is(\"$text\")?null:this.parent.getChild(this.offset)||null}get nodeBefore(){return this.parent.is(\"$text\")?null:this.parent.getChild(this.offset-1)||null}get isAtStart(){return 0===this.offset}get isAtEnd(){const t=this.parent.is(\"$text\")?this.parent.data.length:this.parent.childCount;return this.offset===t}get root(){return this.parent.root}get editableElement(){let t=this.parent;for(;!(t instanceof ii);){if(!t.parent)return null;t=t.parent}return t}getShiftedBy(t){const e=ci._createAt(this),n=e.offset+t;return e.offset=n<0?0:n,e}getLastMatchingPosition(t,e={}){e.startPosition=this;const n=new ai(e);return n.skip(t),n.position}getAncestors(){return this.parent.is(\"documentFragment\")?[this.parent]:this.parent.getAncestors({includeSelf:!0})}getCommonAncestor(t){const e=this.getAncestors(),n=t.getAncestors();let o=0;for(;e[o]==n[o]&&e[o];)o++;return 0===o?null:e[o-1]}is(t){return\"position\"===t||\"view:position\"===t}isEqual(t){return this.parent==t.parent&&this.offset==t.offset}isBefore(t){return\"before\"==this.compareWith(t)}isAfter(t){return\"after\"==this.compareWith(t)}compareWith(t){if(this.root!==t.root)return\"different\";if(this.isEqual(t))return\"same\";const e=this.parent.is(\"node\")?this.parent.getPath():[],n=t.parent.is(\"node\")?t.parent.getPath():[];e.push(this.offset),n.push(t.offset);const o=Ln(e,n);switch(o){case\"prefix\":return\"before\";case\"extension\":return\"after\";default:return e[o]0?new this(n,o):new this(o,n)}static _createIn(t){return this._createFromParentsAndOffsets(t,0,t,t.childCount)}static _createOn(t){const e=t.is(\"$textProxy\")?t.offsetSize:1;return this._createFromPositionAndShift(ci._createBefore(t),e)}}function di(t){return!(!t.item.is(\"attributeElement\")&&!t.item.is(\"uiElement\"))}function hi(t){let e=0;for(const n of t)e++;return e}class ui{constructor(t=null,e,n){this._ranges=[],this._lastRangeBackward=!1,this._isFake=!1,this._fakeSelectionLabel=\"\",this.setTo(t,e,n)}get isFake(){return this._isFake}get fakeSelectionLabel(){return this._fakeSelectionLabel}get anchor(){if(!this._ranges.length)return null;const t=this._ranges[this._ranges.length-1];return(this._lastRangeBackward?t.end:t.start).clone()}get focus(){if(!this._ranges.length)return null;const t=this._ranges[this._ranges.length-1];return(this._lastRangeBackward?t.start:t.end).clone()}get isCollapsed(){return 1===this.rangeCount&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}get editableElement(){return this.anchor?this.anchor.editableElement:null}*getRanges(){for(const t of this._ranges)yield t.clone()}getFirstRange(){let t=null;for(const e of this._ranges)t&&!e.start.isBefore(t.start)||(t=e);return t?t.clone():null}getLastRange(){let t=null;for(const e of this._ranges)t&&!e.end.isAfter(t.end)||(t=e);return t?t.clone():null}getFirstPosition(){const t=this.getFirstRange();return t?t.start.clone():null}getLastPosition(){const t=this.getLastRange();return t?t.end.clone():null}isEqual(t){if(this.isFake!=t.isFake)return!1;if(this.isFake&&this.fakeSelectionLabel!=t.fakeSelectionLabel)return!1;if(this.rangeCount!=t.rangeCount)return!1;if(0===this.rangeCount)return!0;if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus))return!1;for(const e of this._ranges){let n=!1;for(const o of t._ranges)if(e.isEqual(o)){n=!0;break}if(!n)return!1}return!0}isSimilar(t){if(this.isBackward!=t.isBackward)return!1;const e=hi(this.getRanges());if(e!=hi(t.getRanges()))return!1;if(0==e)return!0;for(let e of this.getRanges()){e=e.getTrimmed();let n=!1;for(let o of t.getRanges())if(o=o.getTrimmed(),e.start.isEqual(o.start)&&e.end.isEqual(o.end)){n=!0;break}if(!n)return!1}return!0}getSelectedElement(){return 1!==this.rangeCount?null:this.getFirstRange().getContainedElement()}setTo(t,e,n){if(null===t)this._setRanges([]),this._setFakeOptions(e);else if(t instanceof ui||t instanceof mi)this._setRanges(t.getRanges(),t.isBackward),this._setFakeOptions({fake:t.isFake,label:t.fakeSelectionLabel});else if(t instanceof li)this._setRanges([t],e&&e.backward),this._setFakeOptions(e);else if(t instanceof ci)this._setRanges([new li(t)]),this._setFakeOptions(e);else if(t instanceof Kn){const o=!!n&&!!n.backward;let i;if(void 0===e)throw new _n.a(\"view-selection-setto-required-second-parameter\",this);i=\"in\"==e?li._createIn(t):\"on\"==e?li._createOn(t):new li(ci._createAt(t,e)),this._setRanges([i],o),this._setFakeOptions(n)}else{if(!Pn(t))throw new _n.a(\"view-selection-setto-not-selectable\",this);this._setRanges(t,e&&e.backward),this._setFakeOptions(e)}this.fire(\"change\")}setFocus(t,e){if(null===this.anchor)throw new _n.a(\"view-selection-setfocus-no-ranges\",this);const n=ci._createAt(t,e);if(\"same\"==n.compareWith(this.focus))return;const o=this.anchor;this._ranges.pop(),\"before\"==n.compareWith(o)?this._addRange(new li(n,o),!0):this._addRange(new li(o,n)),this.fire(\"change\")}is(t){return\"selection\"===t||\"view:selection\"===t}_setRanges(t,e=!1){t=Array.from(t),this._ranges=[];for(const e of t)this._addRange(e);this._lastRangeBackward=!!e}_setFakeOptions(t={}){this._isFake=!!t.fake,this._fakeSelectionLabel=t.fake&&t.label||\"\"}_addRange(t,e=!1){if(!(t instanceof li))throw new _n.a(\"view-selection-add-range-not-range\",this);this._pushRange(t),this._lastRangeBackward=!!e}_pushRange(t){for(const e of this._ranges)if(t.isIntersecting(e))throw new _n.a(\"view-selection-range-intersects\",this,{addedRange:t,intersectingRange:e});this._ranges.push(new li(t.start,t.end))}}In(ui,vn);class mi{constructor(t=null,e,n){this._selection=new ui,this._selection.delegate(\"change\").to(this),this._selection.setTo(t,e,n)}get isFake(){return this._selection.isFake}get fakeSelectionLabel(){return this._selection.fakeSelectionLabel}get anchor(){return this._selection.anchor}get focus(){return this._selection.focus}get isCollapsed(){return this._selection.isCollapsed}get rangeCount(){return this._selection.rangeCount}get isBackward(){return this._selection.isBackward}get editableElement(){return this._selection.editableElement}get _ranges(){return this._selection._ranges}*getRanges(){yield*this._selection.getRanges()}getFirstRange(){return this._selection.getFirstRange()}getLastRange(){return this._selection.getLastRange()}getFirstPosition(){return this._selection.getFirstPosition()}getLastPosition(){return this._selection.getLastPosition()}getSelectedElement(){return this._selection.getSelectedElement()}isEqual(t){return this._selection.isEqual(t)}isSimilar(t){return this._selection.isSimilar(t)}is(t){return\"selection\"===t||\"documentSelection\"==t||\"view:selection\"==t||\"view:documentSelection\"==t}_setTo(t,e,n){this._selection.setTo(t,e,n)}_setFocus(t,e){this._selection.setFocus(t,e)}}In(mi,vn);class gi{constructor(t){this.selection=new mi,this.roots=new Rn({idProperty:\"rootName\"}),this.stylesProcessor=t,this.set(\"isReadOnly\",!1),this.set(\"isFocused\",!1),this.set(\"isComposing\",!1),this._postFixers=new Set}getRoot(t=\"main\"){return this.roots.get(t)}registerPostFixer(t){this._postFixers.add(t)}destroy(){this.roots.map((t=>t.destroy())),this.stopListening()}_callPostFixers(t){let e=!1;do{for(const n of this._postFixers)if(e=n(t),e)break}while(e)}}In(gi,Xo);class pi extends jo{constructor(t,e,n,o){super(t,e,n,o),this.getFillerOffset=fi,this._priority=10,this._id=null,this._clonesGroup=null}get priority(){return this._priority}get id(){return this._id}getElementsWithSameId(){if(null===this.id)throw new _n.a(\"attribute-element-get-elements-with-same-id-no-id\",this);return new Set(this._clonesGroup)}is(t,e=null){return e?e===this.name&&(\"attributeElement\"===t||\"view:attributeElement\"===t||\"element\"===t||\"view:element\"===t):\"attributeElement\"===t||\"view:attributeElement\"===t||\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}isSimilar(t){return null!==this.id||null!==t.id?this.id===t.id:super.isSimilar(t)&&this.priority==t.priority}_clone(t){const e=super._clone(t);return e._priority=this._priority,e._id=this._id,e}}function fi(){if(bi(this))return null;let t=this.parent;for(;t&&t.is(\"attributeElement\");){if(bi(t)>1)return null;t=t.parent}return!t||bi(t)>1?null:this.childCount}function bi(t){return Array.from(t.getChildren()).filter((t=>!t.is(\"uiElement\"))).length}pi.DEFAULT_PRIORITY=10;class ki extends jo{constructor(t,e,n,o){super(t,e,n,o),this.getFillerOffset=wi}is(t,e=null){return e?e===this.name&&(\"emptyElement\"===t||\"view:emptyElement\"===t||\"element\"===t||\"view:element\"===t):\"emptyElement\"===t||\"view:emptyElement\"===t||\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}_insertChild(t,e){if(e&&(e instanceof Kn||Array.from(e).length>0))throw new _n.a(\"view-emptyelement-cannot-add\",[this,e])}}function wi(){return null}const _i=navigator.userAgent.toLowerCase();var Ci={isMac:function(t){return t.indexOf(\"macintosh\")>-1}(_i),isGecko:function(t){return!!t.match(/gecko\\/\\d+/)}(_i),isSafari:function(t){return t.indexOf(\" applewebkit/\")>-1&&-1===t.indexOf(\"chrome\")}(_i),isAndroid:function(t){return t.indexOf(\"android\")>-1}(_i),isBlink:function(t){return t.indexOf(\"chrome/\")>-1&&t.indexOf(\"edge/\")<0}(_i),features:{isRegExpUnicodePropertySupported:function(){let t=!1;try{t=0===\"ć\".search(new RegExp(\"[\\\\p{L}]\",\"u\"))}catch(t){}return t}()}};const Ai={\"⌘\":\"ctrl\",\"⇧\":\"shift\",\"⌥\":\"alt\"},vi={ctrl:\"⌘\",shift:\"⇧\",alt:\"⌥\"},yi=function(){const t={arrowleft:37,arrowup:38,arrowright:39,arrowdown:40,backspace:8,delete:46,enter:13,space:32,esc:27,tab:9,ctrl:1114112,cmd:1114112,shift:2228224,alt:4456448};for(let e=65;e<=90;e++){const n=String.fromCharCode(e);t[n.toLowerCase()]=e}for(let e=48;e<=57;e++)t[e-48]=e;for(let e=112;e<=123;e++)t[\"f\"+(e-111)]=e;return t}();function xi(t){let e;if(\"string\"==typeof t){if(e=yi[t.toLowerCase()],!e)throw new _n.a(\"keyboard-unknown-key\",null,{key:t})}else e=t.keyCode+(t.altKey?yi.alt:0)+(t.ctrlKey?yi.ctrl:0)+(t.shiftKey?yi.shift:0);return e}function Ei(t){return\"string\"==typeof t&&(t=Pi(t)),t.map((t=>\"string\"==typeof t?xi(t):t)).reduce(((t,e)=>e+t),0)}function Si(t){return Ci.isMac?Pi(t).map((t=>vi[t.toLowerCase()]||t)).reduce(((t,e)=>t.slice(-1)in Ai?t+e:t+\"+\"+e)):t}function Di(t){return t==yi.arrowright||t==yi.arrowleft||t==yi.arrowup||t==yi.arrowdown}function Ti(t,e){const n=\"ltr\"===e;switch(t){case yi.arrowleft:return n?\"left\":\"right\";case yi.arrowright:return n?\"right\":\"left\";case yi.arrowup:return\"up\";case yi.arrowdown:return\"down\"}}function Bi(t,e){const n=Ti(t,e);return\"down\"===n||\"right\"===n}function Pi(t){return t.split(/\\s*\\+\\s*/)}class Ii extends jo{constructor(t,e,n,o){super(t,e,n,o),this.getFillerOffset=Fi}is(t,e=null){return e?e===this.name&&(\"uiElement\"===t||\"view:uiElement\"===t||\"element\"===t||\"view:element\"===t):\"uiElement\"===t||\"view:uiElement\"===t||\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}_insertChild(t,e){if(e&&(e instanceof Kn||Array.from(e).length>0))throw new _n.a(\"view-uielement-cannot-add\",this)}render(t){return this.toDomElement(t)}toDomElement(t){const e=t.createElement(this.name);for(const t of this.getAttributeKeys())e.setAttribute(t,this.getAttribute(t));return e}}function Ri(t){t.document.on(\"keydown\",((e,n)=>function(t,e,n){if(e.keyCode==yi.arrowright){const t=e.domTarget.ownerDocument.defaultView.getSelection(),o=1==t.rangeCount&&t.getRangeAt(0).collapsed;if(o||e.shiftKey){const e=t.focusNode,i=t.focusOffset,r=n.domPositionToView(e,i);if(null===r)return;let s=!1;const a=r.getLastMatchingPosition((t=>(t.item.is(\"uiElement\")&&(s=!0),!(!t.item.is(\"uiElement\")&&!t.item.is(\"attributeElement\")))));if(s){const e=n.viewPositionToDom(a);o?t.collapse(e.parent,e.offset):t.extend(e.parent,e.offset)}}}}(0,n,t.domConverter)))}function Fi(){return null}class Oi extends jo{constructor(t,e,n,o){super(t,e,n,o),this.getFillerOffset=Ni}is(t,e=null){return e?e===this.name&&(\"rawElement\"===t||\"view:rawElement\"===t||\"element\"===t||\"view:element\"===t):\"rawElement\"===t||\"view:rawElement\"===t||t===this.name||t===\"view:\"+this.name||\"element\"===t||\"view:element\"===t||\"node\"===t||\"view:node\"===t}_insertChild(t,e){if(e&&(e instanceof Kn||Array.from(e).length>0))throw new _n.a(\"view-rawelement-cannot-add\",[this,e])}}function Ni(){return null}class Mi{constructor(t,e){this.document=t,this._children=[],e&&this._insertChild(0,e)}[Symbol.iterator](){return this._children[Symbol.iterator]()}get childCount(){return this._children.length}get isEmpty(){return 0===this.childCount}get root(){return this}get parent(){return null}is(t){return\"documentFragment\"===t||\"view:documentFragment\"===t}_appendChild(t){return this._insertChild(this.childCount,t)}getChild(t){return this._children[t]}getChildIndex(t){return this._children.indexOf(t)}getChildren(){return this._children[Symbol.iterator]()}_insertChild(t,e){this._fireChange(\"children\",this);let n=0;const o=function(t,e){if(\"string\"==typeof e)return[new jn(t,e)];Pn(e)||(e=[e]);return Array.from(e).map((e=>\"string\"==typeof e?new jn(t,e):e instanceof qn?new jn(t,e.data):e))}(this.document,e);for(const e of o)null!==e.parent&&e._remove(),e.parent=this,this._children.splice(t,0,e),t++,n++;return n}_removeChildren(t,e=1){this._fireChange(\"children\",this);for(let n=t;n{}),o}setAttribute(t,e,n){n._setAttribute(t,e)}removeAttribute(t,e){e._removeAttribute(t)}addClass(t,e){e._addClass(t)}removeClass(t,e){e._removeClass(t)}setStyle(t,e,n){A(t)&&void 0===n&&(n=e),n._setStyle(t,e)}removeStyle(t,e){e._removeStyle(t)}setCustomProperty(t,e,n){n._setCustomProperty(t,e)}removeCustomProperty(t,e){return e._removeCustomProperty(t)}breakAttributes(t){return t instanceof ci?this._breakAttributes(t):this._breakAttributesRange(t)}breakContainer(t){const e=t.parent;if(!e.is(\"containerElement\"))throw new _n.a(\"view-writer-break-non-container-element\",this.document);if(!e.parent)throw new _n.a(\"view-writer-break-root\",this.document);if(t.isAtStart)return ci._createBefore(e);if(!t.isAtEnd){const n=e._clone(!1);this.insert(ci._createAfter(e),n);const o=new li(t,ci._createAt(e,\"end\")),i=new ci(n,0);this.move(o,i)}return ci._createAfter(e)}mergeAttributes(t){const e=t.offset,n=t.parent;if(n.is(\"$text\"))return t;if(n.is(\"attributeElement\")&&0===n.childCount){const t=n.parent,e=n.index;return n._remove(),this._removeFromClonedElementsGroup(n),this.mergeAttributes(new ci(t,e))}const o=n.getChild(e-1),i=n.getChild(e);if(!o||!i)return t;if(o.is(\"$text\")&&i.is(\"$text\"))return ji(o,i);if(o.is(\"attributeElement\")&&i.is(\"attributeElement\")&&o.isSimilar(i)){const t=o.childCount;return o._appendChild(i.getChildren()),i._remove(),this._removeFromClonedElementsGroup(i),this.mergeAttributes(new ci(o,t))}return t}mergeContainers(t){const e=t.nodeBefore,n=t.nodeAfter;if(!(e&&n&&e.is(\"containerElement\")&&n.is(\"containerElement\")))throw new _n.a(\"view-writer-merge-containers-invalid-position\",this.document);const o=e.getChild(e.childCount-1),i=o instanceof jn?ci._createAt(o,\"end\"):ci._createAt(e,\"end\");return this.move(li._createIn(n),ci._createAt(e,\"end\")),this.remove(li._createOn(n)),i}insert(t,e){qi(e=Pn(e)?[...e]:[e],this.document);const n=zi(t);if(!n)throw new _n.a(\"view-writer-invalid-position-container\",this.document);const o=this._breakAttributes(t,!0),i=n._insertChild(o.offset,e);for(const t of e)this._addToClonedElementsGroup(t);const r=o.getShiftedBy(i),s=this.mergeAttributes(o);if(0===i)return new li(s,s);{s.isEqual(o)||r.offset--;const t=this.mergeAttributes(r);return new li(s,t)}}remove(t){const e=t instanceof li?t:li._createOn(t);if($i(e,this.document),e.isCollapsed)return new Mi(this.document);const{start:n,end:o}=this._breakAttributesRange(e,!0),i=n.parent,r=o.offset-n.offset,s=i._removeChildren(n.offset,r);for(const t of s)this._removeFromClonedElementsGroup(t);const a=this.mergeAttributes(n);return e.start=a,e.end=a.clone(),new Mi(this.document,s)}clear(t,e){$i(t,this.document);const n=t.getWalker({direction:\"backward\",ignoreElementEnd:!0});for(const o of n){const n=o.item;let i;if(n.is(\"element\")&&e.isSimilar(n))i=li._createOn(n);else if(!o.nextPosition.isAfter(t.start)&&n.is(\"$textProxy\")){const t=n.getAncestors().find((t=>t.is(\"element\")&&e.isSimilar(t)));t&&(i=li._createIn(t))}i&&(i.end.isAfter(t.end)&&(i.end=t.end),i.start.isBefore(t.start)&&(i.start=t.start),this.remove(i))}}move(t,e){let n;if(e.isAfter(t.end)){const o=(e=this._breakAttributes(e,!0)).parent,i=o.childCount;t=this._breakAttributesRange(t,!0),n=this.remove(t),e.offset+=o.childCount-i}else n=this.remove(t);return this.insert(e,n)}wrap(t,e){if(!(e instanceof pi))throw new _n.a(\"view-writer-wrap-invalid-attribute\",this.document);if($i(t,this.document),t.isCollapsed){let o=t.start;o.parent.is(\"element\")&&(n=o.parent,!Array.from(n.getChildren()).some((t=>!t.is(\"uiElement\"))))&&(o=o.getLastMatchingPosition((t=>t.item.is(\"uiElement\")))),o=this._wrapPosition(o,e);const i=this.document.selection;return i.isCollapsed&&i.getFirstPosition().isEqual(t.start)&&this.setSelection(o),new li(o)}return this._wrapRange(t,e);var n}unwrap(t,e){if(!(e instanceof pi))throw new _n.a(\"view-writer-unwrap-invalid-attribute\",this.document);if($i(t,this.document),t.isCollapsed)return t;const{start:n,end:o}=this._breakAttributesRange(t,!0),i=n.parent,r=this._unwrapChildren(i,n.offset,o.offset,e),s=this.mergeAttributes(r.start);s.isEqual(r.start)||r.end.offset--;const a=this.mergeAttributes(r.end);return new li(s,a)}rename(t,e){const n=new Wo(this.document,t,e.getAttributes());return this.insert(ci._createAfter(e),n),this.move(li._createIn(e),ci._createAt(n,0)),this.remove(li._createOn(e)),n}clearClonedElementsGroup(t){this._cloneGroups.delete(t)}createPositionAt(t,e){return ci._createAt(t,e)}createPositionAfter(t){return ci._createAfter(t)}createPositionBefore(t){return ci._createBefore(t)}createRange(t,e){return new li(t,e)}createRangeOn(t){return li._createOn(t)}createRangeIn(t){return li._createIn(t)}createSelection(t,e,n){return new ui(t,e,n)}_wrapChildren(t,e,n,o){let i=e;const r=[];for(;i!1,t.parent._insertChild(t.offset,n);const o=new li(t,t.getShiftedBy(1));this.wrap(o,e);const i=new ci(n.parent,n.index);n._remove();const r=i.nodeBefore,s=i.nodeAfter;return r instanceof jn&&s instanceof jn?ji(r,s):Hi(i)}_wrapAttributeElement(t,e){if(!Ui(t,e))return!1;if(t.name!==e.name||t.priority!==e.priority)return!1;for(const n of t.getAttributeKeys())if(\"class\"!==n&&\"style\"!==n&&e.hasAttribute(n)&&e.getAttribute(n)!==t.getAttribute(n))return!1;for(const n of t.getStyleNames())if(e.hasStyle(n)&&e.getStyle(n)!==t.getStyle(n))return!1;for(const n of t.getAttributeKeys())\"class\"!==n&&\"style\"!==n&&(e.hasAttribute(n)||this.setAttribute(n,t.getAttribute(n),e));for(const n of t.getStyleNames())e.hasStyle(n)||this.setStyle(n,t.getStyle(n),e);for(const n of t.getClassNames())e.hasClass(n)||this.addClass(n,e);return!0}_unwrapAttributeElement(t,e){if(!Ui(t,e))return!1;if(t.name!==e.name||t.priority!==e.priority)return!1;for(const n of t.getAttributeKeys())if(\"class\"!==n&&\"style\"!==n&&(!e.hasAttribute(n)||e.getAttribute(n)!==t.getAttribute(n)))return!1;if(!e.hasClass(...t.getClassNames()))return!1;for(const n of t.getStyleNames())if(!e.hasStyle(n)||e.getStyle(n)!==t.getStyle(n))return!1;for(const n of t.getAttributeKeys())\"class\"!==n&&\"style\"!==n&&this.removeAttribute(n,e);return this.removeClass(Array.from(t.getClassNames()),e),this.removeStyle(Array.from(t.getStyleNames()),e),!0}_breakAttributesRange(t,e=!1){const n=t.start,o=t.end;if($i(t,this.document),t.isCollapsed){const n=this._breakAttributes(t.start,e);return new li(n,n)}const i=this._breakAttributes(o,e),r=i.parent.childCount,s=this._breakAttributes(n,e);return i.offset+=i.parent.childCount-r,new li(s,i)}_breakAttributes(t,e=!1){const n=t.offset,o=t.parent;if(t.parent.is(\"emptyElement\"))throw new _n.a(\"view-writer-cannot-break-empty-element\",this.document);if(t.parent.is(\"uiElement\"))throw new _n.a(\"view-writer-cannot-break-ui-element\",this.document);if(t.parent.is(\"rawElement\"))throw new _n.a(\"view-writer-cannot-break-raw-element\",this.document);if(!e&&o.is(\"$text\")&&Gi(o.parent))return t.clone();if(Gi(o))return t.clone();if(o.is(\"$text\"))return this._breakAttributes(Ki(t),e);if(n==o.childCount){const t=new ci(o.parent,o.index+1);return this._breakAttributes(t,e)}if(0===n){const t=new ci(o.parent,o.index);return this._breakAttributes(t,e)}{const t=o.index+1,i=o._clone();o.parent._insertChild(t,i),this._addToClonedElementsGroup(i);const r=o.childCount-n,s=o._removeChildren(n,r);i._appendChild(s);const a=new ci(o.parent,t);return this._breakAttributes(a,e)}}_addToClonedElementsGroup(t){if(!t.root.is(\"rootElement\"))return;if(t.is(\"element\"))for(const e of t.getChildren())this._addToClonedElementsGroup(e);const e=t.id;if(!e)return;let n=this._cloneGroups.get(e);n||(n=new Set,this._cloneGroups.set(e,n)),n.add(t),t._clonesGroup=n}_removeFromClonedElementsGroup(t){if(t.is(\"element\"))for(const e of t.getChildren())this._removeFromClonedElementsGroup(e);const e=t.id;if(!e)return;const n=this._cloneGroups.get(e);n&&n.delete(t)}}function zi(t){let e=t.parent;for(;!Gi(e);){if(!e)return;e=e.parent}return e}function Li(t,e){return t.prioritye.priority)&&t.getIdentity()n instanceof t)))throw new _n.a(\"view-writer-insert-invalid-node-type\",e);n.is(\"$text\")||qi(n.getChildren(),e)}}const Wi=[jn,pi,Wo,ki,Oi,Ii];function Gi(t){return t&&(t.is(\"containerElement\")||t.is(\"documentFragment\"))}function $i(t,e){const n=zi(t.start),o=zi(t.end);if(!n||!o||n!==o)throw new _n.a(\"view-writer-invalid-range-container\",e)}function Ui(t,e){return null===t.id&&null===e.id}function Ji(t){return\"[object Text]\"==Object.prototype.toString.call(t)}const Yi=t=>t.createTextNode(\" \"),Qi=t=>{const e=t.createElement(\"br\");return e.dataset.ckeFiller=!0,e},Xi=(()=>{let t=\"\";for(let e=0;e<7;e++)t+=\"​\";return t})();function Zi(t){return Ji(t)&&t.data.substr(0,7)===Xi}function tr(t){return 7==t.data.length&&Zi(t)}function er(t){return Zi(t)?t.data.slice(7):t.data}function nr(t,e){if(e.keyCode==yi.arrowleft){const t=e.domTarget.ownerDocument.defaultView.getSelection();if(1==t.rangeCount&&t.getRangeAt(0).collapsed){const e=t.getRangeAt(0).startContainer,n=t.getRangeAt(0).startOffset;Zi(e)&&n<=7&&t.collapse(e,0)}}}function or(t,e,n,o=!1){n=n||function(t,e){return t===e},Array.isArray(t)||(t=Array.prototype.slice.call(t)),Array.isArray(e)||(e=Array.prototype.slice.call(e));const i=function(t,e,n){const o=ir(t,e,n);if(-1===o)return{firstIndex:-1,lastIndexOld:-1,lastIndexNew:-1};const i=rr(t,o),r=rr(e,o),s=ir(i,r,n),a=t.length-s,c=e.length-s;return{firstIndex:o,lastIndexOld:a,lastIndexNew:c}}(t,e,n);return o?function(t,e){const{firstIndex:n,lastIndexOld:o,lastIndexNew:i}=t;if(-1===n)return Array(e).fill(\"equal\");let r=[];n>0&&(r=r.concat(Array(n).fill(\"equal\")));i-n>0&&(r=r.concat(Array(i-n).fill(\"insert\")));o-n>0&&(r=r.concat(Array(o-n).fill(\"delete\")));i0&&n.push({index:o,type:\"insert\",values:t.slice(o,r)});i-o>0&&n.push({index:o+(r-o),type:\"delete\",howMany:i-o});return n}(e,i)}function ir(t,e,n){for(let o=0;o200||i>200||o+i>300)return sr.fastDiff(t,e,n,!0);let r,s;if(il?-1:1;d[o+u]&&(d[o]=d[o+u].slice(0)),d[o]||(d[o]=[]),d[o].push(i>l?r:s);let m=Math.max(i,l),g=m-o;for(;gl;m--)h[m]=u(m);h[l]=u(l),g++}while(h[l]!==c);return d[l].slice(1)}function ar(t,e,n){t.insertBefore(n,t.childNodes[e]||null)}function cr(t){const e=t.parentNode;e&&e.removeChild(t)}function lr(t){if(t){if(t.defaultView)return t instanceof t.defaultView.Document;if(t.ownerDocument&&t.ownerDocument.defaultView)return t instanceof t.ownerDocument.defaultView.Node}return!1}sr.fastDiff=or;class dr{constructor(t,e){this.domDocuments=new Set,this.domConverter=t,this.markedAttributes=new Set,this.markedChildren=new Set,this.markedTexts=new Set,this.selection=e,this.isFocused=!1,this._inlineFiller=null,this._fakeSelectionContainer=null}markToSync(t,e){if(\"text\"===t)this.domConverter.mapViewToDom(e.parent)&&this.markedTexts.add(e);else{if(!this.domConverter.mapViewToDom(e))return;if(\"attributes\"===t)this.markedAttributes.add(e);else{if(\"children\"!==t)throw new _n.a(\"view-renderer-unknown-type\",this);this.markedChildren.add(e)}}}render(){let t;for(const t of this.markedChildren)this._updateChildrenMappings(t);this._inlineFiller&&!this._isSelectionInInlineFiller()&&this._removeInlineFiller(),this._inlineFiller?t=this._getInlineFillerPosition():this._needsInlineFillerAtSelection()&&(t=this.selection.getFirstPosition(),this.markedChildren.add(t.parent));for(const t of this.markedAttributes)this._updateAttrs(t);for(const e of this.markedChildren)this._updateChildren(e,{inlineFillerPosition:t});for(const e of this.markedTexts)!this.markedChildren.has(e.parent)&&this.domConverter.mapViewToDom(e.parent)&&this._updateText(e,{inlineFillerPosition:t});if(t){const e=this.domConverter.viewPositionToDom(t),n=e.parent.ownerDocument;Zi(e.parent)?this._inlineFiller=e.parent:this._inlineFiller=hr(n,e.parent,e.offset)}else this._inlineFiller=null;this._updateSelection(),this._updateFocus(),this.markedTexts.clear(),this.markedAttributes.clear(),this.markedChildren.clear()}_updateChildrenMappings(t){const e=this.domConverter.mapViewToDom(t);if(!e)return;const n=this.domConverter.mapViewToDom(t).childNodes,o=Array.from(this.domConverter.viewChildrenToDom(t,e.ownerDocument,{withChildren:!1})),i=this._diffNodeLists(n,o),r=this._findReplaceActions(i,n,o);if(-1!==r.indexOf(\"replace\")){const e={equal:0,insert:0,delete:0};for(const i of r)if(\"replace\"===i){const i=e.equal+e.insert,r=e.equal+e.delete,s=t.getChild(i);!s||s.is(\"uiElement\")||s.is(\"rawElement\")||this._updateElementMappings(s,n[r]),cr(o[i]),e.equal++}else e[i]++}}_updateElementMappings(t,e){this.domConverter.unbindDomElement(e),this.domConverter.bindElements(e,t),this.markedChildren.add(t),this.markedAttributes.add(t)}_getInlineFillerPosition(){const t=this.selection.getFirstPosition();return t.parent.is(\"$text\")?ci._createBefore(this.selection.getFirstPosition().parent):t}_isSelectionInInlineFiller(){if(1!=this.selection.rangeCount||!this.selection.isCollapsed)return!1;const t=this.selection.getFirstPosition(),e=this.domConverter.viewPositionToDom(t);return!!(e&&Ji(e.parent)&&Zi(e.parent))}_removeInlineFiller(){const t=this._inlineFiller;if(!Zi(t))throw new _n.a(\"view-renderer-filler-was-lost\",this);tr(t)?t.parentNode.removeChild(t):t.data=t.data.substr(7),this._inlineFiller=null}_needsInlineFillerAtSelection(){if(1!=this.selection.rangeCount||!this.selection.isCollapsed)return!1;const t=this.selection.getFirstPosition(),e=t.parent,n=t.offset;if(!this.domConverter.mapViewToDom(e.root))return!1;if(!e.is(\"element\"))return!1;if(!function(t){if(\"false\"==t.getAttribute(\"contenteditable\"))return!1;const e=t.findAncestor((t=>t.hasAttribute(\"contenteditable\")));return!e||\"true\"==e.getAttribute(\"contenteditable\")}(e))return!1;if(n===e.getFillerOffset())return!1;const o=t.nodeBefore,i=t.nodeAfter;return!(o instanceof jn||i instanceof jn)}_updateText(t,e){const n=this.domConverter.findCorrespondingDomText(t),o=this.domConverter.viewToDom(t,n.ownerDocument),i=n.data;let r=o.data;const s=e.inlineFillerPosition;if(s&&s.parent==t.parent&&s.offset==t.index&&(r=Xi+r),i!=r){const t=or(i,r);for(const e of t)\"insert\"===e.type?n.insertData(e.index,e.values.join(\"\")):n.deleteData(e.index,e.howMany)}}_updateAttrs(t){const e=this.domConverter.mapViewToDom(t);if(!e)return;const n=Array.from(e.attributes).map((t=>t.name)),o=t.getAttributeKeys();for(const n of o)e.setAttribute(n,t.getAttribute(n));for(const o of n)t.hasAttribute(o)||e.removeAttribute(o)}_updateChildren(t,e){const n=this.domConverter.mapViewToDom(t);if(!n)return;const o=e.inlineFillerPosition,i=this.domConverter.mapViewToDom(t).childNodes,r=Array.from(this.domConverter.viewChildrenToDom(t,n.ownerDocument,{bind:!0,inlineFillerPosition:o}));o&&o.parent===t&&hr(n.ownerDocument,r,o.offset);const s=this._diffNodeLists(i,r);let a=0;const c=new Set;for(const t of s)\"delete\"===t?(c.add(i[a]),cr(i[a])):\"equal\"===t&&a++;a=0;for(const t of s)\"insert\"===t?(ar(n,a,r[a]),a++):\"equal\"===t&&(this._markDescendantTextToSync(this.domConverter.domToView(r[a])),a++);for(const t of c)t.parentNode||this.domConverter.unbindDomElement(t)}_diffNodeLists(t,e){return sr(t=function(t,e){const n=Array.from(t);if(0==n.length||!e)return n;n[n.length-1]==e&&n.pop();return n}(t,this._fakeSelectionContainer),e,mr.bind(null,this.domConverter))}_findReplaceActions(t,e,n){if(-1===t.indexOf(\"insert\")||-1===t.indexOf(\"delete\"))return t;let o=[],i=[],r=[];const s={equal:0,insert:0,delete:0};for(const a of t)\"insert\"===a?r.push(n[s.equal+s.insert]):\"delete\"===a?i.push(e[s.equal+s.delete]):(o=o.concat(sr(i,r,ur).map((t=>\"equal\"===t?\"replace\":t))),o.push(\"equal\"),i=[],r=[]),s[a]++;return o.concat(sr(i,r,ur).map((t=>\"equal\"===t?\"replace\":t)))}_markDescendantTextToSync(t){if(t)if(t.is(\"$text\"))this.markedTexts.add(t);else if(t.is(\"element\"))for(const e of t.getChildren())this._markDescendantTextToSync(e)}_updateSelection(){if(0===this.selection.rangeCount)return this._removeDomSelection(),void this._removeFakeSelection();const t=this.domConverter.mapViewToDom(this.selection.editableElement);this.isFocused&&t&&(this.selection.isFake?this._updateFakeSelection(t):(this._removeFakeSelection(),this._updateDomSelection(t)))}_updateFakeSelection(t){const e=t.ownerDocument;this._fakeSelectionContainer||(this._fakeSelectionContainer=function(t){const e=t.createElement(\"div\");return Object.assign(e.style,{position:\"fixed\",top:0,left:\"-9999px\",width:\"42px\"}),e.textContent=\" \",e}(e));const n=this._fakeSelectionContainer;if(this.domConverter.bindFakeSelection(n,this.selection),!this._fakeSelectionNeedsUpdate(t))return;n.parentElement&&n.parentElement==t||t.appendChild(n),n.textContent=this.selection.fakeSelectionLabel||\" \";const o=e.getSelection(),i=e.createRange();o.removeAllRanges(),i.selectNodeContents(n),o.addRange(i)}_updateDomSelection(t){const e=t.ownerDocument.defaultView.getSelection();if(!this._domSelectionNeedsUpdate(e))return;const n=this.domConverter.viewPositionToDom(this.selection.anchor),o=this.domConverter.viewPositionToDom(this.selection.focus);t.focus(),e.collapse(n.parent,n.offset),e.extend(o.parent,o.offset),Ci.isGecko&&function(t,e){const n=t.parent;if(n.nodeType!=Node.ELEMENT_NODE||t.offset!=n.childNodes.length-1)return;const o=n.childNodes[t.offset];o&&\"BR\"==o.tagName&&e.addRange(e.getRangeAt(0))}(o,e)}_domSelectionNeedsUpdate(t){if(!this.domConverter.isDomSelectionCorrect(t))return!0;const e=t&&this.domConverter.domSelectionToView(t);return(!e||!this.selection.isEqual(e))&&!(!this.selection.isCollapsed&&this.selection.isSimilar(e))}_fakeSelectionNeedsUpdate(t){const e=this._fakeSelectionContainer,n=t.ownerDocument.getSelection();return!e||e.parentElement!==t||(n.anchorNode!==e&&!e.contains(n.anchorNode)||e.textContent!==this.selection.fakeSelectionLabel)}_removeDomSelection(){for(const t of this.domDocuments){if(t.getSelection().rangeCount){const e=t.activeElement,n=this.domConverter.mapDomToView(e);e&&n&&t.getSelection().removeAllRanges()}}}_removeFakeSelection(){const t=this._fakeSelectionContainer;t&&t.remove()}_updateFocus(){if(this.isFocused){const t=this.selection.editableElement;t&&this.domConverter.focus(t)}}}function hr(t,e,n){const o=e instanceof Array?e:e.childNodes,i=o[n];if(Ji(i))return i.data=Xi+i.data,i;{const i=t.createTextNode(Xi);return Array.isArray(e)?o.splice(n,0,i):ar(e,n,i),i}}function ur(t,e){return lr(t)&&lr(e)&&!Ji(t)&&!Ji(e)&&t.nodeType!==Node.COMMENT_NODE&&e.nodeType!==Node.COMMENT_NODE&&t.tagName.toLowerCase()===e.tagName.toLowerCase()}function mr(t,e,n){return e===n||(Ji(e)&&Ji(n)?e.data===n.data:!(!t.isBlockFiller(e)||!t.isBlockFiller(n)))}In(dr,Xo);var gr={window:window,document:document};function pr(t){let e=0;for(;t.previousSibling;)t=t.previousSibling,e++;return e}function fr(t){const e=[];for(;t&&t.nodeType!=Node.DOCUMENT_NODE;)e.unshift(t),t=t.parentNode;return e}const br=Qi(document);class kr{constructor(t,e={}){this.document=t,this.blockFillerMode=e.blockFillerMode||\"br\",this.preElements=[\"pre\"],this.blockElements=[\"p\",\"div\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\",\"li\",\"dd\",\"dt\",\"figcaption\",\"td\",\"th\"],this._blockFiller=\"br\"==this.blockFillerMode?Qi:Yi,this._domToViewMapping=new WeakMap,this._viewToDomMapping=new WeakMap,this._fakeSelectionMapping=new WeakMap}bindFakeSelection(t,e){this._fakeSelectionMapping.set(t,new ui(e))}fakeSelectionToView(t){return this._fakeSelectionMapping.get(t)}bindElements(t,e){this._domToViewMapping.set(t,e),this._viewToDomMapping.set(e,t)}unbindDomElement(t){const e=this._domToViewMapping.get(t);if(e){this._domToViewMapping.delete(t),this._viewToDomMapping.delete(e);for(const e of t.childNodes)this.unbindDomElement(e)}}bindDocumentFragments(t,e){this._domToViewMapping.set(t,e),this._viewToDomMapping.set(e,t)}viewToDom(t,e,n={}){if(t.is(\"$text\")){const n=this._processDataFromViewText(t);return e.createTextNode(n)}{if(this.mapViewToDom(t))return this.mapViewToDom(t);let o;if(t.is(\"documentFragment\"))o=e.createDocumentFragment(),n.bind&&this.bindDocumentFragments(o,t);else{if(t.is(\"uiElement\"))return o=t.render(e),n.bind&&this.bindElements(o,t),o;o=t.hasAttribute(\"xmlns\")?e.createElementNS(t.getAttribute(\"xmlns\"),t.name):e.createElement(t.name),t.is(\"rawElement\")&&t.render(o),n.bind&&this.bindElements(o,t);for(const e of t.getAttributeKeys())o.setAttribute(e,t.getAttribute(e))}if(n.withChildren||void 0===n.withChildren)for(const i of this.viewChildrenToDom(t,e,n))o.appendChild(i);return o}}*viewChildrenToDom(t,e,n={}){const o=t.getFillerOffset&&t.getFillerOffset();let i=0;for(const r of t.getChildren())o===i&&(yield this._blockFiller(e)),yield this.viewToDom(r,e,n),i++;o===i&&(yield this._blockFiller(e))}viewRangeToDom(t){const e=this.viewPositionToDom(t.start),n=this.viewPositionToDom(t.end),o=document.createRange();return o.setStart(e.parent,e.offset),o.setEnd(n.parent,n.offset),o}viewPositionToDom(t){const e=t.parent;if(e.is(\"$text\")){const n=this.findCorrespondingDomText(e);if(!n)return null;let o=t.offset;return Zi(n)&&(o+=7),{parent:n,offset:o}}{let n,o,i;if(0===t.offset){if(n=this.mapViewToDom(e),!n)return null;i=n.childNodes[0]}else{const e=t.nodeBefore;if(o=e.is(\"$text\")?this.findCorrespondingDomText(e):this.mapViewToDom(t.nodeBefore),!o)return null;n=o.parentNode,i=o.nextSibling}if(Ji(i)&&Zi(i))return{parent:i,offset:7};return{parent:n,offset:o?pr(o)+1:0}}}domToView(t,e={}){if(this.isBlockFiller(t,this.blockFillerMode))return null;const n=this.getHostViewElement(t,this._domToViewMapping);if(n)return n;if(Ji(t)){if(tr(t))return null;{const e=this._processDataFromDomText(t);return\"\"===e?null:new jn(this.document,e)}}if(this.isComment(t))return null;{if(this.mapDomToView(t))return this.mapDomToView(t);let n;if(this.isDocumentFragment(t))n=new Mi(this.document),e.bind&&this.bindDocumentFragments(t,n);else{const o=e.keepOriginalCase?t.tagName:t.tagName.toLowerCase();n=new jo(this.document,o),e.bind&&this.bindElements(t,n);const i=t.attributes;for(let t=i.length-1;t>=0;t--)n._setAttribute(i[t].name,i[t].value)}if(e.withChildren||void 0===e.withChildren)for(const o of this.domChildrenToView(t,e))n._appendChild(o);return n}}*domChildrenToView(t,e={}){for(let n=0;n{const{scrollLeft:e,scrollTop:n}=t;o.push([e,n])})),e.focus(),_r(e,(t=>{const[e,n]=o.shift();t.scrollLeft=e,t.scrollTop=n})),gr.window.scrollTo(t,n)}}isElement(t){return t&&t.nodeType==Node.ELEMENT_NODE}isDocumentFragment(t){return t&&t.nodeType==Node.DOCUMENT_FRAGMENT_NODE}isComment(t){return t&&t.nodeType==Node.COMMENT_NODE}isBlockFiller(t){return\"br\"==this.blockFillerMode?t.isEqualNode(br):!(\"BR\"!==t.tagName||!Cr(t,this.blockElements)||1!==t.parentNode.childNodes.length)||function(t,e){return Ji(t)&&\" \"==t.data&&Cr(t,e)&&1===t.parentNode.childNodes.length}(t,this.blockElements)}isDomSelectionBackward(t){if(t.isCollapsed)return!1;const e=document.createRange();e.setStart(t.anchorNode,t.anchorOffset),e.setEnd(t.focusNode,t.focusOffset);const n=e.collapsed;return e.detach(),n}getHostViewElement(t){const e=fr(t);for(e.pop();e.length;){const t=e.pop(),n=this._domToViewMapping.get(t);if(n&&(n.is(\"uiElement\")||n.is(\"rawElement\")))return n}return null}isDomSelectionCorrect(t){return this._isDomSelectionPositionCorrect(t.anchorNode,t.anchorOffset)&&this._isDomSelectionPositionCorrect(t.focusNode,t.focusOffset)}_isDomSelectionPositionCorrect(t,e){if(Ji(t)&&Zi(t)&&e<7)return!1;if(this.isElement(t)&&Zi(t.childNodes[e]))return!1;const n=this.mapDomToView(t);return!n||!n.is(\"uiElement\")&&!n.is(\"rawElement\")}_processDataFromViewText(t){let e=t.data;if(t.getAncestors().some((t=>this.preElements.includes(t.name))))return e;if(\" \"==e.charAt(0)){const n=this._getTouchingViewTextNode(t,!1);!(n&&this._nodeEndsWithSpace(n))&&n||(e=\" \"+e.substr(1))}if(\" \"==e.charAt(e.length-1)){const n=this._getTouchingViewTextNode(t,!0);\" \"!=e.charAt(e.length-2)&&n&&\" \"!=n.data.charAt(0)||(e=e.substr(0,e.length-1)+\" \")}return e.replace(/ {2}/g,\"  \")}_nodeEndsWithSpace(t){if(t.getAncestors().some((t=>this.preElements.includes(t.name))))return!1;const e=this._processDataFromViewText(t);return\" \"==e.charAt(e.length-1)}_processDataFromDomText(t){let e=t.data;if(wr(t,this.preElements))return er(t);e=e.replace(/[ \\n\\t\\r]{1,}/g,\" \");const n=this._getTouchingInlineDomNode(t,!1),o=this._getTouchingInlineDomNode(t,!0),i=this._checkShouldLeftTrimDomText(n),r=this._checkShouldRightTrimDomText(t,o);return i&&(e=e.replace(/^ /,\"\")),r&&(e=e.replace(/ $/,\"\")),e=er(new Text(e)),e=e.replace(/ \\u00A0/g,\" \"),(/( |\\u00A0)\\u00A0$/.test(e)||!o||o.data&&\" \"==o.data.charAt(0))&&(e=e.replace(/\\u00A0$/,\" \")),i&&(e=e.replace(/^\\u00A0/,\" \")),e}_checkShouldLeftTrimDomText(t){return!t||(!!hn(t)||/[^\\S\\u00A0]/.test(t.data.charAt(t.data.length-1)))}_checkShouldRightTrimDomText(t,e){return!e&&!Zi(t)}_getTouchingViewTextNode(t,e){const n=new ai({startPosition:e?ci._createAfter(t):ci._createBefore(t),direction:e?\"forward\":\"backward\"});for(const t of n){if(t.item.is(\"containerElement\"))return null;if(t.item.is(\"element\",\"br\"))return null;if(t.item.is(\"$textProxy\"))return t.item}return null}_getTouchingInlineDomNode(t,e){if(!t.parentNode)return null;const n=e?\"nextNode\":\"previousNode\",o=t.ownerDocument,i=fr(t)[0],r=o.createTreeWalker(i,NodeFilter.SHOW_TEXT|NodeFilter.SHOW_ELEMENT,{acceptNode:t=>Ji(t)||\"BR\"==t.tagName?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP});r.currentNode=t;const s=r[n]();if(null!==s){const e=function(t,e){const n=fr(t),o=fr(e);let i=0;for(;n[i]==o[i]&&n[i];)i++;return 0===i?null:n[i-1]}(t,s);if(e&&!wr(t,this.blockElements,e)&&!wr(s,this.blockElements,e))return s}return null}}function wr(t,e,n){let o=fr(t);return n&&(o=o.slice(o.indexOf(n)+1)),o.some((t=>t.tagName&&e.includes(t.tagName.toLowerCase())))}function _r(t,e){for(;t&&t!=gr.document;)e(t),t=t.parentNode}function Cr(t,e){const n=t.parentNode;return n&&n.tagName&&e.includes(n.tagName.toLowerCase())}function Ar(t){const e=Object.prototype.toString.apply(t);return\"[object Window]\"==e||\"[object global]\"==e}var vr=$o({},vn,{listenTo(t,...e){if(lr(t)||Ar(t)){const n=this._getProxyEmitter(t)||new yr(t);n.attach(...e),t=n}vn.listenTo.call(this,t,...e)},stopListening(t,e,n){if(lr(t)||Ar(t)){const e=this._getProxyEmitter(t);if(!e)return;t=e}vn.stopListening.call(this,t,e,n),t instanceof yr&&t.detach(e)},_getProxyEmitter(t){return e=this,n=xr(t),e[Cn]&&e[Cn][n]?e[Cn][n].emitter:null;var e,n}});class yr{constructor(t){yn(this,xr(t)),this._domNode=t}}function xr(t){return t[\"data-ck-expando\"]||(t[\"data-ck-expando\"]=kn())}$o(yr.prototype,vn,{attach(t,e,n={}){if(this._domListeners&&this._domListeners[t])return;const o={capture:!!n.useCapture,passive:!!n.usePassive},i=this._createDomListener(t,o);this._domNode.addEventListener(t,i,o),this._domListeners||(this._domListeners={}),this._domListeners[t]=i},detach(t){let e;!this._domListeners[t]||(e=this._events[t])&&e.callbacks.length||this._domListeners[t].removeListener()},_createDomListener(t,e){const n=e=>{this.fire(t,e)};return n.removeListener=()=>{this._domNode.removeEventListener(t,n,e),delete this._domListeners[t]},n}});class Er{constructor(t){this.view=t,this.document=t.document,this.isEnabled=!1}enable(){this.isEnabled=!0}disable(){this.isEnabled=!1}destroy(){this.disable(),this.stopListening()}checkShouldIgnoreEventFromTarget(t){return t&&3===t.nodeType&&(t=t.parentNode),!(!t||1!==t.nodeType)&&t.matches(\"[data-cke-ignore-events], [data-cke-ignore-events] *\")}}In(Er,vr);var Sr=function(t){return this.__data__.set(t,\"__lodash_hash_undefined__\"),this};var Dr=function(t){return this.__data__.has(t)};function Tr(t){var e=-1,n=null==t?0:t.length;for(this.__data__=new wt;++ea))return!1;var l=r.get(t);if(l&&r.get(e))return l==e;var d=-1,h=!0,u=2&n?new Br:void 0;for(r.set(t,e),r.set(e,t);++d{this.listenTo(t,e,((t,e)=>{this.isEnabled&&!this.checkShouldIgnoreEventFromTarget(e.target)&&this.onDomEvent(e)}),{useCapture:this.useCapture})}))}fire(t,e,n){this.isEnabled&&this.document.fire(t,new Jr(this.view,e,n))}}class Qr extends Yr{constructor(t){super(t),this.domEventType=[\"keydown\",\"keyup\"]}onDomEvent(t){this.fire(t.type,t,{keyCode:t.keyCode,altKey:t.altKey,ctrlKey:t.ctrlKey||t.metaKey,shiftKey:t.shiftKey,get keystroke(){return xi(this)}})}}var Xr=function(){return o.a.Date.now()},Zr=/^\\s+|\\s+$/g,ts=/^[-+]0x[0-9a-f]+$/i,es=/^0b[01]+$/i,ns=/^0o[0-7]+$/i,os=parseInt;var is=function(t){if(\"number\"==typeof t)return t;if(Un(t))return NaN;if(M(t)){var e=\"function\"==typeof t.valueOf?t.valueOf():t;t=M(e)?e+\"\":e}if(\"string\"!=typeof t)return 0===t?t:+t;t=t.replace(Zr,\"\");var n=es.test(t);return n||ns.test(t)?os(t.slice(2),n?2:8):ts.test(t)?NaN:+t},rs=Math.max,ss=Math.min;var as=function(t,e,n){var o,i,r,s,a,c,l=0,d=!1,h=!1,u=!0;if(\"function\"!=typeof t)throw new TypeError(\"Expected a function\");function m(e){var n=o,r=i;return o=i=void 0,l=e,s=t.apply(r,n)}function g(t){return l=t,a=setTimeout(f,e),d?m(t):s}function p(t){var n=t-c;return void 0===c||n>=e||n<0||h&&t-l>=r}function f(){var t=Xr();if(p(t))return b(t);a=setTimeout(f,function(t){var n=e-(t-c);return h?ss(n,r-(t-l)):n}(t))}function b(t){return a=void 0,u&&o?m(t):(o=i=void 0,s)}function k(){var t=Xr(),n=p(t);if(o=arguments,i=this,c=t,n){if(void 0===a)return g(c);if(h)return clearTimeout(a),a=setTimeout(f,e),m(c)}return void 0===a&&(a=setTimeout(f,e)),s}return e=is(e)||0,M(n)&&(d=!!n.leading,r=(h=\"maxWait\"in n)?rs(is(n.maxWait)||0,e):r,u=\"trailing\"in n?!!n.trailing:u),k.cancel=function(){void 0!==a&&clearTimeout(a),l=0,o=c=i=a=void 0},k.flush=function(){return void 0===a?s:b(Xr())},k};class cs extends Er{constructor(t){super(t),this._fireSelectionChangeDoneDebounced=as((t=>this.document.fire(\"selectionChangeDone\",t)),200)}observe(){const t=this.document;t.on(\"keydown\",((e,n)=>{t.selection.isFake&&Di(n.keyCode)&&this.isEnabled&&(n.preventDefault(),this._handleSelectionMove(n.keyCode))}),{priority:\"lowest\"})}destroy(){super.destroy(),this._fireSelectionChangeDoneDebounced.cancel()}_handleSelectionMove(t){const e=this.document.selection,n=new ui(e.getRanges(),{backward:e.isBackward,fake:!1});t!=yi.arrowleft&&t!=yi.arrowup||n.setTo(n.getFirstPosition()),t!=yi.arrowright&&t!=yi.arrowdown||n.setTo(n.getLastPosition());const o={oldSelection:e,newSelection:n,domSelection:null};this.document.fire(\"selectionChange\",o),this._fireSelectionChangeDoneDebounced(o)}}class ls extends Er{constructor(t){super(t),this.mutationObserver=t.getObserver(Ur),this.selection=this.document.selection,this.domConverter=t.domConverter,this._documents=new WeakSet,this._fireSelectionChangeDoneDebounced=as((t=>this.document.fire(\"selectionChangeDone\",t)),200),this._clearInfiniteLoopInterval=setInterval((()=>this._clearInfiniteLoop()),1e3),this._loopbackCounter=0}observe(t){const e=t.ownerDocument;this._documents.has(e)||(this.listenTo(e,\"selectionchange\",((t,n)=>{this._handleSelectionChange(n,e)})),this._documents.add(e))}destroy(){super.destroy(),clearInterval(this._clearInfiniteLoopInterval),this._fireSelectionChangeDoneDebounced.cancel()}_handleSelectionChange(t,e){if(!this.isEnabled)return;const n=e.defaultView.getSelection();if(this.checkShouldIgnoreEventFromTarget(n.anchorNode))return;this.mutationObserver.flush();const o=this.domConverter.domSelectionToView(n);if(0!=o.rangeCount){if(this.view.hasDomSelection=!0,!(this.selection.isEqual(o)&&this.domConverter.isDomSelectionCorrect(n)||++this._loopbackCounter>60))if(this.selection.isSimilar(o))this.view.forceRender();else{const t={oldSelection:this.selection,newSelection:o,domSelection:n};this.document.fire(\"selectionChange\",t),this._fireSelectionChangeDoneDebounced(t)}}else this.view.hasDomSelection=!1}_clearInfiniteLoop(){this._loopbackCounter=0}}class ds extends Yr{constructor(t){super(t),this.domEventType=[\"focus\",\"blur\"],this.useCapture=!0;const e=this.document;e.on(\"focus\",(()=>{e.isFocused=!0,this._renderTimeoutId=setTimeout((()=>t.forceRender()),50)})),e.on(\"blur\",((n,o)=>{const i=e.selection.editableElement;null!==i&&i!==o.target||(e.isFocused=!1,t.forceRender())}))}onDomEvent(t){this.fire(t.type,t)}destroy(){this._renderTimeoutId&&clearTimeout(this._renderTimeoutId),super.destroy()}}class hs extends Yr{constructor(t){super(t),this.domEventType=[\"compositionstart\",\"compositionupdate\",\"compositionend\"];const e=this.document;e.on(\"compositionstart\",(()=>{e.isComposing=!0})),e.on(\"compositionend\",(()=>{e.isComposing=!1}))}onDomEvent(t){this.fire(t.type,t)}}class us extends Yr{constructor(t){super(t),this.domEventType=[\"beforeinput\"]}onDomEvent(t){this.fire(t.type,t)}}function ms(t){return\"[object Range]\"==Object.prototype.toString.apply(t)}function gs(t){const e=t.ownerDocument.defaultView.getComputedStyle(t);return{top:parseInt(e.borderTopWidth,10),right:parseInt(e.borderRightWidth,10),bottom:parseInt(e.borderBottomWidth,10),left:parseInt(e.borderLeftWidth,10)}}const ps=[\"top\",\"right\",\"bottom\",\"left\",\"width\",\"height\"];class fs{constructor(t){const e=ms(t);if(Object.defineProperty(this,\"_source\",{value:t._source||t,writable:!0,enumerable:!1}),hn(t)||e)if(e){const e=fs.getDomRangeRects(t);bs(this,fs.getBoundingRect(e))}else bs(this,t.getBoundingClientRect());else if(Ar(t)){const{innerWidth:e,innerHeight:n}=t;bs(this,{top:0,right:e,bottom:n,left:0,width:e,height:n})}else bs(this,t)}clone(){return new fs(this)}moveTo(t,e){return this.top=e,this.right=t+this.width,this.bottom=e+this.height,this.left=t,this}moveBy(t,e){return this.top+=e,this.right+=t,this.left+=t,this.bottom+=e,this}getIntersection(t){const e={top:Math.max(this.top,t.top),right:Math.min(this.right,t.right),bottom:Math.min(this.bottom,t.bottom),left:Math.max(this.left,t.left)};return e.width=e.right-e.left,e.height=e.bottom-e.top,e.width<0||e.height<0?null:new fs(e)}getIntersectionArea(t){const e=this.getIntersection(t);return e?e.getArea():0}getArea(){return this.width*this.height}getVisible(){const t=this._source;let e=this.clone();if(!ks(t)){let n=t.parentNode||t.commonAncestorContainer;for(;n&&!ks(n);){const t=new fs(n),o=e.getIntersection(t);if(!o)return null;o.getArea()Ds(t,o)));const s=Ds(t,o);if(_s(o,s,e),o.parent!=o){if(i=o.frameElement,o=o.parent,!i)return}else o=null}}function _s(t,e,n){const o=e.clone().moveBy(0,n),i=e.clone().moveBy(0,-n),r=new fs(t).excludeScrollbarsAndBorders();if(![i,o].every((t=>r.contains(t)))){let{scrollX:s,scrollY:a}=t;vs(i,r)?a-=r.top-e.top+n:As(o,r)&&(a+=e.bottom-r.bottom+n),ys(e,r)?s-=r.left-e.left+n:xs(e,r)&&(s+=e.right-r.right+n),t.scrollTo(s,a)}}function Cs(t,e){const n=Es(t);let o,i;for(;t!=n.document.body;)i=e(),o=new fs(t).excludeScrollbarsAndBorders(),o.contains(i)||(vs(i,o)?t.scrollTop-=o.top-i.top:As(i,o)&&(t.scrollTop+=i.bottom-o.bottom),ys(i,o)?t.scrollLeft-=o.left-i.left:xs(i,o)&&(t.scrollLeft+=i.right-o.right)),t=t.parentNode}function As(t,e){return t.bottom>e.bottom}function vs(t,e){return t.tope.right}function Es(t){return ms(t)?t.startContainer.ownerDocument.defaultView:t.ownerDocument.defaultView}function Ss(t){if(ms(t)){let e=t.commonAncestorContainer;return Ji(e)&&(e=e.parentNode),e}return t.parentNode}function Ds(t,e){const n=Es(t),o=new fs(t);if(n===e)return o;{let t=n;for(;t!=e;){const e=t.frameElement,n=new fs(e).excludeScrollbarsAndBorders();o.moveBy(n.left,n.top),t=t.parent}}return o}Object.assign({},{scrollViewportToShowTarget:ws,scrollAncestorsToShowTarget:function(t){Cs(Ss(t),(()=>new fs(t)))}});class Ts{constructor(t){this.document=new gi(t),this.domConverter=new kr(this.document),this.domRoots=new Map,this.set(\"isRenderingInProgress\",!1),this.set(\"hasDomSelection\",!1),this._renderer=new dr(this.domConverter,this.document.selection),this._renderer.bind(\"isFocused\").to(this.document),this._initialDomRootAttributes=new WeakMap,this._observers=new Map,this._ongoingChange=!1,this._postFixersInProgress=!1,this._renderingDisabled=!1,this._hasChangedSinceTheLastRendering=!1,this._writer=new Vi(this.document),this.addObserver(Ur),this.addObserver(ls),this.addObserver(ds),this.addObserver(Qr),this.addObserver(cs),this.addObserver(hs),Ci.isAndroid&&this.addObserver(us),this.document.on(\"keydown\",nr),Ri(this),this.on(\"render\",(()=>{this._render(),this.document.fire(\"layoutChanged\"),this._hasChangedSinceTheLastRendering=!1})),this.listenTo(this.document.selection,\"change\",(()=>{this._hasChangedSinceTheLastRendering=!0}))}attachDomRoot(t,e=\"main\"){const n=this.document.getRoot(e);n._name=t.tagName.toLowerCase();const o={};for(const{name:e,value:i}of Array.from(t.attributes))o[e]=i,\"class\"===e?this._writer.addClass(i.split(\" \"),n):this._writer.setAttribute(e,i,n);this._initialDomRootAttributes.set(t,o);const i=()=>{this._writer.setAttribute(\"contenteditable\",!n.isReadOnly,n),n.isReadOnly?this._writer.addClass(\"ck-read-only\",n):this._writer.removeClass(\"ck-read-only\",n)};i(),this.domRoots.set(e,t),this.domConverter.bindElements(t,n),this._renderer.markToSync(\"children\",n),this._renderer.markToSync(\"attributes\",n),this._renderer.domDocuments.add(t.ownerDocument),n.on(\"change:children\",((t,e)=>this._renderer.markToSync(\"children\",e))),n.on(\"change:attributes\",((t,e)=>this._renderer.markToSync(\"attributes\",e))),n.on(\"change:text\",((t,e)=>this._renderer.markToSync(\"text\",e))),n.on(\"change:isReadOnly\",(()=>this.change(i))),n.on(\"change\",(()=>{this._hasChangedSinceTheLastRendering=!0}));for(const n of this._observers.values())n.observe(t,e)}detachDomRoot(t){const e=this.domRoots.get(t);Array.from(e.attributes).forEach((({name:t})=>e.removeAttribute(t)));const n=this._initialDomRootAttributes.get(e);for(const t in n)e.setAttribute(t,n[t]);this.domRoots.delete(t),this.domConverter.unbindDomElement(e)}getDomRoot(t=\"main\"){return this.domRoots.get(t)}addObserver(t){let e=this._observers.get(t);if(e)return e;e=new t(this),this._observers.set(t,e);for(const[t,n]of this.domRoots)e.observe(n,t);return e.enable(),e}getObserver(t){return this._observers.get(t)}disableObservers(){for(const t of this._observers.values())t.disable()}enableObservers(){for(const t of this._observers.values())t.enable()}scrollToTheSelection(){const t=this.document.selection.getFirstRange();t&&ws({target:this.domConverter.viewRangeToDom(t),viewportOffset:20})}focus(){if(!this.document.isFocused){const t=this.document.selection.editableElement;t&&(this.domConverter.focus(t),this.forceRender())}}change(t){if(this.isRenderingInProgress||this._postFixersInProgress)throw new _n.a(\"cannot-change-view-tree\",this);try{if(this._ongoingChange)return t(this._writer);this._ongoingChange=!0;const e=t(this._writer);return this._ongoingChange=!1,!this._renderingDisabled&&this._hasChangedSinceTheLastRendering&&(this._postFixersInProgress=!0,this.document._callPostFixers(this._writer),this._postFixersInProgress=!1,this.fire(\"render\")),e}catch(t){_n.a.rethrowUnexpectedError(t,this)}}forceRender(){this._hasChangedSinceTheLastRendering=!0,this.change((()=>{}))}destroy(){for(const t of this._observers.values())t.destroy();this.document.destroy(),this.stopListening()}createPositionAt(t,e){return ci._createAt(t,e)}createPositionAfter(t){return ci._createAfter(t)}createPositionBefore(t){return ci._createBefore(t)}createRange(t,e){return new li(t,e)}createRangeOn(t){return li._createOn(t)}createRangeIn(t){return li._createIn(t)}createSelection(t,e,n){return new ui(t,e,n)}_disableRendering(t){this._renderingDisabled=t,0==t&&this.change((()=>{}))}_render(){this.isRenderingInProgress=!0,this.disableObservers(),this._renderer.render(),this.enableObservers(),this.isRenderingInProgress=!1}}In(Ts,Xo);class Bs{constructor(t){this.parent=null,this._attrs=Wn(t)}get index(){let t;if(!this.parent)return null;if(null===(t=this.parent.getChildIndex(this)))throw new _n.a(\"model-node-not-found-in-parent\",this);return t}get startOffset(){let t;if(!this.parent)return null;if(null===(t=this.parent.getChildStartOffset(this)))throw new _n.a(\"model-node-not-found-in-parent\",this);return t}get offsetSize(){return 1}get endOffset(){return this.parent?this.startOffset+this.offsetSize:null}get nextSibling(){const t=this.index;return null!==t&&this.parent.getChild(t+1)||null}get previousSibling(){const t=this.index;return null!==t&&this.parent.getChild(t-1)||null}get root(){let t=this;for(;t.parent;)t=t.parent;return t}isAttached(){return this.root.is(\"rootElement\")}getPath(){const t=[];let e=this;for(;e.parent;)t.unshift(e.startOffset),e=e.parent;return t}getAncestors(t={includeSelf:!1,parentFirst:!1}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?\"push\":\"unshift\"](n),n=n.parent;return e}getCommonAncestor(t,e={}){const n=this.getAncestors(e),o=t.getAncestors(e);let i=0;for(;n[i]==o[i]&&n[i];)i++;return 0===i?null:n[i-1]}isBefore(t){if(this==t)return!1;if(this.root!==t.root)return!1;const e=this.getPath(),n=t.getPath(),o=Ln(e,n);switch(o){case\"prefix\":return!0;case\"extension\":return!1;default:return e[o](t[e[0]]=e[1],t)),{})),t}is(t){return\"node\"===t||\"model:node\"===t}_clone(){return new Bs(this._attrs)}_remove(){this.parent._removeChildren(this.index)}_setAttribute(t,e){this._attrs.set(t,e)}_setAttributesTo(t){this._attrs=Wn(t)}_removeAttribute(t){return this._attrs.delete(t)}_clearAttributes(){this._attrs.clear()}}class Ps extends Bs{constructor(t,e){super(e),this._data=t||\"\"}get offsetSize(){return this.data.length}get data(){return this._data}is(t){return\"$text\"===t||\"model:$text\"===t||\"text\"===t||\"model:text\"===t||\"node\"===t||\"model:node\"===t}toJSON(){const t=super.toJSON();return t.data=this.data,t}_clone(){return new Ps(this.data,this.getAttributes())}static fromJSON(t){return new Ps(t.data,t.attributes)}}class Is{constructor(t,e,n){if(this.textNode=t,e<0||e>t.offsetSize)throw new _n.a(\"model-textproxy-wrong-offsetintext\",this);if(n<0||e+n>t.offsetSize)throw new _n.a(\"model-textproxy-wrong-length\",this);this.data=t.data.substring(e,e+n),this.offsetInText=e}get startOffset(){return null!==this.textNode.startOffset?this.textNode.startOffset+this.offsetInText:null}get offsetSize(){return this.data.length}get endOffset(){return null!==this.startOffset?this.startOffset+this.offsetSize:null}get isPartial(){return this.offsetSize!==this.textNode.offsetSize}get parent(){return this.textNode.parent}get root(){return this.textNode.root}is(t){return\"$textProxy\"===t||\"model:$textProxy\"===t||\"textProxy\"===t||\"model:textProxy\"===t}getPath(){const t=this.textNode.getPath();return t.length>0&&(t[t.length-1]+=this.offsetInText),t}getAncestors(t={includeSelf:!1,parentFirst:!1}){const e=[];let n=t.includeSelf?this:this.parent;for(;n;)e[t.parentFirst?\"push\":\"unshift\"](n),n=n.parent;return e}hasAttribute(t){return this.textNode.hasAttribute(t)}getAttribute(t){return this.textNode.getAttribute(t)}getAttributes(){return this.textNode.getAttributes()}getAttributeKeys(){return this.textNode.getAttributeKeys()}}class Rs{constructor(t){this._nodes=[],t&&this._insertNodes(0,t)}[Symbol.iterator](){return this._nodes[Symbol.iterator]()}get length(){return this._nodes.length}get maxOffset(){return this._nodes.reduce(((t,e)=>t+e.offsetSize),0)}getNode(t){return this._nodes[t]||null}getNodeIndex(t){const e=this._nodes.indexOf(t);return-1==e?null:e}getNodeStartOffset(t){const e=this.getNodeIndex(t);return null===e?null:this._nodes.slice(0,e).reduce(((t,e)=>t+e.offsetSize),0)}indexToOffset(t){if(t==this._nodes.length)return this.maxOffset;const e=this._nodes[t];if(!e)throw new _n.a(\"model-nodelist-index-out-of-bounds\",this);return this.getNodeStartOffset(e)}offsetToIndex(t){let e=0;for(const n of this._nodes){if(t>=e&&tt.toJSON()))}}class Fs extends Bs{constructor(t,e,n){super(e),this.name=t,this._children=new Rs,n&&this._insertChild(0,n)}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return 0===this.childCount}is(t,e=null){return e?e===this.name&&(\"element\"===t||\"model:element\"===t):\"element\"===t||\"model:element\"===t||\"node\"===t||\"model:node\"===t}getChild(t){return this._children.getNode(t)}getChildren(){return this._children[Symbol.iterator]()}getChildIndex(t){return this._children.getNodeIndex(t)}getChildStartOffset(t){return this._children.getNodeStartOffset(t)}offsetToIndex(t){return this._children.offsetToIndex(t)}getNodeByPath(t){let e=this;for(const n of t)e=e.getChild(e.offsetToIndex(n));return e}findAncestor(t,e={includeSelf:!1}){let n=e.includeSelf?this:this.parent;for(;n;){if(n.name===t)return n;n=n.parent}return null}toJSON(){const t=super.toJSON();if(t.name=this.name,this._children.length>0){t.children=[];for(const e of this._children)t.children.push(e.toJSON())}return t}_clone(t=!1){const e=t?Array.from(this._children).map((t=>t._clone(!0))):null;return new Fs(this.name,this.getAttributes(),e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=function(t){if(\"string\"==typeof t)return[new Ps(t)];Pn(t)||(t=[t]);return Array.from(t).map((t=>\"string\"==typeof t?new Ps(t):t instanceof Is?new Ps(t.data,t.getAttributes()):t))}(e);for(const t of n)null!==t.parent&&t._remove(),t.parent=this;this._children._insertNodes(t,n)}_removeChildren(t,e=1){const n=this._children._removeNodes(t,e);for(const t of n)t.parent=null;return n}static fromJSON(t){let e=null;if(t.children){e=[];for(const n of t.children)n.name?e.push(Fs.fromJSON(n)):e.push(Ps.fromJSON(n))}return new Fs(t.name,t.attributes,e)}}class Os{constructor(t={}){if(!t.boundaries&&!t.startPosition)throw new _n.a(\"model-tree-walker-no-start-position\",null);const e=t.direction||\"forward\";if(\"forward\"!=e&&\"backward\"!=e)throw new _n.a(\"model-tree-walker-unknown-direction\",t,{direction:e});this.direction=e,this.boundaries=t.boundaries||null,t.startPosition?this.position=t.startPosition.clone():this.position=Ms._createAt(this.boundaries[\"backward\"==this.direction?\"end\":\"start\"]),this.position.stickiness=\"toNone\",this.singleCharacters=!!t.singleCharacters,this.shallow=!!t.shallow,this.ignoreElementEnd=!!t.ignoreElementEnd,this._boundaryStartParent=this.boundaries?this.boundaries.start.parent:null,this._boundaryEndParent=this.boundaries?this.boundaries.end.parent:null,this._visitedParent=this.position.parent}[Symbol.iterator](){return this}skip(t){let e,n,o,i;do{o=this.position,i=this._visitedParent,({done:e,value:n}=this.next())}while(!e&&t(n));e||(this.position=o,this._visitedParent=i)}next(){return\"forward\"==this.direction?this._next():this._previous()}_next(){const t=this.position,e=this.position.clone(),n=this._visitedParent;if(null===n.parent&&e.offset===n.maxOffset)return{done:!0};if(n===this._boundaryEndParent&&e.offset==this.boundaries.end.offset)return{done:!0};const o=e.parent,i=Vs(e,o),r=i||zs(e,o,i);if(r instanceof Fs)return this.shallow?e.offset++:(e.path.push(0),this._visitedParent=r),this.position=e,Ns(\"elementStart\",r,t,e,1);if(r instanceof Ps){let o;if(this.singleCharacters)o=1;else{let t=r.endOffset;this._boundaryEndParent==n&&this.boundaries.end.offsett&&(t=this.boundaries.start.offset),o=e.offset-t}const i=e.offset-r.startOffset,s=new Is(r,i-o,o);return e.offset-=o,this.position=e,Ns(\"text\",s,t,e,o)}return e.path.pop(),this.position=e,this._visitedParent=n.parent,Ns(\"elementStart\",n,t,e,1)}}function Ns(t,e,n,o,i){return{done:!1,value:{type:t,item:e,previousPosition:n,nextPosition:o,length:i}}}class Ms{constructor(t,e,n=\"toNone\"){if(!t.is(\"element\")&&!t.is(\"documentFragment\"))throw new _n.a(\"model-position-root-invalid\",t);if(!(e instanceof Array)||0===e.length)throw new _n.a(\"model-position-path-incorrect-format\",t,{path:e});t.is(\"rootElement\")?e=e.slice():(e=[...t.getPath(),...e],t=t.root),this.root=t,this.path=e,this.stickiness=n}get offset(){return this.path[this.path.length-1]}set offset(t){this.path[this.path.length-1]=t}get parent(){let t=this.root;for(let e=0;en.path.length){if(e.offset!==o.maxOffset)return!1;e.path=e.path.slice(0,-1),o=o.parent,e.offset++}else{if(0!==n.offset)return!1;n.path=n.path.slice(0,-1)}}}is(t){return\"position\"===t||\"model:position\"===t}hasSameParentAs(t){if(this.root!==t.root)return!1;return\"same\"==Ln(this.getParentPath(),t.getParentPath())}getTransformedByOperation(t){let e;switch(t.type){case\"insert\":e=this._getTransformedByInsertOperation(t);break;case\"move\":case\"remove\":case\"reinsert\":e=this._getTransformedByMoveOperation(t);break;case\"split\":e=this._getTransformedBySplitOperation(t);break;case\"merge\":e=this._getTransformedByMergeOperation(t);break;default:e=Ms._createAt(this)}return e}_getTransformedByInsertOperation(t){return this._getTransformedByInsertion(t.position,t.howMany)}_getTransformedByMoveOperation(t){return this._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany)}_getTransformedBySplitOperation(t){const e=t.movedRange;return e.containsPosition(this)||e.start.isEqual(this)&&\"toNext\"==this.stickiness?this._getCombined(t.splitPosition,t.moveTargetPosition):t.graveyardPosition?this._getTransformedByMove(t.graveyardPosition,t.insertionPosition,1):this._getTransformedByInsertion(t.insertionPosition,1)}_getTransformedByMergeOperation(t){const e=t.movedRange;let n;return e.containsPosition(this)||e.start.isEqual(this)?(n=this._getCombined(t.sourcePosition,t.targetPosition),t.sourcePosition.isBefore(t.targetPosition)&&(n=n._getTransformedByDeletion(t.deletionPosition,1))):n=this.isEqual(t.deletionPosition)?Ms._createAt(t.deletionPosition):this._getTransformedByMove(t.deletionPosition,t.graveyardPosition,1),n}_getTransformedByDeletion(t,e){const n=Ms._createAt(this);if(this.root!=t.root)return n;if(\"same\"==Ln(t.getParentPath(),this.getParentPath())){if(t.offsetthis.offset)return null;n.offset-=e}}else if(\"prefix\"==Ln(t.getParentPath(),this.getParentPath())){const o=t.path.length-1;if(t.offset<=this.path[o]){if(t.offset+e>this.path[o])return null;n.path[o]-=e}}return n}_getTransformedByInsertion(t,e){const n=Ms._createAt(this);if(this.root!=t.root)return n;if(\"same\"==Ln(t.getParentPath(),this.getParentPath()))(t.offsete+1;){const e=o.maxOffset-n.offset;0!==e&&t.push(new Hs(n,n.getShiftedBy(e))),n.path=n.path.slice(0,-1),n.offset++,o=o.parent}for(;n.path.length<=this.end.path.length;){const e=this.end.path[n.path.length-1],o=e-n.offset;0!==o&&t.push(new Hs(n,n.getShiftedBy(o))),n.offset=e,n.path.push(0)}return t}getWalker(t={}){return t.boundaries=this,new Os(t)}*getItems(t={}){t.boundaries=this,t.ignoreElementEnd=!0;const e=new Os(t);for(const t of e)yield t.item}*getPositions(t={}){t.boundaries=this;const e=new Os(t);yield e.position;for(const t of e)yield t.nextPosition}getTransformedByOperation(t){switch(t.type){case\"insert\":return this._getTransformedByInsertOperation(t);case\"move\":case\"remove\":case\"reinsert\":return this._getTransformedByMoveOperation(t);case\"split\":return[this._getTransformedBySplitOperation(t)];case\"merge\":return[this._getTransformedByMergeOperation(t)]}return[new Hs(this.start,this.end)]}getTransformedByOperations(t){const e=[new Hs(this.start,this.end)];for(const n of t)for(let t=0;t0?new this(n,o):new this(o,n)}static _createIn(t){return new this(Ms._createAt(t,0),Ms._createAt(t,t.maxOffset))}static _createOn(t){return this._createFromPositionAndShift(Ms._createBefore(t),t.offsetSize)}static _createFromRanges(t){if(0===t.length)throw new _n.a(\"range-create-from-ranges-empty-array\",null);if(1==t.length)return t[0].clone();const e=t[0];t.sort(((t,e)=>t.start.isAfter(e.start)?1:-1));const n=t.indexOf(e),o=new this(e.start,e.end);if(n>0)for(let e=n-1;t[e].end.isEqual(o.start);e++)o.start=Ms._createAt(t[e].start);for(let e=n+1;e{if(e.viewPosition)return;const n=this._modelToViewMapping.get(e.modelPosition.parent);e.viewPosition=this.findPositionIn(n,e.modelPosition.offset)}),{priority:\"low\"}),this.on(\"viewToModelPosition\",((t,e)=>{if(e.modelPosition)return;const n=this.findMappedViewAncestor(e.viewPosition),o=this._viewToModelMapping.get(n),i=this._toModelOffset(e.viewPosition.parent,e.viewPosition.offset,n);e.modelPosition=Ms._createAt(o,i)}),{priority:\"low\"})}bindElements(t,e){this._modelToViewMapping.set(t,e),this._viewToModelMapping.set(e,t)}unbindViewElement(t){const e=this.toModelElement(t);if(this._viewToModelMapping.delete(t),this._elementToMarkerNames.has(t))for(const e of this._elementToMarkerNames.get(t))this._unboundMarkerNames.add(e);this._modelToViewMapping.get(e)==t&&this._modelToViewMapping.delete(e)}unbindModelElement(t){const e=this.toViewElement(t);this._modelToViewMapping.delete(t),this._viewToModelMapping.get(e)==t&&this._viewToModelMapping.delete(e)}bindElementToMarker(t,e){const n=this._markerNameToElements.get(e)||new Set;n.add(t);const o=this._elementToMarkerNames.get(t)||new Set;o.add(e),this._markerNameToElements.set(e,n),this._elementToMarkerNames.set(t,o)}unbindElementFromMarkerName(t,e){const n=this._markerNameToElements.get(e);n&&(n.delete(t),0==n.size&&this._markerNameToElements.delete(e));const o=this._elementToMarkerNames.get(t);o&&(o.delete(e),0==o.size&&this._elementToMarkerNames.delete(t))}flushUnboundMarkerNames(){const t=Array.from(this._unboundMarkerNames);return this._unboundMarkerNames.clear(),t}clearBindings(){this._modelToViewMapping=new WeakMap,this._viewToModelMapping=new WeakMap,this._markerNameToElements=new Map,this._elementToMarkerNames=new Map,this._unboundMarkerNames=new Set}toModelElement(t){return this._viewToModelMapping.get(t)}toViewElement(t){return this._modelToViewMapping.get(t)}toModelRange(t){return new Hs(this.toModelPosition(t.start),this.toModelPosition(t.end))}toViewRange(t){return new li(this.toViewPosition(t.start),this.toViewPosition(t.end))}toModelPosition(t){const e={viewPosition:t,mapper:this};return this.fire(\"viewToModelPosition\",e),e.modelPosition}toViewPosition(t,e={isPhantom:!1}){const n={modelPosition:t,mapper:this,isPhantom:e.isPhantom};return this.fire(\"modelToViewPosition\",n),n.viewPosition}markerNameToElements(t){const e=this._markerNameToElements.get(t);if(!e)return null;const n=new Set;for(const t of e)if(t.is(\"attributeElement\"))for(const e of t.getElementsWithSameId())n.add(e);else n.add(t);return n}registerViewToModelLength(t,e){this._viewToModelLengthCallbacks.set(t,e)}findMappedViewAncestor(t){let e=t.parent;for(;!this._viewToModelMapping.has(e);)e=e.parent;return e}_toModelOffset(t,e,n){if(n!=t){return this._toModelOffset(t.parent,t.index,n)+this._toModelOffset(t,e,t)}if(t.is(\"$text\"))return e;let o=0;for(let n=0;n1?e[0]+\":\"+e[1]:e[0]}class Ws{constructor(t){this.conversionApi=Object.assign({dispatcher:this},t),this._reconversionEventsMapping=new Map}convertChanges(t,e,n){for(const e of t.getMarkersToRemove())this.convertMarkerRemove(e.name,e.range,n);const o=this._mapChangesWithAutomaticReconversion(t);for(const t of o)\"insert\"===t.type?this.convertInsert(Hs._createFromPositionAndShift(t.position,t.length),n):\"remove\"===t.type?this.convertRemove(t.position,t.length,t.name,n):\"reconvert\"===t.type?this.reconvertElement(t.element,n):this.convertAttribute(t.range,t.attributeKey,t.attributeOldValue,t.attributeNewValue,n);for(const t of this.conversionApi.mapper.flushUnboundMarkerNames()){const o=e.get(t).getRange();this.convertMarkerRemove(t,o,n),this.convertMarkerAdd(t,o,n)}for(const e of t.getMarkersToAdd())this.convertMarkerAdd(e.name,e.range,n)}convertInsert(t,e){this.conversionApi.writer=e,this.conversionApi.consumable=this._createInsertConsumable(t);for(const e of Array.from(t).map($s))this._convertInsertWithAttributes(e);this._clearConversionApi()}convertRemove(t,e,n,o){this.conversionApi.writer=o,this.fire(\"remove:\"+n,{position:t,length:e},this.conversionApi),this._clearConversionApi()}convertAttribute(t,e,n,o,i){this.conversionApi.writer=i,this.conversionApi.consumable=this._createConsumableForRange(t,`attribute:${e}`);for(const i of t){const t={item:i.item,range:Hs._createFromPositionAndShift(i.previousPosition,i.length),attributeKey:e,attributeOldValue:n,attributeNewValue:o};this._testAndFire(`attribute:${e}`,t)}this._clearConversionApi()}reconvertElement(t,e){const n=Hs._createOn(t);this.conversionApi.writer=e,this.conversionApi.consumable=this._createInsertConsumable(n);const o=this.conversionApi.mapper,i=o.toViewElement(t);e.remove(i),this._convertInsertWithAttributes({item:t,range:n});const r=o.toViewElement(t);for(const n of Hs._createIn(t)){const{item:t}=n,i=Us(t,o);i?i.root!==r.root&&e.move(e.createRangeOn(i),o.toViewPosition(Ms._createBefore(t))):this._convertInsertWithAttributes($s(n))}o.unbindViewElement(i),this._clearConversionApi()}convertSelection(t,e,n){const o=Array.from(e.getMarkersAtPosition(t.getFirstPosition()));if(this.conversionApi.writer=n,this.conversionApi.consumable=this._createSelectionConsumable(t,o),this.fire(\"selection\",{selection:t},this.conversionApi),t.isCollapsed){for(const e of o){const n=e.getRange();if(!Gs(t.getFirstPosition(),e,this.conversionApi.mapper))continue;const o={item:t,markerName:e.name,markerRange:n};this.conversionApi.consumable.test(t,\"addMarker:\"+e.name)&&this.fire(\"addMarker:\"+e.name,o,this.conversionApi)}for(const e of t.getAttributeKeys()){const n={item:t,range:t.getFirstRange(),attributeKey:e,attributeOldValue:null,attributeNewValue:t.getAttribute(e)};this.conversionApi.consumable.test(t,\"attribute:\"+n.attributeKey)&&this.fire(\"attribute:\"+n.attributeKey+\":$text\",n,this.conversionApi)}this._clearConversionApi()}}convertMarkerAdd(t,e,n){if(!e.root.document||\"$graveyard\"==e.root.rootName)return;this.conversionApi.writer=n;const o=\"addMarker:\"+t,i=new js;if(i.add(e,o),this.conversionApi.consumable=i,this.fire(o,{markerName:t,markerRange:e},this.conversionApi),i.test(e,o)){this.conversionApi.consumable=this._createConsumableForRange(e,o);for(const n of e.getItems()){if(!this.conversionApi.consumable.test(n,o))continue;const i={item:n,range:Hs._createOn(n),markerName:t,markerRange:e};this.fire(o,i,this.conversionApi)}this._clearConversionApi()}}convertMarkerRemove(t,e,n){e.root.document&&\"$graveyard\"!=e.root.rootName&&(this.conversionApi.writer=n,this.fire(\"removeMarker:\"+t,{markerName:t,markerRange:e},this.conversionApi),this._clearConversionApi())}_mapReconversionTriggerEvent(t,e){this._reconversionEventsMapping.set(e,t)}_createInsertConsumable(t){const e=new js;for(const n of t){const t=n.item;e.add(t,\"insert\");for(const n of t.getAttributeKeys())e.add(t,\"attribute:\"+n)}return e}_createConsumableForRange(t,e){const n=new js;for(const o of t.getItems())n.add(o,e);return n}_createSelectionConsumable(t,e){const n=new js;n.add(t,\"selection\");for(const o of e)n.add(t,\"addMarker:\"+o.name);for(const e of t.getAttributeKeys())n.add(t,\"attribute:\"+e);return n}_testAndFire(t,e){this.conversionApi.consumable.test(e.item,t)&&this.fire(function(t,e){const n=e.item.name||\"$text\";return`${t}:${n}`}(t,e),e,this.conversionApi)}_clearConversionApi(){delete this.conversionApi.writer,delete this.conversionApi.consumable}_convertInsertWithAttributes(t){this._testAndFire(\"insert\",t);for(const e of t.item.getAttributeKeys())t.attributeKey=e,t.attributeOldValue=null,t.attributeNewValue=t.item.getAttribute(e),this._testAndFire(`attribute:${e}`,t)}_mapChangesWithAutomaticReconversion(t){const e=new Set,n=[];for(const o of t.getChanges()){const t=o.position||o.range.start,i=t.parent;if(Vs(t,i)){n.push(o);continue}const r=\"attribute\"===o.type?zs(t,i,null):i;if(r.is(\"$text\")){n.push(o);continue}let s;if(s=\"attribute\"===o.type?`attribute:${o.attributeKey}:${r.name}`:`${o.type}:${o.name}`,this._isReconvertTriggerEvent(s,r.name)){if(e.has(r))continue;e.add(r),n.push({type:\"reconvert\",element:r})}else n.push(o)}return n}_isReconvertTriggerEvent(t,e){return this._reconversionEventsMapping.get(t)===e}}function Gs(t,e,n){const o=e.getRange(),i=Array.from(t.getAncestors());i.shift(),i.reverse();return!i.some((t=>{if(o.containsItem(t)){return!!n.toViewElement(t).getCustomProperty(\"addHighlight\")}}))}function $s(t){return{item:t.item,range:Hs._createFromPositionAndShift(t.previousPosition,t.length)}}function Us(t,e){if(t.is(\"textProxy\")){const n=e.toViewPosition(Ms._createBefore(t)).parent;return n.is(\"$text\")?n:null}return e.toViewElement(t)}In(Ws,vn);class Js{constructor(t,e,n){this._lastRangeBackward=!1,this._ranges=[],this._attrs=new Map,t&&this.setTo(t,e,n)}get anchor(){if(this._ranges.length>0){const t=this._ranges[this._ranges.length-1];return this._lastRangeBackward?t.end:t.start}return null}get focus(){if(this._ranges.length>0){const t=this._ranges[this._ranges.length-1];return this._lastRangeBackward?t.start:t.end}return null}get isCollapsed(){return 1===this._ranges.length&&this._ranges[0].isCollapsed}get rangeCount(){return this._ranges.length}get isBackward(){return!this.isCollapsed&&this._lastRangeBackward}isEqual(t){if(this.rangeCount!=t.rangeCount)return!1;if(0===this.rangeCount)return!0;if(!this.anchor.isEqual(t.anchor)||!this.focus.isEqual(t.focus))return!1;for(const e of this._ranges){let n=!1;for(const o of t._ranges)if(e.isEqual(o)){n=!0;break}if(!n)return!1}return!0}*getRanges(){for(const t of this._ranges)yield new Hs(t.start,t.end)}getFirstRange(){let t=null;for(const e of this._ranges)t&&!e.start.isBefore(t.start)||(t=e);return t?new Hs(t.start,t.end):null}getLastRange(){let t=null;for(const e of this._ranges)t&&!e.end.isAfter(t.end)||(t=e);return t?new Hs(t.start,t.end):null}getFirstPosition(){const t=this.getFirstRange();return t?t.start.clone():null}getLastPosition(){const t=this.getLastRange();return t?t.end.clone():null}setTo(t,e,n){if(null===t)this._setRanges([]);else if(t instanceof Js)this._setRanges(t.getRanges(),t.isBackward);else if(t&&\"function\"==typeof t.getRanges)this._setRanges(t.getRanges(),t.isBackward);else if(t instanceof Hs)this._setRanges([t],!!e&&!!e.backward);else if(t instanceof Ms)this._setRanges([new Hs(t)]);else if(t instanceof Bs){const o=!!n&&!!n.backward;let i;if(\"in\"==e)i=Hs._createIn(t);else if(\"on\"==e)i=Hs._createOn(t);else{if(void 0===e)throw new _n.a(\"model-selection-setto-required-second-parameter\",[this,t]);i=new Hs(Ms._createAt(t,e))}this._setRanges([i],o)}else{if(!Pn(t))throw new _n.a(\"model-selection-setto-not-selectable\",[this,t]);this._setRanges(t,e&&!!e.backward)}}_setRanges(t,e=!1){const n=(t=Array.from(t)).some((e=>{if(!(e instanceof Hs))throw new _n.a(\"model-selection-set-ranges-not-range\",[this,t]);return this._ranges.every((t=>!t.isEqual(e)))}));if(t.length!==this._ranges.length||n){this._removeAllRanges();for(const e of t)this._pushRange(e);this._lastRangeBackward=!!e,this.fire(\"change:range\",{directChange:!0})}}setFocus(t,e){if(null===this.anchor)throw new _n.a(\"model-selection-setfocus-no-ranges\",[this,t]);const n=Ms._createAt(t,e);if(\"same\"==n.compareWith(this.focus))return;const o=this.anchor;this._ranges.length&&this._popRange(),\"before\"==n.compareWith(o)?(this._pushRange(new Hs(n,o)),this._lastRangeBackward=!0):(this._pushRange(new Hs(o,n)),this._lastRangeBackward=!1),this.fire(\"change:range\",{directChange:!0})}getAttribute(t){return this._attrs.get(t)}getAttributes(){return this._attrs.entries()}getAttributeKeys(){return this._attrs.keys()}hasAttribute(t){return this._attrs.has(t)}removeAttribute(t){this.hasAttribute(t)&&(this._attrs.delete(t),this.fire(\"change:attribute\",{attributeKeys:[t],directChange:!0}))}setAttribute(t,e){this.getAttribute(t)!==e&&(this._attrs.set(t,e),this.fire(\"change:attribute\",{attributeKeys:[t],directChange:!0}))}getSelectedElement(){return 1!==this.rangeCount?null:this.getFirstRange().getContainedElement()}is(t){return\"selection\"===t||\"model:selection\"===t}*getSelectedBlocks(){const t=new WeakSet;for(const e of this.getRanges()){const n=Xs(e.start,t);n&&Zs(n,e)&&(yield n);for(const n of e.getWalker()){const o=n.item;\"elementEnd\"==n.type&&Qs(o,t,e)&&(yield o)}const o=Xs(e.end,t);o&&!e.end.isTouching(Ms._createAt(o,0))&&Zs(o,e)&&(yield o)}}containsEntireContent(t=this.anchor.root){const e=Ms._createAt(t,0),n=Ms._createAt(t,\"end\");return e.isTouching(this.getFirstPosition())&&n.isTouching(this.getLastPosition())}_pushRange(t){this._checkRange(t),this._ranges.push(new Hs(t.start,t.end))}_checkRange(t){for(let e=0;e0;)this._popRange()}_popRange(){this._ranges.pop()}}function Ys(t,e){return!e.has(t)&&(e.add(t),t.root.document.model.schema.isBlock(t)&&t.parent)}function Qs(t,e,n){return Ys(t,e)&&Zs(t,n)}function Xs(t,e){const n=t.parent.root.document.model.schema,o=t.parent.getAncestors({parentFirst:!0,includeSelf:!0});let i=!1;const r=o.find((t=>!i&&(i=n.isLimit(t),!i&&Ys(t,e))));return o.forEach((t=>e.add(t))),r}function Zs(t,e){const n=function(t){const e=t.root.document.model.schema;let n=t.parent;for(;n;){if(e.isBlock(n))return n;n=n.parent}}(t);if(!n)return!0;return!e.containsRange(Hs._createOn(n),!0)}In(Js,vn);class ta extends Hs{constructor(t,e){super(t,e),ea.call(this)}detach(){this.stopListening()}is(t){return\"liveRange\"===t||\"model:liveRange\"===t||\"range\"==t||\"model:range\"===t}toRange(){return new Hs(this.start,this.end)}static fromRange(t){return new ta(t.start,t.end)}}function ea(){this.listenTo(this.root.document.model,\"applyOperation\",((t,e)=>{const n=e[0];n.isDocumentOperation&&na.call(this,n)}),{priority:\"low\"})}function na(t){const e=this.getTransformedByOperation(t),n=Hs._createFromRanges(e),o=!n.isEqual(this),i=function(t,e){switch(e.type){case\"insert\":return t.containsPosition(e.position);case\"move\":case\"remove\":case\"reinsert\":case\"merge\":return t.containsPosition(e.sourcePosition)||t.start.isEqual(e.sourcePosition)||t.containsPosition(e.targetPosition);case\"split\":return t.containsPosition(e.splitPosition)||t.containsPosition(e.insertionPosition)}return!1}(this,t);let r=null;if(o){\"$graveyard\"==n.root.rootName&&(r=\"remove\"==t.type?t.sourcePosition:t.deletionPosition);const e=this.toRange();this.start=n.start,this.end=n.end,this.fire(\"change:range\",e,{deletionPosition:r})}else i&&this.fire(\"change:content\",this.toRange(),{deletionPosition:r})}In(ta,vn);const oa=\"selection:\";class ia{constructor(t){this._selection=new ra(t),this._selection.delegate(\"change:range\").to(this),this._selection.delegate(\"change:attribute\").to(this),this._selection.delegate(\"change:marker\").to(this)}get isCollapsed(){return this._selection.isCollapsed}get anchor(){return this._selection.anchor}get focus(){return this._selection.focus}get rangeCount(){return this._selection.rangeCount}get hasOwnRange(){return this._selection.hasOwnRange}get isBackward(){return this._selection.isBackward}get isGravityOverridden(){return this._selection.isGravityOverridden}get markers(){return this._selection.markers}get _ranges(){return this._selection._ranges}getRanges(){return this._selection.getRanges()}getFirstPosition(){return this._selection.getFirstPosition()}getLastPosition(){return this._selection.getLastPosition()}getFirstRange(){return this._selection.getFirstRange()}getLastRange(){return this._selection.getLastRange()}getSelectedBlocks(){return this._selection.getSelectedBlocks()}getSelectedElement(){return this._selection.getSelectedElement()}containsEntireContent(t){return this._selection.containsEntireContent(t)}destroy(){this._selection.destroy()}getAttributeKeys(){return this._selection.getAttributeKeys()}getAttributes(){return this._selection.getAttributes()}getAttribute(t){return this._selection.getAttribute(t)}hasAttribute(t){return this._selection.hasAttribute(t)}refresh(){this._selection._updateMarkers(),this._selection._updateAttributes(!1)}is(t){return\"selection\"===t||\"model:selection\"==t||\"documentSelection\"==t||\"model:documentSelection\"==t}_setFocus(t,e){this._selection.setFocus(t,e)}_setTo(t,e,n){this._selection.setTo(t,e,n)}_setAttribute(t,e){this._selection.setAttribute(t,e)}_removeAttribute(t){this._selection.removeAttribute(t)}_getStoredAttributes(){return this._selection._getStoredAttributes()}_overrideGravity(){return this._selection.overrideGravity()}_restoreGravity(t){this._selection.restoreGravity(t)}static _getStoreAttributeKey(t){return oa+t}static _isStoreAttributeKey(t){return t.startsWith(oa)}}In(ia,vn);class ra extends Js{constructor(t){super(),this.markers=new Rn({idProperty:\"name\"}),this._model=t.model,this._document=t,this._attributePriority=new Map,this._selectionRestorePosition=null,this._hasChangedRange=!1,this._overriddenGravityRegister=new Set,this.listenTo(this._model,\"applyOperation\",((t,e)=>{const n=e[0];n.isDocumentOperation&&\"marker\"!=n.type&&\"rename\"!=n.type&&\"noop\"!=n.type&&(0==this._ranges.length&&this._selectionRestorePosition&&this._fixGraveyardSelection(this._selectionRestorePosition),this._selectionRestorePosition=null,this._hasChangedRange&&(this._hasChangedRange=!1,this.fire(\"change:range\",{directChange:!1})))}),{priority:\"lowest\"}),this.on(\"change:range\",(()=>{for(const t of this.getRanges())if(!this._document._validateSelectionRange(t))throw new _n.a(\"document-selection-wrong-position\",this,{range:t})})),this.listenTo(this._model.markers,\"update\",(()=>this._updateMarkers())),this.listenTo(this._document,\"change\",((t,e)=>{!function(t,e){const n=t.document.differ;for(const o of n.getChanges()){if(\"insert\"!=o.type)continue;const n=o.position.parent;o.length===n.maxOffset&&t.enqueueChange(e,(t=>{const e=Array.from(n.getAttributeKeys()).filter((t=>t.startsWith(oa)));for(const o of e)t.removeAttribute(o,n)}))}}(this._model,e)}))}get isCollapsed(){return 0===this._ranges.length?this._document._getDefaultRange().isCollapsed:super.isCollapsed}get anchor(){return super.anchor||this._document._getDefaultRange().start}get focus(){return super.focus||this._document._getDefaultRange().end}get rangeCount(){return this._ranges.length?this._ranges.length:1}get hasOwnRange(){return this._ranges.length>0}get isGravityOverridden(){return!!this._overriddenGravityRegister.size}destroy(){for(let t=0;t{if(this._hasChangedRange=!0,e.root==this._document.graveyard){this._selectionRestorePosition=o.deletionPosition;const t=this._ranges.indexOf(e);this._ranges.splice(t,1),e.detach()}})),e}_updateMarkers(){const t=[];let e=!1;for(const e of this._model.markers){const n=e.getRange();for(const o of this.getRanges())n.containsRange(o,!o.isCollapsed)&&t.push(e)}const n=Array.from(this.markers);for(const n of t)this.markers.has(n)||(this.markers.add(n),e=!0);for(const n of Array.from(this.markers))t.includes(n)||(this.markers.remove(n),e=!0);e&&this.fire(\"change:marker\",{oldMarkers:n,directChange:!1})}_updateAttributes(t){const e=Wn(this._getSurroundingAttributes()),n=Wn(this.getAttributes());if(t)this._attributePriority=new Map,this._attrs=new Map;else for(const[t,e]of this._attributePriority)\"low\"==e&&(this._attrs.delete(t),this._attributePriority.delete(t));this._setAttributesTo(e);const o=[];for(const[t,e]of this.getAttributes())n.has(t)&&n.get(t)===e||o.push(t);for(const[t]of n)this.hasAttribute(t)||o.push(t);o.length>0&&this.fire(\"change:attribute\",{attributeKeys:o,directChange:!1})}_setAttribute(t,e,n=!0){const o=n?\"normal\":\"low\";if(\"low\"==o&&\"normal\"==this._attributePriority.get(t))return!1;return super.getAttribute(t)!==e&&(this._attrs.set(t,e),this._attributePriority.set(t,o),!0)}_removeAttribute(t,e=!0){const n=e?\"normal\":\"low\";return(\"low\"!=n||\"normal\"!=this._attributePriority.get(t))&&(this._attributePriority.set(t,n),!!super.hasAttribute(t)&&(this._attrs.delete(t),!0))}_setAttributesTo(t){const e=new Set;for(const[e,n]of this.getAttributes())t.get(e)!==n&&this._removeAttribute(e,!1);for(const[n,o]of t){this._setAttribute(n,o,!1)&&e.add(n)}return e}*_getStoredAttributes(){const t=this.getFirstPosition().parent;if(this.isCollapsed&&t.isEmpty)for(const e of t.getAttributeKeys())if(e.startsWith(oa)){const n=e.substr(oa.length);yield[n,t.getAttribute(e)]}}_getSurroundingAttributes(){const t=this.getFirstPosition(),e=this._model.schema;let n=null;if(this.isCollapsed){const o=t.textNode?t.textNode:t.nodeBefore,i=t.textNode?t.textNode:t.nodeAfter;if(this.isGravityOverridden||(n=sa(o)),n||(n=sa(i)),!this.isGravityOverridden&&!n){let t=o;for(;t&&!e.isInline(t)&&!n;)t=t.previousSibling,n=sa(t)}if(!n){let t=i;for(;t&&!e.isInline(t)&&!n;)t=t.nextSibling,n=sa(t)}n||(n=this._getStoredAttributes())}else{const t=this.getFirstRange();for(const o of t){if(o.item.is(\"element\")&&e.isObject(o.item))break;if(\"text\"==o.type){n=o.item.getAttributes();break}}}return n}_fixGraveyardSelection(t){const e=this._model.schema.getNearestSelectionRange(t);e&&this._pushRange(e)}}function sa(t){return t instanceof Is||t instanceof Ps?t.getAttributes():null}class aa{constructor(t){this._dispatchers=t}add(t){for(const e of this._dispatchers)t(e);return this}}var ca=function(t){return ln(t,5)};class la extends aa{elementToElement(t){return this.add(function(t){return(t=ca(t)).view=ua(t.view,\"container\"),e=>{var n;if(e.on(\"insert:\"+t.model,(n=t.view,(t,e,o)=>{const i=n(e.item,o);if(!i)return;if(!o.consumable.consume(e.item,\"insert\"))return;const r=o.mapper.toViewPosition(e.range.start);o.mapper.bindElements(e.item,i),o.writer.insert(r,i)}),{priority:t.converterPriority||\"normal\"}),t.triggerBy){if(t.triggerBy.attributes)for(const n of t.triggerBy.attributes)e._mapReconversionTriggerEvent(t.model,`attribute:${n}:${t.model}`);if(t.triggerBy.children)for(const n of t.triggerBy.children)e._mapReconversionTriggerEvent(t.model,`insert:${n}`),e._mapReconversionTriggerEvent(t.model,`remove:${n}`)}}}(t))}attributeToElement(t){return this.add(function(t){t=ca(t);let e=\"attribute:\"+(t.model.key?t.model.key:t.model);t.model.name&&(e+=\":\"+t.model.name);if(t.model.values)for(const e of t.model.values)t.view[e]=ua(t.view[e],\"attribute\");else t.view=ua(t.view,\"attribute\");const n=ma(t);return o=>{o.on(e,function(t){return(e,n,o)=>{const i=t(n.attributeOldValue,o),r=t(n.attributeNewValue,o);if(!i&&!r)return;if(!o.consumable.consume(n.item,e.name))return;const s=o.writer,a=s.document.selection;if(n.item instanceof Js||n.item instanceof ia)s.wrap(a.getFirstRange(),r);else{let t=o.mapper.toViewRange(n.range);null!==n.attributeOldValue&&i&&(t=s.unwrap(t,i)),null!==n.attributeNewValue&&r&&s.wrap(t,r)}}}(n),{priority:t.converterPriority||\"normal\"})}}(t))}attributeToAttribute(t){return this.add(function(t){t=ca(t);let e=\"attribute:\"+(t.model.key?t.model.key:t.model);t.model.name&&(e+=\":\"+t.model.name);if(t.model.values)for(const e of t.model.values)t.view[e]=ga(t.view[e]);else t.view=ga(t.view);const n=ma(t);return o=>{var i;o.on(e,(i=n,(t,e,n)=>{const o=i(e.attributeOldValue,n),r=i(e.attributeNewValue,n);if(!o&&!r)return;if(!n.consumable.consume(e.item,t.name))return;const s=n.mapper.toViewElement(e.item),a=n.writer;if(!s)throw new _n.a(\"conversion-attribute-to-attribute-on-text\",[e,n]);if(null!==e.attributeOldValue&&o)if(\"class\"==o.key){const t=Array.isArray(o.value)?o.value:[o.value];for(const e of t)a.removeClass(e,s)}else if(\"style\"==o.key){const t=Object.keys(o.value);for(const e of t)a.removeStyle(e,s)}else a.removeAttribute(o.key,s);if(null!==e.attributeNewValue&&r)if(\"class\"==r.key){const t=Array.isArray(r.value)?r.value:[r.value];for(const e of t)a.addClass(e,s)}else if(\"style\"==r.key){const t=Object.keys(r.value);for(const e of t)a.setStyle(e,r.value[e],s)}else a.setAttribute(r.key,r.value,s)}),{priority:t.converterPriority||\"normal\"})}}(t))}markerToElement(t){return this.add(function(t){return(t=ca(t)).view=ua(t.view,\"ui\"),e=>{var n;e.on(\"addMarker:\"+t.model,(n=t.view,(t,e,o)=>{e.isOpening=!0;const i=n(e,o);e.isOpening=!1;const r=n(e,o);if(!i||!r)return;const s=e.markerRange;if(s.isCollapsed&&!o.consumable.consume(s,t.name))return;for(const e of s)if(!o.consumable.consume(e.item,t.name))return;const a=o.mapper,c=o.writer;c.insert(a.toViewPosition(s.start),i),o.mapper.bindElementToMarker(i,e.markerName),s.isCollapsed||(c.insert(a.toViewPosition(s.end),r),o.mapper.bindElementToMarker(r,e.markerName)),t.stop()}),{priority:t.converterPriority||\"normal\"}),e.on(\"removeMarker:\"+t.model,(t.view,(t,e,n)=>{const o=n.mapper.markerNameToElements(e.markerName);if(o){for(const t of o)n.mapper.unbindElementFromMarkerName(t,e.markerName),n.writer.clear(n.writer.createRangeOn(t),t);n.writer.clearClonedElementsGroup(e.markerName),t.stop()}}),{priority:t.converterPriority||\"normal\"})}}(t))}markerToHighlight(t){return this.add(function(t){return e=>{var n;e.on(\"addMarker:\"+t.model,(n=t.view,(t,e,o)=>{if(!e.item)return;if(!(e.item instanceof Js||e.item instanceof ia||e.item.is(\"$textProxy\")))return;const i=pa(n,e,o);if(!i)return;if(!o.consumable.consume(e.item,t.name))return;const r=o.writer,s=da(r,i),a=r.document.selection;if(e.item instanceof Js||e.item instanceof ia)r.wrap(a.getFirstRange(),s,a);else{const t=o.mapper.toViewRange(e.range),n=r.wrap(t,s);for(const t of n.getItems())if(t.is(\"attributeElement\")&&t.isSimilar(s)){o.mapper.bindElementToMarker(t,e.markerName);break}}}),{priority:t.converterPriority||\"normal\"}),e.on(\"addMarker:\"+t.model,function(t){return(e,n,o)=>{if(!n.item)return;if(!(n.item instanceof Fs))return;const i=pa(t,n,o);if(!i)return;if(!o.consumable.test(n.item,e.name))return;const r=o.mapper.toViewElement(n.item);if(r&&r.getCustomProperty(\"addHighlight\")){o.consumable.consume(n.item,e.name);for(const t of Hs._createIn(n.item))o.consumable.consume(t.item,e.name);r.getCustomProperty(\"addHighlight\")(r,i,o.writer),o.mapper.bindElementToMarker(r,n.markerName)}}}(t.view),{priority:t.converterPriority||\"normal\"}),e.on(\"removeMarker:\"+t.model,function(t){return(e,n,o)=>{if(n.markerRange.isCollapsed)return;const i=pa(t,n,o);if(!i)return;const r=da(o.writer,i),s=o.mapper.markerNameToElements(n.markerName);if(s){for(const t of s)o.mapper.unbindElementFromMarkerName(t,n.markerName),t.is(\"attributeElement\")?o.writer.unwrap(o.writer.createRangeOn(t),r):t.getCustomProperty(\"removeHighlight\")(t,i.id,o.writer);o.writer.clearClonedElementsGroup(n.markerName),e.stop()}}}(t.view),{priority:t.converterPriority||\"normal\"})}}(t))}markerToData(t){return this.add(function(t){const e=(t=ca(t)).model;t.view||(t.view=n=>({group:e,name:n.substr(t.model.length+1)}));return n=>{var o;n.on(\"addMarker:\"+e,(o=t.view,(t,e,n)=>{const i=o(e.markerName,n);if(!i)return;const r=e.markerRange;n.consumable.consume(r,t.name)&&(ha(r,!1,n,e,i),ha(r,!0,n,e,i),t.stop())}),{priority:t.converterPriority||\"normal\"}),n.on(\"removeMarker:\"+e,function(t){return(e,n,o)=>{const i=t(n.markerName,o);if(!i)return;const r=o.mapper.markerNameToElements(n.markerName);if(r){for(const t of r)o.mapper.unbindElementFromMarkerName(t,n.markerName),t.is(\"containerElement\")?(s(`data-${i.group}-start-before`,t),s(`data-${i.group}-start-after`,t),s(`data-${i.group}-end-before`,t),s(`data-${i.group}-end-after`,t)):o.writer.clear(o.writer.createRangeOn(t),t);o.writer.clearClonedElementsGroup(n.markerName),e.stop()}function s(t,e){if(e.hasAttribute(t)){const n=new Set(e.getAttribute(t).split(\",\"));n.delete(i.name),0==n.size?o.writer.removeAttribute(t,e):o.writer.setAttribute(t,Array.from(n).join(\",\"),e)}}}}(t.view),{priority:t.converterPriority||\"normal\"})}}(t))}}function da(t,e){const n=t.createAttributeElement(\"span\",e.attributes);return e.classes&&n._addClass(e.classes),e.priority&&(n._priority=e.priority),n._id=e.id,n}function ha(t,e,n,o,i){const r=e?t.start:t.end;if(n.schema.checkChild(r,\"$text\")){!function(t,e,n,o,i){const r=`${i.group}-${e?\"start\":\"end\"}`,s=i.name?{name:i.name}:null,a=n.writer.createUIElement(r,s);n.writer.insert(t,a),n.mapper.bindElementToMarker(a,o.markerName)}(n.mapper.toViewPosition(r),e,n,o,i)}else{let t,s;e&&r.nodeAfter||!e&&!r.nodeBefore?(t=r.nodeAfter,s=!0):(t=r.nodeBefore,s=!1);!function(t,e,n,o,i,r){const s=`data-${r.group}-${e?\"start\":\"end\"}-${n?\"before\":\"after\"}`,a=t.hasAttribute(s)?t.getAttribute(s).split(\",\"):[];a.unshift(r.name),o.writer.setAttribute(s,a.join(\",\"),t),o.mapper.bindElementToMarker(t,i.markerName)}(n.mapper.toViewElement(t),e,s,n,o,i)}}function ua(t,e){return\"function\"==typeof t?t:(n,o)=>function(t,e,n){\"string\"==typeof t&&(t={name:t});let o;const i=e.writer,r=Object.assign({},t.attributes);if(\"container\"==n)o=i.createContainerElement(t.name,r);else if(\"attribute\"==n){const e={priority:t.priority||pi.DEFAULT_PRIORITY};o=i.createAttributeElement(t.name,r,e)}else o=i.createUIElement(t.name,r);if(t.styles){const e=Object.keys(t.styles);for(const n of e)i.setStyle(n,t.styles[n],o)}if(t.classes){const e=t.classes;if(\"string\"==typeof e)i.addClass(e,o);else for(const t of e)i.addClass(t,o)}return o}(t,o,e)}function ma(t){return t.model.values?(e,n)=>{const o=t.view[e];return o?o(e,n):null}:t.view}function ga(t){return\"string\"==typeof t?e=>({key:t,value:e}):\"object\"==typeof t?t.value?()=>t:e=>({key:t.key,value:e}):t}function pa(t,e,n){const o=\"function\"==typeof t?t(e,n):t;return o?(o.priority||(o.priority=10),o.id||(o.id=e.markerName),o):null}function fa(t){const{schema:e,document:n}=t.model;for(const o of n.getRootNames()){const i=n.getRoot(o);if(i.isEmpty&&!e.checkChild(i,\"$text\")&&e.checkChild(i,\"paragraph\"))return t.insertElement(\"paragraph\",i),!0}return!1}function ba(t,e,n){const o=n.createContext(t);return!!n.checkChild(o,\"paragraph\")&&!!n.checkChild(o.push(\"paragraph\"),e)}function ka(t,e){const n=e.createElement(\"paragraph\");return e.insert(n,t),e.createPositionAt(n,0)}class wa extends aa{elementToElement(t){return this.add(_a(t))}elementToAttribute(t){return this.add(function(t){va(t=ca(t));const e=ya(t,!1),n=Ca(t.view),o=n?\"element:\"+n:\"element\";return n=>{n.on(o,e,{priority:t.converterPriority||\"low\"})}}(t))}attributeToAttribute(t){return this.add(function(t){t=ca(t);let e=null;(\"string\"==typeof t.view||t.view.key)&&(e=function(t){\"string\"==typeof t.view&&(t.view={key:t.view});const e=t.view.key;let n;if(\"class\"==e||\"style\"==e){n={[\"class\"==e?\"classes\":\"styles\"]:t.view.value}}else{n={attributes:{[e]:void 0===t.view.value?/[\\s\\S]*/:t.view.value}}}t.view.name&&(n.name=t.view.name);return t.view=n,e}(t));va(t,e);const n=ya(t,!0);return e=>{e.on(\"element\",n,{priority:t.converterPriority||\"low\"})}}(t))}elementToMarker(t){return Object(_n.c)(\"upcast-helpers-element-to-marker-deprecated\"),this.add(function(t){return function(t){const e=t.model;t.model=(t,n)=>{const o=\"string\"==typeof e?e:e(t,n);return n.writer.createElement(\"$marker\",{\"data-name\":o})}}(t=ca(t)),_a(t)}(t))}dataToMarker(t){return this.add(function(t){(t=ca(t)).model||(t.model=e=>e?t.view+\":\"+e:t.view);const e=Aa(xa(t,\"start\")),n=Aa(xa(t,\"end\"));return o=>{o.on(\"element:\"+t.view+\"-start\",e,{priority:t.converterPriority||\"normal\"}),o.on(\"element:\"+t.view+\"-end\",n,{priority:t.converterPriority||\"normal\"});const i=wn.get(\"low\"),r=wn.get(\"highest\"),s=wn.get(t.converterPriority)/r;o.on(\"element\",function(t){return(e,n,o)=>{const i=`data-${t.view}`;function r(e,i){for(const r of i){const i=t.model(r,o),s=o.writer.createElement(\"$marker\",{\"data-name\":i});o.writer.insert(s,e),n.modelCursor.isEqual(e)?n.modelCursor=n.modelCursor.getShiftedBy(1):n.modelCursor=n.modelCursor._getTransformedByInsertion(e,1),n.modelRange=n.modelRange._getTransformedByInsertion(e,1)[0]}}n.modelRange||(n=Object.assign(n,o.convertChildren(n.viewItem,n.modelCursor))),o.consumable.consume(n.viewItem,{attributes:i+\"-end-after\"})&&r(n.modelRange.end,n.viewItem.getAttribute(i+\"-end-after\").split(\",\")),o.consumable.consume(n.viewItem,{attributes:i+\"-start-after\"})&&r(n.modelRange.end,n.viewItem.getAttribute(i+\"-start-after\").split(\",\")),o.consumable.consume(n.viewItem,{attributes:i+\"-end-before\"})&&r(n.modelRange.start,n.viewItem.getAttribute(i+\"-end-before\").split(\",\")),o.consumable.consume(n.viewItem,{attributes:i+\"-start-before\"})&&r(n.modelRange.start,n.viewItem.getAttribute(i+\"-start-before\").split(\",\"))}}(t),{priority:i+s})}}(t))}}function _a(t){const e=Aa(t=ca(t)),n=Ca(t.view),o=n?\"element:\"+n:\"element\";return n=>{n.on(o,e,{priority:t.converterPriority||\"normal\"})}}function Ca(t){return\"string\"==typeof t?t:\"object\"==typeof t&&\"string\"==typeof t.name?t.name:null}function Aa(t){const e=new Gn(t.view);return(n,o,i)=>{const r=e.match(o.viewItem);if(!r)return;const s=r.match;if(s.name=!0,!i.consumable.test(o.viewItem,s))return;const a=function(t,e,n){return t instanceof Function?t(e,n):n.writer.createElement(t)}(t.model,o.viewItem,i);a&&i.safeInsert(a,o.modelCursor)&&(i.consumable.consume(o.viewItem,s),i.convertChildren(o.viewItem,a),i.updateConversionResult(a,o))}}function va(t,e=null){const n=null===e||(t=>t.getAttribute(e)),o=\"object\"!=typeof t.model?t.model:t.model.key,i=\"object\"!=typeof t.model||void 0===t.model.value?n:t.model.value;t.model={key:o,value:i}}function ya(t,e){const n=new Gn(t.view);return(o,i,r)=>{const s=n.match(i.viewItem);if(!s)return;const a=t.model.key,c=\"function\"==typeof t.model.value?t.model.value(i.viewItem,r):t.model.value;if(null===c)return;if(!function(t,e){const n=\"function\"==typeof t?t(e):t;if(\"object\"==typeof n&&!Ca(n))return!1;return!n.classes&&!n.attributes&&!n.styles}(t.view,i.viewItem)?delete s.match.name:s.match.name=!0,!r.consumable.test(i.viewItem,s.match))return;i.modelRange||(i=Object.assign(i,r.convertChildren(i.viewItem,i.modelCursor)));(function(t,e,n,o){let i=!1;for(const r of Array.from(t.getItems({shallow:n})))o.schema.checkAttribute(r,e.key)&&(o.writer.setAttribute(e.key,e.value,r),i=!0);return i})(i.modelRange,{key:a,value:c},e,r)&&r.consumable.consume(i.viewItem,s.match)}}function xa(t,e){const n={};return n.view=t.view+\"-\"+e,n.model=(e,n)=>{const o=e.getAttribute(\"name\"),i=t.model(o,n);return n.writer.createElement(\"$marker\",{\"data-name\":i})},n}class Ea{constructor(t,e){this.model=t,this.view=new Ts(e),this.mapper=new Ks,this.downcastDispatcher=new Ws({mapper:this.mapper,schema:t.schema});const n=this.model.document,o=n.selection,i=this.model.markers;this.listenTo(this.model,\"_beforeChanges\",(()=>{this.view._disableRendering(!0)}),{priority:\"highest\"}),this.listenTo(this.model,\"_afterChanges\",(()=>{this.view._disableRendering(!1)}),{priority:\"lowest\"}),this.listenTo(n,\"change\",(()=>{this.view.change((t=>{this.downcastDispatcher.convertChanges(n.differ,i,t),this.downcastDispatcher.convertSelection(o,i,t)}))}),{priority:\"low\"}),this.listenTo(this.view.document,\"selectionChange\",function(t,e){return(n,o)=>{const i=o.newSelection,r=[];for(const t of i.getRanges())r.push(e.toModelRange(t));const s=t.createSelection(r,{backward:i.isBackward});s.isEqual(t.document.selection)||t.change((t=>{t.setSelection(s)}))}}(this.model,this.mapper)),this.downcastDispatcher.on(\"insert:$text\",((t,e,n)=>{if(!n.consumable.consume(e.item,\"insert\"))return;const o=n.writer,i=n.mapper.toViewPosition(e.range.start),r=o.createText(e.item.data);o.insert(i,r)}),{priority:\"lowest\"}),this.downcastDispatcher.on(\"remove\",((t,e,n)=>{const o=n.mapper.toViewPosition(e.position),i=e.position.getShiftedBy(e.length),r=n.mapper.toViewPosition(i,{isPhantom:!0}),s=n.writer.createRange(o,r),a=n.writer.remove(s.getTrimmed());for(const t of n.writer.createRangeIn(a).getItems())n.mapper.unbindViewElement(t)}),{priority:\"low\"}),this.downcastDispatcher.on(\"selection\",((t,e,n)=>{const o=n.writer,i=o.document.selection;for(const t of i.getRanges())t.isCollapsed&&t.end.parent.isAttached()&&n.writer.mergeAttributes(t.start);o.setSelection(null)}),{priority:\"low\"}),this.downcastDispatcher.on(\"selection\",((t,e,n)=>{const o=e.selection;if(o.isCollapsed)return;if(!n.consumable.consume(o,\"selection\"))return;const i=[];for(const t of o.getRanges()){const e=n.mapper.toViewRange(t);i.push(e)}n.writer.setSelection(i,{backward:o.isBackward})}),{priority:\"low\"}),this.downcastDispatcher.on(\"selection\",((t,e,n)=>{const o=e.selection;if(!o.isCollapsed)return;if(!n.consumable.consume(o,\"selection\"))return;const i=n.writer,r=o.getFirstPosition(),s=n.mapper.toViewPosition(r),a=i.breakAttributes(s);i.setSelection(a)}),{priority:\"low\"}),this.view.document.roots.bindTo(this.model.document.roots).using((t=>{if(\"$graveyard\"==t.rootName)return null;const e=new si(this.view.document,t.name);return e.rootName=t.rootName,this.mapper.bindElements(t,e),e}))}destroy(){this.view.destroy(),this.stopListening()}}In(Ea,Xo);class Sa{constructor(){this._commands=new Map}add(t,e){this._commands.set(t,e)}get(t){return this._commands.get(t)}execute(t,...e){const n=this.get(t);if(!n)throw new _n.a(\"commandcollection-command-not-found\",this,{commandName:t});return n.execute(...e)}*names(){yield*this._commands.keys()}*commands(){yield*this._commands.values()}[Symbol.iterator](){return this._commands[Symbol.iterator]()}destroy(){for(const t of this.commands())t.destroy()}}class Da{constructor(){this._consumables=new Map}add(t,e){let n;t.is(\"$text\")||t.is(\"documentFragment\")?this._consumables.set(t,!0):(this._consumables.has(t)?n=this._consumables.get(t):(n=new Ta(t),this._consumables.set(t,n)),n.add(e))}test(t,e){const n=this._consumables.get(t);return void 0===n?null:t.is(\"$text\")||t.is(\"documentFragment\")?n:n.test(e)}consume(t,e){return!!this.test(t,e)&&(t.is(\"$text\")||t.is(\"documentFragment\")?this._consumables.set(t,!1):this._consumables.get(t).consume(e),!0)}revert(t,e){const n=this._consumables.get(t);void 0!==n&&(t.is(\"$text\")||t.is(\"documentFragment\")?this._consumables.set(t,!0):n.revert(e))}static consumablesFromElement(t){const e={element:t,name:!0,attributes:[],classes:[],styles:[]},n=t.getAttributeKeys();for(const t of n)\"style\"!=t&&\"class\"!=t&&e.attributes.push(t);const o=t.getClassNames();for(const t of o)e.classes.push(t);const i=t.getStyleNames();for(const t of i)e.styles.push(t);return e}static createFrom(t,e){if(e||(e=new Da(t)),t.is(\"$text\"))return e.add(t),e;t.is(\"element\")&&e.add(t,Da.consumablesFromElement(t)),t.is(\"documentFragment\")&&e.add(t);for(const n of t.getChildren())e=Da.createFrom(n,e);return e}}class Ta{constructor(t){this.element=t,this._canConsumeName=null,this._consumables={attributes:new Map,styles:new Map,classes:new Map}}add(t){t.name&&(this._canConsumeName=!0);for(const e in this._consumables)e in t&&this._add(e,t[e])}test(t){if(t.name&&!this._canConsumeName)return this._canConsumeName;for(const e in this._consumables)if(e in t){const n=this._test(e,t[e]);if(!0!==n)return n}return!0}consume(t){t.name&&(this._canConsumeName=!1);for(const e in this._consumables)e in t&&this._consume(e,t[e])}revert(t){t.name&&(this._canConsumeName=!0);for(const e in this._consumables)e in t&&this._revert(e,t[e])}_add(t,e){const n=Ot(e)?e:[e],o=this._consumables[t];for(const e of n){if(\"attributes\"===t&&(\"class\"===e||\"style\"===e))throw new _n.a(\"viewconsumable-invalid-attribute\",this);if(o.set(e,!0),\"styles\"===t)for(const t of this.element.document.stylesProcessor.getRelatedStyles(e))o.set(t,!0)}}_test(t,e){const n=Ot(e)?e:[e],o=this._consumables[t];for(const e of n)if(\"attributes\"!==t||\"class\"!==e&&\"style\"!==e){const t=o.get(e);if(void 0===t)return null;if(!t)return!1}else{const t=\"class\"==e?\"classes\":\"styles\",n=this._test(t,[...this._consumables[t].keys()]);if(!0!==n)return n}return!0}_consume(t,e){const n=Ot(e)?e:[e],o=this._consumables[t];for(const e of n)if(\"attributes\"!==t||\"class\"!==e&&\"style\"!==e){if(o.set(e,!1),\"styles\"==t)for(const t of this.element.document.stylesProcessor.getRelatedStyles(e))o.set(t,!1)}else{const t=\"class\"==e?\"classes\":\"styles\";this._consume(t,[...this._consumables[t].keys()])}}_revert(t,e){const n=Ot(e)?e:[e],o=this._consumables[t];for(const e of n)if(\"attributes\"!==t||\"class\"!==e&&\"style\"!==e){!1===o.get(e)&&o.set(e,!0)}else{const t=\"class\"==e?\"classes\":\"styles\";this._revert(t,[...this._consumables[t].keys()])}}}class Ba{constructor(){this._sourceDefinitions={},this._attributeProperties={},this.decorate(\"checkChild\"),this.decorate(\"checkAttribute\"),this.on(\"checkAttribute\",((t,e)=>{e[0]=new Pa(e[0])}),{priority:\"highest\"}),this.on(\"checkChild\",((t,e)=>{e[0]=new Pa(e[0]),e[1]=this.getDefinition(e[1])}),{priority:\"highest\"})}register(t,e){if(this._sourceDefinitions[t])throw new _n.a(\"schema-cannot-register-item-twice\",this,{itemName:t});this._sourceDefinitions[t]=[Object.assign({},e)],this._clearCache()}extend(t,e){if(!this._sourceDefinitions[t])throw new _n.a(\"schema-cannot-extend-missing-item\",this,{itemName:t});this._sourceDefinitions[t].push(Object.assign({},e)),this._clearCache()}getDefinitions(){return this._compiledDefinitions||this._compile(),this._compiledDefinitions}getDefinition(t){let e;return e=\"string\"==typeof t?t:t.is&&(t.is(\"$text\")||t.is(\"$textProxy\"))?\"$text\":t.name,this.getDefinitions()[e]}isRegistered(t){return!!this.getDefinition(t)}isBlock(t){const e=this.getDefinition(t);return!(!e||!e.isBlock)}isLimit(t){const e=this.getDefinition(t);return!!e&&!(!e.isLimit&&!e.isObject)}isObject(t){const e=this.getDefinition(t);return!!e&&!!(e.isObject||e.isLimit&&e.isSelectable&&e.isContent)}isInline(t){const e=this.getDefinition(t);return!(!e||!e.isInline)}isSelectable(t){const e=this.getDefinition(t);return!!e&&!(!e.isSelectable&&!e.isObject)}isContent(t){const e=this.getDefinition(t);return!!e&&!(!e.isContent&&!e.isObject)}checkChild(t,e){return!!e&&this._checkContextMatch(e,t)}checkAttribute(t,e){const n=this.getDefinition(t.last);return!!n&&n.allowAttributes.includes(e)}checkMerge(t,e=null){if(t instanceof Ms){const e=t.nodeBefore,n=t.nodeAfter;if(!(e instanceof Fs))throw new _n.a(\"schema-check-merge-no-element-before\",this);if(!(n instanceof Fs))throw new _n.a(\"schema-check-merge-no-element-after\",this);return this.checkMerge(e,n)}for(const n of e.getChildren())if(!this.checkChild(t,n))return!1;return!0}addChildCheck(t){this.on(\"checkChild\",((e,[n,o])=>{if(!o)return;const i=t(n,o);\"boolean\"==typeof i&&(e.stop(),e.return=i)}),{priority:\"high\"})}addAttributeCheck(t){this.on(\"checkAttribute\",((e,[n,o])=>{const i=t(n,o);\"boolean\"==typeof i&&(e.stop(),e.return=i)}),{priority:\"high\"})}setAttributeProperties(t,e){this._attributeProperties[t]=Object.assign(this.getAttributeProperties(t),e)}getAttributeProperties(t){return this._attributeProperties[t]||{}}getLimitElement(t){let e;if(t instanceof Ms)e=t.parent;else{e=(t instanceof Hs?[t]:Array.from(t.getRanges())).reduce(((t,e)=>{const n=e.getCommonAncestor();return t?t.getCommonAncestor(n,{includeSelf:!0}):n}),null)}for(;!this.isLimit(e)&&e.parent;)e=e.parent;return e}checkAttributeInSelection(t,e){if(t.isCollapsed){const n=[...t.getFirstPosition().getAncestors(),new Ps(\"\",t.getAttributes())];return this.checkAttribute(n,e)}{const n=t.getRanges();for(const t of n)for(const n of t)if(this.checkAttribute(n.item,e))return!0}return!1}*getValidRanges(t,e){t=function*(t){for(const e of t)yield*e.getMinimalFlatRanges()}(t);for(const n of t)yield*this._getValidRangesForRange(n,e)}getNearestSelectionRange(t,e=\"both\"){if(this.checkChild(t,\"$text\"))return new Hs(t);let n,o;const i=t.getAncestors().reverse().find((t=>this.isLimit(t)))||t.root;\"both\"!=e&&\"backward\"!=e||(n=new Os({boundaries:Hs._createIn(i),startPosition:t,direction:\"backward\"})),\"both\"!=e&&\"forward\"!=e||(o=new Os({boundaries:Hs._createIn(i),startPosition:t}));for(const t of function*(t,e){let n=!1;for(;!n;){if(n=!0,t){const e=t.next();e.done||(n=!1,yield{walker:t,value:e.value})}if(e){const t=e.next();t.done||(n=!1,yield{walker:e,value:t.value})}}}(n,o)){const e=t.walker==n?\"elementEnd\":\"elementStart\",o=t.value;if(o.type==e&&this.isObject(o.item))return Hs._createOn(o.item);if(this.checkChild(o.nextPosition,\"$text\"))return new Hs(o.nextPosition)}return null}findAllowedParent(t,e){let n=t.parent;for(;n;){if(this.checkChild(n,e))return n;if(this.isLimit(n))return null;n=n.parent}return null}removeDisallowedAttributes(t,e){for(const n of t)if(n.is(\"$text\"))Ka(this,n,e);else{const t=Hs._createIn(n).getPositions();for(const n of t){Ka(this,n.nodeBefore||n.parent,e)}}}createContext(t){return new Pa(t)}_clearCache(){this._compiledDefinitions=null}_compile(){const t={},e=this._sourceDefinitions,n=Object.keys(e);for(const o of n)t[o]=Ia(e[o],o);for(const e of n)Ra(t,e);for(const e of n)Fa(t,e);for(const e of n)Oa(t,e),Na(t,e);for(const e of n)Ma(t,e),Va(t,e);this._compiledDefinitions=t}_checkContextMatch(t,e,n=e.length-1){const o=e.getItem(n);if(t.allowIn.includes(o.name)){if(0==n)return!0;{const t=this.getDefinition(o);return this._checkContextMatch(t,e,n-1)}}return!1}*_getValidRangesForRange(t,e){let n=t.start,o=t.start;for(const i of t.getItems({shallow:!0}))i.is(\"element\")&&(yield*this._getValidRangesForRange(Hs._createIn(i),e)),this.checkAttribute(i,e)||(n.isEqual(o)||(yield new Hs(n,o)),n=Ms._createAfter(i)),o=Ms._createAfter(i);n.isEqual(o)||(yield new Hs(n,o))}}In(Ba,Xo);class Pa{constructor(t){if(t instanceof Pa)return t;\"string\"==typeof t?t=[t]:Array.isArray(t)||(t=t.getAncestors({includeSelf:!0})),t[0]&&\"string\"!=typeof t[0]&&t[0].is(\"documentFragment\")&&t.shift(),this._items=t.map(Ha)}get length(){return this._items.length}get last(){return this._items[this._items.length-1]}[Symbol.iterator](){return this._items[Symbol.iterator]()}push(t){const e=new Pa([t]);return e._items=[...this._items,...e._items],e}getItem(t){return this._items[t]}*getNames(){yield*this._items.map((t=>t.name))}endsWith(t){return Array.from(this.getNames()).join(\" \").endsWith(t)}startsWith(t){return Array.from(this.getNames()).join(\" \").startsWith(t)}}function Ia(t,e){const n={name:e,allowIn:[],allowContentOf:[],allowWhere:[],allowAttributes:[],allowAttributesOf:[],inheritTypesFrom:[]};return function(t,e){for(const n of t){const t=Object.keys(n).filter((t=>t.startsWith(\"is\")));for(const o of t)e[o]=n[o]}}(t,n),za(t,n,\"allowIn\"),za(t,n,\"allowContentOf\"),za(t,n,\"allowWhere\"),za(t,n,\"allowAttributes\"),za(t,n,\"allowAttributesOf\"),za(t,n,\"inheritTypesFrom\"),function(t,e){for(const n of t){const t=n.inheritAllFrom;t&&(e.allowContentOf.push(t),e.allowWhere.push(t),e.allowAttributesOf.push(t),e.inheritTypesFrom.push(t))}}(t,n),n}function Ra(t,e){for(const n of t[e].allowContentOf)if(t[n]){La(t,n).forEach((t=>{t.allowIn.push(e)}))}delete t[e].allowContentOf}function Fa(t,e){for(const n of t[e].allowWhere){const o=t[n];if(o){const n=o.allowIn;t[e].allowIn.push(...n)}}delete t[e].allowWhere}function Oa(t,e){for(const n of t[e].allowAttributesOf){const o=t[n];if(o){const n=o.allowAttributes;t[e].allowAttributes.push(...n)}}delete t[e].allowAttributesOf}function Na(t,e){const n=t[e];for(const e of n.inheritTypesFrom){const o=t[e];if(o){const t=Object.keys(o).filter((t=>t.startsWith(\"is\")));for(const e of t)e in n||(n[e]=o[e])}}delete n.inheritTypesFrom}function Ma(t,e){const n=t[e],o=n.allowIn.filter((e=>t[e]));n.allowIn=Array.from(new Set(o))}function Va(t,e){const n=t[e];n.allowAttributes=Array.from(new Set(n.allowAttributes))}function za(t,e,n){for(const o of t)\"string\"==typeof o[n]?e[n].push(o[n]):Array.isArray(o[n])&&e[n].push(...o[n])}function La(t,e){const n=t[e];return(o=t,Object.keys(o).map((t=>o[t]))).filter((t=>t.allowIn.includes(n.name)));var o}function Ha(t){return\"string\"==typeof t?{name:t,*getAttributeKeys(){},getAttribute(){}}:{name:t.is(\"element\")?t.name:\"$text\",*getAttributeKeys(){yield*t.getAttributeKeys()},getAttribute:e=>t.getAttribute(e)}}function Ka(t,e,n){for(const o of e.getAttributeKeys())t.checkAttribute(e,o)||n.removeAttribute(o,e)}class ja{constructor(t={}){this._splitParts=new Map,this._cursorParents=new Map,this._modelCursor=null,this.conversionApi=Object.assign({},t),this.conversionApi.convertItem=this._convertItem.bind(this),this.conversionApi.convertChildren=this._convertChildren.bind(this),this.conversionApi.safeInsert=this._safeInsert.bind(this),this.conversionApi.updateConversionResult=this._updateConversionResult.bind(this),this.conversionApi.splitToAllowedParent=this._splitToAllowedParent.bind(this),this.conversionApi.getSplitParts=this._getSplitParts.bind(this)}convert(t,e,n=[\"$root\"]){this.fire(\"viewCleanup\",t),this._modelCursor=function(t,e){let n;for(const o of new Pa(t)){const t={};for(const e of o.getAttributeKeys())t[e]=o.getAttribute(e);const i=e.createElement(o.name,t);n&&e.append(i,n),n=Ms._createAt(i,0)}return n}(n,e),this.conversionApi.writer=e,this.conversionApi.consumable=Da.createFrom(t),this.conversionApi.store={};const{modelRange:o}=this._convertItem(t,this._modelCursor),i=e.createDocumentFragment();if(o){this._removeEmptyElements();for(const t of Array.from(this._modelCursor.parent.getChildren()))e.append(t,i);i.markers=function(t,e){const n=new Set,o=new Map,i=Hs._createIn(t).getItems();for(const t of i)\"$marker\"==t.name&&n.add(t);for(const t of n){const n=t.getAttribute(\"data-name\"),i=e.createPositionBefore(t);o.has(n)?o.get(n).end=i.clone():o.set(n,new Hs(i.clone())),e.remove(t)}return o}(i,e)}return this._modelCursor=null,this._splitParts.clear(),this._cursorParents.clear(),this.conversionApi.writer=null,this.conversionApi.store=null,i}_convertItem(t,e){const n=Object.assign({viewItem:t,modelCursor:e,modelRange:null});if(t.is(\"element\")?this.fire(\"element:\"+t.name,n,this.conversionApi):t.is(\"$text\")?this.fire(\"text\",n,this.conversionApi):this.fire(\"documentFragment\",n,this.conversionApi),n.modelRange&&!(n.modelRange instanceof Hs))throw new _n.a(\"view-conversion-dispatcher-incorrect-result\",this);return{modelRange:n.modelRange,modelCursor:n.modelCursor}}_convertChildren(t,e){let n=e.is(\"position\")?e:Ms._createAt(e,0);const o=new Hs(n);for(const e of Array.from(t.getChildren())){const t=this._convertItem(e,n);t.modelRange instanceof Hs&&(o.end=t.modelRange.end,n=t.modelCursor)}return{modelRange:o,modelCursor:n}}_safeInsert(t,e){const n=this._splitToAllowedParent(t,e);return!!n&&(this.conversionApi.writer.insert(t,n.position),!0)}_updateConversionResult(t,e){const n=this._getSplitParts(t),o=this.conversionApi.writer;e.modelRange||(e.modelRange=o.createRange(o.createPositionBefore(t),o.createPositionAfter(n[n.length-1])));const i=this._cursorParents.get(t);e.modelCursor=i?o.createPositionAt(i,0):e.modelRange.end}_splitToAllowedParent(t,e){const{schema:n,writer:o}=this.conversionApi;let i=n.findAllowedParent(e,t);if(i){if(i===e.parent)return{position:e};this._modelCursor.parent.getAncestors().includes(i)&&(i=null)}if(!i)return ba(e,t,n)?{position:ka(e,o)}:null;const r=this.conversionApi.writer.split(e,i),s=[];for(const t of r.range.getWalker())if(\"elementEnd\"==t.type)s.push(t.item);else{const e=s.pop(),n=t.item;this._registerSplitPair(e,n)}const a=r.range.end.parent;return this._cursorParents.set(t,a),{position:r.position,cursorParent:a}}_registerSplitPair(t,e){this._splitParts.has(t)||this._splitParts.set(t,[t]);const n=this._splitParts.get(t);this._splitParts.set(e,n),n.push(e)}_getSplitParts(t){let e;return e=this._splitParts.has(t)?this._splitParts.get(t):[t],e}_removeEmptyElements(){let t=!1;for(const e of this._splitParts.keys())e.isEmpty&&(this.conversionApi.writer.remove(e),this._splitParts.delete(e),t=!0);t&&this._removeEmptyElements()}}In(ja,vn);class qa{constructor(t,e){this.model=t,this.stylesProcessor=e,this.processor=void 0,this.mapper=new Ks,this.downcastDispatcher=new Ws({mapper:this.mapper,schema:t.schema}),this.downcastDispatcher.on(\"insert:$text\",((t,e,n)=>{if(!n.consumable.consume(e.item,\"insert\"))return;const o=n.writer,i=n.mapper.toViewPosition(e.range.start),r=o.createText(e.item.data);o.insert(i,r)}),{priority:\"lowest\"}),this.upcastDispatcher=new ja({schema:t.schema}),this.viewDocument=new gi(e),this._viewWriter=new Vi(this.viewDocument),this.upcastDispatcher.on(\"text\",((t,e,{schema:n,consumable:o,writer:i})=>{let r=e.modelCursor;if(!o.test(e.viewItem))return;if(!n.checkChild(r,\"$text\")){if(!ba(r,\"$text\",n))return;r=ka(r,i)}o.consume(e.viewItem);const s=i.createText(e.viewItem.data);i.insert(s,r),e.modelRange=i.createRange(r,r.getShiftedBy(s.offsetSize)),e.modelCursor=e.modelRange.end}),{priority:\"lowest\"}),this.upcastDispatcher.on(\"element\",((t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:!0})){const{modelRange:t,modelCursor:o}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t,e.modelCursor=o}}),{priority:\"lowest\"}),this.upcastDispatcher.on(\"documentFragment\",((t,e,n)=>{if(!e.modelRange&&n.consumable.consume(e.viewItem,{name:!0})){const{modelRange:t,modelCursor:o}=n.convertChildren(e.viewItem,e.modelCursor);e.modelRange=t,e.modelCursor=o}}),{priority:\"lowest\"}),this.decorate(\"init\"),this.decorate(\"set\"),this.on(\"init\",(()=>{this.fire(\"ready\")}),{priority:\"lowest\"}),this.on(\"ready\",(()=>{this.model.enqueueChange(\"transparent\",fa)}),{priority:\"lowest\"})}get(t={}){const{rootName:e=\"main\",trim:n=\"empty\"}=t;if(!this._checkIfRootsExists([e]))throw new _n.a(\"datacontroller-get-non-existent-root\",this);const o=this.model.document.getRoot(e);return\"empty\"!==n||this.model.hasContent(o,{ignoreWhitespaces:!0})?this.stringify(o,t):\"\"}stringify(t,e){const n=this.toView(t,e);return this.processor.toData(n)}toView(t,e){const n=this.viewDocument,o=this._viewWriter;this.mapper.clearBindings();const i=Hs._createIn(t),r=new Mi(n);if(this.mapper.bindElements(t,r),this.downcastDispatcher.conversionApi.options=e,this.downcastDispatcher.convertInsert(i,o),!t.is(\"documentFragment\")){const e=function(t){const e=[],n=t.root.document;if(!n)return[];const o=Hs._createIn(t);for(const t of n.model.markers){const n=o.getIntersection(t.getRange());n&&e.push([t.name,n])}return e}(t);for(const[t,n]of e)this.downcastDispatcher.convertMarkerAdd(t,n,o)}return delete this.downcastDispatcher.conversionApi.options,r}init(t){if(this.model.document.version)throw new _n.a(\"datacontroller-init-document-not-empty\",this);let e={};if(\"string\"==typeof t?e.main=t:e=t,!this._checkIfRootsExists(Object.keys(e)))throw new _n.a(\"datacontroller-init-non-existent-root\",this);return this.model.enqueueChange(\"transparent\",(t=>{for(const n of Object.keys(e)){const o=this.model.document.getRoot(n);t.insert(this.parse(e[n],o),o,0)}})),Promise.resolve()}set(t){let e={};if(\"string\"==typeof t?e.main=t:e=t,!this._checkIfRootsExists(Object.keys(e)))throw new _n.a(\"datacontroller-set-non-existent-root\",this);this.model.enqueueChange(\"transparent\",(t=>{t.setSelection(null),t.removeSelectionAttribute(this.model.document.selection.getAttributeKeys());for(const n of Object.keys(e)){const o=this.model.document.getRoot(n);t.remove(t.createRangeIn(o)),t.insert(this.parse(e[n],o),o,0)}}))}parse(t,e=\"$root\"){const n=this.processor.toView(t);return this.toModel(n,e)}toModel(t,e=\"$root\"){return this.model.change((n=>this.upcastDispatcher.convert(t,n,e)))}addStyleProcessorRules(t){t(this.stylesProcessor)}destroy(){this.stopListening()}_checkIfRootsExists(t){for(const e of t)if(!this.model.document.getRootNames().includes(e))return!1;return!0}}In(qa,Xo);class Wa{constructor(t,e){this._helpers=new Map,this._downcast=Array.isArray(t)?t:[t],this._createConversionHelpers({name:\"downcast\",dispatchers:this._downcast,isDowncast:!0}),this._upcast=Array.isArray(e)?e:[e],this._createConversionHelpers({name:\"upcast\",dispatchers:this._upcast,isDowncast:!1})}addAlias(t,e){const n=this._downcast.includes(e);if(!this._upcast.includes(e)&&!n)throw new _n.a(\"conversion-add-alias-dispatcher-not-registered\",this);this._createConversionHelpers({name:t,dispatchers:[e],isDowncast:n})}for(t){if(!this._helpers.has(t))throw new _n.a(\"conversion-for-unknown-group\",this);return this._helpers.get(t)}elementToElement(t){this.for(\"downcast\").elementToElement(t);for(const{model:e,view:n}of Ga(t))this.for(\"upcast\").elementToElement({model:e,view:n,converterPriority:t.converterPriority})}attributeToElement(t){this.for(\"downcast\").attributeToElement(t);for(const{model:e,view:n}of Ga(t))this.for(\"upcast\").elementToAttribute({view:n,model:e,converterPriority:t.converterPriority})}attributeToAttribute(t){this.for(\"downcast\").attributeToAttribute(t);for(const{model:e,view:n}of Ga(t))this.for(\"upcast\").attributeToAttribute({view:n,model:e})}_createConversionHelpers({name:t,dispatchers:e,isDowncast:n}){if(this._helpers.has(t))throw new _n.a(\"conversion-group-exists\",this);const o=n?new la(e):new wa(e);this._helpers.set(t,o)}}function*Ga(t){if(t.model.values)for(const e of t.model.values){const n={key:t.model.key,value:e},o=t.view[e],i=t.upcastAlso?t.upcastAlso[e]:void 0;yield*$a(n,o,i)}else yield*$a(t.model,t.view,t.upcastAlso)}function*$a(t,e,n){if(yield{model:t,view:e},n){n=Array.isArray(n)?n:[n];for(const e of n)yield{model:t,view:e}}}class Ua{constructor(t=\"default\"){this.operations=[],this.type=t}get baseVersion(){for(const t of this.operations)if(null!==t.baseVersion)return t.baseVersion;return null}addOperation(t){return t.batch=this,this.operations.push(t),t}}class Ja{constructor(t){this.baseVersion=t,this.isDocumentOperation=null!==this.baseVersion,this.batch=null}_validate(){}toJSON(){const t=Object.assign({},this);return t.__className=this.constructor.className,delete t.batch,delete t.isDocumentOperation,t}static get className(){return\"Operation\"}static fromJSON(t){return new this(t.baseVersion)}}class Ya{constructor(t){this.markers=new Map,this._children=new Rs,t&&this._insertChild(0,t)}[Symbol.iterator](){return this.getChildren()}get childCount(){return this._children.length}get maxOffset(){return this._children.maxOffset}get isEmpty(){return 0===this.childCount}get root(){return this}get parent(){return null}is(t){return\"documentFragment\"===t||\"model:documentFragment\"===t}getChild(t){return this._children.getNode(t)}getChildren(){return this._children[Symbol.iterator]()}getChildIndex(t){return this._children.getNodeIndex(t)}getChildStartOffset(t){return this._children.getNodeStartOffset(t)}getPath(){return[]}getNodeByPath(t){let e=this;for(const n of t)e=e.getChild(e.offsetToIndex(n));return e}offsetToIndex(t){return this._children.offsetToIndex(t)}toJSON(){const t=[];for(const e of this._children)t.push(e.toJSON());return t}static fromJSON(t){const e=[];for(const n of t)n.name?e.push(Fs.fromJSON(n)):e.push(Ps.fromJSON(n));return new Ya(e)}_appendChild(t){this._insertChild(this.childCount,t)}_insertChild(t,e){const n=function(t){if(\"string\"==typeof t)return[new Ps(t)];Pn(t)||(t=[t]);return Array.from(t).map((t=>\"string\"==typeof t?new Ps(t):t instanceof Is?new Ps(t.data,t.getAttributes()):t))}(e);for(const t of n)null!==t.parent&&t._remove(),t.parent=this;this._children._insertNodes(t,n)}_removeChildren(t,e=1){const n=this._children._removeNodes(t,e);for(const t of n)t.parent=null;return n}}function Qa(t,e){const n=(e=tc(e)).reduce(((t,e)=>t+e.offsetSize),0),o=t.parent;nc(t);const i=t.index;return o._insertChild(i,e),ec(o,i+e.length),ec(o,i),new Hs(t,t.getShiftedBy(n))}function Xa(t){if(!t.isFlat)throw new _n.a(\"operation-utils-remove-range-not-flat\",this);const e=t.start.parent;nc(t.start),nc(t.end);const n=e._removeChildren(t.start.index,t.end.index-t.start.index);return ec(e,t.start.index),n}function Za(t,e){if(!t.isFlat)throw new _n.a(\"operation-utils-move-range-not-flat\",this);const n=Xa(t);return Qa(e=e._getTransformedByDeletion(t.start,t.end.offset-t.start.offset),n)}function tc(t){const e=[];t instanceof Array||(t=[t]);for(let n=0;nt.maxOffset)throw new _n.a(\"move-operation-nodes-do-not-exist\",this);if(t===e&&n=n&&this.targetPosition.path[t]t._clone(!0)))),e=new cc(this.position,t,this.baseVersion);return e.shouldReceiveAttributes=this.shouldReceiveAttributes,e}getReversed(){const t=this.position.root.document.graveyard,e=new Ms(t,[0]);return new ac(this.position,this.nodes.maxOffset,e,this.baseVersion+1)}_validate(){const t=this.position.parent;if(!t||t.maxOffsett._clone(!0)))),Qa(this.position,t)}toJSON(){const t=super.toJSON();return t.position=this.position.toJSON(),t.nodes=this.nodes.toJSON(),t}static get className(){return\"InsertOperation\"}static fromJSON(t,e){const n=[];for(const e of t.nodes)e.name?n.push(Fs.fromJSON(e)):n.push(Ps.fromJSON(e));const o=new cc(Ms.fromJSON(t.position,e),n,t.baseVersion);return o.shouldReceiveAttributes=t.shouldReceiveAttributes,o}}class lc extends Ja{constructor(t,e,n,o,i,r){super(r),this.name=t,this.oldRange=e?e.clone():null,this.newRange=n?n.clone():null,this.affectsData=i,this._markers=o}get type(){return\"marker\"}clone(){return new lc(this.name,this.oldRange,this.newRange,this._markers,this.affectsData,this.baseVersion)}getReversed(){return new lc(this.name,this.newRange,this.oldRange,this._markers,this.affectsData,this.baseVersion+1)}_execute(){const t=this.newRange?\"_set\":\"_remove\";this._markers[t](this.name,this.newRange,!0,this.affectsData)}toJSON(){const t=super.toJSON();return this.oldRange&&(t.oldRange=this.oldRange.toJSON()),this.newRange&&(t.newRange=this.newRange.toJSON()),delete t._markers,t}static get className(){return\"MarkerOperation\"}static fromJSON(t,e){return new lc(t.name,t.oldRange?Hs.fromJSON(t.oldRange,e):null,t.newRange?Hs.fromJSON(t.newRange,e):null,e.model.markers,t.affectsData,t.baseVersion)}}class dc extends Ja{constructor(t,e,n,o){super(o),this.position=t,this.position.stickiness=\"toNext\",this.oldName=e,this.newName=n}get type(){return\"rename\"}clone(){return new dc(this.position.clone(),this.oldName,this.newName,this.baseVersion)}getReversed(){return new dc(this.position.clone(),this.newName,this.oldName,this.baseVersion+1)}_validate(){const t=this.position.nodeAfter;if(!(t instanceof Fs))throw new _n.a(\"rename-operation-wrong-position\",this);if(t.name!==this.oldName)throw new _n.a(\"rename-operation-wrong-name\",this)}_execute(){this.position.nodeAfter.name=this.newName}toJSON(){const t=super.toJSON();return t.position=this.position.toJSON(),t}static get className(){return\"RenameOperation\"}static fromJSON(t,e){return new dc(Ms.fromJSON(t.position,e),t.oldName,t.newName,t.baseVersion)}}class hc extends Ja{constructor(t,e,n,o,i){super(i),this.root=t,this.key=e,this.oldValue=n,this.newValue=o}get type(){return null===this.oldValue?\"addRootAttribute\":null===this.newValue?\"removeRootAttribute\":\"changeRootAttribute\"}clone(){return new hc(this.root,this.key,this.oldValue,this.newValue,this.baseVersion)}getReversed(){return new hc(this.root,this.key,this.newValue,this.oldValue,this.baseVersion+1)}_validate(){if(this.root!=this.root.root||this.root.is(\"documentFragment\"))throw new _n.a(\"rootattribute-operation-not-a-root\",this,{root:this.root,key:this.key});if(null!==this.oldValue&&this.root.getAttribute(this.key)!==this.oldValue)throw new _n.a(\"rootattribute-operation-wrong-old-value\",this,{root:this.root,key:this.key});if(null===this.oldValue&&null!==this.newValue&&this.root.hasAttribute(this.key))throw new _n.a(\"rootattribute-operation-attribute-exists\",this,{root:this.root,key:this.key})}_execute(){null!==this.newValue?this.root._setAttribute(this.key,this.newValue):this.root._removeAttribute(this.key)}toJSON(){const t=super.toJSON();return t.root=this.root.toJSON(),t}static get className(){return\"RootAttributeOperation\"}static fromJSON(t,e){if(!e.getRoot(t.root))throw new _n.a(\"rootattribute-operation-fromjson-no-root\",this,{rootName:t.root});return new hc(e.getRoot(t.root),t.key,t.oldValue,t.newValue,t.baseVersion)}}class uc extends Ja{constructor(t,e,n,o,i){super(i),this.sourcePosition=t.clone(),this.sourcePosition.stickiness=\"toPrevious\",this.howMany=e,this.targetPosition=n.clone(),this.targetPosition.stickiness=\"toNext\",this.graveyardPosition=o.clone()}get type(){return\"merge\"}get deletionPosition(){return new Ms(this.sourcePosition.root,this.sourcePosition.path.slice(0,-1))}get movedRange(){const t=this.sourcePosition.getShiftedBy(Number.POSITIVE_INFINITY);return new Hs(this.sourcePosition,t)}clone(){return new this.constructor(this.sourcePosition,this.howMany,this.targetPosition,this.graveyardPosition,this.baseVersion)}getReversed(){const t=this.targetPosition._getTransformedByMergeOperation(this),e=this.sourcePosition.path.slice(0,-1),n=new Ms(this.sourcePosition.root,e)._getTransformedByMergeOperation(this),o=new mc(t,this.howMany,this.graveyardPosition,this.baseVersion+1);return o.insertionPosition=n,o}_validate(){const t=this.sourcePosition.parent,e=this.targetPosition.parent;if(!t.parent)throw new _n.a(\"merge-operation-source-position-invalid\",this);if(!e.parent)throw new _n.a(\"merge-operation-target-position-invalid\",this);if(this.howMany!=t.maxOffset)throw new _n.a(\"merge-operation-how-many-invalid\",this)}_execute(){const t=this.sourcePosition.parent;Za(Hs._createIn(t),this.targetPosition),Za(Hs._createOn(t),this.graveyardPosition)}toJSON(){const t=super.toJSON();return t.sourcePosition=t.sourcePosition.toJSON(),t.targetPosition=t.targetPosition.toJSON(),t.graveyardPosition=t.graveyardPosition.toJSON(),t}static get className(){return\"MergeOperation\"}static fromJSON(t,e){const n=Ms.fromJSON(t.sourcePosition,e),o=Ms.fromJSON(t.targetPosition,e),i=Ms.fromJSON(t.graveyardPosition,e);return new this(n,t.howMany,o,i,t.baseVersion)}}class mc extends Ja{constructor(t,e,n,o){super(o),this.splitPosition=t.clone(),this.splitPosition.stickiness=\"toNext\",this.howMany=e,this.insertionPosition=mc.getInsertionPosition(t),this.insertionPosition.stickiness=\"toNone\",this.graveyardPosition=n?n.clone():null,this.graveyardPosition&&(this.graveyardPosition.stickiness=\"toNext\")}get type(){return\"split\"}get moveTargetPosition(){const t=this.insertionPosition.path.slice();return t.push(0),new Ms(this.insertionPosition.root,t)}get movedRange(){const t=this.splitPosition.getShiftedBy(Number.POSITIVE_INFINITY);return new Hs(this.splitPosition,t)}clone(){const t=new this.constructor(this.splitPosition,this.howMany,this.graveyardPosition,this.baseVersion);return t.insertionPosition=this.insertionPosition,t}getReversed(){const t=this.splitPosition.root.document.graveyard,e=new Ms(t,[0]);return new uc(this.moveTargetPosition,this.howMany,this.splitPosition,e,this.baseVersion+1)}_validate(){const t=this.splitPosition.parent,e=this.splitPosition.offset;if(!t||t.maxOffset{for(const e of t.getAttributeKeys())this.removeAttribute(e,t)};if(t instanceof Hs)for(const n of t.getItems())e(n);else e(t)}move(t,e,n){if(this._assertWriterUsedCorrectly(),!(t instanceof Hs))throw new _n.a(\"writer-move-invalid-range\",this);if(!t.isFlat)throw new _n.a(\"writer-move-range-not-flat\",this);const o=Ms._createAt(e,n);if(o.isEqual(t.start))return;if(this._addOperationForAffectedMarkers(\"move\",t),!_c(t.root,o.root))throw new _n.a(\"writer-move-different-document\",this);const i=t.root.document?t.root.document.version:null,r=new ac(t.start,t.end.offset-t.start.offset,o,i);this.batch.addOperation(r),this.model.applyOperation(r)}remove(t){this._assertWriterUsedCorrectly();const e=(t instanceof Hs?t:Hs._createOn(t)).getMinimalFlatRanges().reverse();for(const t of e)this._addOperationForAffectedMarkers(\"move\",t),wc(t.start,t.end.offset-t.start.offset,this.batch,this.model)}merge(t){this._assertWriterUsedCorrectly();const e=t.nodeBefore,n=t.nodeAfter;if(this._addOperationForAffectedMarkers(\"merge\",t),!(e instanceof Fs))throw new _n.a(\"writer-merge-no-element-before\",this);if(!(n instanceof Fs))throw new _n.a(\"writer-merge-no-element-after\",this);t.root.document?this._merge(t):this._mergeDetached(t)}createPositionFromPath(t,e,n){return this.model.createPositionFromPath(t,e,n)}createPositionAt(t,e){return this.model.createPositionAt(t,e)}createPositionAfter(t){return this.model.createPositionAfter(t)}createPositionBefore(t){return this.model.createPositionBefore(t)}createRange(t,e){return this.model.createRange(t,e)}createRangeIn(t){return this.model.createRangeIn(t)}createRangeOn(t){return this.model.createRangeOn(t)}createSelection(t,e,n){return this.model.createSelection(t,e,n)}_mergeDetached(t){const e=t.nodeBefore,n=t.nodeAfter;this.move(Hs._createIn(n),Ms._createAt(e,\"end\")),this.remove(n)}_merge(t){const e=Ms._createAt(t.nodeBefore,\"end\"),n=Ms._createAt(t.nodeAfter,0),o=t.root.document.graveyard,i=new Ms(o,[0]),r=t.root.document.version,s=new uc(n,t.nodeAfter.maxOffset,e,i,r);this.batch.addOperation(s),this.model.applyOperation(s)}rename(t,e){if(this._assertWriterUsedCorrectly(),!(t instanceof Fs))throw new _n.a(\"writer-rename-not-element-instance\",this);const n=t.root.document?t.root.document.version:null,o=new dc(Ms._createBefore(t),t.name,e,n);this.batch.addOperation(o),this.model.applyOperation(o)}split(t,e){this._assertWriterUsedCorrectly();let n,o,i=t.parent;if(!i.parent)throw new _n.a(\"writer-split-element-no-parent\",this);if(e||(e=i.parent),!t.parent.getAncestors({includeSelf:!0}).includes(e))throw new _n.a(\"writer-split-invalid-limit-element\",this);do{const e=i.root.document?i.root.document.version:null,r=i.maxOffset-t.offset,s=new mc(t,r,null,e);this.batch.addOperation(s),this.model.applyOperation(s),n||o||(n=i,o=t.parent.nextSibling),i=(t=this.createPositionAfter(t.parent)).parent}while(i!==e);return{position:t,range:new Hs(Ms._createAt(n,\"end\"),Ms._createAt(o,0))}}wrap(t,e){if(this._assertWriterUsedCorrectly(),!t.isFlat)throw new _n.a(\"writer-wrap-range-not-flat\",this);const n=e instanceof Fs?e:new Fs(e);if(n.childCount>0)throw new _n.a(\"writer-wrap-element-not-empty\",this);if(null!==n.parent)throw new _n.a(\"writer-wrap-element-attached\",this);this.insert(n,t.start);const o=new Hs(t.start.getShiftedBy(1),t.end.getShiftedBy(1));this.move(o,Ms._createAt(n,0))}unwrap(t){if(this._assertWriterUsedCorrectly(),null===t.parent)throw new _n.a(\"writer-unwrap-element-no-parent\",this);this.move(Hs._createIn(t),this.createPositionAfter(t)),this.remove(t)}addMarker(t,e){if(this._assertWriterUsedCorrectly(),!e||\"boolean\"!=typeof e.usingOperation)throw new _n.a(\"writer-addmarker-no-usingoperation\",this);const n=e.usingOperation,o=e.range,i=void 0!==e.affectsData&&e.affectsData;if(this.model.markers.has(t))throw new _n.a(\"writer-addmarker-marker-exists\",this);if(!o)throw new _n.a(\"writer-addmarker-no-range\",this);return n?(kc(this,t,null,o,i),this.model.markers.get(t)):this.model.markers._set(t,o,n,i)}updateMarker(t,e){this._assertWriterUsedCorrectly();const n=\"string\"==typeof t?t:t.name,o=this.model.markers.get(n);if(!o)throw new _n.a(\"writer-updatemarker-marker-not-exists\",this);if(!e)return void this.model.markers._refresh(o);const i=\"boolean\"==typeof e.usingOperation,r=\"boolean\"==typeof e.affectsData,s=r?e.affectsData:o.affectsData;if(!i&&!e.range&&!r)throw new _n.a(\"writer-updatemarker-wrong-options\",this);const a=o.getRange(),c=e.range?e.range:a;i&&e.usingOperation!==o.managedUsingOperations?e.usingOperation?kc(this,n,null,c,s):(kc(this,n,a,null,s),this.model.markers._set(n,c,void 0,s)):o.managedUsingOperations?kc(this,n,a,c,s):this.model.markers._set(n,c,void 0,s)}removeMarker(t){this._assertWriterUsedCorrectly();const e=\"string\"==typeof t?t:t.name;if(!this.model.markers.has(e))throw new _n.a(\"writer-removemarker-no-marker\",this);const n=this.model.markers.get(e);if(!n.managedUsingOperations)return void this.model.markers._remove(e);kc(this,e,n.getRange(),null,n.affectsData)}setSelection(t,e,n){this._assertWriterUsedCorrectly(),this.model.document.selection._setTo(t,e,n)}setSelectionFocus(t,e){this._assertWriterUsedCorrectly(),this.model.document.selection._setFocus(t,e)}setSelectionAttribute(t,e){if(this._assertWriterUsedCorrectly(),\"string\"==typeof t)this._setSelectionAttribute(t,e);else for(const[e,n]of Wn(t))this._setSelectionAttribute(e,n)}removeSelectionAttribute(t){if(this._assertWriterUsedCorrectly(),\"string\"==typeof t)this._removeSelectionAttribute(t);else for(const e of t)this._removeSelectionAttribute(e)}overrideSelectionGravity(){return this.model.document.selection._overrideGravity()}restoreSelectionGravity(t){this.model.document.selection._restoreGravity(t)}_setSelectionAttribute(t,e){const n=this.model.document.selection;if(n.isCollapsed&&n.anchor.parent.isEmpty){const o=ia._getStoreAttributeKey(t);this.setAttribute(o,e,n.anchor.parent)}n._setAttribute(t,e)}_removeSelectionAttribute(t){const e=this.model.document.selection;if(e.isCollapsed&&e.anchor.parent.isEmpty){const n=ia._getStoreAttributeKey(t);this.removeAttribute(n,e.anchor.parent)}e._removeAttribute(t)}_assertWriterUsedCorrectly(){if(this.model._currentWriter!==this)throw new _n.a(\"writer-incorrect-use\",this)}_addOperationForAffectedMarkers(t,e){for(const n of this.model.markers){if(!n.managedUsingOperations)continue;const o=n.getRange();let i=!1;if(\"move\"===t)i=e.containsPosition(o.start)||e.start.isEqual(o.start)||e.containsPosition(o.end)||e.end.isEqual(o.end);else{const t=e.nodeBefore,n=e.nodeAfter,r=o.start.parent==t&&o.start.isAtEnd,s=o.end.parent==n&&0==o.end.offset,a=o.end.nodeAfter==n,c=o.start.nodeAfter==n;i=r||s||a||c}i&&this.updateMarker(n.name,{range:o})}}}function fc(t,e,n,o){const i=t.model,r=i.document;let s,a,c,l=o.start;for(const t of o.getWalker({shallow:!0}))c=t.item.getAttribute(e),s&&a!=c&&(a!=n&&d(),l=s),s=t.nextPosition,a=c;function d(){const o=new Hs(l,s),c=o.root.document?r.version:null,d=new rc(o,e,a,n,c);t.batch.addOperation(d),i.applyOperation(d)}s instanceof Ms&&s!=l&&a!=n&&d()}function bc(t,e,n,o){const i=t.model,r=i.document,s=o.getAttribute(e);let a,c;if(s!=n){if(o.root===o){const t=o.document?r.version:null;c=new hc(o,e,s,n,t)}else{a=new Hs(Ms._createBefore(o),t.createPositionAfter(o));const i=a.root.document?r.version:null;c=new rc(a,e,s,n,i)}t.batch.addOperation(c),i.applyOperation(c)}}function kc(t,e,n,o,i){const r=t.model,s=r.document,a=new lc(e,n,o,r.markers,i,s.version);t.batch.addOperation(a),r.applyOperation(a)}function wc(t,e,n,o){let i;if(t.root.document){const n=o.document,r=new Ms(n.graveyard,[0]);i=new ac(t,e,r,n.version)}else i=new sc(t,e);n.addOperation(i),o.applyOperation(i)}function _c(t,e){return t===e||t instanceof gc&&e instanceof gc}class Cc{constructor(t){this._markerCollection=t,this._changesInElement=new Map,this._elementSnapshots=new Map,this._changedMarkers=new Map,this._changeCount=0,this._cachedChanges=null,this._cachedChangesWithGraveyard=null}get isEmpty(){return 0==this._changesInElement.size&&0==this._changedMarkers.size}refreshItem(t){if(this._isInInsertedElement(t.parent))return;this._markRemove(t.parent,t.startOffset,t.offsetSize),this._markInsert(t.parent,t.startOffset,t.offsetSize);const e=Hs._createOn(t);for(const t of this._markerCollection.getMarkersIntersectingRange(e)){const e=t.getRange();this.bufferMarkerChange(t.name,e,e,t.affectsData)}this._cachedChanges=null}bufferOperation(t){switch(t.type){case\"insert\":if(this._isInInsertedElement(t.position.parent))return;this._markInsert(t.position.parent,t.position.offset,t.nodes.maxOffset);break;case\"addAttribute\":case\"removeAttribute\":case\"changeAttribute\":for(const e of t.range.getItems({shallow:!0}))this._isInInsertedElement(e.parent)||this._markAttribute(e);break;case\"remove\":case\"move\":case\"reinsert\":{if(t.sourcePosition.isEqual(t.targetPosition)||t.sourcePosition.getShiftedBy(t.howMany).isEqual(t.targetPosition))return;const e=this._isInInsertedElement(t.sourcePosition.parent),n=this._isInInsertedElement(t.targetPosition.parent);e||this._markRemove(t.sourcePosition.parent,t.sourcePosition.offset,t.howMany),n||this._markInsert(t.targetPosition.parent,t.getMovedRangeStart().offset,t.howMany);break}case\"rename\":{if(this._isInInsertedElement(t.position.parent))return;this._markRemove(t.position.parent,t.position.offset,1),this._markInsert(t.position.parent,t.position.offset,1);const e=Hs._createFromPositionAndShift(t.position,1);for(const t of this._markerCollection.getMarkersIntersectingRange(e)){const e=t.getRange();this.bufferMarkerChange(t.name,e,e,t.affectsData)}break}case\"split\":{const e=t.splitPosition.parent;this._isInInsertedElement(e)||this._markRemove(e,t.splitPosition.offset,t.howMany),this._isInInsertedElement(t.insertionPosition.parent)||this._markInsert(t.insertionPosition.parent,t.insertionPosition.offset,1),t.graveyardPosition&&this._markRemove(t.graveyardPosition.parent,t.graveyardPosition.offset,1);break}case\"merge\":{const e=t.sourcePosition.parent;this._isInInsertedElement(e.parent)||this._markRemove(e.parent,e.startOffset,1);const n=t.graveyardPosition.parent;this._markInsert(n,t.graveyardPosition.offset,1);const o=t.targetPosition.parent;this._isInInsertedElement(o)||this._markInsert(o,t.targetPosition.offset,e.maxOffset);break}}this._cachedChanges=null}bufferMarkerChange(t,e,n,o){const i=this._changedMarkers.get(t);i?(i.newRange=n,i.affectsData=o,null==i.oldRange&&null==i.newRange&&this._changedMarkers.delete(t)):this._changedMarkers.set(t,{oldRange:e,newRange:n,affectsData:o})}getMarkersToRemove(){const t=[];for(const[e,n]of this._changedMarkers)null!=n.oldRange&&t.push({name:e,range:n.oldRange});return t}getMarkersToAdd(){const t=[];for(const[e,n]of this._changedMarkers)null!=n.newRange&&t.push({name:e,range:n.newRange});return t}getChangedMarkers(){return Array.from(this._changedMarkers).map((t=>({name:t[0],data:{oldRange:t[1].oldRange,newRange:t[1].newRange}})))}hasDataChanges(){for(const[,t]of this._changedMarkers)if(t.affectsData)return!0;return this._changesInElement.size>0}getChanges(t={includeChangesInGraveyard:!1}){if(this._cachedChanges)return t.includeChangesInGraveyard?this._cachedChangesWithGraveyard.slice():this._cachedChanges.slice();const e=[];for(const t of this._changesInElement.keys()){const n=this._changesInElement.get(t).sort(((t,e)=>t.offset===e.offset?t.type!=e.type?\"remove\"==t.type?-1:1:0:t.offsett.position.root!=e.position.root?t.position.root.rootNamen.offset){if(o>i){const t={type:\"attribute\",offset:i,howMany:o-i,count:this._changeCount++};this._handleChange(t,e),e.push(t)}t.nodesToHandle=n.offset-t.offset,t.howMany=t.nodesToHandle}else t.offset>=n.offset&&t.offseti?(t.nodesToHandle=o-i,t.offset=i):t.nodesToHandle=0);if(\"remove\"==n.type&&t.offsetn.offset){const i={type:\"attribute\",offset:n.offset,howMany:o-n.offset,count:this._changeCount++};this._handleChange(i,e),e.push(i),t.nodesToHandle=n.offset-t.offset,t.howMany=t.nodesToHandle}\"attribute\"==n.type&&(t.offset>=n.offset&&o<=i?(t.nodesToHandle=0,t.howMany=0,t.offset=0):t.offset<=n.offset&&o>=i&&(n.howMany=0))}}t.howMany=t.nodesToHandle,delete t.nodesToHandle}_getInsertDiff(t,e,n){return{type:\"insert\",position:Ms._createAt(t,e),name:n,length:1,changeCount:this._changeCount++}}_getRemoveDiff(t,e,n){return{type:\"remove\",position:Ms._createAt(t,e),name:n,length:1,changeCount:this._changeCount++}}_getAttributesDiff(t,e,n){const o=[];n=new Map(n);for(const[i,r]of e){const e=n.has(i)?n.get(i):null;e!==r&&o.push({type:\"attribute\",position:t.start,range:t.clone(),length:1,attributeKey:i,attributeOldValue:r,attributeNewValue:e,changeCount:this._changeCount++}),n.delete(i)}for(const[e,i]of n)o.push({type:\"attribute\",position:t.start,range:t.clone(),length:1,attributeKey:e,attributeOldValue:null,attributeNewValue:i,changeCount:this._changeCount++});return o}_isInInsertedElement(t){const e=t.parent;if(!e)return!1;const n=this._changesInElement.get(e),o=t.startOffset;if(n)for(const t of n)if(\"insert\"==t.type&&o>=t.offset&&oo){for(let e=0;e=t&&o.baseVersion{const n=e[0];if(n.isDocumentOperation&&n.baseVersion!==this.version)throw new _n.a(\"model-document-applyoperation-wrong-version\",this,{operation:n})}),{priority:\"highest\"}),this.listenTo(t,\"applyOperation\",((t,e)=>{const n=e[0];n.isDocumentOperation&&this.differ.bufferOperation(n)}),{priority:\"high\"}),this.listenTo(t,\"applyOperation\",((t,e)=>{const n=e[0];n.isDocumentOperation&&(this.version++,this.history.addOperation(n))}),{priority:\"low\"}),this.listenTo(this.selection,\"change\",(()=>{this._hasSelectionChangedFromTheLastChangeBlock=!0})),this.listenTo(t.markers,\"update\",((t,e,n,o)=>{this.differ.bufferMarkerChange(e.name,n,o,e.affectsData),null===n&&e.on(\"change\",((t,n)=>{this.differ.bufferMarkerChange(e.name,n,e.getRange(),e.affectsData)}))}))}get graveyard(){return this.getRoot(Dc)}createRoot(t=\"$root\",e=\"main\"){if(this.roots.get(e))throw new _n.a(\"model-document-createroot-name-exists\",this,{name:e});const n=new gc(this,t,e);return this.roots.add(n),n}destroy(){this.selection.destroy(),this.stopListening()}getRoot(t=\"main\"){return this.roots.get(t)}getRootNames(){return Array.from(this.roots,(t=>t.rootName)).filter((t=>t!=Dc))}registerPostFixer(t){this._postFixers.add(t)}toJSON(){const t=Hn(this);return t.selection=\"[engine.model.DocumentSelection]\",t.model=\"[engine.model.Model]\",t}_handleChangeBlock(t){this._hasDocumentChangedFromTheLastChangeBlock()&&(this._callPostFixers(t),this.selection.refresh(),this.differ.hasDataChanges()?this.fire(\"change:data\",t.batch):this.fire(\"change\",t.batch),this.selection.refresh(),this.differ.reset()),this._hasSelectionChangedFromTheLastChangeBlock=!1}_hasDocumentChangedFromTheLastChangeBlock(){return!this.differ.isEmpty||this._hasSelectionChangedFromTheLastChangeBlock}_getDefaultRoot(){for(const t of this.roots)if(t!==this.graveyard)return t;return this.graveyard}_getDefaultRange(){const t=this._getDefaultRoot(),e=this.model,n=e.schema,o=e.createPositionFromPath(t,[0]);return n.getNearestSelectionRange(o)||e.createRange(o)}_validateSelectionRange(t){return Bc(t.start)&&Bc(t.end)}_callPostFixers(t){let e=!1;do{for(const n of this._postFixers)if(this.selection.refresh(),e=n(t),e)break}while(e)}}function Bc(t){const e=t.textNode;if(e){const n=e.data,o=t.offset-e.startOffset;return!Ec(n,o)&&!Sc(n,o)}return!0}In(Tc,vn);class Pc{constructor(){this._markers=new Map}[Symbol.iterator](){return this._markers.values()}has(t){return this._markers.has(t)}get(t){return this._markers.get(t)||null}_set(t,e,n=!1,o=!1){const i=t instanceof Ic?t.name:t;if(i.includes(\",\"))throw new _n.a(\"markercollection-incorrect-marker-name\",this);const r=this._markers.get(i);if(r){const t=r.getRange();let s=!1;return t.isEqual(e)||(r._attachLiveRange(ta.fromRange(e)),s=!0),n!=r.managedUsingOperations&&(r._managedUsingOperations=n,s=!0),\"boolean\"==typeof o&&o!=r.affectsData&&(r._affectsData=o,s=!0),s&&this.fire(\"update:\"+i,r,t,e),r}const s=ta.fromRange(e),a=new Ic(i,s,n,o);return this._markers.set(i,a),this.fire(\"update:\"+i,a,null,e),a}_remove(t){const e=t instanceof Ic?t.name:t,n=this._markers.get(e);return!!n&&(this._markers.delete(e),this.fire(\"update:\"+e,n,n.getRange(),null),this._destroyMarker(n),!0)}_refresh(t){const e=t instanceof Ic?t.name:t,n=this._markers.get(e);if(!n)throw new _n.a(\"markercollection-refresh-marker-not-exists\",this);const o=n.getRange();this.fire(\"update:\"+e,n,o,o,n.managedUsingOperations,n.affectsData)}*getMarkersAtPosition(t){for(const e of this)e.getRange().containsPosition(t)&&(yield e)}*getMarkersIntersectingRange(t){for(const e of this)null!==e.getRange().getIntersection(t)&&(yield e)}destroy(){for(const t of this._markers.values())this._destroyMarker(t);this._markers=null,this.stopListening()}*getMarkersGroup(t){for(const e of this._markers.values())e.name.startsWith(t+\":\")&&(yield e)}_destroyMarker(t){t.stopListening(),t._detachLiveRange()}}In(Pc,vn);class Ic{constructor(t,e,n,o){this.name=t,this._liveRange=this._attachLiveRange(e),this._managedUsingOperations=n,this._affectsData=o}get managedUsingOperations(){if(!this._liveRange)throw new _n.a(\"marker-destroyed\",this);return this._managedUsingOperations}get affectsData(){if(!this._liveRange)throw new _n.a(\"marker-destroyed\",this);return this._affectsData}getStart(){if(!this._liveRange)throw new _n.a(\"marker-destroyed\",this);return this._liveRange.start.clone()}getEnd(){if(!this._liveRange)throw new _n.a(\"marker-destroyed\",this);return this._liveRange.end.clone()}getRange(){if(!this._liveRange)throw new _n.a(\"marker-destroyed\",this);return this._liveRange.toRange()}is(t){return\"marker\"===t||\"model:marker\"===t}_attachLiveRange(t){return this._liveRange&&this._detachLiveRange(),t.delegate(\"change:range\").to(this),t.delegate(\"change:content\").to(this),this._liveRange=t,t}_detachLiveRange(){this._liveRange.stopDelegating(\"change:range\",this),this._liveRange.stopDelegating(\"change:content\",this),this._liveRange.detach(),this._liveRange=null}}In(Ic,vn);class Rc extends Ja{get type(){return\"noop\"}clone(){return new Rc(this.baseVersion)}getReversed(){return new Rc(this.baseVersion+1)}_execute(){}static get className(){return\"NoOperation\"}}const Fc={};Fc[rc.className]=rc,Fc[cc.className]=cc,Fc[lc.className]=lc,Fc[ac.className]=ac,Fc[Rc.className]=Rc,Fc[Ja.className]=Ja,Fc[dc.className]=dc,Fc[hc.className]=hc,Fc[mc.className]=mc,Fc[uc.className]=uc;class Oc extends Ms{constructor(t,e,n=\"toNone\"){if(super(t,e,n),!this.root.is(\"rootElement\"))throw new _n.a(\"model-liveposition-root-not-rootelement\",t);Nc.call(this)}detach(){this.stopListening()}is(t){return\"livePosition\"===t||\"model:livePosition\"===t||\"position\"==t||\"model:position\"===t}toPosition(){return new Ms(this.root,this.path.slice(),this.stickiness)}static fromPosition(t,e){return new this(t.root,t.path.slice(),e||t.stickiness)}}function Nc(){this.listenTo(this.root.document.model,\"applyOperation\",((t,e)=>{const n=e[0];n.isDocumentOperation&&Mc.call(this,n)}),{priority:\"low\"})}function Mc(t){const e=this.getTransformedByOperation(t);if(!this.isEqual(e)){const t=this.toPosition();this.path=e.path,this.root=e.root,this.fire(\"change\",t)}}In(Oc,vn);class Vc{constructor(t,e,n){this.model=t,this.writer=e,this.position=n,this.canMergeWith=new Set([this.position.parent]),this.schema=t.schema,this._filterAttributesOf=[],this._affectedStart=null,this._affectedEnd=null}handleNodes(t,e){t=Array.from(t);for(let n=0;n{if(!n.doNotResetEntireContent&&function(t,e){const n=t.getLimitElement(e);if(!e.containsEntireContent(n))return!1;const o=e.getFirstRange();if(o.start.parent==o.end.parent)return!1;return t.checkChild(n,\"paragraph\")}(i,e))return void function(t,e){const n=t.model.schema.getLimitElement(e);t.remove(t.createRangeIn(n)),jc(t,t.createPositionAt(n,0),e)}(t,e);const[r,s]=function(t){const e=t.root.document.model,n=t.start;let o=t.end;if(e.hasContent(t,{ignoreMarkers:!0})){const n=function(t){const e=t.parent,n=e.root.document.model.schema,o=e.getAncestors({parentFirst:!0,includeSelf:!0});for(const t of o){if(n.isLimit(t))return null;if(n.isBlock(t))return t}}(o);if(n&&o.isTouching(e.createPositionAt(n,0))){const n=e.createSelection(t);e.modifySelection(n,{direction:\"backward\"}),o=n.getLastPosition()}}return[Oc.fromPosition(n,\"toPrevious\"),Oc.fromPosition(o,\"toNext\")]}(o);r.isTouching(s)||t.remove(t.createRange(r,s)),n.leaveUnmerged||(!function(t,e,n){const o=t.model;if(!Kc(t.model.schema,e,n))return;const[i,r]=function(t,e){const n=t.getAncestors(),o=e.getAncestors();let i=0;for(;n[i]&&n[i]==o[i];)i++;return[n[i],o[i]]}(e,n);!o.hasContent(i,{ignoreMarkers:!0})&&o.hasContent(r,{ignoreMarkers:!0})?Hc(t,e,n,i.parent):Lc(t,e,n,i.parent)}(t,r,s),i.removeDisallowedAttributes(r.parent.getChildren(),t)),qc(t,e,r),!n.doNotAutoparagraph&&function(t,e){const n=t.checkChild(e,\"$text\"),o=t.checkChild(e,\"paragraph\");return!n&&o}(i,r)&&jc(t,r,e),r.detach(),s.detach()}))}function Lc(t,e,n,o){const i=e.parent,r=n.parent;if(i!=o&&r!=o){for(e=t.createPositionAfter(i),(n=t.createPositionBefore(r)).isEqual(e)||t.insert(r,e),t.merge(e);n.parent.isEmpty;){const e=n.parent;n=t.createPositionBefore(e),t.remove(e)}Kc(t.model.schema,e,n)&&Lc(t,e,n,o)}}function Hc(t,e,n,o){const i=e.parent,r=n.parent;if(i!=o&&r!=o){for(e=t.createPositionAfter(i),(n=t.createPositionBefore(r)).isEqual(e)||t.insert(i,n);e.parent.isEmpty;){const n=e.parent;e=t.createPositionBefore(n),t.remove(n)}n=t.createPositionBefore(r),function(t,e){const n=e.nodeBefore,o=e.nodeAfter;n.name!=o.name&&t.rename(n,o.name);t.clearAttributes(n),t.setAttributes(Object.fromEntries(o.getAttributes()),n),t.merge(e)}(t,n),Kc(t.model.schema,e,n)&&Hc(t,e,n,o)}}function Kc(t,e,n){const o=e.parent,i=n.parent;return o!=i&&(!t.isLimit(o)&&!t.isLimit(i)&&function(t,e,n){const o=new Hs(t,e);for(const t of o.getWalker())if(n.isLimit(t.item))return!1;return!0}(e,n,t))}function jc(t,e,n){const o=t.createElement(\"paragraph\");t.insert(o,e),qc(t,n,t.createPositionAt(o,0))}function qc(t,e,n){e instanceof ia?t.setSelection(n):e.setTo(n)}const Wc=' ,.?!:;\"-()';function Gc(t,e){const{isForward:n,walker:o,unit:i,schema:r}=t,{type:s,item:a,nextPosition:c}=e;if(\"text\"==s)return\"word\"===t.unit?function(t,e){let n=t.position.textNode;if(n){let o=t.position.offset-n.startOffset;for(;!Uc(n.data,o,e)&&!Jc(n,o,e);){t.next();const i=e?t.position.nodeAfter:t.position.nodeBefore;if(i&&i.is(\"$text\")){const o=i.data.charAt(e?0:i.data.length-1);Wc.includes(o)||(t.next(),n=t.position.textNode)}o=t.position.offset-n.startOffset}}return t.position}(o,n):function(t,e){const n=t.position.textNode;if(n){const o=n.data;let i=t.position.offset-n.startOffset;for(;Ec(o,i)||\"character\"==e&&Sc(o,i);)t.next(),i=t.position.offset-n.startOffset}return t.position}(o,i);if(s==(n?\"elementStart\":\"elementEnd\")){if(r.isSelectable(a))return Ms._createAt(a,n?\"after\":\"before\");if(r.checkChild(c,\"$text\"))return c}else{if(r.isLimit(a))return void o.skip((()=>!0));if(r.checkChild(c,\"$text\"))return c}}function $c(t,e){const n=t.root,o=Ms._createAt(n,e?\"end\":0);return e?new Hs(t,o):new Hs(o,t)}function Uc(t,e,n){const o=e+(n?0:-1);return Wc.includes(t.charAt(o))}function Jc(t,e,n){return e===(n?t.endOffset:0)}function Yc(t,e){const n=[];Array.from(t.getItems({direction:\"backward\"})).map((t=>e.createRangeOn(t))).filter((e=>(e.start.isAfter(t.start)||e.start.isEqual(t.start))&&(e.end.isBefore(t.end)||e.end.isEqual(t.end)))).forEach((t=>{n.push(t.start.parent),e.remove(t)})),n.forEach((t=>{let n=t;for(;n.parent&&n.isEmpty;){const t=e.createRangeOn(n);n=n.parent,e.remove(t)}}))}function Qc(t){t.document.registerPostFixer((e=>function(t,e){const n=e.document.selection,o=e.schema,i=[];let r=!1;for(const t of n.getRanges()){const e=Xc(t,o);e&&!e.isEqual(t)?(i.push(e),r=!0):i.push(t)}r&&t.setSelection(function(t){const e=[];e.push(t.shift());for(const n of t){const t=e.pop();if(n.isIntersecting(t)){const o=t.start.isAfter(n.start)?n.start:t.start,i=t.end.isAfter(n.end)?t.end:n.end,r=new Hs(o,i);e.push(r)}else e.push(t),e.push(n)}return e}(i),{backward:n.isBackward})}(e,t)))}function Xc(t,e){return t.isCollapsed?function(t,e){const n=t.start,o=e.getNearestSelectionRange(n);if(!o)return null;if(!o.isCollapsed)return o;const i=o.start;if(n.isEqual(i))return null;return new Hs(i)}(t,e):function(t,e){const{start:n,end:o}=t,i=e.checkChild(n,\"$text\"),r=e.checkChild(o,\"$text\"),s=e.getLimitElement(n),a=e.getLimitElement(o);if(s===a){if(i&&r)return null;if(function(t,e,n){const o=t.nodeAfter&&!n.isLimit(t.nodeAfter)||n.checkChild(t,\"$text\"),i=e.nodeBefore&&!n.isLimit(e.nodeBefore)||n.checkChild(e,\"$text\");return o||i}(n,o,e)){const t=n.nodeAfter&&e.isSelectable(n.nodeAfter)?null:e.getNearestSelectionRange(n,\"forward\"),i=o.nodeBefore&&e.isSelectable(o.nodeBefore)?null:e.getNearestSelectionRange(o,\"backward\"),r=t?t.start:n,s=i?i.start:o;return new Hs(r,s)}}const c=s&&!s.is(\"rootElement\"),l=a&&!a.is(\"rootElement\");if(c||l){const t=n.nodeAfter&&o.nodeBefore&&n.nodeAfter.parent===o.nodeBefore.parent,i=c&&(!t||!tl(n.nodeAfter,e)),r=l&&(!t||!tl(o.nodeBefore,e));let d=n,h=o;return i&&(d=Ms._createBefore(Zc(s,e))),r&&(h=Ms._createAfter(Zc(a,e))),new Hs(d,h)}return null}(t,e)}function Zc(t,e){let n=t,o=n;for(;e.isLimit(o)&&o.parent;)n=o,o=o.parent;return n}function tl(t,e){return t&&e.isSelectable(t)}class el{constructor(){this.markers=new Pc,this.document=new Tc(this),this.schema=new Ba,this._pendingChanges=[],this._currentWriter=null,[\"insertContent\",\"deleteContent\",\"modifySelection\",\"getSelectedContent\",\"applyOperation\"].forEach((t=>this.decorate(t))),this.on(\"applyOperation\",((t,e)=>{e[0]._validate()}),{priority:\"highest\"}),this.schema.register(\"$root\",{isLimit:!0}),this.schema.register(\"$block\",{allowIn:\"$root\",isBlock:!0}),this.schema.register(\"$text\",{allowIn:\"$block\",isInline:!0,isContent:!0}),this.schema.register(\"$clipboardHolder\",{allowContentOf:\"$root\",isLimit:!0}),this.schema.extend(\"$text\",{allowIn:\"$clipboardHolder\"}),this.schema.register(\"$marker\"),this.schema.addChildCheck(((t,e)=>{if(\"$marker\"===e.name)return!0})),Qc(this),this.document.registerPostFixer(fa)}change(t){try{return 0===this._pendingChanges.length?(this._pendingChanges.push({batch:new Ua,callback:t}),this._runPendingChanges()[0]):t(this._currentWriter)}catch(t){_n.a.rethrowUnexpectedError(t,this)}}enqueueChange(t,e){try{\"string\"==typeof t?t=new Ua(t):\"function\"==typeof t&&(e=t,t=new Ua),this._pendingChanges.push({batch:t,callback:e}),1==this._pendingChanges.length&&this._runPendingChanges()}catch(t){_n.a.rethrowUnexpectedError(t,this)}}applyOperation(t){t._execute()}insertContent(t,e,n){return function(t,e,n,o){return t.change((i=>{let r;r=n?n instanceof Js||n instanceof ia?n:i.createSelection(n,o):t.document.selection,r.isCollapsed||t.deleteContent(r,{doNotAutoparagraph:!0});const s=new Vc(t,i,r.anchor);let a;a=e.is(\"documentFragment\")?e.getChildren():[e],s.handleNodes(a,{isFirst:!0,isLast:!0});const c=s.getSelectionRange();c&&(r instanceof ia?i.setSelection(c):r.setTo(c));const l=s.getAffectedRange()||t.createRange(r.anchor);return s.destroy(),l}))}(this,t,e,n)}deleteContent(t,e){zc(this,t,e)}modifySelection(t,e){!function(t,e,n={}){const o=t.schema,i=\"backward\"!=n.direction,r=n.unit?n.unit:\"character\",s=e.focus,a=new Os({boundaries:$c(s,i),singleCharacters:!0,direction:i?\"forward\":\"backward\"}),c={walker:a,schema:o,isForward:i,unit:r};let l;for(;l=a.next();){if(l.done)return;const n=Gc(c,l.value);if(n)return void(e instanceof ia?t.change((t=>{t.setSelectionFocus(n)})):e.setFocus(n))}}(this,t,e)}getSelectedContent(t){return function(t,e){return t.change((t=>{const n=t.createDocumentFragment(),o=e.getFirstRange();if(!o||o.isCollapsed)return n;const i=o.start.root,r=o.start.getCommonPath(o.end),s=i.getNodeByPath(r);let a;a=o.start.parent==o.end.parent?o:t.createRange(t.createPositionAt(s,o.start.path[r.length]),t.createPositionAt(s,o.end.path[r.length]+1));const c=a.end.offset-a.start.offset;for(const e of a.getItems({shallow:!0}))e.is(\"$textProxy\")?t.appendText(e.data,e.getAttributes(),n):t.append(t.cloneElement(e,!0),n);if(a!=o){const e=o._getTransformedByMove(a.start,t.createPositionAt(n,0),c)[0],i=t.createRange(t.createPositionAt(n,0),e.start);Yc(t.createRange(e.end,t.createPositionAt(n,\"end\")),t),Yc(i,t)}return n}))}(this,t)}hasContent(t,e={}){const n=t instanceof Fs?Hs._createIn(t):t;if(n.isCollapsed)return!1;const{ignoreWhitespaces:o=!1,ignoreMarkers:i=!1}=e;if(!i)for(const t of this.markers.getMarkersIntersectingRange(n))if(t.affectsData)return!0;for(const t of n.getItems())if(this.schema.isContent(t)){if(!t.is(\"$textProxy\"))return!0;if(!o)return!0;if(-1!==t.data.search(/\\S/))return!0}return!1}createPositionFromPath(t,e,n){return new Ms(t,e,n)}createPositionAt(t,e){return Ms._createAt(t,e)}createPositionAfter(t){return Ms._createAfter(t)}createPositionBefore(t){return Ms._createBefore(t)}createRange(t,e){return new Hs(t,e)}createRangeIn(t){return Hs._createIn(t)}createRangeOn(t){return Hs._createOn(t)}createSelection(t,e,n){return new Js(t,e,n)}createBatch(t){return new Ua(t)}createOperationFromJSON(t){return class{static fromJSON(t,e){return Fc[t.__className].fromJSON(t,e)}}.fromJSON(t,this.document)}destroy(){this.document.destroy(),this.stopListening()}_runPendingChanges(){const t=[];for(this.fire(\"_beforeChanges\");this._pendingChanges.length;){const e=this._pendingChanges[0].batch;this._currentWriter=new pc(this,e);const n=this._pendingChanges[0].callback(this._currentWriter);t.push(n),this.document._handleChangeBlock(this._currentWriter),this._pendingChanges.shift(),this._currentWriter=null}return this.fire(\"_afterChanges\"),t}}In(el,Xo);class nl{constructor(){this._listener=Object.create(vr)}listenTo(t){this._listener.listenTo(t,\"keydown\",((t,e)=>{this._listener.fire(\"_keydown:\"+xi(e),e)}))}set(t,e,n={}){const o=Ei(t),i=n.priority;this._listener.listenTo(this._listener,\"_keydown:\"+o,((t,n)=>{e(n,(()=>{n.preventDefault(),n.stopPropagation(),t.stop()})),t.return=!0}),{priority:i})}press(t){return!!this._listener.fire(\"_keydown:\"+xi(t),t)}destroy(){this._listener.stopListening()}}class ol extends nl{constructor(t){super(),this.editor=t}set(t,e,n={}){if(\"string\"==typeof e){const t=e;e=(e,n)=>{this.editor.execute(t),n()}}super.set(t,e,n)}}class il{constructor(t={}){this._context=t.context||new zn({language:t.language}),this._context._addEditor(this,!t.context);const e=Array.from(this.constructor.builtinPlugins||[]);this.config=new un(t,this.constructor.defaultConfig),this.config.define(\"plugins\",e),this.config.define(this._context._getEditorConfig()),this.plugins=new Fn(this,e,this._context.plugins),this.locale=this._context.locale,this.t=this.locale.t,this.commands=new Sa,this.set(\"state\",\"initializing\"),this.once(\"ready\",(()=>this.state=\"ready\"),{priority:\"high\"}),this.once(\"destroy\",(()=>this.state=\"destroyed\"),{priority:\"high\"}),this.set(\"isReadOnly\",!1),this.model=new el;const n=new Lo;this.data=new qa(this.model,n),this.editing=new Ea(this.model,n),this.editing.view.document.bind(\"isReadOnly\").to(this),this.conversion=new Wa([this.editing.downcastDispatcher,this.data.downcastDispatcher],this.data.upcastDispatcher),this.conversion.addAlias(\"dataDowncast\",this.data.downcastDispatcher),this.conversion.addAlias(\"editingDowncast\",this.editing.downcastDispatcher),this.keystrokes=new ol(this),this.keystrokes.listenTo(this.editing.view.document)}initPlugins(){const t=this.config,e=t.get(\"plugins\"),n=t.get(\"removePlugins\")||[],o=t.get(\"extraPlugins\")||[];return this.plugins.init(e.concat(o),n)}destroy(){let t=Promise.resolve();return\"initializing\"==this.state&&(t=new Promise((t=>this.once(\"ready\",t)))),t.then((()=>{this.fire(\"destroy\"),this.stopListening(),this.commands.destroy()})).then((()=>this.plugins.destroy())).then((()=>{this.model.destroy(),this.data.destroy(),this.editing.destroy(),this.keystrokes.destroy()})).then((()=>this._context._removeEditor(this)))}execute(...t){try{return this.commands.execute(...t)}catch(t){_n.a.rethrowUnexpectedError(t,this)}}}In(il,Xo);var rl={setData(t){this.data.set(t)},getData(t){return this.data.get(t)}};var sl={updateSourceElement(){if(!this.sourceElement)throw new _n.a(\"editor-missing-sourceelement\",this);var t,e;t=this.sourceElement,e=this.data.get(),t instanceof HTMLTextAreaElement&&(t.value=e),t.innerHTML=e}};class al{getHtml(t){const e=document.implementation.createHTMLDocument(\"\").createElement(\"div\");return e.appendChild(t),e.innerHTML}}class cl{constructor(t){this._domParser=new DOMParser,this._domConverter=new kr(t,{blockFillerMode:\"nbsp\"}),this._htmlWriter=new al}toData(t){const e=this._domConverter.viewToDom(t,document);return this._htmlWriter.getHtml(e)}toView(t){const e=this._toDom(t);return this._domConverter.domToView(e)}_toDom(t){const e=this._domParser.parseFromString(t,\"text/html\"),n=e.createDocumentFragment(),o=e.body.childNodes;for(;o.length>0;)n.appendChild(o[0]);return n}}class ll{constructor(t){this.editor=t,this._components=new Map}*names(){for(const t of this._components.values())yield t.originalName}add(t,e){this._components.set(dl(t),{callback:e,originalName:t})}create(t){if(!this.has(t))throw new _n.a(\"componentfactory-item-missing\",this,{name:t});return this._components.get(dl(t)).callback(this.editor.locale)}has(t){return this._components.has(dl(t))}}function dl(t){return String(t).toLowerCase()}class hl{constructor(){this.set(\"isFocused\",!1),this.set(\"focusedElement\",null),this._elements=new Set,this._nextEventLoopTimeout=null}add(t){if(this._elements.has(t))throw new _n.a(\"focustracker-add-element-already-exist\",this);this.listenTo(t,\"focus\",(()=>this._focus(t)),{useCapture:!0}),this.listenTo(t,\"blur\",(()=>this._blur()),{useCapture:!0}),this._elements.add(t)}remove(t){t===this.focusedElement&&this._blur(t),this._elements.has(t)&&(this.stopListening(t),this._elements.delete(t))}destroy(){this.stopListening()}_focus(t){clearTimeout(this._nextEventLoopTimeout),this.focusedElement=t,this.isFocused=!0}_blur(){clearTimeout(this._nextEventLoopTimeout),this._nextEventLoopTimeout=setTimeout((()=>{this.focusedElement=null,this.isFocused=!1}),0)}}In(hl,vr),In(hl,Xo);class ul{constructor(t){this.editor=t,this.componentFactory=new ll(t),this.focusTracker=new hl,this._editableElementsMap=new Map,this.listenTo(t.editing.view.document,\"layoutChanged\",(()=>this.update()))}get element(){return null}update(){this.fire(\"update\")}destroy(){this.stopListening(),this.focusTracker.destroy();for(const t of this._editableElementsMap.values())t.ckeditorInstance=null;this._editableElementsMap=new Map}setEditableElement(t,e){this._editableElementsMap.set(t,e),e.ckeditorInstance||(e.ckeditorInstance=this.editor)}getEditableElement(t=\"main\"){return this._editableElementsMap.get(t)}getEditableElementsNames(){return this._editableElementsMap.keys()}get _editableElements(){return console.warn(\"editor-ui-deprecated-editable-elements: The EditorUI#_editableElements property has been deprecated and will be removed in the near future.\",{editorUI:this}),this._editableElementsMap}}In(ul,vn);var ml=n(1),gl=n.n(ml),pl=n(12),fl={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(pl.a,fl),pl.a.locals;const bl=new WeakMap;function kl(t,e){return!!e.hasClass(\"ck-placeholder\")&&(t.removeClass(\"ck-placeholder\",e),!0)}function wl(t,e){const n=bl.get(t);let o=!1;for(const[t,i]of n)_l(e,t,i)&&(o=!0);return o}function _l(t,e,n){const{text:o,isDirectHost:i}=n,r=i?e:function(t){if(1===t.childCount){const e=t.getChild(0);if(e.is(\"element\")&&!e.is(\"uiElement\"))return e}return null}(e);let s=!1;return!!r&&(n.hostElement=r,r.getAttribute(\"data-placeholder\")!==o&&(t.setAttribute(\"data-placeholder\",o,r),s=!0),!function(t){if(!t.isAttached())return!1;const e=!Array.from(t.getChildren()).some((t=>!t.is(\"uiElement\"))),n=t.document;if(!n.isFocused&&e)return!0;const o=n.selection.anchor;return!(!e||!o||o.parent===t)}(r)?kl(t,r)&&(s=!0):function(t,e){return!e.hasClass(\"ck-placeholder\")&&(t.addClass(\"ck-placeholder\",e),!0)}(t,r)&&(s=!0),s)}class Cl{constructor(){this._replacedElements=[]}replace(t,e){this._replacedElements.push({element:t,newElement:e}),t.style.display=\"none\",e&&t.parentNode.insertBefore(e,t.nextSibling)}restore(){this._replacedElements.forEach((({element:t,newElement:e})=>{t.style.display=\"\",e&&e.remove()})),this._replacedElements=[]}}class Al extends ul{constructor(t,e){var n;super(t),this.view=e,this._toolbarConfig=(n=t.config.get(\"toolbar\"),Array.isArray(n)?{items:n}:n?Object.assign({items:[]},n):{items:[]}),this._elementReplacer=new Cl}get element(){return this.view.element}init(t){const e=this.editor,n=this.view,o=e.editing.view,i=n.editable,r=o.document.getRoot();i.name=r.rootName,n.render();const s=i.element;this.setEditableElement(i.name,s),this.focusTracker.add(s),n.editable.bind(\"isFocused\").to(this.focusTracker),o.attachDomRoot(s),t&&this._elementReplacer.replace(t,this.element),this._initPlaceholder(),this._initToolbar(),this.fire(\"ready\")}destroy(){const t=this.view,e=this.editor.editing.view;this._elementReplacer.restore(),e.detachDomRoot(t.editable.name),t.destroy(),super.destroy()}_initToolbar(){const t=this.editor,e=this.view,n=t.editing.view;e.stickyPanel.bind(\"isActive\").to(this.focusTracker,\"isFocused\"),e.stickyPanel.limiterElement=e.element,this._toolbarConfig.viewportTopOffset&&(e.stickyPanel.viewportTopOffset=this._toolbarConfig.viewportTopOffset),e.toolbar.fillFromConfig(this._toolbarConfig.items,this.componentFactory),function({origin:t,originKeystrokeHandler:e,originFocusTracker:n,toolbar:o,beforeFocus:i,afterBlur:r}){n.add(o.element),e.set(\"Alt+F10\",((t,e)=>{n.isFocused&&!o.focusTracker.isFocused&&(i&&i(),o.focus(),e())})),o.keystrokes.set(\"Esc\",((e,n)=>{o.focusTracker.isFocused&&(t.focus(),r&&r(),n())}))}({origin:n,originFocusTracker:this.focusTracker,originKeystrokeHandler:t.keystrokes,toolbar:e.toolbar})}_initPlaceholder(){const t=this.editor,e=t.editing.view,n=e.document.getRoot(),o=t.sourceElement,i=t.config.get(\"placeholder\")||o&&\"textarea\"===o.tagName.toLowerCase()&&o.getAttribute(\"placeholder\");i&&function(t){const{view:e,element:n,text:o,isDirectHost:i=!0}=t,r=e.document;bl.has(r)||(bl.set(r,new Map),r.registerPostFixer((t=>wl(r,t)))),bl.get(r).set(n,{text:o,isDirectHost:i}),e.change((t=>wl(r,t)))}({view:e,element:n,text:i,isDirectHost:!1})}}class vl extends Rn{constructor(t=[]){super(t,{idProperty:\"viewUid\"}),this.on(\"add\",((t,e,n)=>{this._renderViewIntoCollectionParent(e,n)})),this.on(\"remove\",((t,e)=>{e.element&&this._parentElement&&e.element.remove()})),this._parentElement=null}destroy(){this.map((t=>t.destroy()))}setParent(t){this._parentElement=t;for(const t of this)this._renderViewIntoCollectionParent(t)}delegate(...t){if(!t.length||!t.every((t=>\"string\"==typeof t)))throw new _n.a(\"ui-viewcollection-delegate-wrong-events\",this);return{to:e=>{for(const n of this)for(const o of t)n.delegate(o).to(e);this.on(\"add\",((n,o)=>{for(const n of t)o.delegate(n).to(e)})),this.on(\"remove\",((n,o)=>{for(const n of t)o.stopDelegating(n,e)}))}}}_renderViewIntoCollectionParent(t,e){t.isRendered||t.render(),t.element&&this._parentElement&&this._parentElement.insertBefore(t.element,this._parentElement.children[e])}}class yl{constructor(t){Object.assign(this,Fl(Rl(t))),this._isRendered=!1,this._revertData=null}render(){const t=this._renderNode({intoFragment:!0});return this._isRendered=!0,t}apply(t){return this._revertData={children:[],bindings:[],attributes:{}},this._renderNode({node:t,isApplying:!0,revertData:this._revertData}),t}revert(t){if(!this._revertData)throw new _n.a(\"ui-template-revert-not-applied\",[this,t]);this._revertTemplateFromNode(t,this._revertData)}*getViews(){yield*function*t(e){if(e.children)for(const n of e.children)Ll(n)?yield n:Hl(n)&&(yield*t(n))}(this)}static bind(t,e){return{to:(n,o)=>new El({eventNameOrFunction:n,attribute:n,observable:t,emitter:e,callback:o}),if:(n,o,i)=>new Sl({observable:t,emitter:e,attribute:n,valueIfTrue:o,callback:i})}}static extend(t,e){if(t._isRendered)throw new _n.a(\"template-extend-render\",[this,t]);Vl(t,Fl(Rl(e)))}_renderNode(t){let e;if(e=t.node?this.tag&&this.text:this.tag?this.text:!this.text,e)throw new _n.a(\"ui-template-wrong-syntax\",this);return this.text?this._renderText(t):this._renderElement(t)}_renderElement(t){let e=t.node;return e||(e=t.node=document.createElementNS(this.ns||\"http://www.w3.org/1999/xhtml\",this.tag)),this._renderAttributes(t),this._renderElementChildren(t),this._setUpListeners(t),e}_renderText(t){let e=t.node;return e?t.revertData.text=e.textContent:e=t.node=document.createTextNode(\"\"),Dl(this.text)?this._bindToObservable({schema:this.text,updater:Bl(e),data:t}):e.textContent=this.text.join(\"\"),e}_renderAttributes(t){let e,n,o,i;if(!this.attributes)return;const r=t.node,s=t.revertData;for(e in this.attributes)if(o=r.getAttribute(e),n=this.attributes[e],s&&(s.attributes[e]=o),i=M(n[0])&&n[0].ns?n[0].ns:null,Dl(n)){const a=i?n[0].value:n;s&&jl(e)&&a.unshift(o),this._bindToObservable({schema:a,updater:Pl(r,e,i),data:t})}else\"style\"==e&&\"string\"!=typeof n[0]?this._renderStyleAttribute(n[0],t):(s&&o&&jl(e)&&n.unshift(o),n=n.map((t=>t&&t.value||t)).reduce(((t,e)=>t.concat(e)),[]).reduce(Nl,\"\"),zl(n)||r.setAttributeNS(i,e,n))}_renderStyleAttribute(t,e){const n=e.node;for(const o in t){const i=t[o];Dl(i)?this._bindToObservable({schema:[i],updater:Il(n,o),data:e}):n.style[o]=i}}_renderElementChildren(t){const e=t.node,n=t.intoFragment?document.createDocumentFragment():e,o=t.isApplying;let i=0;for(const r of this.children)if(Kl(r)){if(!o){r.setParent(e);for(const t of r)n.appendChild(t.element)}}else if(Ll(r))o||(r.isRendered||r.render(),n.appendChild(r.element));else if(lr(r))n.appendChild(r);else if(o){const e={children:[],bindings:[],attributes:{}};t.revertData.children.push(e),r._renderNode({node:n.childNodes[i++],isApplying:!0,revertData:e})}else n.appendChild(r.render());t.intoFragment&&e.appendChild(n)}_setUpListeners(t){if(this.eventListeners)for(const e in this.eventListeners){const n=this.eventListeners[e].map((n=>{const[o,i]=e.split(\"@\");return n.activateDomEventListener(o,i,t)}));t.revertData&&t.revertData.bindings.push(n)}}_bindToObservable({schema:t,updater:e,data:n}){const o=n.revertData;Tl(t,e,n);const i=t.filter((t=>!zl(t))).filter((t=>t.observable)).map((o=>o.activateAttributeListener(t,e,n)));o&&o.bindings.push(i)}_revertTemplateFromNode(t,e){for(const t of e.bindings)for(const e of t)e();if(e.text)t.textContent=e.text;else{for(const n in e.attributes){const o=e.attributes[n];null===o?t.removeAttribute(n):t.setAttribute(n,o)}for(let n=0;nTl(t,e,n);return this.emitter.listenTo(this.observable,\"change:\"+this.attribute,o),()=>{this.emitter.stopListening(this.observable,\"change:\"+this.attribute,o)}}}class El extends xl{activateDomEventListener(t,e,n){const o=(t,n)=>{e&&!n.target.matches(e)||(\"function\"==typeof this.eventNameOrFunction?this.eventNameOrFunction(n):this.observable.fire(this.eventNameOrFunction,n))};return this.emitter.listenTo(n.node,t,o),()=>{this.emitter.stopListening(n.node,t,o)}}}class Sl extends xl{getValue(t){return!zl(super.getValue(t))&&(this.valueIfTrue||!0)}}function Dl(t){return!!t&&(t.value&&(t=t.value),Array.isArray(t)?t.some(Dl):t instanceof xl)}function Tl(t,e,{node:n}){let o=function(t,e){return t.map((t=>t instanceof xl?t.getValue(e):t))}(t,n);o=1==t.length&&t[0]instanceof Sl?o[0]:o.reduce(Nl,\"\"),zl(o)?e.remove():e.set(o)}function Bl(t){return{set(e){t.textContent=e},remove(){t.textContent=\"\"}}}function Pl(t,e,n){return{set(o){t.setAttributeNS(n,e,o)},remove(){t.removeAttributeNS(n,e)}}}function Il(t,e){return{set(n){t.style[e]=n},remove(){t.style[e]=null}}}function Rl(t){return dn(t,(t=>{if(t&&(t instanceof xl||Hl(t)||Ll(t)||Kl(t)))return t}))}function Fl(t){if(\"string\"==typeof t?t=function(t){return{text:[t]}}(t):t.text&&function(t){Array.isArray(t.text)||(t.text=[t.text])}(t),t.on&&(t.eventListeners=function(t){for(const e in t)Ol(t,e);return t}(t.on),delete t.on),!t.text){t.attributes&&function(t){for(const e in t)t[e].value&&(t[e].value=[].concat(t[e].value)),Ol(t,e)}(t.attributes);const e=[];if(t.children)if(Kl(t.children))e.push(t.children);else for(const n of t.children)Hl(n)||Ll(n)||lr(n)?e.push(n):e.push(new yl(n));t.children=e}return t}function Ol(t,e){Array.isArray(t[e])||(t[e]=[t[e]])}function Nl(t,e){return zl(e)?t:zl(t)?e:`${t} ${e}`}function Ml(t,e){for(const n in e)t[n]?t[n].push(...e[n]):t[n]=e[n]}function Vl(t,e){if(e.attributes&&(t.attributes||(t.attributes={}),Ml(t.attributes,e.attributes)),e.eventListeners&&(t.eventListeners||(t.eventListeners={}),Ml(t.eventListeners,e.eventListeners)),e.text&&t.text.push(...e.text),e.children&&e.children.length){if(t.children.length!=e.children.length)throw new _n.a(\"ui-template-extend-children-mismatch\",t);let n=0;for(const o of e.children)Vl(t.children[n++],o)}}function zl(t){return!t&&0!==t}function Ll(t){return t instanceof Gl}function Hl(t){return t instanceof yl}function Kl(t){return t instanceof vl}function jl(t){return\"class\"==t||\"style\"==t}var ql=n(13),Wl={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(ql.a,Wl),ql.a.locals;class Gl{constructor(t){this.element=null,this.isRendered=!1,this.locale=t,this.t=t&&t.t,this._viewCollections=new Rn,this._unboundChildren=this.createCollection(),this._viewCollections.on(\"add\",((e,n)=>{n.locale=t})),this.decorate(\"render\")}get bindTemplate(){return this._bindTemplate?this._bindTemplate:this._bindTemplate=yl.bind(this,this)}createCollection(t){const e=new vl(t);return this._viewCollections.add(e),e}registerChild(t){Pn(t)||(t=[t]);for(const e of t)this._unboundChildren.add(e)}deregisterChild(t){Pn(t)||(t=[t]);for(const e of t)this._unboundChildren.remove(e)}setTemplate(t){this.template=new yl(t)}extendTemplate(t){yl.extend(this.template,t)}render(){if(this.isRendered)throw new _n.a(\"ui-view-render-already-rendered\",this);this.template&&(this.element=this.template.render(),this.registerChild(this.template.getViews())),this.isRendered=!0}destroy(){this.stopListening(),this._viewCollections.map((t=>t.destroy())),this.template&&this.template._revertData&&this.template.revert(this.element)}}In(Gl,vr),In(Gl,Xo);var $l=function(t){return\"string\"==typeof t||!Ot(t)&&f(t)&&\"[object String]\"==m(t)};class Ul extends vl{constructor(t,e=[]){super(e),this.locale=t}attachToDom(){this._bodyCollectionContainer=new yl({tag:\"div\",attributes:{class:[\"ck\",\"ck-reset_all\",\"ck-body\",\"ck-rounded-corners\"],dir:this.locale.uiLanguageDirection},children:this}).render();let t=document.querySelector(\".ck-body-wrapper\");t||(t=function(t,e,n={},o=[]){const i=n&&n.xmlns,r=i?t.createElementNS(i,e):t.createElement(e);for(const t in n)r.setAttribute(t,n[t]);!$l(o)&&Pn(o)||(o=[o]);for(let e of o)$l(e)&&(e=t.createTextNode(e)),r.appendChild(e);return r}(document,\"div\",{class:\"ck-body-wrapper\"}),document.body.appendChild(t)),t.appendChild(this._bodyCollectionContainer)}detachFromDom(){super.destroy(),this._bodyCollectionContainer&&this._bodyCollectionContainer.remove();const t=document.querySelector(\".ck-body-wrapper\");t&&0==t.childElementCount&&t.remove()}}var Jl=n(14),Yl={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Jl.a,Yl),Jl.a.locals;class Ql extends Gl{constructor(t){super(t),this.body=new Ul(t)}render(){super.render(),this.body.attachToDom()}destroy(){return this.body.detachFromDom(),super.destroy()}}var Xl=n(15),Zl={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Xl.a,Zl),Xl.a.locals;class td extends Gl{constructor(t){super(t),this.set(\"text\"),this.set(\"for\"),this.id=`ck-editor__label_${kn()}`;const e=this.bindTemplate;this.setTemplate({tag:\"label\",attributes:{class:[\"ck\",\"ck-label\"],id:this.id,for:e.to(\"for\")},children:[{text:e.to(\"text\")}]})}}class ed extends Ql{constructor(t){super(t),this.top=this.createCollection(),this.main=this.createCollection(),this._voiceLabelView=this._createVoiceLabel(),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-reset\",\"ck-editor\",\"ck-rounded-corners\"],role:\"application\",dir:t.uiLanguageDirection,lang:t.uiLanguage,\"aria-labelledby\":this._voiceLabelView.id},children:[this._voiceLabelView,{tag:\"div\",attributes:{class:[\"ck\",\"ck-editor__top\",\"ck-reset_all\"],role:\"presentation\"},children:this.top},{tag:\"div\",attributes:{class:[\"ck\",\"ck-editor__main\"],role:\"presentation\"},children:this.main}]})}_createVoiceLabel(){const t=this.t,e=new td;return e.text=t(\"Rich Text Editor\"),e.extendTemplate({attributes:{class:\"ck-voice-label\"}}),e}}class nd extends Gl{constructor(t,e,n){super(t),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-content\",\"ck-editor__editable\",\"ck-rounded-corners\"],lang:t.contentLanguage,dir:t.contentLanguageDirection}}),this.name=null,this.set(\"isFocused\",!1),this._editableElement=n,this._hasExternalElement=!!this._editableElement,this._editingView=e}render(){super.render(),this._hasExternalElement?this.template.apply(this.element=this._editableElement):this._editableElement=this.element,this.on(\"change:isFocused\",(()=>this._updateIsFocusedClasses())),this._updateIsFocusedClasses()}destroy(){this._hasExternalElement&&this.template.revert(this._editableElement),super.destroy()}_updateIsFocusedClasses(){const t=this._editingView;function e(e){t.change((n=>{const o=t.document.getRoot(e.name);n.addClass(e.isFocused?\"ck-focused\":\"ck-blurred\",o),n.removeClass(e.isFocused?\"ck-blurred\":\"ck-focused\",o)}))}t.isRenderingInProgress?function n(o){t.once(\"change:isRenderingInProgress\",((t,i,r)=>{r?n(o):e(o)}))}(this):e(this)}}class od extends nd{constructor(t,e,n){super(t,e,n),this.extendTemplate({attributes:{role:\"textbox\",class:\"ck-editor__editable_inline\"}})}render(){super.render();const t=this._editingView,e=this.t;t.change((n=>{const o=t.document.getRoot(this.name);n.setAttribute(\"aria-label\",e(\"Rich Text Editor, %0\",this.name),o)}))}}function id(t){return e=>e+t}var rd=n(16),sd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(rd.a,sd),rd.a.locals;const ad=id(\"px\");class cd extends Gl{constructor(t){super(t);const e=this.bindTemplate;this.set(\"isActive\",!1),this.set(\"isSticky\",!1),this.set(\"limiterElement\",null),this.set(\"limiterBottomOffset\",50),this.set(\"viewportTopOffset\",0),this.set(\"_marginLeft\",null),this.set(\"_isStickyToTheLimiter\",!1),this.set(\"_hasViewportTopOffset\",!1),this.content=this.createCollection(),this._contentPanelPlaceholder=new yl({tag:\"div\",attributes:{class:[\"ck\",\"ck-sticky-panel__placeholder\"],style:{display:e.to(\"isSticky\",(t=>t?\"block\":\"none\")),height:e.to(\"isSticky\",(t=>t?ad(this._panelRect.height):null))}}}).render(),this._contentPanel=new yl({tag:\"div\",attributes:{class:[\"ck\",\"ck-sticky-panel__content\",e.if(\"isSticky\",\"ck-sticky-panel__content_sticky\"),e.if(\"_isStickyToTheLimiter\",\"ck-sticky-panel__content_sticky_bottom-limit\")],style:{width:e.to(\"isSticky\",(t=>t?ad(this._contentPanelPlaceholder.getBoundingClientRect().width):null)),top:e.to(\"_hasViewportTopOffset\",(t=>t?ad(this.viewportTopOffset):null)),bottom:e.to(\"_isStickyToTheLimiter\",(t=>t?ad(this.limiterBottomOffset):null)),marginLeft:e.to(\"_marginLeft\")}},children:this.content}).render(),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-sticky-panel\"]},children:[this._contentPanelPlaceholder,this._contentPanel]})}render(){super.render(),this._checkIfShouldBeSticky(),this.listenTo(gr.window,\"scroll\",(()=>{this._checkIfShouldBeSticky()})),this.listenTo(this,\"change:isActive\",(()=>{this._checkIfShouldBeSticky()}))}_checkIfShouldBeSticky(){const t=this._panelRect=this._contentPanel.getBoundingClientRect();let e;this.limiterElement?(e=this._limiterRect=this.limiterElement.getBoundingClientRect(),this.isSticky=this.isActive&&e.top{this[e](),n()}))}}get first(){return this.focusables.find(dd)||null}get last(){return this.focusables.filter(dd).slice(-1)[0]||null}get next(){return this._getFocusableItem(1)}get previous(){return this._getFocusableItem(-1)}get current(){let t=null;return null===this.focusTracker.focusedElement?null:(this.focusables.find(((e,n)=>{const o=e.element===this.focusTracker.focusedElement;return o&&(t=n),o})),t)}focusFirst(){this._focus(this.first)}focusLast(){this._focus(this.last)}focusNext(){this._focus(this.next)}focusPrevious(){this._focus(this.previous)}_focus(t){t&&t.focus()}_getFocusableItem(t){const e=this.current,n=this.focusables.length;if(!n)return null;if(null===e)return this[1===t?\"first\":\"last\"];let o=(e+n+t)%n;do{const e=this.focusables.get(o);if(dd(e))return e;o=(o+n+t)%n}while(o!==e);return null}}function dd(t){return!(!t.focus||\"none\"==gr.window.getComputedStyle(t.element).display)}class hd extends Gl{constructor(t){super(t),this.setTemplate({tag:\"span\",attributes:{class:[\"ck\",\"ck-toolbar__separator\"]}})}}class ud{constructor(t,e){ud._observerInstance||ud._createObserver(),this._element=t,this._callback=e,ud._addElementCallback(t,e),ud._observerInstance.observe(t)}destroy(){ud._deleteElementCallback(this._element,this._callback)}static _addElementCallback(t,e){ud._elementCallbacks||(ud._elementCallbacks=new Map);let n=ud._elementCallbacks.get(t);n||(n=new Set,ud._elementCallbacks.set(t,n)),n.add(e)}static _deleteElementCallback(t,e){const n=ud._getElementCallbacks(t);n&&(n.delete(e),n.size||(ud._elementCallbacks.delete(t),ud._observerInstance.unobserve(t))),ud._elementCallbacks&&!ud._elementCallbacks.size&&(ud._observerInstance=null,ud._elementCallbacks=null)}static _getElementCallbacks(t){return ud._elementCallbacks?ud._elementCallbacks.get(t):null}static _createObserver(){let t;t=\"function\"==typeof gr.window.ResizeObserver?gr.window.ResizeObserver:md,ud._observerInstance=new t((t=>{for(const e of t){const t=ud._getElementCallbacks(e.target);if(t)for(const n of t)n(e)}}))}}ud._observerInstance=null,ud._elementCallbacks=null;class md{constructor(t){this._callback=t,this._elements=new Set,this._previousRects=new Map,this._periodicCheckTimeout=null}observe(t){this._elements.add(t),this._checkElementRectsAndExecuteCallback(),1===this._elements.size&&this._startPeriodicCheck()}unobserve(t){this._elements.delete(t),this._previousRects.delete(t),this._elements.size||this._stopPeriodicCheck()}_startPeriodicCheck(){const t=()=>{this._checkElementRectsAndExecuteCallback(),this._periodicCheckTimeout=setTimeout(t,100)};this.listenTo(gr.window,\"resize\",(()=>{this._checkElementRectsAndExecuteCallback()})),this._periodicCheckTimeout=setTimeout(t,100)}_stopPeriodicCheck(){clearTimeout(this._periodicCheckTimeout),this.stopListening(),this._previousRects.clear()}_checkElementRectsAndExecuteCallback(){const t=[];for(const e of this._elements)this._hasRectChanged(e)&&t.push({target:e,contentRect:this._previousRects.get(e)});t.length&&this._callback(t)}_hasRectChanged(t){if(!t.ownerDocument.body.contains(t))return!1;const e=new fs(t),n=this._previousRects.get(t),o=!n||!n.isEqual(e);return this._previousRects.set(t,e),o}}In(md,vr);class gd extends Gl{constructor(t){super(t);const e=this.bindTemplate;this.set(\"isVisible\",!1),this.set(\"position\",\"se\"),this.children=this.createCollection(),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-reset\",\"ck-dropdown__panel\",e.to(\"position\",(t=>`ck-dropdown__panel_${t}`)),e.if(\"isVisible\",\"ck-dropdown__panel-visible\")]},children:this.children,on:{selectstart:e.to((t=>t.preventDefault()))}})}focus(){this.children.length&&this.children.first.focus()}focusLast(){if(this.children.length){const t=this.children.last;\"function\"==typeof t.focusLast?t.focusLast():t.focus()}}}var pd=n(17),fd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(pd.a,fd),pd.a.locals;function bd({element:t,target:e,positions:n,limiter:o,fitInViewport:i}){z(e)&&(e=e()),z(o)&&(o=o());const r=function(t){return t&&t.parentNode?t.offsetParent===gr.document.body?null:t.offsetParent:null}(t),s=new fs(t),a=new fs(e);let c,l;if(o||i){const t=function(t,e){const{elementRect:n,viewportRect:o}=e,i=n.getArea(),r=function(t,{targetRect:e,elementRect:n,limiterRect:o,viewportRect:i}){const r=[],s=n.getArea();for(const a of t){const t=kd(a,e,n);if(!t)continue;const[c,l]=t;let d=0,h=0;if(o)if(i){const t=o.getIntersection(i);t&&(d=t.getIntersectionArea(l))}else d=o.getIntersectionArea(l);i&&(h=i.getIntersectionArea(l));const u={positionName:c,positionRect:l,limiterIntersectArea:d,viewportIntersectArea:h};if(d===s)return[u];r.push(u)}return r}(t,e);if(o){const t=wd(r.filter((({viewportIntersectArea:t})=>t===i)),i);if(t)return t}return wd(r,i)}(n,{targetRect:a,elementRect:s,limiterRect:o&&new fs(o).getVisible(),viewportRect:i&&new fs(gr.window)});[l,c]=t||kd(n[0],a,s)}else[l,c]=kd(n[0],a,s);let d=_d(c);return r&&(d=function({left:t,top:e},n){const o=_d(new fs(n)),i=gs(n);return t-=o.left,e-=o.top,t+=n.scrollLeft,e+=n.scrollTop,t-=i.left,e-=i.top,{left:t,top:e}}(d,r)),{left:d.left,top:d.top,name:l}}function kd(t,e,n){const o=t(e,n);if(!o)return null;const{left:i,top:r,name:s}=o;return[s,n.clone().moveTo(i,r)]}function wd(t,e){let n,o,i=0;for(const{positionName:r,positionRect:s,limiterIntersectArea:a,viewportIntersectArea:c}of t){if(a===e)return[r,s];const t=c**2+a**2;t>i&&(i=t,n=s,o=r)}return n?[o,n]:null}function _d({left:t,top:e}){const{scrollX:n,scrollY:o}=gr.window;return{left:t+n,top:e+o}}class Cd extends Gl{constructor(t,e,n){super(t);const o=this.bindTemplate;this.buttonView=e,this.panelView=n,this.set(\"isOpen\",!1),this.set(\"isEnabled\",!0),this.set(\"class\"),this.set(\"id\"),this.set(\"panelPosition\",\"auto\"),this.keystrokes=new nl,this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-dropdown\",o.to(\"class\"),o.if(\"isEnabled\",\"ck-disabled\",(t=>!t))],id:o.to(\"id\"),\"aria-describedby\":o.to(\"ariaDescribedById\")},children:[e,n]}),e.extendTemplate({attributes:{class:[\"ck-dropdown__button\"]}})}render(){super.render(),this.listenTo(this.buttonView,\"open\",(()=>{this.isOpen=!this.isOpen})),this.panelView.bind(\"isVisible\").to(this,\"isOpen\"),this.on(\"change:isOpen\",(()=>{this.isOpen&&(\"auto\"===this.panelPosition?this.panelView.position=Cd._getOptimalPosition({element:this.panelView.element,target:this.buttonView.element,fitInViewport:!0,positions:this._panelPositions}).name:this.panelView.position=this.panelPosition)})),this.keystrokes.listenTo(this.element);const t=(t,e)=>{this.isOpen&&(this.buttonView.focus(),this.isOpen=!1,e())};this.keystrokes.set(\"arrowdown\",((t,e)=>{this.buttonView.isEnabled&&!this.isOpen&&(this.isOpen=!0,e())})),this.keystrokes.set(\"arrowright\",((t,e)=>{this.isOpen&&e()})),this.keystrokes.set(\"arrowleft\",t),this.keystrokes.set(\"esc\",t)}focus(){this.buttonView.focus()}get _panelPositions(){const{southEast:t,southWest:e,northEast:n,northWest:o}=Cd.defaultPanelPositions;return\"ltr\"===this.locale.uiLanguageDirection?[t,e,n,o]:[e,t,o,n]}}Cd.defaultPanelPositions={southEast:t=>({top:t.bottom,left:t.left,name:\"se\"}),southWest:(t,e)=>({top:t.bottom,left:t.left-e.width+t.width,name:\"sw\"}),northEast:(t,e)=>({top:t.top-e.height,left:t.left,name:\"ne\"}),northWest:(t,e)=>({top:t.bottom-e.height,left:t.left-e.width+t.width,name:\"nw\"})},Cd._getOptimalPosition=bd;var Ad=n(18),vd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Ad.a,vd),Ad.a.locals;class yd extends Gl{constructor(){super();const t=this.bindTemplate;this.set(\"content\",\"\"),this.set(\"viewBox\",\"0 0 20 20\"),this.set(\"fillColor\",\"\"),this.setTemplate({tag:\"svg\",ns:\"http://www.w3.org/2000/svg\",attributes:{class:[\"ck\",\"ck-icon\"],viewBox:t.to(\"viewBox\")}})}render(){super.render(),this._updateXMLContent(),this._colorFillPaths(),this.on(\"change:content\",(()=>{this._updateXMLContent(),this._colorFillPaths()})),this.on(\"change:fillColor\",(()=>{this._colorFillPaths()}))}_updateXMLContent(){if(this.content){const t=(new DOMParser).parseFromString(this.content.trim(),\"image/svg+xml\").querySelector(\"svg\"),e=t.getAttribute(\"viewBox\");for(e&&(this.viewBox=e),this.element.innerHTML=\"\";t.childNodes.length>0;)this.element.appendChild(t.childNodes[0])}}_colorFillPaths(){this.fillColor&&this.element.querySelectorAll(\".ck-icon__fill\").forEach((t=>{t.style.fill=this.fillColor}))}}var xd=n(19),Ed={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(xd.a,Ed),xd.a.locals;class Sd extends Gl{constructor(t){super(t),this.set(\"text\",\"\"),this.set(\"position\",\"s\");const e=this.bindTemplate;this.setTemplate({tag:\"span\",attributes:{class:[\"ck\",\"ck-tooltip\",e.to(\"position\",(t=>\"ck-tooltip_\"+t)),e.if(\"text\",\"ck-hidden\",(t=>!t.trim()))]},children:[{tag:\"span\",attributes:{class:[\"ck\",\"ck-tooltip__text\"]},children:[{text:e.to(\"text\")}]}]})}}var Dd=n(20),Td={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Dd.a,Td),Dd.a.locals;class Bd extends Gl{constructor(t){super(t);const e=this.bindTemplate,n=kn();this.set(\"class\"),this.set(\"labelStyle\"),this.set(\"icon\"),this.set(\"isEnabled\",!0),this.set(\"isOn\",!1),this.set(\"isVisible\",!0),this.set(\"isToggleable\",!1),this.set(\"keystroke\"),this.set(\"label\"),this.set(\"tabindex\",-1),this.set(\"tooltip\"),this.set(\"tooltipPosition\",\"s\"),this.set(\"type\",\"button\"),this.set(\"withText\",!1),this.set(\"withKeystroke\",!1),this.children=this.createCollection(),this.tooltipView=this._createTooltipView(),this.labelView=this._createLabelView(n),this.iconView=new yd,this.iconView.extendTemplate({attributes:{class:\"ck-button__icon\"}}),this.keystrokeView=this._createKeystrokeView(),this.bind(\"_tooltipString\").to(this,\"tooltip\",this,\"label\",this,\"keystroke\",this._getTooltipString.bind(this)),this.setTemplate({tag:\"button\",attributes:{class:[\"ck\",\"ck-button\",e.to(\"class\"),e.if(\"isEnabled\",\"ck-disabled\",(t=>!t)),e.if(\"isVisible\",\"ck-hidden\",(t=>!t)),e.to(\"isOn\",(t=>t?\"ck-on\":\"ck-off\")),e.if(\"withText\",\"ck-button_with-text\"),e.if(\"withKeystroke\",\"ck-button_with-keystroke\")],type:e.to(\"type\",(t=>t||\"button\")),tabindex:e.to(\"tabindex\"),\"aria-labelledby\":`ck-editor__aria-label_${n}`,\"aria-disabled\":e.if(\"isEnabled\",!0,(t=>!t)),\"aria-pressed\":e.to(\"isOn\",(t=>!!this.isToggleable&&String(t)))},children:this.children,on:{mousedown:e.to((t=>{t.preventDefault()})),click:e.to((t=>{this.isEnabled?this.fire(\"execute\"):t.preventDefault()}))}})}render(){super.render(),this.icon&&(this.iconView.bind(\"content\").to(this,\"icon\"),this.children.add(this.iconView)),this.children.add(this.tooltipView),this.children.add(this.labelView),this.withKeystroke&&this.children.add(this.keystrokeView)}focus(){this.element.focus()}_createTooltipView(){const t=new Sd;return t.bind(\"text\").to(this,\"_tooltipString\"),t.bind(\"position\").to(this,\"tooltipPosition\"),t}_createLabelView(t){const e=new Gl,n=this.bindTemplate;return e.setTemplate({tag:\"span\",attributes:{class:[\"ck\",\"ck-button__label\"],style:n.to(\"labelStyle\"),id:`ck-editor__aria-label_${t}`},children:[{text:this.bindTemplate.to(\"label\")}]}),e}_createKeystrokeView(){const t=new Gl;return t.setTemplate({tag:\"span\",attributes:{class:[\"ck\",\"ck-button__keystroke\"]},children:[{text:this.bindTemplate.to(\"keystroke\",(t=>Si(t)))}]}),t}_getTooltipString(t,e,n){return t?\"string\"==typeof t?t:(n&&(n=Si(n)),t instanceof Function?t(e,n):`${e}${n?` (${n})`:\"\"}`):\"\"}}var Pd='';class Id extends Bd{constructor(t){super(t),this.arrowView=this._createArrowView(),this.extendTemplate({attributes:{\"aria-haspopup\":!0}}),this.delegate(\"execute\").to(this,\"open\")}render(){super.render(),this.children.add(this.arrowView)}_createArrowView(){const t=new yd;return t.content=Pd,t.extendTemplate({attributes:{class:\"ck-dropdown__arrow\"}}),t}}var Rd=n(21),Fd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Rd.a,Fd),Rd.a.locals;class Od extends Gl{constructor(){super(),this.items=this.createCollection(),this.focusTracker=new hl,this.keystrokes=new nl,this._focusCycler=new ld({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:\"arrowup\",focusNext:\"arrowdown\"}}),this.setTemplate({tag:\"ul\",attributes:{class:[\"ck\",\"ck-reset\",\"ck-list\"]},children:this.items})}render(){super.render();for(const t of this.items)this.focusTracker.add(t.element);this.items.on(\"add\",((t,e)=>{this.focusTracker.add(e.element)})),this.items.on(\"remove\",((t,e)=>{this.focusTracker.remove(e.element)})),this.keystrokes.listenTo(this.element)}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}}class Nd extends Gl{constructor(t){super(t),this.children=this.createCollection(),this.setTemplate({tag:\"li\",attributes:{class:[\"ck\",\"ck-list__item\"]},children:this.children})}focus(){this.children.first.focus()}}class Md extends Gl{constructor(t){super(t),this.setTemplate({tag:\"li\",attributes:{class:[\"ck\",\"ck-list__separator\"]}})}}var Vd=n(22),zd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Vd.a,zd),Vd.a.locals;class Ld extends Bd{constructor(t){super(t),this.isToggleable=!0,this.toggleSwitchView=this._createToggleView(),this.extendTemplate({attributes:{class:\"ck-switchbutton\"}})}render(){super.render(),this.children.add(this.toggleSwitchView)}_createToggleView(){const t=new Gl;return t.setTemplate({tag:\"span\",attributes:{class:[\"ck\",\"ck-button__toggle\"]},children:[{tag:\"span\",attributes:{class:[\"ck\",\"ck-button__toggle__inner\"]}}]}),t}}function Hd({emitter:t,activator:e,callback:n,contextElements:o}){t.listenTo(document,\"mousedown\",((t,i)=>{if(!e())return;const r=\"function\"==typeof i.composedPath?i.composedPath():[];for(const t of o)if(t.contains(i.target)||r.includes(t))return;n()}))}var Kd=n(23),jd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0},qd=(gl()(Kd.a,jd),Kd.a.locals,n(24)),Wd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(qd.a,Wd),qd.a.locals;function Gd(t,e=Id){const n=new e(t),o=new gd(t),i=new Cd(t,n,o);return n.bind(\"isEnabled\").to(i),n instanceof Id?n.bind(\"isOn\").to(i,\"isOpen\"):n.arrowView.bind(\"isOn\").to(i,\"isOpen\"),function(t){(function(t){t.on(\"render\",(()=>{Hd({emitter:t,activator:()=>t.isOpen,callback:()=>{t.isOpen=!1},contextElements:[t.element]})}))})(t),function(t){t.on(\"execute\",(e=>{e.source instanceof Ld||(t.isOpen=!1)}))}(t),function(t){t.keystrokes.set(\"arrowdown\",((e,n)=>{t.isOpen&&(t.panelView.focus(),n())})),t.keystrokes.set(\"arrowup\",((e,n)=>{t.isOpen&&(t.panelView.focusLast(),n())}))}(t)}(i),i}function $d(t,e){const n=t.locale,o=n.t,i=t.toolbarView=new Qd(n);i.set(\"ariaLabel\",o(\"Dropdown toolbar\")),t.extendTemplate({attributes:{class:[\"ck-toolbar-dropdown\"]}}),e.map((t=>i.items.add(t))),t.panelView.children.add(i),i.items.delegate(\"execute\").to(t)}function Ud(t,e){const n=t.locale,o=t.listView=new Od(n);o.items.bindTo(e).using((({type:t,model:e})=>{if(\"separator\"===t)return new Md(n);if(\"button\"===t||\"switchbutton\"===t){const o=new Nd(n);let i;return i=\"button\"===t?new Bd(n):new Ld(n),i.bind(...Object.keys(e)).to(e),i.delegate(\"execute\").to(o),o.children.add(i),o}})),t.panelView.children.add(o),o.items.delegate(\"execute\").to(t)}var Jd=n(25),Yd={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Jd.a,Yd),Jd.a.locals;class Qd extends Gl{constructor(t,e){super(t);const n=this.bindTemplate,o=this.t;var i;this.options=e||{},this.set(\"ariaLabel\",o(\"Editor toolbar\")),this.set(\"maxWidth\",\"auto\"),this.items=this.createCollection(),this.focusTracker=new hl,this.keystrokes=new nl,this.set(\"class\"),this.set(\"isCompact\",!1),this.itemsView=new Xd(t),this.children=this.createCollection(),this.children.add(this.itemsView),this.focusables=this.createCollection(),this._focusCycler=new ld({focusables:this.focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:[\"arrowleft\",\"arrowup\"],focusNext:[\"arrowright\",\"arrowdown\"]}}),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-toolbar\",n.to(\"class\"),n.if(\"isCompact\",\"ck-toolbar_compact\")],role:\"toolbar\",\"aria-label\":n.to(\"ariaLabel\"),style:{maxWidth:n.to(\"maxWidth\")}},children:this.children,on:{mousedown:(i=this,i.bindTemplate.to((t=>{t.target===i.element&&t.preventDefault()})))}}),this._behavior=this.options.shouldGroupWhenFull?new th(this):new Zd(this)}render(){super.render();for(const t of this.items)this.focusTracker.add(t.element);this.items.on(\"add\",((t,e)=>{this.focusTracker.add(e.element)})),this.items.on(\"remove\",((t,e)=>{this.focusTracker.remove(e.element)})),this.keystrokes.listenTo(this.element),this._behavior.render(this)}destroy(){return this._behavior.destroy(),super.destroy()}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}fillFromConfig(t,e){this.items.addMany(t.map((t=>\"|\"==t?new hd:e.has(t)?e.create(t):void Object(_n.c)(\"toolbarview-item-unavailable\",{name:t}))).filter((t=>void 0!==t)))}}class Xd extends Gl{constructor(t){super(t),this.children=this.createCollection(),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-toolbar__items\"]},children:this.children})}}class Zd{constructor(t){const e=t.bindTemplate;t.set(\"isVertical\",!1),t.itemsView.children.bindTo(t.items).using((t=>t)),t.focusables.bindTo(t.items).using((t=>t)),t.extendTemplate({attributes:{class:[e.if(\"isVertical\",\"ck-toolbar_vertical\")]}})}render(){}destroy(){}}class th{constructor(t){this.view=t,this.viewChildren=t.children,this.viewFocusables=t.focusables,this.viewItemsView=t.itemsView,this.viewFocusTracker=t.focusTracker,this.viewLocale=t.locale,this.ungroupedItems=t.createCollection(),this.groupedItems=t.createCollection(),this.groupedItemsDropdown=this._createGroupedItemsDropdown(),this.resizeObserver=null,this.cachedPadding=null,this.shouldUpdateGroupingOnNextResize=!1,t.itemsView.children.bindTo(this.ungroupedItems).using((t=>t)),this.ungroupedItems.on(\"add\",this._updateFocusCycleableItems.bind(this)),this.ungroupedItems.on(\"remove\",this._updateFocusCycleableItems.bind(this)),t.children.on(\"add\",this._updateFocusCycleableItems.bind(this)),t.children.on(\"remove\",this._updateFocusCycleableItems.bind(this)),t.items.on(\"change\",((t,e)=>{const n=e.index;for(const t of e.removed)n>=this.ungroupedItems.length?this.groupedItems.remove(t):this.ungroupedItems.remove(t);for(let t=n;tthis.ungroupedItems.length?this.groupedItems.add(o,t-this.ungroupedItems.length):this.ungroupedItems.add(o,t)}this._updateGrouping()})),t.extendTemplate({attributes:{class:[\"ck-toolbar_grouping\"]}})}render(t){this.viewElement=t.element,this._enableGroupingOnResize(),this._enableGroupingOnMaxWidthChange(t)}destroy(){this.groupedItemsDropdown.destroy(),this.resizeObserver.destroy()}_updateGrouping(){if(!this.viewElement.ownerDocument.body.contains(this.viewElement))return;if(!this.viewElement.offsetParent)return void(this.shouldUpdateGroupingOnNextResize=!0);const t=this.groupedItems.length;let e;for(;this._areItemsOverflowing;)this._groupLastItem(),e=!0;if(!e&&this.groupedItems.length){for(;this.groupedItems.length&&!this._areItemsOverflowing;)this._ungroupFirstItem();this._areItemsOverflowing&&this._groupLastItem()}this.groupedItems.length!==t&&this.view.fire(\"groupedItemsUpdate\")}get _areItemsOverflowing(){if(!this.ungroupedItems.length)return!1;const t=this.viewElement,e=this.viewLocale.uiLanguageDirection,n=new fs(t.lastChild),o=new fs(t);if(!this.cachedPadding){const n=gr.window.getComputedStyle(t),o=\"ltr\"===e?\"paddingRight\":\"paddingLeft\";this.cachedPadding=Number.parseInt(n[o])}return\"ltr\"===e?n.right>o.right-this.cachedPadding:n.left{t&&t===e.contentRect.width&&!this.shouldUpdateGroupingOnNextResize||(this.shouldUpdateGroupingOnNextResize=!1,this._updateGrouping(),t=e.contentRect.width)})),this._updateGrouping()}_enableGroupingOnMaxWidthChange(t){t.on(\"change:maxWidth\",(()=>{this._updateGrouping()}))}_groupLastItem(){this.groupedItems.length||(this.viewChildren.add(new hd),this.viewChildren.add(this.groupedItemsDropdown),this.viewFocusTracker.add(this.groupedItemsDropdown.element)),this.groupedItems.add(this.ungroupedItems.remove(this.ungroupedItems.last),0)}_ungroupFirstItem(){this.ungroupedItems.add(this.groupedItems.remove(this.groupedItems.first)),this.groupedItems.length||(this.viewChildren.remove(this.groupedItemsDropdown),this.viewChildren.remove(this.viewChildren.last),this.viewFocusTracker.remove(this.groupedItemsDropdown.element))}_createGroupedItemsDropdown(){const t=this.viewLocale,e=t.t,n=Gd(t);return n.class=\"ck-toolbar__grouped-dropdown\",n.panelPosition=\"ltr\"===t.uiLanguageDirection?\"sw\":\"se\",$d(n,[]),n.buttonView.set({label:e(\"Show more items\"),tooltip:!0,icon:''}),n.toolbarView.items.bindTo(this.groupedItems).using((t=>t)),n}_updateFocusCycleableItems(){this.viewFocusables.clear(),this.ungroupedItems.map((t=>{this.viewFocusables.add(t)})),this.groupedItems.length&&this.viewFocusables.add(this.groupedItemsDropdown)}}var eh=n(26),nh={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(eh.a,nh),eh.a.locals;class oh extends ed{constructor(t,e,n={}){super(t),this.stickyPanel=new cd(t),this.toolbar=new Qd(t,{shouldGroupWhenFull:n.shouldToolbarGroupWhenFull}),this.editable=new od(t,e)}render(){super.render(),this.stickyPanel.content.add(this.toolbar),this.top.add(this.stickyPanel),this.main.add(this.editable)}}class ih extends il{constructor(t,e){super(e),hn(t)&&(this.sourceElement=t),this.data.processor=new cl(this.data.viewDocument),this.model.document.createRoot();const n=!this.config.get(\"toolbar.shouldNotGroupWhenFull\"),o=new oh(this.locale,this.editing.view,{shouldToolbarGroupWhenFull:n});this.ui=new Al(this,o),function(t){if(!z(t.updateSourceElement))throw new _n.a(\"attachtoform-missing-elementapi-interface\",t);const e=t.sourceElement;if(e&&\"textarea\"===e.tagName.toLowerCase()&&e.form){let n;const o=e.form,i=()=>t.updateSourceElement();z(o.submit)&&(n=o.submit,o.submit=()=>{i(),n.apply(o)}),o.addEventListener(\"submit\",i),t.on(\"destroy\",(()=>{o.removeEventListener(\"submit\",i),n&&(o.submit=n)}))}}(this)}destroy(){return this.sourceElement&&this.updateSourceElement(),this.ui.destroy(),super.destroy()}static create(t,e={}){return new Promise((n=>{const o=new this(t,e);n(o.initPlugins().then((()=>o.ui.init(hn(t)?t:null))).then((()=>{if(!hn(t)&&e.initialData)throw new _n.a(\"editor-create-initial-data\",null);const n=e.initialData||function(t){return hn(t)?(e=t,e instanceof HTMLTextAreaElement?e.value:e.innerHTML):t;var e}(t);return o.data.init(n)})).then((()=>o.fire(\"ready\"))).then((()=>o)))}))}}In(ih,rl),In(ih,sl);class rh{constructor(t){this.editor=t,this.set(\"isEnabled\",!0),this._disableStack=new Set}forceDisabled(t){this._disableStack.add(t),1==this._disableStack.size&&(this.on(\"set:isEnabled\",sh,{priority:\"highest\"}),this.isEnabled=!1)}clearForceDisabled(t){this._disableStack.delete(t),0==this._disableStack.size&&(this.off(\"set:isEnabled\",sh),this.isEnabled=!0)}destroy(){this.stopListening()}static get isContextPlugin(){return!1}}function sh(t){t.return=!1,t.stop()}In(rh,Xo);class ah{constructor(t){this.editor=t,this.set(\"value\",void 0),this.set(\"isEnabled\",!1),this._disableStack=new Set,this.decorate(\"execute\"),this.listenTo(this.editor.model.document,\"change\",(()=>{this.refresh()})),this.on(\"execute\",(t=>{this.isEnabled||t.stop()}),{priority:\"high\"}),this.listenTo(t,\"change:isReadOnly\",((t,e,n)=>{n?this.forceDisabled(\"readOnlyMode\"):this.clearForceDisabled(\"readOnlyMode\")}))}refresh(){this.isEnabled=!0}forceDisabled(t){this._disableStack.add(t),1==this._disableStack.size&&(this.on(\"set:isEnabled\",ch,{priority:\"highest\"}),this.isEnabled=!1)}clearForceDisabled(t){this._disableStack.delete(t),0==this._disableStack.size&&(this.off(\"set:isEnabled\",ch),this.refresh())}execute(){}destroy(){this.stopListening()}}function ch(t){t.return=!1,t.stop()}function lh(t){const e=t.next();return e.done?null:e.value}In(ah,Xo);const dh=[\"left\",\"right\",\"center\",\"justify\"];function hh(t){return dh.includes(t)}function uh(t,e){return\"rtl\"==e.contentLanguageDirection?\"right\"===t:\"left\"===t}const mh=\"alignment\";class gh extends ah{refresh(){const t=this.editor.locale,e=lh(this.editor.model.document.selection.getSelectedBlocks());this.isEnabled=!!e&&this._canBeAligned(e),this.isEnabled&&e.hasAttribute(\"alignment\")?this.value=e.getAttribute(\"alignment\"):this.value=\"rtl\"===t.contentLanguageDirection?\"right\":\"left\"}execute(t={}){const e=this.editor,n=e.locale,o=e.model,i=o.document,r=t.value;o.change((t=>{const e=Array.from(i.selection.getSelectedBlocks()).filter((t=>this._canBeAligned(t))),o=e[0].getAttribute(\"alignment\");uh(r,n)||o===r||!r?function(t,e){for(const n of t)e.removeAttribute(mh,n)}(e,t):function(t,e,n){for(const o of t)e.setAttribute(mh,n,o)}(e,t,r)}))}_canBeAligned(t){return this.editor.model.schema.checkAttribute(t,mh)}}class ph extends rh{static get pluginName(){return\"AlignmentEditing\"}constructor(t){super(t),t.config.define(\"alignment\",{options:[...dh]})}init(){const t=this.editor,e=t.locale,n=t.model.schema,o=t.config.get(\"alignment.options\").filter(hh);n.extend(\"$block\",{allowAttributes:\"alignment\"}),t.model.schema.setAttributeProperties(\"alignment\",{isFormatting:!0});const i=function(t){const e={model:{key:\"alignment\",values:t.slice()},view:{}};for(const n of t)e.view[n]={key:\"style\",value:{\"text-align\":n}};return e}(o.filter((t=>!uh(t,e))));t.conversion.attributeToAttribute(i),t.commands.add(\"alignment\",new gh(t))}}var fh='',bh='',kh='',wh='';const _h=new Map([[\"left\",fh],[\"right\",bh],[\"center\",kh],[\"justify\",wh]]);class Ch extends rh{get localizedOptionTitles(){const t=this.editor.t;return{left:t(\"Align left\"),right:t(\"Align right\"),center:t(\"Align center\"),justify:t(\"Justify\")}}static get pluginName(){return\"AlignmentUI\"}init(){const t=this.editor,e=t.ui.componentFactory,n=t.t,o=t.config.get(\"alignment.options\");o.filter(hh).forEach((t=>this._addButton(t))),e.add(\"alignment\",(t=>{const i=Gd(t),r=o.map((t=>e.create(`alignment:${t}`)));$d(i,r),i.buttonView.set({label:n(\"Text alignment\"),tooltip:!0}),i.toolbarView.isVertical=!0,i.toolbarView.ariaLabel=n(\"Text alignment toolbar\"),i.extendTemplate({attributes:{class:\"ck-alignment-dropdown\"}});const s=\"rtl\"===t.contentLanguageDirection?bh:fh;return i.buttonView.bind(\"icon\").toMany(r,\"isOn\",((...t)=>{const e=t.findIndex((t=>t));return e<0?s:r[e].icon})),i.bind(\"isEnabled\").toMany(r,\"isEnabled\",((...t)=>t.some((t=>t)))),i}))}_addButton(t){const e=this.editor;e.ui.componentFactory.add(`alignment:${t}`,(n=>{const o=e.commands.get(\"alignment\"),i=new Bd(n);return i.set({label:this.localizedOptionTitles[t],icon:_h.get(t),tooltip:!0,isToggleable:!0}),i.bind(\"isEnabled\").to(o),i.bind(\"isOn\").to(o,\"value\",(e=>e===t)),this.listenTo(i,\"execute\",(()=>{e.execute(\"alignment\",{value:t}),e.editing.view.focus()})),i}))}}function Ah(t,e){let n=t.start;return{text:Array.from(t.getItems()).reduce(((t,o)=>o.is(\"$text\")||o.is(\"$textProxy\")?t+o.data:(n=e.createPositionAfter(o),\"\")),\"\"),range:e.createRange(n,t.end)}}class vh{constructor(t,e){this.model=t,this.testCallback=e,this.hasMatch=!1,this.set(\"isEnabled\",!0),this.on(\"change:isEnabled\",(()=>{this.isEnabled?this._startListening():(this.stopListening(t.document.selection),this.stopListening(t.document))})),this._startListening()}_startListening(){const t=this.model.document;this.listenTo(t.selection,\"change:range\",((e,{directChange:n})=>{n&&(t.selection.isCollapsed?this._evaluateTextBeforeSelection(\"selection\"):this.hasMatch&&(this.fire(\"unmatched\"),this.hasMatch=!1))})),this.listenTo(t,\"change:data\",((t,e)=>{\"transparent\"!=e.type&&this._evaluateTextBeforeSelection(\"data\",{batch:e})}))}_evaluateTextBeforeSelection(t,e={}){const n=this.model,o=n.document.selection,i=n.createRange(n.createPositionAt(o.focus.parent,0),o.focus),{text:r,range:s}=Ah(i,n),a=this.testCallback(r);if(!a&&this.hasMatch&&this.fire(\"unmatched\"),this.hasMatch=!!a,a){const n=Object.assign(e,{text:r,range:s});\"object\"==typeof a&&Object.assign(n,a),this.fire(`matched:${t}`,n)}}}In(vh,Xo);var yh=function(t,e,n){var o=t.length;return n=void 0===n?o:n,!e&&n>=o?t:mo(t,e,n)},xh=RegExp(\"[\\\\u200d\\\\ud800-\\\\udfff\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff\\\\ufe0e\\\\ufe0f]\");var Eh=function(t){return xh.test(t)};var Sh=function(t){return t.split(\"\")},Dh=\"[\\\\ud800-\\\\udfff]\",Th=\"[\\\\u0300-\\\\u036f\\\\ufe20-\\\\ufe2f\\\\u20d0-\\\\u20ff]\",Bh=\"\\\\ud83c[\\\\udffb-\\\\udfff]\",Ph=\"[^\\\\ud800-\\\\udfff]\",Ih=\"(?:\\\\ud83c[\\\\udde6-\\\\uddff]){2}\",Rh=\"[\\\\ud800-\\\\udbff][\\\\udc00-\\\\udfff]\",Fh=\"(?:\"+Th+\"|\"+Bh+\")\"+\"?\",Oh=\"[\\\\ufe0e\\\\ufe0f]?\",Nh=Oh+Fh+(\"(?:\\\\u200d(?:\"+[Ph,Ih,Rh].join(\"|\")+\")\"+Oh+Fh+\")*\"),Mh=\"(?:\"+[Ph+Th+\"?\",Th,Ih,Rh,Dh].join(\"|\")+\")\",Vh=RegExp(Bh+\"(?=\"+Bh+\")|\"+Mh+Nh,\"g\");var zh=function(t){return t.match(Vh)||[]};var Lh=function(t){return Eh(t)?zh(t):Sh(t)};var Hh=function(t){return function(e){e=ao(e);var n=Eh(e)?Lh(e):void 0,o=n?n[0]:e.charAt(0),i=n?yh(n,1).join(\"\"):e.slice(1);return o[t]()+i}}(\"toUpperCase\");const Kh=/[\\u0000-\\u0020\\u00A0\\u1680\\u180E\\u2000-\\u2029\\u205f\\u3000]/g,jh=/^(?:(?:https?|ftps?|mailto):|[^a-z]|[a-z+.-]+(?:[^a-z+.:-]|$))/i,qh=/^[\\S]+@((?![-_])(?:[-\\w\\u00a1-\\uffff]{0,63}[^-_]\\.))+(?:[a-z\\u00a1-\\uffff]{2,})$/i,Wh=/^((\\w+:(\\/{2,})?)|(\\W))/i,Gh=\"Ctrl+K\";function $h(t,{writer:e}){const n=e.createAttributeElement(\"a\",{href:t},{priority:5});return e.setCustomProperty(\"link\",!0,n),n}function Uh(t){return function(t){return t.replace(Kh,\"\").match(jh)}(t=String(t))?t:\"#\"}function Jh(t,e){return!!t&&(t.is(\"element\",\"image\")&&e.checkAttribute(\"image\",\"linkHref\"))}function Yh(t,e){const n=(o=t,qh.test(o)?\"mailto:\":e);var o;const i=!!n&&!Wh.test(t);return t&&i?n+t:t}const Qh=new RegExp(\"(^|\\\\s)(((?:(?:(?:https?|ftp):)?\\\\/\\\\/)(?:\\\\S+(?::\\\\S*)?@)?(?:(?![-_])(?:[-\\\\w\\\\u00a1-\\\\uffff]{0,63}[^-_]\\\\.)+(?:[a-z\\\\u00a1-\\\\uffff]{2,}))(?::\\\\d{2,5})?(?:[/?#]\\\\S*)?)|((www.|(\\\\S+@))((?![-_])(?:[-\\\\w\\\\u00a1-\\\\uffff]{0,63}[^-_]\\\\.))+(?:[a-z\\\\u00a1-\\\\uffff]{2,})))$\",\"i\");class Xh extends rh{static get pluginName(){return\"AutoLink\"}init(){const t=this.editor.model.document.selection;t.on(\"change:range\",(()=>{this.isEnabled=!t.anchor.parent.is(\"element\",\"codeBlock\")})),this._enableTypingHandling()}afterInit(){this._enableEnterHandling(),this._enableShiftEnterHandling()}_enableTypingHandling(){const t=this.editor,e=new vh(t.model,(t=>{if(!function(t){return t.length>4&&\" \"===t[t.length-1]&&\" \"!==t[t.length-2]}(t))return;const e=Zh(t.substr(0,t.length-1));return e?{url:e}:void 0})),n=t.plugins.get(\"Input\");e.on(\"matched:data\",((e,o)=>{const{batch:i,range:r,url:s}=o;if(!n.isInput(i))return;const a=r.end.getShiftedBy(-1),c=a.getShiftedBy(-s.length),l=t.model.createRange(c,a);this._applyAutoLink(s,l)})),e.bind(\"isEnabled\").to(this)}_enableEnterHandling(){const t=this.editor,e=t.model,n=t.commands.get(\"enter\");n&&n.on(\"execute\",(()=>{const t=e.document.selection.getFirstPosition();if(!t.parent.previousSibling)return;const n=e.createRangeIn(t.parent.previousSibling);this._checkAndApplyAutoLinkOnRange(n)}))}_enableShiftEnterHandling(){const t=this.editor,e=t.model,n=t.commands.get(\"shiftEnter\");n&&n.on(\"execute\",(()=>{const t=e.document.selection.getFirstPosition(),n=e.createRange(e.createPositionAt(t.parent,0),t.getShiftedBy(-1));this._checkAndApplyAutoLinkOnRange(n)}))}_checkAndApplyAutoLinkOnRange(t){const e=this.editor.model,{text:n,range:o}=Ah(t,e),i=Zh(n);if(i){const t=e.createRange(o.end.getShiftedBy(-i.length),o.end);this._applyAutoLink(i,t)}}_applyAutoLink(t,e){const n=this.editor.model;this.isEnabled&&function(t,e){return e.schema.checkAttributeInSelection(e.createSelection(t),\"linkHref\")}(e,n)&&n.enqueueChange((n=>{const o=this.editor.config.get(\"link.defaultProtocol\"),i=Yh(t,o);n.setAttribute(\"linkHref\",i,e)}))}}function Zh(t){const e=Qh.exec(t);return e?e[2]:null}class tu extends ah{constructor(t,e){super(t),this.attributeKey=e}refresh(){const t=this.editor.model,e=t.document;this.value=this._getValueFromFirstAllowedNode(),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,this.attributeKey)}execute(t={}){const e=this.editor.model,n=e.document.selection,o=void 0===t.forceValue?!this.value:t.forceValue;e.change((t=>{if(n.isCollapsed)o?t.setSelectionAttribute(this.attributeKey,!0):t.removeSelectionAttribute(this.attributeKey);else{const i=e.schema.getValidRanges(n.getRanges(),this.attributeKey);for(const e of i)o?t.setAttribute(this.attributeKey,o,e):t.removeAttribute(this.attributeKey,e)}}))}_getValueFromFirstAllowedNode(){const t=this.editor.model,e=t.schema,n=t.document.selection;if(n.isCollapsed)return n.hasAttribute(this.attributeKey);for(const t of n.getRanges())for(const n of t.getItems())if(e.checkAttribute(n,this.attributeKey))return n.hasAttribute(this.attributeKey);return!1}}const eu=\"bold\";class nu extends rh{static get pluginName(){return\"BoldEditing\"}init(){const t=this.editor;t.model.schema.extend(\"$text\",{allowAttributes:eu}),t.model.schema.setAttributeProperties(eu,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:eu,view:\"strong\",upcastAlso:[\"b\",t=>{const e=t.getStyle(\"font-weight\");return e?\"bold\"==e||Number(e)>=600?{name:!0,styles:[\"font-weight\"]}:void 0:null}]}),t.commands.add(eu,new tu(t,eu)),t.keystrokes.set(\"CTRL+B\",eu)}}const ou=\"bold\";class iu extends rh{init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(ou,(n=>{const o=t.commands.get(ou),i=new Bd(n);return i.set({label:e(\"Bold\"),icon:'',keystroke:\"CTRL+B\",tooltip:!0,isToggleable:!0}),i.bind(\"isOn\",\"isEnabled\").to(o,\"value\",\"isEnabled\"),this.listenTo(i,\"execute\",(()=>{t.execute(ou),t.editing.view.focus()})),i}))}}class ru{constructor(t){this.files=function(t){const e=t.files?Array.from(t.files):[],n=t.items?Array.from(t.items):[];if(e.length)return e;return n.filter((t=>\"file\"===t.kind)).map((t=>t.getAsFile()))}(t),this._native=t}get types(){return this._native.types}getData(t){return this._native.getData(t)}setData(t,e){this._native.setData(t,e)}}class su extends Yr{constructor(t){super(t);const e=this.document;function n(t,n){n.preventDefault();const o=n.dropRange?[n.dropRange]:Array.from(e.selection.getRanges()),i=new fn(e,\"clipboardInput\");e.fire(i,{dataTransfer:n.dataTransfer,targetRanges:o}),i.stop.called&&n.stopPropagation()}this.domEventType=[\"paste\",\"copy\",\"cut\",\"drop\",\"dragover\"],this.listenTo(e,\"paste\",n,{priority:\"low\"}),this.listenTo(e,\"drop\",n,{priority:\"low\"})}onDomEvent(t){const e={dataTransfer:new ru(t.clipboardData?t.clipboardData:t.dataTransfer)};\"drop\"==t.type&&(e.dropRange=function(t,e){const n=e.target.ownerDocument,o=e.clientX,i=e.clientY;let r;n.caretRangeFromPoint&&n.caretRangeFromPoint(o,i)?r=n.caretRangeFromPoint(o,i):e.rangeParent&&(r=n.createRange(),r.setStart(e.rangeParent,e.rangeOffset),r.collapse(!0));return r?t.domConverter.domRangeToView(r):t.document.selection.getFirstRange()}(this.view,t)),this.fire(t.type,t,e)}}class au extends rh{static get pluginName(){return\"PastePlainText\"}init(){const t=this.editor.editing.view,e=t.document;let n=!1;t.addObserver(su),this.listenTo(e,\"keydown\",((t,e)=>{n=e.shiftKey})),this.listenTo(e,\"clipboardInput\",((t,e)=>{n&&(e.asPlainText=!0)}),{priority:\"high\"})}}const cu=[\"figcaption\",\"li\"];function lu(t){let e=\"\";if(t.is(\"$text\")||t.is(\"$textProxy\"))e=t.data;else if(t.is(\"element\",\"img\")&&t.hasAttribute(\"alt\"))e=t.getAttribute(\"alt\");else if(t.is(\"element\",\"br\"))e=\"\\n\";else{let n=null;for(const o of t.getChildren()){const t=lu(o);n&&(n.is(\"containerElement\")||o.is(\"containerElement\"))&&(cu.includes(n.name)||cu.includes(o.name)?e+=\"\\n\":e+=\"\\n\\n\"),e+=t,n=o}}return e}class du extends rh{static get pluginName(){return\"Clipboard\"}static get requires(){return[au]}init(){const t=this.editor,e=t.model.document,n=t.editing.view,o=n.document;function i(n,i){const r=i.dataTransfer;i.preventDefault();const s=t.data.toView(t.model.getSelectedContent(e.selection));o.fire(\"clipboardOutput\",{dataTransfer:r,content:s,method:n.name})}this._htmlDataProcessor=new cl(o),n.addObserver(su),this.listenTo(o,\"clipboardInput\",(e=>{t.isReadOnly&&e.stop()}),{priority:\"highest\"}),this.listenTo(o,\"clipboardInput\",((t,e)=>{const o=e.dataTransfer;let i=\"\";var r;o.getData(\"text/html\")?i=function(t){return t.replace(/(\\s+)<\\/span>/g,((t,e)=>1==e.length?\" \":e))}(o.getData(\"text/html\")):o.getData(\"text/plain\")&&(((r=(r=o.getData(\"text/plain\")).replace(//g,\">\").replace(/\\r?\\n\\r?\\n/g,\"

\").replace(/\\r?\\n/g,\"
\").replace(/^\\s/,\" \").replace(/\\s$/,\" \").replace(/\\s\\s/g,\"  \")).includes(\"

\")||r.includes(\"
\"))&&(r=`

${r}

`),i=r),i=this._htmlDataProcessor.toView(i);const s=new fn(this,\"inputTransformation\");this.fire(s,{content:i,dataTransfer:o,asPlainText:e.asPlainText}),s.stop.called&&t.stop(),n.scrollToTheSelection()}),{priority:\"low\"}),this.listenTo(this,\"inputTransformation\",((n,o)=>{if(!o.content.isEmpty){const i=this.editor.data,r=this.editor.model,s=i.toModel(o.content,\"$clipboardHolder\");if(0==s.childCount)return;if(o.asPlainText||function(t){if(t.childCount>1)return!1;return 0==[...t.getChild(0).getAttributeKeys()].length}(s)){const n=new Map(Array.from(e.selection.getAttributes()).filter((e=>t.model.schema.getAttributeProperties(e[0]).isFormatting)));r.change((t=>{const e=t.createRangeIn(s);for(const o of e.getItems())(o.is(\"$text\")||o.is(\"$textProxy\"))&&t.setAttributes(n,o)}))}r.insertContent(s),n.stop()}}),{priority:\"low\"}),this.listenTo(o,\"copy\",i,{priority:\"low\"}),this.listenTo(o,\"cut\",((e,n)=>{t.isReadOnly?n.preventDefault():i(e,n)}),{priority:\"low\"}),this.listenTo(o,\"clipboardOutput\",((n,o)=>{o.content.isEmpty||(o.dataTransfer.setData(\"text/html\",this._htmlDataProcessor.toData(o.content)),o.dataTransfer.setData(\"text/plain\",lu(o.content))),\"cut\"==o.method&&t.model.deleteContent(e.selection)}),{priority:\"low\"})}}function*hu(t,e){for(const n of e)n&&t.getAttributeProperties(n[0]).copyOnEnter&&(yield n)}class uu extends ah{execute(){const t=this.editor.model,e=t.document;t.change((n=>{!function(t,e,n,o){const i=n.isCollapsed,r=n.getFirstRange(),s=r.start.parent,a=r.end.parent;if(o.isLimit(s)||o.isLimit(a))return void(i||s!=a||t.deleteContent(n));if(i){const t=hu(e.model.schema,n.getAttributes());mu(e,r.start),e.setSelectionAttribute(t)}else{const o=!(r.start.isAtStart&&r.end.isAtEnd),i=s==a;t.deleteContent(n,{leaveUnmerged:o}),o&&(i?mu(e,n.focus):e.setSelection(a,0))}}(this.editor.model,n,e.selection,t.schema),this.fire(\"afterExecute\",{writer:n})}))}}function mu(t,e){t.split(e),t.setSelection(e.parent.nextSibling,0)}class gu extends Er{constructor(t){super(t);const e=this.document;e.on(\"keydown\",((t,n)=>{if(this.isEnabled&&n.keyCode==yi.enter){let o;e.once(\"enter\",(t=>o=t),{priority:\"highest\"}),e.fire(\"enter\",new Jr(e,n.domEvent,{isSoft:n.shiftKey})),o&&o.stop.called&&t.stop()}}))}observe(){}}class pu extends rh{static get pluginName(){return\"Enter\"}init(){const t=this.editor,e=t.editing.view,n=e.document;e.addObserver(gu),t.commands.add(\"enter\",new uu(t)),this.listenTo(n,\"enter\",((n,o)=>{o.preventDefault(),o.isSoft||(t.execute(\"enter\"),e.scrollToTheSelection())}),{priority:\"low\"})}}class fu extends ah{execute(){const t=this.editor.model,e=t.document;t.change((n=>{!function(t,e,n){const o=n.isCollapsed,i=n.getFirstRange(),r=i.start.parent,s=i.end.parent,a=r==s;if(o){const o=hu(t.schema,n.getAttributes());bu(t,e,i.end),e.removeSelectionAttribute(n.getAttributeKeys()),e.setSelectionAttribute(o)}else{const o=!(i.start.isAtStart&&i.end.isAtEnd);t.deleteContent(n,{leaveUnmerged:o}),a?bu(t,e,n.focus):o&&e.setSelection(s,0)}}(t,n,e.selection),this.fire(\"afterExecute\",{writer:n})}))}refresh(){const t=this.editor.model,e=t.document;this.isEnabled=function(t,e){if(e.rangeCount>1)return!1;const n=e.anchor;if(!n||!t.checkChild(n,\"softBreak\"))return!1;const o=e.getFirstRange(),i=o.start.parent,r=o.end.parent;if((ku(i,t)||ku(r,t))&&i!==r)return!1;return!0}(t.schema,e.selection)}}function bu(t,e,n){const o=e.createElement(\"softBreak\");t.insertContent(o,n),e.setSelection(o,\"after\")}function ku(t,e){return!t.is(\"rootElement\")&&(e.isLimit(t)||ku(t.parent,e))}class wu extends rh{static get pluginName(){return\"ShiftEnter\"}init(){const t=this.editor,e=t.model.schema,n=t.conversion,o=t.editing.view,i=o.document;e.register(\"softBreak\",{allowWhere:\"$text\",isInline:!0}),n.for(\"upcast\").elementToElement({model:\"softBreak\",view:\"br\"}),n.for(\"downcast\").elementToElement({model:\"softBreak\",view:(t,{writer:e})=>e.createEmptyElement(\"br\")}),o.addObserver(gu),t.commands.add(\"shiftEnter\",new fu(t)),this.listenTo(i,\"enter\",((e,n)=>{n.preventDefault(),n.isSoft&&(t.execute(\"shiftEnter\"),o.scrollToTheSelection())}),{priority:\"low\"})}}class _u extends ah{execute(){const t=this.editor.model,e=t.document.selection;let n=t.schema.getLimitElement(e);if(e.containsEntireContent(n)||!Cu(t.schema,n))do{if(n=n.parent,!n)return}while(!Cu(t.schema,n));t.change((t=>{t.setSelection(n,\"in\")}))}}function Cu(t,e){return t.isLimit(e)&&(t.checkChild(e,\"$text\")||t.checkChild(e,\"paragraph\"))}const Au=Ei(\"Ctrl+A\");class vu extends rh{static get pluginName(){return\"SelectAllEditing\"}init(){const t=this.editor,e=t.editing.view.document;t.commands.add(\"selectAll\",new _u(t)),this.listenTo(e,\"keydown\",((e,n)=>{xi(n)===Au&&(t.execute(\"selectAll\"),n.preventDefault())}))}}class yu extends rh{static get pluginName(){return\"SelectAllUI\"}init(){const t=this.editor;t.ui.componentFactory.add(\"selectAll\",(e=>{const n=t.commands.get(\"selectAll\"),o=new Bd(e),i=e.t;return o.set({label:i(\"Select all\"),icon:'',keystroke:\"Ctrl+A\",tooltip:!0}),o.bind(\"isOn\",\"isEnabled\").to(n,\"value\",\"isEnabled\"),this.listenTo(o,\"execute\",(()=>{t.execute(\"selectAll\"),t.editing.view.focus()})),o}))}}class xu extends rh{static get requires(){return[vu,yu]}static get pluginName(){return\"SelectAll\"}}class Eu{constructor(t,e=20){this.model=t,this.size=0,this.limit=e,this.isLocked=!1,this._changeCallback=(t,e)=>{\"transparent\"!=e.type&&e!==this._batch&&this._reset(!0)},this._selectionChangeCallback=()=>{this._reset()},this.model.document.on(\"change\",this._changeCallback),this.model.document.selection.on(\"change:range\",this._selectionChangeCallback),this.model.document.selection.on(\"change:attribute\",this._selectionChangeCallback)}get batch(){return this._batch||(this._batch=this.model.createBatch()),this._batch}input(t){this.size+=t,this.size>=this.limit&&this._reset(!0)}lock(){this.isLocked=!0}unlock(){this.isLocked=!1}destroy(){this.model.document.off(\"change\",this._changeCallback),this.model.document.selection.off(\"change:range\",this._selectionChangeCallback),this.model.document.selection.off(\"change:attribute\",this._selectionChangeCallback)}_reset(t){this.isLocked&&!t||(this._batch=null,this.size=0)}}class Su extends ah{constructor(t,e){super(t),this._buffer=new Eu(t.model,e),this._batches=new WeakSet}get buffer(){return this._buffer}destroy(){super.destroy(),this._buffer.destroy()}execute(t={}){const e=this.editor.model,n=e.document,o=t.text||\"\",i=o.length,r=t.range?e.createSelection(t.range):n.selection,s=t.resultRange;e.enqueueChange(this._buffer.batch,(t=>{this._buffer.lock(),this._batches.add(this._buffer.batch),e.deleteContent(r),o&&e.insertContent(t.createText(o,n.selection.getAttributes()),r),s?t.setSelection(s):r.is(\"documentSelection\")||t.setSelection(r),this._buffer.unlock(),this._buffer.input(i)}))}}const Du=[xi(\"arrowUp\"),xi(\"arrowRight\"),xi(\"arrowDown\"),xi(\"arrowLeft\"),9,16,17,18,19,20,27,33,34,35,36,45,91,93,144,145,173,174,175,176,177,178,179,255];for(let t=112;t<=135;t++)Du.push(t);function Tu(t){return!!t.ctrlKey||Du.includes(t.keyCode)}function Bu(t){if(t.newChildren.length-t.oldChildren.length!=1)return;const e=function(t,e){const n=[];let o,i=0;return t.forEach((t=>{\"equal\"==t?(r(),i++):\"insert\"==t?(s(\"insert\")?o.values.push(e[i]):(r(),o={type:\"insert\",index:i,values:[e[i]]}),i++):s(\"delete\")?o.howMany++:(r(),o={type:\"delete\",index:i,howMany:1})})),r(),n;function r(){o&&(n.push(o),o=null)}function s(t){return o&&o.type==t}}(sr(t.oldChildren,t.newChildren,Pu),t.newChildren);if(e.length>1)return;const n=e[0];return n.values[0]&&n.values[0].is(\"$text\")?n:void 0}function Pu(t,e){return t&&t.is(\"$text\")&&e&&e.is(\"$text\")?t.data===e.data:t===e}class Iu{constructor(t){this.editor=t,this.editing=this.editor.editing}handle(t,e){if(function(t){if(0==t.length)return!1;for(const e of t)if(\"children\"===e.type&&!Bu(e))return!0;return!1}(t))this._handleContainerChildrenMutations(t,e);else for(const n of t)this._handleTextMutation(n,e),this._handleTextNodeInsertion(n)}_handleContainerChildrenMutations(t,e){const n=function(t){const e=t.map((t=>t.node)).reduce(((t,e)=>t.getCommonAncestor(e,{includeSelf:!0})));if(!e)return;return e.getAncestors({includeSelf:!0,parentFirst:!0}).find((t=>t.is(\"containerElement\")||t.is(\"rootElement\")))}(t);if(!n)return;const o=this.editor.editing.view.domConverter.mapViewToDom(n),i=new kr(this.editor.editing.view.document),r=this.editor.data.toModel(i.domToView(o)).getChild(0),s=this.editor.editing.mapper.toModelElement(n);if(!s)return;const a=Array.from(r.getChildren()),c=Array.from(s.getChildren()),l=a[a.length-1],d=c[c.length-1],h=l&&l.is(\"element\",\"softBreak\"),u=d&&!d.is(\"element\",\"softBreak\");h&&u&&a.pop();const m=this.editor.model.schema;if(!Ru(a,m)||!Ru(c,m))return;const g=a.map((t=>t.is(\"$text\")?t.data:\"@\")).join(\"\").replace(/\\u00A0/g,\" \"),p=c.map((t=>t.is(\"$text\")?t.data:\"@\")).join(\"\").replace(/\\u00A0/g,\" \");if(p===g)return;const f=sr(p,g),{firstChangeAt:b,insertions:k,deletions:w}=Fu(f);let _=null;e&&(_=this.editing.mapper.toModelRange(e.getFirstRange()));const C=g.substr(b,k),A=this.editor.model.createRange(this.editor.model.createPositionAt(s,b),this.editor.model.createPositionAt(s,b+w));this.editor.execute(\"input\",{text:C,range:A,resultRange:_})}_handleTextMutation(t,e){if(\"text\"!=t.type)return;const n=t.newText.replace(/\\u00A0/g,\" \"),o=t.oldText.replace(/\\u00A0/g,\" \");if(o===n)return;const i=sr(o,n),{firstChangeAt:r,insertions:s,deletions:a}=Fu(i);let c=null;e&&(c=this.editing.mapper.toModelRange(e.getFirstRange()));const l=this.editing.view.createPositionAt(t.node,r),d=this.editing.mapper.toModelPosition(l),h=this.editor.model.createRange(d,d.getShiftedBy(a)),u=n.substr(r,s);this.editor.execute(\"input\",{text:u,range:h,resultRange:c})}_handleTextNodeInsertion(t){if(\"children\"!=t.type)return;const e=Bu(t),n=this.editing.view.createPositionAt(t.node,e.index),o=this.editing.mapper.toModelPosition(n),i=e.values[0].data;this.editor.execute(\"input\",{text:i.replace(/\\u00A0/g,\" \"),range:this.editor.model.createRange(o)})}}function Ru(t,e){return t.every((t=>e.isInline(t)))}function Fu(t){let e=null,n=null;for(let o=0;o{n.deleteContent(n.document.selection)})),t.unlock()}Ci.isAndroid?o.document.on(\"beforeinput\",((t,e)=>r(e)),{priority:\"lowest\"}):o.document.on(\"keydown\",((t,e)=>r(e)),{priority:\"lowest\"}),o.document.on(\"compositionstart\",(function(){const t=n.document,e=1!==t.selection.rangeCount||t.selection.getFirstRange().isFlat;t.selection.isCollapsed||e||s()}),{priority:\"lowest\"}),o.document.on(\"compositionend\",(()=>{e=n.createSelection(n.document.selection)}),{priority:\"lowest\"})}(t),function(t){t.editing.view.document.on(\"mutations\",((e,n,o)=>{new Iu(t).handle(n,o)}))}(t)}isInput(t){return this.editor.commands.get(\"input\")._batches.has(t)}}class Nu extends ah{constructor(t,e){super(t),this.direction=e,this._buffer=new Eu(t.model,t.config.get(\"typing.undoStep\"))}get buffer(){return this._buffer}execute(t={}){const e=this.editor.model,n=e.document;e.enqueueChange(this._buffer.batch,(o=>{this._buffer.lock();const i=o.createSelection(t.selection||n.selection),r=i.isCollapsed;if(i.isCollapsed&&e.modifySelection(i,{direction:this.direction,unit:t.unit}),this._shouldEntireContentBeReplacedWithParagraph(t.sequence||1))return void this._replaceEntireContentWithParagraph(o);if(i.isCollapsed)return;let s=0;i.getFirstRange().getMinimalFlatRanges().forEach((t=>{s+=hi(t.getWalker({singleCharacters:!0,ignoreElementEnd:!0,shallow:!0}))})),e.deleteContent(i,{doNotResetEntireContent:r,direction:this.direction}),this._buffer.input(s),o.setSelection(i),this._buffer.unlock()}))}_shouldEntireContentBeReplacedWithParagraph(t){if(t>1)return!1;const e=this.editor.model,n=e.document.selection,o=e.schema.getLimitElement(n);if(!(n.isCollapsed&&n.containsEntireContent(o)))return!1;if(!e.schema.checkChild(o,\"paragraph\"))return!1;const i=o.getChild(0);return!i||\"paragraph\"!==i.name}_replaceEntireContentWithParagraph(t){const e=this.editor.model,n=e.document.selection,o=e.schema.getLimitElement(n),i=t.createElement(\"paragraph\");t.remove(t.createRangeIn(o)),t.insert(i,o),t.setSelection(i,0)}}class Mu extends Er{constructor(t){super(t);const e=t.document;let n=0;function o(t,n,o){let i;e.once(\"delete\",(t=>i=t),{priority:Number.POSITIVE_INFINITY}),e.fire(\"delete\",new Jr(e,n,o)),i&&i.stop.called&&t.stop()}e.on(\"keyup\",((t,e)=>{e.keyCode!=yi.delete&&e.keyCode!=yi.backspace||(n=0)})),e.on(\"keydown\",((t,e)=>{const i={};if(e.keyCode==yi.delete)i.direction=\"forward\",i.unit=\"character\";else{if(e.keyCode!=yi.backspace)return;i.direction=\"backward\",i.unit=\"codePoint\"}const r=Ci.isMac?e.altKey:e.ctrlKey;i.unit=r?\"word\":i.unit,i.sequence=++n,o(t,e.domEvent,i)})),Ci.isAndroid&&e.on(\"beforeinput\",((e,n)=>{if(\"deleteContentBackward\"!=n.domEvent.inputType)return;const i={unit:\"codepoint\",direction:\"backward\",sequence:1},r=n.domTarget.ownerDocument.defaultView.getSelection();r.anchorNode==r.focusNode&&r.anchorOffset+1!=r.focusOffset&&(i.selectionToRemove=t.domConverter.domSelectionToView(r)),o(e,n.domEvent,i)}))}observe(){}}class Vu extends rh{static get pluginName(){return\"Delete\"}init(){const t=this.editor,e=t.editing.view,n=e.document;if(e.addObserver(Mu),t.commands.add(\"forwardDelete\",new Nu(t,\"forward\")),t.commands.add(\"delete\",new Nu(t,\"backward\")),this.listenTo(n,\"delete\",((n,o)=>{const i={unit:o.unit,sequence:o.sequence};if(o.selectionToRemove){const e=t.model.createSelection(),n=[];for(const e of o.selectionToRemove.getRanges())n.push(t.editing.mapper.toModelRange(e));e.setTo(n),i.selection=e}t.execute(\"forward\"==o.direction?\"forwardDelete\":\"delete\",i),o.preventDefault(),e.scrollToTheSelection()})),Ci.isAndroid){let t=null;this.listenTo(n,\"delete\",((e,n)=>{const o=n.domTarget.ownerDocument.defaultView.getSelection();t={anchorNode:o.anchorNode,anchorOffset:o.anchorOffset,focusNode:o.focusNode,focusOffset:o.focusOffset}}),{priority:\"lowest\"}),this.listenTo(n,\"keyup\",((e,n)=>{if(t){const e=n.domTarget.ownerDocument.defaultView.getSelection();e.collapse(t.anchorNode,t.anchorOffset),e.extend(t.focusNode,t.focusOffset),t=null}}))}}}class zu extends rh{static get requires(){return[Ou,Vu]}static get pluginName(){return\"Typing\"}}const Lu=new Map;function Hu(t,e,n){let o=Lu.get(t);o||(o=new Map,Lu.set(t,o)),o.set(e,n)}function Ku(t){return[t]}function ju(t,e,n={}){const o=function(t,e){const n=Lu.get(t);return n&&n.has(e)?n.get(e):Ku}(t.constructor,e.constructor);try{return o(t=t.clone(),e,n)}catch(t){throw t}}function qu(t,e,n){t=t.slice(),e=e.slice();const o=new Wu(n.document,n.useRelations,n.forceWeakRemove);o.setOriginalOperations(t),o.setOriginalOperations(e);const i=o.originalOperations;if(0==t.length||0==e.length)return{operationsA:t,operationsB:e,originalOperations:i};const r=new WeakMap;for(const e of t)r.set(e,0);const s={nextBaseVersionA:t[t.length-1].baseVersion+1,nextBaseVersionB:e[e.length-1].baseVersion+1,originalOperationsACount:t.length,originalOperationsBCount:e.length};let a=0;for(;a{if(t.key===e.key&&t.range.start.hasSameParentAs(e.range.start)){const o=t.range.getDifference(e.range).map((e=>new rc(e,t.key,t.oldValue,t.newValue,0))),i=t.range.getIntersection(e.range);return i&&n.aIsStrong&&o.push(new rc(i,e.key,e.newValue,t.newValue,0)),0==o.length?[new Rc(0)]:o}return[t]})),Hu(rc,cc,((t,e)=>{if(t.range.start.hasSameParentAs(e.position)&&t.range.containsPosition(e.position)){const n=t.range._getTransformedByInsertion(e.position,e.howMany,!e.shouldReceiveAttributes).map((e=>new rc(e,t.key,t.oldValue,t.newValue,t.baseVersion)));if(e.shouldReceiveAttributes){const o=Uu(e,t.key,t.oldValue);o&&n.unshift(o)}return n}return t.range=t.range._getTransformedByInsertion(e.position,e.howMany,!1)[0],[t]})),Hu(rc,uc,((t,e)=>{const n=[];t.range.start.hasSameParentAs(e.deletionPosition)&&(t.range.containsPosition(e.deletionPosition)||t.range.start.isEqual(e.deletionPosition))&&n.push(Hs._createFromPositionAndShift(e.graveyardPosition,1));const o=t.range._getTransformedByMergeOperation(e);return o.isCollapsed||n.push(o),n.map((e=>new rc(e,t.key,t.oldValue,t.newValue,t.baseVersion)))})),Hu(rc,ac,((t,e)=>function(t,e){const n=Hs._createFromPositionAndShift(e.sourcePosition,e.howMany);let o=null,i=[];n.containsRange(t,!0)?o=t:t.start.hasSameParentAs(n.start)?(i=t.getDifference(n),o=t.getIntersection(n)):i=[t];const r=[];for(let t of i){t=t._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=e.getMovedRangeStart(),o=t.start.hasSameParentAs(n);t=t._getTransformedByInsertion(n,e.howMany,o),r.push(...t)}o&&r.push(o._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany,!1)[0]);return r}(t.range,e).map((e=>new rc(e,t.key,t.oldValue,t.newValue,t.baseVersion))))),Hu(rc,mc,((t,e)=>{if(t.range.end.isEqual(e.insertionPosition))return e.graveyardPosition||t.range.end.offset++,[t];if(t.range.start.hasSameParentAs(e.splitPosition)&&t.range.containsPosition(e.splitPosition)){const n=t.clone();return n.range=new Hs(e.moveTargetPosition.clone(),t.range.end._getCombined(e.splitPosition,e.moveTargetPosition)),t.range.end=e.splitPosition.clone(),t.range.end.stickiness=\"toPrevious\",[t,n]}return t.range=t.range._getTransformedBySplitOperation(e),[t]})),Hu(cc,rc,((t,e)=>{const n=[t];if(t.shouldReceiveAttributes&&t.position.hasSameParentAs(e.range.start)&&e.range.containsPosition(t.position)){const o=Uu(t,e.key,e.newValue);o&&n.push(o)}return n})),Hu(cc,cc,((t,e,n)=>(t.position.isEqual(e.position)&&n.aIsStrong||(t.position=t.position._getTransformedByInsertOperation(e)),[t]))),Hu(cc,ac,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),Hu(cc,mc,((t,e)=>(t.position=t.position._getTransformedBySplitOperation(e),[t]))),Hu(cc,uc,((t,e)=>(t.position=t.position._getTransformedByMergeOperation(e),[t]))),Hu(lc,cc,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByInsertOperation(e)[0]),t.newRange&&(t.newRange=t.newRange._getTransformedByInsertOperation(e)[0]),[t]))),Hu(lc,lc,((t,e,n)=>{if(t.name==e.name){if(!n.aIsStrong)return[new Rc(0)];t.oldRange=e.newRange?e.newRange.clone():null}return[t]})),Hu(lc,uc,((t,e)=>(t.oldRange&&(t.oldRange=t.oldRange._getTransformedByMergeOperation(e)),t.newRange&&(t.newRange=t.newRange._getTransformedByMergeOperation(e)),[t]))),Hu(lc,ac,((t,e,n)=>{if(t.oldRange&&(t.oldRange=Hs._createFromRanges(t.oldRange._getTransformedByMoveOperation(e))),t.newRange){if(n.abRelation){const o=Hs._createFromRanges(t.newRange._getTransformedByMoveOperation(e));if(\"left\"==n.abRelation.side&&e.targetPosition.isEqual(t.newRange.start))return t.newRange.start.path=n.abRelation.path,t.newRange.end=o.end,[t];if(\"right\"==n.abRelation.side&&e.targetPosition.isEqual(t.newRange.end))return t.newRange.start=o.start,t.newRange.end.path=n.abRelation.path,[t]}t.newRange=Hs._createFromRanges(t.newRange._getTransformedByMoveOperation(e))}return[t]})),Hu(lc,mc,((t,e,n)=>{if(t.oldRange&&(t.oldRange=t.oldRange._getTransformedBySplitOperation(e)),t.newRange){if(n.abRelation){const o=t.newRange._getTransformedBySplitOperation(e);return t.newRange.start.isEqual(e.splitPosition)&&n.abRelation.wasStartBeforeMergedElement?t.newRange.start=Ms._createAt(e.insertionPosition):t.newRange.start.isEqual(e.splitPosition)&&!n.abRelation.wasInLeftElement&&(t.newRange.start=Ms._createAt(e.moveTargetPosition)),t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasInRightElement?t.newRange.end=Ms._createAt(e.moveTargetPosition):t.newRange.end.isEqual(e.splitPosition)&&n.abRelation.wasEndBeforeMergedElement?t.newRange.end=Ms._createAt(e.insertionPosition):t.newRange.end=o.end,[t]}t.newRange=t.newRange._getTransformedBySplitOperation(e)}return[t]})),Hu(uc,cc,((t,e)=>(t.sourcePosition.hasSameParentAs(e.position)&&(t.howMany+=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByInsertOperation(e),t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e),[t]))),Hu(uc,uc,((t,e,n)=>{if(t.sourcePosition.isEqual(e.sourcePosition)&&t.targetPosition.isEqual(e.targetPosition)){if(n.bWasUndone){const n=e.graveyardPosition.path.slice();return n.push(0),t.sourcePosition=new Ms(e.graveyardPosition.root,n),t.howMany=0,[t]}return[new Rc(0)]}if(t.sourcePosition.isEqual(e.sourcePosition)&&!t.targetPosition.isEqual(e.targetPosition)&&!n.bWasUndone&&\"splitAtSource\"!=n.abRelation){const o=\"$graveyard\"==t.targetPosition.root.rootName,i=\"$graveyard\"==e.targetPosition.root.rootName,r=o&&!i;if(i&&!o||!r&&n.aIsStrong){const n=e.targetPosition._getTransformedByMergeOperation(e),o=t.targetPosition._getTransformedByMergeOperation(e);return[new ac(n,t.howMany,o,0)]}return[new Rc(0)]}return t.sourcePosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByMergeOperation(e),t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),t.graveyardPosition.isEqual(e.graveyardPosition)&&n.aIsStrong||(t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)),[t]})),Hu(uc,ac,((t,e,n)=>{const o=Hs._createFromPositionAndShift(e.sourcePosition,e.howMany);return\"remove\"==e.type&&!n.bWasUndone&&!n.forceWeakRemove&&t.deletionPosition.hasSameParentAs(e.sourcePosition)&&o.containsPosition(t.sourcePosition)?[new Rc(0)]:(t.sourcePosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.sourcePosition.hasSameParentAs(e.sourcePosition)&&(t.howMany-=e.howMany),t.sourcePosition=t.sourcePosition._getTransformedByMoveOperation(e),t.targetPosition=t.targetPosition._getTransformedByMoveOperation(e),t.graveyardPosition.isEqual(e.targetPosition)||(t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)),[t])})),Hu(uc,mc,((t,e,n)=>{if(e.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedByDeletion(e.graveyardPosition,1),t.deletionPosition.isEqual(e.graveyardPosition)&&(t.howMany=e.howMany)),t.targetPosition.isEqual(e.splitPosition)){const o=0!=e.howMany,i=e.graveyardPosition&&t.deletionPosition.isEqual(e.graveyardPosition);if(o||i||\"mergeTargetNotMoved\"==n.abRelation)return t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e),[t]}if(t.sourcePosition.isEqual(e.splitPosition)){if(\"mergeSourceNotMoved\"==n.abRelation)return t.howMany=0,t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t];if(\"mergeSameElement\"==n.abRelation||t.sourcePosition.offset>0)return t.sourcePosition=e.moveTargetPosition.clone(),t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t]}return t.sourcePosition.hasSameParentAs(e.splitPosition)&&(t.howMany=e.splitPosition.offset),t.sourcePosition=t.sourcePosition._getTransformedBySplitOperation(e),t.targetPosition=t.targetPosition._getTransformedBySplitOperation(e),[t]})),Hu(ac,cc,((t,e)=>{const n=Hs._createFromPositionAndShift(t.sourcePosition,t.howMany)._getTransformedByInsertOperation(e,!1)[0];return t.sourcePosition=n.start,t.howMany=n.end.offset-n.start.offset,t.targetPosition.isEqual(e.position)||(t.targetPosition=t.targetPosition._getTransformedByInsertOperation(e)),[t]})),Hu(ac,ac,((t,e,n)=>{const o=Hs._createFromPositionAndShift(t.sourcePosition,t.howMany),i=Hs._createFromPositionAndShift(e.sourcePosition,e.howMany);let r,s=n.aIsStrong,a=!n.aIsStrong;if(\"insertBefore\"==n.abRelation||\"insertAfter\"==n.baRelation?a=!0:\"insertAfter\"!=n.abRelation&&\"insertBefore\"!=n.baRelation||(a=!1),r=t.targetPosition.isEqual(e.targetPosition)&&a?t.targetPosition._getTransformedByDeletion(e.sourcePosition,e.howMany):t.targetPosition._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),Ju(t,e)&&Ju(e,t))return[e.getReversed()];if(o.containsPosition(e.targetPosition)&&o.containsRange(i,!0))return o.start=o.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),o.end=o.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),Yu([o],r);if(i.containsPosition(t.targetPosition)&&i.containsRange(o,!0))return o.start=o.start._getCombined(e.sourcePosition,e.getMovedRangeStart()),o.end=o.end._getCombined(e.sourcePosition,e.getMovedRangeStart()),Yu([o],r);const c=Ln(t.sourcePosition.getParentPath(),e.sourcePosition.getParentPath());if(\"prefix\"==c||\"extension\"==c)return o.start=o.start._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),o.end=o.end._getTransformedByMove(e.sourcePosition,e.targetPosition,e.howMany),Yu([o],r);\"remove\"!=t.type||\"remove\"==e.type||n.aWasUndone||n.forceWeakRemove?\"remove\"==t.type||\"remove\"!=e.type||n.bWasUndone||n.forceWeakRemove||(s=!1):s=!0;const l=[],d=o.getDifference(i);for(const t of d){t.start=t.start._getTransformedByDeletion(e.sourcePosition,e.howMany),t.end=t.end._getTransformedByDeletion(e.sourcePosition,e.howMany);const n=\"same\"==Ln(t.start.getParentPath(),e.getMovedRangeStart().getParentPath()),o=t._getTransformedByInsertion(e.getMovedRangeStart(),e.howMany,n);l.push(...o)}const h=o.getIntersection(i);return null!==h&&s&&(h.start=h.start._getCombined(e.sourcePosition,e.getMovedRangeStart()),h.end=h.end._getCombined(e.sourcePosition,e.getMovedRangeStart()),0===l.length?l.push(h):1==l.length?i.start.isBefore(o.start)||i.start.isEqual(o.start)?l.unshift(h):l.push(h):l.splice(1,0,h)),0===l.length?[new Rc(t.baseVersion)]:Yu(l,r)})),Hu(ac,mc,((t,e,n)=>{let o=t.targetPosition.clone();t.targetPosition.isEqual(e.insertionPosition)&&e.graveyardPosition&&\"moveTargetAfter\"!=n.abRelation||(o=t.targetPosition._getTransformedBySplitOperation(e));const i=Hs._createFromPositionAndShift(t.sourcePosition,t.howMany);if(i.end.isEqual(e.insertionPosition))return e.graveyardPosition||t.howMany++,t.targetPosition=o,[t];if(i.start.hasSameParentAs(e.splitPosition)&&i.containsPosition(e.splitPosition)){let t=new Hs(e.splitPosition,i.end);t=t._getTransformedBySplitOperation(e);return Yu([new Hs(i.start,e.splitPosition),t],o)}t.targetPosition.isEqual(e.splitPosition)&&\"insertAtSource\"==n.abRelation&&(o=e.moveTargetPosition),t.targetPosition.isEqual(e.insertionPosition)&&\"insertBetween\"==n.abRelation&&(o=t.targetPosition);const r=[i._getTransformedBySplitOperation(e)];if(e.graveyardPosition){const o=i.start.isEqual(e.graveyardPosition)||i.containsPosition(e.graveyardPosition);t.howMany>1&&o&&!n.aWasUndone&&r.push(Hs._createFromPositionAndShift(e.insertionPosition,1))}return Yu(r,o)})),Hu(ac,uc,((t,e,n)=>{const o=Hs._createFromPositionAndShift(t.sourcePosition,t.howMany);if(e.deletionPosition.hasSameParentAs(t.sourcePosition)&&o.containsPosition(e.sourcePosition))if(\"remove\"!=t.type||n.forceWeakRemove){if(1==t.howMany)return n.bWasUndone?(t.sourcePosition=e.graveyardPosition.clone(),t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),[t]):[new Rc(0)]}else if(!n.aWasUndone){const n=[];let o=e.graveyardPosition.clone(),i=e.targetPosition._getTransformedByMergeOperation(e);t.howMany>1&&(n.push(new ac(t.sourcePosition,t.howMany-1,t.targetPosition,0)),o=o._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany-1),i=i._getTransformedByMove(t.sourcePosition,t.targetPosition,t.howMany-1));const r=e.deletionPosition._getCombined(t.sourcePosition,t.targetPosition),s=new ac(o,1,r,0),a=s.getMovedRangeStart().path.slice();a.push(0);const c=new Ms(s.targetPosition.root,a);i=i._getTransformedByMove(o,r,1);const l=new ac(i,e.howMany,c,0);return n.push(s),n.push(l),n}const i=Hs._createFromPositionAndShift(t.sourcePosition,t.howMany)._getTransformedByMergeOperation(e);return t.sourcePosition=i.start,t.howMany=i.end.offset-i.start.offset,t.targetPosition=t.targetPosition._getTransformedByMergeOperation(e),[t]})),Hu(dc,cc,((t,e)=>(t.position=t.position._getTransformedByInsertOperation(e),[t]))),Hu(dc,uc,((t,e)=>t.position.isEqual(e.deletionPosition)?(t.position=e.graveyardPosition.clone(),t.position.stickiness=\"toNext\",[t]):(t.position=t.position._getTransformedByMergeOperation(e),[t]))),Hu(dc,ac,((t,e)=>(t.position=t.position._getTransformedByMoveOperation(e),[t]))),Hu(dc,dc,((t,e,n)=>{if(t.position.isEqual(e.position)){if(!n.aIsStrong)return[new Rc(0)];t.oldName=e.newName}return[t]})),Hu(dc,mc,((t,e)=>{if(\"same\"==Ln(t.position.path,e.splitPosition.getParentPath())&&!e.graveyardPosition){const e=new dc(t.position.getShiftedBy(1),t.oldName,t.newName,0);return[t,e]}return t.position=t.position._getTransformedBySplitOperation(e),[t]})),Hu(hc,hc,((t,e,n)=>{if(t.root===e.root&&t.key===e.key){if(!n.aIsStrong||t.newValue===e.newValue)return[new Rc(0)];t.oldValue=e.newValue}return[t]})),Hu(mc,cc,((t,e)=>(t.splitPosition.hasSameParentAs(e.position)&&t.splitPosition.offset{if(!t.graveyardPosition&&!n.bWasUndone&&t.splitPosition.hasSameParentAs(e.sourcePosition)){const n=e.graveyardPosition.path.slice();n.push(0);const o=new Ms(e.graveyardPosition.root,n),i=mc.getInsertionPosition(new Ms(e.graveyardPosition.root,n)),r=new mc(o,0,null,0);return r.insertionPosition=i,t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e),t.insertionPosition=mc.getInsertionPosition(t.splitPosition),t.graveyardPosition=r.insertionPosition.clone(),t.graveyardPosition.stickiness=\"toNext\",[r,t]}return t.splitPosition.hasSameParentAs(e.deletionPosition)&&!t.splitPosition.isAfter(e.deletionPosition)&&t.howMany--,t.splitPosition.hasSameParentAs(e.targetPosition)&&(t.howMany+=e.howMany),t.splitPosition=t.splitPosition._getTransformedByMergeOperation(e),t.insertionPosition=mc.getInsertionPosition(t.splitPosition),t.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedByMergeOperation(e)),[t]})),Hu(mc,ac,((t,e,n)=>{const o=Hs._createFromPositionAndShift(e.sourcePosition,e.howMany);if(t.graveyardPosition){const i=o.start.isEqual(t.graveyardPosition)||o.containsPosition(t.graveyardPosition);if(!n.bWasUndone&&i){const n=t.splitPosition._getTransformedByMoveOperation(e),o=t.graveyardPosition._getTransformedByMoveOperation(e),i=o.path.slice();i.push(0);const r=new Ms(o.root,i);return[new ac(n,t.howMany,r,0)]}t.graveyardPosition=t.graveyardPosition._getTransformedByMoveOperation(e)}if(t.splitPosition.hasSameParentAs(e.sourcePosition)&&o.containsPosition(t.splitPosition)){const n=e.howMany-(t.splitPosition.offset-e.sourcePosition.offset);return t.howMany-=n,t.splitPosition.hasSameParentAs(e.targetPosition)&&t.splitPosition.offset{if(t.splitPosition.isEqual(e.splitPosition)){if(!t.graveyardPosition&&!e.graveyardPosition)return[new Rc(0)];if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition))return[new Rc(0)];if(\"splitBefore\"==n.abRelation)return t.howMany=0,t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e),[t]}if(t.graveyardPosition&&e.graveyardPosition&&t.graveyardPosition.isEqual(e.graveyardPosition)){const o=\"$graveyard\"==t.splitPosition.root.rootName,i=\"$graveyard\"==e.splitPosition.root.rootName,r=o&&!i;if(i&&!o||!r&&n.aIsStrong){const n=[];return e.howMany&&n.push(new ac(e.moveTargetPosition,e.howMany,e.splitPosition,0)),t.howMany&&n.push(new ac(t.splitPosition,t.howMany,t.moveTargetPosition,0)),n}return[new Rc(0)]}if(t.graveyardPosition&&(t.graveyardPosition=t.graveyardPosition._getTransformedBySplitOperation(e)),t.splitPosition.isEqual(e.insertionPosition)&&\"splitBefore\"==n.abRelation)return t.howMany++,[t];if(e.splitPosition.isEqual(t.insertionPosition)&&\"splitBefore\"==n.baRelation){const n=e.insertionPosition.path.slice();n.push(0);const o=new Ms(e.insertionPosition.root,n);return[t,new ac(t.insertionPosition,1,o,0)]}return t.splitPosition.hasSameParentAs(e.splitPosition)&&t.splitPosition.offsetthis.clearStack()))}refresh(){this.isEnabled=this._stack.length>0}addBatch(t){const e=this.editor.model.document.selection,n={ranges:e.hasOwnRange?Array.from(e.getRanges()):[],isBackward:e.isBackward};this._stack.push({batch:t,selection:n}),this.refresh()}clearStack(){this._stack=[],this.refresh()}_restoreSelection(t,e,n){const o=this.editor.model,i=o.document,r=[],s=t.map((t=>t.getTransformedByOperations(n))),a=s.flat();for(const t of s){const e=t.filter((t=>!Zu(t,a)));Xu(e);const n=e.find((t=>t.root!=i.graveyard));n&&r.push(n)}r.length&&o.change((t=>{t.setSelection(r,{backward:e})}))}_undo(t,e){const n=this.editor.model,o=n.document;this._createdBatches.add(e);const i=t.operations.slice().filter((t=>t.isDocumentOperation));i.reverse();for(const t of i){const i=t.baseVersion+1,r=Array.from(o.history.getOperations(i)),s=qu([t.getReversed()],r,{useRelations:!0,document:this.editor.model.document,padWithNoOps:!1,forceWeakRemove:!0}).operationsA;for(const i of s)e.addOperation(i),n.applyOperation(i),o.history.setOperationAsUndone(t,i)}}}function Xu(t){t.sort(((t,e)=>t.start.isBefore(e.start)?-1:1));for(let e=1;ee!==t&&e.containsRange(t,!0)))}class tm extends Qu{execute(t=null){const e=t?this._stack.findIndex((e=>e.batch==t)):this._stack.length-1,n=this._stack.splice(e,1)[0],o=this.editor.model.createBatch(\"transparent\");this.editor.model.enqueueChange(o,(()=>{this._undo(n.batch,o);const t=this.editor.model.document.history.getOperations(n.batch.baseVersion);this._restoreSelection(n.selection.ranges,n.selection.isBackward,t),this.fire(\"revert\",n.batch,o)})),this.refresh()}}class em extends Qu{execute(){const t=this._stack.pop(),e=this.editor.model.createBatch(\"transparent\");this.editor.model.enqueueChange(e,(()=>{const n=t.batch.operations[t.batch.operations.length-1].baseVersion+1,o=this.editor.model.document.history.getOperations(n);this._restoreSelection(t.selection.ranges,t.selection.isBackward,o),this._undo(t.batch,e)})),this.refresh()}}class nm extends rh{static get pluginName(){return\"UndoEditing\"}constructor(t){super(t),this._batchRegistry=new WeakSet}init(){const t=this.editor;this._undoCommand=new tm(t),this._redoCommand=new em(t),t.commands.add(\"undo\",this._undoCommand),t.commands.add(\"redo\",this._redoCommand),this.listenTo(t.model,\"applyOperation\",((t,e)=>{const n=e[0];if(!n.isDocumentOperation)return;const o=n.batch,i=this._redoCommand._createdBatches.has(o),r=this._undoCommand._createdBatches.has(o);this._batchRegistry.has(o)||\"transparent\"==o.type&&!i&&!r||(i?this._undoCommand.addBatch(o):r||(this._undoCommand.addBatch(o),this._redoCommand.clearStack()),this._batchRegistry.add(o))}),{priority:\"highest\"}),this.listenTo(this._undoCommand,\"revert\",((t,e,n)=>{this._redoCommand.addBatch(n)})),t.keystrokes.set(\"CTRL+Z\",\"undo\"),t.keystrokes.set(\"CTRL+Y\",\"redo\"),t.keystrokes.set(\"CTRL+SHIFT+Z\",\"redo\")}}var om='',im='';class rm extends rh{init(){const t=this.editor,e=t.locale,n=t.t,o=\"ltr\"==e.uiLanguageDirection?om:im,i=\"ltr\"==e.uiLanguageDirection?im:om;this._addButton(\"undo\",n(\"Undo\"),\"CTRL+Z\",o),this._addButton(\"redo\",n(\"Redo\"),\"CTRL+Y\",i)}_addButton(t,e,n,o){const i=this.editor;i.ui.componentFactory.add(t,(r=>{const s=i.commands.get(t),a=new Bd(r);return a.set({label:e,icon:o,keystroke:n,tooltip:!0}),a.bind(\"isEnabled\").to(s,\"isEnabled\"),this.listenTo(a,\"execute\",(()=>{i.execute(t),i.editing.view.focus()})),a}))}}class sm extends rh{static get requires(){return[nm,rm]}static get pluginName(){return\"Undo\"}}class am extends ah{constructor(t,e){super(t),this.attributeKey=e}refresh(){const t=this.editor.model,e=t.document;this.value=e.selection.getAttribute(this.attributeKey),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,this.attributeKey)}execute(t={}){const e=this.editor.model,n=e.document.selection,o=t.value;e.change((t=>{if(n.isCollapsed)o?t.setSelectionAttribute(this.attributeKey,o):t.removeSelectionAttribute(this.attributeKey);else{const i=e.schema.getValidRanges(n.getRanges(),this.attributeKey);for(const e of i)o?t.setAttribute(this.attributeKey,o,e):t.removeAttribute(this.attributeKey,e)}}))}}class cm extends Bd{constructor(t){super(t);const e=this.bindTemplate;this.set(\"color\"),this.set(\"hasBorder\"),this.icon='',this.extendTemplate({attributes:{style:{backgroundColor:e.to(\"color\")},class:[\"ck\",\"ck-color-grid__tile\",e.if(\"hasBorder\",\"ck-color-table__color-tile_bordered\")]}})}render(){super.render(),this.iconView.fillColor=\"hsl(0, 0%, 100%)\"}}var lm=n(27),dm={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(lm.a,dm),lm.a.locals;class hm extends Gl{constructor(t,e){super(t);const n=e&&e.colorDefinitions||[],o={};e&&e.columns&&(o.gridTemplateColumns=`repeat( ${e.columns}, 1fr)`),this.set(\"selectedColor\"),this.items=this.createCollection(),this.focusTracker=new hl,this.keystrokes=new nl,this._focusCycler=new ld({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:\"arrowleft\",focusNext:\"arrowright\"}}),this.items.on(\"add\",((t,e)=>{e.isOn=e.color===this.selectedColor})),n.forEach((t=>{const e=new cm;e.set({color:t.color,label:t.label,tooltip:!0,hasBorder:t.options.hasBorder}),e.on(\"execute\",(()=>{this.fire(\"execute\",{value:t.color,hasBorder:t.options.hasBorder,label:t.label})})),this.items.add(e)})),this.setTemplate({tag:\"div\",children:this.items,attributes:{class:[\"ck\",\"ck-color-grid\"],style:o}}),this.on(\"change:selectedColor\",((t,e,n)=>{for(const t of this.items)t.isOn=t.color===n}))}focus(){this.items.length&&this.items.first.focus()}focusLast(){this.items.length&&this.items.last.focus()}render(){super.render();for(const t of this.items)this.focusTracker.add(t.element);this.items.on(\"add\",((t,e)=>{this.focusTracker.add(e.element)})),this.items.on(\"remove\",((t,e)=>{this.focusTracker.remove(e.element)})),this.keystrokes.listenTo(this.element)}}class um extends Rn{constructor(t){super(t),this.set(\"isEmpty\",!0),this.on(\"change\",(()=>{this.set(\"isEmpty\",0===this.length)}))}add(t,e){this.find((e=>e.color===t.color))||super.add(t,e)}hasColor(t){return!!this.find((e=>e.color===t))}}In(um,Xo);var mm='',gm=n(28),pm={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(gm.a,pm),gm.a.locals;class fm extends Gl{constructor(t,{colors:e,columns:n,removeButtonLabel:o,documentColorsLabel:i,documentColorsCount:r}){super(t),this.items=this.createCollection(),this.colorDefinitions=e,this.focusTracker=new hl,this.keystrokes=new nl,this.set(\"selectedColor\"),this.removeButtonLabel=o,this.columns=n,this.documentColors=new um,this.documentColorsCount=r,this._focusCycler=new ld({focusables:this.items,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:\"arrowup\",focusNext:\"arrowdown\"}}),this._documentColorsLabel=i,this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-color-table\"]},children:this.items}),this.items.add(this._removeColorButton())}updateDocumentColors(t,e){const n=t.document,o=this.documentColorsCount;this.documentColors.clear();for(const i of n.getRootNames()){const r=n.getRoot(i),s=t.createRangeIn(r);for(const t of s.getItems())if(t.is(\"$textProxy\")&&t.hasAttribute(e)&&(this._addColorToDocumentColors(t.getAttribute(e)),this.documentColors.length>=o))return}}updateSelectedColors(){const t=this.documentColorsGrid,e=this.staticColorsGrid,n=this.selectedColor;e.selectedColor=n,t&&(t.selectedColor=n)}render(){super.render();for(const t of this.items)this.focusTracker.add(t.element);this.keystrokes.listenTo(this.element)}appendGrids(){if(!this.staticColorsGrid&&(this.staticColorsGrid=this._createStaticColorsGrid(),this.items.add(this.staticColorsGrid),this.documentColorsCount)){const t=yl.bind(this.documentColors,this.documentColors),e=new td(this.locale);e.text=this._documentColorsLabel,e.extendTemplate({attributes:{class:[\"ck\",\"ck-color-grid__label\",t.if(\"isEmpty\",\"ck-hidden\")]}}),this.items.add(e),this.documentColorsGrid=this._createDocumentColorsGrid(),this.items.add(this.documentColorsGrid)}}focus(){this._focusCycler.focusFirst()}focusLast(){this._focusCycler.focusLast()}_removeColorButton(){const t=new Bd;return t.set({withText:!0,icon:mm,tooltip:!0,label:this.removeButtonLabel}),t.class=\"ck-color-table__remove-color\",t.on(\"execute\",(()=>{this.fire(\"execute\",{value:null})})),t}_createStaticColorsGrid(){const t=new hm(this.locale,{colorDefinitions:this.colorDefinitions,columns:this.columns});return t.delegate(\"execute\").to(this),t}_createDocumentColorsGrid(){const t=yl.bind(this.documentColors,this.documentColors),e=new hm(this.locale,{columns:this.columns});return e.delegate(\"execute\").to(this),e.extendTemplate({attributes:{class:t.if(\"isEmpty\",\"ck-hidden\")}}),e.items.bindTo(this.documentColors).using((t=>{const e=new cm;return e.set({color:t.color,hasBorder:t.options&&t.options.hasBorder}),t.label&&e.set({label:t.label,tooltip:!0}),e.on(\"execute\",(()=>{this.fire(\"execute\",{value:t.color})})),e})),this.documentColors.on(\"change:isEmpty\",((t,n,o)=>{o&&(e.selectedColor=null)})),e}_addColorToDocumentColors(t){const e=this.colorDefinitions.find((e=>e.color===t));e?this.documentColors.add(Object.assign({},e)):this.documentColors.add({color:t,label:t,options:{hasBorder:!1}})}}const bm=\"fontColor\",km=\"fontBackgroundColor\";function wm(t){return e=>e.getStyle(t).replace(/\\s/g,\"\")}function _m(t){return(e,{writer:n})=>n.createAttributeElement(\"span\",{style:`${t}:${e}`},{priority:7})}class Cm extends am{constructor(t){super(t,km)}}const Am=/^#([0-9a-f]{3,4}|[0-9a-f]{6}|[0-9a-f]{8})$/i,vm=/^rgb\\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}[0-9]{1,3}[ %]?\\)$/i,ym=/^rgba\\([ ]?([0-9]{1,3}[ %]?,[ ]?){3}(1|[0-9]+%|[0]?\\.?[0-9]+)\\)$/i,xm=/^hsl\\([ ]?([0-9]{1,3}[ %]?[,]?[ ]*){3}(1|[0-9]+%|[0]?\\.?[0-9]+)?\\)$/i,Em=/^hsla\\([ ]?([0-9]{1,3}[ %]?,[ ]?){2,3}(1|[0-9]+%|[0]?\\.?[0-9]+)\\)$/i,Sm=new Set([\"black\",\"silver\",\"gray\",\"white\",\"maroon\",\"red\",\"purple\",\"fuchsia\",\"green\",\"lime\",\"olive\",\"yellow\",\"navy\",\"blue\",\"teal\",\"aqua\",\"orange\",\"aliceblue\",\"antiquewhite\",\"aquamarine\",\"azure\",\"beige\",\"bisque\",\"blanchedalmond\",\"blueviolet\",\"brown\",\"burlywood\",\"cadetblue\",\"chartreuse\",\"chocolate\",\"coral\",\"cornflowerblue\",\"cornsilk\",\"crimson\",\"cyan\",\"darkblue\",\"darkcyan\",\"darkgoldenrod\",\"darkgray\",\"darkgreen\",\"darkgrey\",\"darkkhaki\",\"darkmagenta\",\"darkolivegreen\",\"darkorange\",\"darkorchid\",\"darkred\",\"darksalmon\",\"darkseagreen\",\"darkslateblue\",\"darkslategray\",\"darkslategrey\",\"darkturquoise\",\"darkviolet\",\"deeppink\",\"deepskyblue\",\"dimgray\",\"dimgrey\",\"dodgerblue\",\"firebrick\",\"floralwhite\",\"forestgreen\",\"gainsboro\",\"ghostwhite\",\"gold\",\"goldenrod\",\"greenyellow\",\"grey\",\"honeydew\",\"hotpink\",\"indianred\",\"indigo\",\"ivory\",\"khaki\",\"lavender\",\"lavenderblush\",\"lawngreen\",\"lemonchiffon\",\"lightblue\",\"lightcoral\",\"lightcyan\",\"lightgoldenrodyellow\",\"lightgray\",\"lightgreen\",\"lightgrey\",\"lightpink\",\"lightsalmon\",\"lightseagreen\",\"lightskyblue\",\"lightslategray\",\"lightslategrey\",\"lightsteelblue\",\"lightyellow\",\"limegreen\",\"linen\",\"magenta\",\"mediumaquamarine\",\"mediumblue\",\"mediumorchid\",\"mediumpurple\",\"mediumseagreen\",\"mediumslateblue\",\"mediumspringgreen\",\"mediumturquoise\",\"mediumvioletred\",\"midnightblue\",\"mintcream\",\"mistyrose\",\"moccasin\",\"navajowhite\",\"oldlace\",\"olivedrab\",\"orangered\",\"orchid\",\"palegoldenrod\",\"palegreen\",\"paleturquoise\",\"palevioletred\",\"papayawhip\",\"peachpuff\",\"peru\",\"pink\",\"plum\",\"powderblue\",\"rosybrown\",\"royalblue\",\"saddlebrown\",\"salmon\",\"sandybrown\",\"seagreen\",\"seashell\",\"sienna\",\"skyblue\",\"slateblue\",\"slategray\",\"slategrey\",\"snow\",\"springgreen\",\"steelblue\",\"tan\",\"thistle\",\"tomato\",\"turquoise\",\"violet\",\"wheat\",\"whitesmoke\",\"yellowgreen\",\"rebeccapurple\",\"currentcolor\",\"transparent\"]);function Dm(t){return t.startsWith(\"#\")?Am.test(t):t.startsWith(\"rgb\")?vm.test(t)||ym.test(t):t.startsWith(\"hsl\")?xm.test(t)||Em.test(t):Sm.has(t.toLowerCase())}const Tm=[\"none\",\"hidden\",\"dotted\",\"dashed\",\"solid\",\"double\",\"groove\",\"ridge\",\"inset\",\"outset\"];function Bm(t){return Tm.includes(t)}const Pm=/^([+-]?[0-9]*[.]?[0-9]+(px|cm|mm|in|pc|pt|ch|em|ex|rem|vh|vw|vmin|vmax)|0)$/;function Im(t){return Pm.test(t)}const Rm=/^[+-]?[0-9]*[.]?[0-9]+%$/;const Fm=[\"repeat-x\",\"repeat-y\",\"repeat\",\"space\",\"round\",\"no-repeat\"];const Om=[\"center\",\"top\",\"bottom\",\"left\",\"right\"];function Nm(t){return Om.includes(t)}const Mm=[\"fixed\",\"scroll\",\"local\"];function Vm(t){return Mm.includes(t)}const zm=/^url\\(/;function Lm(t){return zm.test(t)}function Hm(t=\"\"){if(\"\"===t)return{top:void 0,right:void 0,bottom:void 0,left:void 0};const e=qm(t),n=e[0],o=e[2]||n,i=e[1]||n;return{top:n,bottom:o,right:i,left:e[3]||i}}function Km(t){return e=>{const{top:n,right:o,bottom:i,left:r}=e,s=[];return[n,o,r,i].every((t=>!!t))?s.push([t,jm(e)]):(n&&s.push([t+\"-top\",n]),o&&s.push([t+\"-right\",o]),i&&s.push([t+\"-bottom\",i]),r&&s.push([t+\"-left\",r])),s}}function jm({top:t,right:e,bottom:n,left:o}){const i=[];return o!==e?i.push(t,e,n,o):n!==t?i.push(t,e,n):e!==t?i.push(t,e):i.push(t),i.join(\" \")}function qm(t){return t.replace(/, /g,\",\").split(\" \").map((t=>t.replace(/,/g,\", \")))}function Wm(t){t.setNormalizer(\"background\",Gm),t.setNormalizer(\"background-color\",(t=>({path:\"background.color\",value:t}))),t.setReducer(\"background\",(t=>{const e=[];return e.push([\"background-color\",t.color]),e}))}function Gm(t){const e={},n=qm(t);for(const t of n)o=t,Fm.includes(o)?(e.repeat=e.repeat||[],e.repeat.push(t)):Nm(t)?(e.position=e.position||[],e.position.push(t)):Vm(t)?e.attachment=t:Dm(t)?e.color=t:Lm(t)&&(e.image=t);var o;return{path:\"background\",value:e}}class $m extends rh{static get pluginName(){return\"FontBackgroundColorEditing\"}constructor(t){super(t),t.config.define(km,{colors:[{color:\"hsl(0, 0%, 0%)\",label:\"Black\"},{color:\"hsl(0, 0%, 30%)\",label:\"Dim grey\"},{color:\"hsl(0, 0%, 60%)\",label:\"Grey\"},{color:\"hsl(0, 0%, 90%)\",label:\"Light grey\"},{color:\"hsl(0, 0%, 100%)\",label:\"White\",hasBorder:!0},{color:\"hsl(0, 75%, 60%)\",label:\"Red\"},{color:\"hsl(30, 75%, 60%)\",label:\"Orange\"},{color:\"hsl(60, 75%, 60%)\",label:\"Yellow\"},{color:\"hsl(90, 75%, 60%)\",label:\"Light green\"},{color:\"hsl(120, 75%, 60%)\",label:\"Green\"},{color:\"hsl(150, 75%, 60%)\",label:\"Aquamarine\"},{color:\"hsl(180, 75%, 60%)\",label:\"Turquoise\"},{color:\"hsl(210, 75%, 60%)\",label:\"Light blue\"},{color:\"hsl(240, 75%, 60%)\",label:\"Blue\"},{color:\"hsl(270, 75%, 60%)\",label:\"Purple\"}],columns:5}),t.data.addStyleProcessorRules(Wm),t.conversion.for(\"upcast\").elementToAttribute({view:{name:\"span\",styles:{\"background-color\":/[\\s\\S]+/}},model:{key:km,value:wm(\"background-color\")}}),t.conversion.for(\"downcast\").attributeToElement({model:km,view:_m(\"background-color\")}),t.commands.add(km,new Cm(t)),t.model.schema.extend(\"$text\",{allowAttributes:km}),t.model.schema.setAttributeProperties(km,{isFormatting:!0,copyOnEnter:!0})}}function Um(t,e){const n=t.t,o={Black:n(\"Black\"),\"Dim grey\":n(\"Dim grey\"),Grey:n(\"Grey\"),\"Light grey\":n(\"Light grey\"),White:n(\"White\"),Red:n(\"Red\"),Orange:n(\"Orange\"),Yellow:n(\"Yellow\"),\"Light green\":n(\"Light green\"),Green:n(\"Green\"),Aquamarine:n(\"Aquamarine\"),Turquoise:n(\"Turquoise\"),\"Light blue\":n(\"Light blue\"),Blue:n(\"Blue\"),Purple:n(\"Purple\")};return e.map((t=>{const e=o[t.label];return e&&e!=t.label&&(t.label=e),t}))}function Jm(t){return t.map(Ym).filter((t=>!!t))}function Ym(t){return\"string\"==typeof t?{model:t,label:t,hasBorder:!1,view:{name:\"span\",styles:{color:t}}}:{model:t.color,label:t.label||t.color,hasBorder:void 0!==t.hasBorder&&t.hasBorder,view:{name:\"span\",styles:{color:`${t.color}`}}}}class Qm extends rh{constructor(t,{commandName:e,icon:n,componentName:o,dropdownLabel:i}){super(t),this.commandName=e,this.componentName=o,this.icon=n,this.dropdownLabel=i,this.columns=t.config.get(`${this.componentName}.columns`),this.colorTableView=void 0}init(){const t=this.editor,e=t.locale,n=e.t,o=t.commands.get(this.commandName),i=Um(e,Jm(t.config.get(this.componentName).colors)),r=t.config.get(`${this.componentName}.documentColors`);t.ui.componentFactory.add(this.componentName,(e=>{const s=Gd(e);return this.colorTableView=function({dropdownView:t,colors:e,columns:n,removeButtonLabel:o,documentColorsLabel:i,documentColorsCount:r}){const s=t.locale,a=new fm(s,{colors:e,columns:n,removeButtonLabel:o,documentColorsLabel:i,documentColorsCount:r});return t.colorTableView=a,t.panelView.children.add(a),a.delegate(\"execute\").to(t,\"execute\"),a}({dropdownView:s,colors:i.map((t=>({label:t.label,color:t.model,options:{hasBorder:t.hasBorder}}))),columns:this.columns,removeButtonLabel:n(\"Remove color\"),documentColorsLabel:0!==r?n(\"Document colors\"):void 0,documentColorsCount:void 0===r?this.columns:r}),this.colorTableView.bind(\"selectedColor\").to(o,\"value\"),s.buttonView.set({label:this.dropdownLabel,icon:this.icon,tooltip:!0}),s.extendTemplate({attributes:{class:\"ck-color-ui-dropdown\"}}),s.bind(\"isEnabled\").to(o),s.on(\"execute\",((e,n)=>{t.execute(this.commandName,n),t.editing.view.focus()})),s.on(\"change:isOpen\",((e,n,o)=>{s.colorTableView.appendGrids(),o&&(0!==r&&this.colorTableView.updateDocumentColors(t.model,this.componentName),this.colorTableView.updateSelectedColors())})),s}))}}class Xm extends Qm{constructor(t){const e=t.locale.t;super(t,{commandName:km,componentName:km,icon:'',dropdownLabel:e(\"Font Background Color\")})}static get pluginName(){return\"FontBackgroundColorUI\"}}class Zm extends am{constructor(t){super(t,bm)}}class tg extends rh{static get pluginName(){return\"FontColorEditing\"}constructor(t){super(t),t.config.define(bm,{colors:[{color:\"hsl(0, 0%, 0%)\",label:\"Black\"},{color:\"hsl(0, 0%, 30%)\",label:\"Dim grey\"},{color:\"hsl(0, 0%, 60%)\",label:\"Grey\"},{color:\"hsl(0, 0%, 90%)\",label:\"Light grey\"},{color:\"hsl(0, 0%, 100%)\",label:\"White\",hasBorder:!0},{color:\"hsl(0, 75%, 60%)\",label:\"Red\"},{color:\"hsl(30, 75%, 60%)\",label:\"Orange\"},{color:\"hsl(60, 75%, 60%)\",label:\"Yellow\"},{color:\"hsl(90, 75%, 60%)\",label:\"Light green\"},{color:\"hsl(120, 75%, 60%)\",label:\"Green\"},{color:\"hsl(150, 75%, 60%)\",label:\"Aquamarine\"},{color:\"hsl(180, 75%, 60%)\",label:\"Turquoise\"},{color:\"hsl(210, 75%, 60%)\",label:\"Light blue\"},{color:\"hsl(240, 75%, 60%)\",label:\"Blue\"},{color:\"hsl(270, 75%, 60%)\",label:\"Purple\"}],columns:5}),t.conversion.for(\"upcast\").elementToAttribute({view:{name:\"span\",styles:{color:/[\\s\\S]+/}},model:{key:bm,value:wm(\"color\")}}),t.conversion.for(\"downcast\").attributeToElement({model:bm,view:_m(\"color\")}),t.commands.add(bm,new Zm(t)),t.model.schema.extend(\"$text\",{allowAttributes:bm}),t.model.schema.setAttributeProperties(bm,{isFormatting:!0,copyOnEnter:!0})}}class eg extends Qm{constructor(t){const e=t.locale.t;super(t,{commandName:bm,componentName:bm,icon:'',dropdownLabel:e(\"Font Color\")})}static get pluginName(){return\"FontColorUI\"}}class ng extends ah{refresh(){const t=this.editor.model,e=lh(t.document.selection.getSelectedBlocks());this.value=!!e&&e.is(\"element\",\"paragraph\"),this.isEnabled=!!e&&og(e,t.schema)}execute(t={}){const e=this.editor.model,n=e.document;e.change((o=>{const i=(t.selection||n.selection).getSelectedBlocks();for(const t of i)!t.is(\"element\",\"paragraph\")&&og(t,e.schema)&&o.rename(t,\"paragraph\")}))}}function og(t,e){return e.checkChild(t.parent,\"paragraph\")&&!e.isObject(t)}class ig extends ah{execute(t){const e=this.editor.model;let n=t.position;e.change((t=>{const o=t.createElement(\"paragraph\");if(!e.schema.checkChild(n.parent,o)){const i=e.schema.findAllowedParent(n,o);if(!i)return;n=t.split(n,i).position}e.insertContent(o,n),t.setSelection(o,\"in\")}))}}class rg extends rh{static get pluginName(){return\"Paragraph\"}init(){const t=this.editor,e=t.model;t.commands.add(\"paragraph\",new ng(t)),t.commands.add(\"insertParagraph\",new ig(t)),e.schema.register(\"paragraph\",{inheritAllFrom:\"$block\"}),t.conversion.elementToElement({model:\"paragraph\",view:\"p\"}),t.conversion.for(\"upcast\").elementToElement({model:(t,{writer:e})=>rg.paragraphLikeElements.has(t.name)?t.isEmpty?null:e.createElement(\"paragraph\"):null,view:/.+/,converterPriority:\"low\"})}}rg.paragraphLikeElements=new Set([\"blockquote\",\"dd\",\"div\",\"dt\",\"h1\",\"h2\",\"h3\",\"h4\",\"h5\",\"h6\",\"li\",\"p\",\"td\",\"th\"]);class sg extends ah{constructor(t,e){super(t),this.modelElements=e}refresh(){const t=lh(this.editor.model.document.selection.getSelectedBlocks());this.value=!!t&&this.modelElements.includes(t.name)&&t.name,this.isEnabled=!!t&&this.modelElements.some((e=>ag(t,e,this.editor.model.schema)))}execute(t){const e=this.editor.model,n=e.document,o=t.value;e.change((t=>{const i=Array.from(n.selection.getSelectedBlocks()).filter((t=>ag(t,o,e.schema)));for(const e of i)e.is(\"element\",o)||t.rename(e,o)}))}}function ag(t,e,n){return n.checkChild(t.parent,e)&&!n.isObject(t)}const cg=\"paragraph\";class lg extends rh{static get pluginName(){return\"HeadingEditing\"}constructor(t){super(t),t.config.define(\"heading\",{options:[{model:\"paragraph\",title:\"Paragraph\",class:\"ck-heading_paragraph\"},{model:\"heading1\",view:\"h2\",title:\"Heading 1\",class:\"ck-heading_heading1\"},{model:\"heading2\",view:\"h3\",title:\"Heading 2\",class:\"ck-heading_heading2\"},{model:\"heading3\",view:\"h4\",title:\"Heading 3\",class:\"ck-heading_heading3\"}]})}static get requires(){return[rg]}init(){const t=this.editor,e=t.config.get(\"heading.options\"),n=[];for(const o of e)o.model!==cg&&(t.model.schema.register(o.model,{inheritAllFrom:\"$block\"}),t.conversion.elementToElement(o),n.push(o.model));this._addDefaultH1Conversion(t),t.commands.add(\"heading\",new sg(t,n))}afterInit(){const t=this.editor,e=t.commands.get(\"enter\"),n=t.config.get(\"heading.options\");e&&this.listenTo(e,\"afterExecute\",((e,o)=>{const i=t.model.document.selection.getFirstPosition().parent;n.some((t=>i.is(\"element\",t.model)))&&!i.is(\"element\",cg)&&0===i.childCount&&o.writer.rename(i,cg)}))}_addDefaultH1Conversion(t){t.conversion.for(\"upcast\").elementToElement({model:\"heading1\",view:\"h1\",converterPriority:wn.get(\"low\")+1})}}class dg{constructor(t,e){e&&$o(this,e),t&&this.set(t)}}In(dg,Xo);var hg=n(29),ug={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(hg.a,ug),hg.a.locals;class mg extends rh{init(){const t=this.editor,e=t.t,n=function(t){const e=t.t,n={Paragraph:e(\"Paragraph\"),\"Heading 1\":e(\"Heading 1\"),\"Heading 2\":e(\"Heading 2\"),\"Heading 3\":e(\"Heading 3\"),\"Heading 4\":e(\"Heading 4\"),\"Heading 5\":e(\"Heading 5\"),\"Heading 6\":e(\"Heading 6\")};return t.config.get(\"heading.options\").map((t=>{const e=n[t.title];return e&&e!=t.title&&(t.title=e),t}))}(t),o=e(\"Choose heading\"),i=e(\"Heading\");t.ui.componentFactory.add(\"heading\",(e=>{const r={},s=new Rn,a=t.commands.get(\"heading\"),c=t.commands.get(\"paragraph\"),l=[a];for(const t of n){const e={type:\"button\",model:new dg({label:t.title,class:t.class,withText:!0})};\"paragraph\"===t.model?(e.model.bind(\"isOn\").to(c,\"value\"),e.model.set(\"commandName\",\"paragraph\"),l.push(c)):(e.model.bind(\"isOn\").to(a,\"value\",(e=>e===t.model)),e.model.set({commandName:\"heading\",commandValue:t.model})),s.add(e),r[t.model]=t.title}const d=Gd(e);return Ud(d,s),d.buttonView.set({isOn:!1,withText:!0,tooltip:i}),d.extendTemplate({attributes:{class:[\"ck-heading-dropdown\"]}}),d.bind(\"isEnabled\").toMany(l,\"isEnabled\",((...t)=>t.some((t=>t)))),d.buttonView.bind(\"label\").to(a,\"value\",c,\"value\",((t,e)=>{const n=t||e&&\"paragraph\";return r[n]?r[n]:o})),this.listenTo(d,\"execute\",(e=>{t.execute(e.source.commandName,e.source.commandValue?{value:e.source.commandValue}:void 0),t.editing.view.focus()})),d}))}}class gg extends ah{constructor(t){super(t),this._childCommands=[]}refresh(){}execute(...t){return this._getFirstEnabledCommand().execute(t)}registerChildCommand(t){this._childCommands.push(t),t.on(\"change:isEnabled\",(()=>this._checkEnabled())),this._checkEnabled()}_checkEnabled(){this.isEnabled=!!this._getFirstEnabledCommand()}_getFirstEnabledCommand(){return this._childCommands.find((t=>t.isEnabled))}}class pg extends rh{static get pluginName(){return\"IndentEditing\"}init(){const t=this.editor;t.commands.add(\"indent\",new gg(t)),t.commands.add(\"outdent\",new gg(t))}}var fg='',bg='';class kg extends rh{static get pluginName(){return\"IndentUI\"}init(){const t=this.editor,e=t.locale,n=t.t,o=\"ltr\"==e.uiLanguageDirection?fg:bg,i=\"ltr\"==e.uiLanguageDirection?bg:fg;this._defineButton(\"indent\",n(\"Increase indent\"),o),this._defineButton(\"outdent\",n(\"Decrease indent\"),i)}_defineButton(t,e,n){const o=this.editor;o.ui.componentFactory.add(t,(i=>{const r=o.commands.get(t),s=new Bd(i);return s.set({label:e,icon:n,tooltip:!0}),s.bind(\"isOn\",\"isEnabled\").to(r,\"value\",\"isEnabled\"),this.listenTo(s,\"execute\",(()=>{o.execute(t),o.editing.view.focus()})),s}))}}const wg=\"italic\";class _g extends rh{static get pluginName(){return\"ItalicEditing\"}init(){const t=this.editor;t.model.schema.extend(\"$text\",{allowAttributes:wg}),t.model.schema.setAttributeProperties(wg,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:wg,view:\"i\",upcastAlso:[\"em\",{styles:{\"font-style\":\"italic\"}}]}),t.commands.add(wg,new tu(t,wg)),t.keystrokes.set(\"CTRL+I\",wg)}}const Cg=\"italic\";class Ag extends rh{init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(Cg,(n=>{const o=t.commands.get(Cg),i=new Bd(n);return i.set({label:e(\"Italic\"),icon:'',keystroke:\"CTRL+I\",tooltip:!0,isToggleable:!0}),i.bind(\"isOn\",\"isEnabled\").to(o,\"value\",\"isEnabled\"),this.listenTo(i,\"execute\",(()=>{t.execute(Cg),t.editing.view.focus()})),i}))}}class vg extends Yr{constructor(t){super(t),this.domEventType=\"mousedown\"}onDomEvent(t){this.fire(t.type,t)}}class yg extends rh{static get pluginName(){return\"TwoStepCaretMovement\"}constructor(t){super(t),this.attributes=new Set,this._overrideUid=null}init(){const t=this.editor,e=t.model,n=t.editing.view,o=t.locale,i=e.document.selection;this.listenTo(n.document,\"keydown\",((t,e)=>{if(!i.isCollapsed)return;if(e.shiftKey||e.altKey||e.ctrlKey)return;const n=e.keyCode==yi.arrowright,r=e.keyCode==yi.arrowleft;if(!n&&!r)return;const s=o.contentLanguageDirection;let a=!1;a=\"ltr\"===s&&n||\"rtl\"===s&&r?this._handleForwardMovement(e):this._handleBackwardMovement(e),!0===a&&t.stop()}),{priority:wn.get(\"high\")+1}),this._isNextGravityRestorationSkipped=!1,this.listenTo(i,\"change:range\",((t,e)=>{this._isNextGravityRestorationSkipped?this._isNextGravityRestorationSkipped=!1:this._isGravityOverridden&&(!e.directChange&&Dg(i.getFirstPosition(),this.attributes)||this._restoreGravity())}))}registerAttribute(t){this.attributes.add(t)}_handleForwardMovement(t){const e=this.attributes,n=this.editor.model.document.selection,o=n.getFirstPosition();return!this._isGravityOverridden&&((!o.isAtStart||!xg(n,e))&&(Dg(o,e)?(Sg(t),this._overrideGravity(),!0):void 0))}_handleBackwardMovement(t){const e=this.attributes,n=this.editor.model,o=n.document.selection,i=o.getFirstPosition();return this._isGravityOverridden?(Sg(t),this._restoreGravity(),Eg(n,e,i),!0):i.isAtStart?!!xg(o,e)&&(Sg(t),Eg(n,e,i),!0):function(t,e){return Dg(t.getShiftedBy(-1),e)}(i,e)?i.isAtEnd&&!xg(o,e)&&Dg(i,e)?(Sg(t),Eg(n,e,i),!0):(this._isNextGravityRestorationSkipped=!0,this._overrideGravity(),!1):void 0}get _isGravityOverridden(){return!!this._overrideUid}_overrideGravity(){this._overrideUid=this.editor.model.change((t=>t.overrideSelectionGravity()))}_restoreGravity(){this.editor.model.change((t=>{t.restoreSelectionGravity(this._overrideUid),this._overrideUid=null}))}}function xg(t,e){for(const n of e)if(t.hasAttribute(n))return!0;return!1}function Eg(t,e,n){const o=n.nodeBefore;t.change((t=>{o?t.setSelectionAttribute(o.getAttributes()):t.removeSelectionAttribute(e)}))}function Sg(t){t.preventDefault()}function Dg(t,e){const{nodeBefore:n,nodeAfter:o}=t;for(const t of e){const e=n?n.getAttribute(t):void 0;if((o?o.getAttribute(t):void 0)!==e)return!0}return!1}function Tg(t,e,n,o){return o.createRange(Bg(t,e,n,!0,o),Bg(t,e,n,!1,o))}function Bg(t,e,n,o,i){let r=t.textNode||(o?t.nodeBefore:t.nodeAfter),s=null;for(;r&&r.getAttribute(e)==n;)s=r,r=o?r.previousSibling:r.nextSibling;return s?i.createPositionAt(s,o?\"before\":\"after\"):t}class Pg{constructor(){this._definitions=new Set}get length(){return this._definitions.size}add(t){Array.isArray(t)?t.forEach((t=>this._definitions.add(t))):this._definitions.add(t)}getDispatcher(){return t=>{t.on(\"attribute:linkHref\",((t,e,n)=>{if(!n.consumable.test(e.item,\"attribute:linkHref\"))return;const o=n.writer,i=o.document.selection;for(const t of this._definitions){const r=o.createAttributeElement(\"a\",t.attributes,{priority:5});o.setCustomProperty(\"link\",!0,r),t.callback(e.attributeNewValue)?e.item.is(\"selection\")?o.wrap(i.getFirstRange(),r):o.wrap(n.mapper.toViewRange(e.range),r):o.unwrap(n.mapper.toViewRange(e.range),r)}}),{priority:\"high\"})}}getDispatcherForLinkedImage(){return t=>{t.on(\"attribute:linkHref:image\",((t,e,n)=>{const o=n.mapper.toViewElement(e.item),i=Array.from(o.getChildren()).find((t=>\"a\"===t.name));for(const t of this._definitions){const o=Wn(t.attributes);if(t.callback(e.attributeNewValue))for(const[t,e]of o)\"class\"===t?n.writer.addClass(e,i):n.writer.setAttribute(t,e,i);else for(const[t,e]of o)\"class\"===t?n.writer.removeClass(e,i):n.writer.removeAttribute(t,i)}}))}}}class Ig extends ah{constructor(t){super(t),this.manualDecorators=new Rn,this.automaticDecorators=new Pg}restoreManualDecoratorStates(){for(const t of this.manualDecorators)t.value=this._getDecoratorStateFromModel(t.id)}refresh(){const t=this.editor.model,e=t.document,n=lh(e.selection.getSelectedBlocks());Jh(n,t.schema)?(this.value=n.getAttribute(\"linkHref\"),this.isEnabled=t.schema.checkAttribute(n,\"linkHref\")):(this.value=e.selection.getAttribute(\"linkHref\"),this.isEnabled=t.schema.checkAttributeInSelection(e.selection,\"linkHref\"));for(const t of this.manualDecorators)t.value=this._getDecoratorStateFromModel(t.id)}execute(t,e={}){const n=this.editor.model,o=n.document.selection,i=[],r=[];for(const t in e)e[t]?i.push(t):r.push(t);n.change((e=>{if(o.isCollapsed){const s=o.getFirstPosition();if(o.hasAttribute(\"linkHref\")){const a=Tg(s,\"linkHref\",o.getAttribute(\"linkHref\"),n);e.setAttribute(\"linkHref\",t,a),i.forEach((t=>{e.setAttribute(t,!0,a)})),r.forEach((t=>{e.removeAttribute(t,a)})),e.setSelection(e.createPositionAfter(a.end.nodeBefore))}else if(\"\"!==t){const r=Wn(o.getAttributes());r.set(\"linkHref\",t),i.forEach((t=>{r.set(t,!0)}));const a=e.createText(t,r);n.insertContent(a,s),e.setSelection(e.createPositionAfter(a))}[\"linkHref\",...i,...r].forEach((t=>{e.removeSelectionAttribute(t)}))}else{const s=n.schema.getValidRanges(o.getRanges(),\"linkHref\"),a=[];for(const t of o.getSelectedBlocks())n.schema.checkAttribute(t,\"linkHref\")&&a.push(e.createRangeOn(t));const c=a.slice();for(const t of s)this._isRangeToUpdate(t,a)&&c.push(t);for(const n of c)e.setAttribute(\"linkHref\",t,n),i.forEach((t=>{e.setAttribute(t,!0,n)})),r.forEach((t=>{e.removeAttribute(t,n)}))}}))}_getDecoratorStateFromModel(t){const e=this.editor.model,n=e.document,o=lh(n.selection.getSelectedBlocks());return Jh(o,e.schema)?o.getAttribute(t):n.selection.getAttribute(t)}_isRangeToUpdate(t,e){for(const n of e)if(n.containsRange(t))return!1;return!0}}class Rg extends ah{refresh(){const t=this.editor.model,e=t.document,n=lh(e.selection.getSelectedBlocks());Jh(n,t.schema)?this.isEnabled=t.schema.checkAttribute(n,\"linkHref\"):this.isEnabled=t.schema.checkAttributeInSelection(e.selection,\"linkHref\")}execute(){const t=this.editor,e=this.editor.model,n=e.document.selection,o=t.commands.get(\"link\");e.change((t=>{const i=n.isCollapsed?[Tg(n.getFirstPosition(),\"linkHref\",n.getAttribute(\"linkHref\"),e)]:n.getRanges();for(const e of i)if(t.removeAttribute(\"linkHref\",e),o)for(const n of o.manualDecorators)t.removeAttribute(n.id,e)}))}}class Fg{constructor({id:t,label:e,attributes:n,defaultValue:o}){this.id=t,this.set(\"value\"),this.defaultValue=o,this.label=e,this.attributes=n}}In(Fg,Xo);var Og=n(30),Ng={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Og.a,Ng),Og.a.locals;const Mg=\"automatic\",Vg=/^(https?:)?\\/\\//;class zg extends rh{static get pluginName(){return\"LinkEditing\"}static get requires(){return[yg,Ou,du]}constructor(t){super(t),t.config.define(\"link\",{addTargetToExternalLinks:!1})}init(){const t=this.editor;t.model.schema.extend(\"$text\",{allowAttributes:\"linkHref\"}),t.conversion.for(\"dataDowncast\").attributeToElement({model:\"linkHref\",view:$h}),t.conversion.for(\"editingDowncast\").attributeToElement({model:\"linkHref\",view:(t,e)=>$h(Uh(t),e)}),t.conversion.for(\"upcast\").elementToAttribute({view:{name:\"a\",attributes:{href:!0}},model:{key:\"linkHref\",value:t=>t.getAttribute(\"href\")}}),t.commands.add(\"link\",new Ig(t)),t.commands.add(\"unlink\",new Rg(t));const e=function(t,e){const n={\"Open in a new tab\":t(\"Open in a new tab\"),Downloadable:t(\"Downloadable\")};return e.forEach((t=>(t.label&&n[t.label]&&(t.label=n[t.label]),t))),e}(t.t,function(t){const e=[];if(t)for(const[n,o]of Object.entries(t)){const t=Object.assign({},o,{id:`link${Hh(n)}`});e.push(t)}return e}(t.config.get(\"link.decorators\")));this._enableAutomaticDecorators(e.filter((t=>t.mode===Mg))),this._enableManualDecorators(e.filter((t=>\"manual\"===t.mode)));t.plugins.get(yg).registerAttribute(\"linkHref\"),function(t,e,n,o){const i=t.editing.view,r=new Set;i.document.registerPostFixer((i=>{const s=t.model.document.selection;let a=!1;if(s.hasAttribute(e)){const c=Tg(s.getFirstPosition(),e,s.getAttribute(e),t.model),l=t.editing.mapper.toViewRange(c);for(const t of l.getItems())t.is(\"element\",n)&&!t.hasClass(o)&&(i.addClass(o,t),r.add(t),a=!0)}return a})),t.conversion.for(\"editingDowncast\").add((t=>{function e(){i.change((t=>{for(const e of r.values())t.removeClass(o,e),r.delete(e)}))}t.on(\"insert\",e,{priority:\"highest\"}),t.on(\"remove\",e,{priority:\"highest\"}),t.on(\"attribute\",e,{priority:\"highest\"}),t.on(\"selection\",e,{priority:\"highest\"})}))}(t,\"linkHref\",\"a\",\"ck-link_selected\"),this._enableInsertContentSelectionAttributesFixer(),this._enableClickingAfterLink(),this._enableTypingOverLink(),this._handleDeleteContentAfterLink()}_enableAutomaticDecorators(t){const e=this.editor,n=e.commands.get(\"link\").automaticDecorators;e.config.get(\"link.addTargetToExternalLinks\")&&n.add({id:\"linkIsExternal\",mode:Mg,callback:t=>Vg.test(t),attributes:{target:\"_blank\",rel:\"noopener noreferrer\"}}),n.add(t),n.length&&e.conversion.for(\"downcast\").add(n.getDispatcher())}_enableManualDecorators(t){if(!t.length)return;const e=this.editor,n=e.commands.get(\"link\").manualDecorators;t.forEach((t=>{e.model.schema.extend(\"$text\",{allowAttributes:t.id}),n.add(new Fg(t)),e.conversion.for(\"downcast\").attributeToElement({model:t.id,view:(e,{writer:o})=>{if(e){const e=n.get(t.id).attributes,i=o.createAttributeElement(\"a\",e,{priority:5});return o.setCustomProperty(\"link\",!0,i),i}}}),e.conversion.for(\"upcast\").elementToAttribute({view:{name:\"a\",attributes:n.get(t.id).attributes},model:{key:t.id}})}))}_enableInsertContentSelectionAttributesFixer(){const t=this.editor,e=t.model,n=e.document.selection,o=t.commands.get(\"link\");this.listenTo(e,\"insertContent\",(()=>{const t=n.anchor.nodeBefore,i=n.anchor.nodeAfter;n.hasAttribute(\"linkHref\")&&t&&t.hasAttribute(\"linkHref\")&&(i&&i.hasAttribute(\"linkHref\")||e.change((t=>{Lg(t,o.manualDecorators)})))}),{priority:\"low\"})}_enableClickingAfterLink(){const t=this.editor,e=t.commands.get(\"link\");t.editing.view.addObserver(vg);let n=!1;this.listenTo(t.editing.view.document,\"mousedown\",(()=>{n=!0})),this.listenTo(t.editing.view.document,\"selectionChange\",(()=>{if(!n)return;n=!1;const o=t.model.document.selection;if(!o.isCollapsed)return;if(!o.hasAttribute(\"linkHref\"))return;const i=o.getFirstPosition(),r=Tg(i,\"linkHref\",o.getAttribute(\"linkHref\"),t.model);(i.isTouching(r.start)||i.isTouching(r.end))&&t.model.change((t=>{Lg(t,e.manualDecorators)}))}))}_enableTypingOverLink(){const t=this.editor,e=t.editing.view;let n,o;this.listenTo(e.document,\"delete\",(()=>{o=!0}),{priority:\"high\"}),this.listenTo(t.model,\"deleteContent\",(()=>{const e=t.model.document.selection;e.isCollapsed||(o?o=!1:Hg(t)&&function(t){const e=t.document.selection,n=e.getFirstPosition(),o=e.getLastPosition(),i=n.nodeAfter;if(!i)return!1;if(!i.is(\"$text\"))return!1;if(!i.hasAttribute(\"linkHref\"))return!1;const r=o.textNode||o.nodeBefore;if(i===r)return!0;return Tg(n,\"linkHref\",i.getAttribute(\"linkHref\"),t).containsRange(t.createRange(n,o),!0)}(t.model)&&(n=e.getAttributes()))}),{priority:\"high\"}),this.listenTo(t.model,\"insertContent\",((e,[i])=>{o=!1,Hg(t)&&n&&(t.model.change((t=>{for(const[e,o]of n)t.setAttribute(e,o,i)})),n=null)}),{priority:\"high\"})}_handleDeleteContentAfterLink(){const t=this.editor,e=t.model,n=e.document.selection,o=t.editing.view,i=t.commands.get(\"link\");let r=!1,s=!1;this.listenTo(o.document,\"delete\",((t,e)=>{s=e.domEvent.keyCode===yi.backspace}),{priority:\"high\"}),this.listenTo(e,\"deleteContent\",(()=>{r=!1;const t=n.getFirstPosition(),o=n.getAttribute(\"linkHref\");if(!o)return;const i=Tg(t,\"linkHref\",o,e);r=i.containsPosition(t)||i.end.isEqual(t)}),{priority:\"high\"}),this.listenTo(e,\"deleteContent\",(()=>{s&&(s=!1,r||t.model.enqueueChange((t=>{Lg(t,i.manualDecorators)})))}),{priority:\"low\"})}}function Lg(t,e){t.removeSelectionAttribute(\"linkHref\");for(const n of e)t.removeSelectionAttribute(n.id)}function Hg(t){return t.plugins.get(\"Input\").isInput(t.model.change((t=>t.batch)))}class Kg extends Yr{constructor(t){super(t),this.domEventType=\"click\"}onDomEvent(t){this.fire(t.type,t)}}var jg=n(31),qg={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(jg.a,qg),jg.a.locals;const Wg=id(\"px\"),Gg=gr.document.body;class $g extends Gl{constructor(t){super(t);const e=this.bindTemplate;this.set(\"top\",0),this.set(\"left\",0),this.set(\"position\",\"arrow_nw\"),this.set(\"isVisible\",!1),this.set(\"withArrow\",!0),this.set(\"class\"),this.content=this.createCollection(),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-balloon-panel\",e.to(\"position\",(t=>`ck-balloon-panel_${t}`)),e.if(\"isVisible\",\"ck-balloon-panel_visible\"),e.if(\"withArrow\",\"ck-balloon-panel_with-arrow\"),e.to(\"class\")],style:{top:e.to(\"top\",Wg),left:e.to(\"left\",Wg)}},children:this.content})}show(){this.isVisible=!0}hide(){this.isVisible=!1}attachTo(t){this.show();const e=$g.defaultPositions,n=Object.assign({},{element:this.element,positions:[e.southArrowNorth,e.southArrowNorthMiddleWest,e.southArrowNorthMiddleEast,e.southArrowNorthWest,e.southArrowNorthEast,e.northArrowSouth,e.northArrowSouthMiddleWest,e.northArrowSouthMiddleEast,e.northArrowSouthWest,e.northArrowSouthEast],limiter:Gg,fitInViewport:!0},t),o=$g._getOptimalPosition(n),i=parseInt(o.left),r=parseInt(o.top),s=o.name;Object.assign(this,{top:r,left:i,position:s})}pin(t){this.unpin(),this._pinWhenIsVisibleCallback=()=>{this.isVisible?this._startPinning(t):this._stopPinning()},this._startPinning(t),this.listenTo(this,\"change:isVisible\",this._pinWhenIsVisibleCallback)}unpin(){this._pinWhenIsVisibleCallback&&(this._stopPinning(),this.stopListening(this,\"change:isVisible\",this._pinWhenIsVisibleCallback),this._pinWhenIsVisibleCallback=null,this.hide())}_startPinning(t){this.attachTo(t);const e=Ug(t.target),n=t.limiter?Ug(t.limiter):Gg;this.listenTo(gr.document,\"scroll\",((o,i)=>{const r=i.target,s=e&&r.contains(e),a=n&&r.contains(n);!s&&!a&&e&&n||this.attachTo(t)}),{useCapture:!0}),this.listenTo(gr.window,\"resize\",(()=>{this.attachTo(t)}))}_stopPinning(){this.stopListening(gr.document,\"scroll\"),this.stopListening(gr.window,\"resize\")}}function Ug(t){return hn(t)?t:ms(t)?t.commonAncestorContainer:\"function\"==typeof t?Ug(t()):null}function Jg(t,e){return t.top-e.height-$g.arrowVerticalOffset}function Yg(t){return t.bottom+$g.arrowVerticalOffset}$g.arrowHorizontalOffset=25,$g.arrowVerticalOffset=10,$g._getOptimalPosition=bd,$g.defaultPositions={northWestArrowSouthWest:(t,e)=>({top:Jg(t,e),left:t.left-$g.arrowHorizontalOffset,name:\"arrow_sw\"}),northWestArrowSouthMiddleWest:(t,e)=>({top:Jg(t,e),left:t.left-.25*e.width-$g.arrowHorizontalOffset,name:\"arrow_smw\"}),northWestArrowSouth:(t,e)=>({top:Jg(t,e),left:t.left-e.width/2,name:\"arrow_s\"}),northWestArrowSouthMiddleEast:(t,e)=>({top:Jg(t,e),left:t.left-.75*e.width+$g.arrowHorizontalOffset,name:\"arrow_sme\"}),northWestArrowSouthEast:(t,e)=>({top:Jg(t,e),left:t.left-e.width+$g.arrowHorizontalOffset,name:\"arrow_se\"}),northArrowSouthWest:(t,e)=>({top:Jg(t,e),left:t.left+t.width/2-$g.arrowHorizontalOffset,name:\"arrow_sw\"}),northArrowSouthMiddleWest:(t,e)=>({top:Jg(t,e),left:t.left+t.width/2-.25*e.width-$g.arrowHorizontalOffset,name:\"arrow_smw\"}),northArrowSouth:(t,e)=>({top:Jg(t,e),left:t.left+t.width/2-e.width/2,name:\"arrow_s\"}),northArrowSouthMiddleEast:(t,e)=>({top:Jg(t,e),left:t.left+t.width/2-.75*e.width+$g.arrowHorizontalOffset,name:\"arrow_sme\"}),northArrowSouthEast:(t,e)=>({top:Jg(t,e),left:t.left+t.width/2-e.width+$g.arrowHorizontalOffset,name:\"arrow_se\"}),northEastArrowSouthWest:(t,e)=>({top:Jg(t,e),left:t.right-$g.arrowHorizontalOffset,name:\"arrow_sw\"}),northEastArrowSouthMiddleWest:(t,e)=>({top:Jg(t,e),left:t.right-.25*e.width-$g.arrowHorizontalOffset,name:\"arrow_smw\"}),northEastArrowSouth:(t,e)=>({top:Jg(t,e),left:t.right-e.width/2,name:\"arrow_s\"}),northEastArrowSouthMiddleEast:(t,e)=>({top:Jg(t,e),left:t.right-.75*e.width+$g.arrowHorizontalOffset,name:\"arrow_sme\"}),northEastArrowSouthEast:(t,e)=>({top:Jg(t,e),left:t.right-e.width+$g.arrowHorizontalOffset,name:\"arrow_se\"}),southWestArrowNorthWest:(t,e)=>({top:Yg(t),left:t.left-$g.arrowHorizontalOffset,name:\"arrow_nw\"}),southWestArrowNorthMiddleWest:(t,e)=>({top:Yg(t),left:t.left-.25*e.width-$g.arrowHorizontalOffset,name:\"arrow_nmw\"}),southWestArrowNorth:(t,e)=>({top:Yg(t),left:t.left-e.width/2,name:\"arrow_n\"}),southWestArrowNorthMiddleEast:(t,e)=>({top:Yg(t),left:t.left-.75*e.width+$g.arrowHorizontalOffset,name:\"arrow_nme\"}),southWestArrowNorthEast:(t,e)=>({top:Yg(t),left:t.left-e.width+$g.arrowHorizontalOffset,name:\"arrow_ne\"}),southArrowNorthWest:(t,e)=>({top:Yg(t),left:t.left+t.width/2-$g.arrowHorizontalOffset,name:\"arrow_nw\"}),southArrowNorthMiddleWest:(t,e)=>({top:Yg(t),left:t.left+t.width/2-.25*e.width-$g.arrowHorizontalOffset,name:\"arrow_nmw\"}),southArrowNorth:(t,e)=>({top:Yg(t),left:t.left+t.width/2-e.width/2,name:\"arrow_n\"}),southArrowNorthMiddleEast:(t,e)=>({top:Yg(t),left:t.left+t.width/2-.75*e.width+$g.arrowHorizontalOffset,name:\"arrow_nme\"}),southArrowNorthEast:(t,e)=>({top:Yg(t),left:t.left+t.width/2-e.width+$g.arrowHorizontalOffset,name:\"arrow_ne\"}),southEastArrowNorthWest:(t,e)=>({top:Yg(t),left:t.right-$g.arrowHorizontalOffset,name:\"arrow_nw\"}),southEastArrowNorthMiddleWest:(t,e)=>({top:Yg(t),left:t.right-.25*e.width-$g.arrowHorizontalOffset,name:\"arrow_nmw\"}),southEastArrowNorth:(t,e)=>({top:Yg(t),left:t.right-e.width/2,name:\"arrow_n\"}),southEastArrowNorthMiddleEast:(t,e)=>({top:Yg(t),left:t.right-.75*e.width+$g.arrowHorizontalOffset,name:\"arrow_nme\"}),southEastArrowNorthEast:(t,e)=>({top:Yg(t),left:t.right-e.width+$g.arrowHorizontalOffset,name:\"arrow_ne\"})};var Qg=n(32),Xg={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0},Zg=(gl()(Qg.a,Xg),Qg.a.locals,n(33)),tp={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Zg.a,tp),Zg.a.locals;const ep=id(\"px\");class np extends rh{static get pluginName(){return\"ContextualBalloon\"}constructor(t){super(t),this.positionLimiter=()=>{const t=this.editor.editing.view,e=t.document.selection.editableElement;return e?t.domConverter.mapViewToDom(e.root):null},this.set(\"visibleView\",null),this.view=new $g(t.locale),t.ui.view.body.add(this.view),t.ui.focusTracker.add(this.view.element),this._viewToStack=new Map,this._idToStack=new Map,this.set(\"_numberOfStacks\",0),this.set(\"_singleViewMode\",!1),this._rotatorView=this._createRotatorView(),this._fakePanelsView=this._createFakePanelsView()}hasView(t){return Array.from(this._viewToStack.keys()).includes(t)}add(t){if(this.hasView(t.view))throw new _n.a(\"contextualballoon-add-view-exist\",[this,t]);const e=t.stackId||\"main\";if(!this._idToStack.has(e))return this._idToStack.set(e,new Map([[t.view,t]])),this._viewToStack.set(t.view,this._idToStack.get(e)),this._numberOfStacks=this._idToStack.size,void(this._visibleStack&&!t.singleViewMode||this.showStack(e));const n=this._idToStack.get(e);t.singleViewMode&&this.showStack(e),n.set(t.view,t),this._viewToStack.set(t.view,n),n===this._visibleStack&&this._showView(t)}remove(t){if(!this.hasView(t))throw new _n.a(\"contextualballoon-remove-view-not-exist\",[this,t]);const e=this._viewToStack.get(t);this._singleViewMode&&this.visibleView===t&&(this._singleViewMode=!1),this.visibleView===t&&(1===e.size?this._idToStack.size>1?this._showNextStack():(this.view.hide(),this.visibleView=null,this._rotatorView.hideView()):this._showView(Array.from(e.values())[e.size-2])),1===e.size?(this._idToStack.delete(this._getStackId(e)),this._numberOfStacks=this._idToStack.size):e.delete(t),this._viewToStack.delete(t)}updatePosition(t){t&&(this._visibleStack.get(this.visibleView).position=t),this.view.pin(this._getBalloonPosition()),this._fakePanelsView.updatePosition()}showStack(t){this.visibleStack=t;const e=this._idToStack.get(t);if(!e)throw new _n.a(\"contextualballoon-showstack-stack-not-exist\",this);this._visibleStack!==e&&this._showView(Array.from(e.values()).pop())}get _visibleStack(){return this._viewToStack.get(this.visibleView)}_getStackId(t){return Array.from(this._idToStack.entries()).find((e=>e[1]===t))[0]}_showNextStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)+1;t[e]||(e=0),this.showStack(this._getStackId(t[e]))}_showPrevStack(){const t=Array.from(this._idToStack.values());let e=t.indexOf(this._visibleStack)-1;t[e]||(e=t.length-1),this.showStack(this._getStackId(t[e]))}_createRotatorView(){const t=new op(this.editor.locale),e=this.editor.locale.t;return this.view.content.add(t),t.bind(\"isNavigationVisible\").to(this,\"_numberOfStacks\",this,\"_singleViewMode\",((t,e)=>!e&&t>1)),t.on(\"change:isNavigationVisible\",(()=>this.updatePosition()),{priority:\"low\"}),t.bind(\"counter\").to(this,\"visibleView\",this,\"_numberOfStacks\",((t,n)=>{if(n<2)return\"\";const o=Array.from(this._idToStack.values()).indexOf(this._visibleStack)+1;return e(\"%0 of %1\",[o,n])})),t.buttonNextView.on(\"execute\",(()=>{t.focusTracker.isFocused&&this.editor.editing.view.focus(),this._showNextStack()})),t.buttonPrevView.on(\"execute\",(()=>{t.focusTracker.isFocused&&this.editor.editing.view.focus(),this._showPrevStack()})),t}_createFakePanelsView(){const t=new ip(this.editor.locale,this.view);return t.bind(\"numberOfPanels\").to(this,\"_numberOfStacks\",this,\"_singleViewMode\",((t,e)=>!e&&t>=2?Math.min(t-1,2):0)),t.listenTo(this.view,\"change:top\",(()=>t.updatePosition())),t.listenTo(this.view,\"change:left\",(()=>t.updatePosition())),this.editor.ui.view.body.add(t),t}_showView({view:t,balloonClassName:e=\"\",withArrow:n=!0,singleViewMode:o=!1}){this.view.class=e,this.view.withArrow=n,this._rotatorView.showView(t),this.visibleView=t,this.view.pin(this._getBalloonPosition()),this._fakePanelsView.updatePosition(),o&&(this._singleViewMode=!0)}_getBalloonPosition(){let t=Array.from(this._visibleStack.values()).pop().position;return t&&!t.limiter&&(t=Object.assign({},t,{limiter:this.positionLimiter})),t}}class op extends Gl{constructor(t){super(t);const e=t.t,n=this.bindTemplate;this.set(\"isNavigationVisible\",!0),this.focusTracker=new hl,this.buttonPrevView=this._createButtonView(e(\"Previous\"),''),this.buttonNextView=this._createButtonView(e(\"Next\"),''),this.content=this.createCollection(),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-balloon-rotator\"],\"z-index\":\"-1\"},children:[{tag:\"div\",attributes:{class:[\"ck-balloon-rotator__navigation\",n.to(\"isNavigationVisible\",(t=>t?\"\":\"ck-hidden\"))]},children:[this.buttonPrevView,{tag:\"span\",attributes:{class:[\"ck-balloon-rotator__counter\"]},children:[{text:n.to(\"counter\")}]},this.buttonNextView]},{tag:\"div\",attributes:{class:\"ck-balloon-rotator__content\"},children:this.content}]})}render(){super.render(),this.focusTracker.add(this.element)}showView(t){this.hideView(),this.content.add(t)}hideView(){this.content.clear()}_createButtonView(t,e){const n=new Bd(this.locale);return n.set({label:t,icon:e,tooltip:!0}),n}}class ip extends Gl{constructor(t,e){super(t);const n=this.bindTemplate;this.set(\"top\",0),this.set(\"left\",0),this.set(\"height\",0),this.set(\"width\",0),this.set(\"numberOfPanels\",0),this.content=this.createCollection(),this._balloonPanelView=e,this.setTemplate({tag:\"div\",attributes:{class:[\"ck-fake-panel\",n.to(\"numberOfPanels\",(t=>t?\"\":\"ck-hidden\"))],style:{top:n.to(\"top\",ep),left:n.to(\"left\",ep),width:n.to(\"width\",ep),height:n.to(\"height\",ep)}},children:this.content}),this.on(\"change:numberOfPanels\",((t,e,n,o)=>{n>o?this._addPanels(n-o):this._removePanels(o-n),this.updatePosition()}))}_addPanels(t){for(;t--;){const t=new Gl;t.setTemplate({tag:\"div\"}),this.content.add(t),this.registerChild(t)}}_removePanels(t){for(;t--;){const t=this.content.last;this.content.remove(t),this.deregisterChild(t),t.destroy()}}updatePosition(){if(this.numberOfPanels){const{top:t,left:e}=this._balloonPanelView,{width:n,height:o}=new fs(this._balloonPanelView.element);Object.assign(this,{top:t,left:e,width:n,height:o})}}}var rp=n(34),sp={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(rp.a,sp),rp.a.locals;class ap extends Gl{constructor(t,e){super(t);const n=`ck-labeled-field-view-${kn()}`,o=`ck-labeled-field-view-status-${kn()}`;this.fieldView=e(this,n,o),this.set(\"label\"),this.set(\"isEnabled\",!0),this.set(\"errorText\",null),this.set(\"infoText\",null),this.set(\"class\"),this.labelView=this._createLabelView(n),this.statusView=this._createStatusView(o),this.bind(\"_statusText\").to(this,\"errorText\",this,\"infoText\",((t,e)=>t||e));const i=this.bindTemplate;this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-labeled-field-view\",i.to(\"class\"),i.if(\"isEnabled\",\"ck-disabled\",(t=>!t))]},children:[this.labelView,this.fieldView,this.statusView]})}_createLabelView(t){const e=new td(this.locale);return e.for=t,e.bind(\"text\").to(this,\"label\"),e}_createStatusView(t){const e=new Gl(this.locale),n=this.bindTemplate;return e.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-labeled-field-view__status\",n.if(\"errorText\",\"ck-labeled-field-view__status_error\"),n.if(\"_statusText\",\"ck-hidden\",(t=>!t))],id:t,role:n.if(\"errorText\",\"alert\")},children:[{text:n.to(\"_statusText\")}]}),e}focus(){this.fieldView.focus()}}var cp=n(35),lp={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(cp.a,lp),cp.a.locals;class dp extends Gl{constructor(t){super(t),this.set(\"value\"),this.set(\"id\"),this.set(\"placeholder\"),this.set(\"isReadOnly\",!1),this.set(\"hasError\",!1),this.set(\"ariaDescribedById\");const e=this.bindTemplate;this.setTemplate({tag:\"input\",attributes:{type:\"text\",class:[\"ck\",\"ck-input\",\"ck-input-text\",e.if(\"hasError\",\"ck-error\")],id:e.to(\"id\"),placeholder:e.to(\"placeholder\"),readonly:e.to(\"isReadOnly\"),\"aria-invalid\":e.if(\"hasError\",!0),\"aria-describedby\":e.to(\"ariaDescribedById\")},on:{input:e.to(\"input\")}})}render(){super.render();const t=t=>{this.element.value=t||0===t?t:\"\"};t(this.value),this.on(\"change:value\",((e,n,o)=>{t(o)}))}select(){this.element.select()}focus(){this.element.focus()}}function hp(t,e,n){const o=new dp(t.locale);return o.set({id:e,ariaDescribedById:n}),o.bind(\"isReadOnly\").to(t,\"isEnabled\",(t=>!t)),o.bind(\"hasError\").to(t,\"errorText\",(t=>!!t)),o.on(\"input\",(()=>{t.errorText=null})),o}function up(t,e,n){const o=Gd(t.locale);return o.set({id:e,ariaDescribedById:n}),o.bind(\"isEnabled\").to(t),o}function mp({view:t}){t.listenTo(t.element,\"submit\",((e,n)=>{n.preventDefault(),t.fire(\"submit\")}),{useCapture:!0})}var gp='',pp='',fp=n(36),bp={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0},kp=(gl()(fp.a,bp),fp.a.locals,n(37)),wp={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(kp.a,wp),kp.a.locals;class _p extends Gl{constructor(t,e,n){super(t);const o=t.t;this.focusTracker=new hl,this.keystrokes=new nl,this.urlInputView=this._createUrlInput(n),this.saveButtonView=this._createButton(o(\"Save\"),gp,\"ck-button-save\"),this.saveButtonView.type=\"submit\",this.cancelButtonView=this._createButton(o(\"Cancel\"),pp,\"ck-button-cancel\",\"cancel\"),this._manualDecoratorSwitches=this._createManualDecoratorSwitches(e),this.children=this._createFormChildren(e.manualDecorators),this._focusables=new vl,this._focusCycler=new ld({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:\"shift + tab\",focusNext:\"tab\"}});const i=[\"ck\",\"ck-link-form\",\"ck-responsive-form\"];e.manualDecorators.length&&i.push(\"ck-link-form_layout-vertical\",\"ck-vertical-form\"),this.setTemplate({tag:\"form\",attributes:{class:i,tabindex:\"-1\"},children:this.children})}getDecoratorSwitchesState(){return Array.from(this._manualDecoratorSwitches).reduce(((t,e)=>(t[e.name]=e.isOn,t)),{})}render(){super.render(),mp({view:this});[this.urlInputView,...this._manualDecoratorSwitches,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}focus(){this._focusCycler.focusFirst()}_createUrlInput(t=\"https://\"){const e=this.locale.t,n=new ap(this.locale,hp);return n.label=e(\"Link URL\"),n.fieldView.placeholder=t+\"example.com\",n}_createButton(t,e,n,o){const i=new Bd(this.locale);return i.set({label:t,icon:e,tooltip:!0}),i.extendTemplate({attributes:{class:n}}),o&&i.delegate(\"execute\").to(this,o),i}_createManualDecoratorSwitches(t){const e=this.createCollection();for(const n of t.manualDecorators){const o=new Ld(this.locale);o.set({name:n.id,label:n.label,withText:!0}),o.bind(\"isOn\").toMany([n,t],\"value\",((t,e)=>void 0===e&&void 0===t?n.defaultValue:t)),o.on(\"execute\",(()=>{n.set(\"value\",!o.isOn)})),e.add(o)}return e}_createFormChildren(t){const e=this.createCollection();if(e.add(this.urlInputView),t.length){const t=new Gl;t.setTemplate({tag:\"ul\",children:this._manualDecoratorSwitches.map((t=>({tag:\"li\",children:[t],attributes:{class:[\"ck\",\"ck-list__item\"]}}))),attributes:{class:[\"ck\",\"ck-reset\",\"ck-list\"]}}),e.add(t)}return e.add(this.saveButtonView),e.add(this.cancelButtonView),e}}var Cp=n(38),Ap={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Cp.a,Ap),Cp.a.locals;class vp extends Gl{constructor(t){super(t);const e=t.t;this.focusTracker=new hl,this.keystrokes=new nl,this.previewButtonView=this._createPreviewButton(),this.unlinkButtonView=this._createButton(e(\"Unlink\"),'',\"unlink\"),this.editButtonView=this._createButton(e(\"Edit link\"),'',\"edit\"),this.set(\"href\"),this._focusables=new vl,this._focusCycler=new ld({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:\"shift + tab\",focusNext:\"tab\"}}),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-link-actions\",\"ck-responsive-form\"],tabindex:\"-1\"},children:[this.previewButtonView,this.editButtonView,this.unlinkButtonView]})}render(){super.render();[this.previewButtonView,this.editButtonView,this.unlinkButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}focus(){this._focusCycler.focusFirst()}_createButton(t,e,n){const o=new Bd(this.locale);return o.set({label:t,icon:e,tooltip:!0}),o.delegate(\"execute\").to(this,n),o}_createPreviewButton(){const t=new Bd(this.locale),e=this.bindTemplate,n=this.t;return t.set({withText:!0,tooltip:n(\"Open link in new tab\")}),t.extendTemplate({attributes:{class:[\"ck\",\"ck-link-actions__preview\"],href:e.to(\"href\",(t=>t&&Uh(t))),target:\"_blank\",rel:\"noopener noreferrer\"}}),t.bind(\"label\").to(this,\"href\",(t=>t||n(\"This link has no URL\"))),t.bind(\"isEnabled\").to(this,\"href\",(t=>!!t)),t.template.tag=\"a\",t.template.eventListeners={},t}}const yp=\"link-ui\";class xp extends rh{static get requires(){return[np]}static get pluginName(){return\"LinkUI\"}init(){const t=this.editor;t.editing.view.addObserver(Kg),this.actionsView=this._createActionsView(),this.formView=this._createFormView(),this._balloon=t.plugins.get(np),this._createToolbarLinkButton(),this._enableUserBalloonInteractions(),t.conversion.for(\"editingDowncast\").markerToHighlight({model:yp,view:{classes:[\"ck-fake-link-selection\"]}}),t.conversion.for(\"editingDowncast\").markerToElement({model:yp,view:{name:\"span\",classes:[\"ck-fake-link-selection\",\"ck-fake-link-selection_collapsed\"]}})}destroy(){super.destroy(),this.formView.destroy()}_createActionsView(){const t=this.editor,e=new vp(t.locale),n=t.commands.get(\"link\"),o=t.commands.get(\"unlink\");return e.bind(\"href\").to(n,\"value\"),e.editButtonView.bind(\"isEnabled\").to(n),e.unlinkButtonView.bind(\"isEnabled\").to(o),this.listenTo(e,\"edit\",(()=>{this._addFormView()})),this.listenTo(e,\"unlink\",(()=>{t.execute(\"unlink\"),this._hideUI()})),e.keystrokes.set(\"Esc\",((t,e)=>{this._hideUI(),e()})),e.keystrokes.set(Gh,((t,e)=>{this._addFormView(),e()})),e}_createFormView(){const t=this.editor,e=t.commands.get(\"link\"),n=t.config.get(\"link.defaultProtocol\"),o=new _p(t.locale,e,n);return o.urlInputView.fieldView.bind(\"value\").to(e,\"value\"),o.urlInputView.bind(\"isReadOnly\").to(e,\"isEnabled\",(t=>!t)),o.saveButtonView.bind(\"isEnabled\").to(e),this.listenTo(o,\"submit\",(()=>{const{value:e}=o.urlInputView.fieldView.element,i=Yh(e,n);t.execute(\"link\",i,o.getDecoratorSwitchesState()),this._closeFormView()})),this.listenTo(o,\"cancel\",(()=>{this._closeFormView()})),o.keystrokes.set(\"Esc\",((t,e)=>{this._closeFormView(),e()})),o}_createToolbarLinkButton(){const t=this.editor,e=t.commands.get(\"link\"),n=t.t;t.keystrokes.set(Gh,((t,n)=>{n(),e.isEnabled&&this._showUI(!0)})),t.ui.componentFactory.add(\"link\",(t=>{const o=new Bd(t);return o.isEnabled=!0,o.label=n(\"Link\"),o.icon='',o.keystroke=Gh,o.tooltip=!0,o.isToggleable=!0,o.bind(\"isEnabled\").to(e,\"isEnabled\"),o.bind(\"isOn\").to(e,\"value\",(t=>!!t)),this.listenTo(o,\"execute\",(()=>this._showUI(!0))),o}))}_enableUserBalloonInteractions(){const t=this.editor.editing.view.document;this.listenTo(t,\"click\",(()=>{this._getSelectedLinkElement()&&this._showUI()})),this.editor.keystrokes.set(\"Tab\",((t,e)=>{this._areActionsVisible&&!this.actionsView.focusTracker.isFocused&&(this.actionsView.focus(),e())}),{priority:\"high\"}),this.editor.keystrokes.set(\"Esc\",((t,e)=>{this._isUIVisible&&(this._hideUI(),e())})),Hd({emitter:this.formView,activator:()=>this._isUIInPanel,contextElements:[this._balloon.view.element],callback:()=>this._hideUI()})}_addActionsView(){this._areActionsInPanel||this._balloon.add({view:this.actionsView,position:this._getBalloonPositionData()})}_addFormView(){if(this._isFormInPanel)return;const t=this.editor.commands.get(\"link\");this._balloon.add({view:this.formView,position:this._getBalloonPositionData()}),this._balloon.visibleView===this.formView&&this.formView.urlInputView.fieldView.select(),this.formView.urlInputView.fieldView.element.value=t.value||\"\"}_closeFormView(){const t=this.editor.commands.get(\"link\");t.restoreManualDecoratorStates(),void 0!==t.value?this._removeFormView():this._hideUI()}_removeFormView(){this._isFormInPanel&&(this.formView.saveButtonView.focus(),this._balloon.remove(this.formView),this.editor.editing.view.focus(),this._hideFakeVisualSelection())}_showUI(t=!1){this._getSelectedLinkElement()?(this._areActionsVisible?this._addFormView():this._addActionsView(),t&&this._balloon.showStack(\"main\")):(this._showFakeVisualSelection(),this._addActionsView(),t&&this._balloon.showStack(\"main\"),this._addFormView()),this._startUpdatingUI()}_hideUI(){if(!this._isUIInPanel)return;const t=this.editor;this.stopListening(t.ui,\"update\"),this.stopListening(this._balloon,\"change:visibleView\"),t.editing.view.focus(),this._removeFormView(),this._balloon.remove(this.actionsView),this._hideFakeVisualSelection()}_startUpdatingUI(){const t=this.editor,e=t.editing.view.document;let n=this._getSelectedLinkElement(),o=r();const i=()=>{const t=this._getSelectedLinkElement(),e=r();n&&!t||!n&&e!==o?this._hideUI():this._isUIVisible&&this._balloon.updatePosition(this._getBalloonPositionData()),n=t,o=e};function r(){return e.selection.focus.getAncestors().reverse().find((t=>t.is(\"element\")))}this.listenTo(t.ui,\"update\",i),this.listenTo(this._balloon,\"change:visibleView\",i)}get _isFormInPanel(){return this._balloon.hasView(this.formView)}get _areActionsInPanel(){return this._balloon.hasView(this.actionsView)}get _areActionsVisible(){return this._balloon.visibleView===this.actionsView}get _isUIInPanel(){return this._isFormInPanel||this._areActionsInPanel}get _isUIVisible(){return this._balloon.visibleView==this.formView||this._areActionsVisible}_getBalloonPositionData(){const t=this.editor.editing.view,e=this.editor.model,n=t.document;let o=null;if(e.markers.has(yp)){const e=Array.from(this.editor.editing.mapper.markerNameToElements(yp)),n=t.createRange(t.createPositionBefore(e[0]),t.createPositionAfter(e[e.length-1]));o=t.domConverter.viewRangeToDom(n)}else{const e=this._getSelectedLinkElement(),i=n.selection.getFirstRange();o=e?t.domConverter.mapViewToDom(e):t.domConverter.viewRangeToDom(i)}return{target:o}}_getSelectedLinkElement(){const t=this.editor.editing.view,e=t.document.selection;if(e.isCollapsed)return Ep(e.getFirstPosition());{const n=e.getFirstRange().getTrimmed(),o=Ep(n.start),i=Ep(n.end);return o&&o==i&&t.createRangeIn(o).getTrimmed().isEqual(n)?o:null}}_showFakeVisualSelection(){const t=this.editor.model;t.change((e=>{const n=t.document.selection.getFirstRange();if(t.markers.has(yp))e.updateMarker(yp,{range:n});else if(n.start.isAtEnd){const o=Sp(n,t.document.selection.focus,e);e.addMarker(yp,{usingOperation:!1,affectsData:!1,range:o})}else e.addMarker(yp,{usingOperation:!1,affectsData:!1,range:n})}))}_hideFakeVisualSelection(){const t=this.editor.model;t.markers.has(yp)&&t.change((t=>{t.removeMarker(yp)}))}}function Ep(t){return t.getAncestors().find((t=>{return(e=t).is(\"attributeElement\")&&!!e.getCustomProperty(\"link\");var e}))}function Sp(t,e,n){const o=[t.start.path[0]+1,0],i=n.createPositionFromPath(t.start.root,o,\"toNext\"),r=n.createRange(i,t.end);return r.start.path[0]>t.end.path[0]?n.createRange(e):i.isAtStart&&i.isAtEnd?Sp(r,e,n):r}class Dp extends ah{constructor(t,e){super(t),this.type=e}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model,e=t.document,n=Array.from(e.selection.getSelectedBlocks()).filter((e=>Bp(e,t.schema))),o=!0===this.value;t.change((t=>{if(o){let e=n[n.length-1].nextSibling,o=Number.POSITIVE_INFINITY,i=[];for(;e&&\"listItem\"==e.name&&0!==e.getAttribute(\"listIndent\");){const t=e.getAttribute(\"listIndent\");t=n;)r>i.getAttribute(\"listIndent\")&&(r=i.getAttribute(\"listIndent\")),i.getAttribute(\"listIndent\")==r&&t[e?\"unshift\":\"push\"](i),i=i[e?\"previousSibling\":\"nextSibling\"]}}function Bp(t,e){return e.checkChild(t.parent,\"listItem\")&&!e.isObject(t)}class Pp extends ah{constructor(t,e){super(t),this._indentBy=\"forward\"==e?1:-1}refresh(){this.isEnabled=this._checkEnabled()}execute(){const t=this.editor.model,e=t.document;let n=Array.from(e.selection.getSelectedBlocks());t.change((t=>{const e=n[n.length-1];let o=e.nextSibling;for(;o&&\"listItem\"==o.name&&o.getAttribute(\"listIndent\")>e.getAttribute(\"listIndent\");)n.push(o),o=o.nextSibling;this._indentBy<0&&(n=n.reverse());for(const e of n){const n=e.getAttribute(\"listIndent\")+this._indentBy;n<0?t.rename(e,\"paragraph\"):t.setAttribute(\"listIndent\",n,e)}this.fire(\"_executeCleanup\",n)}))}_checkEnabled(){const t=lh(this.editor.model.document.selection.getSelectedBlocks());if(!t||!t.is(\"element\",\"listItem\"))return!1;if(this._indentBy>0){const e=t.getAttribute(\"listIndent\"),n=t.getAttribute(\"listType\");let o=t.previousSibling;for(;o&&o.is(\"element\",\"listItem\")&&o.getAttribute(\"listIndent\")>=e;){if(o.getAttribute(\"listIndent\")==e)return o.getAttribute(\"listType\")==n;o=o.previousSibling}return!1}return!0}}function Ip(t,e){const n=e.mapper,o=e.writer,i=\"numbered\"==t.getAttribute(\"listType\")?\"ol\":\"ul\",r=function(t){const e=t.createContainerElement(\"li\");return e.getFillerOffset=zp,e}(o),s=o.createContainerElement(i,null);return o.insert(o.createPositionAt(s,0),r),n.bindElements(t,r),r}function Rp(t,e,n,o){const i=e.parent,r=n.mapper,s=n.writer;let a=r.toViewPosition(o.createPositionBefore(t));const c=Np(t.previousSibling,{sameIndent:!0,smallerIndent:!0,listIndent:t.getAttribute(\"listIndent\")}),l=t.previousSibling;if(c&&c.getAttribute(\"listIndent\")==t.getAttribute(\"listIndent\")){const t=r.toViewElement(c);a=s.breakContainer(s.createPositionAfter(t))}else if(l&&\"listItem\"==l.name){a=r.toViewPosition(o.createPositionAt(l,\"end\"));const t=r.findMappedViewAncestor(a),e=function(t){for(const e of t.getChildren())if(\"ul\"==e.name||\"ol\"==e.name)return e;return null}(t);a=e?s.createPositionBefore(e):s.createPositionAt(t,\"end\")}else a=r.toViewPosition(o.createPositionBefore(t));if(a=Op(a),s.insert(a,i),l&&\"listItem\"==l.name){const t=r.toViewElement(l),n=s.createRange(s.createPositionAt(t,0),a).getWalker({ignoreElementEnd:!0});for(const t of n)if(t.item.is(\"element\",\"li\")){const o=s.breakContainer(s.createPositionBefore(t.item)),i=t.item.parent,r=s.createPositionAt(e,\"end\");Fp(s,r.nodeBefore,r.nodeAfter),s.move(s.createRangeOn(i),r),n.position=o}}else{const n=i.nextSibling;if(n&&(n.is(\"element\",\"ul\")||n.is(\"element\",\"ol\"))){let o=null;for(const e of n.getChildren()){const n=r.toModelElement(e);if(!(n&&n.getAttribute(\"listIndent\")>t.getAttribute(\"listIndent\")))break;o=e}o&&(s.breakContainer(s.createPositionAfter(o)),s.move(s.createRangeOn(o.parent),s.createPositionAt(e,\"end\")))}}Fp(s,i,i.nextSibling),Fp(s,i.previousSibling,i)}function Fp(t,e,n){return!e||!n||\"ul\"!=e.name&&\"ol\"!=e.name||e.name!=n.name||e.getAttribute(\"class\")!==n.getAttribute(\"class\")?null:t.mergeContainers(t.createPositionAfter(e))}function Op(t){return t.getLastMatchingPosition((t=>t.item.is(\"uiElement\")))}function Np(t,e){const n=!!e.sameIndent,o=!!e.smallerIndent,i=e.listIndent;let r=t;for(;r&&\"listItem\"==r.name;){const t=r.getAttribute(\"listIndent\");if(n&&i==t||o&&i>t)return r;r=\"forward\"===e.direction?r.nextSibling:r.previousSibling}return null}function Mp(t,e,n,o){t.ui.componentFactory.add(e,(i=>{const r=t.commands.get(e),s=new Bd(i);return s.set({label:n,icon:o,tooltip:!0,isToggleable:!0}),s.bind(\"isOn\",\"isEnabled\").to(r,\"value\",\"isEnabled\"),s.on(\"execute\",(()=>{t.execute(e),t.editing.view.focus()})),s}))}function Vp(t,e){const n=[],o=t.parent,i={ignoreElementEnd:!0,startPosition:t,shallow:!0,direction:e},r=o.getAttribute(\"listIndent\"),s=[...new Os(i)].filter((t=>t.item.is(\"element\"))).map((t=>t.item));for(const t of s){if(!t.is(\"element\",\"listItem\"))break;if(t.getAttribute(\"listIndent\")r)){if(t.getAttribute(\"listType\")!==o.getAttribute(\"listType\"))break;if(t.getAttribute(\"listStyle\")!==o.getAttribute(\"listStyle\"))break;\"backward\"===e?n.unshift(t):n.push(t)}}return n}function zp(){const t=!this.isEmpty&&(\"ul\"==this.getChild(0).name||\"ol\"==this.getChild(0).name);return this.isEmpty||t?0:Go.call(this)}function Lp(t){return(e,n,o)=>{const i=o.consumable;if(!i.test(n.item,\"insert\")||!i.test(n.item,\"attribute:listType\")||!i.test(n.item,\"attribute:listIndent\"))return;i.consume(n.item,\"insert\"),i.consume(n.item,\"attribute:listType\"),i.consume(n.item,\"attribute:listIndent\");const r=n.item;Rp(r,Ip(r,o),o,t)}}function Hp(t,e,n){if(!n.consumable.consume(e.item,\"attribute:listType\"))return;const o=n.mapper.toViewElement(e.item),i=n.writer;i.breakContainer(i.createPositionBefore(o)),i.breakContainer(i.createPositionAfter(o));const r=o.parent,s=\"numbered\"==e.attributeNewValue?\"ol\":\"ul\";i.rename(s,r)}function Kp(t,e,n){const o=n.mapper.toViewElement(e.item).parent,i=n.writer;Fp(i,o,o.nextSibling),Fp(i,o.previousSibling,o);for(const t of e.item.getChildren())n.consumable.consume(t,\"insert\")}function jp(t,e,n){if(\"listItem\"!=e.item.name){let t=n.mapper.toViewPosition(e.range.start);const o=n.writer,i=[];for(;(\"ul\"==t.parent.name||\"ol\"==t.parent.name)&&(t=o.breakContainer(t),\"li\"==t.parent.name);){const e=t,n=o.createPositionAt(t.parent,\"end\");if(!e.isEqual(n)){const t=o.remove(o.createRange(e,n));i.push(t)}t=o.createPositionAfter(t.parent)}if(i.length>0){for(let e=0;e0){const e=Fp(o,n,n.nextSibling);e&&e.parent==n&&t.offset--}}Fp(o,t.nodeBefore,t.nodeAfter)}}}function qp(t,e,n){const o=n.mapper.toViewPosition(e.position),i=o.nodeBefore,r=o.nodeAfter;Fp(n.writer,i,r)}function Wp(t,e,n){if(n.consumable.consume(e.viewItem,{name:!0})){const t=n.writer,o=t.createElement(\"listItem\"),i=function(t){let e=0,n=t.parent;for(;n;){if(n.is(\"element\",\"li\"))e++;else{const t=n.previousSibling;t&&t.is(\"element\",\"li\")&&e++}n=n.parent}return e}(e.viewItem);t.setAttribute(\"listIndent\",i,o);const r=e.viewItem.parent&&\"ol\"==e.viewItem.parent.name?\"numbered\":\"bulleted\";if(t.setAttribute(\"listType\",r,o),!n.safeInsert(o,e.modelCursor))return;const s=function(t,e,n){const{writer:o,schema:i}=n;let r=o.createPositionAfter(t);for(const s of e)if(\"ul\"==s.name||\"ol\"==s.name)r=n.convertItem(s,r).modelCursor;else{const e=n.convertItem(s,o.createPositionAt(t,\"end\")),a=e.modelRange.start.nodeAfter;a&&a.is(\"element\")&&!i.checkChild(t,a.name)&&(t=e.modelCursor.parent.is(\"element\",\"listItem\")?e.modelCursor.parent:Yp(e.modelCursor),r=o.createPositionAfter(t))}return r}(o,e.viewItem.getChildren(),n);e.modelRange=t.createRange(e.modelCursor,s),n.updateConversionResult(o,e)}}function Gp(t,e,n){if(n.consumable.test(e.viewItem,{name:!0})){const t=Array.from(e.viewItem.getChildren());for(const e of t){!(e.is(\"element\",\"li\")||Xp(e))&&e._remove()}}}function $p(t,e,n){if(n.consumable.test(e.viewItem,{name:!0})){if(0===e.viewItem.childCount)return;const t=[...e.viewItem.getChildren()];let n=!1,o=!0;for(const e of t)n&&!Xp(e)&&e._remove(),e.is(\"$text\")?(o&&(e._data=e.data.replace(/^\\s+/,\"\")),e.nextSibling&&!Xp(e.nextSibling)||(e._data=e.data.replace(/\\s+$/,\"\"))):Xp(e)&&(n=!0),o=!1}}function Up(t){return(e,n)=>{if(n.isPhantom)return;const o=n.modelPosition.nodeBefore;if(o&&o.is(\"element\",\"listItem\")){const e=n.mapper.toViewElement(o),i=e.getAncestors().find(Xp),r=t.createPositionAt(e,0).getWalker();for(const t of r){if(\"elementStart\"==t.type&&t.item.is(\"element\",\"li\")){n.viewPosition=t.previousPosition;break}if(\"elementEnd\"==t.type&&t.item==i){n.viewPosition=t.nextPosition;break}}}}}function Jp(t,[e,n]){let o,i=e.is(\"documentFragment\")?e.getChild(0):e;if(o=n?this.createSelection(n):this.document.selection,i&&i.is(\"element\",\"listItem\")){const t=o.getFirstPosition();let e=null;if(t.parent.is(\"element\",\"listItem\")?e=t.parent:t.nodeBefore&&t.nodeBefore.is(\"element\",\"listItem\")&&(e=t.nodeBefore),e){const t=e.getAttribute(\"listIndent\");if(t>0)for(;i&&i.is(\"element\",\"listItem\");)i._setAttribute(\"listIndent\",i.getAttribute(\"listIndent\")+t),i=i.nextSibling}}}function Yp(t){const e=new Os({startPosition:t});let n;do{n=e.next()}while(!n.value.item.is(\"element\",\"listItem\"));return n.value.item}function Qp(t,e,n,o,i,r){const s=Np(e.nodeBefore,{sameIndent:!0,smallerIndent:!0,listIndent:t,foo:\"b\"}),a=i.mapper,c=i.writer,l=s?s.getAttribute(\"listIndent\"):null;let d;if(s)if(l==t){const t=a.toViewElement(s).parent;d=c.createPositionAfter(t)}else{const t=r.createPositionAt(s,\"end\");d=a.toViewPosition(t)}else d=n;d=Op(d);for(const t of[...o.getChildren()])Xp(t)&&(d=c.move(c.createRangeOn(t),d).end,Fp(c,t,t.nextSibling),Fp(c,t.previousSibling,t))}function Xp(t){return t.is(\"element\",\"ol\")||t.is(\"element\",\"ul\")}class Zp extends rh{static get pluginName(){return\"ListEditing\"}static get requires(){return[rg]}init(){const t=this.editor;t.model.schema.register(\"listItem\",{inheritAllFrom:\"$block\",allowAttributes:[\"listType\",\"listIndent\"]});const e=t.data,n=t.editing;var o;t.model.document.registerPostFixer((e=>function(t,e){const n=t.document.differ.getChanges(),o=new Map;let i=!1;for(const o of n)if(\"insert\"==o.type&&\"listItem\"==o.name)r(o.position);else if(\"insert\"==o.type&&\"listItem\"!=o.name){if(\"$text\"!=o.name){const n=o.position.nodeAfter;n.hasAttribute(\"listIndent\")&&(e.removeAttribute(\"listIndent\",n),i=!0),n.hasAttribute(\"listType\")&&(e.removeAttribute(\"listType\",n),i=!0),n.hasAttribute(\"listStyle\")&&(e.removeAttribute(\"listStyle\",n),i=!0);for(const e of Array.from(t.createRangeIn(n)).filter((t=>t.item.is(\"element\",\"listItem\"))))r(e.previousPosition)}r(o.position.getShiftedBy(o.length))}else\"remove\"==o.type&&\"listItem\"==o.name?r(o.position):(\"attribute\"==o.type&&\"listIndent\"==o.attributeKey||\"attribute\"==o.type&&\"listType\"==o.attributeKey)&&r(o.range.start);for(const t of o.values())s(t),a(t);return i;function r(t){const e=t.nodeBefore;if(e&&e.is(\"element\",\"listItem\")){let t=e;if(o.has(t))return;for(let e=t.previousSibling;e&&e.is(\"element\",\"listItem\");e=t.previousSibling)if(t=e,o.has(t))return;o.set(e,t)}else{const e=t.nodeAfter;e&&e.is(\"element\",\"listItem\")&&o.set(e,e)}}function s(t){let n=0,o=null;for(;t&&t.is(\"element\",\"listItem\");){const r=t.getAttribute(\"listIndent\");if(r>n){let s;null===o?(o=r-n,s=n):(o>r&&(o=r),s=r-o),e.setAttribute(\"listIndent\",s,t),i=!0}else o=null,n=t.getAttribute(\"listIndent\")+1;t=t.nextSibling}}function a(t){let n=[],o=null;for(;t&&t.is(\"element\",\"listItem\");){const r=t.getAttribute(\"listIndent\");if(o&&o.getAttribute(\"listIndent\")>r&&(n=n.slice(0,r+1)),0!=r)if(n[r]){const o=n[r];t.getAttribute(\"listType\")!=o&&(e.setAttribute(\"listType\",o,t),i=!0)}else n[r]=t.getAttribute(\"listType\");o=t,t=t.nextSibling}}}(t.model,e))),n.mapper.registerViewToModelLength(\"li\",tf),e.mapper.registerViewToModelLength(\"li\",tf),n.mapper.on(\"modelToViewPosition\",Up(n.view)),n.mapper.on(\"viewToModelPosition\",(o=t.model,(t,e)=>{const n=e.viewPosition,i=n.parent,r=e.mapper;if(\"ul\"==i.name||\"ol\"==i.name){if(n.isAtEnd){const t=r.toModelElement(n.nodeBefore),i=r.getModelLength(n.nodeBefore);e.modelPosition=o.createPositionBefore(t).getShiftedBy(i)}else{const t=r.toModelElement(n.nodeAfter);e.modelPosition=o.createPositionBefore(t)}t.stop()}else if(\"li\"==i.name&&n.nodeBefore&&(\"ul\"==n.nodeBefore.name||\"ol\"==n.nodeBefore.name)){const s=r.toModelElement(i);let a=1,c=n.nodeBefore;for(;c&&Xp(c);)a+=r.getModelLength(c),c=c.previousSibling;e.modelPosition=o.createPositionBefore(s).getShiftedBy(a),t.stop()}})),e.mapper.on(\"modelToViewPosition\",Up(n.view)),t.conversion.for(\"editingDowncast\").add((e=>{e.on(\"insert\",jp,{priority:\"high\"}),e.on(\"insert:listItem\",Lp(t.model)),e.on(\"attribute:listType:listItem\",Hp,{priority:\"high\"}),e.on(\"attribute:listType:listItem\",Kp,{priority:\"low\"}),e.on(\"attribute:listIndent:listItem\",function(t){return(e,n,o)=>{if(!o.consumable.consume(n.item,\"attribute:listIndent\"))return;const i=o.mapper.toViewElement(n.item),r=o.writer;r.breakContainer(r.createPositionBefore(i)),r.breakContainer(r.createPositionAfter(i));const s=i.parent,a=s.previousSibling,c=r.createRangeOn(s);r.remove(c),a&&a.nextSibling&&Fp(r,a,a.nextSibling),Qp(n.attributeOldValue+1,n.range.start,c.start,i,o,t),Rp(n.item,i,o,t);for(const t of n.item.getChildren())o.consumable.consume(t,\"insert\")}}(t.model)),e.on(\"remove:listItem\",function(t){return(e,n,o)=>{const i=o.mapper.toViewPosition(n.position).getLastMatchingPosition((t=>!t.item.is(\"element\",\"li\"))).nodeAfter,r=o.writer;r.breakContainer(r.createPositionBefore(i)),r.breakContainer(r.createPositionAfter(i));const s=i.parent,a=s.previousSibling,c=r.createRangeOn(s),l=r.remove(c);a&&a.nextSibling&&Fp(r,a,a.nextSibling),Qp(o.mapper.toModelElement(i).getAttribute(\"listIndent\")+1,n.position,c.start,i,o,t);for(const t of r.createRangeIn(l).getItems())o.mapper.unbindViewElement(t);e.stop()}}(t.model)),e.on(\"remove\",qp,{priority:\"low\"})})),t.conversion.for(\"dataDowncast\").add((e=>{e.on(\"insert\",jp,{priority:\"high\"}),e.on(\"insert:listItem\",Lp(t.model))})),t.conversion.for(\"upcast\").add((t=>{t.on(\"element:ul\",Gp,{priority:\"high\"}),t.on(\"element:ol\",Gp,{priority:\"high\"}),t.on(\"element:li\",$p,{priority:\"high\"}),t.on(\"element:li\",Wp)})),t.model.on(\"insertContent\",Jp,{priority:\"high\"}),t.commands.add(\"numberedList\",new Dp(t,\"numbered\")),t.commands.add(\"bulletedList\",new Dp(t,\"bulleted\")),t.commands.add(\"indentList\",new Pp(t,\"forward\")),t.commands.add(\"outdentList\",new Pp(t,\"backward\"));const i=n.view.document;this.listenTo(i,\"enter\",((t,e)=>{const n=this.editor.model.document,o=n.selection.getLastPosition().parent;n.selection.isCollapsed&&\"listItem\"==o.name&&o.isEmpty&&(this.editor.execute(\"outdentList\"),e.preventDefault(),t.stop())})),this.listenTo(i,\"delete\",((t,e)=>{if(\"backward\"!==e.direction)return;const n=this.editor.model.document.selection;if(!n.isCollapsed)return;const o=n.getFirstPosition();if(!o.isAtStart)return;const i=o.parent;if(\"listItem\"!==i.name)return;i.previousSibling&&\"listItem\"===i.previousSibling.name||(this.editor.execute(\"outdentList\"),e.preventDefault(),t.stop())}),{priority:\"high\"});const r=t=>(e,n)=>{this.editor.commands.get(t).isEnabled&&(this.editor.execute(t),n())};t.keystrokes.set(\"Tab\",r(\"indentList\")),t.keystrokes.set(\"Shift+Tab\",r(\"outdentList\"))}afterInit(){const t=this.editor.commands,e=t.get(\"indent\"),n=t.get(\"outdent\");e&&e.registerChildCommand(t.get(\"indentList\")),n&&n.registerChildCommand(t.get(\"outdentList\"))}}function tf(t){let e=1;for(const n of t.getChildren())if(\"ul\"==n.name||\"ol\"==n.name)for(const t of n.getChildren())e+=tf(t);return e}var ef='',nf='';class of extends rh{init(){const t=this.editor.t;Mp(this.editor,\"numberedList\",t(\"Numbered List\"),ef),Mp(this.editor,\"bulletedList\",t(\"Bulleted List\"),nf)}}class rf extends ah{constructor(t,e){super(t),this._defaultType=e}refresh(){this.value=this._getValue(),this.isEnabled=this._checkEnabled()}execute(t={}){const e=this.editor.model;let n=[...e.document.selection.getSelectedBlocks()].filter((t=>t.is(\"element\",\"listItem\"))).map((t=>{const n=e.change((e=>e.createPositionAt(t,0)));return[...Vp(n,\"backward\"),...Vp(n,\"forward\")]})).flat();n=[...new Set(n)],n.length&&e.change((e=>{for(const o of n)e.setAttribute(\"listStyle\",t.type||this._defaultType,o)}))}_getValue(){const t=this.editor.model.document.selection.getFirstPosition().parent;return t&&t.is(\"element\",\"listItem\")?t.getAttribute(\"listStyle\"):null}_checkEnabled(){const t=this.editor,e=t.commands.get(\"numberedList\"),n=t.commands.get(\"bulletedList\");return e.isEnabled||n.isEnabled}}const sf=\"default\";class af extends rh{static get requires(){return[Zp]}static get pluginName(){return\"ListStyleEditing\"}init(){const t=this.editor,e=t.model;e.schema.extend(\"listItem\",{allowAttributes:[\"listStyle\"]}),t.commands.add(\"listStyle\",new rf(t,sf)),this.listenTo(t.commands.get(\"indentList\"),\"_executeCleanup\",function(t){return(e,n)=>{let o;const i=n[0],r=i.getAttribute(\"listIndent\"),s=n.filter((t=>t.getAttribute(\"listIndent\")===r));if(i.previousSibling.getAttribute(\"listIndent\")+1===r)o=sf;else{const t=Np(i.previousSibling,{sameIndent:!0,direction:\"backward\",listIndent:r});o=t.getAttribute(\"listStyle\")}t.model.change((t=>{for(const e of s)t.setAttribute(\"listStyle\",o,e)}))}}(t)),this.listenTo(t.commands.get(\"outdentList\"),\"_executeCleanup\",function(t){return(e,n)=>{if(!(n=n.reverse().filter((t=>t.is(\"element\",\"listItem\")))).length)return;const o=n[0].getAttribute(\"listIndent\"),i=n[0].getAttribute(\"listType\");let r=n[0].previousSibling;if(r.is(\"element\",\"listItem\"))for(;r.getAttribute(\"listIndent\")!==o;)r=r.previousSibling;else r=null;r||(r=n[n.length-1].nextSibling),r&&r.is(\"element\",\"listItem\")&&r.getAttribute(\"listType\")===i&&t.model.change((t=>{const e=n.filter((t=>t.getAttribute(\"listIndent\")===o));for(const n of e)t.setAttribute(\"listStyle\",r.getAttribute(\"listStyle\"),n)}))}}(t)),this.listenTo(t.commands.get(\"bulletedList\"),\"_executeCleanup\",cf(t)),this.listenTo(t.commands.get(\"numberedList\"),\"_executeCleanup\",cf(t)),e.document.registerPostFixer(function(t){return n=>{let o=!1;const i=lf(t.model.document.differ.getChanges()).filter((t=>\"todo\"!==t.getAttribute(\"listType\")));if(!i.length)return o;let r=i[i.length-1].nextSibling;if((!r||!r.is(\"element\",\"listItem\"))&&(r=i[i.length-1].previousSibling,r)){const t=i[0].getAttribute(\"listIndent\");for(;r.is(\"element\",\"listItem\")&&r.getAttribute(\"listIndent\")!==t&&(r=r.previousSibling,r););}for(const t of i)t.hasAttribute(\"listStyle\")||(e(r,t)?n.setAttribute(\"listStyle\",r.getAttribute(\"listStyle\"),t):n.setAttribute(\"listStyle\",sf,t),o=!0);return o};function e(t,e){if(!t)return!1;const n=t.getAttribute(\"listStyle\");return!!n&&(n!==sf&&t.getAttribute(\"listType\")===e.getAttribute(\"listType\"))}}(t)),t.conversion.for(\"upcast\").add((t=>{t.on(\"element:li\",((t,e,n)=>{const o=e.viewItem.parent.getStyle(\"list-style-type\")||sf,i=e.modelRange.start.nodeAfter||e.modelRange.end.nodeBefore;n.writer.setAttribute(\"listStyle\",o,i)}),{priority:\"low\"})})),t.conversion.for(\"downcast\").add(function(){return n=>{n.on(\"attribute:listStyle:listItem\",((n,o,i)=>{const r=i.writer,s=o.item,a=Np(s.previousSibling,{sameIndent:!0,listIndent:s.getAttribute(\"listIndent\"),direction:\"backward\"}),c=i.mapper.toViewElement(s);t(s,a)||r.breakContainer(r.createPositionBefore(c)),e(r,o.attributeNewValue,c.parent)}),{priority:\"low\"})};function t(t,e){return e&&t.getAttribute(\"listType\")===e.getAttribute(\"listType\")&&t.getAttribute(\"listIndent\")===e.getAttribute(\"listIndent\")&&t.getAttribute(\"listStyle\")===e.getAttribute(\"listStyle\")}function e(t,e,n){e&&e!==sf?t.setStyle(\"list-style-type\",e,n):t.removeStyle(\"list-style-type\",n)}}()),this._mergeListStyleAttributeWhileMergingLists()}afterInit(){const t=this.editor;t.commands.get(\"todoList\")&&t.model.document.registerPostFixer(function(t){return e=>{const n=lf(t.model.document.differ.getChanges()).filter((t=>\"todo\"===t.getAttribute(\"listType\")&&t.hasAttribute(\"listStyle\")));if(!n.length)return!1;for(const t of n)e.removeAttribute(\"listStyle\",t);return!0}}(t))}_mergeListStyleAttributeWhileMergingLists(){const t=this.editor.model;let e;this.listenTo(t,\"deleteContent\",((t,[n])=>{const o=n.getFirstPosition(),i=n.getLastPosition();if(o.parent===i.parent)return;if(!o.parent.is(\"element\",\"listItem\"))return;const r=i.parent.nextSibling;if(!r||!r.is(\"element\",\"listItem\"))return;const s=Np(o.parent,{sameIndent:!0,listIndent:r.getAttribute(\"listIndent\")});s&&s.getAttribute(\"listType\")===r.getAttribute(\"listType\")&&(e=s)}),{priority:\"high\"}),this.listenTo(t,\"deleteContent\",(()=>{e&&(t.change((t=>{const n=Np(e.nextSibling,{sameIndent:!0,listIndent:e.getAttribute(\"listIndent\"),direction:\"forward\"}),o=[n,...Vp(t.createPositionAt(n,0),\"forward\")];for(const n of o)t.setAttribute(\"listStyle\",e.getAttribute(\"listStyle\"),n)})),e=null)}),{priority:\"low\"})}}function cf(t){return(e,n)=>{n=n.filter((t=>t.is(\"element\",\"listItem\"))),t.model.change((t=>{for(const e of n)t.removeAttribute(\"listStyle\",e)}))}}function lf(t){const e=[];for(const n of t){const t=df(n);t&&t.is(\"element\",\"listItem\")&&e.push(t)}return e}function df(t){return\"attribute\"===t.type?t.range.start.nodeAfter:\"insert\"===t.type?t.position.nodeAfter:null}var hf=n(39),uf={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(hf.a,uf),hf.a.locals;class mf extends Gl{constructor(t){super(t);const e=this.bindTemplate;this.set(\"icon\"),this.set(\"isEnabled\",!0),this.set(\"isOn\",!1),this.set(\"isToggleable\",!1),this.set(\"isVisible\",!0),this.set(\"keystroke\"),this.set(\"label\"),this.set(\"tabindex\",-1),this.set(\"tooltip\"),this.set(\"tooltipPosition\",\"s\"),this.set(\"type\",\"button\"),this.set(\"withText\",!1),this.children=this.createCollection(),this.actionView=this._createActionView(),this.arrowView=this._createArrowView(),this.keystrokes=new nl,this.focusTracker=new hl,this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-splitbutton\",e.if(\"isVisible\",\"ck-hidden\",(t=>!t)),this.arrowView.bindTemplate.if(\"isOn\",\"ck-splitbutton_open\")]},children:this.children})}render(){super.render(),this.children.add(this.actionView),this.children.add(this.arrowView),this.focusTracker.add(this.actionView.element),this.focusTracker.add(this.arrowView.element),this.keystrokes.listenTo(this.element),this.keystrokes.set(\"arrowright\",((t,e)=>{this.focusTracker.focusedElement===this.actionView.element&&(this.arrowView.focus(),e())})),this.keystrokes.set(\"arrowleft\",((t,e)=>{this.focusTracker.focusedElement===this.arrowView.element&&(this.actionView.focus(),e())}))}focus(){this.actionView.focus()}_createActionView(){const t=new Bd;return t.bind(\"icon\",\"isEnabled\",\"isOn\",\"isToggleable\",\"keystroke\",\"label\",\"tabindex\",\"tooltip\",\"tooltipPosition\",\"type\",\"withText\").to(this),t.extendTemplate({attributes:{class:\"ck-splitbutton__action\"}}),t.delegate(\"execute\").to(this),t}_createArrowView(){const t=new Bd,e=t.bindTemplate;return t.icon=Pd,t.extendTemplate({attributes:{class:\"ck-splitbutton__arrow\",\"aria-haspopup\":!0,\"aria-expanded\":e.to(\"isOn\",(t=>String(t)))}}),t.bind(\"isEnabled\").to(this),t.delegate(\"execute\").to(this,\"open\"),t}}var gf=n(40),pf={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(gf.a,pf),gf.a.locals;class ff extends rh{static get pluginName(){return\"ListStyleUI\"}init(){const t=this.editor,e=t.locale.t;t.ui.componentFactory.add(\"bulletedList\",bf({editor:t,parentCommandName:\"bulletedList\",buttonLabel:e(\"Bulleted List\"),buttonIcon:nf,toolbarAriaLabel:e(\"Bulleted list styles toolbar\"),styleDefinitions:[{label:e(\"Toggle the disc list style\"),tooltip:e(\"Disc\"),type:\"disc\",icon:''},{label:e(\"Toggle the circle list style\"),tooltip:e(\"Circle\"),type:\"circle\",icon:''},{label:e(\"Toggle the square list style\"),tooltip:e(\"Square\"),type:\"square\",icon:''}]})),t.ui.componentFactory.add(\"numberedList\",bf({editor:t,parentCommandName:\"numberedList\",buttonLabel:e(\"Numbered List\"),buttonIcon:ef,toolbarAriaLabel:e(\"Numbered list styles toolbar\"),styleDefinitions:[{label:e(\"Toggle the decimal list style\"),tooltip:e(\"Decimal\"),type:\"decimal\",icon:''},{label:e(\"Toggle the decimal with leading zero list style\"),tooltip:e(\"Decimal with leading zero\"),type:\"decimal-leading-zero\",icon:''},{label:e(\"Toggle the lower–roman list style\"),tooltip:e(\"Lower–roman\"),type:\"lower-roman\",icon:''},{label:e(\"Toggle the upper–roman list style\"),tooltip:e(\"Upper-roman\"),type:\"upper-roman\",icon:''},{label:e(\"Toggle the lower–latin list style\"),tooltip:e(\"Lower-latin\"),type:\"lower-latin\",icon:''},{label:e(\"Toggle the upper–latin list style\"),tooltip:e(\"Upper-latin\"),type:\"upper-latin\",icon:''}]}))}}function bf({editor:t,parentCommandName:e,buttonLabel:n,buttonIcon:o,toolbarAriaLabel:i,styleDefinitions:r}){const s=t.commands.get(e),a=t.commands.get(\"listStyle\");return c=>{const l=Gd(c,mf),d=l.buttonView,h=function({editor:t,listStyleCommand:e,parentCommandName:n}){const o=t.locale,i=t.commands.get(n);return({label:r,type:s,icon:a,tooltip:c})=>{const l=new Bd(o);return l.set({label:r,icon:a,tooltip:c}),e.on(\"change:value\",(()=>{l.isOn=e.value===s})),l.on(\"execute\",(()=>{i.value?e.value!==s?t.execute(\"listStyle\",{type:s}):t.execute(\"listStyle\",{type:e._defaultType}):t.model.change((()=>{t.execute(n),t.execute(\"listStyle\",{type:s})})),t.editing.view.focus()})),l}}({editor:t,parentCommandName:e,listStyleCommand:a});return $d(l,r.map(h)),l.bind(\"isEnabled\").to(s),l.toolbarView.ariaLabel=i,l.class=\"ck-list-styles-dropdown\",d.on(\"execute\",(()=>{t.execute(e),t.editing.view.focus()})),d.set({label:n,icon:o,tooltip:!0,isToggleable:!0}),d.bind(\"isOn\").to(s,\"value\",(t=>!!t)),l}}const kf=\"removeFormat\";class wf extends rh{static get pluginName(){return\"RemoveFormatUI\"}init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(kf,(n=>{const o=t.commands.get(kf),i=new Bd(n);return i.set({label:e(\"Remove Format\"),icon:'',tooltip:!0}),i.bind(\"isOn\",\"isEnabled\").to(o,\"value\",\"isEnabled\"),this.listenTo(i,\"execute\",(()=>{t.execute(kf),t.editing.view.focus()})),i}))}}class _f extends ah{refresh(){const t=this.editor.model;this.isEnabled=!!lh(this._getFormattingItems(t.document.selection,t.schema))}execute(){const t=this.editor.model,e=t.schema;t.change((n=>{for(const o of this._getFormattingItems(t.document.selection,e))if(o.is(\"selection\"))for(const t of this._getFormattingAttributes(o,e))n.removeSelectionAttribute(t);else{const t=n.createRangeOn(o);for(const i of this._getFormattingAttributes(o,e))n.removeAttribute(i,t)}}))}*_getFormattingItems(t,e){const n=t=>!!lh(this._getFormattingAttributes(t,e));for(const o of t.getRanges())for(const t of o.getItems())!e.isBlock(t)&&n(t)&&(yield t);for(const e of t.getSelectedBlocks())n(e)&&(yield e);n(t)&&(yield t)}*_getFormattingAttributes(t,e){for(const[n]of t.getAttributes()){const t=e.getAttributeProperties(n);t&&t.isFormatting&&(yield n)}}}class Cf extends rh{static get pluginName(){return\"RemoveFormatEditing\"}init(){const t=this.editor;t.commands.add(\"removeFormat\",new _f(t))}}const Af=\"strikethrough\";class vf extends rh{static get pluginName(){return\"StrikethroughEditing\"}init(){const t=this.editor;t.model.schema.extend(\"$text\",{allowAttributes:Af}),t.model.schema.setAttributeProperties(Af,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:Af,view:\"s\",upcastAlso:[\"del\",\"strike\",{styles:{\"text-decoration\":\"line-through\"}}]}),t.commands.add(Af,new tu(t,Af)),t.keystrokes.set(\"CTRL+SHIFT+X\",\"strikethrough\")}}const yf=\"strikethrough\";class xf extends rh{init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(yf,(n=>{const o=t.commands.get(yf),i=new Bd(n);return i.set({label:e(\"Strikethrough\"),icon:'',keystroke:\"CTRL+SHIFT+X\",tooltip:!0,isToggleable:!0}),i.bind(\"isOn\",\"isEnabled\").to(o,\"value\",\"isEnabled\"),this.listenTo(i,\"execute\",(()=>{t.execute(yf),t.editing.view.focus()})),i}))}}function Ef(t,e,n,o,i=1){e>i?o.setAttribute(t,e,n):o.removeAttribute(t,n)}function Sf(t,e,n={}){const o=t.createElement(\"tableCell\",n);return t.insertElement(\"paragraph\",o),t.insert(o,e),o}function Df(t,e){const n=e.parent.parent,o=parseInt(n.getAttribute(\"headingColumns\")||0),{column:i}=t.getCellLocation(e);return!!o&&i{t.on(\"element:table\",((t,e,n)=>{const o=e.viewItem;if(!n.consumable.test(o,{name:!0}))return;const{rows:i,headingRows:r,headingColumns:s}=function(t){const e={headingRows:0,headingColumns:0},n=[],o=[];let i;for(const r of Array.from(t.getChildren()))if(\"tbody\"===r.name||\"thead\"===r.name||\"tfoot\"===r.name){\"thead\"!==r.name||i||(i=r);const t=Array.from(r.getChildren()).filter((t=>t.is(\"element\",\"tr\")));for(const r of t)if(\"thead\"===r.parent.name&&r.parent===i)e.headingRows++,n.push(r);else{o.push(r);const t=Bf(r);t>e.headingColumns&&(e.headingColumns=t)}}return e.rows=[...n,...o],e}(o),a={};s&&(a.headingColumns=s),r&&(a.headingRows=r);const c=n.writer.createElement(\"table\",a);if(n.safeInsert(c,e.modelCursor)){if(n.consumable.consume(o,{name:!0}),i.forEach((t=>n.convertItem(t,n.writer.createPositionAt(c,\"end\")))),c.isEmpty){const t=n.writer.createElement(\"tableRow\");n.writer.insert(t,n.writer.createPositionAt(c,\"end\")),Sf(n.writer,n.writer.createPositionAt(t,\"end\"))}n.updateConversionResult(c,e)}}))}}function Bf(t){let e=0,n=0;const o=Array.from(t.getChildren()).filter((t=>\"th\"===t.name||\"td\"===t.name));for(;n1||i>1)&&this._recordSpans(n,i,o),this._shouldSkipSlot()||(e=this._formatOutValue(n)),this._nextCellAtColumn=this._column+o}return this._column++,this._column==this._nextCellAtColumn&&this._cellIndex++,e||this.next()}skipRow(t){this._skipRows.add(t)}_advanceToNextRow(){return this._row++,this._column=0,this._cellIndex=0,this._nextCellAtColumn=-1,this.next()}_isOverEndRow(){return void 0!==this._endRow&&this._row>this._endRow}_isOverEndColumn(){return void 0!==this._endColumn&&this._column>this._endColumn}_formatOutValue(t,e=this._row,n=this._column){return{done:!1,value:new If(this,t,e,n)}}_shouldSkipSlot(){const t=this._skipRows.has(this._row),e=this._rowthis._endColumn;return t||e||n||o}_getSpanned(){const t=this._spannedCells.get(this._row);return t&&t.get(this._column)||null}_recordSpans(t,e,n){const o={cell:t,row:this._row,column:this._column};for(let t=this._row;te.id===t.id));if(Ff(t,e[n]))return;n>-1&&e.splice(n,1);let o=0;for(;e[o]&&Of(e[o],t);)o++;e.splice(o,0,t)}_removeDescriptor(t){const e=this._stack,n=e.findIndex((e=>e.id===t));n>-1&&e.splice(n,1)}}function Ff(t,e){return t&&e&&t.priority==e.priority&&Nf(t.classes)==Nf(e.classes)}function Of(t,e){return t.priority>e.priority||!(t.priorityNf(e.classes)}function Nf(t){return Array.isArray(t)?t.sort().join(\",\"):t}In(Rf,vn);var Mf='';const Vf=\"widget-type-around\";function zf(t,e,n){return t&&Kf(t)&&!n.isInline(e)}function Lf(t){return t.getAttribute(Vf)}const Hf=\"ck-widget_selected\";function Kf(t){return!!t.is(\"element\")&&!!t.getCustomProperty(\"widget\")}function jf(t,e,n={}){if(!t.is(\"containerElement\"))throw new _n.a(\"widget-to-widget-wrong-element-type\",null,{element:t});return e.setAttribute(\"contenteditable\",\"false\",t),e.addClass(\"ck-widget\",t),e.setCustomProperty(\"widget\",!0,t),t.getFillerOffset=Uf,n.label&&function(t,e,n){n.setCustomProperty(\"widgetLabel\",e,t)}(t,n.label,e),n.hasSelectionHandle&&function(t,e){const n=e.createUIElement(\"div\",{class:\"ck ck-widget__selection-handle\"},(function(t){const e=this.toDomElement(t),n=new yd;return n.set(\"content\",Mf),n.render(),e.appendChild(n.element),e}));e.insert(e.createPositionAt(t,0),n),e.addClass([\"ck-widget_with-selection-handle\"],t)}(t,e),qf(t,e,((t,e,n)=>n.addClass(o(e.classes),t)),((t,e,n)=>n.removeClass(o(e.classes),t))),t;function o(t){return Array.isArray(t)?t:[t]}}function qf(t,e,n,o){const i=new Rf;i.on(\"change:top\",((e,i)=>{i.oldDescriptor&&o(t,i.oldDescriptor,i.writer),i.newDescriptor&&n(t,i.newDescriptor,i.writer)})),e.setCustomProperty(\"addHighlight\",((t,e,n)=>i.add(e,n)),t),e.setCustomProperty(\"removeHighlight\",((t,e,n)=>i.remove(e,n)),t)}function Wf(t){const e=t.getCustomProperty(\"widgetLabel\");return e?\"function\"==typeof e?e():e:\"\"}function Gf(t,e){return e.addClass([\"ck-editor__editable\",\"ck-editor__nested-editable\"],t),e.setAttribute(\"contenteditable\",t.isReadOnly?\"false\":\"true\",t),t.on(\"change:isReadOnly\",((n,o,i)=>{e.setAttribute(\"contenteditable\",i?\"false\":\"true\",t)})),t.on(\"change:isFocused\",((n,o,i)=>{i?e.addClass(\"ck-editor__nested-editable_focused\",t):e.removeClass(\"ck-editor__nested-editable_focused\",t)})),t}function $f(t,e){const n=new fs(gr.window),o=n.getIntersection(t),i=e.height+$g.arrowVerticalOffset;if(t.top-i>n.top||t.bottom+ie.on(\"insert:table\",((e,n,o)=>{const i=n.item;if(!o.consumable.consume(i,\"insert\"))return;o.consumable.consume(i,\"attribute:headingRows:table\"),o.consumable.consume(i,\"attribute:headingColumns:table\");const r=t&&t.asWidget,s=o.writer.createContainerElement(\"figure\",{class:\"table\"}),a=o.writer.createContainerElement(\"table\");let c;var l,d;o.writer.insert(o.writer.createPositionAt(s,0),a),r&&(l=s,(d=o.writer).setCustomProperty(\"table\",!0,l),c=jf(l,d,{hasSelectionHandle:!0}));const h=new Pf(i),u={headingRows:i.getAttribute(\"headingRows\")||0,headingColumns:i.getAttribute(\"headingColumns\")||0},m=new Map;for(const e of h){const{row:n,cell:r}=e,s=i.getChild(n),c=m.get(n)||tb(a,s,n,u,o);m.set(n,c),o.consumable.consume(r,\"insert\");Zf(e,u,o.writer.createPositionAt(c,\"end\"),o,t)}for(const t of i.getChildren()){const e=t.index;m.has(e)||m.set(e,tb(a,t,e,u,o))}const g=o.mapper.toViewPosition(n.range.start);o.mapper.bindElements(i,r?c:s),o.writer.insert(g,r?c:s)}))}function Yf(t,e){const{writer:n}=e;if(t.parent.is(\"element\",\"tableCell\"))return Qf(t)?n.createContainerElement(\"span\",{style:\"display:inline-block\"}):n.createContainerElement(\"p\")}function Qf(t){return 1===t.parent.childCount&&!ib(t)}function Xf(t,e,n){const{cell:o}=t,i=eb(t,e),r=n.mapper.toViewElement(o);r&&r.name!==i&&function(t,e,n){const o=n.writer,i=n.mapper.toViewElement(t),r=Gf(o.createEditableElement(e,i.getAttributes()),o);qf(r,o,((t,e,n)=>n.addClass(rb(e.classes),t)),((t,e,n)=>n.removeClass(rb(e.classes),t))),o.insert(o.createPositionAfter(i),r),o.move(o.createRangeIn(i),o.createPositionAt(r,0)),o.remove(o.createRangeOn(i)),n.mapper.unbindViewElement(i),n.mapper.bindElements(t,r)}(o,i,n)}function Zf(t,e,n,o,i){const r=i&&i.asWidget,s=eb(t,e),a=r?Gf(o.writer.createEditableElement(s),o.writer):o.writer.createContainerElement(s);r&&qf(a,o.writer,((t,e,n)=>n.addClass(rb(e.classes),t)),((t,e,n)=>n.removeClass(rb(e.classes),t)));const c=t.cell,l=c.getChild(0),d=1===c.childCount&&\"paragraph\"===l.name;if(o.writer.insert(n,a),o.mapper.bindElements(c,a),!r&&!ib(l)&&d){const t=c.getChild(0);o.consumable.consume(t,\"insert\"),o.mapper.bindElements(t,a)}}function tb(t,e,n,o,i){i.consumable.consume(e,\"insert\");const r=e.isEmpty?i.writer.createEmptyElement(\"tr\"):i.writer.createContainerElement(\"tr\");i.mapper.bindElements(e,r);const s=o.headingRows,a=function(t,e,n){const o=nb(t,e);return o||function(t,e,n){const o=n.writer.createContainerElement(t),i=n.writer.createPositionAt(e,\"tbody\"==t?\"end\":0);return n.writer.insert(i,o),o}(t,e,n)}(function(t,e){return t0&&n>=s?n-s:n,l=i.writer.createPositionAt(a,c);return i.writer.insert(l,r),r}function eb(t,e){const{row:n,column:o}=t,{headingColumns:i,headingRows:r}=e;if(r&&r>n)return\"th\";return i&&i>o?\"th\":\"td\"}function nb(t,e){for(const n of e.getChildren())if(n.name==t)return n}function ob(t,e,n){const o=nb(t,e);o&&0===o.childCount&&n.writer.remove(n.writer.createRangeOn(o))}function ib(t){return!![...t.getAttributeKeys()].length}function rb(t){return Array.isArray(t)?t:[t]}class sb extends ah{refresh(){const t=this.editor.model,e=t.document.selection,n=t.schema,o=function(t){const e=t.parent;return e===e.root?e:e.parent}(e.getFirstPosition());this.isEnabled=n.checkChild(o,\"table\")}execute(t={}){const e=this.editor.model,n=e.document.selection,o=this.editor.plugins.get(\"TableUtils\"),i=function(t,e){const n=t.getSelectedElement();if(n){const o=Lf(t);if(o)return e.createPositionAt(n,o);if(e.schema.isBlock(n))return e.createPositionAfter(n)}const o=t.getSelectedBlocks().next().value;if(o){if(o.isEmpty)return e.createPositionAt(o,0);const n=e.createPositionAfter(o);return t.focus.isTouching(n)?n:e.createPositionBefore(o)}return t.focus}(n,e);e.change((n=>{const r=o.createTable(n,t);e.insertContent(r,i),n.setSelection(n.createPositionAt(r.getNodeByPath([0,0,0]),0))}))}}function ab(t){const e=[];for(const n of mb(t.getRanges())){const t=n.getContainedElement();t&&t.is(\"element\",\"tableCell\")&&e.push(t)}return e}function cb(t){const e=[];for(const n of t.getRanges()){const t=n.start.findAncestor(\"tableCell\");t&&e.push(t)}return e}function lb(t){const e=ab(t);return e.length?e:cb(t)}function db(t){return gb(t.map((t=>t.parent.index)))}function hb(t){const e=t[0].findAncestor(\"table\");return gb([...new Pf(e)].filter((e=>t.includes(e.cell))).map((t=>t.column)))}function ub(t,e){if(t.length<2||!function(t){const e=t[0].findAncestor(\"table\"),n=db(t),o=parseInt(e.getAttribute(\"headingRows\")||0);if(!fb(n,o))return!1;const i=parseInt(e.getAttribute(\"headingColumns\")||0);return fb(hb(t),i)}(t))return!1;const n=new Set,o=new Set;let i=0;for(const r of t){const{row:t,column:s}=e.getCellLocation(r),a=parseInt(r.getAttribute(\"rowspan\")||1),c=parseInt(r.getAttribute(\"colspan\")||1);n.add(t),o.add(s),a>1&&n.add(t+a-1),c>1&&o.add(s+c-1),i+=a*c}return function(t,e){const n=Array.from(t.values()),o=Array.from(e.values()),i=Math.max(...n),r=Math.min(...n),s=Math.max(...o),a=Math.min(...o);return(i-r+1)*(s-a+1)}(n,o)==i}function mb(t){return Array.from(t).sort(pb)}function gb(t){const e=t.sort(((t,e)=>t-e));return{first:e[0],last:e[e.length-1]}}function pb(t,e){const n=t.start,o=e.start;return n.isBefore(o)?-1:1}function fb({first:t,last:e},n){return t0){Ef(\"headingRows\",r-n,t,i,0)}const s=parseInt(e.getAttribute(\"headingColumns\")||0);if(s>0){Ef(\"headingColumns\",s-o,t,i,0)}}(a,t,o,i,n),a}function Cb(t,e,n=0){const o=[],i=new Pf(t,{startRow:n,endRow:e-1});for(const t of i){const{row:n,cellHeight:i}=t,r=n+i-1;n1&&(a.rowspan=c);const l=parseInt(t.getAttribute(\"colspan\")||1);l>1&&(a.colspan=l);const d=r+s,h=[...new Pf(i,{startRow:r,endRow:d,includeAllSlots:!0})];let u,m=null;for(const e of h){const{row:o,column:i,cell:r}=e;r===t&&void 0===u&&(u=i),void 0!==u&&u===i&&o===d&&(m=Sf(n,e.getPositionBefore(),a))}return Ef(\"rowspan\",s,t,n),m}function vb(t,e){const n=[],o=new Pf(t);for(const t of o){const{column:o,cellWidth:i}=t,r=o+i-1;o1&&(r.colspan=s);const a=parseInt(t.getAttribute(\"rowspan\")||1);a>1&&(r.rowspan=a);const c=Sf(o,o.createPositionAfter(t),r);return Ef(\"colspan\",i,t,o),c}function xb(t,e,n,o,i,r){const s=parseInt(t.getAttribute(\"colspan\")||1),a=parseInt(t.getAttribute(\"rowspan\")||1);if(n+s-1>i){Ef(\"colspan\",i-n+1,t,r,1)}if(e+a-1>o){Ef(\"rowspan\",o-e+1,t,r,1)}}function Eb(t,e){const n=e.getColumns(t),o=new Array(n).fill(0);for(const{column:e}of new Pf(t))o[e]++;const i=o.reduce(((t,e,n)=>e?t:[...t,n]),[]);if(i.length>0){const n=i[i.length-1];return e.removeColumns(t,{at:n}),!0}return!1}function Sb(t,e){const n=[];for(let e=0;e0){const o=n[n.length-1];return e.removeRows(t,{at:o}),!0}return!1}function Db(t,e){Eb(t,e)||Sb(t,e)}function Tb(t,e){const n=Array.from(new Pf(t,{startColumn:e.firstColumn,endColumn:e.lastColumn,row:e.lastRow}));if(n.every((({cellHeight:t})=>1===t)))return e.lastRow;const o=n[0].cellHeight-1;return e.lastRow+o}function Bb(t,e){const n=Array.from(new Pf(t,{startRow:e.firstRow,endRow:e.lastRow,column:e.lastColumn}));if(n.every((({cellWidth:t})=>1===t)))return e.lastColumn;const o=n[0].cellWidth-1;return e.lastColumn+o}class Pb extends ah{constructor(t,e){super(t),this.direction=e.direction,this.isHorizontal=\"right\"==this.direction||\"left\"==this.direction}refresh(){const t=this._getMergeableCell();this.value=t,this.isEnabled=!!t}execute(){const t=this.editor.model,e=cb(t.document.selection)[0],n=this.value,o=this.direction;t.change((t=>{const i=\"right\"==o||\"down\"==o,r=i?e:n,s=i?n:e,a=s.parent;!function(t,e,n){Ib(t)||(Ib(e)&&n.remove(n.createRangeIn(e)),n.move(n.createRangeIn(t),n.createPositionAt(e,\"end\")));n.remove(t)}(s,r,t);const c=this.isHorizontal?\"colspan\":\"rowspan\",l=parseInt(e.getAttribute(c)||1),d=parseInt(n.getAttribute(c)||1);t.setAttribute(c,l+d,r),t.setSelection(t.createRangeIn(r));const h=this.editor.plugins.get(\"TableUtils\");Db(a.findAncestor(\"table\"),h)}))}_getMergeableCell(){const t=cb(this.editor.model.document.selection)[0];if(!t)return;const e=this.editor.plugins.get(\"TableUtils\"),n=this.isHorizontal?function(t,e,n){const o=t.parent.parent,i=\"right\"==e?t.nextSibling:t.previousSibling,r=(o.getAttribute(\"headingColumns\")||0)>0;if(!i)return;const s=\"right\"==e?t:i,a=\"right\"==e?i:t,{column:c}=n.getCellLocation(s),{column:l}=n.getCellLocation(a),d=parseInt(s.getAttribute(\"colspan\")||1),h=Df(n,s),u=Df(n,a);if(r&&h!=u)return;return c+d===l?i:void 0}(t,this.direction,e):function(t,e){const n=t.parent,o=n.parent,i=o.getChildIndex(n);if(\"down\"==e&&i===o.childCount-1||\"up\"==e&&0===i)return;const r=parseInt(t.getAttribute(\"rowspan\")||1),s=o.getAttribute(\"headingRows\")||0,a=\"down\"==e&&i+r===s,c=\"up\"==e&&i===s;if(s&&(a||c))return;const l=parseInt(t.getAttribute(\"rowspan\")||1),d=\"down\"==e?i+l:i,h=[...new Pf(o,{endRow:d})],u=h.find((e=>e.cell===t)).column,m=h.find((({row:t,cellHeight:n,column:o})=>o===u&&(\"down\"==e?t===d:d===t+n)));return m&&m.cell}(t,this.direction);if(!n)return;const o=this.isHorizontal?\"rowspan\":\"colspan\",i=parseInt(t.getAttribute(o)||1);return parseInt(n.getAttribute(o)||1)===i?n:void 0}}function Ib(t){return 1==t.childCount&&t.getChild(0).is(\"element\",\"paragraph\")&&t.getChild(0).isEmpty}class Rb extends ah{refresh(){const t=lb(this.editor.model.document.selection),e=t[0];if(e){const n=e.findAncestor(\"table\"),o=this.editor.plugins.get(\"TableUtils\").getRows(n)-1,i=db(t),r=0===i.first&&i.last===o;this.isEnabled=!r}else this.isEnabled=!1}execute(){const t=this.editor.model,e=lb(t.document.selection),n=db(e),o=e[0],i=o.findAncestor(\"table\"),r=this.editor.plugins.get(\"TableUtils\").getCellLocation(o).column;t.change((t=>{const e=n.last-n.first+1;this.editor.plugins.get(\"TableUtils\").removeRows(i,{at:n.first,rows:e});const o=function(t,e,n){const o=t.getChild(e)||t.getChild(t.childCount-1);let i=o.getChild(0),r=0;for(const t of o.getChildren()){if(r>n)return i;i=t,r+=parseInt(t.getAttribute(\"colspan\")||1)}return i}(i,n.first,r);t.setSelection(t.createPositionAt(o,0))}))}}class Fb extends ah{refresh(){const t=lb(this.editor.model.document.selection),e=t[0];if(e){const n=e.findAncestor(\"table\"),o=this.editor.plugins.get(\"TableUtils\").getColumns(n),{first:i,last:r}=hb(t);this.isEnabled=r-ie.cell===t)).column,last:o.find((t=>t.cell===e)).column},r=function(t,e,n,o){return parseInt(n.getAttribute(\"colspan\")||1)>1?n:e.previousSibling||n.nextSibling?n.nextSibling||e.previousSibling:o.first?t.reverse().find((({column:t})=>tt>o.last)).cell}(o,t,e,i);this.editor.model.change((t=>{const e=i.last-i.first+1;this.editor.plugins.get(\"TableUtils\").removeColumns(n,{at:i.first,columns:e}),t.setSelection(t.createPositionAt(r,0))}))}}class Ob extends ah{refresh(){const t=lb(this.editor.model.document.selection),e=t.length>0;this.isEnabled=e,this.value=e&&t.every((t=>this._isInHeading(t,t.parent.parent)))}execute(t={}){if(t.forceValue===this.value)return;const e=this.editor.model,n=lb(e.document.selection),o=n[0].findAncestor(\"table\"),{first:i,last:r}=db(n),s=this.value?i:r+1,a=o.getAttribute(\"headingRows\")||0;e.change((t=>{if(s){const e=Cb(o,s,s>a?a:0);for(const{cell:n}of e)Ab(n,s,t)}Ef(\"headingRows\",s,o,t,0)}))}_isInHeading(t,e){const n=parseInt(e.getAttribute(\"headingRows\")||0);return!!n&&t.parent.index0;this.isEnabled=n,this.value=n&&t.every((t=>Df(e,t)))}execute(t={}){if(t.forceValue===this.value)return;const e=this.editor.model,n=lb(e.document.selection),o=n[0].findAncestor(\"table\"),{first:i,last:r}=hb(n),s=this.value?i:r+1;e.change((t=>{if(s){const e=vb(o,s);for(const{cell:n,column:o}of e)yb(n,o,s,t)}Ef(\"headingColumns\",s,o,t,0)}))}}class Mb extends rh{static get pluginName(){return\"TableUtils\"}init(){this.decorate(\"insertColumns\"),this.decorate(\"insertRows\")}getCellLocation(t){const e=t.parent,n=e.parent,o=n.getChildIndex(e),i=new Pf(n,{row:o});for(const{cell:e,row:n,column:o}of i)if(e===t)return{row:n,column:o}}createTable(t,e){const n=t.createElement(\"table\");return Vb(t,n,0,parseInt(e.rows)||2,parseInt(e.columns)||2),e.headingRows&&Ef(\"headingRows\",e.headingRows,n,t,0),e.headingColumns&&Ef(\"headingColumns\",e.headingColumns,n,t,0),n}insertRows(t,e={}){const n=this.editor.model,o=e.at||0,i=e.rows||1,r=void 0!==e.copyStructureFromAbove,s=e.copyStructureFromAbove?o-1:o,a=this.getRows(t),c=this.getColumns(t);n.change((e=>{const n=t.getAttribute(\"headingRows\")||0;if(n>o&&Ef(\"headingRows\",n+i,t,e,0),!r&&(0===o||o===a))return void Vb(e,t,o,i,c);const l=r?Math.max(o,s):o,d=new Pf(t,{endRow:l}),h=new Array(c).fill(1);for(const{row:t,column:n,cellHeight:a,cellWidth:c,cell:l}of d){const d=t+a-1,u=t<=s&&s<=d;t0&&Sf(e,i,o>1?{colspan:o}:null),t+=Math.abs(o)-1}}}))}insertColumns(t,e={}){const n=this.editor.model,o=e.at||0,i=e.columns||1;n.change((e=>{const n=t.getAttribute(\"headingColumns\");o{const{cellsToMove:n,cellsToTrim:o}=function(t,e,n){const o=new Map,i=[];for(const{row:r,column:s,cellHeight:a,cell:c}of new Pf(t,{endRow:n})){const t=r+a-1;if(r>=e&&r<=n&&t>n){const t=a-(n-r+1);o.set(s,{cell:c,rowspan:t})}if(r=e){let o;o=t>=n?n-e+1:t-e+1,i.push({cell:c,rowspan:a-o})}}return{cellsToMove:o,cellsToTrim:i}}(t,i,r);if(n.size){!function(t,e,n,o){const i=[...new Pf(t,{includeAllSlots:!0,row:e})],r=t.getChild(e);let s;for(const{column:t,cell:e,isAnchor:a}of i)if(n.has(t)){const{cell:e,rowspan:i}=n.get(t),a=s?o.createPositionAfter(s):o.createPositionAt(r,0);o.move(o.createRangeOn(e),a),Ef(\"rowspan\",i,e,o),s=e}else a&&(s=e)}(t,r+1,n,e)}for(let n=r;n>=i;n--)e.remove(t.getChild(n));for(const{rowspan:t,cell:n}of o)Ef(\"rowspan\",t,n,e);!function(t,e,n,o){const i=t.getAttribute(\"headingRows\")||0;if(e{!function(t,e,n){const o=t.getAttribute(\"headingColumns\")||0;if(o&&e.first=o;n--)for(const{cell:o,column:i,cellWidth:r}of[...new Pf(t)])i<=n&&r>1&&i+r>n?Ef(\"colspan\",r-1,o,e):i===n&&e.remove(o);Sb(t,this)||Eb(t,this)}))}splitCellVertically(t,e=2){const n=this.editor.model,o=t.parent.parent,i=parseInt(t.getAttribute(\"rowspan\")||1),r=parseInt(t.getAttribute(\"colspan\")||1);n.change((n=>{if(r>1){const{newCellsSpan:o,updatedSpan:s}=Lb(r,e);Ef(\"colspan\",s,t,n);const a={};o>1&&(a.colspan=o),i>1&&(a.rowspan=i);zb(r>e?e-1:r-1,n,n.createPositionAfter(t),a)}if(re===t)),l=a.filter((({cell:e,cellWidth:n,column:o})=>e!==t&&o===c||oc));for(const{cell:t,cellWidth:e}of l)n.setAttribute(\"colspan\",e+s,t);const d={};i>1&&(d.rowspan=i),zb(s,n,n.createPositionAfter(t),d);const h=o.getAttribute(\"headingColumns\")||0;h>c&&Ef(\"headingColumns\",h+s,o,n)}}))}splitCellHorizontally(t,e=2){const n=this.editor.model,o=t.parent,i=o.parent,r=i.getChildIndex(o),s=parseInt(t.getAttribute(\"rowspan\")||1),a=parseInt(t.getAttribute(\"colspan\")||1);n.change((n=>{if(s>1){const o=[...new Pf(i,{startRow:r,endRow:r+s-1,includeAllSlots:!0})],{newCellsSpan:c,updatedSpan:l}=Lb(s,e);Ef(\"rowspan\",l,t,n);const{column:d}=o.find((({cell:e})=>e===t)),h={};c>1&&(h.rowspan=c),a>1&&(h.colspan=a);for(const t of o){const{column:e,row:o}=t,i=e===d,s=(o+r+l)%c==0;o>=r+l&&i&&s&&zb(1,n,t.getPositionBefore(),h)}}if(sr){const t=i+o;n.setAttribute(\"rowspan\",t,e)}const l={};a>1&&(l.colspan=a),Vb(n,i,r+1,o,1,l);const d=i.getAttribute(\"headingRows\")||0;d>r&&Ef(\"headingRows\",d+o,i,n)}}))}getColumns(t){return[...t.getChild(0).getChildren()].reduce(((t,e)=>t+parseInt(e.getAttribute(\"colspan\")||1)),0)}getRows(t){return t.childCount}}function Vb(t,e,n,o,i,r={}){for(let s=0;s{const o=ab(t.document.selection),i=o.shift(),{mergeWidth:r,mergeHeight:s}=function(t,e,n){let o=0,i=0;for(const t of e){const{row:e,column:r}=n.getCellLocation(t);o=qb(t,r,o,\"colspan\"),i=qb(t,e,i,\"rowspan\")}const{row:r,column:s}=n.getCellLocation(t);return{mergeWidth:o-s,mergeHeight:i-r}}(i,o,e);Ef(\"colspan\",r,i,n),Ef(\"rowspan\",s,i,n);for(const t of o)Kb(t,i,n);Db(i.findAncestor(\"table\"),e),n.setSelection(i,\"in\")}))}}function Kb(t,e,n){jb(t)||(jb(e)&&n.remove(n.createRangeIn(e)),n.move(n.createRangeIn(t),n.createPositionAt(e,\"end\"))),n.remove(t)}function jb(t){return 1==t.childCount&&t.getChild(0).is(\"element\",\"paragraph\")&&t.getChild(0).isEmpty}function qb(t,e,n,o){const i=parseInt(t.getAttribute(o)||1);return Math.max(n,e+i)}class Wb extends ah{refresh(){const t=lb(this.editor.model.document.selection);this.isEnabled=t.length>0}execute(){const t=this.editor.model,e=lb(t.document.selection),n=db(e),o=e[0].findAncestor(\"table\"),i=[];for(let e=n.first;e<=n.last;e++)for(const n of o.getChild(e).getChildren())i.push(t.createRangeOn(n));t.change((t=>{t.setSelection(i)}))}}class Gb extends ah{refresh(){const t=lb(this.editor.model.document.selection);this.isEnabled=t.length>0}execute(){const t=this.editor.model,e=lb(t.document.selection),n=e[0],o=e.pop(),i=n.findAncestor(\"table\"),r=this.editor.plugins.get(\"TableUtils\"),s=r.getCellLocation(n),a=r.getCellLocation(o),c=Math.min(s.column,a.column),l=Math.max(s.column,a.column),d=[];for(const e of new Pf(i,{startColumn:c,endColumn:l}))d.push(t.createRangeOn(e.cell));t.change((t=>{t.setSelection(d)}))}}function $b(t){t.document.registerPostFixer((e=>function(t,e){const n=e.document.differ.getChanges();let o=!1;const i=new Set;for(const e of n){let n;\"table\"==e.name&&\"insert\"==e.type&&(n=e.position.nodeAfter),\"tableRow\"!=e.name&&\"tableCell\"!=e.name||(n=e.position.findAncestor(\"table\")),Yb(e)&&(n=e.range.start.findAncestor(\"table\")),n&&!i.has(n)&&(o=Ub(n,t)||o,o=Jb(n,t)||o,i.add(n))}return o}(e,t)))}function Ub(t,e){let n=!1;const o=function(t){const e=parseInt(t.getAttribute(\"headingRows\")||0),n=t.childCount,o=[];for(const{row:i,cell:r,cellHeight:s}of new Pf(t)){if(s<2)continue;const t=it){const e=t-i;o.push({cell:r,rowspan:e})}}return o}(t);if(o.length){n=!0;for(const t of o)Ef(\"rowspan\",t.rowspan,t.cell,e,1)}return n}function Jb(t,e){let n=!1;const o=function(t){const e=new Array(t.childCount).fill(0);for(const{row:n}of new Pf(t,{includeAllSlots:!0}))e[n]++;return e}(t),i=[];for(const[t,e]of o.entries())e||i.push(t);if(i.length){n=!0;for(const n of i.reverse())e.remove(t.getChild(n)),o.splice(n,1)}const r=o[0];if(!o.every((t=>t===r))){const i=o.reduce(((t,e)=>e>t?e:t),0);for(const[r,s]of o.entries()){const o=i-s;if(o){for(let n=0;nfunction(t,e){const n=e.document.differ.getChanges();let o=!1;for(const e of n)\"insert\"==e.type&&\"table\"==e.name&&(o=Xb(e.position.nodeAfter,t)||o),\"insert\"==e.type&&\"tableRow\"==e.name&&(o=Zb(e.position.nodeAfter,t)||o),\"insert\"==e.type&&\"tableCell\"==e.name&&(o=tk(e.position.nodeAfter,t)||o),ek(e)&&(o=tk(e.position.parent,t)||o);return o}(e,t)))}function Xb(t,e){let n=!1;for(const o of t.getChildren())n=Zb(o,e)||n;return n}function Zb(t,e){let n=!1;for(const o of t.getChildren())n=tk(o,e)||n;return n}function tk(t,e){if(0==t.childCount)return e.insertElement(\"paragraph\",t),!0;const n=Array.from(t.getChildren()).filter((t=>t.is(\"$text\")));for(const t of n)e.wrap(e.createRangeOn(t),\"paragraph\");return!!n.length}function ek(t){return!(!t.position||!t.position.parent.is(\"element\",\"tableCell\"))&&(\"insert\"==t.type&&\"$text\"==t.name||\"remove\"==t.type)}function nk(t,e){t.document.registerPostFixer((()=>function(t,e){const n=new Set;for(const e of t.getChanges()){const t=\"attribute\"==e.type?e.range.start.parent:e.position.parent;t.is(\"element\",\"tableCell\")&&n.add(t)}for(const o of n.values())for(const n of[...o.getChildren()].filter((t=>ok(t,e))))t.refreshItem(n);return!1}(t.document.differ,e)))}function ok(t,e){if(!t.is(\"element\",\"paragraph\"))return!1;const n=e.toViewElement(t);return!!n&&Qf(t)!==n.is(\"element\",\"span\")}function ik(t){t.document.registerPostFixer((()=>function(t){const e=t.document.differ,n=new Set;for(const t of e.getChanges()){if(\"attribute\"!=t.type)continue;const e=t.range.start.nodeAfter;e&&e.is(\"element\",\"table\")&&\"headingRows\"==t.attributeKey&&n.add(e)}if(n.size){for(const t of n.values())e.refreshItem(t);return!0}return!1}(t)))}var rk=n(41),sk={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(rk.a,sk),rk.a.locals;class ak extends rh{static get pluginName(){return\"TableEditing\"}init(){const t=this.editor,e=t.model,n=e.schema,o=t.conversion;n.register(\"table\",{allowWhere:\"$block\",allowAttributes:[\"headingRows\",\"headingColumns\"],isObject:!0,isBlock:!0}),n.register(\"tableRow\",{allowIn:\"table\",isLimit:!0}),n.register(\"tableCell\",{allowIn:\"tableRow\",allowAttributes:[\"colspan\",\"rowspan\"],isLimit:!0,isSelectable:!0}),n.extend(\"$block\",{allowIn:\"tableCell\"}),n.addChildCheck(((t,e)=>{if(\"table\"==e.name&&Array.from(t.getNames()).includes(\"table\"))return!1})),o.for(\"upcast\").add(Tf()),o.for(\"editingDowncast\").add(Jf({asWidget:!0})),o.for(\"dataDowncast\").add(Jf()),o.for(\"upcast\").elementToElement({model:\"tableRow\",view:\"tr\"}),o.for(\"upcast\").add((t=>{t.on(\"element:tr\",((t,e)=>{e.viewItem.isEmpty&&0==e.modelCursor.index&&t.stop()}),{priority:\"high\"})})),o.for(\"editingDowncast\").add((t=>t.on(\"insert:tableRow\",((t,e,n)=>{const o=e.item;if(!n.consumable.consume(o,\"insert\"))return;const i=o.parent,r=function(t){for(const e of t.getChildren())if(\"table\"===e.name)return e}(n.mapper.toViewElement(i)),s=i.getChildIndex(o),a=new Pf(i,{row:s}),c={headingRows:i.getAttribute(\"headingRows\")||0,headingColumns:i.getAttribute(\"headingColumns\")||0},l=new Map;for(const t of a){const e=l.get(s)||tb(r,o,s,c,n);l.set(s,e),n.consumable.consume(t.cell,\"insert\"),Zf(t,c,n.writer.createPositionAt(e,\"end\"),n,{asWidget:!0})}})))),o.for(\"editingDowncast\").add((t=>t.on(\"remove:tableRow\",((t,e,n)=>{t.stop();const o=n.writer,i=n.mapper,r=i.toViewPosition(e.position).getLastMatchingPosition((t=>!t.item.is(\"element\",\"tr\"))).nodeAfter,s=r.parent.parent,a=o.createRangeOn(r),c=o.remove(a);for(const t of o.createRangeIn(c).getItems())i.unbindViewElement(t);ob(\"thead\",s,n),ob(\"tbody\",s,n)}),{priority:\"higher\"}))),o.for(\"upcast\").elementToElement({model:\"tableCell\",view:\"td\"}),o.for(\"upcast\").elementToElement({model:\"tableCell\",view:\"th\"}),o.for(\"editingDowncast\").add((t=>t.on(\"insert:tableCell\",((t,e,n)=>{const o=e.item;if(!n.consumable.consume(o,\"insert\"))return;const i=o.parent,r=i.parent,s=r.getChildIndex(i),a=new Pf(r,{row:s}),c={headingRows:r.getAttribute(\"headingRows\")||0,headingColumns:r.getAttribute(\"headingColumns\")||0};for(const t of a)if(t.cell===o){const e=n.mapper.toViewElement(i);return void Zf(t,c,n.writer.createPositionAt(e,i.getChildIndex(o)),n,{asWidget:!0})}})))),t.conversion.for(\"editingDowncast\").elementToElement({model:\"paragraph\",view:Yf,converterPriority:\"high\"}),o.attributeToAttribute({model:\"colspan\",view:\"colspan\"}),o.attributeToAttribute({model:\"rowspan\",view:\"rowspan\"}),o.for(\"editingDowncast\").add((t=>t.on(\"attribute:headingColumns:table\",((t,e,n)=>{const o=e.item;if(!n.consumable.consume(e.item,t.name))return;const i={headingRows:o.getAttribute(\"headingRows\")||0,headingColumns:o.getAttribute(\"headingColumns\")||0},r=e.attributeOldValue,s=e.attributeNewValue,a=(r>s?r:s)-1;for(const t of new Pf(o,{endColumn:a}))Xf(t,i,n)})))),t.commands.add(\"insertTable\",new sb(t)),t.commands.add(\"insertTableRowAbove\",new bb(t,{order:\"above\"})),t.commands.add(\"insertTableRowBelow\",new bb(t,{order:\"below\"})),t.commands.add(\"insertTableColumnLeft\",new kb(t,{order:\"left\"})),t.commands.add(\"insertTableColumnRight\",new kb(t,{order:\"right\"})),t.commands.add(\"removeTableRow\",new Rb(t)),t.commands.add(\"removeTableColumn\",new Fb(t)),t.commands.add(\"splitTableCellVertically\",new wb(t,{direction:\"vertically\"})),t.commands.add(\"splitTableCellHorizontally\",new wb(t,{direction:\"horizontally\"})),t.commands.add(\"mergeTableCells\",new Hb(t)),t.commands.add(\"mergeTableCellRight\",new Pb(t,{direction:\"right\"})),t.commands.add(\"mergeTableCellLeft\",new Pb(t,{direction:\"left\"})),t.commands.add(\"mergeTableCellDown\",new Pb(t,{direction:\"down\"})),t.commands.add(\"mergeTableCellUp\",new Pb(t,{direction:\"up\"})),t.commands.add(\"setTableColumnHeader\",new Nb(t)),t.commands.add(\"setTableRowHeader\",new Ob(t)),t.commands.add(\"selectTableRow\",new Wb(t)),t.commands.add(\"selectTableColumn\",new Gb(t)),ik(e),$b(e),nk(e,t.editing.mapper),Qb(e)}static get requires(){return[Mb]}}var ck=n(42),lk={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(ck.a,lk),ck.a.locals;class dk extends Gl{constructor(t){super(t);const e=this.bindTemplate;this.items=this._createGridCollection(),this.set(\"rows\",0),this.set(\"columns\",0),this.bind(\"label\").to(this,\"columns\",this,\"rows\",((t,e)=>`${e} × ${t}`)),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\"]},children:[{tag:\"div\",attributes:{class:[\"ck-insert-table-dropdown__grid\"]},on:{\"mouseover@.ck-insert-table-dropdown-grid-box\":e.to(\"boxover\")},children:this.items},{tag:\"div\",attributes:{class:[\"ck-insert-table-dropdown__label\"]},children:[{text:e.to(\"label\")}]}],on:{mousedown:e.to((t=>{t.preventDefault()})),click:e.to((()=>{this.fire(\"execute\")}))}}),this.on(\"boxover\",((t,e)=>{const{row:n,column:o}=e.target.dataset;this.set({rows:parseInt(n),columns:parseInt(o)})})),this.on(\"change:columns\",(()=>{this._highlightGridBoxes()})),this.on(\"change:rows\",(()=>{this._highlightGridBoxes()}))}focus(){}focusLast(){}_highlightGridBoxes(){const t=this.rows,e=this.columns;this.items.map(((n,o)=>{const i=Math.floor(o/10){const o=t.commands.get(\"insertTable\"),i=Gd(n);let r;return i.bind(\"isEnabled\").to(o),i.buttonView.set({icon:'',label:e(\"Insert table\"),tooltip:!0}),i.on(\"change:isOpen\",(()=>{r||(r=new dk(n),i.panelView.children.add(r),r.delegate(\"execute\").to(i),i.buttonView.on(\"open\",(()=>{r.rows=0,r.columns=0})),i.on(\"execute\",(()=>{t.execute(\"insertTable\",{rows:r.rows,columns:r.columns}),t.editing.view.focus()})))})),i})),t.ui.componentFactory.add(\"tableColumn\",(t=>{const o=[{type:\"switchbutton\",model:{commandName:\"setTableColumnHeader\",label:e(\"Header column\"),bindIsOn:!0}},{type:\"separator\"},{type:\"button\",model:{commandName:n?\"insertTableColumnLeft\":\"insertTableColumnRight\",label:e(\"Insert column left\")}},{type:\"button\",model:{commandName:n?\"insertTableColumnRight\":\"insertTableColumnLeft\",label:e(\"Insert column right\")}},{type:\"button\",model:{commandName:\"removeTableColumn\",label:e(\"Delete column\")}},{type:\"button\",model:{commandName:\"selectTableColumn\",label:e(\"Select column\")}}];return this._prepareDropdown(e(\"Column\"),'',o,t)})),t.ui.componentFactory.add(\"tableRow\",(t=>{const n=[{type:\"switchbutton\",model:{commandName:\"setTableRowHeader\",label:e(\"Header row\"),bindIsOn:!0}},{type:\"separator\"},{type:\"button\",model:{commandName:\"insertTableRowAbove\",label:e(\"Insert row above\")}},{type:\"button\",model:{commandName:\"insertTableRowBelow\",label:e(\"Insert row below\")}},{type:\"button\",model:{commandName:\"removeTableRow\",label:e(\"Delete row\")}},{type:\"button\",model:{commandName:\"selectTableRow\",label:e(\"Select row\")}}];return this._prepareDropdown(e(\"Row\"),'',n,t)})),t.ui.componentFactory.add(\"mergeTableCells\",(t=>{const o=[{type:\"button\",model:{commandName:\"mergeTableCellUp\",label:e(\"Merge cell up\")}},{type:\"button\",model:{commandName:n?\"mergeTableCellRight\":\"mergeTableCellLeft\",label:e(\"Merge cell right\")}},{type:\"button\",model:{commandName:\"mergeTableCellDown\",label:e(\"Merge cell down\")}},{type:\"button\",model:{commandName:n?\"mergeTableCellLeft\":\"mergeTableCellRight\",label:e(\"Merge cell left\")}},{type:\"separator\"},{type:\"button\",model:{commandName:\"splitTableCellVertically\",label:e(\"Split cell vertically\")}},{type:\"button\",model:{commandName:\"splitTableCellHorizontally\",label:e(\"Split cell horizontally\")}}];return this._prepareMergeSplitButtonDropdown(e(\"Merge cells\"),'',o,t)}))}_prepareDropdown(t,e,n,o){const i=this.editor,r=Gd(o),s=this._fillDropdownWithListOptions(r,n);return r.buttonView.set({label:t,icon:e,tooltip:!0}),r.bind(\"isEnabled\").toMany(s,\"isEnabled\",((...t)=>t.some((t=>t)))),this.listenTo(r,\"execute\",(t=>{i.execute(t.source.commandName),i.editing.view.focus()})),r}_prepareMergeSplitButtonDropdown(t,e,n,o){const i=this.editor,r=Gd(o,mf);return this._fillDropdownWithListOptions(r,n),r.buttonView.set({label:t,icon:e,tooltip:!0,isEnabled:!0}),this.listenTo(r.buttonView,\"execute\",(()=>{i.execute(\"mergeTableCells\"),i.editing.view.focus()})),this.listenTo(r,\"execute\",(t=>{i.execute(t.source.commandName),i.editing.view.focus()})),r}_fillDropdownWithListOptions(t,e){const n=this.editor,o=[],i=new Rn;for(const t of e)mk(t,n,o,i);return Ud(t,i,n.ui.componentFactory),o}}function mk(t,e,n,o){const i=t.model=new dg(t.model),{commandName:r,bindIsOn:s}=t.model;if(\"button\"===t.type||\"switchbutton\"===t.type){const t=e.commands.get(r);n.push(t),i.set({commandName:r}),i.bind(\"isEnabled\").to(t),s&&i.bind(\"isOn\").to(t,\"value\")}i.set({withText:!0}),o.add(t)}var gk=n(43),pk={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(gk.a,pk),gk.a.locals;class fk extends rh{static get pluginName(){return\"TableSelection\"}static get requires(){return[Mb]}init(){const t=this.editor.model;this.listenTo(t,\"deleteContent\",((t,e)=>this._handleDeleteContent(t,e)),{priority:\"high\"}),this._defineSelectionConverter(),this._enablePluginDisabling()}getSelectedTableCells(){const t=ab(this.editor.model.document.selection);return 0==t.length?null:t}getSelectionAsFragment(){const t=this.getSelectedTableCells();return t?this.editor.model.change((e=>{const n=e.createDocumentFragment(),o=this.editor.plugins.get(\"TableUtils\"),{first:i,last:r}=hb(t),{first:s,last:a}=db(t),c=t[0].findAncestor(\"table\");let l=a,d=r;if(ub(t,o)){const t={firstColumn:i,lastColumn:r,firstRow:s,lastRow:a};l=Tb(c,t),d=Bb(c,t)}const h=_b(c,{startRow:s,startColumn:i,endRow:l,endColumn:d},e);return e.insert(h,n,0),n})):null}setCellSelection(t,e){const n=this._getCellsToSelect(t,e);this.editor.model.change((t=>{t.setSelection(n.cells.map((e=>t.createRangeOn(e))),{backward:n.backward})}))}getFocusCell(){const t=[...this.editor.model.document.selection.getRanges()].pop().getContainedElement();return t&&t.is(\"element\",\"tableCell\")?t:null}getAnchorCell(){const t=lh(this.editor.model.document.selection.getRanges()).getContainedElement();return t&&t.is(\"element\",\"tableCell\")?t:null}_defineSelectionConverter(){const t=this.editor,e=new Set;t.conversion.for(\"editingDowncast\").add((t=>t.on(\"selection\",((t,n,o)=>{const i=o.writer;!function(t){for(const n of e)t.removeClass(\"ck-editor__editable_selected\",n);e.clear()}(i);const r=this.getSelectedTableCells();if(!r)return;for(const t of r){const n=o.mapper.toViewElement(t);i.addClass(\"ck-editor__editable_selected\",n),e.add(n)}const s=o.mapper.toViewElement(r[r.length-1]);i.setSelection(s,0)}),{priority:\"lowest\"})))}_enablePluginDisabling(){const t=this.editor;this.on(\"change:isEnabled\",(()=>{if(!this.isEnabled){const e=this.getSelectedTableCells();if(!e)return;t.model.change((n=>{const o=n.createPositionAt(e[0],0),i=t.model.schema.getNearestSelectionRange(o);n.setSelection(i)}))}}))}_handleDeleteContent(t,e){const[n,o]=e,i=this.editor.model,r=!o||\"backward\"==o.direction,s=ab(n);s.length&&(t.stop(),i.change((t=>{const e=s[r?s.length-1:0];i.change((t=>{for(const e of s)i.deleteContent(t.createSelection(e,\"in\"))}));const o=i.schema.getNearestSelectionRange(t.createPositionAt(e,0));n.is(\"documentSelection\")?t.setSelection(o):n.setTo(o)})))}_getCellsToSelect(t,e){const n=this.editor.plugins.get(\"TableUtils\"),o=n.getCellLocation(t),i=n.getCellLocation(e),r=Math.min(o.row,i.row),s=Math.max(o.row,i.row),a=Math.min(o.column,i.column),c=Math.max(o.column,i.column),l=new Array(s-r+1).fill(null).map((()=>[])),d={startRow:r,endRow:s,startColumn:a,endColumn:c};for(const{row:e,cell:n}of new Pf(t.findAncestor(\"table\"),d))l[e-r].push(n);const h=i.rowt.reverse())),{cells:l.flat(),backward:h||u}}}class bk extends rh{static get pluginName(){return\"TableClipboard\"}static get requires(){return[fk,Mb]}init(){const t=this.editor,e=t.editing.view.document;this.listenTo(e,\"copy\",((t,e)=>this._onCopyCut(t,e))),this.listenTo(e,\"cut\",((t,e)=>this._onCopyCut(t,e))),this.listenTo(t.model,\"insertContent\",((t,e)=>this._onInsertContent(t,...e)),{priority:\"high\"}),this.decorate(\"_replaceTableSlotCell\")}_onCopyCut(t,e){const n=this.editor.plugins.get(fk);if(!n.getSelectedTableCells())return;if(\"cut\"==t.name&&this.editor.isReadOnly)return;e.preventDefault(),t.stop();const o=this.editor.data,i=this.editor.editing.view.document,r=o.toView(n.getSelectionAsFragment());i.fire(\"clipboardOutput\",{dataTransfer:e.dataTransfer,content:r,method:t.name})}_onInsertContent(t,e,n){if(n&&!n.is(\"documentSelection\"))return;const o=this.editor.model,i=this.editor.plugins.get(Mb);let r=function(t,e){if(!t.is(\"documentFragment\")&&!t.is(\"element\"))return null;if(t.is(\"element\",\"table\"))return t;if(1==t.childCount&&t.getChild(0).is(\"element\",\"table\"))return t.getChild(0);const n=e.createRangeIn(t);for(const t of n.getItems())if(t.is(\"element\",\"table\")){const o=e.createRange(n.start,e.createPositionBefore(t));if(e.hasContent(o,{ignoreWhitespaces:!0}))return null;const i=e.createRange(e.createPositionAfter(t),n.end);return e.hasContent(i,{ignoreWhitespaces:!0})?null:t}return null}(e,o);if(!r)return;const s=lb(o.document.selection);s.length?(t.stop(),o.change((t=>{const e={width:i.getColumns(r),height:i.getRows(r)},n=function(t,e,n,o){const i=t[0].findAncestor(\"table\"),r=hb(t),s=db(t),a={firstColumn:r.first,lastColumn:r.last,firstRow:s.first,lastRow:s.last},c=1===t.length;c&&(a.lastRow+=e.height-1,a.lastColumn+=e.width-1,function(t,e,n,o){const i=o.getColumns(t),r=o.getRows(t);n>i&&o.insertColumns(t,{at:i,columns:n-i});e>r&&o.insertRows(t,{at:r,rows:e-r})}(i,a.lastRow+1,a.lastColumn+1,o));c||!ub(t,o)?function(t,e,n){const{firstRow:o,lastRow:i,firstColumn:r,lastColumn:s}=e,a={first:o,last:i},c={first:r,last:s};wk(t,r,a,n),wk(t,s+1,a,n),kk(t,o,c,n),kk(t,i+1,c,n,o)}(i,a,n):(a.lastRow=Tb(i,a),a.lastColumn=Bb(i,a));return a}(s,e,t,i),o=n.lastRow-n.firstRow+1,a=n.lastColumn-n.firstColumn+1,c={startRow:0,startColumn:0,endRow:Math.min(o,e.height)-1,endColumn:Math.min(a,e.width)-1};r=_b(r,c,t);const l=s[0].findAncestor(\"table\"),d=this._replaceSelectedCellsWithPasted(r,e,l,n,t);if(this.editor.plugins.get(\"TableSelection\").isEnabled){const e=mb(d.map((e=>t.createRangeOn(e))));t.setSelection(e)}else t.setSelection(d[0],0)}))):Db(r,i)}_replaceSelectedCellsWithPasted(t,e,n,o,i){const{width:r,height:s}=e,a=function(t,e,n){const o=new Array(n).fill(null).map((()=>new Array(e).fill(null)));for(const{column:e,row:n,cell:i}of new Pf(t))o[n][e]=i;return o}(t,r,s),c=[...new Pf(n,{startRow:o.firstRow,endRow:o.lastRow,startColumn:o.firstColumn,endColumn:o.lastColumn,includeAllSlots:!0})],l=[];let d;for(const t of c){const{row:e,column:n}=t;n===o.firstColumn&&(d=t.getPositionBefore());const c=e-o.firstRow,h=n-o.firstColumn,u=a[c%s][h%r],m=u?i.cloneElement(u):null,g=this._replaceTableSlotCell(t,m,d,i);g&&(xb(g,e,n,o.lastRow,o.lastColumn,i),l.push(g),d=i.createPositionAfter(g))}const h=parseInt(n.getAttribute(\"headingRows\")||0),u=parseInt(n.getAttribute(\"headingColumns\")||0),m=o.firstRow_k(t,e,n))).map((({cell:t})=>Ab(t,e,o)))}function wk(t,e,n,o){if(e<1)return;return vb(t,e).filter((({row:t,cellHeight:e})=>_k(t,e,n))).map((({cell:t,column:n})=>yb(t,n,e,o)))}function _k(t,e,n){const o=t+e-1,{first:i,last:r}=n;return t>=i&&t<=r||t=i}class Ck extends rh{static get pluginName(){return\"TableKeyboard\"}static get requires(){return[fk]}init(){const t=this.editor.editing.view.document;this.editor.keystrokes.set(\"Tab\",((...t)=>this._handleTabOnSelectedTable(...t)),{priority:\"low\"}),this.editor.keystrokes.set(\"Tab\",this._getTabHandler(!0),{priority:\"low\"}),this.editor.keystrokes.set(\"Shift+Tab\",this._getTabHandler(!1),{priority:\"low\"}),this.listenTo(t,\"keydown\",((...t)=>this._onKeydown(...t)),{priority:wn.get(\"high\")-10})}_handleTabOnSelectedTable(t,e){const n=this.editor,o=n.model.document.selection.getSelectedElement();o&&o.is(\"element\",\"table\")&&(e(),n.model.change((t=>{t.setSelection(t.createRangeIn(o.getChild(0).getChild(0)))})))}_getTabHandler(t){const e=this.editor;return(n,o)=>{let i=cb(e.model.document.selection)[0];if(i||(i=this.editor.plugins.get(\"TableSelection\").getFocusCell()),!i)return;o();const r=i.parent,s=r.parent,a=s.getChildIndex(r),c=r.getChildIndex(i),l=0===c;if(!t&&l&&0===a)return void e.model.change((t=>{t.setSelection(t.createRangeOn(s))}));const d=c===r.childCount-1,h=a===s.childCount-1;if(t&&h&&d&&(e.execute(\"insertTableRowBelow\"),a===s.childCount-1))return void e.model.change((t=>{t.setSelection(t.createRangeOn(s))}));let u;if(t&&d){const t=s.getChild(a+1);u=t.getChild(0)}else if(!t&&l){const t=s.getChild(a-1);u=t.getChild(t.childCount-1)}else u=r.getChild(c+(t?1:-1));e.model.change((t=>{t.setSelection(t.createRangeIn(u))}))}}_onKeydown(t,e){const n=this.editor,o=e.keyCode;if(!Di(o))return;const i=Ti(o,n.locale.contentLanguageDirection);this._handleArrowKeys(i,e.shiftKey)&&(e.preventDefault(),e.stopPropagation(),t.stop())}_handleArrowKeys(t,e){const n=this.editor.model.document.selection,o=[\"right\",\"down\"].includes(t),i=ab(n);if(i.length){let n;return n=e?this.editor.plugins.get(\"TableSelection\").getFocusCell():o?i[i.length-1]:i[0],this._navigateFromCellInDirection(n,t,e),!0}const r=n.focus.findAncestor(\"tableCell\");return!!r&&(!(e&&!n.isCollapsed&&n.isBackward==o)&&(!!this._isSelectionAtCellEdge(n,r,o)&&(this._navigateFromCellInDirection(r,t,e),!0)))}_isSelectionAtCellEdge(t,e,n){const o=this.editor.model,i=this.editor.model.schema,r=n?t.getLastPosition():t.getFirstPosition();if(!i.getLimitElement(r).is(\"element\",\"tableCell\")){return o.createPositionAt(e,n?\"end\":0).isTouching(r)}const s=o.createSelection(r);return o.modifySelection(s,{direction:n?\"forward\":\"backward\"}),r.isEqual(s.focus)}_navigateFromCellInDirection(t,e,n=!1){const o=this.editor.model,i=t.findAncestor(\"table\"),r=[...new Pf(i,{includeAllSlots:!0})],{row:s,column:a}=r[r.length-1],c=r.find((({cell:e})=>e==t));let{row:l,column:d}=c;switch(e){case\"left\":d--;break;case\"up\":l--;break;case\"right\":d+=c.cellWidth;break;case\"down\":l+=c.cellHeight}if(l<0||l>s||d<0&&l<=0||d>a&&l>=s)return void o.change((t=>{t.setSelection(t.createRangeOn(i))}));d<0?(d=n?0:a,l--):d>a&&(d=n?a:0,l++);const h=r.find((t=>t.row==l&&t.column==d)).cell,u=[\"right\",\"down\"].includes(e),m=this.editor.plugins.get(\"TableSelection\");if(n&&m.isEnabled){const e=m.getAnchorCell()||t;m.setCellSelection(e,h)}else{const t=o.createPositionAt(h,u?0:\"end\");o.change((e=>{e.setSelection(t)}))}}}class Ak extends Yr{constructor(t){super(t),this.domEventType=[\"mousemove\",\"mouseup\",\"mouseleave\"]}onDomEvent(t){this.fire(t.type,t)}}class vk extends rh{static get pluginName(){return\"TableMouse\"}static get requires(){return[fk]}init(){this.editor.editing.view.addObserver(Ak),this._enableShiftClickSelection(),this._enableMouseDragSelection()}_enableShiftClickSelection(){const t=this.editor;let e=!1;const n=t.plugins.get(fk);this.listenTo(t.editing.view.document,\"mousedown\",((o,i)=>{if(!this.isEnabled||!n.isEnabled)return;if(!i.domEvent.shiftKey)return;const r=n.getAnchorCell()||cb(t.model.document.selection)[0];if(!r)return;const s=this._getModelTableCellFromDomEvent(i);s&&yk(r,s)&&(e=!0,n.setCellSelection(r,s),i.preventDefault())})),this.listenTo(t.editing.view.document,\"mouseup\",(()=>{e=!1})),this.listenTo(t.editing.view.document,\"selectionChange\",(t=>{e&&t.stop()}),{priority:\"highest\"})}_enableMouseDragSelection(){const t=this.editor;let e,n,o=!1,i=!1;const r=t.plugins.get(fk);this.listenTo(t.editing.view.document,\"mousedown\",((t,n)=>{this.isEnabled&&r.isEnabled&&(n.domEvent.shiftKey||n.domEvent.ctrlKey||n.domEvent.altKey||(e=this._getModelTableCellFromDomEvent(n)))})),this.listenTo(t.editing.view.document,\"mousemove\",((t,s)=>{if(!s.domEvent.buttons)return;if(!e)return;const a=this._getModelTableCellFromDomEvent(s);a&&yk(e,a)&&(n=a,o||n==e||(o=!0)),o&&(i=!0,r.setCellSelection(e,n),s.preventDefault())})),this.listenTo(t.editing.view.document,\"mouseup\",(()=>{o=!1,i=!1,e=null,n=null})),this.listenTo(t.editing.view.document,\"selectionChange\",(t=>{i&&t.stop()}),{priority:\"highest\"})}_getModelTableCellFromDomEvent(t){const e=t.target,n=this.editor.editing.view.createPositionAt(e,0);return this.editor.editing.mapper.toModelPosition(n).parent.findAncestor(\"tableCell\",{includeSelf:!0})}}function yk(t,e){return t.parent.parent==e.parent.parent}var xk=n(44),Ek={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(xk.a,Ek),xk.a.locals;const Sk=[\"before\",\"after\"],Dk=(new DOMParser).parseFromString('',\"image/svg+xml\").firstChild,Tk=\"ck-widget__type-around_disabled\";class Bk extends rh{static get pluginName(){return\"WidgetTypeAround\"}constructor(t){super(t),this._currentFakeCaretModelElement=null}init(){const t=this.editor,e=t.editing.view;this.on(\"change:isEnabled\",((n,o,i)=>{e.change((t=>{for(const n of e.document.roots)i?t.removeClass(Tk,n):t.addClass(Tk,n)})),i||t.model.change((t=>{t.removeSelectionAttribute(Vf)}))})),this._enableTypeAroundUIInjection(),this._enableInsertingParagraphsOnButtonClick(),this._enableInsertingParagraphsOnEnterKeypress(),this._enableInsertingParagraphsOnTypingKeystroke(),this._enableTypeAroundFakeCaretActivationUsingKeyboardArrows(),this._enableDeleteIntegration(),this._enableInsertContentIntegration()}destroy(){this._currentFakeCaretModelElement=null}_insertParagraph(t,e){const n=this.editor,o=n.editing.view;n.execute(\"insertParagraph\",{position:n.model.createPositionAt(t,e)}),o.focus(),o.scrollToTheSelection()}_listenToIfEnabled(t,e,n,o){this.listenTo(t,e,((...t)=>{this.isEnabled&&n(...t)}),o)}_insertParagraphAccordingToFakeCaretPosition(){const t=this.editor.model.document.selection,e=Lf(t);if(!e)return!1;const n=t.getSelectedElement();return this._insertParagraph(n,e),!0}_enableTypeAroundUIInjection(){const t=this.editor,e=t.model.schema,n=t.locale.t,o={before:n(\"Insert paragraph before block\"),after:n(\"Insert paragraph after block\")};t.editing.downcastDispatcher.on(\"insert\",((t,n,i)=>{const r=i.mapper.toViewElement(n.item);zf(r,n.item,e)&&function(t,e,n){const o=t.createUIElement(\"div\",{class:\"ck ck-reset_all ck-widget__type-around\"},(function(t){const n=this.toDomElement(t);return function(t,e){for(const n of Sk){const o=new yl({tag:\"div\",attributes:{class:[\"ck\",\"ck-widget__type-around__button\",`ck-widget__type-around__button_${n}`],title:e[n]},children:[t.ownerDocument.importNode(Dk,!0)]});t.appendChild(o.render())}}(n,e),function(t){const e=new yl({tag:\"div\",attributes:{class:[\"ck\",\"ck-widget__type-around__fake-caret\"]}});t.appendChild(e.render())}(n),n}));t.insert(t.createPositionAt(n,\"end\"),o)}(i.writer,o,r)}),{priority:\"low\"})}_enableTypeAroundFakeCaretActivationUsingKeyboardArrows(){const t=this.editor,e=t.model,n=e.document.selection,o=e.schema,i=t.editing.view;function r(t){return`ck-widget_type-around_show-fake-caret_${t}`}this._listenToIfEnabled(i.document,\"keydown\",((t,e)=>{Di(e.keyCode)&&this._handleArrowKeyPress(t,e)}),{priority:wn.get(\"high\")+10}),this._listenToIfEnabled(n,\"change:range\",((e,n)=>{n.directChange&&t.model.change((t=>{t.removeSelectionAttribute(Vf)}))})),this._listenToIfEnabled(e.document,\"change:data\",(()=>{const e=n.getSelectedElement();if(e){if(zf(t.editing.mapper.toViewElement(e),e,o))return}t.model.change((t=>{t.removeSelectionAttribute(Vf)}))})),this._listenToIfEnabled(t.editing.downcastDispatcher,\"selection\",((t,e,n)=>{const i=n.writer;if(this._currentFakeCaretModelElement){const t=n.mapper.toViewElement(this._currentFakeCaretModelElement);t&&(i.removeClass(Sk.map(r),t),this._currentFakeCaretModelElement=null)}const s=e.selection.getSelectedElement();if(!s)return;const a=n.mapper.toViewElement(s);if(!zf(a,s,o))return;const c=Lf(e.selection);c&&(i.addClass(r(c),a),this._currentFakeCaretModelElement=s)})),this._listenToIfEnabled(t.ui.focusTracker,\"change:isFocused\",((e,n,o)=>{o||t.model.change((t=>{t.removeSelectionAttribute(Vf)}))}))}_handleArrowKeyPress(t,e){const n=this.editor,o=n.model,i=o.document.selection,r=o.schema,s=n.editing.view,a=Bi(e.keyCode,n.locale.contentLanguageDirection),c=s.document.selection.getSelectedElement();let l;zf(c,n.editing.mapper.toModelElement(c),r)?l=this._handleArrowKeyPressOnSelectedWidget(a):i.isCollapsed&&(l=this._handleArrowKeyPressWhenSelectionNextToAWidget(a)),l&&(e.preventDefault(),t.stop())}_handleArrowKeyPressOnSelectedWidget(t){const e=this.editor.model,n=Lf(e.document.selection);return e.change((e=>{if(!n)return e.setSelectionAttribute(Vf,t?\"after\":\"before\"),!0;if(!(n===(t?\"after\":\"before\")))return e.removeSelectionAttribute(Vf),!0;return!1}))}_handleArrowKeyPressWhenSelectionNextToAWidget(t){const e=this.editor,n=e.model,o=n.schema,i=e.plugins.get(\"Widget\"),r=i._getObjectElementNextToSelection(t);return!!zf(e.editing.mapper.toViewElement(r),r,o)&&(n.change((e=>{i._setSelectionOverElement(r),e.setSelectionAttribute(Vf,t?\"before\":\"after\")})),!0)}_enableInsertingParagraphsOnButtonClick(){const t=this.editor,e=t.editing.view;this._listenToIfEnabled(e.document,\"mousedown\",((n,o)=>{const i=o.domTarget.closest(\".ck-widget__type-around__button\");if(!i)return;const r=function(t){return t.classList.contains(\"ck-widget__type-around__button_before\")?\"before\":\"after\"}(i),s=function(t,e){const n=t.closest(\".ck-widget\");return e.mapDomToView(n)}(i,e.domConverter),a=t.editing.mapper.toModelElement(s);this._insertParagraph(a,r),o.preventDefault(),n.stop()}))}_enableInsertingParagraphsOnEnterKeypress(){const t=this.editor,e=t.editing.view;this._listenToIfEnabled(e.document,\"enter\",((n,o)=>{const i=e.document.selection.getSelectedElement(),r=t.editing.mapper.toModelElement(i),s=t.model.schema;let a;this._insertParagraphAccordingToFakeCaretPosition()?a=!0:zf(i,r,s)&&(this._insertParagraph(r,o.isSoft?\"before\":\"after\"),a=!0),a&&(o.preventDefault(),n.stop())}))}_enableInsertingParagraphsOnTypingKeystroke(){const t=this.editor.editing.view,e=[yi.enter,yi.delete,yi.backspace];this._listenToIfEnabled(t.document,\"keydown\",((t,n)=>{e.includes(n.keyCode)||Tu(n)||this._insertParagraphAccordingToFakeCaretPosition()}),{priority:wn.get(\"high\")+1})}_enableDeleteIntegration(){const t=this.editor,e=t.editing.view,n=t.model,o=n.schema;this._listenToIfEnabled(e.document,\"delete\",((e,i)=>{const r=Lf(n.document.selection);if(!r)return;const s=i.direction,a=n.document.selection.getSelectedElement(),c=\"forward\"==s;if(\"before\"===r===c)t.execute(\"delete\",{selection:n.createSelection(a,\"on\")});else{const e=o.getNearestSelectionRange(n.createPositionAt(a,r),s);if(e)if(e.isCollapsed){const i=n.createSelection(e.start);if(n.modifySelection(i,{direction:s}),i.focus.isEqual(e.start)){const t=function(t,e){let n=e;for(const o of e.getAncestors({parentFirst:!0})){if(o.childCount>1||t.isLimit(o))break;n=o}return n}(o,e.start.parent);n.deleteContent(n.createSelection(t,\"on\"),{doNotAutoparagraph:!0})}else n.change((n=>{n.setSelection(e),t.execute(c?\"forwardDelete\":\"delete\")}))}else n.change((n=>{n.setSelection(e),t.execute(c?\"forwardDelete\":\"delete\")}))}i.preventDefault(),e.stop()}),{priority:wn.get(\"high\")+1})}_enableInsertContentIntegration(){const t=this.editor,e=this.editor.model,n=e.document.selection;this._listenToIfEnabled(t.model,\"insertContent\",((t,[o,i])=>{if(i&&!i.is(\"documentSelection\"))return;const r=Lf(n);return r?(t.stop(),e.change((t=>{const i=n.getSelectedElement(),s=e.createPositionAt(i,r),a=t.createSelection(s),c=e.insertContent(o,a);return t.setSelection(a),c}))):void 0}),{priority:\"high\"})}}var Pk=n(45),Ik={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Pk.a,Ik),Pk.a.locals;function Rk(t){const e=t.model;return(n,o)=>{const i=o.keyCode==yi.arrowup,r=o.keyCode==yi.arrowdown,s=o.shiftKey,a=e.document.selection;if(!i&&!r)return;const c=r;if(s&&function(t,e){return!t.isCollapsed&&t.isBackward==e}(a,c))return;const l=function(t,e,n){const o=t.model;if(n){const t=e.isCollapsed?e.focus:e.getLastPosition(),n=Fk(o,t,\"forward\");if(!n)return null;const i=o.createRange(t,n),r=Ok(o.schema,i,\"backward\");return r&&t.isBefore(r)?o.createRange(t,r):null}{const t=e.isCollapsed?e.focus:e.getFirstPosition(),n=Fk(o,t,\"backward\");if(!n)return null;const i=o.createRange(n,t),r=Ok(o.schema,i,\"forward\");return r&&t.isAfter(r)?o.createRange(r,t):null}}(t,a,c);l&&!l.isCollapsed&&function(t,e,n){const o=t.model,i=t.view.domConverter;if(n){const t=o.createSelection(e.start);o.modifySelection(t),t.focus.isAtEnd||e.start.isEqual(t.focus)||(e=o.createRange(t.focus,e.end))}const r=t.mapper.toViewRange(e),s=i.viewRangeToDom(r),a=fs.getDomRangeRects(s);let c;for(const t of a)if(void 0!==c){if(Math.round(t.top)>=c)return!1;c=Math.max(c,Math.round(t.bottom))}else c=Math.round(t.bottom);return!0}(t,l,c)&&(e.change((t=>{const n=c?l.end:l.start;if(s){const o=e.createSelection(a.anchor);o.setFocus(n),t.setSelection(o)}else t.setSelection(n)})),n.stop(),o.preventDefault(),o.stopPropagation())}}function Fk(t,e,n){const o=t.schema,i=t.createRangeIn(e.root),r=\"forward\"==n?\"elementStart\":\"elementEnd\";for(const{previousPosition:t,item:s,type:a}of i.getWalker({startPosition:e,direction:n})){if(o.isLimit(s)&&!o.isInline(s))return t;if(a==r&&o.isBlock(s))return null}return null}function Ok(t,e,n){const o=\"backward\"==n?e.end:e.start;if(t.checkChild(o,\"$text\"))return o;for(const{nextPosition:o}of e.getWalker({direction:n}))if(t.checkChild(o,\"$text\"))return o}class Nk extends rh{static get pluginName(){return\"Widget\"}static get requires(){return[Bk]}init(){const t=this.editor.editing.view,e=t.document;this._previouslySelected=new Set,this.editor.editing.downcastDispatcher.on(\"selection\",((t,e,n)=>{this._clearPreviouslySelectedWidgets(n.writer);const o=n.writer,i=o.document.selection,r=i.getSelectedElement();let s=null;for(const t of i.getRanges())for(const e of t){const t=e.item;Kf(t)&&!Mk(t,s)&&(o.addClass(Hf,t),this._previouslySelected.add(t),s=t,t==r&&o.setSelection(i.getRanges(),{fake:!0,label:Wf(r)}))}}),{priority:\"low\"}),t.addObserver(vg),this.listenTo(e,\"mousedown\",((...t)=>this._onMousedown(...t))),this.listenTo(e,\"keydown\",((...t)=>{this._handleSelectionChangeOnArrowKeyPress(...t)}),{priority:\"high\"}),this.listenTo(e,\"keydown\",((...t)=>{this._preventDefaultOnArrowKeyPress(...t)}),{priority:wn.get(\"high\")-20}),this.listenTo(e,\"keydown\",Rk(this.editor.editing)),this.listenTo(e,\"delete\",((t,e)=>{this._handleDelete(\"forward\"==e.direction)&&(e.preventDefault(),t.stop())}),{priority:\"high\"})}_onMousedown(t,e){const n=this.editor,o=n.editing.view,i=o.document;let r=e.target;if(function(t){for(;t;){if(t.is(\"editableElement\")&&!t.is(\"rootElement\"))return!0;if(Kf(t))return!1;t=t.parent}return!1}(r)){if((Ci.isSafari||Ci.isGecko)&&e.domEvent.detail>=3){const t=n.editing.mapper,o=r.is(\"attributeElement\")?r.findAncestor((t=>!t.is(\"attributeElement\"))):r,i=t.toModelElement(o);e.preventDefault(),this.editor.model.change((t=>{t.setSelection(i,\"in\")}))}return}if(!Kf(r)&&(r=r.findAncestor(Kf),!r))return;e.preventDefault(),i.isFocused||o.focus();const s=n.editing.mapper.toModelElement(r);this._setSelectionOverElement(s)}_handleSelectionChangeOnArrowKeyPress(t,e){const n=e.keyCode;if(!Di(n))return;const o=this.editor.model,i=o.schema,r=o.document.selection,s=r.getSelectedElement(),a=Bi(n,this.editor.locale.contentLanguageDirection);if(s&&i.isObject(s)){const n=a?r.getLastPosition():r.getFirstPosition(),s=i.getNearestSelectionRange(n,a?\"forward\":\"backward\");return void(s&&(o.change((t=>{t.setSelection(s)})),e.preventDefault(),t.stop()))}if(!r.isCollapsed)return;const c=this._getObjectElementNextToSelection(a);c&&i.isObject(c)&&(this._setSelectionOverElement(c),e.preventDefault(),t.stop())}_preventDefaultOnArrowKeyPress(t,e){if(!Di(e.keyCode))return;const n=this.editor.model,o=n.schema,i=n.document.selection.getSelectedElement();i&&o.isObject(i)&&(e.preventDefault(),t.stop())}_handleDelete(t){if(this.editor.isReadOnly)return;const e=this.editor.model.document.selection;if(!e.isCollapsed)return;const n=this._getObjectElementNextToSelection(t);return n?(this.editor.model.change((t=>{let o=e.anchor.parent;for(;o.isEmpty;){const e=o;o=e.parent,t.remove(e)}this._setSelectionOverElement(n)})),!0):void 0}_setSelectionOverElement(t){this.editor.model.change((e=>{e.setSelection(e.createRangeOn(t))}))}_getObjectElementNextToSelection(t){const e=this.editor.model,n=e.schema,o=e.document.selection,i=e.createSelection(o);e.modifySelection(i,{direction:t?\"forward\":\"backward\"});const r=t?i.focus.nodeBefore:i.focus.nodeAfter;return r&&n.isObject(r)?r:null}_clearPreviouslySelectedWidgets(t){for(const e of this._previouslySelected)t.removeClass(Hf,e);this._previouslySelected.clear()}}function Mk(t,e){return!!e&&Array.from(t.getAncestors()).includes(e)}var Vk=n(46),zk={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Vk.a,zk),Vk.a.locals;class Lk extends rh{static get requires(){return[np]}static get pluginName(){return\"WidgetToolbarRepository\"}init(){const t=this.editor;if(t.plugins.has(\"BalloonToolbar\")){const e=t.plugins.get(\"BalloonToolbar\");this.listenTo(e,\"show\",(e=>{(function(t){const e=t.getSelectedElement();return!(!e||!Kf(e))})(t.editing.view.document.selection)&&e.stop()}),{priority:\"high\"})}this._toolbarDefinitions=new Map,this._balloon=this.editor.plugins.get(\"ContextualBalloon\"),this.on(\"change:isEnabled\",(()=>{this._updateToolbarsVisibility()})),this.listenTo(t.ui,\"update\",(()=>{this._updateToolbarsVisibility()})),this.listenTo(t.ui.focusTracker,\"change:isFocused\",(()=>{this._updateToolbarsVisibility()}),{priority:\"low\"})}destroy(){super.destroy();for(const t of this._toolbarDefinitions.values())t.view.destroy()}register(t,{ariaLabel:e,items:n,getRelatedElement:o,balloonClassName:i=\"ck-toolbar-container\"}){if(!n.length)return void Object(_n.c)(\"widget-toolbar-no-items\",{toolbarId:t});const r=this.editor,s=r.t,a=new Qd(r.locale);if(a.ariaLabel=e||s(\"Widget toolbar\"),this._toolbarDefinitions.has(t))throw new _n.a(\"widget-toolbar-duplicated\",this,{toolbarId:t});a.fillFromConfig(n,r.ui.componentFactory),this._toolbarDefinitions.set(t,{view:a,getRelatedElement:o,balloonClassName:i})}_updateToolbarsVisibility(){let t=0,e=null,n=null;for(const o of this._toolbarDefinitions.values()){const i=o.getRelatedElement(this.editor.editing.view.document.selection);if(this.isEnabled&&i)if(this.editor.ui.focusTracker.isFocused){const r=i.getAncestors().length;r>t&&(t=r,e=i,n=o)}else this._isToolbarVisible(o)&&this._hideToolbar(o);else this._isToolbarInBalloon(o)&&this._hideToolbar(o)}n&&this._showToolbar(n,e)}_hideToolbar(t){this._balloon.remove(t.view),this.stopListening(this._balloon,\"change:visibleView\")}_showToolbar(t,e){this._isToolbarVisible(t)?Hk(this.editor,e):this._isToolbarInBalloon(t)||(this._balloon.add({view:t.view,position:Kk(this.editor,e),balloonClassName:t.balloonClassName}),this.listenTo(this._balloon,\"change:visibleView\",(()=>{for(const t of this._toolbarDefinitions.values())if(this._isToolbarVisible(t)){const e=t.getRelatedElement(this.editor.editing.view.document.selection);Hk(this.editor,e)}})))}_isToolbarVisible(t){return this._balloon.visibleView===t.view}_isToolbarInBalloon(t){return this._balloon.hasView(t.view)}}function Hk(t,e){const n=t.plugins.get(\"ContextualBalloon\"),o=Kk(t,e);n.updatePosition(o)}function Kk(t,e){const n=t.editing.view,o=$g.defaultPositions;return{target:n.domConverter.mapViewToDom(e),positions:[o.northArrowSouth,o.northArrowSouthWest,o.northArrowSouthEast,o.southArrowNorth,o.southArrowNorthWest,o.southArrowNorthEast,$f]}}function jk(t){const e=t.getSelectedElement();return e&&Wk(e)?e:null}function qk(t){const e=function(t,e){let n=e.parent;for(;n;){if(n.name===t)return n;n=n.parent}}(\"table\",t.getFirstPosition());return e&&Wk(e.parent)?e.parent:null}function Wk(t){return!!t.getCustomProperty(\"table\")&&Kf(t)}function Gk(t){t.setNormalizer(\"border\",$k),t.setNormalizer(\"border-top\",Uk(\"top\")),t.setNormalizer(\"border-right\",Uk(\"right\")),t.setNormalizer(\"border-bottom\",Uk(\"bottom\")),t.setNormalizer(\"border-left\",Uk(\"left\")),t.setNormalizer(\"border-color\",Jk(\"color\")),t.setNormalizer(\"border-width\",Jk(\"width\")),t.setNormalizer(\"border-style\",Jk(\"style\")),t.setNormalizer(\"border-top-color\",Qk(\"color\",\"top\")),t.setNormalizer(\"border-top-style\",Qk(\"style\",\"top\")),t.setNormalizer(\"border-top-width\",Qk(\"width\",\"top\")),t.setNormalizer(\"border-right-color\",Qk(\"color\",\"right\")),t.setNormalizer(\"border-right-style\",Qk(\"style\",\"right\")),t.setNormalizer(\"border-right-width\",Qk(\"width\",\"right\")),t.setNormalizer(\"border-bottom-color\",Qk(\"color\",\"bottom\")),t.setNormalizer(\"border-bottom-style\",Qk(\"style\",\"bottom\")),t.setNormalizer(\"border-bottom-width\",Qk(\"width\",\"bottom\")),t.setNormalizer(\"border-left-color\",Qk(\"color\",\"left\")),t.setNormalizer(\"border-left-style\",Qk(\"style\",\"left\")),t.setNormalizer(\"border-left-width\",Qk(\"width\",\"left\")),t.setExtractor(\"border-top\",Xk(\"top\")),t.setExtractor(\"border-right\",Xk(\"right\")),t.setExtractor(\"border-bottom\",Xk(\"bottom\")),t.setExtractor(\"border-left\",Xk(\"left\")),t.setExtractor(\"border-top-color\",\"border.color.top\"),t.setExtractor(\"border-right-color\",\"border.color.right\"),t.setExtractor(\"border-bottom-color\",\"border.color.bottom\"),t.setExtractor(\"border-left-color\",\"border.color.left\"),t.setExtractor(\"border-top-width\",\"border.width.top\"),t.setExtractor(\"border-right-width\",\"border.width.right\"),t.setExtractor(\"border-bottom-width\",\"border.width.bottom\"),t.setExtractor(\"border-left-width\",\"border.width.left\"),t.setExtractor(\"border-top-style\",\"border.style.top\"),t.setExtractor(\"border-right-style\",\"border.style.right\"),t.setExtractor(\"border-bottom-style\",\"border.style.bottom\"),t.setExtractor(\"border-left-style\",\"border.style.left\"),t.setReducer(\"border-color\",Km(\"border-color\")),t.setReducer(\"border-style\",Km(\"border-style\")),t.setReducer(\"border-width\",Km(\"border-width\")),t.setReducer(\"border-top\",nw(\"top\")),t.setReducer(\"border-right\",nw(\"right\")),t.setReducer(\"border-bottom\",nw(\"bottom\")),t.setReducer(\"border-left\",nw(\"left\")),t.setReducer(\"border\",ew),t.setStyleRelation(\"border\",[\"border-color\",\"border-style\",\"border-width\",\"border-top\",\"border-right\",\"border-bottom\",\"border-left\",\"border-top-color\",\"border-right-color\",\"border-bottom-color\",\"border-left-color\",\"border-top-style\",\"border-right-style\",\"border-bottom-style\",\"border-left-style\",\"border-top-width\",\"border-right-width\",\"border-bottom-width\",\"border-left-width\"]),t.setStyleRelation(\"border-color\",[\"border-top-color\",\"border-right-color\",\"border-bottom-color\",\"border-left-color\"]),t.setStyleRelation(\"border-style\",[\"border-top-style\",\"border-right-style\",\"border-bottom-style\",\"border-left-style\"]),t.setStyleRelation(\"border-width\",[\"border-top-width\",\"border-right-width\",\"border-bottom-width\",\"border-left-width\"]),t.setStyleRelation(\"border-top\",[\"border-top-color\",\"border-top-style\",\"border-top-width\"]),t.setStyleRelation(\"border-right\",[\"border-right-color\",\"border-right-style\",\"border-right-width\"]),t.setStyleRelation(\"border-bottom\",[\"border-bottom-color\",\"border-bottom-style\",\"border-bottom-width\"]),t.setStyleRelation(\"border-left\",[\"border-left-color\",\"border-left-style\",\"border-left-width\"])}function $k(t){const{color:e,style:n,width:o}=tw(t);return{path:\"border\",value:{color:Hm(e),style:Hm(n),width:Hm(o)}}}function Uk(t){return e=>{const{color:n,style:o,width:i}=tw(e),r={};return void 0!==n&&(r.color={[t]:n}),void 0!==o&&(r.style={[t]:o}),void 0!==i&&(r.width={[t]:i}),{path:\"border\",value:r}}}function Jk(t){return e=>({path:\"border\",value:Yk(e,t)})}function Yk(t,e){return{[e]:Hm(t)}}function Qk(t,e){return n=>({path:\"border\",value:{[t]:{[e]:n}}})}function Xk(t){return(e,n)=>{if(n.border)return Zk(n.border,t)}}function Zk(t,e){const n={};return t.width&&t.width[e]&&(n.width=t.width[e]),t.style&&t.style[e]&&(n.style=t.style[e]),t.color&&t.color[e]&&(n.color=t.color[e]),n}function tw(t){const e={},n=qm(t);for(const t of n)Im(t)||/thin|medium|thick/.test(t)?e.width=t:Bm(t)?e.style=t:e.color=t;return e}function ew(t){const e=[];return e.push(...ow(Zk(t,\"top\"),\"top\")),e.push(...ow(Zk(t,\"right\"),\"right\")),e.push(...ow(Zk(t,\"bottom\"),\"bottom\")),e.push(...ow(Zk(t,\"left\"),\"left\")),e}function nw(t){return e=>ow(e,t)}function ow(t,e){const n=[];return t&&void 0!==t.width&&n.push(t.width),t&&void 0!==t.style&&n.push(t.style),t&&void 0!==t.color&&n.push(t.color),n.length?[[`border-${e}`,n.join(\" \")]]:[]}function iw(t,e,n,o){t.for(\"upcast\").attributeToAttribute({view:{styles:{[o]:/[\\s\\S]+/}},model:{name:e,key:n,value:t=>t.getNormalizedStyle(o)}})}function rw(t,e){t.for(\"upcast\").add((t=>t.on(\"element:\"+e,((t,e,n)=>{const o=[\"border-top\",\"border-right\",\"border-bottom\",\"border-left\"].filter((t=>e.viewItem.hasStyle(t)));if(!o.length)return;const i={styles:o};if(!n.consumable.test(e.viewItem,i))return;e.modelRange||(e=Object.assign(e,n.convertChildren(e.viewItem,e.modelCursor)));const r=[...e.modelRange.getItems({shallow:!0})].pop();n.consumable.consume(e.viewItem,i),n.writer.setAttribute(\"borderStyle\",e.viewItem.getNormalizedStyle(\"border-style\"),r),n.writer.setAttribute(\"borderColor\",e.viewItem.getNormalizedStyle(\"border-color\"),r),n.writer.setAttribute(\"borderWidth\",e.viewItem.getNormalizedStyle(\"border-width\"),r)}))))}function sw(t,e,n,o){t.for(\"downcast\").attributeToAttribute({model:{name:e,key:n},view:t=>({key:\"style\",value:{[o]:t}})})}function aw(t,e,n){t.for(\"downcast\").add((t=>t.on(`attribute:${e}:table`,((t,e,o)=>{const{item:i,attributeNewValue:r}=e,{mapper:s,writer:a}=o;if(!o.consumable.consume(e.item,t.name))return;const c=[...s.toViewElement(i).getChildren()].find((t=>t.is(\"element\",\"table\")));r?a.setStyle(n,r,c):a.removeStyle(n,c)}))))}class cw extends ah{constructor(t,e){super(t),this.attributeName=e}refresh(){const t=this.editor.model.document.selection.getFirstPosition().findAncestor(\"table\");this.isEnabled=!!t,this.value=this._getValue(t)}execute(t={}){const e=this.editor.model,n=e.document.selection,{value:o,batch:i}=t,r=n.getFirstPosition().findAncestor(\"table\"),s=this._getValueToSet(o);e.enqueueChange(i||\"default\",(t=>{s?t.setAttribute(this.attributeName,s,r):t.removeAttribute(this.attributeName,r)}))}_getValue(t){if(t)return t.getAttribute(this.attributeName)}_getValueToSet(t){return t}}class lw extends cw{constructor(t){super(t,\"backgroundColor\")}}function dw(t){if(!t||!M(t))return t;const{top:e,right:n,bottom:o,left:i}=t;return e==n&&n==o&&o==i?e:void 0}function hw(t,e){const n=parseFloat(t);return Number.isNaN(n)||String(n)!==String(t)?t:`${n}${e}`}class uw extends cw{constructor(t){super(t,\"borderColor\")}_getValue(t){if(t)return dw(t.getAttribute(this.attributeName))}}class mw extends cw{constructor(t){super(t,\"borderStyle\")}_getValue(t){if(t)return dw(t.getAttribute(this.attributeName))}}class gw extends cw{constructor(t){super(t,\"borderWidth\")}_getValue(t){if(t)return dw(t.getAttribute(this.attributeName))}_getValueToSet(t){return hw(t,\"px\")}}class pw extends cw{constructor(t){super(t,\"width\")}_getValueToSet(t){return hw(t,\"px\")}}class fw extends cw{constructor(t){super(t,\"height\")}_getValueToSet(t){return hw(t,\"px\")}}class bw extends cw{constructor(t){super(t,\"alignment\")}}const kw=/^(left|right)$/;class ww extends rh{static get pluginName(){return\"TablePropertiesEditing\"}static get requires(){return[ak]}init(){const t=this.editor,e=t.model.schema,n=t.conversion;t.data.addStyleProcessorRules(Gk),function(t,e){t.extend(\"table\",{allowAttributes:[\"borderWidth\",\"borderColor\",\"borderStyle\"]}),rw(e,\"table\"),aw(e,\"borderColor\",\"border-color\"),aw(e,\"borderStyle\",\"border-style\"),aw(e,\"borderWidth\",\"border-width\")}(e,n),t.commands.add(\"tableBorderColor\",new uw(t)),t.commands.add(\"tableBorderStyle\",new mw(t)),t.commands.add(\"tableBorderWidth\",new gw(t)),function(t,e){t.extend(\"table\",{allowAttributes:[\"alignment\"]}),e.attributeToAttribute({model:{name:\"table\",key:\"alignment\",values:[\"left\",\"right\"]},view:{left:{key:\"style\",value:{float:\"left\"}},right:{key:\"style\",value:{float:\"right\"}}},converterPriority:\"high\"}),e.for(\"upcast\").attributeToAttribute({view:{attributes:{align:kw}},model:{name:\"table\",key:\"alignment\",value:t=>t.getAttribute(\"align\")}})}(e,n),t.commands.add(\"tableAlignment\",new bw(t)),_w(e,n,\"width\",\"width\"),t.commands.add(\"tableWidth\",new pw(t)),_w(e,n,\"height\",\"height\"),t.commands.add(\"tableHeight\",new fw(t)),t.data.addStyleProcessorRules(Wm),function(t,e,n,o){t.extend(\"table\",{allowAttributes:[n]}),iw(e,\"table\",n,o),aw(e,n,o)}(e,n,\"backgroundColor\",\"background-color\"),t.commands.add(\"tableBackgroundColor\",new lw(t))}}function _w(t,e,n,o){t.extend(\"table\",{allowAttributes:[n]}),iw(e,\"table\",n,o),sw(e,\"table\",n,o)}var Cw=n(47),Aw={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Cw.a,Aw),Cw.a.locals;class vw extends Gl{constructor(t,e){super(t);const n=this.bindTemplate;this.set(\"value\",\"\"),this.set(\"id\"),this.set(\"isReadOnly\",!1),this.set(\"hasError\",!1),this.set(\"ariaDescribedById\"),this.options=e,this._dropdownView=this._createDropdownView(t),this._inputView=this._createInputTextView(t),this._stillTyping=!1,this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-input-color\",n.if(\"hasError\",\"ck-error\")],id:n.to(\"id\"),\"aria-invalid\":n.if(\"hasError\",!0),\"aria-describedby\":n.to(\"ariaDescribedById\")},children:[this._inputView,this._dropdownView]}),this.on(\"change:value\",((t,e,n)=>this._setInputValue(n)))}focus(){this._inputView.focus()}_createDropdownView(){const t=this.locale,e=t.t,n=this.bindTemplate,o=this._createColorGrid(t),i=Gd(t),r=new Gl,s=this._createRemoveColorButton(t);return r.setTemplate({tag:\"span\",attributes:{class:[\"ck\",\"ck-input-color__button__preview\"],style:{backgroundColor:n.to(\"value\")}},children:[{tag:\"span\",attributes:{class:[\"ck\",\"ck-input-color__button__preview__no-color-indicator\",n.if(\"value\",\"ck-hidden\",(t=>\"\"!=t))]}}]}),i.buttonView.extendTemplate({attributes:{class:\"ck-input-color__button\"}}),i.buttonView.children.add(r),i.buttonView.tooltip=e(\"Color picker\"),i.panelPosition=\"rtl\"===t.uiLanguageDirection?\"se\":\"sw\",i.panelView.children.add(s),i.panelView.children.add(o),i.bind(\"isEnabled\").to(this,\"isReadOnly\",(t=>!t)),i}_createInputTextView(){const t=this.locale,e=new dp(t);return e.extendTemplate({on:{blur:e.bindTemplate.to(\"blur\")}}),e.value=this.value,e.bind(\"isReadOnly\").to(this),e.bind(\"hasError\").to(this),e.on(\"input\",(()=>{const t=e.element.value,n=this.options.colorDefinitions.find((e=>t===e.label));this._stillTyping=!0,this.value=n&&n.color||t})),e.on(\"blur\",(()=>{this._stillTyping=!1,this._setInputValue(e.element.value)})),e.delegate(\"input\").to(this),e}_createRemoveColorButton(){const t=this.locale,e=t.t,n=new Bd(t);return n.class=\"ck-input-color__remove-color\",n.withText=!0,n.icon=mm,n.label=e(\"Remove color\"),n.on(\"execute\",(()=>{this.value=\"\",this._dropdownView.isOpen=!1,this.fire(\"input\")})),n}_createColorGrid(t){const e=new hm(t,{colorDefinitions:this.options.colorDefinitions,columns:this.options.columns});return e.on(\"execute\",((t,e)=>{this.value=e.value,this._dropdownView.isOpen=!1,this.fire(\"input\")})),e.bind(\"selectedColor\").to(this,\"value\"),e}_setInputValue(t){if(!this._stillTyping){const e=yw(t),n=this.options.colorDefinitions.find((t=>e===yw(t.color)));this._inputView.value=n?n.label:t||\"\"}}}function yw(t){return t.replace(/([(,])\\s+/g,\"$1\").replace(/^\\s+|\\s+(?=[),\\s]|$)/g,\"\").replace(/,|\\s/g,\" \")}const xw=t=>\"\"===t;function Ew(t){return{none:t(\"None\"),solid:t(\"Solid\"),dotted:t(\"Dotted\"),dashed:t(\"Dashed\"),double:t(\"Double\"),groove:t(\"Groove\"),ridge:t(\"Ridge\"),inset:t(\"Inset\"),outset:t(\"Outset\")}}function Sw(t){return t('The color is invalid. Try \"#FF0000\" or \"rgb(255,0,0)\" or \"red\".')}function Dw(t){return t('The value is invalid. Try \"10px\" or \"2em\" or simply \"2\".')}function Tw(t){return t=t.trim(),xw(t)||Dm(t)}function Bw(t){return t=t.trim(),xw(t)||Nw(t)||Im(t)||(e=t,Rm.test(e));var e}function Pw(t){return t=t.trim(),xw(t)||Nw(t)||Im(t)}function Iw(t){const e=new Rn,n=Ew(t.t);for(const o in n){const i={type:\"button\",model:new dg({_borderStyleValue:\"none\"===o?\"\":o,label:n[o],withText:!0})};\"none\"===o?i.model.bind(\"isOn\").to(t,\"borderStyle\",(t=>!t)):i.model.bind(\"isOn\").to(t,\"borderStyle\",(t=>t===o)),e.add(i)}return e}function Rw({view:t,icons:e,toolbar:n,labels:o,propertyName:i,nameToValue:r}){for(const s in o){const a=new Bd(t.locale);a.set({label:o[s],icon:e[s],tooltip:o[s]}),a.bind(\"isOn\").to(t,i,(t=>t===r(s))),a.on(\"execute\",(()=>{t[i]=r(s)})),n.items.add(a)}}const Fw=[{color:\"hsl(0, 0%, 0%)\",label:\"Black\"},{color:\"hsl(0, 0%, 30%)\",label:\"Dim grey\"},{color:\"hsl(0, 0%, 60%)\",label:\"Grey\"},{color:\"hsl(0, 0%, 90%)\",label:\"Light grey\"},{color:\"hsl(0, 0%, 100%)\",label:\"White\",hasBorder:!0},{color:\"hsl(0, 75%, 60%)\",label:\"Red\"},{color:\"hsl(30, 75%, 60%)\",label:\"Orange\"},{color:\"hsl(60, 75%, 60%)\",label:\"Yellow\"},{color:\"hsl(90, 75%, 60%)\",label:\"Light green\"},{color:\"hsl(120, 75%, 60%)\",label:\"Green\"},{color:\"hsl(150, 75%, 60%)\",label:\"Aquamarine\"},{color:\"hsl(180, 75%, 60%)\",label:\"Turquoise\"},{color:\"hsl(210, 75%, 60%)\",label:\"Light blue\"},{color:\"hsl(240, 75%, 60%)\",label:\"Blue\"},{color:\"hsl(270, 75%, 60%)\",label:\"Purple\"}];function Ow(t){return(e,n,o)=>{const i=new vw(e.locale,{colorDefinitions:(r=t.colorConfig,r.map((t=>({color:t.model,label:t.label,options:{hasBorder:t.hasBorder}})))),columns:t.columns});var r;return i.set({id:n,ariaDescribedById:o}),i.bind(\"isReadOnly\").to(e,\"isEnabled\",(t=>!t)),i.bind(\"errorText\").to(e),i.on(\"input\",(()=>{e.errorText=null})),i}}function Nw(t){const e=parseFloat(t);return!Number.isNaN(e)&&t===String(e)}var Mw=n(48),Vw={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Mw.a,Vw),Mw.a.locals;class zw extends Gl{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set(\"class\",e.class||null),this.children=this.createCollection(),e.children&&e.children.forEach((t=>this.children.add(t))),this.set(\"_role\",null),this.set(\"_ariaLabelledBy\",null),e.labelView&&this.set({_role:\"group\",_ariaLabelledBy:e.labelView.id}),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-form__row\",n.to(\"class\")],role:n.to(\"_role\"),\"aria-labelledby\":n.to(\"_ariaLabelledBy\")},children:this.children})}}var Lw=n(49),Hw={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(Lw.a,Hw),Lw.a.locals;class Kw extends Gl{constructor(t,e={}){super(t);const n=this.bindTemplate;this.set(\"label\",e.label||\"\"),this.set(\"class\",e.class||null),this.children=this.createCollection(),this.setTemplate({tag:\"div\",attributes:{class:[\"ck\",\"ck-form__header\",n.to(\"class\")]},children:this.children});const o=new Gl(t);o.setTemplate({tag:\"span\",attributes:{class:[\"ck\",\"ck-form__header__label\"]},children:[{text:n.to(\"label\")}]}),this.children.add(o)}}var jw=n(50),qw={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0},Ww=(gl()(jw.a,qw),jw.a.locals,n(51)),Gw={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0},$w=(gl()(Ww.a,Gw),Ww.a.locals,n(52)),Uw={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()($w.a,Uw),$w.a.locals;const Jw={left:'',center:'',right:''};class Yw extends Gl{constructor(t,e){super(t),this.set({borderStyle:\"\",borderWidth:\"\",borderColor:\"\",backgroundColor:\"\",width:\"\",height:\"\",alignment:\"\"}),this.options=e;const{borderStyleDropdown:n,borderWidthInput:o,borderColorInput:i,borderRowLabel:r}=this._createBorderFields(),{widthInput:s,operatorLabel:a,heightInput:c,dimensionsLabel:l}=this._createDimensionFields(),{alignmentToolbar:d,alignmentLabel:h}=this._createAlignmentFields();this.focusTracker=new hl,this.keystrokes=new nl,this.children=this.createCollection(),this.borderStyleDropdown=n,this.borderWidthInput=o,this.borderColorInput=i,this.backgroundInput=this._createBackgroundField(),this.widthInput=s,this.heightInput=c,this.alignmentToolbar=d;const{saveButtonView:u,cancelButtonView:m}=this._createActionButtons();this.saveButtonView=u,this.cancelButtonView=m,this._focusables=new vl,this._focusCycler=new ld({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:\"shift + tab\",focusNext:\"tab\"}}),this.children.add(new Kw(t,{label:this.t(\"Table properties\")})),this.children.add(new zw(t,{labelView:r,children:[r,n,i,o],class:\"ck-table-form__border-row\"})),this.children.add(new zw(t,{children:[this.backgroundInput]})),this.children.add(new zw(t,{children:[new zw(t,{labelView:l,children:[l,s,a,c],class:\"ck-table-form__dimensions-row\"}),new zw(t,{labelView:h,children:[h,d],class:\"ck-table-properties-form__alignment-row\"})]})),this.children.add(new zw(t,{children:[this.saveButtonView,this.cancelButtonView],class:\"ck-table-form__action-row\"})),this.setTemplate({tag:\"form\",attributes:{class:[\"ck\",\"ck-form\",\"ck-table-form\",\"ck-table-properties-form\"],tabindex:\"-1\"},children:this.children})}render(){super.render(),mp({view:this}),[this.borderStyleDropdown,this.borderColorInput,this.borderWidthInput,this.backgroundInput,this.widthInput,this.heightInput,this.alignmentToolbar,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}focus(){this._focusCycler.focusFirst()}_createBorderFields(){const t=Ow({colorConfig:this.options.borderColors,columns:5}),e=this.locale,n=this.t,o=new td(e);o.text=n(\"Border\");const i=Ew(this.t),r=new ap(e,up);r.set({label:n(\"Style\"),class:\"ck-table-form__border-style\"}),r.fieldView.buttonView.set({isOn:!1,withText:!0,tooltip:n(\"Style\")}),r.fieldView.buttonView.bind(\"label\").to(this,\"borderStyle\",(t=>i[t||\"none\"])),r.fieldView.on(\"execute\",(t=>{this.borderStyle=t.source._borderStyleValue})),Ud(r.fieldView,Iw(this));const s=new ap(e,hp);s.set({label:n(\"Width\"),class:\"ck-table-form__border-width\"}),s.fieldView.bind(\"value\").to(this,\"borderWidth\"),s.bind(\"isEnabled\").to(this,\"borderStyle\",Qw),s.fieldView.on(\"input\",(()=>{this.borderWidth=s.fieldView.element.value}));const a=new ap(e,t);return a.set({label:n(\"Color\"),class:\"ck-table-form__border-color\"}),a.fieldView.bind(\"value\").to(this,\"borderColor\"),a.bind(\"isEnabled\").to(this,\"borderStyle\",Qw),a.fieldView.on(\"input\",(()=>{this.borderColor=a.fieldView.value})),this.on(\"change:borderStyle\",((t,e,n)=>{Qw(n)||(this.borderColor=\"\",this.borderWidth=\"\")})),{borderRowLabel:o,borderStyleDropdown:r,borderColorInput:a,borderWidthInput:s}}_createBackgroundField(){const t=Ow({colorConfig:this.options.backgroundColors,columns:5}),e=this.locale,n=this.t,o=new ap(e,t);return o.set({label:n(\"Background\"),class:\"ck-table-properties-form__background\"}),o.fieldView.bind(\"value\").to(this,\"backgroundColor\"),o.fieldView.on(\"input\",(()=>{this.backgroundColor=o.fieldView.value})),o}_createDimensionFields(){const t=this.locale,e=this.t,n=new td(t);n.text=e(\"Dimensions\");const o=new ap(t,hp);o.set({label:e(\"Width\"),class:\"ck-table-form__dimensions-row__width\"}),o.fieldView.bind(\"value\").to(this,\"width\"),o.fieldView.on(\"input\",(()=>{this.width=o.fieldView.element.value}));const i=new Gl(t);i.setTemplate({tag:\"span\",attributes:{class:[\"ck-table-form__dimension-operator\"]},children:[{text:\"×\"}]});const r=new ap(t,hp);return r.set({label:e(\"Height\"),class:\"ck-table-form__dimensions-row__height\"}),r.fieldView.bind(\"value\").to(this,\"height\"),r.fieldView.on(\"input\",(()=>{this.height=r.fieldView.element.value})),{dimensionsLabel:n,widthInput:o,operatorLabel:i,heightInput:r}}_createAlignmentFields(){const t=this.locale,e=this.t,n=new td(t);n.text=e(\"Alignment\");const o=new Qd(t);return o.set({isCompact:!0,ariaLabel:e(\"Table alignment toolbar\")}),Rw({view:this,icons:Jw,toolbar:o,labels:this._alignmentLabels,propertyName:\"alignment\",nameToValue:t=>\"center\"===t?\"\":t}),{alignmentLabel:n,alignmentToolbar:o}}_createActionButtons(){const t=this.locale,e=this.t,n=new Bd(t),o=new Bd(t),i=[this.borderWidthInput,this.borderColorInput,this.backgroundInput,this.widthInput,this.heightInput];return n.set({label:e(\"Save\"),icon:gp,class:\"ck-button-save\",type:\"submit\",withText:!0}),n.bind(\"isEnabled\").toMany(i,\"errorText\",((...t)=>t.every((t=>!t)))),o.set({label:e(\"Cancel\"),icon:pp,class:\"ck-button-cancel\",type:\"cancel\",withText:!0}),o.delegate(\"execute\").to(this,\"cancel\"),{saveButtonView:n,cancelButtonView:o}}get _alignmentLabels(){const t=this.locale,e=this.t,n=e(\"Align table to the left\"),o=e(\"Center table\"),i=e(\"Align table to the right\");return\"rtl\"===t.uiLanguageDirection?{right:i,center:o,left:n}:{left:n,center:o,right:i}}}function Qw(t){return!!t}const Xw=$g.defaultPositions,Zw=[Xw.northArrowSouth,Xw.northArrowSouthWest,Xw.northArrowSouthEast,Xw.southArrowNorth,Xw.southArrowNorthWest,Xw.southArrowNorthEast],t_=[...Zw,$f];function e_(t,e){const n=t.plugins.get(\"ContextualBalloon\");if(qk(t.editing.view.document.selection)){let o;o=\"cell\"===e?o_(t):n_(t),n.updatePosition(o)}}function n_(t){const e=t.model.document.selection.getFirstPosition().findAncestor(\"table\"),n=t.editing.mapper.toViewElement(e);return{target:t.editing.view.domConverter.viewToDom(n),positions:t_}}function o_(t){const e=t.editing.mapper,n=t.editing.view.domConverter,o=t.model.document.selection;if(o.rangeCount>1)return{target:()=>function(t,e){const n=e.editing.mapper,o=e.editing.view.domConverter,i=Array.from(t).map((t=>{const e=i_(t.start),i=n.toViewElement(e);return new fs(o.viewToDom(i))}));return fs.getBoundingRect(i)}(o.getRanges(),t),positions:Zw};const i=i_(o.getFirstPosition()),r=e.toViewElement(i);return{target:n.viewToDom(r),positions:Zw}}function i_(t){return t.nodeAfter&&t.nodeAfter.is(\"element\",\"tableCell\")?t.nodeAfter:t.findAncestor(\"tableCell\")}const r_={borderStyle:\"tableBorderStyle\",borderColor:\"tableBorderColor\",borderWidth:\"tableBorderWidth\",backgroundColor:\"tableBackgroundColor\",width:\"tableWidth\",height:\"tableHeight\",alignment:\"tableAlignment\"};class s_ extends rh{static get requires(){return[np]}static get pluginName(){return\"TablePropertiesUI\"}constructor(t){super(t),t.config.define(\"table.tableProperties\",{borderColors:Fw,backgroundColors:Fw})}init(){const t=this.editor,e=t.t;this._balloon=t.plugins.get(np),this.view=this._createPropertiesView(),this._undoStepBatch=null,t.ui.componentFactory.add(\"tableProperties\",(n=>{const o=new Bd(n);o.set({label:e(\"Table properties\"),icon:'',tooltip:!0}),this.listenTo(o,\"execute\",(()=>this._showView()));const i=Object.values(r_).map((e=>t.commands.get(e)));return o.bind(\"isEnabled\").toMany(i,\"isEnabled\",((...t)=>t.some((t=>t)))),o}))}destroy(){super.destroy(),this.view.destroy()}_createPropertiesView(){const t=this.editor,e=t.editing.view.document,n=t.config.get(\"table.tableProperties\"),o=Jm(n.borderColors),i=Um(t.locale,o),r=Jm(n.backgroundColors),s=Um(t.locale,r),a=new Yw(t.locale,{borderColors:i,backgroundColors:s}),c=t.t;a.render(),this.listenTo(a,\"submit\",(()=>{this._hideView()})),this.listenTo(a,\"cancel\",(()=>{this._undoStepBatch.operations.length&&t.execute(\"undo\",this._undoStepBatch),this._hideView()})),a.keystrokes.set(\"Esc\",((t,e)=>{this._hideView(),e()})),this.listenTo(t.ui,\"update\",(()=>{qk(e.selection)?this._isViewVisible&&e_(t,\"table\"):this._hideView()})),Hd({emitter:a,activator:()=>this._isViewInBalloon,contextElements:[this._balloon.view.element],callback:()=>this._hideView()});const l=Sw(c),d=Dw(c);return a.on(\"change:borderStyle\",this._getPropertyChangeCallback(\"tableBorderStyle\")),a.on(\"change:borderColor\",this._getValidatedPropertyChangeCallback({viewField:a.borderColorInput,commandName:\"tableBorderColor\",errorText:l,validator:Tw})),a.on(\"change:borderWidth\",this._getValidatedPropertyChangeCallback({viewField:a.borderWidthInput,commandName:\"tableBorderWidth\",errorText:d,validator:Pw})),a.on(\"change:backgroundColor\",this._getValidatedPropertyChangeCallback({viewField:a.backgroundInput,commandName:\"tableBackgroundColor\",errorText:l,validator:Tw})),a.on(\"change:width\",this._getValidatedPropertyChangeCallback({viewField:a.widthInput,commandName:\"tableWidth\",errorText:d,validator:Bw})),a.on(\"change:height\",this._getValidatedPropertyChangeCallback({viewField:a.heightInput,commandName:\"tableHeight\",errorText:d,validator:Bw})),a.on(\"change:alignment\",this._getPropertyChangeCallback(\"tableAlignment\")),a}_fillViewFormFromCommandValues(){const t=this.editor.commands;Object.entries(r_).map((([e,n])=>[e,t.get(n).value||\"\"])).forEach((([t,e])=>this.view.set(t,e)))}_showView(){const t=this.editor;this._balloon.add({view:this.view,position:n_(t)}),this._undoStepBatch=t.model.createBatch(),this._fillViewFormFromCommandValues(),this.view.focus()}_hideView(){if(!this._isViewInBalloon)return;const t=this.editor;this.stopListening(t.ui,\"update\"),this.view.saveButtonView.focus(),this._balloon.remove(this.view),this.editor.editing.view.focus()}get _isViewVisible(){return this._balloon.visibleView===this.view}get _isViewInBalloon(){return this._balloon.hasView(this.view)}_getPropertyChangeCallback(t){return(e,n,o)=>{this.editor.execute(t,{value:o,batch:this._undoStepBatch})}}_getValidatedPropertyChangeCallback({commandName:t,viewField:e,validator:n,errorText:o}){const i=as((()=>{e.errorText=o}),500);return(o,r,s)=>{i.cancel(),n(s)?(this.editor.execute(t,{value:s,batch:this._undoStepBatch}),e.errorText=null):i()}}}var a_=n(53),c_={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(a_.a,c_),a_.a.locals;const l_={left:fh,center:kh,right:bh,justify:wh,top:'',middle:'',bottom:''};class d_ extends Gl{constructor(t,e){super(t),this.set({borderStyle:\"\",borderWidth:\"\",borderColor:\"\",padding:\"\",backgroundColor:\"\",width:\"\",height:\"\",horizontalAlignment:\"\",verticalAlignment:\"\"}),this.options=e;const{borderStyleDropdown:n,borderWidthInput:o,borderColorInput:i,borderRowLabel:r}=this._createBorderFields(),{widthInput:s,operatorLabel:a,heightInput:c,dimensionsLabel:l}=this._createDimensionFields(),{horizontalAlignmentToolbar:d,verticalAlignmentToolbar:h,alignmentLabel:u}=this._createAlignmentFields();this.focusTracker=new hl,this.keystrokes=new nl,this.children=this.createCollection(),this.borderStyleDropdown=n,this.borderWidthInput=o,this.borderColorInput=i,this.backgroundInput=this._createBackgroundField(),this.paddingInput=this._createPaddingField(),this.widthInput=s,this.heightInput=c,this.horizontalAlignmentToolbar=d,this.verticalAlignmentToolbar=h;const{saveButtonView:m,cancelButtonView:g}=this._createActionButtons();this.saveButtonView=m,this.cancelButtonView=g,this._focusables=new vl,this._focusCycler=new ld({focusables:this._focusables,focusTracker:this.focusTracker,keystrokeHandler:this.keystrokes,actions:{focusPrevious:\"shift + tab\",focusNext:\"tab\"}}),this.children.add(new Kw(t,{label:this.t(\"Cell properties\")})),this.children.add(new zw(t,{labelView:r,children:[r,n,i,o],class:\"ck-table-form__border-row\"})),this.children.add(new zw(t,{children:[this.backgroundInput]})),this.children.add(new zw(t,{children:[new zw(t,{labelView:l,children:[l,s,a,c],class:\"ck-table-form__dimensions-row\"}),new zw(t,{children:[this.paddingInput],class:\"ck-table-cell-properties-form__padding-row\"})]})),this.children.add(new zw(t,{labelView:u,children:[u,d,h],class:\"ck-table-cell-properties-form__alignment-row\"})),this.children.add(new zw(t,{children:[this.saveButtonView,this.cancelButtonView],class:\"ck-table-form__action-row\"})),this.setTemplate({tag:\"form\",attributes:{class:[\"ck\",\"ck-form\",\"ck-table-form\",\"ck-table-cell-properties-form\"],tabindex:\"-1\"},children:this.children})}render(){super.render(),mp({view:this}),[this.borderStyleDropdown,this.borderColorInput,this.borderWidthInput,this.backgroundInput,this.widthInput,this.heightInput,this.paddingInput,this.horizontalAlignmentToolbar,this.verticalAlignmentToolbar,this.saveButtonView,this.cancelButtonView].forEach((t=>{this._focusables.add(t),this.focusTracker.add(t.element)})),this.keystrokes.listenTo(this.element)}focus(){this._focusCycler.focusFirst()}_createBorderFields(){const t=Ow({colorConfig:this.options.borderColors,columns:5}),e=this.locale,n=this.t,o=new td(e);o.text=n(\"Border\");const i=Ew(n),r=new ap(e,up);r.set({label:n(\"Style\"),class:\"ck-table-form__border-style\"}),r.fieldView.buttonView.set({isOn:!1,withText:!0,tooltip:n(\"Style\")}),r.fieldView.buttonView.bind(\"label\").to(this,\"borderStyle\",(t=>i[t||\"none\"])),r.fieldView.on(\"execute\",(t=>{this.borderStyle=t.source._borderStyleValue})),Ud(r.fieldView,Iw(this));const s=new ap(e,hp);s.set({label:n(\"Width\"),class:\"ck-table-form__border-width\"}),s.fieldView.bind(\"value\").to(this,\"borderWidth\"),s.bind(\"isEnabled\").to(this,\"borderStyle\",h_),s.fieldView.on(\"input\",(()=>{this.borderWidth=s.fieldView.element.value}));const a=new ap(e,t);return a.set({label:n(\"Color\"),class:\"ck-table-form__border-color\"}),a.fieldView.bind(\"value\").to(this,\"borderColor\"),a.bind(\"isEnabled\").to(this,\"borderStyle\",h_),a.fieldView.on(\"input\",(()=>{this.borderColor=a.fieldView.value})),this.on(\"change:borderStyle\",((t,e,n)=>{h_(n)||(this.borderColor=\"\",this.borderWidth=\"\")})),{borderRowLabel:o,borderStyleDropdown:r,borderColorInput:a,borderWidthInput:s}}_createBackgroundField(){const t=this.locale,e=this.t,n=Ow({colorConfig:this.options.backgroundColors,columns:5}),o=new ap(t,n);return o.set({label:e(\"Background\"),class:\"ck-table-cell-properties-form__background\"}),o.fieldView.bind(\"value\").to(this,\"backgroundColor\"),o.fieldView.on(\"input\",(()=>{this.backgroundColor=o.fieldView.value})),o}_createDimensionFields(){const t=this.locale,e=this.t,n=new td(t);n.text=e(\"Dimensions\");const o=new ap(t,hp);o.set({label:e(\"Width\"),class:\"ck-table-form__dimensions-row__width\"}),o.fieldView.bind(\"value\").to(this,\"width\"),o.fieldView.on(\"input\",(()=>{this.width=o.fieldView.element.value}));const i=new Gl(t);i.setTemplate({tag:\"span\",attributes:{class:[\"ck-table-form__dimension-operator\"]},children:[{text:\"×\"}]});const r=new ap(t,hp);return r.set({label:e(\"Height\"),class:\"ck-table-form__dimensions-row__height\"}),r.fieldView.bind(\"value\").to(this,\"height\"),r.fieldView.on(\"input\",(()=>{this.height=r.fieldView.element.value})),{dimensionsLabel:n,widthInput:o,operatorLabel:i,heightInput:r}}_createPaddingField(){const t=this.locale,e=this.t,n=new ap(t,hp);return n.set({label:e(\"Padding\"),class:\"ck-table-cell-properties-form__padding\"}),n.fieldView.bind(\"value\").to(this,\"padding\"),n.fieldView.on(\"input\",(()=>{this.padding=n.fieldView.element.value})),n}_createAlignmentFields(){const t=this.locale,e=this.t,n=new td(t);n.text=e(\"Table cell text alignment\");const o=new Qd(t),i=\"rtl\"===this.locale.contentLanguageDirection;o.set({isCompact:!0,ariaLabel:e(\"Horizontal text alignment toolbar\")}),Rw({view:this,icons:l_,toolbar:o,labels:this._horizontalAlignmentLabels,propertyName:\"horizontalAlignment\",nameToValue:t=>t===(i?\"right\":\"left\")?\"\":t});const r=new Qd(t);return r.set({isCompact:!0,ariaLabel:e(\"Vertical text alignment toolbar\")}),Rw({view:this,icons:l_,toolbar:r,labels:this._verticalAlignmentLabels,propertyName:\"verticalAlignment\",nameToValue:t=>\"middle\"===t?\"\":t}),{horizontalAlignmentToolbar:o,verticalAlignmentToolbar:r,alignmentLabel:n}}_createActionButtons(){const t=this.locale,e=this.t,n=new Bd(t),o=new Bd(t),i=[this.borderWidthInput,this.borderColorInput,this.backgroundInput,this.paddingInput];return n.set({label:e(\"Save\"),icon:gp,class:\"ck-button-save\",type:\"submit\",withText:!0}),n.bind(\"isEnabled\").toMany(i,\"errorText\",((...t)=>t.every((t=>!t)))),o.set({label:e(\"Cancel\"),icon:pp,class:\"ck-button-cancel\",type:\"cancel\",withText:!0}),o.delegate(\"execute\").to(this,\"cancel\"),{saveButtonView:n,cancelButtonView:o}}get _horizontalAlignmentLabels(){const t=this.locale,e=this.t,n=e(\"Align cell text to the left\"),o=e(\"Align cell text to the center\"),i=e(\"Align cell text to the right\"),r=e(\"Justify cell text\");return\"rtl\"===t.uiLanguageDirection?{right:i,center:o,left:n,justify:r}:{left:n,center:o,right:i,justify:r}}get _verticalAlignmentLabels(){const t=this.t;return{top:t(\"Align cell text to the top\"),middle:t(\"Align cell text to the middle\"),bottom:t(\"Align cell text to the bottom\")}}}function h_(t){return!!t}const u_={borderStyle:\"tableCellBorderStyle\",borderColor:\"tableCellBorderColor\",borderWidth:\"tableCellBorderWidth\",width:\"tableCellWidth\",height:\"tableCellHeight\",padding:\"tableCellPadding\",backgroundColor:\"tableCellBackgroundColor\",horizontalAlignment:\"tableCellHorizontalAlignment\",verticalAlignment:\"tableCellVerticalAlignment\"};class m_ extends rh{static get requires(){return[np]}static get pluginName(){return\"TableCellPropertiesUI\"}constructor(t){super(t),t.config.define(\"table.tableCellProperties\",{borderColors:Fw,backgroundColors:Fw})}init(){const t=this.editor,e=t.t;this._balloon=t.plugins.get(np),this.view=this._createPropertiesView(),this._undoStepBatch=null,t.ui.componentFactory.add(\"tableCellProperties\",(n=>{const o=new Bd(n);o.set({label:e(\"Cell properties\"),icon:'',tooltip:!0}),this.listenTo(o,\"execute\",(()=>this._showView()));const i=Object.values(u_).map((e=>t.commands.get(e)));return o.bind(\"isEnabled\").toMany(i,\"isEnabled\",((...t)=>t.some((t=>t)))),o}))}destroy(){super.destroy(),this.view.destroy()}_createPropertiesView(){const t=this.editor,e=t.editing.view.document,n=t.config.get(\"table.tableCellProperties\"),o=Jm(n.borderColors),i=Um(t.locale,o),r=Jm(n.backgroundColors),s=Um(t.locale,r),a=new d_(t.locale,{borderColors:i,backgroundColors:s}),c=t.t;a.render(),this.listenTo(a,\"submit\",(()=>{this._hideView()})),this.listenTo(a,\"cancel\",(()=>{this._undoStepBatch.operations.length&&t.execute(\"undo\",this._undoStepBatch),this._hideView()})),a.keystrokes.set(\"Esc\",((t,e)=>{this._hideView(),e()})),this.listenTo(t.ui,\"update\",(()=>{qk(e.selection)?this._isViewVisible&&e_(t,\"cell\"):this._hideView()})),Hd({emitter:a,activator:()=>this._isViewInBalloon,contextElements:[this._balloon.view.element],callback:()=>this._hideView()});const l=Sw(c),d=Dw(c);return a.on(\"change:borderStyle\",this._getPropertyChangeCallback(\"tableCellBorderStyle\")),a.on(\"change:borderColor\",this._getValidatedPropertyChangeCallback({viewField:a.borderColorInput,commandName:\"tableCellBorderColor\",errorText:l,validator:Tw})),a.on(\"change:borderWidth\",this._getValidatedPropertyChangeCallback({viewField:a.borderWidthInput,commandName:\"tableCellBorderWidth\",errorText:d,validator:Pw})),a.on(\"change:padding\",this._getValidatedPropertyChangeCallback({viewField:a.paddingInput,commandName:\"tableCellPadding\",errorText:d,validator:Bw})),a.on(\"change:width\",this._getValidatedPropertyChangeCallback({viewField:a.widthInput,commandName:\"tableCellWidth\",errorText:d,validator:Bw})),a.on(\"change:height\",this._getValidatedPropertyChangeCallback({viewField:a.heightInput,commandName:\"tableCellHeight\",errorText:d,validator:Bw})),a.on(\"change:backgroundColor\",this._getValidatedPropertyChangeCallback({viewField:a.backgroundInput,commandName:\"tableCellBackgroundColor\",errorText:l,validator:Tw})),a.on(\"change:horizontalAlignment\",this._getPropertyChangeCallback(\"tableCellHorizontalAlignment\")),a.on(\"change:verticalAlignment\",this._getPropertyChangeCallback(\"tableCellVerticalAlignment\")),a}_fillViewFormFromCommandValues(){const t=this.editor.commands;Object.entries(u_).map((([e,n])=>[e,t.get(n).value||\"\"])).forEach((([t,e])=>this.view.set(t,e)))}_showView(){const t=this.editor;this._balloon.add({view:this.view,position:o_(t)}),this._undoStepBatch=t.model.createBatch(),this._fillViewFormFromCommandValues(),this.view.focus()}_hideView(){if(!this._isViewInBalloon)return;const t=this.editor;this.stopListening(t.ui,\"update\"),this.view.saveButtonView.focus(),this._balloon.remove(this.view),this.editor.editing.view.focus()}get _isViewVisible(){return this._balloon.visibleView===this.view}get _isViewInBalloon(){return this._balloon.hasView(this.view)}_getPropertyChangeCallback(t){return(e,n,o)=>{this.editor.execute(t,{value:o,batch:this._undoStepBatch})}}_getValidatedPropertyChangeCallback({commandName:t,viewField:e,validator:n,errorText:o}){const i=as((()=>{e.errorText=o}),500);return(o,r,s)=>{i.cancel(),n(s)?(this.editor.execute(t,{value:s,batch:this._undoStepBatch}),e.errorText=null):i()}}}function g_(t){var e;t.setNormalizer(\"padding\",(e=\"padding\",t=>({path:e,value:Hm(t)}))),t.setNormalizer(\"padding-top\",(t=>({path:\"padding.top\",value:t}))),t.setNormalizer(\"padding-right\",(t=>({path:\"padding.right\",value:t}))),t.setNormalizer(\"padding-bottom\",(t=>({path:\"padding.bottom\",value:t}))),t.setNormalizer(\"padding-left\",(t=>({path:\"padding.left\",value:t}))),t.setReducer(\"padding\",Km(\"padding\")),t.setStyleRelation(\"padding\",[\"padding-top\",\"padding-right\",\"padding-bottom\",\"padding-left\"])}class p_ extends ah{constructor(t,e){super(t),this.attributeName=e}refresh(){const t=lb(this.editor.model.document.selection);this.isEnabled=!!t.length,this.value=this._getSingleValue(t)}execute(t={}){const{value:e,batch:n}=t,o=this.editor.model,i=lb(o.document.selection),r=this._getValueToSet(e);o.enqueueChange(n||\"default\",(t=>{r?i.forEach((e=>t.setAttribute(this.attributeName,r,e))):i.forEach((e=>t.removeAttribute(this.attributeName,e)))}))}_getAttribute(t){if(t)return t.getAttribute(this.attributeName)}_getValueToSet(t){return t}_getSingleValue(t){const e=this._getAttribute(t[0]);return t.every((t=>this._getAttribute(t)===e))?e:void 0}}class f_ extends p_{constructor(t){super(t,\"padding\")}_getAttribute(t){if(t)return dw(t.getAttribute(this.attributeName))}_getValueToSet(t){return hw(t,\"px\")}}class b_ extends p_{constructor(t){super(t,\"width\")}_getValueToSet(t){return hw(t,\"px\")}}class k_ extends p_{constructor(t){super(t,\"height\")}_getValueToSet(t){return hw(t,\"px\")}}class w_ extends p_{constructor(t){super(t,\"backgroundColor\")}}class __ extends p_{constructor(t){super(t,\"verticalAlignment\")}}class C_ extends p_{constructor(t){super(t,\"horizontalAlignment\")}}class A_ extends p_{constructor(t){super(t,\"borderStyle\")}_getAttribute(t){if(t)return dw(t.getAttribute(this.attributeName))}}class v_ extends p_{constructor(t){super(t,\"borderColor\")}_getAttribute(t){if(t)return dw(t.getAttribute(this.attributeName))}}class y_ extends p_{constructor(t){super(t,\"borderWidth\")}_getAttribute(t){if(t)return dw(t.getAttribute(this.attributeName))}_getValueToSet(t){return hw(t,\"px\")}}const x_=/^(top|bottom)$/;class E_ extends rh{static get pluginName(){return\"TableCellPropertiesEditing\"}static get requires(){return[ak]}init(){const t=this.editor,e=t.model.schema,n=t.conversion,o=t.locale;t.data.addStyleProcessorRules(Gk),function(t,e){t.extend(\"tableCell\",{allowAttributes:[\"borderWidth\",\"borderColor\",\"borderStyle\"]}),rw(e,\"td\"),rw(e,\"th\"),sw(e,\"tableCell\",\"borderStyle\",\"border-style\"),sw(e,\"tableCell\",\"borderColor\",\"border-color\"),sw(e,\"tableCell\",\"borderWidth\",\"border-width\")}(e,n),t.commands.add(\"tableCellBorderStyle\",new A_(t)),t.commands.add(\"tableCellBorderColor\",new v_(t)),t.commands.add(\"tableCellBorderWidth\",new y_(t)),function(t,e,n){t.extend(\"tableCell\",{allowAttributes:[\"horizontalAlignment\"]});const o=[\"rtl\"==n.contentLanguageDirection?\"left\":\"right\",\"center\",\"justify\"];e.attributeToAttribute({model:{name:\"tableCell\",key:\"horizontalAlignment\",values:o},view:o.reduce(((t,e)=>({...t,[e]:{key:\"style\",value:{\"text-align\":e}}})),{})})}(e,n,o),t.commands.add(\"tableCellHorizontalAlignment\",new C_(t)),S_(e,n,\"width\",\"width\"),t.commands.add(\"tableCellWidth\",new b_(t)),S_(e,n,\"height\",\"height\"),t.commands.add(\"tableCellHeight\",new k_(t)),t.data.addStyleProcessorRules(g_),S_(e,n,\"padding\",\"padding\"),t.commands.add(\"tableCellPadding\",new f_(t)),t.data.addStyleProcessorRules(Wm),S_(e,n,\"backgroundColor\",\"background-color\"),t.commands.add(\"tableCellBackgroundColor\",new w_(t)),function(t,e){t.extend(\"tableCell\",{allowAttributes:[\"verticalAlignment\"]}),e.attributeToAttribute({model:{name:\"tableCell\",key:\"verticalAlignment\",values:[\"top\",\"bottom\"]},view:{top:{key:\"style\",value:{\"vertical-align\":\"top\"}},bottom:{key:\"style\",value:{\"vertical-align\":\"bottom\"}}}}),e.for(\"upcast\").attributeToAttribute({view:{attributes:{valign:x_}},model:{name:\"tableCell\",key:\"verticalAlignment\",value:t=>t.getAttribute(\"valign\")}})}(e,n),t.commands.add(\"tableCellVerticalAlignment\",new __(t))}}function S_(t,e,n,o){t.extend(\"tableCell\",{allowAttributes:[n]}),iw(e,\"tableCell\",n,o),sw(e,\"tableCell\",n,o)}const D_=\"underline\";class T_ extends rh{static get pluginName(){return\"UnderlineEditing\"}init(){const t=this.editor;t.model.schema.extend(\"$text\",{allowAttributes:D_}),t.model.schema.setAttributeProperties(D_,{isFormatting:!0,copyOnEnter:!0}),t.conversion.attributeToElement({model:D_,view:\"u\",upcastAlso:{styles:{\"text-decoration\":\"underline\"}}}),t.commands.add(D_,new tu(t,D_)),t.keystrokes.set(\"CTRL+U\",\"underline\")}}const B_=\"underline\";class P_ extends rh{init(){const t=this.editor,e=t.t;t.ui.componentFactory.add(B_,(n=>{const o=t.commands.get(B_),i=new Bd(n);return i.set({label:e(\"Underline\"),icon:'',keystroke:\"CTRL+U\",tooltip:!0,isToggleable:!0}),i.bind(\"isOn\",\"isEnabled\").to(o,\"value\",\"isEnabled\"),this.listenTo(i,\"execute\",(()=>{t.execute(B_),t.editing.view.focus()})),i}))}}var I_=n(54),R_={injectType:\"singletonStyleTag\",attributes:{\"data-cke\":!0},insert:\"head\",singleton:!0};gl()(I_.a,R_),I_.a.locals;class F_ extends ih{}F_.builtinPlugins=[class extends rh{static get requires(){return[ph,Ch]}static get pluginName(){return\"Alignment\"}},Xh,class extends rh{static get requires(){return[nu,iu]}static get pluginName(){return\"Bold\"}},class extends rh{static get requires(){return[du,pu,xu,wu,zu,sm]}static get pluginName(){return\"Essentials\"}},class extends rh{static get requires(){return[$m,Xm]}static get pluginName(){return\"FontBackgroundColor\"}},class extends rh{static get requires(){return[tg,eg]}static get pluginName(){return\"FontColor\"}},class extends rh{static get requires(){return[lg,mg]}static get pluginName(){return\"Heading\"}},class extends rh{static get pluginName(){return\"Indent\"}static get requires(){return[pg,kg]}},class extends rh{static get requires(){return[_g,Ag]}static get pluginName(){return\"Italic\"}},class extends rh{static get requires(){return[zg,xp,Xh]}static get pluginName(){return\"Link\"}},class extends rh{static get requires(){return[Zp,of]}static get pluginName(){return\"List\"}},class extends rh{static get requires(){return[af,ff]}static get pluginName(){return\"ListStyle\"}},rg,class extends rh{static get requires(){return[Cf,wf]}static get pluginName(){return\"RemoveFormat\"}},class extends rh{static get requires(){return[vf,xf]}static get pluginName(){return\"Strikethrough\"}},class extends rh{static get requires(){return[ak,uk,fk,vk,Ck,bk,Nk]}static get pluginName(){return\"Table\"}},class extends rh{static get requires(){return[Lk]}static get pluginName(){return\"TableToolbar\"}afterInit(){const t=this.editor,e=t.t,n=t.plugins.get(Lk),o=t.config.get(\"table.contentToolbar\"),i=t.config.get(\"table.tableToolbar\");o&&n.register(\"tableContent\",{ariaLabel:e(\"Table toolbar\"),items:o,getRelatedElement:qk}),i&&n.register(\"table\",{ariaLabel:e(\"Table toolbar\"),items:i,getRelatedElement:jk})}},class extends rh{static get pluginName(){return\"TableProperties\"}static get requires(){return[ww,s_]}},class extends rh{static get pluginName(){return\"TableCellProperties\"}static get requires(){return[E_,m_]}},class extends rh{static get requires(){return[T_,P_]}static get pluginName(){return\"Underline\"}}],F_.defaultConfig={language:\"en\",toolbar:{items:[\"heading\",\"|\",\"bold\",\"italic\",\"underline\",\"strikethrough\",\"removeFormat\",\"|\",\"fontColor\",\"fontBackgroundColor\",\"|\",\"alignment\",\"bulletedList\",\"numberedList\",\"indent\",\"outdent\",\"|\",\"insertTable\",\"link\",\"|\",\"undo\",\"redo\",\"|\"]},table:{contentToolbar:[\"tableColumn\",\"tableRow\",\"mergeTableCells\",\"tableProperties\",\"tableCellProperties\"]},link:{defaultProtocol:\"http://\",decorators:[{mode:\"manual\",label:\"Open in a new tab\",defaultValue:!0,attributes:{target:\"_blank\",rel:\"noopener noreferrer\"}}]}};e.default=F_}]).default}));\r\n//# sourceMappingURL=ckeditor.js.map","!function(e){const l=e.it=e.it||{};l.dictionary=Object.assign(l.dictionary||{},{\"%0 of %1\":\"%0 di %1\",\"Align cell text to the bottom\":\"Allinea il testo della cella in basso\",\"Align cell text to the center\":\"Allinea il testo della cella al centro\",\"Align cell text to the left\":\"Allinea il testo della cella a sinistra\",\"Align cell text to the middle\":\"Allinea il testo della cella in mezzo\",\"Align cell text to the right\":\"Allinea il testo della cella a destra\",\"Align cell text to the top\":\"Allinea il testo della cella in alto\",\"Align center\":\"Allinea al centro\",\"Align left\":\"Allinea a sinistra\",\"Align right\":\"Allinea a destra\",\"Align table to the left\":\"Allinea tabella a sinistra\",\"Align table to the right\":\"Allinea tabella a destra\",Alignment:\"Allineamento\",Aquamarine:\"Aquamarina\",Background:\"Sfondo\",Black:\"Nero\",Blue:\"Blu\",Bold:\"Grassetto\",Border:\"Bordo\",\"Bulleted List\":\"Elenco puntato\",\"Bulleted list styles toolbar\":\"Barra degli strumenti con gli stili degli elenchi puntati\",Cancel:\"Annulla\",\"Cell properties\":\"Proprietà cella\",\"Center table\":\"Allinea tabella al centro\",\"Choose heading\":\"Seleziona intestazione\",Circle:\"Cerchio\",Color:\"Colore\",\"Color picker\":\"Selezione colore\",Column:\"Colonna\",Dashed:\"Tratteggiato\",Decimal:\"Numero\",\"Decimal with leading zero\":\"Numero con zero anteposto\",\"Decrease indent\":\"Riduci rientro\",\"Delete column\":\"Elimina colonna\",\"Delete row\":\"Elimina riga\",\"Dim grey\":\"Grigio tenue\",Dimensions:\"Dimensioni\",Disc:\"Disco\",\"Document colors\":\"Colori del docmento\",Dotted:\"Punteggiato\",Double:\"Doppio\",Downloadable:\"Scaricabile\",\"Dropdown toolbar\":\"Barra degli strumenti del menu a discesa\",\"Edit link\":\"Modifica collegamento\",\"Editor toolbar\":\"Barra degli strumenti dell'editor\",\"Font Background Color\":\"Colore di sfondo caratteri\",\"Font Color\":\"Colore caratteri\",Green:\"Verde\",Grey:\"Grigio\",Groove:\"Scanalatura\",\"Header column\":\"Intestazione colonna\",\"Header row\":\"Riga d'intestazione\",Heading:\"Intestazione\",\"Heading 1\":\"Intestazione 1\",\"Heading 2\":\"Intestazione 2\",\"Heading 3\":\"Intestazione 3\",\"Heading 4\":\"Intestazione 4\",\"Heading 5\":\"Intestazione 5\",\"Heading 6\":\"Intestazione 6\",Height:\"Altezza\",\"Horizontal text alignment toolbar\":\"Barra degli strumenti dell'allineamento orizzontale del testo\",\"Increase indent\":\"Aumenta rientro\",\"Insert column left\":\"Inserisci colonna a sinistra\",\"Insert column right\":\"Inserisci colonna a destra\",\"Insert paragraph after block\":\"Inserisci paragrafo dopo blocco\",\"Insert paragraph before block\":\"Inserisci paragrafo prima di blocco\",\"Insert row above\":\"Inserisci riga sopra\",\"Insert row below\":\"Inserisci riga sotto\",\"Insert table\":\"Inserisci tabella\",Inset:\"Incassato\",Italic:\"Corsivo\",Justify:\"Giustifica\",\"Justify cell text\":\"Testo della cella giustificato\",\"Light blue\":\"Azzurro\",\"Light green\":\"Verde chiaro\",\"Light grey\":\"Grigio chiaro\",Link:\"Collegamento\",\"Link URL\":\"URL del collegamento\",\"Lower-latin\":\"Lettera minuscola\",\"Lower–roman\":\"Numero romano minuscolo\",\"Merge cell down\":\"Unisci cella sotto\",\"Merge cell left\":\"Unisci cella a sinistra\",\"Merge cell right\":\"Unisci cella a destra\",\"Merge cell up\":\"Unisci cella sopra\",\"Merge cells\":\"Unisci celle\",Next:\"Avanti\",None:\"Nessuno\",\"Numbered List\":\"Elenco numerato\",\"Numbered list styles toolbar\":\"Barra degli strumenti con gli stili degli elenchi numerati\",\"Open in a new tab\":\"Apri in una nuova scheda\",\"Open link in new tab\":\"Apri collegamento in nuova scheda\",Orange:\"Arancio\",Outset:\"Rialzato\",Padding:\"Spaziatura interna\",Paragraph:\"Paragrafo\",Previous:\"Indietro\",Purple:\"Porpora\",Red:\"Rosso\",Redo:\"Ripristina\",\"Remove color\":\"Rimuovi colore\",\"Remove Format\":\"Rimuovi formato\",\"Rich Text Editor\":\"Editor di testo formattato\",\"Rich Text Editor, %0\":\"Editor di testo formattato, %0\",Ridge:\"Rilievo\",Row:\"Riga\",Save:\"Salva\",\"Select all\":\"Seleziona tutto\",\"Select column\":\"Seleziona colonna\",\"Select row\":\"Seleziona riga\",\"Show more items\":\"Mostra più elementi\",Solid:\"Solido\",\"Split cell horizontally\":\"Dividi cella orizzontalmente\",\"Split cell vertically\":\"Dividi cella verticalmente\",Square:\"Quadrato\",Strikethrough:\"Barrato\",Style:\"Stile\",\"Table alignment toolbar\":\"Barra degli strumenti dell'allineamento della tabella\",\"Table cell text alignment\":\"Allineamento del testo nella cella della tabella\",\"Table properties\":\"Proprietà tabella\",\"Table toolbar\":\"Barra degli strumenti della tabella\",\"Text alignment\":\"Allineamento del testo\",\"Text alignment toolbar\":\"Barra degli strumenti dell'allineamento\",'The color is invalid. Try \"#FF0000\" or \"rgb(255,0,0)\" or \"red\".':'Il colore non è valido. Provare \"#FF0000\" o \"rgb(255,0,0)\" o \"red\".','The value is invalid. Try \"10px\" or \"2em\" or simply \"2\".':'Il valore non è valido. Provare \"10px\" o \"2em\" o semplicemente \"2\".',\"This link has no URL\":\"Questo collegamento non ha un URL\",\"Toggle the circle list style\":\"Attiva/disattiva lo stile degli elenchi con cerchi\",\"Toggle the decimal list style\":\"Attiva/disattiva lo stile degli elenchi con numeri\",\"Toggle the decimal with leading zero list style\":\"Attiva/disattiva lo stile degli elenchi con numeri con zero anteposto\",\"Toggle the disc list style\":\"Attiva/disattiva lo stile degli elenchi con dischi\",\"Toggle the lower–latin list style\":\"Attiva/disattiva lo stile degli elenchi con lettere minuscole\",\"Toggle the lower–roman list style\":\"Attiva/disattiva lo stile degli elenchi con numeri romani minuscoli\",\"Toggle the square list style\":\"Attiva/disattiva lo stile degli elenchi con quadrati\",\"Toggle the upper–latin list style\":\"Attiva/disattiva lo stile degli elenchi con lettere maiuscole\",\"Toggle the upper–roman list style\":\"Attiva/disattiva lo stile degli elenchi con numeri romani maiuscoli\",Turquoise:\"Turchese\",Underline:\"Sottolineato\",Undo:\"Annulla\",Unlink:\"Elimina collegamento\",\"Upper-latin\":\"Lettera maiuscola\",\"Upper-roman\":\"Numero romano maiuscolo\",\"Vertical text alignment toolbar\":\"Barra degli strumenti dell'allineamento verticale del testo\",White:\"Bianco\",\"Widget toolbar\":\"Barra degli strumenti del widget\",Width:\"Larghezza\",Yellow:\"Giallo\"}),l.getPluralForm=function(e){return 1!=e}}(window.CKEDITOR_TRANSLATIONS||(window.CKEDITOR_TRANSLATIONS={}));","import {v4 as uuidv4} from 'uuid';\r\n\r\nexport const REQUEST_INIT = \"request/init\";\r\nexport const REQUEST_START = \"request/start\";\r\nexport const REQUEST_ERROR = \"request/error\";\r\nexport const REQUEST_SUCCESS = \"request/success\";\r\n\r\nexport enum RequestMethod {\r\n GET = \"GET\",\r\n POST = \"POST\",\r\n PUT = \"PUT\",\r\n DELETE = \"DELETE\"\r\n}\r\n\r\ntype RequestMessages = (t: (str: string, options?: any) => string) => {\r\n onStart?: string,\r\n onSuccess?: string,\r\n onError?: string\r\n};\r\n\r\nexport interface RequestActionPayload {\r\n label: string,\r\n url: string,\r\n method: RequestMethod,\r\n data?: any,\r\n messages?: RequestMessages,\r\n extra?: any,\r\n baseURL?: string,\r\n getHideErrorMessage?: any,\r\n hideSpinner?: boolean,\r\n uuid: string,\r\n contentType?: string,\r\n doNotTransformResponse?: boolean\r\n}\r\n\r\nexport const initRequest = (\r\n label: string,\r\n url: string,\r\n method: RequestMethod = RequestMethod.GET,\r\n data?: any,\r\n messages?: RequestMessages,\r\n extra?: any,\r\n baseURL?: string,\r\n getHideErrorMessage?: any,\r\n hideSpinner?: boolean,\r\n contentType?: string,\r\n doNotTransformResponse?: boolean\r\n) => ({\r\n type: REQUEST_INIT,\r\n payload: {\r\n uuid: uuidv4(),\r\n label,\r\n url,\r\n method,\r\n data,\r\n messages,\r\n extra,\r\n baseURL,\r\n getHideErrorMessage,\r\n hideSpinner,\r\n contentType,\r\n doNotTransformResponse\r\n }\r\n});\r\n\r\nexport const startRequest = (initRequestPayload: RequestActionPayload) => ({\r\n type: REQUEST_START,\r\n payload: initRequestPayload\r\n});\r\n\r\nexport const successRequest = (requestActionPayload: RequestActionPayload, response?: any, extra?: any) => ({\r\n type: REQUEST_SUCCESS,\r\n payload: {\r\n ...requestActionPayload,\r\n response,\r\n extra: {\r\n ...extra,\r\n ...requestActionPayload.extra\r\n }\r\n }\r\n});\r\n\r\nexport type ManagedServerError = {\r\n errorCode: number,\r\n stackTrace?: string\r\n};\r\n\r\nexport const errorRequest = (\r\n requestActionPayload: RequestActionPayload,\r\n statusCode?: number,\r\n response?: any,\r\n extra?: any\r\n) => ({\r\n type: REQUEST_ERROR,\r\n payload: {\r\n ...requestActionPayload,\r\n statusCode,\r\n response,\r\n extra: {\r\n ...extra,\r\n ...requestActionPayload.extra\r\n }\r\n }\r\n});\r\n","import React, {Fragment} from 'react'\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {Helmet} from \"react-helmet\";\r\nimport \"./style.css\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n justifyContent: \"center\",\r\n alignItems: \"center\",\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n background: {\r\n \"&, & > *\": {\r\n position: \"fixed\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n objectFit: \"cover\",\r\n zIndex: -9999,\r\n }\r\n },\r\n textContainer: {\r\n color: \"white\",\r\n textAlign: \"center\",\r\n padding: 16,\r\n background: \"rgba(0,0,0,0.5)\"\r\n },\r\n title: {\r\n fontSize: 60,\r\n padding: 8,\r\n letterSpacing: 0\r\n },\r\n slogan: {\r\n fontSize: 24,\r\n fontWeight: 400,\r\n padding: 8,\r\n letterSpacing: 0\r\n },\r\n buttonsContainer: {\r\n marginTop: 24\r\n },\r\n logo: {\r\n position: \"absolute\",\r\n top: \"80%\",\r\n width: \"80%\",\r\n textAlign: \"center\",\r\n \"& > *\": {\r\n maxWidth: 340,\r\n maxHeight: 64\r\n }\r\n }\r\n});\r\n\r\nconst Hero = ({classes, title, slogan, logo, background, children}) =>\r\n \r\n \r\n \r\n \r\n
\r\n {(title?.length > 0 || slogan?.length > 0) && (\r\n
\r\n {title?.length > 0 && (\r\n \r\n {title}\r\n \r\n )}\r\n {slogan?.length > 0 && (\r\n \r\n {slogan}\r\n \r\n )}\r\n
\r\n )}\r\n \r\n {children}\r\n \r\n \r\n {logo}\r\n \r\n
\r\n {background}\r\n
\r\n
\r\n
;\r\n\r\nexport default withStyles(styles)(Hero);","import React, {useEffect} from 'react';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst FullscreenDialog = ({\r\n children,\r\n ...props\r\n }) => {\r\n\r\n useEffect(() => {\r\n return () => {\r\n if ($(\".MuiDialog-paperFullScreen\").length <= 1) {\r\n document.body.classList.remove(\"body--hidden-scrollbar\");\r\n }\r\n }\r\n }, []);\r\n\r\n return (\r\n {\r\n document.body.classList.add(\"body--hidden-scrollbar\");\r\n },\r\n onExit: () => {\r\n if ($(\".MuiDialog-paperFullScreen\").length <= 1) {\r\n document.body.classList.remove(\"body--hidden-scrollbar\");\r\n }\r\n }\r\n }}\r\n >\r\n {children}\r\n \r\n );\r\n};\r\n\r\nexport default FullscreenDialog;","import React from 'react';\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {withStyles} from '@material-ui/core/styles';\r\nimport DialogTitle from '@material-ui/core/DialogTitle';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport Typography from '@material-ui/core/Typography';\r\n\r\nconst styles = theme => ({\r\n root: {},\r\n closeButton: {\r\n marginLeft: 8,\r\n marginRight: -8,\r\n padding: 4\r\n },\r\n});\r\n\r\nconst CustomDialogTitle = ({\r\n classes,\r\n onClose,\r\n children,\r\n ...props\r\n }) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {children} \r\n \r\n \r\n \r\n {onClose && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default withStyles(styles)(CustomDialogTitle);","import React, {Fragment, useState} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport FullscreenDialog from \"../fullscreen-dialog\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\n\r\nconst styles = theme => ({\r\n metadataIcon: {\r\n width: 24,\r\n height: 24,\r\n lineHeight: \"24px\",\r\n fontSize: 20\r\n }\r\n});\r\n\r\nconst CatalogMetadataButton = ({\r\n t,\r\n classes,\r\n metadataUrl,\r\n label,\r\n iconSize\r\n }) => {\r\n\r\n const [isVisible, setVisibility] = useState(false);\r\n\r\n const onOpen = () => {\r\n setVisibility(true);\r\n };\r\n\r\n const onClose = ev => {\r\n ev.stopPropagation();\r\n setVisibility(false);\r\n };\r\n\r\n if (!metadataUrl) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n \r\n {\r\n ev.stopPropagation();\r\n onOpen();\r\n }}\r\n aria-label={label || t(\"components.catalogMetadataButton.label\")}\r\n >\r\n M\r\n \r\n \r\n\r\n \r\n \r\n {label || t(\"components.catalogMetadataButton.label\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n );\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(CatalogMetadataButton);","import React from 'react';\r\nimport {sanitize} from \"dompurify\";\r\nimport Box from \"@material-ui/core/Box\";\r\n\r\nconst SanitizedHTML = ({html, allowTarget, className, ...props}) =>\r\n ;\r\n\r\nexport default SanitizedHTML;","import React, {Fragment, useState} from \"react\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport InfoOutlinedIcon from '@material-ui/icons/InfoOutlined';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport SanitizedHTML from \"../sanitized-html\";\r\n\r\nconst CatalogInfoButton = ({\r\n t,\r\n info,\r\n label,\r\n iconSize\r\n }) => {\r\n\r\n const [isVisible, setVisibility] = useState(false);\r\n\r\n const onOpen = () => {\r\n setVisibility(true);\r\n };\r\n\r\n const onClose = ev => {\r\n ev.stopPropagation();\r\n setVisibility(false);\r\n };\r\n\r\n if (!info) {\r\n return ;\r\n }\r\n\r\n return (\r\n \r\n \r\n {\r\n ev.stopPropagation();\r\n onOpen();\r\n }}\r\n aria-label={label || t(\"components.catalogInfoButton.label\")}\r\n >\r\n \r\n \r\n \r\n\r\n \r\n \r\n {label || t(\"components.catalogInfoButton.label\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n );\r\n}\r\n\r\nexport default withTranslation()(CatalogInfoButton);","import React from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {Link} from 'react-router-dom';\r\n\r\nconst styles = theme => ({\r\n link: {\r\n borderRadius: 4,\r\n fontSize: 16,\r\n height: \"100%\",\r\n width: \"100%\",\r\n \"& > a\": {\r\n outlineOffset: -1,\r\n }\r\n },\r\n linkEnabled: {\r\n cursor: \"pointer\",\r\n \"& > a\": {\r\n color: theme.palette.primary.main,\r\n textDecoration: \"none\"\r\n },\r\n \"&:hover\": {\r\n background: \"#f5f5f5\",\r\n },\r\n \"&:hover > a\": {\r\n textDecoration: \"underline\"\r\n }\r\n },\r\n linkDisabled: {\r\n color: \"rgba(0, 0, 0, 0.42)\"\r\n },\r\n linkContent: {\r\n height: \"100%\",\r\n display: \"flex\",\r\n flexDirection: \"column\"\r\n },\r\n linkContentImage: {\r\n \"& > img\": {\r\n height: \"100%\",\r\n width: \"100%\",\r\n objectFit: \"cover\"\r\n }\r\n },\r\n linkContentText: {\r\n height: \"100%\",\r\n width: \"100%\",\r\n padding: 8,\r\n display: \"flex\",\r\n alignItems: \"center\"\r\n },\r\n linkContentTextIcon: {\r\n marginRight: 8,\r\n display: \"flex\"\r\n },\r\n linkContentTextText: {\r\n display: \"flex\",\r\n width: \"100%\"\r\n },\r\n linkContentSubText: {}\r\n});\r\n\r\nconst CustomLink = ({\r\n classes,\r\n to,\r\n text,\r\n textStyle,\r\n subText,\r\n subTextStyle,\r\n icon,\r\n image,\r\n imageStyle,\r\n onClick,\r\n disabled\r\n }) => {\r\n\r\n const linkContent = (\r\n
\r\n {image && (\r\n
\r\n \"\"/\r\n
\r\n )}\r\n
\r\n {icon && (\r\n
\r\n {icon}\r\n
\r\n )}\r\n {text && (\r\n
\r\n {text}\r\n
\r\n )}\r\n
\r\n
\r\n {subText}\r\n
\r\n
\r\n );\r\n\r\n return (\r\n
\r\n {disabled\r\n ? linkContent\r\n : (\r\n \r\n {linkContent}\r\n \r\n )\r\n }\r\n
\r\n )\r\n};\r\n\r\nexport default withStyles(styles)(CustomLink);\r\n","import React from 'react';\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardActions from '@material-ui/core/CardActions';\r\nimport CatalogMetadataButton from \"../catalog-metadata-button\";\r\nimport CatalogInfoButton from \"../catalog-info-button\";\r\nimport CustomLink from \"../custom-link\";\r\n\r\nconst styles = () => ({\r\n card: {\r\n height: \"100%\",\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n justifyContent: \"space-between\"\r\n }\r\n});\r\n\r\nconst CardsGrid = ({\r\n t,\r\n classes,\r\n list,\r\n getHref,\r\n onClick,\r\n imageStyle,\r\n hideLabelOnElemWithImage,\r\n icon\r\n }) =>\r\n \r\n {list.map((c, i) =>\r\n \r\n \r\n \r\n {(c.description || c.metadataUrl) && (\r\n \r\n {c.description && (\r\n \r\n )}\r\n {c.metadataUrl && (\r\n \r\n )}\r\n \r\n )}\r\n \r\n \r\n )}\r\n ;\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(CardsGrid);","import React, {Fragment} from 'react';\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport Box from \"@material-ui/core/Box\";\r\n\r\nconst PageSection = props =>\r\n \r\n {props.sectiontitle && (\r\n \r\n \r\n {props.sectiontitle}\r\n \r\n \r\n \r\n )}\r\n {props.children}\r\n ;\r\n\r\nexport default PageSection;","import React, {Component} from 'react';\r\nimport {compose} from \"redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Zoom from \"@material-ui/core/Zoom\";\r\nimport Fab from \"@material-ui/core/Fab\";\r\nimport {ArrowUpward} from \"@material-ui/icons\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport ClearIcon from \"@material-ui/icons/Clear\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n fab: {\r\n position: 'fixed',\r\n right: 8,\r\n bottom: 55,\r\n height: '50px',\r\n width: '50px',\r\n zIndex: theme.zIndex.appBar\r\n },\r\n childrenContainer: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n oldBrowserWarning: {\r\n position: \"fixed\",\r\n bottom: 0,\r\n left: 0,\r\n zIndex: 1999,\r\n height: 48,\r\n width: \"100%\",\r\n background: \"rgba(0, 0, 0, 0.7)\",\r\n fontSize: 16,\r\n lineHeight: \"34px\",\r\n color: \"white\",\r\n padding: 8\r\n }\r\n});\r\n\r\nclass Page extends Component {\r\n\r\n state = {\r\n transparent: true,\r\n isOldBrowserWarningVisible: false\r\n };\r\n\r\n scroll(ref) {\r\n ref.current.scrollIntoView({\r\n behavior: 'smooth',\r\n alignToTop: true,\r\n });\r\n }\r\n\r\n scrollTop() {\r\n window.scroll({top: 0, left: 0, behavior: 'smooth'});\r\n }\r\n\r\n handleScroll = () => {\r\n const {transparent} = this.state;\r\n const scrollTop = window.pageYOffset || document.documentElement.scrollTop;\r\n\r\n if (scrollTop > 50 && transparent) {\r\n this.setState({transparent: false});\r\n }\r\n\r\n if (scrollTop <= 50 && !transparent) {\r\n this.setState({transparent: true});\r\n }\r\n };\r\n\r\n handleStyle = () => {\r\n const nodeHeaderHeight = document.getElementById(\"node-header\")\r\n ? document.getElementById(\"node-header\").offsetHeight\r\n : 0;\r\n if (document.getElementById(\"main\")) {\r\n document.getElementById(\"main\").setAttribute(\"style\", `padding-top: ${nodeHeaderHeight}px`);\r\n }\r\n };\r\n\r\n closeWarning = () => {\r\n this.setState({isOldBrowserWarningVisible: false});\r\n }\r\n\r\n componentDidMount() {\r\n // Internet Explorer 6-11\r\n const isIE = !!document.documentMode;\r\n\r\n // Edge 20+\r\n const isEdge = !isIE && !!window.StyleMedia;\r\n\r\n this.setState({isOldBrowserWarningVisible: (isIE || isEdge)});\r\n\r\n window.scroll({top: 0, left: 0});\r\n\r\n window.addEventListener('scroll', this.handleScroll);\r\n\r\n window.addEventListener('resize', this.handleStyle);\r\n\r\n if (this.props.title && this.props.title.length > 0) {\r\n document.title = this.props.title;\r\n }\r\n }\r\n\r\n componentDidUpdate() {\r\n if (this.props.title && this.props.title.length > 0) {\r\n document.title = this.props.title;\r\n }\r\n this.handleScroll();\r\n this.handleStyle();\r\n }\r\n\r\n componentWillUnmount() {\r\n window.removeEventListener('scroll', this.handleScroll);\r\n window.removeEventListener('resize', this.handleStyle);\r\n }\r\n\r\n render() {\r\n\r\n const {classes, children, id, t} = this.props;\r\n const {transparent, isOldBrowserWarningVisible} = this.state;\r\n\r\n return (\r\n
\r\n {isOldBrowserWarningVisible && (\r\n
\r\n \r\n \r\n This browser in not completely supported, please consider to install the new version\r\n of Microsoft Edge\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n
\r\n {children}\r\n
\r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(Page);","import {Reducer} from \"redux\";\r\nimport {REQUEST_ERROR, REQUEST_SUCCESS} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n USER_CHANGE_PASSWORD_FORM_HIDE,\r\n USER_CHANGE_PASSWORD_FORM_SHOW,\r\n USER_CLEAR,\r\n USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_CLEAR,\r\n USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_SET,\r\n USER_EDIT_USER_CLEAR,\r\n USER_EDIT_USER_FETCH,\r\n USER_EDIT_USER_MODAL_HIDE,\r\n USER_EDIT_USER_MODAL_SHOW,\r\n USER_EDIT_USER_SUBMIT,\r\n USER_FETCH,\r\n USER_LOGIN_FORM_HIDE,\r\n USER_LOGIN_FORM_SHOW,\r\n USER_PASSWORD_CHANGE,\r\n USER_PASSWORD_SET,\r\n USER_REFRESH,\r\n USER_REGISTER_MODAL_HIDE,\r\n USER_REGISTER_MODAL_SHOW,\r\n USER_SET_PASSWORD_FORM_HIDE,\r\n USER_SET_PASSWORD_FORM_SHOW\r\n} from './userActions';\r\nimport {INIT} from '../rootActions';\r\nimport {PERSISTENCE_ACTION_KEY} from '../../middlewares/persistence/middleware';\r\nimport {USER_ERRORS_INVALID_LOGIN} from '../../constants/getUserErrorsTranslations';\r\nimport {USERS_CONFIG_USER_CREATE} from '../usersConfig/usersConfigActions';\r\n\r\nexport enum UserRoles {\r\n Administrator = \"Administrator\",\r\n User = \"User\"\r\n}\r\n\r\nexport enum UserPermissions {\r\n ManageCache = \"ManageCache\",\r\n ManageTemplate = \"ManageTemplate\",\r\n ManageConfig = \"ManageConfig\",\r\n ManageView = \"ManageView\"\r\n}\r\n\r\nexport type UserState = {\r\n isAuthenticated: boolean,\r\n email: string | null,\r\n roles: UserRoles[],\r\n permissions: string[],\r\n token: string | null, // auth token\r\n refreshTokenExpiration: string | null, // refresh token expiration time (utc)\r\n tokenTTL: number | null // auth token expiration ttl (minutes)\r\n tokenReceivedTime: number | null // auth token received time (ms from unix epoch)\r\n isLoginDialogOpen: boolean,\r\n delayedRequest: object | null,\r\n message: string | null,\r\n isSetPasswordDialogOpen: boolean,\r\n isChangePasswordDialogOpen: boolean,\r\n isRegisterDialogOpen: boolean,\r\n isEditUserDialogOpen: boolean\r\n config: any,\r\n userErrors: string[] | null\r\n};\r\n\r\nconst initialState = {\r\n isAuthenticated: false,\r\n email: null,\r\n roles: [],\r\n permissions: [],\r\n token: null,\r\n refreshTokenExpiration: null,\r\n tokenTTL: null,\r\n tokenReceivedTime: null,\r\n isLoginDialogOpen: false,\r\n delayedRequest: null,\r\n message: null,\r\n isSetPasswordDialogOpen: false,\r\n isChangePasswordDialogOpen: false,\r\n isRegisterDialogOpen: false,\r\n isEditUserDialogOpen: false,\r\n config: null,\r\n userErrors: null\r\n};\r\n\r\nconst userReducer: Reducer = (\r\n state = initialState,\r\n action\r\n) => {\r\n switch (action.type) {\r\n case INIT:\r\n return action.payload[PERSISTENCE_ACTION_KEY].user\r\n ? ({\r\n ...initialState,\r\n ...action.payload[PERSISTENCE_ACTION_KEY].user,\r\n isLoginDialogOpen: false\r\n })\r\n : initialState;\r\n case USER_LOGIN_FORM_SHOW:\r\n return {\r\n ...state,\r\n isLoginDialogOpen: true,\r\n message: action.payload?.alert\r\n };\r\n case USER_LOGIN_FORM_HIDE:\r\n return {\r\n ...state,\r\n isLoginDialogOpen: false,\r\n message: undefined\r\n };\r\n case USER_SET_PASSWORD_FORM_SHOW:\r\n return {\r\n ...state,\r\n isLoginDialogOpen: false,\r\n isSetPasswordDialogOpen: true,\r\n setPasswordToken: action.payload.token\r\n };\r\n case USER_SET_PASSWORD_FORM_HIDE:\r\n return {\r\n ...state,\r\n isSetPasswordDialogOpen: false,\r\n message: undefined\r\n };\r\n case USER_CHANGE_PASSWORD_FORM_SHOW:\r\n return {\r\n ...state,\r\n isChangePasswordDialogOpen: true\r\n };\r\n case USER_CHANGE_PASSWORD_FORM_HIDE:\r\n return {\r\n ...state,\r\n isChangePasswordDialogOpen: false\r\n };\r\n case USER_REGISTER_MODAL_SHOW:\r\n return {\r\n ...state,\r\n isRegisterDialogOpen: true\r\n }\r\n case USER_REGISTER_MODAL_HIDE:\r\n return {\r\n ...state,\r\n isRegisterDialogOpen: false\r\n }\r\n case USER_EDIT_USER_MODAL_SHOW:\r\n return {\r\n ...state,\r\n isEditUserDialogOpen: true\r\n }\r\n case USER_EDIT_USER_MODAL_HIDE:\r\n return {\r\n ...state,\r\n isEditUserDialogOpen: false\r\n }\r\n case USER_EDIT_USER_CLEAR:\r\n return {\r\n ...state,\r\n config: null,\r\n userErrors: null\r\n }\r\n case USER_CLEAR:\r\n return initialState;\r\n case REQUEST_SUCCESS: {\r\n switch (action.payload.label) {\r\n case USER_FETCH: {\r\n const response = action.payload.response;\r\n return {\r\n ...response,\r\n tokenReceivedTime: new Date().getTime()\r\n };\r\n }\r\n case USER_REFRESH:\r\n const response = action.payload.response;\r\n return {\r\n ...response,\r\n tokenReceivedTime: new Date().getTime()\r\n };\r\n case USER_PASSWORD_SET:\r\n return {\r\n ...state,\r\n isSetPasswordDialogOpen: false\r\n };\r\n case USER_PASSWORD_CHANGE:\r\n return {\r\n ...state,\r\n isChangePasswordDialogOpen: false\r\n };\r\n case USERS_CONFIG_USER_CREATE:\r\n if (!action.payload.response.haveError && action.payload.extra?.isAnonymous) {\r\n return {\r\n ...state,\r\n isRegisterDialogOpen: false\r\n }\r\n } else {\r\n return state;\r\n }\r\n case USER_EDIT_USER_FETCH: {\r\n return {\r\n ...state,\r\n config: action.payload.response\r\n };\r\n }\r\n case USER_EDIT_USER_SUBMIT: {\r\n if (action.payload.response.haveError) {\r\n return {\r\n ...state,\r\n isEditUserDialogOpen: false,\r\n userErrors: action.payload.response.errors\r\n };\r\n } else {\r\n return {\r\n ...state,\r\n userErrors: null\r\n };\r\n }\r\n }\r\n default:\r\n return state;\r\n }\r\n }\r\n case USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_SET:\r\n return {\r\n ...state,\r\n delayedRequest: action.payload.request\r\n };\r\n case USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_CLEAR:\r\n return {\r\n ...state,\r\n delayedRequest: null\r\n };\r\n case REQUEST_ERROR: {\r\n switch (action.payload.label) {\r\n case USER_FETCH: {\r\n if (action.payload.response.status === 401) {\r\n return {\r\n ...state,\r\n message: USER_ERRORS_INVALID_LOGIN\r\n };\r\n }\r\n return state;\r\n }\r\n default:\r\n return state;\r\n }\r\n }\r\n default:\r\n return state;\r\n }\r\n};\r\n\r\nexport default userReducer;","/* config */\r\nconst configFolderPath = \"config/\";\r\nexport const getInitConfigUrl = () => configFolderPath + \"config.json\";\r\nexport const getAppConfigUrl = () => configFolderPath + \"appConfig.json\";\r\nexport const getDashboardConfigUrl = () => configFolderPath + \"dashboardConfig.json\";\r\nexport const getCustomCssUrl = () => configFolderPath + \"custom.css\";\r\n\r\n/* local footer html page */\r\nexport const getFooterHtmlUrl = (lang: string) => configFolderPath + `footer/${lang}.html`;\r\n\r\n/* hub */\r\nexport const getHubMinimalInfoUrl = () => \"hub/minimalInfo\";\r\n\r\n/* node */\r\nexport const getNodeUrl = (nodeId: number) => `nodes/${nodeId}`;\r\nexport const getNodeCatalogUrl = (nodeId: number) => `nodes/${nodeId}/catalog`;\r\n\r\n/* cache */\r\nexport const getClearMemoryCacheUrl = () => \"MemoryCache/Clear\";\r\nexport const getDataflowsCacheListUrl = (nodeId: number) => `DataflowCache/DataflowData/Nodes/${nodeId}`;\r\nexport const getDataflowsCacheUpdateUrl = (nodeId: number, cacheId: string) => `DataflowCache/DataflowData/${cacheId}/Nodes/${nodeId}`;\r\nexport const getDataflowsCreateCacheUrl = (nodeId: number) => `DataflowCache/DataflowData/Nodes/${nodeId}`;\r\nexport const getDataflowsClearCacheUrl = (nodeId: number, cacheId: string) => `DataflowCache/Clear/${cacheId}/Nodes/${nodeId}`;\r\nexport const getDataflowsClearAllCacheUrl = (nodeId: number) => `DataflowCache/ClearAll/Nodes/${nodeId}`;\r\nexport const getClearNodeCatalogMemoryCacheUrl = (nodeId: number) => `MemoryCache/Clear/CatalogTree/Nodes/${nodeId}`;\r\n\r\n/* templates */\r\nexport const getNodeTemplatesUrl = (nodeId: number) => `nodes/${nodeId}/templates`;\r\nexport const getCreateTemplateUrl = (nodeId: number) => `nodes/${nodeId}/templates`;\r\nexport const getDeleteTemplateUrl = (nodeId: number, id: number) => `nodes/${nodeId}/templates/${id}`;\r\n\r\n/* views */\r\nexport const getViewsUrl = () => `views`;\r\nexport const getCreateViewUrl = (nodeId: number) => `nodes/${nodeId}/views`;\r\nexport const getDeleteViewUrl = (nodeId: number, id: number) => `nodes/${nodeId}/views/${id}`;\r\n\r\n/* dataset */\r\nexport const getDatasetUrl = (nodeId: number, datasetId: string) =>\r\n `nodes/${nodeId}/datasets/${datasetId}/data`;\r\nexport const getDatasetStructureUrl = (nodeId: number, datasetId: string, viewId: string) =>\r\n `nodes/${nodeId}/datasets/${datasetId}/structure${viewId ? `/${viewId}` : \"\"}`;\r\nexport const getDatasetStructureCodelistUrl = (nodeId: number, datasetId: string, dimensionId: string, isFull: boolean) =>\r\n `nodes/${nodeId}/datasets/${datasetId}/column/${dimensionId}/${isFull ? \"full\" : \"partial\"}/values`;\r\nexport const getDatasetStructureDynamicCodelistUrl = (nodeId: number, datasetId: string, dimensionId: string) =>\r\n `nodes/${nodeId}/datasets/${datasetId}/PartialCodelists/${dimensionId}`;\r\nexport const getDatasetStructureCodelistsUrl = (nodeId: number, datasetId: string, isFull: boolean) =>\r\n `nodes/${nodeId}/datasets/${datasetId}/columns/${isFull ? \"full\" : \"partial\"}/values`;\r\nexport const getDatasetDownloadUrl = (nodeId: number, datasetId: string, format: string, zipped?: boolean) =>\r\n `nodes/${nodeId}/datasets/${datasetId}/${zipped === true ? \"downloadZip\" : \"download\"}/${format}`;\r\nexport const getDatasetDownloadCustomUrl = (nodeId: number, format: string, zipped?: boolean) =>\r\n `nodes/${nodeId}/export/${format}/${zipped === true ? \"true\" : \"false\"}`;\r\nexport const getDatasetSdmxQueryUrl = (nodeId: number, datasetId: string) =>\r\n `nodes/${nodeId}/datasets/${datasetId}/url`;\r\n\r\n/* config */\r\nexport const getHubConfigGetUrl = () => \"hub/config\";\r\nexport const getHubConfigPutUrl = () => \"hub\";\r\nexport const getNodesConfigUrl = () => \"nodes/config\";\r\nexport const getNodesOrderPutUrl = () => \"nodes/order\";\r\nexport const getNodeConfigGetUrl = (nodeId: number) => `nodes/${nodeId}/config`;\r\nexport const getNodesConfigPostUrl = () => 'nodes';\r\nexport const getNodesConfigPutUrl = (nodeId: number) => `nodes/${nodeId}`;\r\nexport const getNodeDeleteUrl = (nodeId: number, force?: boolean) => `nodes/${nodeId}${force ? \"/true\" : \"\"}`;\r\n\r\n/* log */\r\nexport const getQueryLog = (limit: number) => `tracing/limit/${limit}`;\r\n\r\n/* files */\r\nexport const getFileUploadUrl = () => 'File/Upload';\r\n\r\n/* authentication */\r\nexport const getTokenUrl = () => 'auth/token';\r\nexport const getRefreshTokenUrl = () => 'auth/refreshToken';\r\n\r\n/* users management */\r\nexport const getUsersConfigGetUrl = () => \"users\";\r\nexport const getUserConfigGetUrl = (userId: number) => `users/${userId}`;\r\nexport const getUserConfigPostUrl = () => \"users/register\";\r\nexport const getUserConfigPutUrl = (userId: number) => `users/${userId}`;\r\nexport const getUserDeleteUrl = (userId: number) => `users/${userId}`;\r\nexport const getUserSendResetPasswordMailUrl = () => 'Users/RecoveryPassword';\r\nexport const getUserResetPasswordUrl = () => 'Users/ResetPassword';\r\nexport const getUserChangePasswordUrl = () => 'Users/ChangePassword';\r\n\r\n/* Geometry */\r\nexport const getGeometryUrl = (nodeId: number) => \"Geometry\" + (nodeId ? `/${nodeId}` : \"\");\r\n\r\n/* permissions */\r\nexport const getNodePermissionsConfigGetUrl = (nodeId: number) => `Users/Permissions/Nodes/${nodeId}`;\r\nexport const getNodePermissionsConfigPutUrl = (nodeId: number) => `Users/Permissions/Nodes/${nodeId}`;\r\n\r\n/* dashboards */\r\nexport const getUserDashboardsUrl = () => \"Dashboards\";\r\nexport const getDashboardsUrl = (dashboardId: number) => `Dashboards/${dashboardId}`;\r\nexport const getDeleteDashboardUrl = (dashboardId: number) => `Dashboards/${dashboardId}`;\r\nexport const getCreateDashboardUrl = () => `Dashboards/`;\r\nexport const getUpdateDashboardUrl = (dashboardId: number) => `Dashboards/${dashboardId}`;\r\nexport const getHubDashboardsUrl = () => \"Dashboards/Hub\";\r\nexport const getNodeDashboardsUrl = (nodeId: number) => `Dashboards/Nodes/${nodeId}`;\r\nexport const getAddHubDashboardUrl = (dashboardId: number) => `Dashboards/${dashboardId}/Hub`;\r\nexport const getRemoveHubDashboardUrl = (dashboardId: number) => `Dashboards/${dashboardId}/Hub`;\r\nexport const getOrderHubDashboardsUrl = () => 'Dashboards/Order/Hub';\r\nexport const getAddNodeDashboardUrl = (nodeId: number, dashboardId: number) => `Dashboards/${dashboardId}/Nodes/${nodeId}`;\r\nexport const getRemoveNodeDashboardUrl = (nodeId: number, dashboardId: number) => `Dashboards/${dashboardId}/Nodes/${nodeId}`;\r\nexport const getOrderNodeDashboardsUrl = (nodeId: number) => `Dashboards/Order/Nodes/${nodeId}`;","import React, {Fragment} from 'react';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport {DialogActions} from \"@material-ui/core\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport FullscreenDialog from \"../fullscreen-dialog\";\r\n\r\nconst SettingsDialog = ({title, children, onSubmit, onClose, open, maxWidth, hasSubmit, noMinHeight, customSubmitLabel, noFullScreen}) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n const dialogContent = (\r\n \r\n \r\n {title}\r\n \r\n \r\n {children}\r\n \r\n \r\n {hasSubmit\r\n ? (\r\n \r\n \r\n \r\n \r\n )\r\n : (\r\n \r\n )}\r\n \r\n \r\n )\r\n\r\n return noFullScreen\r\n ? (\r\n \r\n {dialogContent}\r\n \r\n )\r\n : (\r\n \r\n {dialogContent}\r\n \r\n );\r\n};\r\n\r\nexport default SettingsDialog;\r\n","export const USER_ERRORS_INVALID_LOGIN = \"InvalidLogin\";\r\n\r\nexport const getUserErrorsTranslations = t => {\r\n\r\n const translations = t => ({\r\n DuplicateEmail: t(\"errors.user.duplicateEmail\"),\r\n DuplicateUserName: t(\"errors.user.duplicateUsername\"),\r\n InvalidLogin: t(\"errors.user.invalidLogin\"),\r\n PasswordRequiresDigit: t(\"errors.user.passwordRequiresDigit\"),\r\n PasswordTooShort: t(\"errors.user.passwordTooShort\"),\r\n PasswordRequiresNonAlphanumeric: t(\"errors.user.passwordRequiresNonAlphanumeric\"),\r\n PasswordRequiresUpper: t(\"errors.user.passwordRequiresUpper\"),\r\n PasswordRequiresLower: t(\"errors.user.passwordRequiresLower\"),\r\n InvalidEmail: t(\"errors.user.invalidEmail\"),\r\n InvalidToken: t(\"errors.user.invalidToken\"),\r\n DefaultError: t(\"errors.user.defaultError\"),\r\n ConcurrencyFailure: t(\"errors.user.concurrencyFailure\"),\r\n PasswordMismatch: t(\"errors.user.passwordMismatch\"),\r\n LoginAlreadyAssociated: t(\"errors.user.loginAlreadyAssociated\"),\r\n InvalidUserName: t(\"errors.user.invalidUserName\"),\r\n InvalidRoleName: t(\"errors.user.invalidRoleName\"),\r\n DuplicateRoleName: t(\"errors.user.duplicateRoleName\"),\r\n UserAlreadyHasPassword: t(\"errors.user.userAlreadyHasPassword\"),\r\n UserLockoutNotEnabled: t(\"errors.user.userLockoutNotEnabled\"),\r\n UserAlreadyInRole: t(\"errors.user.userAlreadyInRole\"),\r\n UserNotInRole: t(\"errors.user.userNotInRole\"),\r\n });\r\n\r\n return translations(t !== undefined ? t : str => str);\r\n};\r\n","import Alert from \"@material-ui/lab/Alert\";\r\nimport {getUserErrorsTranslations} from \"../../constants/getUserErrorsTranslations\";\r\nimport React from \"react\";\r\nimport {useTranslation} from \"react-i18next\";\r\n\r\nconst UserErrors = ({errors}) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n return (errors !== null && errors !== undefined)\r\n ? (\r\n errors.map((str, index) =>\r\n \r\n {getUserErrorsTranslations(t)[str] || t(\"errors.user.generic\")}\r\n \r\n ))\r\n : null;\r\n}\r\n\r\nexport default UserErrors;","import React, {forwardRef, Fragment, useImperativeHandle} from 'react';\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport {useForm} from 'react-hook-form'\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {sendUserResetPasswordEmail} from \"../../../state/user/userActions\";\r\nimport UserErrors from \"../../user-errors\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: 440\r\n },\r\n field: {\r\n marginTop: theme.spacing(3)\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: theme.spacing(3)\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 56px)\",\r\n marginTop: 8,\r\n padding: \"0 4px\"\r\n },\r\n title: {\r\n fontSize: 16\r\n }\r\n});\r\n\r\n\r\nconst Form = compose(withStyles(styles), forwardRef)(({classes, config, onSubmit}, ref) => {\r\n\r\n const {register, errors, handleSubmit} = useForm();\r\n\r\n const {t} = useTranslation();\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n handleSubmit(val => {\r\n onSubmit(val);\r\n f(val);\r\n })();\r\n },\r\n cancel(f) {\r\n f();\r\n }\r\n }));\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.usersConfig.user,\r\n userErrors: state.usersConfig.userErrors\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n sendConfig: config => dispatch(sendUserResetPasswordEmail(config.email))\r\n});\r\n\r\nconst UserRecoverPasswordForm = ({config, sendConfig, userErrors}, ref) => {\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(UserRecoverPasswordForm);\r\n","import {initRequest, RequestMethod} from '../../middlewares/request/requestActions';\r\nimport {\r\n getRefreshTokenUrl,\r\n getTokenUrl,\r\n getUserChangePasswordUrl,\r\n getUserConfigGetUrl,\r\n getUserConfigPutUrl,\r\n getUserResetPasswordUrl,\r\n getUserSendResetPasswordMailUrl\r\n} from '../../serverApi/urls';\r\n\r\nexport const USER_FETCH = 'USER_FETCH';\r\nexport const USER_REFRESH = 'USER_REFRESH';\r\nexport const USER_CLEAR = 'USER_CLEAR';\r\nexport const USER_LOGIN_FORM_SHOW = 'USER_LOGIN_FORM_SHOW';\r\nexport const USER_LOGIN_FORM_HIDE = 'USER_LOGIN_FORM_HIDE';\r\nexport const USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_SET = 'USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_SET';\r\nexport const USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_CLEAR = 'USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_CLEAR';\r\nexport const USER_SET_PASSWORD_FORM_SHOW = 'USER_SET_PASSWORD_FORM_SHOW';\r\nexport const USER_SET_PASSWORD_FORM_HIDE = 'USER_SET_PASSWORD_FORM_HIDE';\r\nexport const USER_RESET_PASSWORD_EMAIL_SEND = 'USER_RESET_PASSWORD_EMAIL_SEND';\r\nexport const USER_PASSWORD_CHANGE = 'USER_PASSWORD_CHANGE';\r\nexport const USER_PASSWORD_SET = 'USER_PASSWORD_SET';\r\nexport const USER_CHANGE_PASSWORD_FORM_SHOW = 'USER_CHANGE_PASSWORD_FORM_SHOW';\r\nexport const USER_CHANGE_PASSWORD_FORM_HIDE = 'USER_CHANGE_PASSWORD_FORM_HIDE';\r\nexport const USER_REGISTER_MODAL_SHOW = 'USER_REGISTER_MODAL_SHOW';\r\nexport const USER_REGISTER_MODAL_HIDE = 'USER_REGISTER_MODAL_HIDE';\r\nexport const USER_EDIT_USER_MODAL_SHOW = 'USER_EDIT_USER_MODAL_SHOW';\r\nexport const USER_EDIT_USER_MODAL_HIDE = 'USER_EDIT_USER_MODAL_HIDE';\r\nexport const USER_EDIT_USER_FETCH = 'USER_EDIT_USER_FETCH';\r\nexport const USER_EDIT_USER_SUBMIT = 'USER_EDIT_USER_SUBMIT';\r\nexport const USER_EDIT_USER_CLEAR = 'USER_EDIT_USER_CLEAR';\r\n\r\nexport const fetchUser = (email: string, password: string) => initRequest(\r\n USER_FETCH,\r\n getTokenUrl(),\r\n RequestMethod.POST,\r\n {\r\n Email: email,\r\n Password: password.length > 0 ? btoa(password) : undefined\r\n },\r\n t => ({\r\n onStart: t(\"components.userSelect.messages.fetchUser.start\")\r\n })\r\n);\r\n\r\nexport const refreshUser = () => initRequest(\r\n USER_REFRESH,\r\n getRefreshTokenUrl(),\r\n RequestMethod.POST,\r\n null,\r\n t => ({\r\n onStart: t(\"middlewares.user.messages.refreshUser.start\")\r\n })\r\n);\r\n\r\nexport const clearUser = () => ({\r\n type: USER_CLEAR\r\n});\r\n\r\nexport const showUserLoginForm = (alert?: string) => ({\r\n type: USER_LOGIN_FORM_SHOW,\r\n payload: {\r\n alert\r\n }\r\n});\r\n\r\nexport const hideUserLoginForm = () => ({\r\n type: USER_LOGIN_FORM_HIDE\r\n});\r\n\r\nexport const setUserDelayedRequestWhenTokenExpired = (request: object) => ({\r\n type: USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_SET,\r\n payload: {\r\n request\r\n }\r\n});\r\n\r\nexport const clearUserDelayedRequestWhenTokenExpired = () => ({\r\n type: USER_DELAYED_REQUEST_WHEN_TOKEN_EXPIRED_CLEAR\r\n});\r\n\r\nexport const hideUserSetPasswordForm = () => ({\r\n type: USER_SET_PASSWORD_FORM_HIDE\r\n});\r\n\r\nexport const sendUserResetPasswordEmail = (email: string) => initRequest(\r\n USER_RESET_PASSWORD_EMAIL_SEND,\r\n getUserSendResetPasswordMailUrl(),\r\n RequestMethod.POST,\r\n email,\r\n t => ({\r\n onStart: t(\"components.userRecoverPassword.messages.submit.start\")\r\n }),\r\n undefined,\r\n undefined,\r\n undefined,\r\n undefined,\r\n \"application/json\"\r\n);\r\n\r\nexport const changeUserPassword = (oldPassword: string, newPassword: string) => initRequest(\r\n USER_PASSWORD_CHANGE,\r\n getUserChangePasswordUrl(),\r\n RequestMethod.POST,\r\n {\r\n oldPassword: oldPassword.length > 0 ? btoa(oldPassword) : undefined,\r\n newPassword: btoa(newPassword)\r\n },\r\n t => ({\r\n onStart: t(\"components.userChangePasswordForm.messages.submit.start\")\r\n })\r\n);\r\n\r\nexport const setUserPassword = (email: string, token: string, password: string) => initRequest(\r\n USER_PASSWORD_SET,\r\n getUserResetPasswordUrl(),\r\n RequestMethod.POST,\r\n {\r\n username: email,\r\n token,\r\n password: btoa(password)\r\n },\r\n t => ({\r\n onStart: t(\"components.userSetPasswordForm.messages.submit.start\")\r\n })\r\n);\r\n\r\nexport const showUserSetPasswordForm = (token: string) => ({\r\n type: USER_SET_PASSWORD_FORM_SHOW,\r\n payload: {\r\n token\r\n }\r\n});\r\n\r\nexport const showUserChangePasswordForm = () => ({\r\n type: USER_CHANGE_PASSWORD_FORM_SHOW\r\n});\r\n\r\nexport const hideUserChangePasswordForm = () => ({\r\n type: USER_CHANGE_PASSWORD_FORM_HIDE\r\n});\r\n\r\nexport const showUserRegisterModal = () => ({\r\n type: USER_REGISTER_MODAL_SHOW\r\n});\r\n\r\nexport const hideUserRegisterModal = () => ({\r\n type: USER_REGISTER_MODAL_HIDE\r\n});\r\n\r\nexport const showUserEditUserModal = () => ({\r\n type: USER_EDIT_USER_MODAL_SHOW\r\n});\r\n\r\nexport const hideUserEditUserModal = () => ({\r\n type: USER_EDIT_USER_MODAL_HIDE\r\n});\r\n\r\nexport const fetchUserEditUser = (userId: number) => initRequest(\r\n USER_EDIT_USER_FETCH,\r\n getUserConfigGetUrl(userId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.usersConfig.fetchUser.start\")\r\n })\r\n);\r\n\r\nexport const submitUserEditUser = (userId: number, config: any) => initRequest(\r\n USER_EDIT_USER_SUBMIT,\r\n getUserConfigPutUrl(userId),\r\n RequestMethod.PUT,\r\n config,\r\n t => ({\r\n onStart: t(\"scenes.usersConfig.sendUserEdit.start\")\r\n })\r\n);\r\n\r\nexport const clearUserEditUser = () => ({\r\n type: USER_EDIT_USER_CLEAR\r\n});","import React, {Fragment, useCallback, useRef, useState} from 'react';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport {DialogActions, withStyles} from \"@material-ui/core\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport {useForm} from \"react-hook-form\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport SettingsDialog from \"../settings-dialog\";\r\nimport UserRecoverPasswordForm from \"./user-recover-password-form\";\r\nimport {getUserErrorsTranslations} from \"../../constants/getUserErrorsTranslations\";\r\n\r\nconst styles = theme => ({\r\n field: {\r\n marginTop: theme.spacing(3)\r\n },\r\n recoverPassword: {\r\n textDecoration: \"underline\",\r\n color: theme.palette.secondary.main,\r\n cursor: \"pointer\"\r\n }\r\n});\r\n\r\nconst UserLoginDialog = ({open, onSubmit, onHide, onRegister, classes, alert}) => {\r\n\r\n const {register, errors, handleSubmit} = useForm();\r\n\r\n const {t} = useTranslation();\r\n\r\n const [isRecoverPasswordModalOpen, setIsRecoverPasswordModalOpen] = useState(false);\r\n\r\n const recoverPasswordFormRef = useRef();\r\n\r\n const keyDownHandler = useCallback(evt => {\r\n if (evt.key === \"Enter\") {\r\n handleSubmit(onSubmit)();\r\n }\r\n }, [handleSubmit, onSubmit]);\r\n\r\n return (\r\n {\r\n const userField = document.getElementById(\"user-login-form__text-field__email\");\r\n const pswField = document.getElementById(\"user-login-form__text-field__password\");\r\n userField.addEventListener(\"keydown\", keyDownHandler);\r\n pswField.addEventListener(\"keydown\", keyDownHandler);\r\n }}\r\n onExit={() => {\r\n const userField = document.getElementById(\"user-login-form__text-field__email\");\r\n const pswField = document.getElementById(\"user-login-form__text-field__password\");\r\n userField.removeEventListener(\"keydown\", keyDownHandler);\r\n pswField.removeEventListener(\"keydown\", keyDownHandler);\r\n }}\r\n >\r\n \r\n {t(\"components.userLoginDialog.title\")}\r\n \r\n \r\n {alert && (\r\n {getUserErrorsTranslations(t)[alert] || t(\"errors.user.generic\")}\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {errors.password?.message}\r\n setIsRecoverPasswordModalOpen(true)}\r\n className={classes.recoverPassword}\r\n style={{\r\n marginLeft: errors.password?.message ? 2 : 0\r\n }}>\r\n {t(\"components.userLoginDialog.recoverPassword\")}\r\n
\r\n \r\n }\r\n variant=\"outlined\"\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n if (recoverPasswordFormRef.current) {\r\n recoverPasswordFormRef.current.cancel(() => {\r\n setIsRecoverPasswordModalOpen(false);\r\n });\r\n } else {\r\n setIsRecoverPasswordModalOpen(false);\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (recoverPasswordFormRef.current) {\r\n recoverPasswordFormRef.current.submit(() => {\r\n setIsRecoverPasswordModalOpen(false);\r\n });\r\n }\r\n }}\r\n hasSubmit\r\n noMinHeight\r\n noFullScreen\r\n >\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default withStyles(styles)(UserLoginDialog);\r\n","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n getUserConfigGetUrl,\r\n getUserConfigPostUrl,\r\n getUserConfigPutUrl,\r\n getUserDeleteUrl,\r\n getUsersConfigGetUrl\r\n} from \"../../serverApi/urls\";\r\n\r\nexport const USERS_CONFIG_USERS_FETCH = \"usersConfig/fetchUsers\";\r\nexport const USERS_CONFIG_USERS_CLEAR = \"usersConfig/clearUsers\";\r\nexport const USERS_CONFIG_USER_FETCH = \"usersConfig/fetchUser\";\r\nexport const USERS_CONFIG_USER_CLEAR = \"usersConfig/clearUser\";\r\nexport const USERS_CONFIG_USER_DELETE = \"usersConfig/deleteUser\";\r\nexport const USERS_CONFIG_USER_CREATE = \"usersConfig/createUser\";\r\nexport const USERS_CONFIG_USER_EDIT = \"usersConfig/editUser\";\r\nexport const USER_CONFIG_FORM_SHOW = \"usersConfig/showForm\";\r\nexport const USER_CONFIG_FORM_HIDE = \"usersConfig/hideForm\";\r\n\r\nexport const fetchUsersConfigUsers = () => initRequest(\r\n USERS_CONFIG_USERS_FETCH,\r\n getUsersConfigGetUrl(),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.usersConfig.fetchUsers.start\")\r\n })\r\n);\r\n\r\nexport const clearUsersConfigUsers = () => ({\r\n type: USERS_CONFIG_USERS_CLEAR\r\n});\r\n\r\nexport const fetchUsersConfigUser = (userId: number) => initRequest(\r\n USERS_CONFIG_USER_FETCH,\r\n getUserConfigGetUrl(userId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.usersConfig.fetchUser.start\")\r\n })\r\n);\r\n\r\nexport const clearUsersConfigUser = () => ({\r\n type: USERS_CONFIG_USER_CLEAR\r\n});\r\n\r\nexport const deleteUsersConfigUser = (userId: number) => initRequest(\r\n USERS_CONFIG_USER_DELETE,\r\n getUserDeleteUrl(userId),\r\n RequestMethod.DELETE,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.usersConfig.deleteUser.start\")\r\n }),\r\n {\r\n userId\r\n }\r\n);\r\n\r\nexport const sendUsersConfigUserCreate = (user: any, isAnonymous: boolean) => initRequest(\r\n USERS_CONFIG_USER_CREATE,\r\n getUserConfigPostUrl(),\r\n RequestMethod.POST,\r\n user,\r\n t => ({\r\n onStart: t(\"scenes.usersConfig.sendUserCreate.start\")\r\n }),\r\n {\r\n isAnonymous\r\n }\r\n);\r\n\r\nexport const sendUsersConfigUserEdit = (user: any) => initRequest(\r\n USERS_CONFIG_USER_EDIT,\r\n getUserConfigPutUrl(user.userId),\r\n RequestMethod.PUT,\r\n user,\r\n t => ({\r\n onStart: t(\"scenes.usersConfig.sendUserEdit.start\")\r\n })\r\n);\r\n\r\nexport const showUserConfigForm = (userId: number) => ({\r\n type: USER_CONFIG_FORM_SHOW,\r\n payload: {\r\n userId\r\n }\r\n});\r\n\r\nexport const hideUserConfigForm = () => ({\r\n type: USER_CONFIG_FORM_HIDE\r\n});","import _ from \"lodash\";\r\n\r\nexport const validateI18nObj = obj =>\r\n obj !== undefined && obj !== null &&\r\n _(obj)\r\n .pickBy(val => val !== undefined && val !== null && val.length > 0)\r\n .keys()\r\n .value().length > 0;\r\n\r\nexport const localizeI18nObj = (obj, prefLang, langs) => {\r\n\r\n if (obj === null || obj === undefined || obj === {}) {\r\n return null\r\n }\r\n if (typeof (obj) === \"string\") {\r\n return obj\r\n }\r\n\r\n if (obj[prefLang]) {\r\n return obj[prefLang];\r\n }\r\n\r\n for (let code of langs) {\r\n if (obj[code]) {\r\n return obj[code];\r\n }\r\n }\r\n\r\n return obj[Object.keys(obj)[0]];\r\n};\r\n\r\nexport const getI18nObjCustomFilterAndSearch = (language, languages) => (str, row, {field}) =>\r\n (localizeI18nObj(row[field], language, languages) || \"\").toLowerCase().includes(str.toLowerCase());\r\n\r\nexport const getI18nObjFromLanguages = (languages, value) =>\r\n _.fromPairs(languages.map(lang => ([lang, value])));","export const numberFormatter = (new Intl.NumberFormat()).format;\r\n\r\nexport const DECIMAL_SEPARATOR_DEFAULT = \",\";\r\nexport const DECIMAL_PLACES_DEFAULT = 2;\r\nexport const TABLE_EMPTY_CHAR_DEFAULT = \"\";\r\n\r\nconst getFormattedInt = (valueStr, separator) => {\r\n let subStrs = [];\r\n let sign = \"\";\r\n\r\n if (valueStr[0] === \"-\" || valueStr[0] === \"+\") {\r\n sign = valueStr[0];\r\n valueStr = valueStr.slice(1);\r\n }\r\n\r\n while (valueStr.length > 3) {\r\n subStrs.push(valueStr.slice(-3));\r\n valueStr = valueStr.slice(0, -3);\r\n }\r\n if (valueStr.length > 0) {\r\n subStrs.push(valueStr);\r\n } else {\r\n subStrs.pop()\r\n }\r\n subStrs.reverse();\r\n\r\n return sign + subStrs.join(separator);\r\n};\r\n\r\nconst getRoundedNumber = (number, decimalPlaces) => Math.round(number * Math.pow(10, decimalPlaces)) / Math.pow(10, decimalPlaces);\r\n\r\nexport const getFormattedValue = (\r\n value,\r\n decimalSeparator = DECIMAL_SEPARATOR_DEFAULT,\r\n decimalPlaces = DECIMAL_PLACES_DEFAULT,\r\n emptyChar = TABLE_EMPTY_CHAR_DEFAULT\r\n) => {\r\n const thousandsSeparator = decimalSeparator === \".\" ? \",\" : \".\";\r\n\r\n if (value === null || value === undefined || (typeof value === \"string\" && value.length === 0)) {\r\n return emptyChar;\r\n }\r\n\r\n let val = parseFloat(value);\r\n\r\n if (isNaN(val)) {\r\n return value;\r\n }\r\n\r\n val = decimalPlaces >= 0\r\n ? getRoundedNumber(val, decimalPlaces)\r\n : val;\r\n\r\n const valParts = val.toString().split(\".\");\r\n\r\n let integerPart = valParts[0];\r\n integerPart = getFormattedInt(integerPart, thousandsSeparator);\r\n\r\n let decimalPart = (valParts[1] || \"\");\r\n if (decimalPlaces >= 0) {\r\n decimalPart += \"0\".repeat(decimalPlaces - decimalPart.length);\r\n }\r\n decimalPart = (decimalPart.length > 0 && decimalPart.search(/[^0]/gm) !== -1) // value has a decimal part greater than 0\r\n ? decimalPart\r\n : \"\";\r\n\r\n return integerPart + (decimalPart.length > 0 ? (decimalSeparator + decimalPart) : \"\");\r\n}\r\n\r\nexport const getTrimmedStr = str => {\r\n if (!str || str.length === 0) {\r\n return \"\";\r\n }\r\n\r\n if (String.prototype.trim) {\r\n return str.trim();\r\n } else {\r\n return str.replace(/^\\s+|\\s+$/gm, '');\r\n }\r\n}","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport {Checkbox, withStyles} from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport {useForm} from 'react-hook-form'\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {\r\n clearUsersConfigUser,\r\n fetchUsersConfigUser,\r\n sendUsersConfigUserCreate,\r\n sendUsersConfigUserEdit,\r\n} from \"../../../../state/usersConfig/usersConfigActions\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport {Visibility, VisibilityOff} from \"@material-ui/icons\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../../../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport FormHelperText from \"@material-ui/core/FormHelperText\";\r\nimport SanitizedHTML from \"../../../sanitized-html\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport {localizeI18nObj} from \"../../../../utils/i18n\";\r\nimport UserErrors from \"../../../user-errors\";\r\nimport {getTrimmedStr} from \"../../../../utils/formatters\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: 440\r\n },\r\n field: {\r\n marginTop: theme.spacing(3)\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: theme.spacing(3)\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 56px)\",\r\n marginTop: 8,\r\n padding: \"0 4px\"\r\n },\r\n title: {\r\n fontSize: 16\r\n },\r\n disclaimerLink: {\r\n marginLeft: theme.spacing(1),\r\n color: theme.palette.secondary.main,\r\n textDecoration: \"underline\"\r\n }\r\n});\r\n\r\n\r\nconst Form = compose(withStyles(styles), forwardRef)(({\r\n classes,\r\n config,\r\n onSubmit,\r\n onCancel,\r\n isAnonymous,\r\n hub,\r\n types,\r\n languages,\r\n language\r\n }, ref) => {\r\n\r\n const {register, errors, handleSubmit, watch, setValue} = useForm({\r\n defaultValues: {\r\n isActive: true,\r\n type: types?.[0]?.id,\r\n organization: \"\",\r\n disclaimerAccepted: isAnonymous ? false : undefined,\r\n ...config\r\n }\r\n });\r\n\r\n const [showPassword, setShowPassword] = useState(false);\r\n const [showPasswordConfirm, setShowPasswordConfirm] = useState(false);\r\n const [isDisclaimerModalOpen, setIsDisclaimerModalOpen] = useState(false);\r\n\r\n const {t} = useTranslation();\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n handleSubmit(val => {\r\n const data = {\r\n ...config,\r\n ...val,\r\n type: val.type !== \"null\" ? val.type : null,\r\n disclaimerAccepted: undefined,\r\n emailConfirm: undefined,\r\n passwordConfirm: undefined\r\n };\r\n\r\n onSubmit(data);\r\n f(data);\r\n })();\r\n },\r\n cancel(f) {\r\n onCancel();\r\n f();\r\n }\r\n }));\r\n\r\n useEffect(() => {\r\n\r\n register(\"type\");\r\n\r\n if (isAnonymous) {\r\n register({\r\n name: \"disclaimerAccepted\"\r\n },\r\n {\r\n validate: val => val || t(\"scenes.usersSettings.userSettings.validation.mustAcceptDisclaimer\")\r\n });\r\n } else {\r\n register(\"isActive\");\r\n }\r\n\r\n }, [isAnonymous, register, t]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {!config && (\r\n \r\n \r\n \r\n getTrimmedStr(val) === getTrimmedStr(watch('email')) ||\r\n t(\"scenes.usersSettings.userSettings.validation.emailsMustBeEqual\")\r\n })\r\n }\r\n error={!!errors.emailConfirm}\r\n helperText={errors.emailConfirm?.message}\r\n variant=\"outlined\"\r\n required\r\n />\r\n \r\n \r\n )}\r\n {!isAnonymous && (\r\n \r\n \r\n setValue('isActive', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n )}\r\n {types && types.length > 0 && (\r\n \r\n \r\n setValue('type', e.target.value)}\r\n value={watch(\"type\") || ''}\r\n helperText={errors.type?.message}\r\n error={!!errors.type}\r\n required\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n {types.map(({id, label}) =>\r\n \r\n {localizeI18nObj(label, language, languages)}\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {!config && (\r\n \r\n \r\n \r\n \r\n setShowPassword(!showPassword)}\r\n >\r\n {showPassword ? : }\r\n \r\n \r\n )\r\n }}\r\n inputProps={{\r\n autoComplete: \"new-password\"\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n val === watch('password') ||\r\n t(\"scenes.usersSettings.userSettings.validation.passwordsMustBeEqual\")\r\n })\r\n }\r\n InputProps={{\r\n endAdornment: (\r\n \r\n setShowPasswordConfirm(!showPasswordConfirm)}\r\n >\r\n {showPasswordConfirm ? : }\r\n \r\n \r\n )\r\n }}\r\n inputProps={{\r\n autoComplete: \"new-password\"\r\n }}\r\n />\r\n \r\n \r\n {isAnonymous && (\r\n \r\n \r\n \r\n {t(\"scenes.usersSettings.userSettings.fields.disclaimerAccepted.label\")}\r\n {\r\n setIsDisclaimerModalOpen(true);\r\n ev.preventDefault();\r\n }}\r\n className={classes.disclaimerLink}\r\n >\r\n {t(\"scenes.usersSettings.userSettings.fields.disclaimerAccepted.link\")}\r\n
\r\n \r\n }\r\n control={\r\n setValue('disclaimerAccepted', value)}\r\n />\r\n }\r\n />\r\n {errors.disclaimerAccepted?.message && (\r\n \r\n {errors.disclaimerAccepted?.message}\r\n \r\n )}\r\n \r\n \r\n )}\r\n setIsDisclaimerModalOpen(false)}\r\n >\r\n setIsDisclaimerModalOpen(false)}>\r\n {t(\"scenes.usersSettings.userSettings.disclaimerModal.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.usersConfig.user,\r\n userErrors: state.usersConfig.userErrors,\r\n hub: state.hub,\r\n appConfig: state.appConfig,\r\n languages: state.app.languages,\r\n language: state.app.language\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchConfig: nodeId => dispatch(fetchUsersConfigUser(nodeId)),\r\n sendConfigCreate: (config, isAnonymous) => dispatch(sendUsersConfigUserCreate(config, isAnonymous)),\r\n sendConfig: config => dispatch(sendUsersConfigUserEdit(config)),\r\n clearConfig: () => dispatch(clearUsersConfigUser())\r\n});\r\n\r\nconst UserSettingsForm = ({\r\n config,\r\n userId,\r\n fetchConfig,\r\n sendConfigCreate,\r\n sendConfig,\r\n clearConfig,\r\n userErrors,\r\n isAnonymous,\r\n hub,\r\n appConfig,\r\n languages,\r\n language\r\n }, ref) => {\r\n\r\n const [needConfig, setNeedConfig] = useState(userId >= 0);\r\n\r\n useEffect(() => {\r\n\r\n if (needConfig) {\r\n setNeedConfig(false);\r\n fetchConfig(userId);\r\n }\r\n }, [config, needConfig, setNeedConfig, fetchConfig, userId]);\r\n\r\n return (userId === -1 || config) && (\r\n \r\n \r\n sendConfigCreate(config, isAnonymous)\r\n : sendConfig\r\n }\r\n onCancel={clearConfig}\r\n isAnonymous={isAnonymous}\r\n hub={hub}\r\n types={appConfig?.user?.typeOptions}\r\n languages={languages}\r\n language={language}\r\n />\r\n \r\n\r\n );\r\n};\r\n\r\nexport default compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(UserSettingsForm);\r\n","import React, {Component, forwardRef, Fragment} from 'react';\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Menu from \"@material-ui/core/Menu\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\n\r\nconst styles = theme => ({\r\n menuItem: {\r\n background: \"white\",\r\n \"&:focus\": {\r\n background: \"rgba(0, 41, 90, 0.2)\"\r\n }\r\n },\r\n menuItemUnselectable: {\r\n \"&:hover\": {\r\n background: \"white\"\r\n },\r\n \"&:focus\": {\r\n background: \"white\"\r\n },\r\n cursor: \"initial\"\r\n }\r\n});\r\n\r\nclass ButtonSelect extends Component {\r\n\r\n state = {\r\n anchorEl: null\r\n };\r\n\r\n setAnchorEl = (el) => {\r\n this.setState({\r\n anchorEl: el\r\n });\r\n };\r\n\r\n handleMenu = (event) => {\r\n this.setAnchorEl(event.currentTarget);\r\n };\r\n\r\n handleClose = () => {\r\n this.setAnchorEl(null);\r\n };\r\n\r\n render() {\r\n\r\n const {\r\n classes,\r\n children,\r\n icon,\r\n value,\r\n color,\r\n tooltip,\r\n disabled,\r\n selectedIdx,\r\n onChange,\r\n ariaLabel,\r\n unselectableIndexes = [],\r\n buttonStyle\r\n } = this.props;\r\n\r\n const {anchorEl} = this.state;\r\n const open = Boolean(anchorEl);\r\n\r\n const Item = forwardRef(({c, isSelected, isUnselectable}, ref) => {\r\n return (\r\n {\r\n if (isUnselectable) {\r\n ev.preventDefault();\r\n\r\n } else {\r\n if (c.props?.onClick) {\r\n c.props.onClick();\r\n }\r\n if (onChange) {\r\n onChange(c.props[\"data-value\"]);\r\n }\r\n this.handleClose();\r\n }\r\n }}\r\n className={`${classes.menuItem} ${isUnselectable ? classes.menuItemUnselectable : \"\"}`}\r\n style={{background: isSelected ? \"#fff9e5\" : undefined}}\r\n tabIndex={0}\r\n disableRipple={isUnselectable}\r\n >\r\n {c}\r\n \r\n )\r\n });\r\n\r\n return (\r\n \r\n \r\n
\r\n {value\r\n ? (\r\n }\r\n disabled={disabled}\r\n aria-label={ariaLabel}\r\n style={buttonStyle}\r\n >\r\n {value}\r\n \r\n )\r\n : (\r\n \r\n {icon}\r\n \r\n )\r\n }\r\n
\r\n
\r\n \r\n {children.length\r\n ? children.filter(c => c).map((c, i) => c !== null\r\n ? (\r\n \r\n )\r\n : null\r\n )\r\n : \r\n }\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default withStyles(styles)(ButtonSelect);","import React, {forwardRef, Fragment, useImperativeHandle, useState} from 'react';\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport {useForm} from 'react-hook-form'\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport {Visibility, VisibilityOff} from \"@material-ui/icons\";\r\nimport {changeUserPassword} from \"../../../state/user/userActions\";\r\nimport UserErrors from \"../../user-errors\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: 440\r\n },\r\n field: {\r\n marginTop: theme.spacing(3)\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: theme.spacing(3)\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 56px)\",\r\n marginTop: 8,\r\n padding: \"0 4px\"\r\n },\r\n title: {\r\n fontSize: 16\r\n }\r\n});\r\n\r\n\r\nconst Form = compose(withStyles(styles), forwardRef)(({classes, config, onSubmit}, ref) => {\r\n\r\n const {register, errors, handleSubmit, watch} = useForm();\r\n\r\n const [showOldPassword, setShowOldPassword] = useState(false);\r\n const [showNewPassword, setShowNewPassword] = useState(false);\r\n const [showNewPasswordConfirm, setShowNewPasswordConfirm] = useState(false);\r\n\r\n const {t} = useTranslation();\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n handleSubmit(val => {\r\n onSubmit(val);\r\n f(val);\r\n })();\r\n },\r\n cancel(f) {\r\n f();\r\n }\r\n }));\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n setShowOldPassword(!showOldPassword)}\r\n >\r\n {showOldPassword ? : }\r\n \r\n \r\n )\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n setShowNewPassword(!showNewPassword)}\r\n >\r\n {showNewPassword ? : }\r\n \r\n \r\n )\r\n }}\r\n inputProps={{\r\n autoComplete: \"new-password\"\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n val === watch('newPassword') ||\r\n t(\"components.userSelect.changePasswordModal.validation.newPasswordMustBeEqual\")\r\n })}\r\n InputProps={{\r\n endAdornment: (\r\n \r\n setShowNewPasswordConfirm(!showNewPasswordConfirm)}\r\n >\r\n {showNewPasswordConfirm ? : }\r\n \r\n \r\n )\r\n }}\r\n inputProps={{\r\n autoComplete: \"new-password\"\r\n }}\r\n />\r\n \r\n \r\n \r\n );\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.usersConfig.user,\r\n userErrors: state.usersConfig.userErrors\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n sendConfig: config => dispatch(changeUserPassword(config.oldPassword, config.newPassword))\r\n});\r\n\r\nconst UserChangePasswordForm = ({config, sendConfig, userErrors}, ref) => {\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(UserChangePasswordForm);\r\n","import React from 'react';\r\n\r\n/* Calls a function right after the WrappedComponent has been mounted and updated (if props changed) */\r\nclass Call extends React.Component {\r\n\r\n componentDidMount() {\r\n /* children has been mounted */\r\n if (this.props.disabled === undefined || !this.props.disabled) {\r\n this.props.cb(this.props.cbParam);\r\n }\r\n }\r\n\r\n componentDidUpdate({cb, cbParam, disabled}) {\r\n /* children has been updated */\r\n if (\r\n (this.props.disabled === undefined || !this.props.disabled)\r\n &&\r\n (\r\n JSON.stringify(cbParam) !== JSON.stringify(this.props.cbParam)\r\n ||\r\n (this.props.disabled !== undefined && disabled === true && this.props.disabled === false)\r\n )\r\n ) {\r\n this.props.cb(this.props.cbParam);\r\n }\r\n }\r\n\r\n render() {\r\n return this.props.children;\r\n }\r\n}\r\n\r\nexport default Call;\r\n","import React, {forwardRef, Fragment, useEffect, useImperativeHandle} from 'react';\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport {useForm} from 'react-hook-form'\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport {localizeI18nObj} from \"../../../utils/i18n\";\r\nimport UserErrors from \"../../user-errors\";\r\nimport {clearUserEditUser, fetchUserEditUser, submitUserEditUser} from \"../../../state/user/userActions\";\r\nimport Call from \"../../../hocs/call\";\r\n\r\nconst Form = forwardRef(({\r\n hub,\r\n types,\r\n language,\r\n languages,\r\n config,\r\n onSubmit,\r\n onCancel\r\n }, ref) => {\r\n\r\n const {register, errors, handleSubmit, watch, setValue} = useForm({\r\n defaultValues: {\r\n type: types?.[0]?.id,\r\n organization: \"\",\r\n ...config\r\n }\r\n });\r\n\r\n const {t} = useTranslation();\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n handleSubmit(val => {\r\n const data = {\r\n ...val,\r\n isActive: config.isActive,\r\n type: val.type !== \"null\" ? val.type : null\r\n };\r\n\r\n onSubmit(data);\r\n f(data);\r\n })();\r\n },\r\n cancel(f) {\r\n onCancel();\r\n f();\r\n }\r\n }));\r\n\r\n useEffect(() => {\r\n register(\"type\");\r\n }, [register]);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n \r\n {types && types.length > 0 && (\r\n \r\n \r\n setValue('type', e.target.value)}\r\n value={watch(\"type\") || ''}\r\n helperText={errors.type?.message}\r\n error={!!errors.type}\r\n required\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n {types.map(({id, label}) =>\r\n \r\n {localizeI18nObj(label, language, languages)}\r\n \r\n )}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n hub: state.hub,\r\n appConfig: state.appConfig,\r\n language: state.app.language,\r\n languages: state.app.languages,\r\n userId: state.user.userId,\r\n config: state.user.config,\r\n userErrors: state.user.userErrors\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchConfig: userId => dispatch(fetchUserEditUser(userId)),\r\n submitConfig: (userId, config) => dispatch(submitUserEditUser(userId, config)),\r\n clearConfig: () => dispatch(clearUserEditUser())\r\n});\r\n\r\nconst EditUserForm = ({\r\n config,\r\n userId,\r\n fetchConfig,\r\n submitConfig,\r\n clearConfig,\r\n userErrors,\r\n hub,\r\n appConfig,\r\n languages,\r\n language\r\n }, ref) =>\r\n \r\n {config\r\n ? (\r\n \r\n \r\n submitConfig(userId, config)}\r\n onCancel={clearConfig}\r\n hub={hub}\r\n types={appConfig?.user?.typeOptions}\r\n language={language}\r\n languages={languages}\r\n />\r\n \r\n )\r\n : \r\n }\r\n \r\n\r\n\r\nexport default compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(EditUserForm);\r\n","export const INIT = \"INIT\";\r\n\r\nexport const init = (baseURL: string, supportedLanguages: string[], defaultLanguage: string, configs: any) => ({\r\n type: INIT,\r\n payload: {\r\n baseURL,\r\n supportedLanguages,\r\n defaultLanguage,\r\n appConfig: configs?.appConfig || null,\r\n footers: configs?.footers || null,\r\n dashboardConfig: configs?.dashboardConfig || null\r\n }\r\n});\r\n","import {INIT} from \"../../state/rootActions\";\r\n\r\nexport const PERSISTENCE_LOCAL_STORAGE_KEY = \"state\";\r\nexport const PERSISTENCE_ACTION_KEY = \"persistentState\";\r\n\r\nconst persistenceMiddleware = ({getState}) => next => action => {\r\n\r\n // when init action is dispatched\r\n if (action.type === INIT) {\r\n if (!action.payload) {\r\n action.payload = {};\r\n }\r\n // attach persistent state to the action\r\n action.payload[PERSISTENCE_ACTION_KEY] = JSON.parse(localStorage.getItem(PERSISTENCE_LOCAL_STORAGE_KEY) || \"{}\");\r\n }\r\n\r\n const result = next(action);\r\n\r\n const state = getState();\r\n\r\n // any time an action is dispatched, update persistent state (localStorage is fast)\r\n localStorage.setItem(\r\n PERSISTENCE_LOCAL_STORAGE_KEY,\r\n JSON.stringify({\r\n user: {\r\n ...state.user,\r\n isSetPasswordDialogOpen: undefined\r\n }\r\n })\r\n );\r\n\r\n return result;\r\n};\r\n\r\nexport default persistenceMiddleware;","import {UserPermissions, UserRoles, UserState} from '../state/user/userReducer';\r\n\r\ntype UserChecker = (user: UserState, nodeId?: number) => boolean;\r\ntype UserNodeChecker = (user: UserState, nodeId: number) => boolean;\r\n\r\nconst getPermissionStr = (permission: UserPermissions, nodeId: number) => `${permission}_SingleNode_${nodeId}`;\r\n\r\nexport const canDisplayAppSettingsForm: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canCreateNode: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canSortNodes: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canDisplayNodesSettingsForm: UserChecker = user =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n !!user.permissions.find(p => p.startsWith(`${UserPermissions.ManageCache}_SingleNode`)) ||\r\n !!user.permissions.find(p => p.startsWith(`${UserPermissions.ManageTemplate}_SingleNode`)) ||\r\n !!user.permissions.find(p => p.startsWith(`${UserPermissions.ManageConfig}_SingleNode`))\r\n );\r\n\r\nexport const canDisplayUsersSettingsForm: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canDisplayCacheSettingForm: UserNodeChecker = (user, nodeId) =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n user.permissions.includes(getPermissionStr(UserPermissions.ManageCache, nodeId))\r\n );\r\n\r\nexport const canDisplayTemplatesSettingsForm: UserNodeChecker = (user, nodeId) =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n user.permissions.includes(getPermissionStr(UserPermissions.ManageTemplate, nodeId))\r\n );\r\n\r\nexport const canSaveTemplate: UserNodeChecker = (user, nodeId) =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n user.permissions.includes(getPermissionStr(UserPermissions.ManageTemplate, nodeId))\r\n );\r\n\r\nexport const canEditNode: UserNodeChecker = (user, nodeId) =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n user.permissions.includes(getPermissionStr(UserPermissions.ManageConfig, nodeId))\r\n );\r\n\r\nexport const canDisplayUserViews: UserChecker = user =>\r\n user && user.isAuthenticated;\r\n\r\nexport const canShare: UserChecker = user =>\r\n user && user.isAuthenticated;\r\n\r\nexport const canSaveAsView: UserChecker = user =>\r\n user && user.isAuthenticated;\r\n\r\nexport const canClearServerCache: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canGetQueryLog: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canDisplayPermissionsSettingsForm: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canManagePersonalDashboards: UserChecker = user =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n !!user.permissions.find(p => p.startsWith(`${UserPermissions.ManageConfig}_SingleNode`))\r\n );\r\n\r\nexport const canManageAppDashboards: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canManageNodeDashboards: UserNodeChecker = (user, nodeId) =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n user.permissions.includes(getPermissionStr(UserPermissions.ManageConfig, nodeId))\r\n );\r\n\r\nexport const canDeleteNodes: UserChecker = user =>\r\n user && user.isAuthenticated && user.roles.includes(UserRoles.Administrator);\r\n\r\nexport const canViewTimesLog: UserNodeChecker = (user, nodeId) =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n user.permissions.includes(getPermissionStr(UserPermissions.ManageConfig, nodeId))\r\n );\r\n\r\nexport const canViewTemplateOrAnnotationIcon: UserNodeChecker = (user, nodeId) =>\r\n user && user.isAuthenticated && (\r\n user.roles.includes(UserRoles.Administrator) ||\r\n user.permissions.includes(getPermissionStr(UserPermissions.ManageTemplate, nodeId))\r\n );","export const DASHBOARD_ELEM_TYPE_KEY = \"type\";\r\nexport const DASHBOARD_ELEM_VALUE_KEY = \"value\";\r\nexport const DASHBOARD_ELEM_WIDTH_KEY = \"widthPercentage\";\r\nexport const DASHBOARD_ELEM_SHOW_TITLE_KEY = \"showTitle\";\r\nexport const DASHBOARD_ELEM_ENABLE_FILTERS_KEY = \"enableFilters\";\r\nexport const DASHBOARD_ELEM_FILTER_DIMENSION_KEY = \"filterDimension\";\r\n\r\nexport const DASHBOARD_ELEM_TYPE_VALUE_VIEW = \"view\";\r\nexport const DASHBOARD_ELEM_TYPE_VALUE_TEXT = \"text\";\r\n\r\nexport const emptyDashboardElem = {\r\n [DASHBOARD_ELEM_TYPE_KEY]: null,\r\n [DASHBOARD_ELEM_VALUE_KEY]: null,\r\n [DASHBOARD_ELEM_WIDTH_KEY]: 100,\r\n [DASHBOARD_ELEM_SHOW_TITLE_KEY]: true,\r\n [DASHBOARD_ELEM_ENABLE_FILTERS_KEY]: false,\r\n [DASHBOARD_ELEM_FILTER_DIMENSION_KEY]: null\r\n};\r\n\r\nexport const getViewIdxFromRowAndCol = (rowIdx, colIdx) => `${rowIdx}x${colIdx}`;\r\n\r\nexport const getFilterDimensionId = (layout, filterDimensionIds) => {\r\n const dimArraysKey = [\"rows\", \"cols\", \"filters\", \"sections\", \"primaryDim\", \"secondaryDim\", \"territoryDim\"];\r\n let viewDims = [];\r\n\r\n dimArraysKey.forEach(key => viewDims = viewDims.concat(layout[key] || []));\r\n\r\n return (filterDimensionIds.find(dimId => viewDims.includes(dimId)) || null);\r\n};","import _ from \"lodash\";\r\nimport {\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME\r\n} from \"../components/label-format-selector/constants\";\r\n\r\nexport const TIME_PERIOD_DIMENSION_KEY = \"TIME_PERIOD\";\r\nexport const FREQ_DIMENSION_KEY = \"FREQ\";\r\n\r\nexport const VARIATION_DIMENSION_KEY = \"AUTO.VARIATION\";\r\n\r\nexport const VARIATION_VALUE_VALUE_KEY = \"V\";\r\nexport const VARIATION_VALUE_TREND_KEY = \"T\";\r\nexport const VARIATION_VALUE_CYCLICAL_KEY = \"C\";\r\n\r\nexport const getVariationValueLabels = t => ({\r\n [VARIATION_VALUE_VALUE_KEY]: t ? t(\"variation.options.value.label\") : VARIATION_VALUE_VALUE_KEY,\r\n [VARIATION_VALUE_TREND_KEY]: t ? t(\"variation.options.trend.label\") : VARIATION_VALUE_TREND_KEY,\r\n [VARIATION_VALUE_CYCLICAL_KEY]: t ? t(\"variation.options.cyclical.label\") : VARIATION_VALUE_CYCLICAL_KEY\r\n});\r\n\r\nconst MAX_COL_COUNT = 10000;\r\nconst MAX_ROW_COUNT = 10000;\r\n\r\nconst toUpperCaseFirst = string => (string !== null && string !== undefined && string.length > 0)\r\n ? string[0].toUpperCase() + string.slice(1)\r\n : string;\r\n\r\nexport const getDimensionLabelFromJsonStat = (jsonStat, dimension, format, t) => {\r\n\r\n if (dimension === VARIATION_DIMENSION_KEY) {\r\n return t ? t(\"variation.dimension.label\") : dimension;\r\n }\r\n\r\n const name = toUpperCaseFirst(jsonStat.dimension[dimension].label);\r\n const id = dimension;\r\n\r\n return (name || id);\r\n};\r\n\r\nexport const getDimensionValueLabelFromJsonStat = (jsonStat, dimension, value, format, t) => {\r\n\r\n if (dimension === VARIATION_DIMENSION_KEY) {\r\n return getVariationValueLabels(t)[value];\r\n }\r\n\r\n const name = toUpperCaseFirst(jsonStat.dimension[dimension].category.label[value]);\r\n const id = value;\r\n\r\n if (dimension === TIME_PERIOD_DIMENSION_KEY) {\r\n return name || id;\r\n }\r\n\r\n switch (format) {\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME:\r\n return name || id;\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID:\r\n return id;\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH:\r\n return `[${id}]` + (name ? ` ${name}` : \"\");\r\n default:\r\n return name || id;\r\n }\r\n};\r\n\r\nexport const getDataIdxFromCoordinatesArray = (dimensions, size) => {\r\n let dataIdx = 0;\r\n let multiplier = 1;\r\n\r\n // row-major order algorithm\r\n for (let i = 0; i < dimensions.length; i++) {\r\n multiplier *= (i > 0) ? size[dimensions.length - i] : 1;\r\n dataIdx += multiplier * dimensions[dimensions.length - i - 1];\r\n }\r\n\r\n return dataIdx;\r\n};\r\n\r\nexport const getCoordinatesArrayFromDataIdx = (dataIdx, size) => {\r\n const coordinates = new Array(size.length);\r\n\r\n // reverse row-major order algorithm\r\n let offset = dataIdx;\r\n for (let i = size.length - 1; i >= 0; i--) {\r\n const dimensionSize = size[i];\r\n coordinates[i] = dimensionSize > 0 ? (offset % dimensionSize) : 0;\r\n offset = dimensionSize > 0 ? Math.floor(offset / dimensionSize) : 0;\r\n }\r\n\r\n return coordinates;\r\n};\r\n\r\nexport const getJsonStatTableSize = (jsonStat, layout) => {\r\n if (jsonStat) {\r\n let count = 1;\r\n\r\n if (!layout) {\r\n jsonStat.size.forEach(el => count *= el);\r\n\r\n } else {\r\n let colCount = 1;\r\n layout.cols.forEach(col => colCount *= jsonStat.size[jsonStat.id.indexOf(col)]);\r\n let rowCount = 1;\r\n layout.rows.forEach(row => rowCount *= jsonStat.size[jsonStat.id.indexOf(row)]);\r\n layout.sections.forEach(section => rowCount *= jsonStat.size[jsonStat.id.indexOf(section)]);\r\n count = colCount * rowCount;\r\n }\r\n\r\n return count;\r\n\r\n } else {\r\n return 0\r\n }\r\n};\r\n\r\nexport const getFilterTreeFromJsonStat = (layout, jsonStat) => {\r\n const filters = (layout?.primaryDim || []).concat((layout?.secondaryDim || [])).concat(layout?.filters || []);\r\n\r\n let paths = [];\r\n Object.keys(jsonStat.value).forEach(key => {\r\n const coordinates = getCoordinatesArrayFromDataIdx(key, jsonStat.size);\r\n const path = [];\r\n filters.forEach(dim => {\r\n const dimValueIdx = coordinates[jsonStat.id.indexOf(dim)];\r\n path.push(jsonStat.dimension[dim].category.index[dimValueIdx]);\r\n });\r\n paths.push(path);\r\n });\r\n\r\n const tree = {};\r\n paths.forEach(path => {\r\n let currentLevel = tree;\r\n path.forEach(elem => {\r\n if (!currentLevel[elem]) {\r\n currentLevel[elem] = {};\r\n }\r\n currentLevel = currentLevel[elem];\r\n });\r\n });\r\n\r\n return tree\r\n};\r\n\r\nexport const getInitialFiltersValue = (jsonStat, layout, filterTree) => {\r\n const primaryDim = layout.primaryDim?.[0] || null;\r\n const secondaryDim = layout.secondaryDim?.[0] || null;\r\n const filters = layout.filters || [];\r\n\r\n let selectedPrimaryDim = null;\r\n let selectedSecondaryDim = null;\r\n\r\n if (filters.length === 0) {\r\n return {}\r\n }\r\n\r\n let root = filterTree;\r\n if (primaryDim) {\r\n selectedPrimaryDim = Object.keys(root).find(primDimKey =>\r\n layout.primaryDimValues.includes(primDimKey) && (!secondaryDim || Object.keys(root[primDimKey]).find(secDimKey =>\r\n layout.secondaryDimValues.includes(secDimKey))));\r\n root = root[selectedPrimaryDim];\r\n if (secondaryDim) {\r\n selectedSecondaryDim = Object.keys(root).find(secDimKey =>\r\n layout.secondaryDimValues.includes(secDimKey));\r\n root = root[selectedSecondaryDim];\r\n }\r\n }\r\n\r\n const filtersValue = {};\r\n\r\n let iter = root;\r\n layout.filters.forEach(dim => {\r\n const selectableValues = Object.keys(iter);\r\n const allValues = [...jsonStat.dimension[dim].category.index];\r\n if (dim === TIME_PERIOD_DIMENSION_KEY) {\r\n allValues.reverse();\r\n }\r\n const selectedVal = allValues.find(dimVal => selectableValues.includes(dimVal));\r\n filtersValue[dim] = selectedVal;\r\n iter = iter[selectedVal];\r\n });\r\n\r\n return filtersValue;\r\n}\r\n\r\nexport const getInitialTableLayout = jsonStat => {\r\n if (!jsonStat) {\r\n return null;\r\n }\r\n\r\n let dimensions = jsonStat.id.filter(dim => dim !== VARIATION_DIMENSION_KEY);\r\n\r\n let filters = dimensions.filter(dim => jsonStat.size[jsonStat.id.indexOf(dim)] === 1);\r\n dimensions = dimensions.filter(dim => !filters.includes(dim));\r\n\r\n let rows = [];\r\n if (dimensions.includes(FREQ_DIMENSION_KEY)) {\r\n rows = rows.concat(FREQ_DIMENSION_KEY);\r\n }\r\n if (dimensions.includes(TIME_PERIOD_DIMENSION_KEY)) {\r\n rows = rows.concat(TIME_PERIOD_DIMENSION_KEY);\r\n }\r\n dimensions = dimensions.filter(dim => !rows.includes(dim));\r\n\r\n let territoryDim = (jsonStat.role?.geo || []).length > 0 ? jsonStat.role.geo[0] : null;\r\n\r\n let cols = (territoryDim && dimensions.includes(territoryDim)) ? [territoryDim] : [];\r\n dimensions = dimensions.filter(dim => !cols.includes(dim));\r\n\r\n if (rows.length === 1 && jsonStat.size[jsonStat.id.indexOf(rows[0])] === 1 && cols.length === 1) {\r\n filters = filters.concat(rows);\r\n rows = [...cols];\r\n cols = [];\r\n }\r\n\r\n let colCount = 1;\r\n cols.forEach(col => colCount *= jsonStat.size[jsonStat.id.indexOf(col)]);\r\n let rowCount = 1;\r\n rows.forEach(row => rowCount *= jsonStat.size[jsonStat.id.indexOf(row)]);\r\n\r\n dimensions.forEach(dim => {\r\n const newColCount = colCount * jsonStat.size[jsonStat.id.indexOf(dim)];\r\n\r\n if (newColCount > MAX_COL_COUNT) {\r\n const newRowCount = rowCount * jsonStat.size[jsonStat.id.indexOf(dim)];\r\n\r\n if (newRowCount > MAX_ROW_COUNT) {\r\n filters.push(dim);\r\n\r\n } else {\r\n rows = [dim].concat(rows);\r\n rowCount = newRowCount;\r\n }\r\n\r\n } else {\r\n cols.push(dim);\r\n colCount = newColCount;\r\n }\r\n });\r\n\r\n return {\r\n rows: rows,\r\n cols: cols,\r\n sections: [],\r\n filters: filters\r\n }\r\n};\r\n\r\nexport const getInitialChartLayout = jsonStat => {\r\n if (!jsonStat) {\r\n return null\r\n }\r\n\r\n let dimensions = jsonStat.id.filter(dim => dim !== VARIATION_DIMENSION_KEY);\r\n\r\n let primaryDim = dimensions.includes(TIME_PERIOD_DIMENSION_KEY)\r\n ? TIME_PERIOD_DIMENSION_KEY\r\n : dimensions[0];\r\n\r\n const filters = dimensions.filter(dim => dim !== primaryDim);\r\n\r\n return {\r\n primaryDim: [primaryDim],\r\n primaryDimValues: jsonStat.dimension[primaryDim].category.index,\r\n secondaryDim: [],\r\n secondaryDimValues: [],\r\n filters: filters\r\n }\r\n};\r\n\r\nexport const getInitialMapLayout = jsonStat => {\r\n if (!jsonStat) {\r\n return null\r\n }\r\n\r\n let dimensions = jsonStat.id.filter(dim => dim !== VARIATION_DIMENSION_KEY);\r\n\r\n let territoryDim = (jsonStat.role?.geo || []).length > 0 ? jsonStat.role.geo[0] : null;\r\n\r\n if (!territoryDim) {\r\n return null\r\n }\r\n\r\n return {\r\n territoryDim: territoryDim,\r\n filters: dimensions.filter(dim => dim !== territoryDim)\r\n }\r\n};\r\n\r\nconst getFilteredLayout = (initialLayout, jsonStat) => {\r\n if (!initialLayout) {\r\n return null\r\n }\r\n\r\n const layout = _.cloneDeep(initialLayout);\r\n const dimArraysKey = [\"rows\", \"cols\", \"filters\", \"sections\", \"primaryDim\", \"secondaryDim\", \"territoryDim\"];\r\n\r\n if (layout.territoryDim) {\r\n layout.territoryDim = [layout.territoryDim];\r\n }\r\n\r\n let dimensions = jsonStat.id.filter(dim => dim !== VARIATION_DIMENSION_KEY);\r\n\r\n // removing dimensions from layout not present in jsonStat\r\n for (let key in layout) {\r\n if (layout.hasOwnProperty(key)) {\r\n if (dimArraysKey.includes(key)) {\r\n layout[key] = (layout[key] || []).filter(dim => dimensions.includes(dim));\r\n }\r\n }\r\n }\r\n\r\n // adding missing dimensions to layout\r\n dimensions.forEach(dim => {\r\n let found = false;\r\n for (let key in layout) {\r\n if (layout.hasOwnProperty(key)) {\r\n if (!found && dimArraysKey.includes(key)) {\r\n found = layout[key].includes(dim);\r\n }\r\n }\r\n }\r\n if (!found) {\r\n layout.filters.push(dim);\r\n if (layout.filtersValue) {\r\n layout.filtersValue[dim] = jsonStat.dimension[dim].category.index[0];\r\n }\r\n }\r\n });\r\n\r\n // checking selected filtersValue\r\n if (layout.filtersValue) {\r\n for (let dim in layout.filtersValue) {\r\n if (layout.filtersValue.hasOwnProperty(dim)) {\r\n if (!layout.filters.includes(dim)) {\r\n layout.filtersValue[dim] = undefined;\r\n } else if (!jsonStat.dimension[dim].category.index.includes(layout.filtersValue[dim])) {\r\n layout.filtersValue[dim] = jsonStat.dimension[dim].category.index[0];\r\n }\r\n }\r\n }\r\n }\r\n\r\n // checking selected primaryDimValues\r\n if (layout.primaryDim) {\r\n if (layout.primaryDim.length === 1) {\r\n const primaryDim = layout?.primaryDim?.[0] || null;\r\n if (layout.primaryDimValues.length === 0) {\r\n layout.primaryDimValues = jsonStat.dimension[primaryDim].category.index;\r\n }\r\n layout.primaryDimValues = layout.primaryDimValues.filter(value =>\r\n jsonStat.dimension[primaryDim].category.index.includes(value));\r\n } else {\r\n return getInitialChartLayout(jsonStat)\r\n }\r\n }\r\n\r\n // checking selected secondaryDimValues\r\n const secondaryDim = layout?.secondaryDim?.[0] || null;\r\n if (secondaryDim) {\r\n if (layout.secondaryDimValues.length === 0) {\r\n layout.secondaryDimValues = jsonStat.dimension[secondaryDim].category.index;\r\n }\r\n layout.secondaryDimValues = layout.secondaryDimValues.filter(value =>\r\n jsonStat.dimension[secondaryDim].category.index.includes(value));\r\n }\r\n\r\n if (layout.territoryDim) {\r\n layout.territoryDim = layout.territoryDim[0];\r\n }\r\n\r\n return layout\r\n};\r\n\r\nexport const getFilteredTableLayout = (initialLayout, jsonStat) => {\r\n if (!initialLayout) {\r\n return null\r\n }\r\n const layout = {\r\n rows: [],\r\n cols: [],\r\n sections: [],\r\n filters: [],\r\n ...initialLayout,\r\n };\r\n\r\n return getFilteredLayout(layout, jsonStat);\r\n};\r\n\r\nexport const getFilteredMapLayout = (initialLayout, jsonStat) => {\r\n if (!initialLayout) {\r\n return null\r\n }\r\n const layout = {\r\n territoryDim: \"\",\r\n filters: [],\r\n ...initialLayout,\r\n };\r\n\r\n return getFilteredLayout(layout, jsonStat);\r\n};\r\n\r\nexport const getFilteredChartLayout = (initialLayout, jsonStat) => {\r\n if (!initialLayout) {\r\n return null\r\n }\r\n const layout = {\r\n primaryDim: [],\r\n primaryDimValues: [],\r\n secondaryDim: [],\r\n secondaryDimValues: [],\r\n filters: [],\r\n ...initialLayout,\r\n };\r\n\r\n return getFilteredLayout(layout, jsonStat);\r\n};\r\n\r\nexport const getUpdatedLayout = (dimension, value, jsonStat, layout, filterTree) => {\r\n let newLayout = _.cloneDeep(layout);\r\n const primaryDim = newLayout.primaryDim?.[0] || null;\r\n const secondaryDim = newLayout.secondaryDim?.[0] || null;\r\n\r\n let tmpLayout = _.cloneDeep(layout);\r\n if (primaryDim && dimension === primaryDim) {\r\n tmpLayout.primaryDimValues = value;\r\n } else if (secondaryDim && dimension === secondaryDim) {\r\n tmpLayout.secondaryDimValues = value;\r\n } else {\r\n tmpLayout.filtersValue[dimension] = value;\r\n }\r\n const filters = (tmpLayout?.primaryDim || []).concat((tmpLayout?.secondaryDim || [])).concat(tmpLayout?.filters || []);\r\n let isLayoutValid = false;\r\n let iter = filterTree;\r\n if (primaryDim && !isLayoutValid) {\r\n (tmpLayout.primaryDimValues || []).forEach(primDimVal => {\r\n if (secondaryDim && !isLayoutValid) {\r\n (tmpLayout.secondaryDimValues || []).forEach(secDimVal => {\r\n if (filterTree[primDimVal][secDimVal] !== null && filterTree[primDimVal][secDimVal] !== undefined) {\r\n iter = filterTree[primDimVal][secDimVal];\r\n let isFilterValid = true;\r\n filters.slice(2).forEach(val => {\r\n if (isFilterValid && iter[tmpLayout.filtersValue[val]] !== null && iter[tmpLayout.filtersValue[val]] !== undefined) {\r\n iter = iter[tmpLayout.filtersValue[val]];\r\n } else {\r\n isFilterValid = false;\r\n }\r\n });\r\n if (isFilterValid) {\r\n isLayoutValid = true;\r\n }\r\n }\r\n });\r\n } else {\r\n iter = filterTree[primDimVal];\r\n let isFilterValid = true;\r\n filters.slice(1).forEach(val => {\r\n if (isFilterValid && iter[tmpLayout.filtersValue[val]] !== null && iter[tmpLayout.filtersValue[val]] !== undefined) {\r\n iter = iter[tmpLayout.filtersValue[val]];\r\n } else {\r\n isFilterValid = false;\r\n }\r\n });\r\n if (isFilterValid) {\r\n isLayoutValid = true;\r\n }\r\n }\r\n });\r\n } else {\r\n let isFilterValid = true;\r\n filters.forEach(val => {\r\n if (isFilterValid && iter[tmpLayout.filtersValue[val]]) {\r\n iter = iter[tmpLayout.filtersValue[val]];\r\n } else {\r\n isFilterValid = false;\r\n }\r\n });\r\n if (isFilterValid) {\r\n isLayoutValid = true;\r\n }\r\n }\r\n\r\n if (isLayoutValid) {\r\n return tmpLayout\r\n\r\n } else {\r\n\r\n if (primaryDim && dimension === primaryDim) {\r\n newLayout.primaryDimValues = value;\r\n if (secondaryDim) {\r\n const allSecondaryDimValues = getDimensionFilterValues(secondaryDim, jsonStat, newLayout, filterTree);\r\n newLayout.secondaryDimValues = newLayout.secondaryDimValues.filter(val => allSecondaryDimValues.includes(val));\r\n }\r\n newLayout.filtersValue = getInitialFiltersValue(jsonStat, newLayout, filterTree);\r\n\r\n } else if (secondaryDim && dimension === secondaryDim) {\r\n newLayout.secondaryDimValues = value;\r\n newLayout.filtersValue = getInitialFiltersValue(jsonStat, newLayout, filterTree);\r\n\r\n } else {\r\n newLayout.filtersValue[dimension] = value;\r\n\r\n const filters = newLayout.filters || [];\r\n const selectedIdx = filters.indexOf(dimension);\r\n if (selectedIdx < (filters.length - 1)) {\r\n newLayout.filters.slice(selectedIdx + 1).forEach(dim => {\r\n const selectableValues = getDimensionFilterValues(dim, jsonStat, newLayout, filterTree);\r\n const allValues = [...jsonStat.dimension[dim].category.index];\r\n if (dim === TIME_PERIOD_DIMENSION_KEY) {\r\n allValues.reverse();\r\n }\r\n newLayout.filtersValue[dim] = allValues.find(dimVal => selectableValues.includes(dimVal));\r\n });\r\n }\r\n }\r\n\r\n return newLayout\r\n }\r\n};\r\n\r\nexport const getDimensionFilterValues = (dimension, jsonStat, layout, filterTree, withLabels = false) => {\r\n const primaryDim = layout.primaryDim?.[0] || null;\r\n const secondaryDim = layout.secondaryDim?.[0] || null;\r\n const filters = (layout?.primaryDim || []).concat((layout?.secondaryDim || [])).concat(layout?.filters || []);\r\n const dimensionIdx = filters.indexOf(dimension);\r\n const prevFilters = filters.slice(0, dimensionIdx);\r\n\r\n let data = {};\r\n if (dimensionIdx > 0) {\r\n let iter = filterTree;\r\n if (primaryDim) {\r\n (layout.primaryDimValues || []).forEach(primDimVal => {\r\n if (secondaryDim && dimension !== secondaryDim) {\r\n (layout.secondaryDimValues || []).forEach(secDimVal => {\r\n iter = filterTree[primDimVal][secDimVal];\r\n prevFilters.slice(2).forEach(val => {\r\n iter = (iter || {})[layout.filtersValue[val]];\r\n });\r\n data = {...data, ...iter};\r\n });\r\n } else {\r\n iter = filterTree[primDimVal];\r\n prevFilters.slice(1).forEach(val => {\r\n iter = (iter || {})[layout.filtersValue[val]];\r\n });\r\n data = {...data, ...iter};\r\n }\r\n });\r\n } else {\r\n prevFilters.forEach(val => {\r\n iter = iter[layout.filtersValue[val]];\r\n });\r\n data = {...data, ...iter};\r\n }\r\n } else {\r\n data = filterTree;\r\n }\r\n\r\n const availableValue = Object.keys(data);\r\n const ret = [];\r\n jsonStat.dimension[dimension].category.index.forEach(val => {\r\n if (availableValue.includes(val)) {\r\n ret.push(withLabels\r\n ? {\r\n id: val,\r\n label: jsonStat.dimension[dimension].category.label[val]\r\n }\r\n : val\r\n );\r\n }\r\n });\r\n\r\n return ret;\r\n}\r\n\r\nexport const getDimensionValuesIndexesMap = jsonStat => {\r\n const indexesMap = {};\r\n\r\n jsonStat.id.forEach(dim => {\r\n indexesMap[dim] = {};\r\n jsonStat.dimension[dim].category.index.forEach((dimValue, idx) => indexesMap[dim][dimValue] = idx);\r\n });\r\n\r\n return indexesMap;\r\n};\r\n\r\nconst getAttributeObject = (attributes, attributeIdx, attributeValueIdx) => {\r\n return {\r\n id: attributes[attributeIdx].id,\r\n label: attributes[attributeIdx].name,\r\n valueId: attributes[attributeIdx].values[attributeValueIdx].id,\r\n valueLabel: attributes[attributeIdx].values[attributeValueIdx].name\r\n }\r\n};\r\n\r\nconst getAttributeObjects = (attributeCoordinates, attributeObjList, hiddenAttributes) => {\r\n const attributes = [];\r\n const ids = [];\r\n let hasAsterisk = false;\r\n\r\n try {\r\n (attributeCoordinates || []).forEach((coordinate, idx) => {\r\n if (coordinate !== null && !(hiddenAttributes || []).includes(attributeObjList[idx].id)) {\r\n\r\n attributes.push(getAttributeObject(attributeObjList, idx, coordinate));\r\n\r\n const valueId = attributeObjList[idx].values[coordinate].id;\r\n const valueLabel = attributeObjList[idx].values[coordinate].name;\r\n\r\n if (valueId !== valueLabel && valueId.length <= 5) {\r\n ids.push(valueId);\r\n } else {\r\n hasAsterisk = true;\r\n }\r\n }\r\n });\r\n\r\n if (hasAsterisk) {\r\n ids.push(\"(*)\");\r\n }\r\n\r\n return (attributes.length > 0 && ids.length > 0)\r\n ? {\r\n attributes,\r\n ids\r\n }\r\n : null\r\n\r\n } catch (error) {\r\n return -1\r\n }\r\n};\r\n\r\nexport const getDimensionAttributeMap = (jsonStat, hiddenAttributes, getIdsHtmlString) => {\r\n if (!jsonStat) {\r\n return null;\r\n }\r\n\r\n const series = (jsonStat?.extension?.attributes?.series || []);\r\n const seriesIndexes = (jsonStat?.extension?.attributes?.index?.series || []);\r\n const dimAttributeMap = {};\r\n\r\n jsonStat.id.forEach(dim => dimAttributeMap[dim] = {});\r\n if (series && series.length > 0 && seriesIndexes && seriesIndexes.length > 0) {\r\n seriesIndexes\r\n .filter(({coordinates}) => (coordinates || []).filter(c => c !== null).length === 1)\r\n .forEach(index => {\r\n const dimIdx = index.coordinates.findIndex(el => el !== null);\r\n const dim = jsonStat.id[dimIdx];\r\n const dimValueIdx = index.coordinates.find(el => el !== null);\r\n const dimValue = jsonStat.dimension[dim].category.index[dimValueIdx];\r\n\r\n const attributeObjects = getAttributeObjects(index.attributes, series, hiddenAttributes);\r\n if (attributeObjects !== null && attributeObjects !== -1) {\r\n dimAttributeMap[dim][dimValue] = {\r\n attributes: attributeObjects.attributes,\r\n ids: attributeObjects.ids,\r\n htmlString: getIdsHtmlString\r\n ? getIdsHtmlString(attributeObjects.ids, dim, dimValue)\r\n : null\r\n };\r\n }\r\n });\r\n }\r\n\r\n return dimAttributeMap;\r\n};\r\n\r\nexport const getObservationAttributeMap = (jsonStat, hiddenAttributes, getIdsHtmlString) => {\r\n const observations = (jsonStat?.extension?.attributes?.observation || []);\r\n const observationIndexes = (jsonStat?.extension?.attributes?.index?.observation || {});\r\n const obsAttributeMap = _.cloneDeep(observationIndexes);\r\n\r\n let hasError = false;\r\n for (let key in observationIndexes) {\r\n if (observationIndexes.hasOwnProperty(key)) {\r\n const attributeObjects = getAttributeObjects(obsAttributeMap[key], observations, hiddenAttributes);\r\n if (attributeObjects !== null && attributeObjects !== -1) {\r\n obsAttributeMap[key] = {\r\n attributes: attributeObjects.attributes,\r\n ids: attributeObjects.ids,\r\n htmlString: getIdsHtmlString\r\n ? getIdsHtmlString(attributeObjects.ids, key)\r\n : null\r\n };\r\n } else if (attributeObjects === -1) {\r\n hasError = true;\r\n }\r\n }\r\n }\r\n\r\n return !hasError\r\n ? obsAttributeMap\r\n : null;\r\n}\r\n\r\nexport const getDatasetAttributeList = (jsonStat, hiddenAttributes) => {\r\n const datasetAttributes = [];\r\n\r\n const dataset = (jsonStat?.extension?.attributes?.dataSet || []);\r\n const datasetIndexes = (jsonStat?.extension?.attributes?.index?.dataSet || []);\r\n\r\n if (dataset && dataset.length > 0 && datasetIndexes && datasetIndexes.length > 0) {\r\n (datasetIndexes || []).forEach((el, idx) => {\r\n if (el !== null && !!dataset[idx] && !(hiddenAttributes || []).includes(dataset[idx].id)) {\r\n datasetAttributes.push(getAttributeObject(dataset, idx, el));\r\n }\r\n });\r\n }\r\n\r\n return datasetAttributes;\r\n}\r\n\r\nexport const getSeriesAttributeList = (jsonStat, labelFormat, hiddenAttributes) => {\r\n const seriesAttributes = [];\r\n\r\n const series = (jsonStat?.extension?.attributes?.series || []);\r\n const seriesIndexes = (jsonStat?.extension?.attributes?.index?.series || []);\r\n\r\n if (series && series.length > 0 && seriesIndexes && seriesIndexes.length > 0) {\r\n seriesIndexes\r\n .filter(({coordinates}) => (coordinates || []).filter(c => c !== null).length > 1)\r\n .forEach(({coordinates, attributes}) => {\r\n const dimsId = [];\r\n const dimsValueId = [];\r\n coordinates.forEach((el, idx) => {\r\n if (el !== null) {\r\n const dim = jsonStat.id[idx];\r\n dimsId.push(dim);\r\n dimsValueId.push(jsonStat.dimension[dim].category.index[el]);\r\n }\r\n });\r\n const dims = dimsId.map((dim, idx) => ({\r\n id: getDimensionLabelFromJsonStat(jsonStat, dim, labelFormat),\r\n value: getDimensionValueLabelFromJsonStat(jsonStat, dim, dimsValueId[idx], labelFormat)\r\n }));\r\n const attrs = [];\r\n attributes.forEach((attr, idx) => {\r\n if (attr !== null && attr !== undefined && !(hiddenAttributes || []).includes(series[idx].id)) {\r\n attrs.push(getAttributeObject(series, idx, attr));\r\n }\r\n });\r\n if (dims.length > 0 && attrs.length > 0) {\r\n seriesAttributes.push({\r\n dimensions: dims,\r\n attributes: attrs\r\n });\r\n }\r\n });\r\n }\r\n\r\n return seriesAttributes;\r\n}\r\n\r\nexport const getAttributeLabel = (attribute, format) => {\r\n const id = attribute.id;\r\n const name = attribute.label;\r\n\r\n return name || id;\r\n};\r\n\r\nexport const getAttributeValueLabel = (attribute, format) => {\r\n const id = attribute.valueId;\r\n const name = attribute.valueLabel;\r\n\r\n switch (format) {\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME:\r\n return name || id;\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID:\r\n return id;\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH:\r\n if (id && name && id !== name) {\r\n return `[${id}] ${name}`;\r\n } else {\r\n return name || id;\r\n }\r\n default:\r\n return name || id;\r\n }\r\n};\r\n\r\nexport const getDimensionValuesAttributeList = (dimension, dimAttributeMap, layout) => {\r\n\r\n const primaryDim = layout.primaryDim?.[0] || null;\r\n const primaryDimValues = layout.primaryDimValues || [];\r\n const secondaryDim = layout.secondaryDim?.[0] || null;\r\n const secondaryDimValues = layout.secondaryDimValues || [];\r\n const filters = layout.filters || [];\r\n const filtersValue = layout.filtersValue || [];\r\n\r\n\r\n let dimValuesAttributes = [];\r\n if (dimAttributeMap) {\r\n if (filters.includes(dimension)) {\r\n if (dimAttributeMap[dimension][filtersValue[dimension]]) {\r\n dimValuesAttributes.push({\r\n ...dimAttributeMap[dimension][filtersValue[dimension]],\r\n dimVal: filtersValue[dimension]\r\n });\r\n }\r\n\r\n } else if (dimension === primaryDim) {\r\n primaryDimValues.forEach(primDimVal => {\r\n if (dimAttributeMap[dimension][primDimVal]) {\r\n dimValuesAttributes.push({\r\n ...dimAttributeMap[dimension][primDimVal],\r\n dimVal: primDimVal\r\n });\r\n }\r\n });\r\n\r\n } else if (dimension === secondaryDim) {\r\n secondaryDimValues.forEach(secDimVal => {\r\n if (dimAttributeMap[dimension][secDimVal]) {\r\n dimValuesAttributes.push({\r\n ...dimAttributeMap[dimension][secDimVal],\r\n dimVal: secDimVal\r\n });\r\n }\r\n });\r\n }\r\n }\r\n\r\n return dimValuesAttributes;\r\n};","export const LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME = \"LABEL_FORMAT_SELECTOR_FORMAT_NAME\";\r\nexport const LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID = \"LABEL_FORMAT_SELECTOR_FORMAT_ID\";\r\nexport const LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH = \"LABEL_FORMAT_SELECTOR_FORMAT_BOTH\";","import moment from \"moment\";\r\nimport {FREQ_DIMENSION_KEY, TIME_PERIOD_DIMENSION_KEY} from \"./jsonStat\";\r\n\r\nexport const CRITERIA_FILTER_TYPE_CODES = \"CodeValues\";\r\nexport const CRITERIA_FILTER_TYPE_STRING = \"StringValues\";\r\nexport const CRITERIA_FILTER_TYPE_RANGE = \"TimeRange\";\r\nexport const CRITERIA_FILTER_TYPE_PERIODS = \"TimePeriod\";\r\n\r\nexport const CRITERIA_FILTER_TYPE_EMPTY = \"EmptyValue\";\r\n\r\nexport const FREQ_ANNUAL = \"A\";\r\nexport const FREQ_SEMESTER = \"S\";\r\nexport const FREQ_QUARTERLY = \"Q\";\r\nexport const FREQ_MONTHLY = \"M\";\r\nconst frequencies = [FREQ_MONTHLY, FREQ_QUARTERLY, FREQ_SEMESTER, FREQ_ANNUAL];\r\n\r\nexport const getDimensionCriteria = (criteria, dimensionId) => (criteria || []).find(({id}) => id === dimensionId) || null;\r\n\r\nconst getDefaultMaxPeriod = freq => {\r\n if (freq === FREQ_ANNUAL) {\r\n return moment().add(-1, 'y').format(\"YYYY-MM-DD\");\r\n } else if (freq === FREQ_SEMESTER) {\r\n return moment().add(-6, 'M').format(\"YYYY-MM-DD\");\r\n } else if (freq === FREQ_QUARTERLY) {\r\n return moment().add(-3, 'M').format(\"YYYY-MM-DD\");\r\n } else {\r\n return moment().add(-1, 'd').format(\"YYYY-MM-DD\");\r\n }\r\n};\r\n\r\nconst getMinAndMax = (timePeriodCodelist, freq, nodeConfig) => {\r\n\r\n const nodeExtras = nodeConfig?.extras || [];\r\n const nodeConfigMin = nodeExtras.find(({key}) => key === \"TimePeriodRangeStart\")?.value || null;\r\n const nodeConfigMax = nodeExtras.find(({key}) => key === \"TimePeriodRangeEnd\")?.value || null;\r\n\r\n let min = nodeConfigMin || moment().add(-20, 'y').format(\"YYYY\") + \"-01-01\";\r\n let max = nodeConfigMax || getDefaultMaxPeriod(freq);\r\n\r\n return {\r\n min: timePeriodCodelist.values && timePeriodCodelist.values[0] && timePeriodCodelist.values[0].id\r\n ? moment(timePeriodCodelist.values[0].id).format(\"YYYY-MM-DD\")\r\n : min,\r\n max: timePeriodCodelist.values && timePeriodCodelist.values[1] && timePeriodCodelist.values[1].id\r\n ? moment(timePeriodCodelist.values[1].id).format(\"YYYY-MM-DD\")\r\n : max,\r\n missingRange: (!timePeriodCodelist.values || timePeriodCodelist.values.length !== 2)\r\n }\r\n};\r\n\r\nexport const getTimePeriod = (initialTimePeriod, criteria, timePeriodCodelist, freqCodelist, nodeConfig) => {\r\n\r\n let freq = initialTimePeriod.freq;\r\n if (freqCodelist !== null && freqCodelist !== undefined) {\r\n const freqValues = (criteria?.[FREQ_DIMENSION_KEY]?.filterValues || []).length > 0\r\n ? frequencies.filter(freq => criteria[FREQ_DIMENSION_KEY].filterValues.includes(freq))\r\n : frequencies\r\n freq = freqValues.find(freq => (freqCodelist.values || []).map(({id}) => id).includes(freq)) || null;\r\n }\r\n\r\n const minAndMax = timePeriodCodelist\r\n ? getMinAndMax(timePeriodCodelist, freq, nodeConfig)\r\n : {\r\n min: initialTimePeriod.minDate,\r\n max: initialTimePeriod.maxDate,\r\n missingRange: initialTimePeriod.missingRange,\r\n };\r\n\r\n return {\r\n freq: freq,\r\n selectorType: (criteria?.[TIME_PERIOD_DIMENSION_KEY]?.type || CRITERIA_FILTER_TYPE_RANGE),\r\n minDate: minAndMax.min,\r\n maxDate: minAndMax.max,\r\n fromDate: (criteria?.[TIME_PERIOD_DIMENSION_KEY]?.from || minAndMax.min),\r\n toDate: (criteria?.[TIME_PERIOD_DIMENSION_KEY]?.to || minAndMax.max),\r\n periods: (criteria?.[TIME_PERIOD_DIMENSION_KEY]?.period || 1),\r\n missingRange: minAndMax.missingRange\r\n }\r\n};\r\n\r\nexport const getFreq = criteria => {\r\n const freqValues = (criteria && criteria[FREQ_DIMENSION_KEY])\r\n ? (criteria[FREQ_DIMENSION_KEY].filterValues || [])\r\n : [];\r\n return (frequencies.find(freq => freqValues.includes(freq)) || null)\r\n};\r\n\r\nexport const getCriteriaArrayFromObject = criteriaObj => {\r\n const criteriaArr = [];\r\n Object.keys(criteriaObj).forEach(key => {\r\n if (criteriaObj[key] !== null && criteriaObj[key] !== undefined) {\r\n criteriaArr.push(criteriaObj[key])\r\n }\r\n });\r\n\r\n return criteriaArr;\r\n};\r\n\r\nexport const getCriteriaObjectFromArray = criteriaArr => {\r\n let criteriaObj = {};\r\n (criteriaArr || []).forEach((dimensionCriteria) => {\r\n criteriaObj = {\r\n ...criteriaObj,\r\n [dimensionCriteria.id]: dimensionCriteria\r\n }\r\n });\r\n\r\n return criteriaObj;\r\n};","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n getCreateDashboardUrl,\r\n getDashboardsUrl,\r\n getDatasetUrl,\r\n getDeleteDashboardUrl,\r\n getDeleteViewUrl,\r\n getGeometryUrl,\r\n getUpdateDashboardUrl,\r\n getUserDashboardsUrl,\r\n getViewsUrl\r\n} from \"../../serverApi/urls\";\r\nimport {\r\n DASHBOARD_ELEM_FILTER_DIMENSION_KEY,\r\n DASHBOARD_ELEM_TYPE_KEY,\r\n DASHBOARD_ELEM_TYPE_VALUE_VIEW,\r\n DASHBOARD_ELEM_VALUE_KEY\r\n} from \"../../utils/dashboards\";\r\nimport {getCriteriaArrayFromObject} from \"../../utils/criteria\";\r\nimport _ from \"lodash\"\r\n\r\nexport const OTHER_CONFIG_VIEWS_FETCH = \"otherConfig/fetchViews\";\r\nexport const OTHER_CONFIG_VIEWS_CLEAR = \"otherConfig/clearViews\";\r\nexport const OTHER_CONFIG_VIEW_DELETE = \"otherConfig/deleteView\";\r\n\r\nexport const OTHER_CONFIG_DASHBOARDS_FETCH = \"otherConfig/fetchDashboards\";\r\nexport const OTHER_CONFIG_DASHBOARDS_CLEAR = \"otherConfig/clearDashboards\";\r\nexport const OTHER_CONFIG_DASHBOARDS_CLOSE = \"otherConfig/closeDashboards\";\r\n\r\nexport const OTHER_CONFIG_DASHBOARD_CREATE = \"otherConfig/dashboard/create\";\r\nexport const OTHER_CONFIG_DASHBOARD_UPDATE = \"otherConfig/dashboard/update\";\r\nexport const OTHER_CONFIG_DASHBOARD_CHANGE = \"otherConfig/dashboard/change\";\r\nexport const OTHER_CONFIG_DASHBOARD_CREATE_SUBMIT = \"otherConfig/dashboard/create/submit\";\r\nexport const OTHER_CONFIG_DASHBOARD_UPDATE_SUBMIT = \"otherConfig/dashboard/update/submit\";\r\nexport const OTHER_CONFIG_DASHBOARD_HIDE = \"otherConfig/dashboard/hide\";\r\nexport const OTHER_CONFIG_DASHBOARD_DELETE = \"otherConfig/dashboard/create\";\r\n\r\nexport const OTHER_CONFIG_DASHBOARD_VIEWS_FETCH = \"otherConfig/dashboard/views/fetch\";\r\nexport const OTHER_CONFIG_DASHBOARD_VIEWS_CLEAR = \"otherConfig/dashboard/views/clear\";\r\n\r\nexport const OTHER_CONFIG_DASHBOARD_DATASET_FETCH = \"otherConfig/dashboard/dataset/fetch\";\r\nexport const OTHER_CONFIG_DASHBOARD_DATASET_FILTER_SET = \"otherConfig/dashboard/dataset/filter/set\";\r\nexport const OTHER_CONFIG_DASHBOARD_MAP_GEOMETRY_FETCH = \"otherConfig/dashboard/map/geometry/fetch\";\r\nexport const OTHER_CONFIG_DASHBOARD_DATASET_CLEAR = \"otherConfig/dashboard/dataset/clear\";\r\n\r\nexport const fetchOtherConfigViews = () => initRequest(\r\n OTHER_CONFIG_VIEWS_FETCH,\r\n getViewsUrl(),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.viewsConfig.messages.fetchViews.start\")\r\n })\r\n);\r\n\r\nexport const clearOtherConfigViews = () => ({\r\n type: OTHER_CONFIG_VIEWS_CLEAR\r\n});\r\n\r\nexport const deleteOtherConfigView = (nodeId: number, id: number) => initRequest(\r\n OTHER_CONFIG_VIEW_DELETE,\r\n getDeleteViewUrl(nodeId, id),\r\n RequestMethod.DELETE,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.viewsConfig.messages.deleteView.start\")\r\n })\r\n);\r\n\r\nexport const fetchOtherConfigDashboards = () => initRequest(\r\n OTHER_CONFIG_DASHBOARDS_FETCH,\r\n getUserDashboardsUrl(),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dashboardsSettings.messages.fetchDashboards.start\")\r\n })\r\n);\r\n\r\nexport const clearOtherConfigDashboards = () => ({\r\n type: OTHER_CONFIG_DASHBOARDS_CLEAR\r\n});\r\n\r\nexport const closeOtherConfigDashboard = () => ({\r\n type: OTHER_CONFIG_DASHBOARDS_CLOSE\r\n});\r\n\r\nexport const createOtherConfigDashboard = (dashboard: any) => ({\r\n type: OTHER_CONFIG_DASHBOARD_CREATE,\r\n payload: {\r\n dashboard: dashboard\r\n }\r\n});\r\n\r\nexport const updateOtherConfigDashboard = (dashboardId: number) => initRequest(\r\n OTHER_CONFIG_DASHBOARD_UPDATE,\r\n getDashboardsUrl(dashboardId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dashboardsSettings.messages.fetchDashboard.start\")\r\n })\r\n);\r\n\r\nexport const changeOtherConfigDashboard = (dashboard: any) => ({\r\n type: OTHER_CONFIG_DASHBOARD_CHANGE,\r\n payload: {\r\n dashboard: dashboard\r\n }\r\n});\r\n\r\nconst getNewDashboard = (dashboard: any, dashboardId: number | null, dashboardConfig: any) => {\r\n const newDashboard = _.cloneDeep(dashboard);\r\n const ids: string[] = [];\r\n\r\n newDashboard.dashboardConfig.forEach((row: any, rowIdx: number) => {\r\n row.forEach((col: any, colIdx: number) => {\r\n const type = col[DASHBOARD_ELEM_TYPE_KEY];\r\n const value = col[DASHBOARD_ELEM_VALUE_KEY];\r\n const filterDimension = col[DASHBOARD_ELEM_FILTER_DIMENSION_KEY]\r\n\r\n if (type === DASHBOARD_ELEM_TYPE_VALUE_VIEW && value !== null && value !== undefined && !ids.includes(value)) {\r\n ids.push(value)\r\n }\r\n if (filterDimension === \"\") {\r\n newDashboard.dashboardConfig[rowIdx][colIdx].filterDimension = null;\r\n }\r\n });\r\n });\r\n\r\n let newFilterLevels = {};\r\n dashboardConfig.labels.forEach((label: string) => {\r\n newFilterLevels = {\r\n ...newFilterLevels,\r\n [label]: (newDashboard.filterLevels[label] || false)\r\n }\r\n });\r\n\r\n return {\r\n dashboardId: dashboardId,\r\n title: newDashboard.title,\r\n dashboardConfig: JSON.stringify(newDashboard.dashboardConfig),\r\n viewIds: ids,\r\n filterLevels: JSON.stringify(newFilterLevels)\r\n }\r\n};\r\n\r\nexport const submitOtherConfigDashboardCreate = (dashboard: any, dashboardConfig: any) => initRequest(\r\n OTHER_CONFIG_DASHBOARD_CREATE_SUBMIT,\r\n getCreateDashboardUrl(),\r\n RequestMethod.POST,\r\n getNewDashboard(dashboard, null, dashboardConfig),\r\n t => ({\r\n onStart: t(\"scenes.dashboardsSettings.messages.submitDashboardCreate.start\")\r\n })\r\n);\r\n\r\nexport const submitOtherConfigDashboardUpdate = (dashboardId: number, dashboard: any, dashboardConfig: any) => initRequest(\r\n OTHER_CONFIG_DASHBOARD_UPDATE_SUBMIT,\r\n getUpdateDashboardUrl(dashboardId),\r\n RequestMethod.PUT,\r\n getNewDashboard(dashboard, dashboardId, dashboardConfig),\r\n t => ({\r\n onStart: t(\"scenes.dashboardsSettings.messages.submitDashboardUpdate.start\")\r\n }),\r\n {\r\n dashboardId: dashboardId\r\n }\r\n);\r\n\r\nexport const deleteOtherConfigDashboard = (dashboardId: number) => initRequest(\r\n OTHER_CONFIG_DASHBOARD_DELETE,\r\n getDeleteDashboardUrl(dashboardId),\r\n RequestMethod.DELETE,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dashboardsSettings.messages.deleteDashboard.start\")\r\n })\r\n);\r\n\r\nexport const hideOtherConfigDashboard = () => ({\r\n type: OTHER_CONFIG_DASHBOARD_HIDE\r\n});\r\n\r\nexport const fetchOtherConfigDashboardViews = () => initRequest(\r\n OTHER_CONFIG_DASHBOARD_VIEWS_FETCH,\r\n getViewsUrl(),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dashboardsSettings.messages.fetchDashboardViews.start\")\r\n })\r\n);\r\n\r\nexport const clearOtherConfigDashboardViews = () => ({\r\n type: OTHER_CONFIG_DASHBOARD_VIEWS_CLEAR\r\n});\r\n\r\nexport const fetchOtherConfigDashboardsDataset = (nodeId: number, datasetId: string, criteria: any, requestIds: string[]) => initRequest(\r\n OTHER_CONFIG_DASHBOARD_DATASET_FETCH,\r\n getDatasetUrl(nodeId, datasetId),\r\n RequestMethod.POST,\r\n getCriteriaArrayFromObject(criteria),\r\n t => ({\r\n onStart: t(\"scenes.dashboard.actions.fetchingDataset\")\r\n }),\r\n {\r\n requestIds: requestIds,\r\n },\r\n \"\",\r\n () => true,\r\n true\r\n);\r\n\r\nexport const setOtherConfigDashboardsDatasetFilter = (viewIdx: string, dimension: string, value: string) => ({\r\n type: OTHER_CONFIG_DASHBOARD_DATASET_FILTER_SET,\r\n payload: {\r\n viewIdx,\r\n dimension,\r\n value\r\n }\r\n});\r\n\r\nexport const fetchOtherConfigDashboardsMapGeometries = (viewIdx: string, idList: string[], t: any, nodeId: number) => initRequest(\r\n OTHER_CONFIG_DASHBOARD_MAP_GEOMETRY_FETCH,\r\n getGeometryUrl(nodeId),\r\n RequestMethod.POST,\r\n idList,\r\n t => ({\r\n onStart: t(`scenes.dashboard.actions.fetchingGeometries`)\r\n }),\r\n {\r\n viewIdx: viewIdx,\r\n t: t\r\n },\r\n \"\",\r\n () => true,\r\n true\r\n);\r\n\r\nexport const clearOtherConfigDashboardsDataset = () => ({\r\n type: OTHER_CONFIG_DASHBOARD_DATASET_CLEAR\r\n});","const getParamsStr = (opts = {}) => {\r\n let paramsStrs = [];\r\n\r\n if (opts.viewId) {\r\n paramsStrs.push(\"view=\" + opts.viewId);\r\n }\r\n if (opts.query) {\r\n paramsStrs.push(\"q=\" + encodeURIComponent(opts.query));\r\n }\r\n if (opts.filters && opts.filters.length > 0) { // filters = c1/c2,c3/c4\r\n paramsStrs.push(\"c=\" + encodeURIComponent(opts.filters.map(f => encodeURIComponent(f.join(\"/\"))).join(\"//\")));\r\n }\r\n if (window.isA11y) {\r\n paramsStrs.push(\"accessible=true\");\r\n }\r\n\r\n if (paramsStrs.length > 0) {\r\n return \"?\" + paramsStrs.join(\"&\");\r\n } else {\r\n return \"\";\r\n }\r\n};\r\n\r\nexport const getHomeInternalUrl = noLanguage =>\r\n `/${noLanguage ? \"\" : window.language}${getParamsStr()}`;\r\n\r\nexport const getNodeInternalUrl = nodeCode =>\r\n `/${window.language}/${(nodeCode || \"\").toLowerCase()}${getParamsStr()}`;\r\n\r\nexport const getNodeCategoriesInternalUrl = nodeCode =>\r\n `/${window.language}/${(nodeCode || \"\").toLowerCase()}/categories${getParamsStr()}`;\r\n\r\nexport const getDatasetsInternalUrl = (nodeCode, categoryPath) =>\r\n `/${window.language}/${(nodeCode || \"\").toLowerCase()}/categories/${categoryPath.join(\"/\")}${getParamsStr()}`;\r\n\r\nexport const getDatasetInternalUrl = (nodeCode, categoryPath, datasetId, viewId) =>\r\n `/${window.language}/${(nodeCode || \"\").toLowerCase()}/${categoryPath.length > 0 ? (\"categories/\" + categoryPath.join(\"/\") + \"/\") : \"\"}` + datasetId + getParamsStr({viewId});\r\n\r\nexport const getDatasetsSearchInternalUrl = (nodeCode, query, filters) =>\r\n `/${window.language}/${(nodeCode || \"\").toLowerCase()}/search${getParamsStr({query, filters})}`;\r\n\r\nexport const getHubDashboardsInternalUrl = () =>\r\n `/${window.language}/dashboards${getParamsStr()}`;\r\n\r\nexport const getNodeDashboardsInternalUrl = nodeCode =>\r\n `/${window.language}/${(nodeCode || \"\").toLowerCase()}/dashboards${getParamsStr()}`;\r\n\r\nexport const getDashboardInternalUrl = dashboardId =>\r\n `/${window.language}/dashboards/${dashboardId}${getParamsStr()}`;\r\n\r\nexport const goToHome = noLanguage => window.open(\"./#\" + getHomeInternalUrl(noLanguage), '_self');\r\nexport const goToNode = nodeCode => window.open(\"./#\" + getNodeInternalUrl(nodeCode), '_self');\r\nexport const goToNodeCategories = nodeCode => window.open(\"./#\" + getNodeCategoriesInternalUrl(nodeCode), '_self');\r\nexport const goToDatasets = (nodeCode, categoryPath) => window.open(\"./#\" + getDatasetsInternalUrl(nodeCode, categoryPath), '_self');\r\nexport const goToDataset = (nodeCode, categoryPath, datasetId, viewId) => window.open(\"./#\" + getDatasetInternalUrl(nodeCode, categoryPath, datasetId, viewId), '_self');\r\nexport const goToDatasetsSearch = (nodeCode, query, filters) => window.open(\"./#\" + getDatasetsSearchInternalUrl(nodeCode, query, filters), '_self');\r\nexport const goToHubDashboards = () => window.open(\"./#\" + getHubDashboardsInternalUrl(), '_self');\r\nexport const goToNodeDashboards = nodeCode => window.open(\"./#\" + getNodeDashboardsInternalUrl(nodeCode), '_self');\r\nexport const goToDashboard = dashboardId => window.open(\"./#\" + getDashboardInternalUrl(dashboardId), '_self');","import React, {forwardRef, useEffect, useState} from 'react';\r\nimport MaterialTable, {MTableToolbar} from \"material-table\";\r\nimport _ from 'lodash';\r\nimport {useTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nimport AddBox from '@material-ui/icons/AddBox';\r\nimport ArrowDownward from '@material-ui/icons/ArrowDownward';\r\nimport Check from '@material-ui/icons/Check';\r\nimport ChevronLeft from '@material-ui/icons/ChevronLeft';\r\nimport ChevronRight from '@material-ui/icons/ChevronRight';\r\nimport Clear from '@material-ui/icons/Clear';\r\nimport DeleteOutline from '@material-ui/icons/DeleteOutline';\r\nimport Edit from '@material-ui/icons/Edit';\r\nimport FilterList from '@material-ui/icons/FilterList';\r\nimport FirstPage from '@material-ui/icons/FirstPage';\r\nimport LastPage from '@material-ui/icons/LastPage';\r\nimport Remove from '@material-ui/icons/Remove';\r\nimport SaveAlt from '@material-ui/icons/SaveAlt';\r\nimport Search from '@material-ui/icons/Search';\r\nimport ViewColumn from '@material-ui/icons/ViewColumn';\r\n\r\nconst $ = window.jQuery;\r\n\r\n// https://github.com/mbrn/material-table#installation\r\nconst tableIcons = {\r\n Add: forwardRef((props, ref) => ),\r\n Check: forwardRef((props, ref) => ),\r\n Clear: forwardRef((props, ref) => ),\r\n Delete: forwardRef((props, ref) => ),\r\n DetailPanel: forwardRef((props, ref) => ),\r\n Edit: forwardRef((props, ref) => ),\r\n Export: forwardRef((props, ref) => ),\r\n Filter: forwardRef((props, ref) => ),\r\n FirstPage: forwardRef((props, ref) => ),\r\n LastPage: forwardRef((props, ref) => ),\r\n NextPage: forwardRef((props, ref) => ),\r\n PreviousPage: forwardRef((props, ref) => ),\r\n ResetSearch: forwardRef((props, ref) => ),\r\n Search: forwardRef((props, ref) => ),\r\n SortArrow: forwardRef((props, ref) => ),\r\n ThirdStateCheck: forwardRef((props, ref) => ),\r\n ViewColumn: forwardRef((props, ref) => )\r\n};\r\n\r\nconst styles = theme => ({\r\n table: {\r\n \"& > div > div:nth-child(2) > div\": {\r\n height: \"100%\"\r\n },\r\n \"& > div > div:nth-child(2) > div > div\": {\r\n height: \"100%\"\r\n }\r\n },\r\n toolbar: {\r\n width: \"100%\"\r\n },\r\n toolbarSearch: {\r\n width: \"100%\",\r\n \"& > .MuiToolbar-root > *\": {\r\n display: \"none\"\r\n },\r\n \"& > .MuiToolbar-root > .MuiFormControl-root.MuiTextField-root\": {\r\n display: \"inline-flex\",\r\n width: \"100%\"\r\n }\r\n },\r\n toolbarActions: {\r\n marginLeft: 24\r\n }\r\n});\r\n\r\nconst CustomMaterialTable = ({\r\n classes,\r\n components,\r\n rightActions,\r\n ...props\r\n }) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n const [uuid] = useState(uuidv4);\r\n\r\n useEffect(() => {\r\n const toolbarRightActionsWidth = $(`#custom-material-table__${uuid} #custom-material-table__toolbar__right-actions`).outerWidth(true);\r\n $(`#custom-material-table__${uuid} #custom-material-table__toolbar__search`).width(`calc(100% - ${toolbarRightActionsWidth}px)`);\r\n\r\n const toolbarHeight = $(`#custom-material-table__${uuid} #custom-material-table__toolbar`).height();\r\n $(`#custom-material-table__${uuid} > div > div:nth-child(2)`).height(`calc(100% - ${toolbarHeight}px)`);\r\n });\r\n\r\n // these props are meant to be used for customizing material table all spread the app\r\n const customProps = {\r\n localization: {\r\n body: {\r\n emptyDataSourceMessage: t(\"components.customMaterialTable.empty\"),\r\n },\r\n header: {\r\n actions: \"\"\r\n },\r\n toolbar: {\r\n searchPlaceholder: t(\"components.customMaterialTable.search.placeholder\"),\r\n searchTooltip: t(\"components.customMaterialTable.search.tooltip\")\r\n }\r\n },\r\n options: {\r\n paging: false,\r\n draggable: false,\r\n showTitle: false,\r\n searchFieldAlignment: \"left\"\r\n }\r\n };\r\n\r\n // props passed to this component are merged with and can override the custom props\r\n const mergedProps = _.merge(customProps, props);\r\n\r\n return (\r\n \r\n (\r\n \r\n \r\n \r\n \r\n \r\n {rightActions && (\r\n
\r\n {rightActions}\r\n
\r\n )}\r\n
\r\n \r\n )\r\n }}\r\n style={{height: \"100%\"}}\r\n icons={tableIcons}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default withStyles(styles)(CustomMaterialTable);\r\n","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {connect} from \"react-redux\";\r\nimport {compose} from \"redux\";\r\nimport {Visibility} from \"@material-ui/icons\";\r\nimport {clearOtherConfigViews, deleteOtherConfigView, fetchOtherConfigViews} from \"../../../state/otherConfig/otherConfigActions\";\r\nimport {goToDataset} from \"../../../links\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../../custom-material-table\";\r\nimport {getI18nObjCustomFilterAndSearch, localizeI18nObj} from \"../../../utils/i18n\";\r\n\r\nconst styles = theme => ({\r\n tableToolbar: {\r\n marginBottom: theme.spacing(1)\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages,\r\n views: state.otherConfig.views\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchViews: () => dispatch(fetchOtherConfigViews()),\r\n clearViews: () => dispatch(clearOtherConfigViews()),\r\n deleteView: (nodeId, id) => dispatch(deleteOtherConfigView(nodeId, id))\r\n});\r\n\r\nconst UserViewsSettingsForm = ({\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n views,\r\n fetchViews,\r\n clearViews,\r\n deleteView,\r\n nodes,\r\n onViewsClose\r\n }, ref) => {\r\n\r\n const [needViews, setNeedViews] = useState(true);\r\n const {t} = useTranslation();\r\n\r\n useEffect(() => {\r\n\r\n if (needViews) {\r\n setNeedViews(false);\r\n fetchViews();\r\n }\r\n }, [views, needViews, setNeedViews, fetchViews]);\r\n\r\n useImperativeHandle(ref, () => ({\r\n cancel(f) {\r\n clearViews();\r\n f();\r\n }\r\n }));\r\n\r\n const [deleteViewId, setDeleteViewId] = useState(null);\r\n const [deleteViewNodeId, setDeleteViewNodeId] = useState(null);\r\n\r\n return nodes && views && (\r\n \r\n nodes.find(node => node.nodeId === nodeId).code,\r\n customFilterAndSearch: (str, {nodeId}) =>\r\n nodes.find(node => node.nodeId === nodeId).code.toLowerCase()\r\n .includes(str.toLowerCase())\r\n },\r\n {field: \"datasetId\", title: t(\"scenes.viewsSettings.table.columns.viewDatasetId\")},\r\n {\r\n field: \"title\",\r\n title: t(\"scenes.viewsSettings.table.columns.viewTitle\"),\r\n render: ({title}) => localizeI18nObj(title, defaultLanguage, languages),\r\n customFilterAndSearch: getI18nObjCustomFilterAndSearch(defaultLanguage, languages)\r\n },\r\n ]}\r\n data={(views || []).filter(({nodeId}) => nodes.find(node => node.nodeId === nodeId))}\r\n actions={[\r\n {\r\n icon: Visibility,\r\n tooltip: t(\"scenes.viewsSettings.table.actions.viewView\"),\r\n onClick: (_, {\r\n nodeId,\r\n datasetId,\r\n viewTemplateId\r\n }) => window.location.href.toLowerCase().includes(`view=${viewTemplateId}`)\r\n ? onViewsClose()\r\n : goToDataset(nodes.find(node => node.nodeId === nodeId).code, [], datasetId, viewTemplateId)\r\n },\r\n {\r\n icon: DeleteIcon,\r\n tooltip: t(\"scenes.viewsSettings.table.actions.deleteView\"),\r\n onClick: (_, {nodeId, viewTemplateId}) => {\r\n setDeleteViewId(viewTemplateId);\r\n setDeleteViewNodeId(nodeId);\r\n }\r\n }\r\n ]}\r\n options={{\r\n actionsColumnIndex: 3\r\n }}\r\n />\r\n\r\n \r\n {\r\n setDeleteViewId(null);\r\n setDeleteViewNodeId(null);\r\n }}\r\n >\r\n {t(\"scenes.viewsSettings.modals.deleteView.title\")}\r\n \r\n \r\n {t(\"scenes.viewsSettings.modals.deleteView.content\")}\r\n \r\n \r\n {\r\n setDeleteViewId(null);\r\n setDeleteViewNodeId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.cancel\")}\r\n \r\n {\r\n deleteView(deleteViewNodeId, deleteViewId);\r\n setDeleteViewId(null);\r\n setDeleteViewNodeId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default compose(withStyles(styles), connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(UserViewsSettingsForm);","import React from 'react';\r\nimport TextField from '@material-ui/core/TextField';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport VisibilityIcon from '@material-ui/icons/Visibility';\r\n\r\nconst iconStyle = {\r\n cursor: 'pointer'\r\n};\r\n\r\n/* Based on https://ant.design/components/form/#components-form-demo-customized-form-controls */\r\nclass Selector extends React.Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n value: null\r\n };\r\n this.callOnChange = this.callOnChange.bind(this);\r\n }\r\n\r\n static getDerivedStateFromProps(nextProps, state) {\r\n if (nextProps.value !== state.value) {\r\n return {\r\n value: nextProps.value\r\n };\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n callOnChange(value) {\r\n if (this.props.onChange) {\r\n this.props.onChange(value);\r\n }\r\n }\r\n\r\n render() {\r\n\r\n const {\r\n disabled,\r\n detailTitle,\r\n selectTitle,\r\n resetTitle,\r\n onDetail,\r\n onSelect,\r\n onReset,\r\n render,\r\n variant,\r\n className\r\n } = this.props;\r\n\r\n const {\r\n value\r\n } = this.state;\r\n\r\n return (\r\n f}\r\n variant={variant || \"outlined\"}\r\n InputProps={{\r\n readOnly: true,\r\n endAdornment: disabled\r\n ? undefined\r\n : value !== null\r\n ? resetTitle\r\n ? (\r\n \r\n \r\n \r\n )\r\n : \r\n : selectTitle\r\n ? (\r\n \r\n \r\n \r\n )\r\n : ,\r\n startAdornment: (onDetail && value !== null)\r\n ? detailTitle\r\n ? (\r\n \r\n \r\n \r\n )\r\n : \r\n : undefined\r\n }}\r\n className={className}\r\n />\r\n );\r\n }\r\n}\r\n\r\nexport default Selector;\r\n","import React, {useEffect, useState} from 'react';\r\nimport ButtonSelect from \"../button-select\";\r\nimport {connect} from \"react-redux\";\r\nimport CountryLanguage from 'country-language';\r\n\r\nconst CUSTOM_LANG_TO_COUNTRY = {\r\n en: \"gb\",\r\n ba: \"tr\"\r\n};\r\n\r\nconst I18nInputAdornmentSelect = ({value, onChange, languages, ariaLabel, tooltip, customLangToCountry, showAsIcon}) => {\r\n\r\n const [langToCountry, setLangToCountry] = useState(null);\r\n\r\n useEffect(() => {\r\n\r\n let res = {};\r\n\r\n languages.forEach(langCode =>\r\n CountryLanguage.getLanguageCountries(langCode, (err, countries) => {\r\n if (!err) {\r\n res[langCode] =\r\n customLangToCountry[langCode] ||\r\n CUSTOM_LANG_TO_COUNTRY[langCode] ||\r\n countries.find(({code_2}) => code_2.toLowerCase() === langCode)?.code_2.toLowerCase() ||\r\n countries[0]?.code_2?.toLowerCase();\r\n }\r\n }));\r\n\r\n setLangToCountry(res);\r\n\r\n }, [languages, customLangToCountry]);\r\n\r\n if (!langToCountry) {\r\n return null;\r\n }\r\n\r\n const iconValue = langToCountry[value]\r\n ?  \r\n : {value};\r\n\r\n return (\r\n \r\n {languages.map(lang => langToCountry[lang]\r\n ?  \r\n : {(lang || \"\").toUpperCase()}\r\n )}\r\n \r\n );\r\n};\r\n\r\nexport default connect(state => ({\r\n languages: state.app.languages,\r\n customLangToCountry: state.appConfig?.customLangToCountry || {},\r\n}))(I18nInputAdornmentSelect);","import React, {useState} from 'react';\r\nimport {TextField} from \"@material-ui/core\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport I18nInputAdornmentSelect from \"../i18n-input-adornment-select\";\r\nimport {connect} from \"react-redux\";\r\nimport _ from \"lodash\";\r\n\r\nconst ON_CHANGE_TIMEOUT = 500;\r\n\r\nconst getInitialInternalValue = (value, languages) => {\r\n const emptyValue = {};\r\n languages.forEach(lang => emptyValue[lang] = \"\");\r\n\r\n return _.merge(emptyValue, value)\r\n};\r\n\r\nconst Component = ({\r\n textFieldProps,\r\n defaultLanguage,\r\n languages\r\n }) => {\r\n\r\n const [language, setLanguage] = useState(defaultLanguage);\r\n const [internalValue, setInternalValue] = useState(getInitialInternalValue(textFieldProps.value, languages));\r\n const [timeoutId, setTimeoutId] = useState(null);\r\n\r\n const callOnChange = value => {\r\n if (textFieldProps.onChange) {\r\n if (timeoutId) {\r\n clearTimeout(timeoutId)\r\n }\r\n setTimeoutId(setTimeout(\r\n () => {\r\n textFieldProps.onChange(value);\r\n },\r\n ON_CHANGE_TIMEOUT\r\n ));\r\n }\r\n };\r\n\r\n const setValueForLanguage = value => {\r\n let newInternalValue = _.cloneDeep(internalValue);\r\n newInternalValue[language] = value;\r\n\r\n setInternalValue(newInternalValue);\r\n callOnChange(newInternalValue);\r\n };\r\n\r\n return (\r\n setValueForLanguage(target.value)}\r\n InputProps={{\r\n startAdornment: (\r\n \r\n setLanguage(lang)}/>\r\n \r\n )\r\n }}\r\n >\r\n {textFieldProps.children}\r\n \r\n );\r\n};\r\n\r\nconst ConnectedComponent =\r\n connect(state => ({\r\n languages: state.app.languages,\r\n defaultLanguage: state.app.language\r\n }))(Component);\r\n\r\nconst I18nDelayedTextField = props =>\r\n ;\r\n\r\nexport default I18nDelayedTextField;","import React from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {CKEditor} from '@ckeditor/ckeditor5-react';\r\nimport Editor from '@ckeditor/ckeditor5-build-custom'\r\nimport \"./style.css\"\r\n\r\nimport '@ckeditor/ckeditor5-build-custom/build/translations/it';\r\n\r\nconst styles = theme => ({\r\n preToolbar: {\r\n marginBottom: theme.spacing(1)\r\n }\r\n});\r\n\r\nclass HtmlEditor extends React.Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = HtmlEditor.getInitState(props);\r\n this.handleEditorChange = this.handleEditorChange.bind(this);\r\n }\r\n\r\n static getInitState(props) {\r\n return {\r\n value: props ? (props.value || '') : ''\r\n };\r\n }\r\n\r\n static getDerivedStateFromProps(props) {\r\n if (props.value !== null && props.value !== undefined) {\r\n return {\r\n value: props.value\r\n };\r\n\r\n } else {\r\n return HtmlEditor.getInitState(props);\r\n }\r\n }\r\n\r\n handleEditorChange(event, editor) {\r\n const data = editor.getData();\r\n if (this.props.onChange) {\r\n this.props.onChange(data);\r\n }\r\n }\r\n\r\n render() {\r\n\r\n const {\r\n value\r\n } = this.state;\r\n\r\n const {\r\n defaultLanguage,\r\n disabled,\r\n minimalToolbar\r\n } = this.props;\r\n\r\n let customConfig = {};\r\n if (minimalToolbar) {\r\n customConfig = {\r\n ...customConfig,\r\n toolbar: {\r\n ...customConfig.toolbar,\r\n items: [\r\n 'bold',\r\n 'italic',\r\n 'underline',\r\n 'strikethrough',\r\n 'removeFormat',\r\n '|',\r\n 'fontColor',\r\n 'fontBackgroundColor',\r\n '|',\r\n 'link'\r\n ]\r\n }\r\n }\r\n }\r\n\r\n return (\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(state => ({\r\n defaultLanguage: state.app.language\r\n }))\r\n)(HtmlEditor);\r\n","import React, {Fragment, useState} from 'react';\r\nimport I18nInputAdornmentSelect from \"../i18n-input-adornment-select\";\r\nimport {connect} from \"react-redux\";\r\nimport HtmlEditor from \"../html-editor\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst Component = ({\r\n htmlEditorProps,\r\n defaultLanguage,\r\n languages\r\n }) => {\r\n\r\n const [language, setLanguage] = useState(defaultLanguage);\r\n\r\n return (\r\n \r\n \r\n \r\n setLanguage(lang)}/>\r\n \r\n \r\n {\r\n const res = {};\r\n languages.forEach(lang => {\r\n if (htmlEditorProps.value && htmlEditorProps.value[lang]) {\r\n res[lang] = htmlEditorProps.value[lang];\r\n }\r\n });\r\n res[language] = val;\r\n htmlEditorProps.onChange(res);\r\n }}\r\n\r\n />\r\n \r\n );\r\n};\r\n\r\nconst ConnectedComponent =\r\n connect(state => ({\r\n languages: state.app.languages,\r\n defaultLanguage: state.app.language\r\n }))(Component);\r\n\r\nconst I18nHtmlEditor = props =>\r\n ;\r\n\r\nexport default I18nHtmlEditor;","export const getDashboardDynamicFilterLabelTranslations = t => {\r\n\r\n const translations = t => ({\r\n Region: t('dashboards.dynamicFilterLabels.region'),\r\n Province: t('dashboards.dynamicFilterLabels.province'),\r\n Municipality: t('dashboards.dynamicFilterLabels.municipality'),\r\n });\r\n\r\n return translations(t !== undefined ? t : str => str);\r\n};","import React, {Fragment, useEffect, useState} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport _ from \"lodash\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport CloseIcon from '@material-ui/icons/Close';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport CustomMaterialTable from \"../custom-material-table\";\r\nimport Selector from \"../selector\";\r\nimport {\r\n DASHBOARD_ELEM_ENABLE_FILTERS_KEY,\r\n DASHBOARD_ELEM_FILTER_DIMENSION_KEY,\r\n DASHBOARD_ELEM_SHOW_TITLE_KEY,\r\n DASHBOARD_ELEM_TYPE_KEY,\r\n DASHBOARD_ELEM_TYPE_VALUE_TEXT,\r\n DASHBOARD_ELEM_TYPE_VALUE_VIEW,\r\n DASHBOARD_ELEM_VALUE_KEY,\r\n DASHBOARD_ELEM_WIDTH_KEY,\r\n emptyDashboardElem\r\n} from \"../../utils/dashboards\";\r\nimport FormControlLabel from '@material-ui/core/FormControlLabel';\r\nimport Typography from '@material-ui/core/Typography';\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport I18nDelayedTextField from \"../i18n-delayed-text-field\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport I18nHtmlEditor from \"../i18n-html-editor\";\r\nimport {getI18nObjCustomFilterAndSearch, localizeI18nObj} from \"../../utils/i18n\";\r\nimport {getDashboardDynamicFilterLabelTranslations} from \"../../constants/getDashboardDynamicFilterLabelTranslations\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport {sanitize} from \"dompurify\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst MAX_VIEW_PER_ROW = 4;\r\n\r\nconst ROW_ACTION_WIDTH = 48;\r\n\r\nconst styles = theme => ({\r\n filterLevels: {\r\n fontSize: 16\r\n },\r\n rowContainer: {\r\n width: \"100%\",\r\n marginTop: 8\r\n },\r\n row: {\r\n width: `calc(100% - ${2 * ROW_ACTION_WIDTH}px)`,\r\n height: \"100%\",\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\"\r\n },\r\n rowActions: {\r\n width: (2 * ROW_ACTION_WIDTH),\r\n margin: \"5px 0\",\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\"\r\n },\r\n rowAction: {\r\n width: ROW_ACTION_WIDTH\r\n },\r\n colContainer: {\r\n border: \"1px solid rgba(0, 0, 0, 0.2)\",\r\n marginRight: 8,\r\n padding: \"16px 16px 0px 16px\",\r\n height: \"100%\",\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\"\r\n },\r\n col: {\r\n width: \"100%\",\r\n display: \"inline-block\"\r\n },\r\n divider: {\r\n margin: \"8px 0\"\r\n },\r\n colActions: {\r\n width: \"100%\",\r\n textAlign: \"center\",\r\n paddingBottom: 8,\r\n \"& button\": {\r\n padding: 8\r\n }\r\n },\r\n viewContainer: {\r\n width: \"100%\"\r\n },\r\n input: {\r\n width: \"100%\",\r\n \"& > div\": {\r\n width: \"100%\"\r\n },\r\n \"& input\": {\r\n padding: 12,\r\n height: 20\r\n }\r\n },\r\n multilineInput: {\r\n width: \"100%\",\r\n \"& > div\": {\r\n width: \"100%\",\r\n padding: 12\r\n },\r\n \"& textarea\": {\r\n padding: 0\r\n },\r\n \"& svg\": {\r\n cursor: \"pointer\",\r\n marginLeft: 4\r\n }\r\n },\r\n formLabel: {\r\n marginLeft: 0,\r\n marginRight: 0\r\n }\r\n});\r\n\r\nconst getStrippedHtmlText = html => {\r\n const $span = $('').get(0);\r\n\r\n $span.innerHTML = sanitize(html, {ADD_ATTR: [\"target\"]});\r\n const text = $span.textContent || $span.innerText || \"\";\r\n\r\n $($span).remove();\r\n\r\n return text;\r\n}\r\n\r\nconst DashboardBuilderCol = ({\r\n t,\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n dashboard,\r\n rowIdx,\r\n colIdx,\r\n col,\r\n onColRemove,\r\n onTypeReset,\r\n fetchViews,\r\n onViewReset,\r\n onTextEdit,\r\n onShowTitleChange,\r\n onEnableFiltersChange,\r\n onFilterDimensionChange\r\n }) =>\r\n \r\n
\r\n {col[DASHBOARD_ELEM_TYPE_KEY] === null\r\n ? (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n : (\r\n
\r\n {col[DASHBOARD_ELEM_TYPE_KEY] === DASHBOARD_ELEM_TYPE_VALUE_VIEW\r\n ? (\r\n \r\n \r\n view?.title ? localizeI18nObj(view.title, defaultLanguage, languages) : \"\"}\r\n className={classes.input}\r\n selectTitle={t(\"components.dashboardBuilder.actions.selectView\")}\r\n onSelect={() => fetchViews(rowIdx, colIdx)}\r\n resetTitle={t(\"components.dashboardBuilder.actions.deselectView\")}\r\n onReset={() => onViewReset(rowIdx, colIdx, col[DASHBOARD_ELEM_VALUE_KEY])}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {t(\"components.dashboardBuilder.actions.showTitle\") + \":\"}\r\n \r\n }\r\n labelPlacement=\"start\"\r\n control={\r\n onShowTitleChange(rowIdx, colIdx, checked)}\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n {t(\"components.dashboardBuilder.actions.enableFilters\") + \":\"}\r\n \r\n }\r\n labelPlacement=\"start\"\r\n style={{fontSize: 14}}\r\n control={\r\n onEnableFiltersChange(rowIdx, colIdx, checked)}\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n {t(\"components.dashboardBuilder.filterDimension.label\") + \":\"}\r\n \r\n \r\n onFilterDimensionChange(rowIdx, colIdx, target.value)}\r\n />\r\n \r\n \r\n )\r\n : (\r\n \r\n onTextEdit(rowIdx, colIdx, col[DASHBOARD_ELEM_VALUE_KEY])}/>\r\n \r\n )\r\n }}\r\n />\r\n )\r\n }\r\n
\r\n )\r\n }\r\n
\r\n \r\n
\r\n {col[DASHBOARD_ELEM_TYPE_KEY] !== null && (\r\n \r\n onTypeReset(rowIdx, colIdx)}\r\n >\r\n \r\n \r\n \r\n )}\r\n \r\n onColRemove(rowIdx, colIdx)}\r\n disabled={dashboard.dashboardConfig[rowIdx].length === 1}\r\n >\r\n \r\n \r\n \r\n
\r\n ;\r\n\r\nconst DashboardBuilderRow = ({\r\n t,\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n dashboard,\r\n row,\r\n rowIdx,\r\n onRowRemove,\r\n onColAdd,\r\n onColRemove,\r\n onTypeReset,\r\n fetchViews,\r\n onViewReset,\r\n onTextEdit,\r\n onShowTitleChange,\r\n onEnableFiltersChange,\r\n onFilterDimensionChange\r\n }) =>\r\n
\r\n
\r\n {row.map((col, idx) =>\r\n \r\n )}\r\n
\r\n
\r\n \r\n onColAdd(rowIdx)}\r\n disabled={row.length === MAX_VIEW_PER_ROW}\r\n >\r\n \r\n \r\n \r\n \r\n onRowRemove(rowIdx)}\r\n >\r\n \r\n \r\n \r\n
\r\n
;\r\n\r\nconst handleHeight = () => {\r\n $(\"#dashboard-builder__row-container\").children().each(function () {\r\n\r\n let maxHeight = 0;\r\n $(this).find(\".dashboard-builder__col\").each(function () {\r\n maxHeight = Math.max(maxHeight, $(this).outerHeight());\r\n });\r\n $(this).css({height: maxHeight + 48 + 17 + 16 + 2}); // col actions + divider + vertical paddings + border width\r\n\r\n $(this).find(\".dashboard-builder__col\").each(function () {\r\n $(this).css({margin: `${(maxHeight - $(this).outerHeight()) / 2}px 0`});\r\n });\r\n });\r\n}\r\n\r\nfunction DashboardBuilder(props) {\r\n const {\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n dashboardConfig,\r\n nodes,\r\n dashboard,\r\n onChange,\r\n views,\r\n fetchViews,\r\n onViewsHide\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [selectedRowIdx, setSelectedRowIdx] = useState(null);\r\n const [selectedColIdx, setSelectedColIdx] = useState(null);\r\n\r\n const [isEditTextVisible, setEditTextVisibility] = useState(false);\r\n const [tempTextValue, setTempTextValue] = useState(null);\r\n\r\n useEffect(() => {\r\n window.addEventListener(\"resize\", handleHeight);\r\n return () => window.removeEventListener(\"resize\", handleHeight)\r\n }, []);\r\n\r\n useEffect(() => {\r\n handleHeight();\r\n });\r\n\r\n const handleRowAdd = () => {\r\n const newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig.push([emptyDashboardElem]);\r\n onChange(newDashboard);\r\n };\r\n\r\n const handleRowRemove = rowIdx => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig = newDashboard.dashboardConfig.filter((_, idx) => idx !== rowIdx);\r\n onChange(newDashboard);\r\n };\r\n\r\n const handleColAdd = rowIdx => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx].push(emptyDashboardElem);\r\n\r\n let totalWidth = 0;\r\n newDashboard.dashboardConfig[rowIdx] = newDashboard.dashboardConfig[rowIdx].map((col, colIdx) => {\r\n const width = colIdx < (newDashboard.dashboardConfig[rowIdx].length - 1)\r\n ? Math.floor(100 / newDashboard.dashboardConfig[rowIdx].length)\r\n : 0;\r\n totalWidth += width;\r\n\r\n return {\r\n ...col,\r\n [DASHBOARD_ELEM_WIDTH_KEY]: width || (100 - totalWidth)\r\n }\r\n });\r\n onChange(newDashboard);\r\n };\r\n\r\n const handleColRemove = (rowIdx, colIdx) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx] = newDashboard.dashboardConfig[rowIdx].filter((_, idx) => idx !== colIdx);\r\n newDashboard.dashboardConfig[rowIdx] = newDashboard.dashboardConfig[rowIdx].map(col => ({\r\n ...col,\r\n [DASHBOARD_ELEM_WIDTH_KEY]: (100 / newDashboard.dashboardConfig[rowIdx].length)\r\n }));\r\n onChange(newDashboard);\r\n };\r\n\r\n const handleTypeReset = (rowIdx, colIdx) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_TYPE_KEY] = null;\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_VALUE_KEY] = null;\r\n onChange(newDashboard);\r\n };\r\n\r\n const handleViewSet = (rowIdx, colIdx, view) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_TYPE_KEY] = DASHBOARD_ELEM_TYPE_VALUE_VIEW;\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_VALUE_KEY] = view.viewTemplateId;\r\n newDashboard.views[view.viewTemplateId] = view;\r\n onChange(newDashboard);\r\n onViewsHide();\r\n };\r\n\r\n const handleViewReset = (rowIdx, colIdx, viewId) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_VALUE_KEY] = null;\r\n onChange(newDashboard);\r\n onViewsHide();\r\n };\r\n\r\n const handleEditTextShow = (rowIdx, colIdx, text) => {\r\n setSelectedRowIdx(rowIdx);\r\n setSelectedColIdx(colIdx);\r\n setTempTextValue(text);\r\n setEditTextVisibility(true);\r\n };\r\n\r\n const handleEditTextHide = () => {\r\n setSelectedRowIdx(null);\r\n setSelectedColIdx(null);\r\n setTempTextValue(null);\r\n setEditTextVisibility(false);\r\n };\r\n\r\n const handleTextChange = (rowIdx, colIdx, text) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_TYPE_KEY] = DASHBOARD_ELEM_TYPE_VALUE_TEXT;\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_VALUE_KEY] = text;\r\n onChange(newDashboard);\r\n setEditTextVisibility(false);\r\n };\r\n\r\n const handleShowTitleChange = (rowIdx, colIdx, value) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_SHOW_TITLE_KEY] = value;\r\n onChange(newDashboard);\r\n };\r\n\r\n const handleEnableFiltersChange = (rowIdx, colIdx, value) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_ENABLE_FILTERS_KEY] = value;\r\n onChange(newDashboard);\r\n };\r\n\r\n const handleFilterDimensionChange = (rowIdx, colIdx, value) => {\r\n let newDashboard = _.cloneDeep(dashboard);\r\n newDashboard.dashboardConfig[rowIdx][colIdx][DASHBOARD_ELEM_FILTER_DIMENSION_KEY] = value;\r\n onChange(newDashboard);\r\n };\r\n\r\n return (\r\n \r\n {dashboard && (\r\n \r\n \r\n \r\n onChange({...dashboard, title: value})}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {t(\"components.dashboardBuilder.filterLevels\")}:\r\n \r\n \r\n \r\n {dashboardConfig.labels.map((label, idx) =>\r\n \r\n onChange({\r\n ...dashboard,\r\n filterLevels: {\r\n ...dashboard.filterLevels,\r\n [label]: checked\r\n }\r\n })}\r\n />\r\n }\r\n />\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {(dashboard.dashboardConfig || []).map((row, idx) =>\r\n {\r\n fetchViews();\r\n setSelectedRowIdx(rowIdx);\r\n setSelectedColIdx(colIdx);\r\n }}\r\n onViewReset={handleViewReset}\r\n onTextEdit={handleEditTextShow}\r\n onShowTitleChange={handleShowTitleChange}\r\n onEnableFiltersChange={handleEnableFiltersChange}\r\n onFilterDimensionChange={handleFilterDimensionChange}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n {t(\"components.dashboardBuilder.modals.views.title\")}\r\n \r\n \r\n nodes.find(node => node.nodeId === nodeId))}\r\n columns={[\r\n {\r\n field: \"nodeId\",\r\n title: t(\"components.dashboardBuilder.modals.views.columns.node\"),\r\n render: ({nodeId}) => nodes.find(node => node.nodeId === nodeId).code,\r\n customFilterAndSearch: (str, {nodeId}) =>\r\n nodes.find(node => node.nodeId === nodeId).code.toLowerCase()\r\n .includes(str.toLowerCase())\r\n },\r\n {\r\n field: \"datasetId\",\r\n title: t(\"scenes.viewsSettings.table.columns.viewDatasetId\")\r\n },\r\n {\r\n field: \"title\",\r\n title: t(\"scenes.viewsSettings.table.columns.viewTitle\"),\r\n render: ({title}) => localizeI18nObj(title, defaultLanguage, languages),\r\n customFilterAndSearch: getI18nObjCustomFilterAndSearch(defaultLanguage, languages)\r\n },\r\n ]}\r\n onRowClick={(event, rowData) => {\r\n handleViewSet(selectedRowIdx, selectedColIdx, rowData);\r\n setSelectedRowIdx(null);\r\n setSelectedColIdx(null);\r\n }}\r\n />\r\n \r\n \r\n {\r\n onViewsHide();\r\n setSelectedRowIdx(null);\r\n setSelectedColIdx(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.cancel\")}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"components.dashboardBuilder.modals.text.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(state => ({\r\n languages: state.app.languages,\r\n defaultLanguage: state.app.language,\r\n dashboardConfig: state.dashboardConfig\r\n }))\r\n)(DashboardBuilder);","import React from \"react\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardHeader from \"@material-ui/core/CardHeader\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {getAttributeLabel, getAttributeValueLabel} from \"../../utils/jsonStat\";\r\n\r\nconst styles = theme => ({\r\n root: {},\r\n cardTitle: {\r\n fontSize: 17,\r\n fontWeight: \"bold\"\r\n },\r\n datasetAttributesCard: {\r\n background: \"#F5F5F5\"\r\n },\r\n datasetAttributes: {\r\n margin: 0,\r\n padding: \"0 16px 16px\"\r\n },\r\n seriesAttributes: {\r\n margin: 0,\r\n padding: \"0 0 16px\"\r\n },\r\n attributeGroup: {\r\n margin: 0,\r\n padding: \"0 16px\"\r\n }\r\n});\r\n\r\nconst Attribute = ({attribute, labelFormat, list}) =>\r\n \r\n {`${list ? \"- \" : \"\"}${getAttributeLabel(attribute, labelFormat)}: ${getAttributeValueLabel(attribute, labelFormat)}`}\r\n ;\r\n\r\nfunction AttributeList(props) {\r\n\r\n const {\r\n classes,\r\n datasetAttributes,\r\n seriesAttributes,\r\n labelFormat\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n return (\r\n
\r\n {datasetAttributes.length > 0 && (\r\n \r\n \r\n {t(\"components.attributeList.datasetInformation.title\")}:\r\n
\r\n }\r\n disableTypography\r\n />\r\n \r\n {datasetAttributes.map((attribute, idx) =>\r\n \r\n )}\r\n \r\n \r\n )}\r\n {seriesAttributes.length > 0 && (\r\n \r\n \r\n {t(\"components.attributeList.seriesInformation.title\")}:\r\n \r\n }\r\n disableTypography\r\n />\r\n \r\n {seriesAttributes.map(({dimensions, attributes}, idx) =>\r\n \r\n \r\n {dimensions.map(({id, value}, idx) =>\r\n
\r\n {id}: {value}{idx < dimensions.length - 1 ? \",\" : \"\"}\r\n
\r\n )}\r\n
\r\n {attributes.map((attribute, idx) =>\r\n \r\n )}\r\n
\r\n )}\r\n \r\n
\r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default withStyles(styles)(AttributeList)","import html2canvas from \"html2canvas\";\r\nimport {getDimensionLabelFromJsonStat, getDimensionValueLabelFromJsonStat, VARIATION_DIMENSION_KEY} from \"./jsonStat\";\r\nimport {getCriteriaArrayFromObject} from \"./criteria\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nexport const DOWNLOAD_VIEWER_TABLE = \"table\";\r\nexport const DOWNLOAD_VIEWER_CHART = \"chart\";\r\nexport const DOWNLOAD_VIEWER_MAP = \"map\";\r\n\r\nexport const DOWNLOAD_FORMAT_IMAGE = \"jpeg\";\r\nexport const DOWNLOAD_FORMAT_EXCEL = \"excel\";\r\nexport const DOWNLOAD_FORMAT_CSV = \"csv\";\r\n\r\nexport const downloadFormats = t => ({\r\n \"genericdata\": {\r\n label: t ? t(\"commons.downloadFormat.genericdata\") : \"genericdata\",\r\n extension: \"xml\"\r\n },\r\n \"genericdata20\": {\r\n label: t ? t(\"commons.downloadFormat.genericdata20\") : \"genericdata20\",\r\n extension: \"xml\"\r\n },\r\n \"compactdata\": {\r\n label: t ? t(\"commons.downloadFormat.compactdata\") : \"compactdata\",\r\n extension: \"xml\"\r\n },\r\n \"structurespecificdata\": {\r\n label: t ? t(\"commons.downloadFormat.structurespecificdata\") : \"structurespecificdata\",\r\n extension: \"xml\"\r\n },\r\n \"structure\": {\r\n label: t ? t(\"commons.downloadFormat.structure\") : \"structure\",\r\n extension: \"xml\"\r\n },\r\n \"jsondata\": {\r\n label: t ? t(\"commons.downloadFormat.jsondata\") : \"jsondata\",\r\n extension: \"json\"\r\n },\r\n \"sdmx-csv\": {\r\n label: t ? t(\"commons.downloadFormat.sdmxCsv\") : \"sdmx-csv\",\r\n extension: \"csv\",\r\n param: \"csv\"\r\n },\r\n [DOWNLOAD_FORMAT_IMAGE]: {\r\n label: t ? t(\"commons.downloadFormat.jpeg\") : \"jpeg\",\r\n extension: \"jpeg\",\r\n viewers: [DOWNLOAD_VIEWER_CHART, DOWNLOAD_VIEWER_MAP]\r\n },\r\n [DOWNLOAD_FORMAT_EXCEL]: {\r\n label: t ? t(\"commons.downloadFormat.excel\") : \"excel\",\r\n extension: \"xlsx\",\r\n viewers: [DOWNLOAD_VIEWER_TABLE]\r\n },\r\n [DOWNLOAD_FORMAT_CSV]: {\r\n label: t ? t(\"commons.downloadFormat.csv\") : \"csv\",\r\n extension: \"csv\",\r\n viewers: [DOWNLOAD_VIEWER_TABLE]\r\n }\r\n});\r\n\r\nexport const isDownloadFormatValid = format => downloadFormats()?.[format] !== undefined\r\n\r\nexport const getDownloadFormatLabelFromFormat = (format, t) => downloadFormats(t)[format]?.label;\r\n\r\nexport const getDownloadFormatExtensionFromFormat = format => downloadFormats()[format]?.extension;\r\n\r\nexport const getDownloadFormatViewersFromFormat = format => downloadFormats()[format]?.viewers;\r\n\r\nfunction getClonedCanvas(oldCanvas) {\r\n const newCanvas = document.createElement('canvas');\r\n const context = newCanvas.getContext('2d');\r\n\r\n newCanvas.width = oldCanvas.width;\r\n newCanvas.height = oldCanvas.height;\r\n\r\n context.drawImage(oldCanvas, 0, 0);\r\n\r\n return newCanvas;\r\n}\r\n\r\nexport const exportViewerCanvas = (canvas, fileName, title, layout, jsonStat) => {\r\n const div = $('
').css({\r\n position: 'absolute',\r\n left: -(canvas.width + 1)\r\n }).appendTo('body').get(0);\r\n\r\n if (title && title.length > 0) {\r\n $(`
${title}
`)\r\n .css({\r\n width: canvas.width,\r\n height: \"100%\",\r\n margin: \"8px 0\",\r\n padding: \"0 8px\",\r\n fontSize: 20\r\n })\r\n .appendTo(div);\r\n }\r\n\r\n if (layout && jsonStat && layout.filters && layout.filters.length > 0) {\r\n const staticFiltersDivs = $(`
`)\r\n .css({\r\n width: canvas.width,\r\n height: \"100%\",\r\n margin: \"8px 0\",\r\n padding: \"0 8px\",\r\n fontSize: 14\r\n })\r\n .appendTo(div);\r\n\r\n layout.filters.forEach((dim, idx) => {\r\n const dimLabel = getDimensionLabelFromJsonStat(jsonStat, dim);\r\n const value = layout.filtersValue[dim];\r\n const valueLabel = getDimensionValueLabelFromJsonStat(jsonStat, dim, value);\r\n\r\n $(`
${(dimLabel || dim)}: ${(valueLabel || value)}
${idx < layout.filters.length - 1 ? \",\" : \"\"}
`)\r\n .css({\r\n display: \"inline-block\",\r\n marginRight: 8\r\n })\r\n .appendTo(staticFiltersDivs);\r\n });\r\n }\r\n\r\n div.appendChild(getClonedCanvas(canvas));\r\n\r\n html2canvas(div).then(function (canvas) {\r\n const link = document.createElement(\"a\");\r\n link.download = fileName;\r\n link.target = \"_blank\";\r\n\r\n link.href = canvas.toDataURL(\"image/jpeg\");\r\n\r\n document.body.appendChild(link);\r\n link.click();\r\n document.body.removeChild(link);\r\n $(div).remove();\r\n });\r\n};\r\n\r\nexport const getCustomExportRequestBody = (datasetId, datasetTitle, criteria, originalLayout, params, t) => {\r\n\r\n const ignoreFilters = params?.ignoreFilters === true;\r\n\r\n const layout = Object.assign({}, originalLayout);\r\n if (params?.hasVariation && (params?.showTrend || params?.showCyclical)) {\r\n layout.cols = [...layout.cols, VARIATION_DIMENSION_KEY];\r\n }\r\n if (ignoreFilters) {\r\n layout.filtersValue = null;\r\n layout.primaryDimValues = null;\r\n layout.secondaryDimValues = null;\r\n }\r\n\r\n return {\r\n data: {\r\n datasetId: datasetId,\r\n datasetLabel: datasetTitle,\r\n dataCriterias: getCriteriaArrayFromObject(criteria)\r\n },\r\n layout: layout,\r\n parameters: {\r\n decimalNumber: params?.decimalNumber || null,\r\n decimalSeparator: params?.decimalSeparator || null,\r\n emptyCellPlaceHolder: params?.emptyCellPlaceHolder || null,\r\n labelFormat: params?.labelFormat || null,\r\n customLabelFormat: params?.customLabelFormat || null,\r\n csvSeparator: params?.colsSeparator || null,\r\n csvTextQualifier: params?.textQualifier || null,\r\n datasetAttributesLabel: t(\"commons.export.custom.attributes.values.dataset\"),\r\n seriesAttributesLabel: t(\"commons.export.custom.attributes.values.series\"),\r\n excelLimitMessage: t(\"commons.export.custom.messages.excel.colsAndRowsLimitsExceeded\"),\r\n excelRowsLimitMessage: t(\"commons.export.custom.messages.excel.rowsLimitsExceeded\", {rowsLimit: params?.exportConfig?.maxRowsPerSheet}),\r\n excelColumnsLimitMessage: t(\"commons.export.custom.messages.excel.colsLimitsExceeded\", {colsLimit: params?.exportConfig?.maxColsPerSheet}),\r\n observationValueLabel: t(\"commons.export.custom.messages.csv.observationLabel\")\r\n },\r\n variation: {\r\n hasVariation: params?.hasVariation || false,\r\n showTrend: params?.showTrend || null,\r\n showCyclical: params?.showCyclical || null,\r\n variationLabel: t(\"commons.export.custom.variation.title\"),\r\n valueLabel: t(\"commons.export.custom.variation.values.value\"),\r\n trendLabel: t(\"commons.export.custom.variation.values.trend\"),\r\n cyclicalLabel: t(\"commons.export.custom.variation.values.cyclical\")\r\n }\r\n }\r\n};","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n getCreateTemplateUrl,\r\n getCreateViewUrl,\r\n getDatasetDownloadCustomUrl,\r\n getDatasetDownloadUrl,\r\n getDatasetSdmxQueryUrl,\r\n getDatasetStructureCodelistsUrl,\r\n getDatasetStructureCodelistUrl,\r\n getDatasetStructureDynamicCodelistUrl,\r\n getDatasetStructureUrl,\r\n getDatasetUrl,\r\n getGeometryUrl\r\n} from \"../../serverApi/urls\";\r\nimport {getCriteriaArrayFromObject} from \"../../utils/criteria\";\r\nimport {DOWNLOAD_FORMAT_CSV, DOWNLOAD_FORMAT_EXCEL, downloadFormats, getCustomExportRequestBody} from \"../../utils/download\";\r\n\r\nexport const DATASET_STRUCTURE_FETCH_ENABLE = \"dataset/structure/fetch/enable\";\r\nexport const DATASET_STRUCTURE_FETCH = \"dataset/structure/fetch\";\r\nexport const DATASET_FETCH_ENABLE = \"dataset/fetch/enable\";\r\nexport const DATASET_FETCH = \"dataset/fetch\";\r\nexport const DATASET_CRITERIA_SHOW = \"dataset/criteria/show\";\r\nexport const DATASET_CRITERIA_HIDE = \"dataset/criteria/hide\";\r\nexport const DATASET_CRITERIA_ALERT_HIDE = \"dataset/criteria/alert/hide\";\r\nexport const DATASET_STRUCTURE_CODELIST_FETCH = \"dataset/structure/codelist/fetch\";\r\nexport const DATASET_STRUCTURE_CODELISTS_FETCH = \"dataset/structure/codelists/fetch\";\r\nexport const DATASET_STRUCTURE_CODELIST_CRITERIA_SET = \"dataset/structure/codelist/criteria/set\";\r\nexport const DATASET_STRUCTURE_CODELIST_TIME_PERIOD_SET = \"dataset/structure/codelist/timePeriod/set\";\r\n\r\nexport const DATASET_STATE_BACKUP = \"dataset/state/backup\";\r\nexport const DATASET_STATE_RESET = \"dataset/state/reset\";\r\n\r\nexport const DATASET_VIEWER_SET = \"dataset/viewer/set\";\r\n\r\nexport const DATASET_TABLE_LAYOUT_SUBMIT = \"dataset/table/layout/submit\";\r\nexport const DATASET_TABLE_FILTERS_TREE_SUBMIT = \"dataset/table/filters/tree/submit\";\r\nexport const DATASET_MAP_LAYOUT_SUBMIT = \"dataset/map/layout/submit\";\r\nexport const DATASET_CHART_LAYOUT_SUBMIT = \"dataset/chart/layout/submit\";\r\nexport const DATASET_CHART_FILTERS_TREE_SUBMIT = \"dataset/chart/filters/tree/submit\";\r\n\r\nexport const DATASET_GEOMETRIES_FETCH = \"dataset/geometries/fetch\";\r\n\r\nexport const DATASET_LABEL_FORMAT_SET = \"dataset/label/format/set\";\r\n\r\nexport const DATASET_VARIATION_SET = \"dataset/variation/set\";\r\n\r\nexport const DATASET_CHART_SETTINGS_SET = \"dataset/chart/settings/set\";\r\n\r\nexport const DATASET_MAP_DETAIL_LEVEL_SET = \"dataset/map/detail/level/set\";\r\nexport const DATASET_MAP_SETTINGS_SET = \"dataset/map/settings/set\";\r\n\r\nexport const DATASET_DOWNLOAD_SUBMIT = \"dataset/download/submit\";\r\nexport const DATASET_DOWNLOAD_WARNING_HIDE = \"dataset/download/warning/hide\";\r\n\r\nexport const DATASET_VIEW_TEMPLATE_SHOW = \"dataset/view/template/show\";\r\nexport const DATASET_VIEW_TEMPLATE_HIDE = \"dataset/view/template/hide\";\r\nexport const DATASET_VIEW_TEMPLATE_SUBMIT = \"dataset/view/template/submit\";\r\nexport const DATASET_VIEW_ERROR_HIDE = \"dataset/view/error/hide\";\r\nexport const DATASET_VIEW_TEMPLATE_GEOMETRIES_FETCH = \"dataset/view/template/geometries/fetch\";\r\n\r\nexport const DATASET_UNAVAILABLE_VIEW_WARNING_HIDE = \"dataset/unavailable/view/warning/hide\";\r\n\r\nexport const DATASET_HTML_GENERATING_TIME_SET = \"dataset/html/generating/time/set\";\r\n\r\nexport const DATASET_SDMX_QUERY_SHOW = \"dataset/sdmx/query/show\";\r\nexport const DATASET_SDMX_QUERY_HIDE = \"dataset/sdmx/query/hide\";\r\nexport const DATASET_SDMX_QUERY_FETCH = \"dataset/sdmx/query/fetch\";\r\n\r\nexport const ALL_FULL = \"FullAll\";\r\nexport const ALL_PARTIAL = \"PartialAll\";\r\nexport const STEP_BY_STEP_FULL = \"FullStep\";\r\nexport const STEP_BY_STEP_PARTIAL = \"PartialStep\";\r\nexport const STEP_BY_STEP_DYNAMIC = \"Dynamic\";\r\n\r\nexport const CRITERIA_SELECTION_MODE_STEP_BY_STEP = \"stepByStep\";\r\nexport const CRITERIA_SELECTION_MODE_ALL = \"all\";\r\n\r\nexport const CRITERIA_SELECTION_TYPE_FULL = \"full\";\r\nexport const CRITERIA_SELECTION_TYPE_PARTIAL = \"partial\";\r\nexport const CRITERIA_SELECTION_TYPE_DYNAMIC = \"dynamic\";\r\n\r\nexport const enableDatasetStructureFetch = (nodeCode: string, categoryPath: string[], datasetId: string, viewId: string) => ({\r\n type: DATASET_STRUCTURE_FETCH_ENABLE,\r\n payload: {\r\n datasetId: datasetId,\r\n nodeCode: nodeCode,\r\n categoryPath: categoryPath,\r\n viewId: viewId\r\n }\r\n});\r\n\r\nexport const fetchDatasetStructure = (nodeId: number, datasetId: string, viewId: string, defaultLanguage: string, languages: string[]) => initRequest(\r\n DATASET_STRUCTURE_FETCH,\r\n getDatasetStructureUrl(nodeId, datasetId, viewId),\r\n RequestMethod.GET,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dashboard.actions.fetchingDatasetStructure\")\r\n }),\r\n {\r\n viewId: viewId,\r\n defaultLanguage: defaultLanguage,\r\n languages: languages\r\n }\r\n);\r\n\r\nexport const enableDatasetFetch = () => ({\r\n type: DATASET_FETCH_ENABLE\r\n});\r\n\r\nexport const fetchDataset = (nodeId: number, datasetId: string, criteria: any, datasetTitle: string) =>\r\n initRequest(\r\n DATASET_FETCH,\r\n getDatasetUrl(nodeId, datasetId),\r\n RequestMethod.POST,\r\n getCriteriaArrayFromObject(criteria),\r\n t => ({\r\n onStart: t(\"scenes.dataset.actions.fetchingDataset\", {title: datasetTitle})\r\n }),\r\n undefined,\r\n undefined,\r\n (statusCode: number) => (statusCode === 413 || statusCode === 414)\r\n );\r\n\r\nexport const showDatasetCriteria = () => ({\r\n type: DATASET_CRITERIA_SHOW\r\n});\r\n\r\nexport const hideDatasetCriteria = () => ({\r\n type: DATASET_CRITERIA_HIDE\r\n});\r\n\r\nexport const hideDatasetCriteriaAlert = () => ({\r\n type: DATASET_CRITERIA_ALERT_HIDE\r\n});\r\n\r\nexport const fetchDatasetStructureCodelist = (nodeId: number, datasetId: string, dimensionId: string, type: string, criteria: any, defaultLastNPeriods: number) => {\r\n\r\n let flatCriteria = getCriteriaArrayFromObject(criteria);\r\n // @ts-ignore\r\n flatCriteria = flatCriteria.filter(({id}) => id !== dimensionId)\r\n\r\n return type === CRITERIA_SELECTION_TYPE_DYNAMIC\r\n ? (\r\n initRequest(\r\n DATASET_STRUCTURE_CODELIST_FETCH,\r\n getDatasetStructureDynamicCodelistUrl(nodeId, datasetId, dimensionId),\r\n RequestMethod.POST,\r\n flatCriteria,\r\n t => ({\r\n onStart: t(\"scenes.dataset.actions.fetchingCodelist\")\r\n }),\r\n {\r\n defaultLastNPeriods: defaultLastNPeriods\r\n },\r\n undefined,\r\n (statusCode: number) => statusCode === 414\r\n )\r\n )\r\n : (\r\n initRequest(\r\n DATASET_STRUCTURE_CODELIST_FETCH,\r\n getDatasetStructureCodelistUrl(nodeId, datasetId, dimensionId, type === CRITERIA_SELECTION_TYPE_FULL),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dataset.actions.fetchingCodelist\")\r\n }),\r\n {\r\n defaultLastNPeriods: defaultLastNPeriods\r\n }\r\n )\r\n );\r\n};\r\n\r\nexport const fetchDatasetStructureCodelists = (nodeId: number, datasetId: string, type: string, defaultLastNPeriods: number) => initRequest(\r\n DATASET_STRUCTURE_CODELISTS_FETCH,\r\n getDatasetStructureCodelistsUrl(nodeId, datasetId, type === CRITERIA_SELECTION_TYPE_FULL),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dataset.actions.fetchingCodelists\")\r\n }),\r\n {\r\n defaultLastNPeriods: defaultLastNPeriods\r\n }\r\n);\r\n\r\nexport const setDatasetStructureCodelistCriteria = (criteria: any) => ({\r\n type: DATASET_STRUCTURE_CODELIST_CRITERIA_SET,\r\n criteria\r\n});\r\n\r\nexport const setDatasetStructureCodelistTimePeriod = (timePeriod: any) => ({\r\n type: DATASET_STRUCTURE_CODELIST_TIME_PERIOD_SET,\r\n timePeriod\r\n});\r\n\r\nexport const backupDatasetState = () => ({\r\n type: DATASET_STATE_BACKUP\r\n});\r\n\r\nexport const resetDatasetState = () => ({\r\n type: DATASET_STATE_RESET\r\n});\r\n\r\nexport const setDatasetViewer = (viewerIdx: number) => ({\r\n type: DATASET_VIEWER_SET,\r\n viewerIdx\r\n});\r\n\r\nexport const submitDatasetTableLayout = (layout: any) => ({\r\n type: DATASET_TABLE_LAYOUT_SUBMIT,\r\n layout\r\n});\r\n\r\nexport const submitDatasetTableFilterTree = (filterTree: any) => ({\r\n type: DATASET_TABLE_FILTERS_TREE_SUBMIT,\r\n filterTree\r\n});\r\n\r\nexport const submitDatasetMapLayout = (layout: any) => ({\r\n type: DATASET_MAP_LAYOUT_SUBMIT,\r\n layout\r\n});\r\n\r\nexport const submitDatasetChartLayout = (layout: any) => ({\r\n type: DATASET_CHART_LAYOUT_SUBMIT,\r\n layout\r\n});\r\n\r\nexport const submitDatasetChartFilterTree = (filterTree: any) => ({\r\n type: DATASET_CHART_FILTERS_TREE_SUBMIT,\r\n filterTree\r\n});\r\n\r\nexport const fetchDatasetGeometries = (idList: string[], t: any, nodeId: number) => initRequest(\r\n DATASET_GEOMETRIES_FETCH,\r\n getGeometryUrl(nodeId),\r\n RequestMethod.POST,\r\n idList,\r\n t => ({\r\n onStart: t(`scenes.dataset.actions.fetchingGeometries`)\r\n }),\r\n {\r\n t\r\n }\r\n);\r\n\r\nexport const setDatasetLabelFormat = (labelFormat: string) => ({\r\n type: DATASET_LABEL_FORMAT_SET,\r\n labelFormat\r\n});\r\n\r\nexport const setDatasetVariation = (variation: { [key: string]: boolean }) => ({\r\n type: DATASET_VARIATION_SET,\r\n variation\r\n});\r\n\r\nexport const setDatasetChartSettings = (chartSettings: any) => ({\r\n type: DATASET_CHART_SETTINGS_SET,\r\n chartSettings\r\n});\r\n\r\nexport const setDatasetMapDetailLevel = (detailLevel: number) => ({\r\n type: DATASET_MAP_DETAIL_LEVEL_SET,\r\n detailLevel\r\n});\r\n\r\nexport const setDatasetMapSettings = (mapSettings: any) => ({\r\n type: DATASET_MAP_SETTINGS_SET,\r\n mapSettings\r\n});\r\n\r\nexport const submitDatasetDownload = (\r\n nodeId: number,\r\n datasetId: string,\r\n datasetTitle: string,\r\n format: string,\r\n extension: string,\r\n zipped: boolean,\r\n criteria: any,\r\n layout: any,\r\n params: any,\r\n t: any\r\n) => {\r\n let url, body, type;\r\n\r\n if (format === DOWNLOAD_FORMAT_EXCEL || format === DOWNLOAD_FORMAT_CSV) {\r\n url = getDatasetDownloadCustomUrl(nodeId, format, zipped);\r\n body = getCustomExportRequestBody(datasetId, datasetTitle, criteria, layout, params, t);\r\n\r\n } else {\r\n // @ts-ignore\r\n const formatParam = downloadFormats()[format]?.param || format;\r\n url = getDatasetDownloadUrl(nodeId, datasetId, formatParam, zipped);\r\n body = getCriteriaArrayFromObject(criteria);\r\n }\r\n\r\n type = format === DOWNLOAD_FORMAT_EXCEL\r\n ? \"application/vnd.ms-excel\"\r\n : \"text/plain;charset=utf-8\";\r\n\r\n return initRequest(\r\n DATASET_DOWNLOAD_SUBMIT,\r\n url,\r\n RequestMethod.POST,\r\n body,\r\n t => ({\r\n onStart: t(\"scenes.dataset.actions.downloadingDataset\")\r\n }),\r\n {\r\n fileSave: {\r\n name: `${datasetTitle} (${datasetId})`,\r\n extension: extension,\r\n type: type\r\n }\r\n },\r\n undefined,\r\n (statusCode: number) => statusCode === 406,\r\n undefined,\r\n undefined,\r\n true\r\n );\r\n};\r\n\r\nexport const hideDatasetDownloadWarning = () => ({\r\n type: DATASET_DOWNLOAD_WARNING_HIDE\r\n});\r\n\r\nexport const showDatasetViewTemplate = (isView: boolean) => ({\r\n type: DATASET_VIEW_TEMPLATE_SHOW,\r\n isView\r\n});\r\n\r\nexport const hideDatasetViewTemplate = (isView: boolean) => ({\r\n type: DATASET_VIEW_TEMPLATE_HIDE,\r\n isView\r\n});\r\n\r\nexport const submitDatasetViewTemplate = (nodeId: number, viewTemplate: any, isView: boolean) => initRequest(\r\n DATASET_VIEW_TEMPLATE_SUBMIT,\r\n isView\r\n ? getCreateViewUrl(nodeId)\r\n : getCreateTemplateUrl(nodeId),\r\n RequestMethod.POST,\r\n viewTemplate,\r\n t => ({\r\n onStart: isView\r\n ? t(\"scenes.dataset.actions.savingView\")\r\n : t(\"scenes.dataset.actions.savingTemplate\")\r\n }),\r\n {\r\n isView: isView\r\n },\r\n undefined,\r\n (statusCode: number) => statusCode === 409,\r\n);\r\n\r\nexport const hideDatasetViewError = () => ({\r\n type: DATASET_VIEW_ERROR_HIDE\r\n});\r\n\r\nexport const fetchDatasetViewTemplateGeometries = (idList: string[], t: any, nodeId: number) => initRequest(\r\n DATASET_VIEW_TEMPLATE_GEOMETRIES_FETCH,\r\n getGeometryUrl(nodeId),\r\n RequestMethod.POST,\r\n idList,\r\n t => ({\r\n onStart: t(`scenes.dataset.actions.fetchingGeometries`)\r\n }),\r\n {\r\n t\r\n }\r\n);\r\n\r\nexport const hideDatasetUnavailableViewWarning = () => ({\r\n type: DATASET_UNAVAILABLE_VIEW_WARNING_HIDE\r\n});\r\n\r\nexport const setDatasetHtmlGeneratingTime = (time: number) => ({\r\n type: DATASET_HTML_GENERATING_TIME_SET,\r\n time\r\n});\r\n\r\nexport const showDatasetSdmxQuery = () => ({\r\n type: DATASET_SDMX_QUERY_SHOW\r\n});\r\n\r\nexport const hideDatasetSdmxQuery = () => ({\r\n type: DATASET_SDMX_QUERY_HIDE\r\n});\r\n\r\nexport const fetchDatasetSdmxQuery = (nodeId: number, datasetId: string, criteria: any, datasetTitle: string) => initRequest(\r\n DATASET_SDMX_QUERY_FETCH,\r\n getDatasetSdmxQueryUrl(nodeId, datasetId),\r\n RequestMethod.POST,\r\n getCriteriaArrayFromObject(criteria),\r\n t => ({\r\n onStart: t(\"scenes.dataset.actions.fetchingDatasetSdmxQuery\", {title: datasetTitle})\r\n })\r\n);","import _ from \"lodash\"\r\n\r\nexport function getMaxTreeDepth(tree, childrenKey) {\r\n\r\n const recursive = node =>\r\n node\r\n ? 1 + Math.max(...(node[childrenKey] || []).map(recursive), 0)\r\n : 0;\r\n\r\n return tree\r\n ? Math.max(...tree.map(recursive), 0)\r\n : 0;\r\n}\r\n\r\nexport function getNodesAtDepth(tree, childrenKey, depth) {\r\n\r\n const res = [];\r\n\r\n const recursive = (subTree, currDepth) =>\r\n subTree\r\n ? (\r\n subTree.map(node => {\r\n if (depth === currDepth) {\r\n res.push(_.cloneDeep(node));\r\n }\r\n if (node[childrenKey] && node[childrenKey].length) {\r\n recursive(node[childrenKey], currDepth + 1);\r\n }\r\n return null;\r\n })\r\n )\r\n : [];\r\n\r\n recursive(tree, 1);\r\n\r\n return res;\r\n}\r\n\r\nexport function getTreeFromArray(arr, parentKey, childrenKey) {\r\n const mappedArr = {};\r\n const tree = [];\r\n\r\n // first map the nodes of the array to an object -> create a hash table.\r\n arr.forEach(el => {\r\n el[childrenKey] = [];\r\n mappedArr[el.id] = el;\r\n });\r\n\r\n arr.forEach(el => {\r\n if (el[parentKey]) {\r\n // if the element is not at the root level, add it to its parent array of children.\r\n mappedArr[el[parentKey]][childrenKey].push(el);\r\n } else {\r\n // if the element is at the root level, add it to first level elements array.\r\n tree.push(el);\r\n }\r\n });\r\n\r\n return tree;\r\n}\r\n\r\nexport function getNode(tree, childrenKey, test) {\r\n\r\n if (!(tree !== null && tree.length)) return null;\r\n\r\n const foundNodes = tree.filter(test);\r\n\r\n if (foundNodes.length) {\r\n return foundNodes[0];\r\n } else {\r\n const foundNodesInChild =\r\n tree\r\n .filter(node => node[childrenKey])\r\n .map(node => getNode(node[childrenKey], childrenKey, test))\r\n .filter(result => result !== null);\r\n\r\n if (foundNodesInChild.length) {\r\n return foundNodesInChild[0];\r\n } else {\r\n return null;\r\n }\r\n }\r\n}\r\n\r\nexport function getNodes(tree, childrenKey, test) {\r\n\r\n const res = [];\r\n\r\n const recursive = subTree =>\r\n subTree\r\n ? (\r\n subTree.map(node => {\r\n if (test && test(node)) {\r\n res.push(_.cloneDeep(node));\r\n }\r\n if (node[childrenKey] && node[childrenKey].length) {\r\n recursive(node[childrenKey]);\r\n }\r\n return null;\r\n })\r\n )\r\n : [];\r\n\r\n recursive(tree);\r\n\r\n return res;\r\n}\r\n\r\nexport function getFilteredTreeWithPaths(tree, childrenKey, test) {\r\n\r\n tree = _.cloneDeep(tree);\r\n\r\n tree = tree.map(subTree => {\r\n if (subTree[childrenKey]) {\r\n subTree[childrenKey] = getFilteredTreeWithPaths(subTree[childrenKey], childrenKey, test);\r\n }\r\n return subTree;\r\n });\r\n\r\n tree = tree.filter(node => (node[childrenKey] && node[childrenKey].length) || test(node));\r\n\r\n return tree;\r\n}","export const FETCH_DATASET_ASYNC_HANDLER_INIT = \"fetch/dataset/async/handler/init\"\r\nexport const FETCH_DATASET_ASYNC_HANDLER_SUCCESS = \"fetch/dataset/async/handler/success\"\r\nexport const FETCH_DATASET_ASYNC_HANDLER_ERROR = \"fetch/dataset/async/handler/error\"\r\n\r\nexport const initFetchDatasetAsyncHandler = () => ({\r\n type: FETCH_DATASET_ASYNC_HANDLER_INIT\r\n});\r\n\r\nexport const successFetchDatasetAsyncHandler = (\r\n response,\r\n statusCode,\r\n responseHeaders,\r\n cellCount,\r\n isTooBigData,\r\n isEmptyData,\r\n isPartialData,\r\n isResponseNotValid,\r\n tableLayout,\r\n tableFilterTree,\r\n mapLayout,\r\n mapFilterTree,\r\n chartLayout,\r\n chartFilterTree,\r\n timePeriodsByFreq,\r\n language,\r\n isFirstFetch,\r\n worker\r\n) => ({\r\n type: FETCH_DATASET_ASYNC_HANDLER_SUCCESS,\r\n payload: {\r\n response,\r\n statusCode,\r\n responseHeaders,\r\n cellCount,\r\n isTooBigData,\r\n isEmptyData,\r\n isPartialData,\r\n isResponseNotValid,\r\n tableLayout,\r\n tableFilterTree,\r\n mapLayout,\r\n mapFilterTree,\r\n chartLayout,\r\n chartFilterTree,\r\n timePeriodsByFreq,\r\n language,\r\n isFirstFetch,\r\n worker\r\n }\r\n});\r\n\r\nexport const errorFetchDatasetAsyncHandler = statusCode => ({\r\n type: FETCH_DATASET_ASYNC_HANDLER_ERROR,\r\n payload: {\r\n statusCode\r\n }\r\n});","import React from 'react';\r\nimport {compose} from \"redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {withTranslation} from \"react-i18next\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n position: \"relative\",\r\n height: \"100%\",\r\n width: \"100%\"\r\n },\r\n text: {\r\n fontStyle: \"italic\",\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n transform: \"translate(-50%, -50%)\"\r\n },\r\n image: {\r\n position: \"absolute\",\r\n top: \"50%\",\r\n left: \"50%\",\r\n transform: \"translate(-50%, -100%)\",\r\n paddingBottom: 16\r\n }\r\n});\r\n\r\nconst CustomEmpty = ({\r\n t,\r\n classes,\r\n text,\r\n textStyle,\r\n image,\r\n style\r\n }) =>\r\n
\r\n
\r\n {image && (\r\n
\r\n {image}\r\n
\r\n )}\r\n
\r\n {text || t(\"components.customEmpty.placeholder\")}\r\n
\r\n
\r\n
;\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(CustomEmpty);\r\n","import {getNutsLevelTranslations} from \"../constants/getNutsLevelTranslations\";\r\n\r\nexport const showGenericError = () => {\r\n if (window && window.error) {\r\n window.error.show(\"An error occurred while contacting the server.\");\r\n } else {\r\n console.error(\"An error occurred while contacting the server.\");\r\n }\r\n};\r\n\r\nexport const showTranslatedGenericErrorFactory = t => () => {\r\n if (window && window.error) {\r\n window.error.show(t(\"errors.generic\"));\r\n } else {\r\n console.error(t(\"errors.generic\"));\r\n }\r\n};\r\n\r\nexport const getCombinationArrays = arrays => {\r\n if (!arrays || arrays.length === 0) {\r\n return [];\r\n }\r\n\r\n const ret = [];\r\n const max = arrays.length - 1;\r\n\r\n function helper(arr, i) {\r\n for (let j = 0, l = arrays[i].length; j < l; j++) {\r\n const a = arr.slice(0); // clone arr\r\n a.push(arrays[i][j]);\r\n if (i === max) {\r\n ret.push(a);\r\n } else {\r\n helper(a, i + 1);\r\n }\r\n }\r\n }\r\n\r\n helper([], 0);\r\n return ret;\r\n};\r\n\r\nexport const getNthValorizedElementIndexInBooleanArray = (array, n) => {\r\n let count = 0;\r\n let res = 0;\r\n let lastIdx = 0;\r\n let found = false;\r\n\r\n array.forEach((el, idx) => {\r\n if (el === true) {\r\n count++;\r\n lastIdx = idx;\r\n if (count === n + 1) {\r\n res = idx;\r\n found = true;\r\n }\r\n }\r\n });\r\n\r\n return found ? res : (lastIdx + 1);\r\n};\r\n\r\nexport const getGeometryDetailLevels = (geometries, hideSingleGeometry, t) => {\r\n return geometries\r\n .map(val => val.nutsLevel)\r\n .reduce((acc, level) => {\r\n if (!acc[level]) {\r\n // @ts-ignore\r\n const label = getNutsLevelTranslations(t)[level];\r\n acc[level] = {level: level, counter: 0, label: (label || `nutsLevel${level}`)};\r\n }\r\n acc[level].counter++;\r\n return acc;\r\n }, [])\r\n .filter(val => {\r\n if (!val) {\r\n return false\r\n }\r\n if (hideSingleGeometry === true && val.counter <= 1) {\r\n // console.log(\"hiding NUTS level \" + val.level + \" (size = \" + val.counter + \")\");\r\n return false\r\n } else {\r\n return true\r\n }\r\n })\r\n .sort((a, b) => a.level - b.level);\r\n}\r\n\r\nexport const getStorageDatasetKey = dataset => {\r\n return (\r\n (dataset.nodeCode || \"\").toLowerCase() + \"+\" +\r\n (dataset.categoryPath.join() || \"\").toLowerCase() + \"+\" +\r\n (dataset.datasetId || \"\").toLowerCase() + \"+\" +\r\n (dataset.viewId || \"\").toLowerCase()\r\n )\r\n};\r\n\r\nconst getColorLuminanceFromRgba = rgbaColor => {\r\n\r\n const rgbaArr = rgbaColor.substring(5, rgbaColor.length - 1).split(\", \");\r\n const rgbArr = [\r\n ((1 - rgbaArr[3]) * 255) + (rgbaArr[3] * rgbaArr[0]),\r\n ((1 - rgbaArr[3]) * 255) + (rgbaArr[3] * rgbaArr[1]),\r\n ((1 - rgbaArr[3]) * 255) + (rgbaArr[3] * rgbaArr[2])\r\n ];\r\n\r\n const getL = c => {\r\n c = c / 255;\r\n return c <= 0.03928\r\n ? (c / 12.92)\r\n : Math.pow(((c + 0.055) / 1.055), 2.4)\r\n }\r\n\r\n const rL = getL(rgbArr[0]);\r\n const gL = getL(rgbArr[1]);\r\n const bL = getL(rgbArr[2]);\r\n\r\n return rL * 0.2126 + gL * 0.7152 + bL * 0.0722;\r\n};\r\n\r\n// computing font color to have a correct contrast ratio for readability based on https://stackoverflow.com/a/3943023/10488412\r\nexport const getLightOrDarkColorBasedOnContrastRatio = (rgbaColor, rgbaLightColor, rgbaDarkColor) => {\r\n const colorL = getColorLuminanceFromRgba(rgbaColor);\r\n const lightColorL = rgbaLightColor ? getColorLuminanceFromRgba(rgbaLightColor) : 1;\r\n const darkColorL = rgbaDarkColor ? getColorLuminanceFromRgba(rgbaDarkColor) : 0;\r\n\r\n return ((colorL + 0.05) / (darkColorL + 0.05)) > ((lightColorL + 0.05) / (colorL + 0.05))\r\n ? rgbaDarkColor || \"rgba(0, 0, 0, 1)\"\r\n : rgbaLightColor || \"rgba(255, 255, 255, 1)\";\r\n};\r\n\r\nexport const getPageTitle = (list, t) => {\r\n const valorizedList = list.filter(el => (el !== null && el !== undefined));\r\n const title = valorizedList.join(\" | \");\r\n\r\n return title.length > 0\r\n ? title\r\n : t ? t(\"scenes.hub.title\") : \"Data Browser\"\r\n}\r\n\r\nexport const toggleFullScreen = (elementId, elementParentId, fullscreen) => {\r\n const $ = window.jQuery;\r\n\r\n const $root = $(\"#root\");\r\n const $element = $(`#${elementId}`);\r\n const $elementParent = $(`#${elementParentId}`);\r\n\r\n if (fullscreen) {\r\n $element.addClass(\"element--fullscreen\");\r\n $element.insertAfter($root);\r\n $root.css({visibility: \"hidden\"});\r\n\r\n } else {\r\n $element.removeClass(\"element--fullscreen\");\r\n $element.appendTo($elementParent);\r\n $root.css({visibility: \"\"});\r\n }\r\n}\r\n\r\nexport const areElementsOverlap = (el1Id, el2Id) => {\r\n const el1 = document.getElementById(el1Id);\r\n const el2 = document.getElementById(el2Id);\r\n\r\n const domRect1 = el1.getBoundingClientRect();\r\n const domRect2 = el2.getBoundingClientRect();\r\n\r\n return !(\r\n domRect1.top > domRect2.bottom ||\r\n domRect1.right < domRect2.left ||\r\n domRect1.bottom < domRect2.top ||\r\n domRect1.left > domRect2.right\r\n );\r\n}","export const getNutsLevelTranslations = t => {\r\n\r\n const translations = t => ({\r\n 0: t(\"nutsLevel0\"),\r\n 1: t(\"nutsLevel1\"),\r\n 2: t(\"nutsLevel2\"),\r\n 3: t(\"nutsLevel3\"),\r\n 4: t(\"nutsLevel4\"),\r\n 5: t(\"nutsLevel5\"),\r\n 6: t(\"nutsLevel6\"),\r\n 7: t(\"nutsLevel7\"),\r\n 8: t(\"nutsLevel8\"),\r\n 9: t(\"nutsLevel9\"),\r\n 10: t(\"nutsLevel10\"),\r\n 11: t(\"nutsLevel11\"),\r\n 12: t(\"nutsLevel12\"),\r\n 13: t(\"nutsLevel13\"),\r\n 14: t(\"nutsLevel14\"),\r\n 15: t(\"nutsLevel15\"),\r\n 16: t(\"nutsLevel16\"),\r\n 17: t(\"nutsLevel17\"),\r\n 18: t(\"nutsLevel18\"),\r\n 19: t(\"nutsLevel19\")\r\n })\r\n\r\n return translations(t !== undefined ? t : str => str);\r\n};","const $ = window.jQuery;\r\n\r\n/* https://stackoverflow.com/questions/986937/how-can-i-get-the-browsers-scrollbar-sizes */\r\nexport function getScrollBarWidth() {\r\n const temp = $('
').css({visibility: 'hidden', width: 100, overflow: 'scroll'}).appendTo('body');\r\n const widthWithScroll = $('
').css({width: '100%'}).appendTo(temp).outerWidth();\r\n temp.remove();\r\n return 100 - widthWithScroll;\r\n}\r\n\r\nexport function getTextWidth(text, element) {\r\n if (typeof (text) === \"string\" && text.length > 0) {\r\n element.innerText = text;\r\n return element.offsetWidth;\r\n } else {\r\n return 0;\r\n }\r\n}\r\n","import React, {Fragment} from 'react';\r\nimport ArrowDownwardIcon from '@material-ui/icons/ArrowDownward';\r\nimport ArrowUpwardIcon from '@material-ui/icons/ArrowUpward';\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport \"./style.css\";\r\n\r\nexport const SORT_DIRECTION_ASC = 'SORT_DIRECTION_ASC';\r\nexport const SORT_DIRECTION_DESC = 'SORT_DIRECTION_DESC';\r\n\r\nconst SortButtons = ({\r\n value,\r\n onChange\r\n }) =>\r\n \r\n
\r\n onChange(value !== SORT_DIRECTION_ASC ? SORT_DIRECTION_ASC : SORT_DIRECTION_DESC)}\r\n style={{padding: 4, top: -4}}\r\n >\r\n {\r\n value === SORT_DIRECTION_ASC\r\n ? \r\n : \r\n }\r\n \r\n
\r\n
;\r\n\r\nexport default SortButtons;\r\n","export const DEFAULT_TABLE_HEIGHT = 340;\r\nexport const ROW_HEIGHT = 40;\r\nexport const TABLE_TOTAL_BORDER = 2;\r\n\r\nexport const ACTIONS_GUTTER = 4;\r\nexport const ACTION_WIDTH = 24;\r\nexport const CELL_PADDING = 8;\r\nexport const CHECKBOX_WIDTH = 40;\r\nexport const COL_WIDTH_SAFE = 4;\r\nexport const HEADER_CELL_PADDING = 8;\r\nexport const HEADER_CELL_GUTTER = 4;\r\nexport const HEADER_CELL_CONTROLS_GUTTER = 4;\r\nexport const FILTER_BUTTON_WIDTH = 16;\r\nexport const SORT_BUTTON_WIDTH = 16;\r\n\r\nexport const DATA_INDEX_ACTIONS_OBJS = \"_actions\";\r\nexport const DATA_INDEX_FIXED_ACTIONS_OBJS = \"_fixedActions\";\r\nexport const DATA_INDEX_CHECKED = \"_checked\";\r\nexport const DATA_INDEX_RENDERED = \"__rendered\";\r\nexport const DATA_INDEX_ORIGINAL_ROW = \"__originalRow\";\r\nexport const DATA_INDEX_ORIGINAL_TRANSLATED_ROW = \"__originalTranslatedRow\";\r\n\r\nexport const RESIZE_TIMEOUT = 1000;\r\nexport const PAGINATION_TIMEOUT = 500;\r\nexport const VIEW_INDEXES_UPDATE_TIMEOUT = 200;\r\n\r\nexport const MAX_PAGE_SIZE = 200;\r\n\r\nexport const DEFAULT_PAGE_SIZE = Math.floor(MAX_PAGE_SIZE / 3) * 3;\r\nexport const DEFAULT_PAGE_NUM = 1;\r\n\r\nexport const TABLE_PLACEHOLDER_BGCOLOR = \"#fafafa\";\r\n","export const getIndexesFromPaginationParams = (pageSize, pageNum) => ({\r\n startIdx: pageSize * (pageNum - 1),\r\n stopIdx: (pageSize * pageNum) - 1\r\n});\r\n\r\nexport const getPaginationParamsFromIndexes = (startIdx, stopIdx, maxIdx) => {\r\n\r\n const minPageSize = stopIdx - startIdx + 1;\r\n const maxPageSize = maxIdx + 1;\r\n\r\n const pageNumForMinPageSize = (stopIdx + 1) / minPageSize;\r\n\r\n if (Number.isInteger(pageNumForMinPageSize)) {\r\n return ({\r\n pageSize: minPageSize,\r\n pageNum: pageNumForMinPageSize\r\n });\r\n } else {\r\n\r\n for (let pageSize = minPageSize + 1; pageSize <= maxPageSize; pageSize++) {\r\n\r\n const minPageNum = Math.ceil((stopIdx + 1) / pageSize);\r\n const maxPageNum = Math.floor((startIdx / pageSize) + 1);\r\n\r\n for (let pageNum = minPageNum; pageNum <= maxPageNum; pageNum++) {\r\n\r\n const indexes = getIndexesFromPaginationParams(pageSize, pageNum);\r\n\r\n if (indexes.startIdx <= startIdx && stopIdx <= indexes.stopIdx) {\r\n return ({\r\n pageSize,\r\n pageNum\r\n });\r\n }\r\n }\r\n }\r\n }\r\n};\r\n","import React from 'react';\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport SearchIcon from \"@material-ui/icons/Search\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport ClearIcon from \"@material-ui/icons/Clear\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\n\r\nconst AUTO_SEARCH_INPUT_TIMEOUT = 500;\r\n\r\nclass AutoSearchInput extends React.Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n tempValue: props.value || \"\",\r\n value: props.value || \"\",\r\n timeout: null\r\n };\r\n this.onChange = this.onChange.bind(this);\r\n this.onClear = this.onClear.bind(this);\r\n }\r\n\r\n static getDerivedStateFromProps(nextProps, state) {\r\n\r\n if (nextProps.value !== undefined && (nextProps.value !== state.value)) {\r\n if (state.timeout) {\r\n clearTimeout(state.timeout)\r\n }\r\n return ({\r\n tempValue: null,\r\n value: nextProps.value\r\n });\r\n } else {\r\n return null;\r\n }\r\n\r\n }\r\n\r\n onClear() {\r\n if (this.state.timeout) {\r\n clearTimeout(this.state.timeout)\r\n }\r\n this.setState({\r\n tempValue: null,\r\n value: \"\",\r\n timeout: null\r\n });\r\n this.props.onSearch(\"\");\r\n }\r\n\r\n onChange(value) {\r\n if (this.state.timeout) {\r\n clearTimeout(this.state.timeout)\r\n }\r\n this.setState({\r\n tempValue: value,\r\n timeout: setTimeout(\r\n () => {\r\n this.setState({\r\n tempValue: null,\r\n value\r\n });\r\n this.props.onSearch(value);\r\n },\r\n AUTO_SEARCH_INPUT_TIMEOUT\r\n ),\r\n });\r\n }\r\n\r\n componentWillUnmount() {\r\n if (this.state.timeout) {\r\n clearTimeout(this.state.timeout)\r\n }\r\n }\r\n\r\n render() {\r\n\r\n const {\r\n t,\r\n placeholder\r\n } = this.props;\r\n\r\n const {\r\n tempValue,\r\n value\r\n } = this.state;\r\n\r\n return (\r\n this.onChange(target.value)}\r\n inputProps={{\r\n \"aria-label\": t(\"components.autoSearchInput.input.ariaLabel\")\r\n }}\r\n InputProps={{\r\n startAdornment: (\r\n \r\n \r\n \r\n ),\r\n endAdornment: value && value.length > 0 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n }}\r\n style={{width: \"100%\"}}\r\n />\r\n );\r\n }\r\n}\r\n\r\n\r\nexport default withTranslation()(AutoSearchInput);\r\n","import React, {Fragment} from \"react\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport AutoSearchInput from \"../../auto-search-input\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst PreHeader = ({\r\n t,\r\n searchText,\r\n onSearch,\r\n selectedRowCount,\r\n tableActions,\r\n renderTableAction,\r\n leftActions,\r\n rightActions\r\n }) => {\r\n const hasToolbarActions = (leftActions !== null && leftActions !== undefined) || (rightActions !== null && rightActions !== undefined);\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {leftActions}\r\n \r\n \r\n \r\n {tableActions && selectedRowCount > 0 && (\r\n \r\n \r\n {selectedRowCount > 1\r\n ? t(\"components.infiniteScrollTable.preHeader.selectedCount_plural\", {selectedRowCount})\r\n : t(\"components.infiniteScrollTable.preHeader.selectedCount\", {selectedRowCount})\r\n }\r\n \r\n {tableActions.map((action, index) =>\r\n \r\n {renderTableAction(action)}\r\n \r\n )}\r\n \r\n )}\r\n {rightActions && (\r\n \r\n {rightActions}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n};\r\n\r\nexport default withTranslation()(PreHeader);\r\n","import React from \"react\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\n\r\nconst Footer = ({\r\n t,\r\n isLoading,\r\n isHidden,\r\n rowNumStart,\r\n rowNumEnd,\r\n rowCount\r\n }) =>\r\n \r\n \r\n {!isHidden\r\n ? (\r\n isLoading\r\n ? (\r\n \r\n )\r\n : t(\"components.infiniteScrollTable.footer.rowCount\", {rowNumStart, rowNumEnd, rowCount})\r\n )\r\n : \r\n }\r\n \r\n ;\r\n\r\nexport default withTranslation()(Footer);\r\n","import React, {Fragment, useState} from 'react';\r\nimport \"./style.css\";\r\nimport AutoSearchInput from \"../../auto-search-input\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport Popover from \"@material-ui/core/Popover\";\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport Grid from '@material-ui/core/Grid';\r\nimport FilterListIcon from '@material-ui/icons/FilterList';\r\n\r\nconst FilterButton = ({\r\n value,\r\n onChange,\r\n options\r\n }) => {\r\n\r\n const [anchorEl, setAnchorEl] = useState(null);\r\n\r\n const handleOpen = (event) => {\r\n setAnchorEl(event.currentTarget);\r\n };\r\n\r\n const handleClose = () => {\r\n setAnchorEl(null);\r\n };\r\n\r\n return (\r\n \r\n\r\n
\r\n \r\n \r\n \r\n
\r\n\r\n \r\n {options && options.length\r\n ? (\r\n options.map((option, index) =>\r\n \r\n \r\n val === option.value) !== undefined}\r\n onChange={({target}) => target.checked\r\n ? onChange([...(value || []), option.value])\r\n : onChange((value || []).filter(val => val !== option.value))\r\n }\r\n />\r\n \r\n \r\n
\r\n {option.text}\r\n
\r\n
\r\n \r\n )\r\n )\r\n : (\r\n
\r\n \r\n
\r\n )\r\n }\r\n \r\n\r\n
\r\n )\r\n};\r\n\r\nexport default FilterButton;\r\n","import React, {Component, Fragment} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport \"./style.css\";\r\nimport {getScrollBarWidth, getTextWidth} from \"../../utils/style\";\r\nimport {v4 as uuidv4} from \"uuid\";\r\nimport SortButtons, {SORT_DIRECTION_ASC, SORT_DIRECTION_DESC} from './sort-buttons';\r\nimport _ from \"lodash\";\r\nimport {FixedSizeList} from \"react-window\";\r\nimport {\r\n ACTION_WIDTH,\r\n ACTIONS_GUTTER,\r\n CELL_PADDING,\r\n CHECKBOX_WIDTH,\r\n COL_WIDTH_SAFE,\r\n DATA_INDEX_ACTIONS_OBJS,\r\n DATA_INDEX_CHECKED,\r\n DATA_INDEX_FIXED_ACTIONS_OBJS,\r\n DATA_INDEX_ORIGINAL_ROW,\r\n DATA_INDEX_ORIGINAL_TRANSLATED_ROW,\r\n DATA_INDEX_RENDERED,\r\n DEFAULT_PAGE_NUM,\r\n DEFAULT_PAGE_SIZE,\r\n DEFAULT_TABLE_HEIGHT,\r\n FILTER_BUTTON_WIDTH,\r\n HEADER_CELL_CONTROLS_GUTTER,\r\n HEADER_CELL_GUTTER,\r\n HEADER_CELL_PADDING,\r\n MAX_PAGE_SIZE,\r\n PAGINATION_TIMEOUT,\r\n RESIZE_TIMEOUT,\r\n ROW_HEIGHT,\r\n SORT_BUTTON_WIDTH,\r\n TABLE_TOTAL_BORDER,\r\n VIEW_INDEXES_UPDATE_TIMEOUT\r\n} from \"./contants\";\r\nimport {getIndexesFromPaginationParams, getPaginationParamsFromIndexes} from \"./utils\";\r\nimport PreHeader from \"./pre-header\";\r\nimport Footer from \"./footer\";\r\nimport {withSize} from \"react-sizeme\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport {Tooltip} from \"@material-ui/core\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport FilterButton from \"./filter-button\";\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nexport const numberStringSorter = (a, b) => Number(a) - Number(b);\r\n\r\nclass InfiniteScrollTable extends Component {\r\n\r\n constructor(props) {\r\n\r\n super(props);\r\n\r\n this.onSearchTextChange = this.onSearchTextChange.bind(this);\r\n this.onFiltersChange = this.onFiltersChange.bind(this);\r\n this.onSortChange = this.onSortChange.bind(this);\r\n this.getSelectedRowKeys = this.getSelectedRowKeys.bind(this);\r\n this.onRowSelectionChange = this.onRowSelectionChange.bind(this);\r\n this.getCols = this.getCols.bind(this);\r\n this.getNormalizedTableActions = this.getNormalizedTableActions.bind(this);\r\n this.renderActions = this.renderActions.bind(this);\r\n this.renderGridRowCols = this.renderGridRowCols.bind(this);\r\n this.renderGridRow = this.renderGridRow.bind(this);\r\n this.renderFixedActions = this.renderFixedActions.bind(this);\r\n this.renderHeaderCells = this.renderHeaderCells.bind(this);\r\n this.renderCheckboxTitle = this.renderCheckboxTitle.bind(this);\r\n this.renderCheckbox = this.renderCheckbox.bind(this);\r\n this.getPopulatedRows = this.getPopulatedRows.bind(this);\r\n this.getColWidths = this.getColWidths.bind(this);\r\n this.getQueriedRows = this.getQueriedRows.bind(this);\r\n this.getRenderedRows = this.getRenderedRows.bind(this);\r\n this.onRenderedRowsChange = this.onRenderedRowsChange.bind(this);\r\n this.getGridHeight = this.getGridHeight.bind(this);\r\n this.onWindowResize = this.onWindowResize.bind(this);\r\n this.getIsVerticalScrollbarVisible = this.getIsVerticalScrollbarVisible.bind(this);\r\n\r\n this.state = {\r\n uuid: uuidv4(),\r\n\r\n gridKeyForRefresh: uuidv4(),\r\n scrollTop: 0,\r\n scrollLeft: 0,\r\n\r\n gridScrollbarWidth: getScrollBarWidth(),\r\n\r\n searchText: \"\",\r\n sortCol: null,\r\n sortByDesc: false,\r\n filters: {},\r\n\r\n selectedRowKeys:\r\n props.rowSelection && props.rowSelection.selectedRowKeys\r\n ? props.rowSelection.selectedRowKeys\r\n : [],\r\n\r\n cols: null,\r\n\r\n populatedRows: null,\r\n\r\n colWidths: null,\r\n\r\n height: 0,\r\n\r\n renderedRows: null,\r\n\r\n queriedRows: null,\r\n\r\n isResizing: false,\r\n resizeTimeout: null,\r\n\r\n pageSize: null,\r\n pageNum: null,\r\n pageRequestTimeout: null,\r\n\r\n isPaginating: props.isPaginated,\r\n pageRequestParams: null,\r\n\r\n viewStartIdx: null,\r\n viewEndIdx: null,\r\n viewIndexesUpdateTimeout: null,\r\n\r\n doNotCallOnChangeOnNextRenderedRowsChange: false\r\n };\r\n\r\n if (props.isPaginated) {\r\n this.state.pageRequestParams = {\r\n pageSize: DEFAULT_PAGE_SIZE,\r\n pageNum: DEFAULT_PAGE_NUM,\r\n filters: this.state.filters,\r\n searchText: this.state.searchText,\r\n sortCol: this.state.sortCol,\r\n sortByDesc: this.state.sortByDesc\r\n };\r\n }\r\n\r\n if (props.onChange && props.isPaginated) {\r\n props.onChange(this.state.pageRequestParams);\r\n }\r\n }\r\n\r\n static isValuePassingSearchText(value, searchText) {\r\n return String(value).toLowerCase().includes(searchText.toLowerCase())\r\n }\r\n\r\n static defaultSorter = (a, b, isDesc) => {\r\n\r\n const normalize = val => typeof (val) === \"string\" ? val.toLowerCase() : Number(val);\r\n const _a = normalize(a);\r\n const _b = normalize(b);\r\n\r\n return (isDesc ? (_b < _a) : (_a < _b)) ? -1 : 1\r\n };\r\n\r\n static isArrayPropertyChangedLazy(prevProp, prop) {\r\n return (\r\n (prevProp !== prop) ||\r\n ((prevProp === null || prevProp === undefined) && prop !== null && prop !== undefined) ||\r\n (prevProp && prop && prevProp.length !== prop.length)\r\n );\r\n }\r\n\r\n /* === Hooks === */\r\n\r\n getPopulatedRows(rows) {\r\n\r\n const {\r\n defaultLanguage,\r\n languages,\r\n multilangStrDataIndexes,\r\n actions,\r\n fixedActions,\r\n altActions,\r\n getIsAltRow\r\n } = this.props;\r\n\r\n const getActionsObjs = (actions, row) =>\r\n (actions || [])\r\n .filter(action => action !== null)\r\n .map(action => typeof (action) === \"function\" ? action(row) : action)\r\n .filter(action => action !== null)\r\n .map(action => ({...action, row}));\r\n\r\n return (rows !== null && rows !== undefined)\r\n ? rows.map(row => {\r\n\r\n const populatedRow = {...row};\r\n\r\n populatedRow[DATA_INDEX_ORIGINAL_ROW] = {...populatedRow};\r\n\r\n if (multilangStrDataIndexes) {\r\n for (let dataIndex of multilangStrDataIndexes) {\r\n populatedRow[dataIndex] = localizeI18nObj(populatedRow[dataIndex], defaultLanguage, languages);\r\n }\r\n }\r\n\r\n populatedRow[DATA_INDEX_ORIGINAL_TRANSLATED_ROW] = {...populatedRow};\r\n\r\n populatedRow[DATA_INDEX_FIXED_ACTIONS_OBJS] =\r\n fixedActions\r\n ? getActionsObjs(fixedActions, populatedRow[DATA_INDEX_ORIGINAL_TRANSLATED_ROW])\r\n : null;\r\n\r\n populatedRow[DATA_INDEX_ACTIONS_OBJS] =\r\n (actions || altActions)\r\n ? getActionsObjs(\r\n (getIsAltRow && getIsAltRow(populatedRow[DATA_INDEX_ORIGINAL_TRANSLATED_ROW])) ? altActions : actions,\r\n populatedRow[DATA_INDEX_ORIGINAL_TRANSLATED_ROW]\r\n )\r\n : null;\r\n\r\n return populatedRow;\r\n\r\n })\r\n : null;\r\n }\r\n\r\n getColWidths(rows, cols) {\r\n\r\n const {\r\n size\r\n } = this.props;\r\n\r\n const {\r\n gridScrollbarWidth\r\n } = this.state;\r\n\r\n if (cols === null) {\r\n return null;\r\n }\r\n\r\n const getTextWidthEl = $('').css({visibility: 'hidden', position: 'absolute'}).appendTo('body').get(0);\r\n\r\n let colWidths = cols.map(col => {\r\n\r\n let colWidth = 0;\r\n\r\n const colTitleWidth =\r\n getTextWidth(col.title, getTextWidthEl) +\r\n ((!col.noFilter || !col.noSort) ? HEADER_CELL_GUTTER : 0) +\r\n (col.noFilter ? 0 : FILTER_BUTTON_WIDTH) +\r\n (col.noSort ? 0 : SORT_BUTTON_WIDTH) +\r\n ((!col.noFilter && !col.noSort) ? HEADER_CELL_CONTROLS_GUTTER : 0) +\r\n CELL_PADDING * 2 + COL_WIDTH_SAFE;\r\n\r\n if (col.width) {\r\n\r\n colWidth = Math.max(colTitleWidth, col.width);\r\n\r\n } else if ((col.widthToContent || col.minWidthToContent) && rows.length > 0) {\r\n\r\n colWidth = Math.max(\r\n colTitleWidth,\r\n ...rows.map(row =>\r\n getTextWidth(\r\n col.renderText\r\n ? col.renderText(row[DATA_INDEX_ORIGINAL_ROW][col.dataIndex], row[DATA_INDEX_ORIGINAL_ROW])\r\n : row[col.dataIndex],\r\n getTextWidthEl\r\n ) +\r\n (CELL_PADDING * 2) +\r\n COL_WIDTH_SAFE\r\n )\r\n );\r\n\r\n } else if (col.minWidth) {\r\n\r\n colWidth = Math.max(colTitleWidth, col.minWidth);\r\n\r\n } else {\r\n\r\n colWidth = colTitleWidth;\r\n\r\n }\r\n\r\n return colWidth;\r\n });\r\n\r\n $(getTextWidthEl).remove();\r\n\r\n const isVariableSizeCol = col => !col.width && (rows.length > 0 ? !col.widthToContent : true);\r\n const variableSizeCols = cols.filter(isVariableSizeCol);\r\n\r\n let colWidthsSum = 0;\r\n colWidths.forEach(width => colWidthsSum += width);\r\n\r\n const availableWidth =\r\n size.width -\r\n colWidthsSum -\r\n gridScrollbarWidth - // a dedicated space is always reserved to the vertical scrollbar to prevent the horizontal one from appearing when not needed\r\n //((rows !== null && this.getIsVerticalScrollbarVisible(rows.length)) ? gridScrollbarWidth : 0) -\r\n TABLE_TOTAL_BORDER;\r\n\r\n if (variableSizeCols.length > 0 && availableWidth > 0) {\r\n\r\n const widthToAdd = availableWidth / variableSizeCols.length;\r\n\r\n colWidths = colWidths.map((colWidth, colIndex) =>\r\n isVariableSizeCol(cols[colIndex])\r\n ? colWidth + widthToAdd\r\n : colWidth\r\n );\r\n }\r\n\r\n return colWidths;\r\n }\r\n\r\n getRenderedRows(rows, cols, colsWidths, selectedRowKeys) {\r\n\r\n const {\r\n rowSelection,\r\n tableActions,\r\n getRowKey\r\n } = this.props;\r\n\r\n return rows !== null\r\n ? rows.map(row => {\r\n\r\n const resRow = {...row};\r\n\r\n if (rowSelection || tableActions) {\r\n resRow[DATA_INDEX_CHECKED] = (selectedRowKeys || []).includes(getRowKey(row))\r\n }\r\n\r\n return ({\r\n ...resRow,\r\n [DATA_INDEX_RENDERED]: this.renderGridRowCols(resRow, cols, colsWidths)\r\n });\r\n })\r\n : null;\r\n }\r\n\r\n getQueriedRows(rows, cols, filters, searchText, sortCol, sortByDesc) {\r\n\r\n const {\r\n isPaginated\r\n } = this.props;\r\n\r\n if (isPaginated) {\r\n return rows;\r\n } else {\r\n let queriedRows = this.getFilteredGridRows(rows, cols, filters);\r\n queriedRows = this.getSearchTextFilteredGridRows(queriedRows, cols, searchText);\r\n return this.getSortedGridRows(queriedRows, cols, sortCol, sortByDesc);\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n\r\n const {\r\n data\r\n } = this.props;\r\n\r\n const {\r\n uuid,\r\n filters,\r\n searchText,\r\n sortCol,\r\n sortByDesc\r\n } = this.state;\r\n\r\n if (data !== null) {\r\n const cols = this.getCols();\r\n const populatedRows = this.getPopulatedRows(data);\r\n const colWidths = this.getColWidths(populatedRows, cols);\r\n const height = this.getGridHeight(uuid);\r\n const renderedRows = this.getRenderedRows(populatedRows, cols, colWidths, this.getSelectedRowKeys());\r\n const queriedRows = this.getQueriedRows(renderedRows, cols, filters, searchText, sortCol, sortByDesc);\r\n\r\n this.setState({\r\n cols,\r\n populatedRows,\r\n colWidths,\r\n height,\r\n renderedRows,\r\n queriedRows\r\n });\r\n }\r\n\r\n window.addEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n\r\n const {\r\n isPaginated,\r\n rowSelection,\r\n data,\r\n onRowClick\r\n } = this.props;\r\n\r\n const {\r\n uuid,\r\n filters,\r\n searchText,\r\n sortCol,\r\n sortByDesc,\r\n scrollLeft,\r\n scrollTop,\r\n resizeTimeout,\r\n colWidths,\r\n height,\r\n cols,\r\n pageSize,\r\n pageNum,\r\n pageRequestParams,\r\n queriedRows\r\n } = this.state;\r\n\r\n if (InfiniteScrollTable.isArrayPropertyChangedLazy(prevProps.data, data)) { // TODO: check for lang change\r\n\r\n let newCols = null;\r\n let newPopulatedRows = null;\r\n let newColWidths = null;\r\n let newRenderedRows = null;\r\n let newQueriedRows = null;\r\n let newScrollTop = null;\r\n\r\n if (data !== null) {\r\n\r\n newCols = this.getCols();\r\n newPopulatedRows = this.getPopulatedRows(this.props.data);\r\n\r\n newColWidths = (colWidths !== null && cols !== null && prevProps.data !== null && prevProps.data.length === 0 && data.length === 0)\r\n ? colWidths\r\n : this.getColWidths(newPopulatedRows, newCols);\r\n newRenderedRows = this.getRenderedRows(newPopulatedRows, newCols, newColWidths, this.getSelectedRowKeys());\r\n newQueriedRows = this.getQueriedRows(\r\n newRenderedRows,\r\n newCols,\r\n filters,\r\n searchText,\r\n sortCol,\r\n sortByDesc\r\n );\r\n } else {\r\n\r\n const $grid = $(`.infinite-scroll-table__${uuid} .infinite-scroll-table__grid`);\r\n if ($grid) {\r\n newScrollTop = $grid.scrollTop();\r\n }\r\n }\r\n\r\n this.setState({\r\n cols: newCols,\r\n populatedRows: newPopulatedRows,\r\n colWidths: newColWidths,\r\n renderedRows: newRenderedRows,\r\n queriedRows: newQueriedRows,\r\n pageNum: isPaginated && pageRequestParams ? pageRequestParams.pageNum : pageNum,\r\n pageSize: isPaginated && pageRequestParams ? pageRequestParams.pageSize : pageSize,\r\n isPaginating: false,\r\n pageRequestParams: null,\r\n scrollTop: newScrollTop,\r\n selectedRowKeys: this.getSelectedRowKeys()\r\n });\r\n\r\n } else if (\r\n rowSelection &&\r\n InfiniteScrollTable.isArrayPropertyChangedLazy(\r\n prevProps.rowSelection?.selectedRowKeys,\r\n rowSelection.selectedRowKeys\r\n )\r\n ) {\r\n\r\n this.setState({\r\n selectedRowKeys: rowSelection.selectedRowKeys,\r\n });\r\n this.updateRenderedRows(rowSelection.selectedRowKeys);\r\n\r\n } else if (prevProps.size && this.props.size && prevProps.size.width !== this.props.size.width) {\r\n\r\n if (resizeTimeout) {\r\n clearTimeout(resizeTimeout);\r\n }\r\n\r\n let newScrollTop = null;\r\n const $grid = $(`.infinite-scroll-table__${uuid} .infinite-scroll-table__grid`);\r\n if ($grid) {\r\n newScrollTop = $grid.scrollTop();\r\n }\r\n\r\n this.setState({\r\n isResizing: true,\r\n scrollTop: newScrollTop || scrollTop,\r\n resizeTimeout: setTimeout(\r\n () => {\r\n this.setState(state => {\r\n\r\n const {\r\n populatedRows,\r\n cols\r\n } = state;\r\n\r\n const colWidths = this.getColWidths(populatedRows, cols);\r\n const renderedRows = this.getRenderedRows(populatedRows, cols, colWidths, this.getSelectedRowKeys());\r\n const queriedRows = this.getQueriedRows(renderedRows, cols, filters, searchText, sortCol, sortByDesc);\r\n\r\n return {\r\n gridKeyForRefresh: uuidv4(),\r\n isResizing: false,\r\n resizeTimeout: null,\r\n colWidths,\r\n renderedRows,\r\n queriedRows\r\n };\r\n });\r\n },\r\n RESIZE_TIMEOUT\r\n )\r\n });\r\n }\r\n\r\n const $grid = $(`.infinite-scroll-table__${uuid} .infinite-scroll-table__grid:not(.infinite-scroll-table__grid--with-event-handlers)`);\r\n\r\n if ($grid.length) {\r\n\r\n const _this = this;\r\n\r\n $grid\r\n .scrollLeft(scrollLeft)\r\n .addClass('infinite-scroll-table__grid--with-event-handlers')\r\n .on('scroll', function () {\r\n const newScrollLeft = $(this).scrollLeft();\r\n if (newScrollLeft !== _this.state.scrollLeft) {\r\n $(`.infinite-scroll-table__${uuid} .infinite-scroll-table__header`).scrollLeft(newScrollLeft);\r\n _this.setState({\r\n scrollLeft: newScrollLeft\r\n });\r\n }\r\n })\r\n .on('keypress', function (e) {\r\n if (e.which === 13 && onRowClick) {\r\n const dataIdx = (document.activeElement?.id || \"\").split(\"--\")[1] || null;\r\n if (dataIdx && queriedRows[dataIdx]) {\r\n onRowClick(queriedRows[dataIdx]);\r\n }\r\n }\r\n });\r\n }\r\n\r\n const newHeight = this.getGridHeight(uuid);\r\n if (height !== newHeight) {\r\n this.setState({height: newHeight})\r\n }\r\n }\r\n\r\n componentWillUnmount() {\r\n\r\n const {\r\n uuid,\r\n resizeTimeout,\r\n pageRequestTimeout,\r\n viewIndexesUpdateTimeout\r\n } = this.state;\r\n\r\n const $grid = $(`.infinite-scroll-table__${uuid} .infinite-scroll-table__grid--with-event-handlers`);\r\n\r\n if ($grid.length) {\r\n $grid\r\n .off('scroll')\r\n .off('keypress');\r\n }\r\n\r\n if (resizeTimeout) {\r\n clearTimeout(resizeTimeout);\r\n }\r\n\r\n if (pageRequestTimeout) {\r\n clearTimeout(pageRequestTimeout);\r\n }\r\n\r\n if (viewIndexesUpdateTimeout) {\r\n clearTimeout(viewIndexesUpdateTimeout);\r\n }\r\n\r\n window.removeEventListener(\"resize\", this.onWindowResize);\r\n }\r\n\r\n shouldComponentUpdate(nextProps, nextState, nextContext) {\r\n if (this.state.gridKeyForRefresh === nextState.gridKeyForRefresh && this.state.scrollLeft !== nextState.scrollLeft) {\r\n return false;\r\n } else {\r\n return true;\r\n }\r\n }\r\n\r\n /* === Event handlers === */\r\n\r\n updateRenderedRows(selectedRowKeys) {\r\n\r\n const {\r\n populatedRows,\r\n cols,\r\n colWidths,\r\n filters,\r\n searchText,\r\n sortCol,\r\n sortByDesc\r\n } = this.state;\r\n\r\n const renderedRows = this.getRenderedRows(populatedRows, cols, colWidths, selectedRowKeys);\r\n\r\n this.setState({\r\n renderedRows,\r\n queriedRows: this.getQueriedRows(renderedRows, cols, filters, searchText, sortCol, sortByDesc)\r\n });\r\n }\r\n\r\n applyQueryChange(filters, searchText, sortCol, sortByDesc) {\r\n\r\n const {\r\n isPaginated\r\n } = this.props;\r\n\r\n const {\r\n renderedRows,\r\n cols,\r\n queriedRows\r\n } = this.state;\r\n\r\n this.setState({\r\n scrollTop: 0,\r\n gridKeyForRefresh: uuidv4(),\r\n queriedRows: isPaginated\r\n ? queriedRows\r\n : this.getQueriedRows(renderedRows, cols, filters, searchText, sortCol, sortByDesc)\r\n });\r\n }\r\n\r\n onFiltersChange(dataIndex, value) {\r\n\r\n const {\r\n onChange,\r\n isPaginated,\r\n } = this.props;\r\n\r\n const {\r\n searchText,\r\n sortCol,\r\n sortByDesc\r\n } = this.state;\r\n\r\n const newFilters = this.state.filters;\r\n\r\n if (value !== null && value.length > 0) {\r\n newFilters[dataIndex] = value;\r\n } else {\r\n delete newFilters[dataIndex];\r\n }\r\n\r\n const newPageRequestParams = {\r\n pageNum: DEFAULT_PAGE_NUM,\r\n pageSize: DEFAULT_PAGE_SIZE,\r\n searchText,\r\n filters: newFilters,\r\n sortCol,\r\n sortByDesc\r\n };\r\n\r\n this.setState({\r\n filters: newFilters,\r\n isPaginating: isPaginated,\r\n pageRequestParams: isPaginated ? newPageRequestParams : null,\r\n doNotCallOnChangeOnNextRenderedRowsChange: isPaginated && onChange\r\n });\r\n\r\n this.applyQueryChange(newFilters, searchText, sortCol, sortByDesc);\r\n\r\n if (onChange) {\r\n onChange(newPageRequestParams);\r\n }\r\n }\r\n\r\n onSearchTextChange(value) {\r\n\r\n const {\r\n onChange,\r\n isPaginated\r\n } = this.props;\r\n\r\n const {\r\n filters,\r\n sortCol,\r\n sortByDesc\r\n } = this.state;\r\n\r\n const newSearchText = value;\r\n\r\n const newPageRequestParams = {\r\n pageNum: DEFAULT_PAGE_NUM,\r\n pageSize: DEFAULT_PAGE_SIZE,\r\n searchText: newSearchText,\r\n filters,\r\n sortCol,\r\n sortByDesc\r\n };\r\n\r\n this.setState({\r\n searchText: newSearchText,\r\n isPaginating: isPaginated,\r\n pageRequestParams: isPaginated ? newPageRequestParams : null,\r\n doNotCallOnChangeOnNextRenderedRowsChange: isPaginated && onChange\r\n });\r\n this.applyQueryChange(filters, newSearchText, sortCol, sortByDesc);\r\n\r\n if (onChange) {\r\n onChange(newPageRequestParams);\r\n }\r\n }\r\n\r\n onSortChange(colDataIndex, direction) {\r\n\r\n const {\r\n onChange,\r\n isPaginated\r\n } = this.props;\r\n\r\n const {\r\n searchText,\r\n filters\r\n } = this.state;\r\n\r\n const newSortCol = direction ? colDataIndex : null;\r\n const newSortByDesc = direction === SORT_DIRECTION_DESC;\r\n\r\n const newPageRequestParams = {\r\n pageNum: DEFAULT_PAGE_NUM,\r\n pageSize: DEFAULT_PAGE_SIZE,\r\n searchText,\r\n filters,\r\n sortCol: newSortCol,\r\n sortByDesc: newSortByDesc\r\n };\r\n\r\n this.setState({\r\n sortCol: newSortCol,\r\n sortByDesc: newSortByDesc,\r\n isPaginating: isPaginated,\r\n pageRequestParams: isPaginated ? newPageRequestParams : null,\r\n doNotCallOnChangeOnNextRenderedRowsChange: isPaginated && onChange\r\n });\r\n\r\n this.applyQueryChange(filters, searchText, newSortCol, newSortByDesc);\r\n\r\n if (onChange) {\r\n onChange(newPageRequestParams);\r\n }\r\n }\r\n\r\n onRowSelectionChange(rowKey, selected) {\r\n\r\n const {\r\n searchText,\r\n sortCol,\r\n sortByDesc,\r\n filters,\r\n } = this.state;\r\n\r\n const {\r\n rowSelection,\r\n getRowKey,\r\n getIsDisabledRow\r\n } = this.props;\r\n\r\n if (rowSelection && (rowSelection.onSelect || rowSelection.onSelectAll)) {\r\n\r\n if (rowKey !== null && rowSelection.onSelect) {\r\n rowSelection.onSelect(rowKey, selected);\r\n }\r\n\r\n if (rowKey === null && rowSelection.onSelectAll) {\r\n rowSelection.onSelectAll(\r\n selected,\r\n {\r\n searchText,\r\n sortCol,\r\n sortByDesc,\r\n filters\r\n }\r\n );\r\n }\r\n\r\n } else {\r\n\r\n const {\r\n selectedRowKeys,\r\n queriedRows\r\n } = this.state;\r\n\r\n let newSelectedRowKeys = null;\r\n\r\n if (rowKey !== null) {\r\n newSelectedRowKeys =\r\n selected\r\n ? [...selectedRowKeys, rowKey]\r\n : selectedRowKeys.filter(selRowKey => selRowKey !== rowKey);\r\n } else {\r\n newSelectedRowKeys =\r\n selected\r\n ? queriedRows.map(row => row[DATA_INDEX_ORIGINAL_ROW]).filter(row => !getIsDisabledRow || !getIsDisabledRow(row)).map(row => getRowKey(row))\r\n : [];\r\n }\r\n\r\n if (rowSelection && rowSelection.onChange) {\r\n rowSelection.onChange(newSelectedRowKeys);\r\n }\r\n\r\n this.setState({\r\n selectedRowKeys: newSelectedRowKeys,\r\n });\r\n this.updateRenderedRows(newSelectedRowKeys);\r\n }\r\n }\r\n\r\n onWindowResize() {\r\n this.setState({height: this.getGridHeight(this.state.uuid)});\r\n }\r\n\r\n /* === Getters === */\r\n\r\n getCols() {\r\n\r\n const {\r\n columns,\r\n rowSelection\r\n } = this.props;\r\n\r\n if (columns === null) {\r\n return null;\r\n } else {\r\n\r\n let res = columns.filter(col => col !== null);\r\n\r\n if (rowSelection || this.getNormalizedTableActions().length > 0) {\r\n\r\n res = [\r\n {\r\n dataIndex: DATA_INDEX_CHECKED,\r\n render: this.renderCheckbox,\r\n titleRender: this.renderCheckboxTitle,\r\n noSearchText: true,\r\n noFilter: true,\r\n noSort: true,\r\n width: CHECKBOX_WIDTH,\r\n renderText: () => \"\"\r\n },\r\n ...res\r\n ];\r\n }\r\n\r\n if (this.getNormalizedFixedActions().length > 0) {\r\n res = [\r\n ...res,\r\n {\r\n dataIndex: DATA_INDEX_FIXED_ACTIONS_OBJS,\r\n render: this.renderFixedActions,\r\n noSearchText: true,\r\n noFilter: true,\r\n noSort: true,\r\n disableOnRowClickForCell: true,\r\n renderText: () => \"\",\r\n width: this.getNormalizedFixedActions().length * (ACTION_WIDTH + ACTIONS_GUTTER) - ACTIONS_GUTTER + COL_WIDTH_SAFE + 2 * CELL_PADDING\r\n }\r\n ];\r\n }\r\n\r\n if (this.getNormalizedActions().length > 0 || this.getNormalizedAltActions().length > 0) {\r\n res = [\r\n ...res,\r\n {\r\n dataIndex: DATA_INDEX_ACTIONS_OBJS,\r\n render: this.renderActions,\r\n noSearchText: true,\r\n noFilter: true,\r\n noSort: true,\r\n disableOnRowClickForCell: true,\r\n renderText: () => \"\",\r\n width: Math.max(this.getNormalizedActions().length, this.getNormalizedAltActions().length) * (ACTION_WIDTH + ACTIONS_GUTTER) - ACTIONS_GUTTER + COL_WIDTH_SAFE + 2 * CELL_PADDING\r\n }\r\n ];\r\n }\r\n\r\n return res;\r\n }\r\n }\r\n\r\n getNormalizedTableActions() {\r\n\r\n const {\r\n tableActions\r\n } = this.props;\r\n\r\n return (tableActions || []).filter(action => action !== null);\r\n }\r\n\r\n getNormalizedActions() {\r\n\r\n const {\r\n actions\r\n } = this.props;\r\n\r\n return (actions || []).filter(action => action !== null);\r\n }\r\n\r\n getNormalizedAltActions() {\r\n\r\n const {\r\n altActions\r\n } = this.props;\r\n\r\n return (altActions || []).filter(action => action !== null);\r\n }\r\n\r\n getNormalizedFixedActions() {\r\n\r\n const {\r\n fixedActions\r\n } = this.props;\r\n\r\n return (fixedActions || []).filter(action => action !== null);\r\n }\r\n\r\n getSelectedRowKeys() {\r\n\r\n const {\r\n rowSelection\r\n } = this.props;\r\n\r\n const {\r\n selectedRowKeys\r\n } = this.state;\r\n\r\n return rowSelection && rowSelection.selectedRowKeys\r\n ? rowSelection.selectedRowKeys\r\n : selectedRowKeys;\r\n }\r\n\r\n getGridHeight(uuid) {\r\n const preHeaderHeight = document.getElementById(`infinite-scroll-table__pre-header__${uuid}`)\r\n ? document.getElementById(`infinite-scroll-table__pre-header__${uuid}`).offsetHeight\r\n : 0;\r\n const headerHeight = document.getElementById(`infinite-scroll-table__header__${uuid}`)\r\n ? document.getElementById(`infinite-scroll-table__header__${uuid}`).offsetHeight\r\n : 0;\r\n const footerHeight = document.getElementById(`infinite-scroll-table__footer__${uuid}`)\r\n ? document.getElementById(`infinite-scroll-table__footer__${uuid}`).offsetHeight\r\n : 0;\r\n\r\n if (document.getElementById(`infinite-scroll-table__grid__${uuid}`)) {\r\n document.getElementById(`infinite-scroll-table__grid__${uuid}`).setAttribute(\"style\", `height: calc(100% - ${preHeaderHeight + headerHeight + footerHeight}px)`);\r\n }\r\n\r\n return document.getElementById(`infinite-scroll-table__grid__${uuid}`)\r\n ? document.getElementById(`infinite-scroll-table__grid__${uuid}`).offsetHeight\r\n : 0;\r\n }\r\n\r\n /* === Data manipulation === */\r\n\r\n getFilteredGridRows(rows, cols, filters) {\r\n\r\n return Object.keys(filters).length > 0\r\n ? rows.filter(row => {\r\n\r\n for (let dataIndex in filters) {\r\n if (filters.hasOwnProperty(dataIndex)) {\r\n\r\n const col = cols.find(col => col.dataIndex === dataIndex);\r\n\r\n const testPassed =\r\n col.withValuesFilter\r\n ? filters[dataIndex].includes(row[dataIndex])\r\n : (\r\n InfiniteScrollTable.isValuePassingSearchText(\r\n col.renderText\r\n ? col.renderText(row[DATA_INDEX_ORIGINAL_ROW][dataIndex], row[DATA_INDEX_ORIGINAL_ROW])\r\n : row[dataIndex],\r\n filters[dataIndex]\r\n )\r\n );\r\n\r\n if (!testPassed) {\r\n return false;\r\n }\r\n\r\n }\r\n }\r\n\r\n return true;\r\n\r\n })\r\n : rows;\r\n }\r\n\r\n getSearchTextFilteredGridRows(rows, cols, searchText) {\r\n\r\n return searchText !== null\r\n ? (\r\n rows !== null\r\n ? rows.filter(row => {\r\n for (let col of cols) {\r\n if (!col.noSearchText && typeof (row[col.dataIndex]) !== 'boolean' &&\r\n InfiniteScrollTable.isValuePassingSearchText(\r\n col.renderText\r\n ? col.renderText(row[DATA_INDEX_ORIGINAL_ROW][col.dataIndex], row[DATA_INDEX_ORIGINAL_ROW])\r\n : row[col.dataIndex],\r\n searchText\r\n )) {\r\n return true;\r\n }\r\n }\r\n return false;\r\n })\r\n : null\r\n )\r\n : rows;\r\n }\r\n\r\n getSortedGridRows(rows, cols, sortCol, sortByDesc) {\r\n\r\n const column = sortCol !== null ? cols.find(col => col.dataIndex === sortCol) : null;\r\n\r\n return column\r\n ? rows.sort((a, b) => {\r\n const _a =\r\n column.renderText\r\n ? column.renderText(a[DATA_INDEX_ORIGINAL_ROW][column.dataIndex], a[DATA_INDEX_ORIGINAL_ROW])\r\n : a[column.dataIndex];\r\n const _b =\r\n column.renderText\r\n ? column.renderText(b[DATA_INDEX_ORIGINAL_ROW][column.dataIndex], a[DATA_INDEX_ORIGINAL_ROW])\r\n : b[column.dataIndex];\r\n return (\r\n column.sorter\r\n ? column.sorter(_a, _b) * (sortByDesc ? -1 : 1)\r\n : InfiniteScrollTable.defaultSorter(_a, _b, sortByDesc)\r\n );\r\n })\r\n : rows;\r\n }\r\n\r\n /* === Rendering === */\r\n\r\n renderGridRowCols(row, cols, colWidths) {\r\n\r\n const {\r\n onRowClick,\r\n getIsDisabledRow,\r\n getRowStyle\r\n } = this.props;\r\n\r\n return (\r\n \r\n {cols.map((col, colIndex) => {\r\n const cellData = row[col.dataIndex];\r\n const isRowClickDisabled =\r\n !onRowClick || col.disableOnRowClickForCell ||\r\n (getIsDisabledRow && getIsDisabledRow(row[DATA_INDEX_ORIGINAL_ROW]));\r\n let colLeftAttr = 0;\r\n cols\r\n .slice(0, colIndex)\r\n .map((_, index) => index)\r\n .forEach(index => colLeftAttr += colWidths[index]);\r\n const rowStyle = getRowStyle ? getRowStyle(row[DATA_INDEX_ORIGINAL_ROW]) : null;\r\n return (\r\n \r\n onRowClick(row[DATA_INDEX_ORIGINAL_TRANSLATED_ROW])\r\n : null\r\n }\r\n >\r\n {col.render\r\n ? col.render(cellData, row[DATA_INDEX_ORIGINAL_ROW])\r\n : cellData\r\n }\r\n
\r\n \r\n );\r\n })}\r\n \r\n );\r\n }\r\n\r\n renderGridRow = ({index, data, style}) => {\r\n const {\r\n colWidths,\r\n isPaginated,\r\n isPaginating,\r\n currentPageIndexes,\r\n queriedRows,\r\n onRowClick\r\n } = data;\r\n\r\n const rowIndex = isPaginated ? (index - currentPageIndexes.startIdx) : index;\r\n\r\n return (\r\n \r\n {\r\n !isPaginated || (\r\n !isPaginating &&\r\n currentPageIndexes.startIdx <= index &&\r\n index <= currentPageIndexes.stopIdx &&\r\n (index - currentPageIndexes.startIdx) < queriedRows.length\r\n )\r\n ? queriedRows[rowIndex][DATA_INDEX_RENDERED]\r\n : \r\n }\r\n
\r\n )\r\n }\r\n\r\n renderHeaderCells(cols, columnWidths, rows) {\r\n\r\n const {\r\n data\r\n } = this.props;\r\n\r\n const {\r\n filters,\r\n sortCol,\r\n sortByDesc\r\n } = this.state;\r\n\r\n return (cols || []).map((col, index) =>\r\n \r\n \r\n {(col.title || col.titleRender) && (\r\n \r\n \r\n {col.titleRender ? col.titleRender(rows) : col.title}\r\n
\r\n \r\n )}\r\n {(!col.noFilter || !col.noSort)\r\n ? (\r\n \r\n \r\n {!col.noSort && (\r\n \r\n this.onSortChange(col.dataIndex, value)}\r\n />\r\n \r\n )}\r\n {!col.noFilter && (\r\n \r\n this.onFiltersChange(col.dataIndex, value)}\r\n options={col.withValuesFilter\r\n ? (\r\n _.uniqBy(data || [], col.dataIndex)\r\n .map(row => ({\r\n value: row[col.dataIndex],\r\n text: col.renderText\r\n ? col.renderText(row[col.dataIndex], row[DATA_INDEX_ORIGINAL_ROW])\r\n : row[col.dataIndex]\r\n }))\r\n .sort((a, b) => col.sorter\r\n ? col.sorter(a.text, b.text)\r\n : InfiniteScrollTable.defaultSorter(a.text, b.text)\r\n )\r\n )\r\n : null\r\n }\r\n />\r\n \r\n )}\r\n \r\n \r\n )\r\n : \r\n }\r\n \r\n
\r\n );\r\n }\r\n\r\n renderFixedActions(actions) {\r\n\r\n const {\r\n getRowKey\r\n } = this.props;\r\n\r\n const {\r\n selectedRowKeys\r\n } = this.state;\r\n\r\n return (\r\n \r\n {(actions || []).map((action, index) =>\r\n \r\n \r\n {\r\n e.stopPropagation();\r\n action.onClick(\r\n action.row,\r\n () => this.setState({\r\n selectedRowKeys: selectedRowKeys.filter(key => key !== getRowKey(action.row))\r\n })\r\n );\r\n }}\r\n >\r\n {action.icon}\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n renderActions(actions) {\r\n\r\n const {\r\n getRowKey\r\n } = this.props;\r\n\r\n const {\r\n selectedRowKeys\r\n } = this.state;\r\n\r\n return (\r\n \r\n {(actions || []).map((action, index) =>\r\n \r\n \r\n {\r\n e.stopPropagation();\r\n action.onClick(\r\n action.row,\r\n () => this.setState({\r\n selectedRowKeys: selectedRowKeys.filter(key => key !== getRowKey(action.row))\r\n })\r\n );\r\n }}\r\n >\r\n {action.icon}\r\n \r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n\r\n renderTableAction(action, rows) {\r\n\r\n const {\r\n getRowKey\r\n } = this.props;\r\n\r\n return (\r\n {\r\n e.stopPropagation();\r\n action.onClick(\r\n rows.filter(row => this.getSelectedRowKeys().includes(getRowKey(row[DATA_INDEX_ORIGINAL_ROW]))),\r\n () => this.onRowSelectionChange(null, false)\r\n )\r\n }}\r\n >\r\n {action.title}\r\n \r\n );\r\n }\r\n\r\n renderCheckbox(checked, row) {\r\n const {\r\n t,\r\n getRowKey,\r\n rowSelection,\r\n getIsDisabledRow,\r\n isCheckDisabled\r\n } = this.props;\r\n\r\n const checkboxProps =\r\n rowSelection && rowSelection.getCheckboxProps\r\n ? rowSelection.getCheckboxProps(row)\r\n : ({\r\n disabled: (isCheckDisabled || (getIsDisabledRow && getIsDisabledRow(row)))\r\n });\r\n\r\n return (\r\n \r\n \r\n {\r\n e.stopPropagation();\r\n this.onRowSelectionChange(getRowKey(row), !checked)\r\n }}\r\n style={{padding: 0}}\r\n inputProps={{\r\n \"aria-label\": checked\r\n ? t(\"components.infiniteScrollTable.checkBox.uncheck.ariaLabel\")\r\n : t(\"components.infiniteScrollTable.checkBox.check.ariaLabel\")\r\n }}\r\n {...checkboxProps}\r\n />\r\n \r\n \r\n );\r\n }\r\n\r\n renderCheckboxTitle(rows) {\r\n const {\r\n t,\r\n getRowKey,\r\n getIsDisabledRow,\r\n isCheckDisabled\r\n } = this.props;\r\n\r\n const selectedRowKeys = this.getSelectedRowKeys();\r\n\r\n const checked =\r\n rows !== null &&\r\n rows.length > 0 &&\r\n rows\r\n .filter(row => !getIsDisabledRow || !getIsDisabledRow(row[DATA_INDEX_ORIGINAL_ROW]))\r\n .map(row => getRowKey(row[DATA_INDEX_ORIGINAL_ROW]))\r\n .filter(rowKey => !selectedRowKeys.includes(rowKey))\r\n .length === 0;\r\n\r\n return (\r\n \r\n \r\n this.onRowSelectionChange(null, !checked)}\r\n style={{padding: 0}}\r\n disabled={isCheckDisabled}\r\n inputProps={{\r\n \"aria-label\": checked\r\n ? t(\"components.infiniteScrollTable.checkBoxTitle.uncheck.ariaLabel\")\r\n : t(\"components.infiniteScrollTable.checkBoxTitle.check.ariaLabel\")\r\n }}\r\n />\r\n \r\n \r\n );\r\n }\r\n\r\n onRenderedRowsChange(viewStartIdx, viewEndIdx, overscanStartIdx, overscanEndIdx) {\r\n\r\n const {\r\n onChange,\r\n rowCount,\r\n isPaginated\r\n } = this.props;\r\n\r\n const {\r\n pageRequestTimeout,\r\n pageSize,\r\n pageNum,\r\n isPaginating,\r\n viewIndexesUpdateTimeout,\r\n doNotCallOnChangeOnNextRenderedRowsChange\r\n } = this.state;\r\n\r\n if (viewIndexesUpdateTimeout) {\r\n clearTimeout(viewIndexesUpdateTimeout);\r\n }\r\n\r\n this.setState({\r\n viewIndexesUpdateTimeout: setTimeout(\r\n () => this.setState({\r\n viewStartIdx,\r\n viewEndIdx,\r\n viewIndexesUpdateTimeout: null\r\n }),\r\n VIEW_INDEXES_UPDATE_TIMEOUT\r\n )\r\n });\r\n\r\n if (isPaginated && !doNotCallOnChangeOnNextRenderedRowsChange) {\r\n\r\n const currentPageIndexes = getIndexesFromPaginationParams(\r\n pageSize || DEFAULT_PAGE_SIZE,\r\n pageNum || DEFAULT_PAGE_NUM\r\n );\r\n\r\n if (\r\n isPaginating ||\r\n (overscanStartIdx < currentPageIndexes.startIdx || overscanEndIdx > currentPageIndexes.stopIdx)\r\n ) {\r\n\r\n if (pageRequestTimeout !== null) {\r\n clearTimeout(pageRequestTimeout);\r\n }\r\n\r\n const safePageSize = MAX_PAGE_SIZE / 2; // getPaginationParamsFromIndexes can double the size of a page\r\n const pageRowsThird = Math.floor(safePageSize / 3);\r\n const newPaginationParams =\r\n getPaginationParamsFromIndexes(\r\n Math.max(overscanStartIdx - pageRowsThird, 0),\r\n Math.min(overscanStartIdx + 2 * pageRowsThird - 1, rowCount - 1),\r\n rowCount\r\n );\r\n\r\n const newPageRequestParams = {\r\n pageSize: newPaginationParams.pageSize,\r\n pageNum: newPaginationParams.pageNum,\r\n filters: this.state.filters,\r\n searchText: this.state.searchText,\r\n sortCol: this.state.sortCol,\r\n sortByDesc: this.state.sortByDesc\r\n };\r\n\r\n this.setState({\r\n isPaginating: true,\r\n pageRequestTimeout: setTimeout(\r\n () => {\r\n onChange(newPageRequestParams);\r\n this.setState({\r\n pageRequestParams: newPageRequestParams\r\n })\r\n },\r\n PAGINATION_TIMEOUT\r\n )\r\n });\r\n }\r\n } else if (isPaginated) {\r\n this.setState({\r\n doNotCallOnChangeOnNextRenderedRowsChange: false\r\n });\r\n }\r\n }\r\n\r\n getIsVerticalScrollbarVisible(rowNum) {\r\n\r\n const {\r\n height = DEFAULT_TABLE_HEIGHT\r\n } = this.state;\r\n\r\n return rowNum * ROW_HEIGHT > height;\r\n }\r\n\r\n render() {\r\n\r\n const {\r\n t,\r\n size,\r\n leftActions,\r\n rightActions,\r\n showHeader = true,\r\n rowCount,\r\n isPaginated = false,\r\n selectedRowCount,\r\n autoSearch = true,\r\n onRowClick\r\n } = this.props;\r\n\r\n const {\r\n uuid,\r\n cols,\r\n gridKeyForRefresh,\r\n scrollTop,\r\n gridScrollbarWidth,\r\n populatedRows,\r\n queriedRows,\r\n isResizing,\r\n colWidths,\r\n height = DEFAULT_TABLE_HEIGHT,\r\n pageSize,\r\n pageNum,\r\n isPaginating,\r\n viewStartIdx,\r\n viewEndIdx,\r\n viewIndexesUpdateTimeout,\r\n searchText\r\n } = this.state;\r\n\r\n const currentPageIndexes = getIndexesFromPaginationParams(\r\n pageSize || DEFAULT_PAGE_SIZE,\r\n pageNum || DEFAULT_PAGE_NUM\r\n );\r\n\r\n return (\r\n
\r\n
\r\n this.renderTableAction(action, populatedRows)}\r\n leftActions={leftActions}\r\n rightActions={rightActions}\r\n />\r\n
\r\n \r\n
\r\n {showHeader && (\r\n isResizing\r\n ?
\r\n : (\r\n
\r\n {queriedRows !== null\r\n ? (\r\n \r\n
\r\n {this.renderHeaderCells(cols, colWidths, queriedRows)}\r\n
\r\n \r\n
\r\n \r\n )\r\n : (\r\n \r\n )\r\n }\r\n
\r\n )\r\n )}\r\n
\r\n
\r\n {isResizing || queriedRows === null || queriedRows.length === 0\r\n ? (\r\n
\r\n \r\n : \r\n }\r\n style={{\r\n width: (!isResizing && queriedRows !== null) ? _.sum(colWidths) : undefined\r\n }}\r\n />\r\n
\r\n )\r\n : (\r\n
\r\n {isPaginating && (\r\n \r\n \r\n
\r\n )}\r\n \r\n this.onRenderedRowsChange(\r\n visibleStartIndex,\r\n visibleStopIndex,\r\n overscanStartIndex,\r\n overscanStopIndex\r\n )\r\n }\r\n >\r\n {this.renderGridRow}\r\n \r\n
\r\n )}\r\n
\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withSize(),\r\n withTranslation(),\r\n connect(state => ({\r\n languages: state.app.languages,\r\n defaultLanguage: state.app.language\r\n }))\r\n)(InfiniteScrollTable);","import React, {Fragment, useEffect, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {SketchPicker} from 'react-color';\r\nimport _ from \"lodash\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport Selector from \"../selector\";\r\nimport InfiniteScrollTable from \"../infinite-scroll-table\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport Divider from \"@material-ui/core/Divider\";\r\n\r\nexport const CHART_COLORS_ALL_DIMENSION_VALUES_KEY = \"ALL_ITEMS\";\r\nconst getAllDimValuesLabel = t => t(\"scenes.dataViewer.chartSettings.colors.allDimValues\");\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\",\r\n padding: \"8px 8px 0 8px\"\r\n },\r\n title: {\r\n width: \"calc(100% - 96px)\"\r\n },\r\n scrollableRows: {\r\n height: \"calc(100% - 44px)\",\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\"\r\n },\r\n rows: {\r\n marginBottom: 16\r\n },\r\n row: {},\r\n rowDimension: {\r\n fontSize: 14,\r\n lineHeight: \"48px\",\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\"\r\n },\r\n item: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n width: \"calc(100% - 96px)\"\r\n },\r\n itemLabel: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n width: \"calc(50% - 8px)\",\r\n height: 48,\r\n lineHeight: \"48px\",\r\n marginRight: 8,\r\n fontSize: 14,\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\"\r\n },\r\n itemColor: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n width: \"calc(50% - 8px)\",\r\n height: 32,\r\n marginRight: 8\r\n },\r\n rowActions: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n width: 96\r\n },\r\n selector: {\r\n width: \"100%\"\r\n }\r\n});\r\n\r\nconst getClearedColors = (colors, jsonStat) => {\r\n const newColors = {};\r\n\r\n Object.keys(colors).forEach(dimKey => {\r\n if (jsonStat.id.includes(dimKey)) {\r\n Object.keys(colors[dimKey]).forEach(dimValKey => {\r\n if (jsonStat.dimension[dimKey].category.index.includes(dimValKey) || dimValKey === CHART_COLORS_ALL_DIMENSION_VALUES_KEY) {\r\n if (colors[dimKey][dimValKey]) {\r\n newColors[dimKey] = {...newColors[dimKey]};\r\n newColors[dimKey][dimValKey] = colors[dimKey][dimValKey]\r\n }\r\n }\r\n });\r\n }\r\n });\r\n\r\n return newColors;\r\n};\r\n\r\nconst Row = ({\r\n t,\r\n classes,\r\n jsonStat,\r\n dimension,\r\n items,\r\n onColorEdit,\r\n onColorRemove\r\n }) =>\r\n\r\n
\r\n \r\n \r\n \r\n
\r\n {jsonStat.dimension[dimension].label || dimension}\r\n
\r\n
\r\n
\r\n \r\n {Object.keys(items)\r\n .map((item, idx) => {\r\n const label = jsonStat.dimension[dimension].category.label[item]\r\n ? jsonStat.dimension[dimension].category.label[item]\r\n : item === CHART_COLORS_ALL_DIMENSION_VALUES_KEY\r\n ? getAllDimValuesLabel(t)\r\n : item;\r\n\r\n return (\r\n \r\n
\r\n \r\n
\r\n {label}\r\n
\r\n
\r\n \r\n
\r\n
\r\n \r\n onColorEdit(dimension, item, items[item])}>\r\n \r\n \r\n \r\n \r\n onColorRemove(dimension, item)}>\r\n \r\n \r\n \r\n
\r\n
\r\n )\r\n })\r\n .sort((a, b) => {\r\n if (a === CHART_COLORS_ALL_DIMENSION_VALUES_KEY) {\r\n return 1\r\n } else if (b === CHART_COLORS_ALL_DIMENSION_VALUES_KEY) {\r\n return -1\r\n } else {\r\n return 0\r\n }\r\n })\r\n }\r\n
\r\n
\r\n
;\r\n\r\nconst defaultColor = \"rgba(0, 0, 0, 0.1)\";\r\n\r\nfunction ChartSettingsColors(props) {\r\n const {\r\n t,\r\n classes,\r\n jsonStat,\r\n colors: initialColors,\r\n onColorsSet\r\n } = props\r\n\r\n const [colors, setColors] = useState(false);\r\n\r\n const [isAddColorVisible, setAddColorVisibility] = useState(false);\r\n\r\n const [newDim, setNewDim] = useState(null);\r\n const [newDimVal, setNewDimVal] = useState(null);\r\n const [newColor, setNewColor] = useState(defaultColor);\r\n\r\n const [data, setData] = useState(null);\r\n const [isDimension, setIsDimension] = useState(true);\r\n\r\n const [isColorPickerVisible, setColorPickerVisibility] = useState(false);\r\n\r\n const [tmpDim, setTmpDim] = useState(null);\r\n const [tmpDimVal, setTmpDimVal] = useState(null);\r\n const [tmpColor, setTmpColor] = useState(null);\r\n\r\n useEffect(() => {\r\n setColors(getClearedColors(initialColors, jsonStat));\r\n }, [initialColors, jsonStat]);\r\n\r\n const handleAddColorClose = () => {\r\n setAddColorVisibility(false);\r\n\r\n setNewDim(null);\r\n setNewDimVal(null);\r\n setNewColor(defaultColor);\r\n };\r\n\r\n const handleAddColorSubmit = () => {\r\n setAddColorVisibility(false);\r\n\r\n const newColors = _.cloneDeep(colors);\r\n newColors[newDim] = {...newColors[newDim]};\r\n newColors[newDim][newDimVal] = newColor\r\n onColorsSet(newColors);\r\n\r\n setNewDim(null);\r\n setNewDimVal(null);\r\n setNewColor(defaultColor);\r\n };\r\n\r\n const handleColorRemove = (dim, dimVal) => {\r\n const newColors = _.cloneDeep(colors);\r\n newColors[dim][dimVal] = undefined;\r\n onColorsSet(getClearedColors(newColors, jsonStat));\r\n };\r\n\r\n const handleColorEdit = (dim, dimVal, color) => {\r\n setTmpDim(dim);\r\n setTmpDimVal(dimVal);\r\n setTmpColor(color);\r\n setColorPickerVisibility(true);\r\n };\r\n\r\n const handleColorPickerClose = () => {\r\n setTmpDim(null);\r\n setTmpDimVal(null);\r\n setTmpColor(null);\r\n setColorPickerVisibility(false);\r\n };\r\n\r\n return (\r\n \r\n
\r\n
\r\n \r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.colors.dimension\")}\r\n \r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.colors.dimensionValue\")}\r\n \r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.colors.color\")}\r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n {Object.keys(colors).map((dimension, idx) => (\r\n \r\n \r\n \r\n \r\n ))}\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.colors.dimension\")}\r\n \r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.colors.dimensionValue\")}\r\n \r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.colors.color\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n dim ? (jsonStat.dimension[dim].label || dim) : \"\"}\r\n selectTitle={t(\"scenes.dataViewer.chartSettings.colors.addColor.selectDimension\")}\r\n onSelect={() => {\r\n setIsDimension(true);\r\n setData(jsonStat.id.map(dim => ({\r\n id: dim,\r\n label: jsonStat.dimension[dim].label || dim\r\n })));\r\n }}\r\n resetTitle={t(\"scenes.dataViewer.chartSettings.colors.addColor.resetDimension\")}\r\n onReset={() => {\r\n setNewDim(null);\r\n setNewDimVal(null);\r\n }}\r\n className={classes.selector}\r\n />\r\n \r\n \r\n {newDim && (\r\n dimVal\r\n ? jsonStat.dimension[newDim].category.label[dimVal]\r\n ? jsonStat.dimension[newDim].category.label[dimVal]\r\n : dimVal === CHART_COLORS_ALL_DIMENSION_VALUES_KEY\r\n ? getAllDimValuesLabel(t)\r\n : dimVal\r\n : \"\"\r\n }\r\n selectTitle={t(\"scenes.dataViewer.chartSettings.colors.addColor.selectDimensionValue\")}\r\n onSelect={() => {\r\n setIsDimension(false);\r\n const data = [{\r\n id: CHART_COLORS_ALL_DIMENSION_VALUES_KEY,\r\n label: getAllDimValuesLabel(t)\r\n }];\r\n jsonStat.dimension[newDim].category.index.forEach(dimVal => data.push({\r\n id: dimVal,\r\n label: jsonStat.dimension[newDim].category.label[dimVal] || dimVal\r\n }));\r\n setData(data);\r\n }}\r\n resetTitle={t(\"scenes.dataViewer.chartSettings.colors.addColor.resetDimensionValue\")}\r\n onReset={() => setNewDimVal(null)}\r\n className={classes.selector}\r\n />\r\n )}\r\n \r\n \r\n {newDimVal && (\r\n setColorPickerVisibility(true)}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n setData(null)}\r\n fullWidth\r\n maxWidth=\"md\"\r\n >\r\n \r\n id}\r\n showHeader={false}\r\n columns={[\r\n {\r\n title: \"\",\r\n dataIndex: 'label',\r\n render: (_, {label}) => label,\r\n minWidth: 100\r\n }\r\n ]}\r\n onRowClick={({id}) => {\r\n if (isDimension) {\r\n if (id !== newDim) {\r\n setNewDim(id);\r\n setNewDimVal(null);\r\n }\r\n } else {\r\n if (id !== newDimVal) {\r\n setNewDimVal(id);\r\n }\r\n }\r\n setData(null);\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {\r\n const rgba = `rgba(${rgb.r}, ${rgb.g}, ${rgb.b}, ${rgb.a})`;\r\n if (tmpDim && tmpDimVal && tmpColor) {\r\n setTmpColor(rgba);\r\n const newColors = _.cloneDeep(colors);\r\n newColors[tmpDim][tmpDimVal] = rgba;\r\n onColorsSet(newColors);\r\n } else {\r\n setNewColor(rgba);\r\n }\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n\r\n
\r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(ChartSettingsColors);","import React, {Component, createRef} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport ChartJs from 'chart.js';\r\nimport \"chartjs-plugin-zoom\";\r\nimport \"chartjs-plugin-datalabels\";\r\nimport {getFormattedValue} from \"../../utils/formatters\";\r\nimport {\r\n FREQ_DIMENSION_KEY,\r\n getAttributeLabel,\r\n getAttributeValueLabel,\r\n getDataIdxFromCoordinatesArray,\r\n getDimensionAttributeMap,\r\n getDimensionLabelFromJsonStat,\r\n getDimensionValueLabelFromJsonStat,\r\n getDimensionValuesIndexesMap,\r\n getObservationAttributeMap,\r\n getVariationValueLabels,\r\n TIME_PERIOD_DIMENSION_KEY,\r\n VARIATION_DIMENSION_KEY,\r\n VARIATION_VALUE_CYCLICAL_KEY,\r\n VARIATION_VALUE_TREND_KEY,\r\n VARIATION_VALUE_VALUE_KEY\r\n} from \"../../utils/jsonStat\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport _ from \"lodash\";\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport {getLightOrDarkColorBasedOnContrastRatio, getNthValorizedElementIndexInBooleanArray} from \"../../utils/other\";\r\nimport {CHART_COLORS_ALL_DIMENSION_VALUES_KEY} from \"../chart-settings/Colors\";\r\nimport {LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME} from \"../label-format-selector/constants\";\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n }\r\n});\r\n\r\nconst PERCENTAGE_AXES_ID = \"PERCENTAGE_AXES_ID\";\r\n\r\nconst AXIS_DECIMAL_PLACES_DEFAULT = 2;\r\n\r\nexport const CHART_LEGEND_POSITION_TOP = \"top\";\r\nexport const CHART_LEGEND_POSITION_RIGHT = \"right\";\r\nexport const CHART_LEGEND_POSITION_BOTTOM = \"bottom\";\r\nexport const CHART_LEGEND_POSITION_lEFT = \"left\";\r\nexport const CHART_LEGEND_POSITION_DEFAULT = CHART_LEGEND_POSITION_TOP;\r\n\r\nexport const CHART_DATA_LABEL_TYPE_NONE = \"CHART_DATA_LABEL_TYPE_NONE\";\r\nexport const CHART_DATA_LABEL_TYPE_VALUE = \"CHART_DATA_LABEL_TYPE_VALUE\";\r\nexport const CHART_DATA_LABEL_TYPE_PERCENTAGE = \"CHART_DATA_LABEL_TYPE_PERCENTAGE\";\r\nexport const CHART_DATA_LABEL_TYPE_DEFAULT = CHART_DATA_LABEL_TYPE_NONE;\r\n\r\nconst defaultColorArr = [\r\n \"rgba(30, 136, 229, 0.5)\",\r\n \"rgba(194, 24, 91, 0.5)\",\r\n \"rgba(253, 216, 53, 0.5)\",\r\n \"rgba(14, 157, 89, 0.5)\",\r\n \"rgba(240, 98, 146, 0.5)\",\r\n \"rgba(255, 112, 67, 0.5)\",\r\n \"rgba(139, 195, 74, 0.5)\",\r\n \"rgba(0, 188, 212, 0.5)\",\r\n \"rgba(234, 63, 77, 0.5)\",\r\n \"rgba(170, 71, 188, 0.5)\",\r\n \"rgba(38, 166, 154, 0.5)\",\r\n \"rgba(255, 152, 0, 0.5)\"\r\n];\r\n\r\nconst defaultChartSettings = {\r\n chartStacked: false,\r\n chartLegendPosition: CHART_LEGEND_POSITION_DEFAULT,\r\n chartColors: {},\r\n chartShowAxesLabel: true,\r\n chartCustomizeCategoryAxis: false,\r\n chartCategoryAxisLabel: {},\r\n chartValueAxisLabel: {},\r\n chartDataLabelType: CHART_DATA_LABEL_TYPE_DEFAULT\r\n};\r\n\r\nconst getCompleteChartSettings = chartSetting => {\r\n const newChartSettings = {};\r\n\r\n if (chartSetting === null || chartSetting === undefined) {\r\n return defaultChartSettings;\r\n }\r\n\r\n Object.keys(defaultChartSettings).forEach(key => {\r\n newChartSettings[key] = (chartSetting[key] !== null && chartSetting[key] !== undefined)\r\n ? chartSetting[key]\r\n : defaultChartSettings[key]\r\n });\r\n\r\n return newChartSettings;\r\n};\r\n\r\nexport const CHART_TYPE_BAR = \"bar\";\r\nexport const CHART_TYPE_HORIZONTAL_BAR = \"horizontalBar\";\r\nexport const CHART_TYPE_LINE = \"line\";\r\nexport const CHART_TYPE_AREA = \"area\";\r\nexport const CHART_TYPE_DOUGHNUT = \"doughnut\";\r\nexport const CHART_TYPE_PIE = \"pie\";\r\nexport const CHART_TYPE_RADAR = \"radar\";\r\nexport const CHART_TYPE_POLAR_AREA = \"polarArea\";\r\nexport const CHART_TYPE_PYRAMID = \"pyramid\";\r\n\r\nconst getChartType = type => {\r\n switch (type) {\r\n case CHART_TYPE_BAR:\r\n return \"bar\"\r\n case CHART_TYPE_HORIZONTAL_BAR:\r\n return \"horizontalBar\"\r\n case CHART_TYPE_LINE:\r\n return \"bar\" // needed to fix line + bar chart\r\n case CHART_TYPE_AREA:\r\n return \"line\"\r\n case CHART_TYPE_DOUGHNUT:\r\n return \"doughnut\"\r\n case CHART_TYPE_PIE:\r\n return \"pie\"\r\n case CHART_TYPE_RADAR:\r\n return \"radar\"\r\n case CHART_TYPE_POLAR_AREA:\r\n return \"polarArea\"\r\n case CHART_TYPE_PYRAMID:\r\n return \"horizontalBar\"\r\n default:\r\n return type;\r\n }\r\n};\r\n\r\nconst getVariationChartType = type => {\r\n switch (type) {\r\n case CHART_TYPE_BAR:\r\n return \"line\";\r\n case CHART_TYPE_LINE:\r\n return \"bar\";\r\n default:\r\n return null;\r\n }\r\n};\r\n\r\nconst isBarChart = type => (type === CHART_TYPE_BAR || type === CHART_TYPE_HORIZONTAL_BAR || type === CHART_TYPE_PYRAMID);\r\n\r\nconst isLineChart = type => (type === CHART_TYPE_LINE || type === CHART_TYPE_AREA || type === CHART_TYPE_RADAR);\r\n\r\nconst isBarOrLineChart = type => (isBarChart(type) || isLineChart(type));\r\n\r\nconst getData = (\r\n chartType,\r\n jsonStat,\r\n layout,\r\n hiddenAttributes,\r\n timePeriodsByFreq,\r\n labelFormat,\r\n chartSettings,\r\n showTrend = false,\r\n showCyclical = false,\r\n t\r\n) => {\r\n\r\n const {\r\n primaryDim: primaryDimArr,\r\n primaryDimValues: originalPrimaryDimValues,\r\n secondaryDim: secondaryDimArr,\r\n secondaryDimValues: originalSecondaryDimValues,\r\n filters,\r\n filtersValue\r\n } = layout;\r\n\r\n const primaryDim = primaryDimArr[0];\r\n const primaryDimValues = primaryDim\r\n ? jsonStat.dimension[primaryDim].category.index.filter(dimVal => originalPrimaryDimValues.includes(dimVal))\r\n : originalPrimaryDimValues;\r\n if (chartType === CHART_TYPE_PYRAMID) {\r\n primaryDimValues.reverse();\r\n }\r\n\r\n const secondaryDim = secondaryDimArr[0];\r\n const secondaryDimValues = secondaryDim\r\n ? jsonStat.dimension[secondaryDim].category.index.filter(dimVal => originalSecondaryDimValues.includes(dimVal))\r\n : originalSecondaryDimValues;\r\n\r\n const indexesMap = getDimensionValuesIndexesMap(jsonStat);\r\n const dimAttributeMap = getDimensionAttributeMap(jsonStat, hiddenAttributes);\r\n const obsAttributeMap = getObservationAttributeMap(jsonStat, hiddenAttributes);\r\n if (obsAttributeMap === null) {\r\n console.error(t(\"components.chart.error.observationAttribute\"));\r\n }\r\n\r\n const valorizedDataMap = {};\r\n secondaryDimValues.forEach(secondaryDimValue => {\r\n valorizedDataMap[secondaryDimValue] = new Array(primaryDimValues.length).fill(false);\r\n });\r\n const valorizedDataArr = new Array(primaryDimValues.length).fill(false);\r\n\r\n const getParsedValue = value => {\r\n if (value !== null && value !== \"\" && !isNaN(value)) {\r\n return Number(value);\r\n } else {\r\n return null;\r\n }\r\n };\r\n\r\n let datasets = [];\r\n\r\n const getDataset = (secondaryDimValue, secDimIdx) => {\r\n const datasets = [];\r\n\r\n const getData = filtersValue => {\r\n const data = [];\r\n const dataAttributes = [];\r\n\r\n primaryDimValues.forEach((primaryDimValue, primDimIdx) => {\r\n const dimValueArray = jsonStat.id.map(dim => {\r\n if (dim === primaryDim) {\r\n return primaryDimValue;\r\n } else if (secondaryDim && dim === secondaryDim) {\r\n return secondaryDimValue;\r\n } else {\r\n return filtersValue[dim];\r\n }\r\n });\r\n const coordinates = dimValueArray.map((value, idx) => indexesMap[jsonStat.id[idx]][value]);\r\n const valueIdx = getDataIdxFromCoordinatesArray(coordinates, jsonStat.size);\r\n const value = getParsedValue(jsonStat.value[valueIdx]);\r\n if (value !== null) {\r\n if (secondaryDim && chartType === CHART_TYPE_PYRAMID && secondaryDimValues.length === 2 && secDimIdx === 0) {\r\n data.push(-value);\r\n } else {\r\n data.push(value);\r\n }\r\n if (secondaryDimValue) {\r\n valorizedDataMap[secondaryDimValue][primDimIdx] = true;\r\n } else {\r\n valorizedDataArr[primDimIdx] = true;\r\n }\r\n } else {\r\n data.push(null);\r\n }\r\n\r\n const attributes = {\r\n observation: obsAttributeMap?.[valueIdx] || null,\r\n primaryDim: dimAttributeMap?.[primaryDim]?.[primaryDimValue] || null,\r\n secondaryDim: dimAttributeMap?.[secondaryDim]?.[secondaryDimValue] || null\r\n }\r\n\r\n dataAttributes.push(attributes);\r\n });\r\n\r\n return {\r\n data,\r\n dataAttributes\r\n };\r\n };\r\n\r\n if (jsonStat.id.includes(VARIATION_DIMENSION_KEY)) {\r\n const variations = [VARIATION_VALUE_VALUE_KEY];\r\n if (showTrend && getVariationChartType(chartType)) {\r\n variations.push(VARIATION_VALUE_TREND_KEY);\r\n }\r\n if (showCyclical && getVariationChartType(chartType)) {\r\n variations.push(VARIATION_VALUE_CYCLICAL_KEY);\r\n }\r\n\r\n variations.forEach(variationDimValue => {\r\n const {data, dataAttributes} = getData({...filtersValue, [VARIATION_DIMENSION_KEY]: variationDimValue});\r\n const label = secondaryDim\r\n ? (\r\n getDimensionValueLabelFromJsonStat(jsonStat, secondaryDim, secondaryDimValue, labelFormat, t) +\r\n (variations.length > 1 ? ` (${getVariationValueLabels(t)[variationDimValue]})` : \"\")\r\n )\r\n : getVariationValueLabels(t)[variationDimValue];\r\n\r\n datasets.push({\r\n label: label,\r\n data: data,\r\n dataAttributes: dataAttributes,\r\n type: variationDimValue !== VARIATION_VALUE_VALUE_KEY\r\n ? getVariationChartType(chartType)\r\n : chartType === CHART_TYPE_LINE ? \"line\" : getChartType(chartType), // needed to fix line + bar chart\r\n yAxisID: variationDimValue !== VARIATION_VALUE_VALUE_KEY\r\n ? PERCENTAGE_AXES_ID\r\n : undefined,\r\n stack: variationDimValue !== VARIATION_VALUE_VALUE_KEY\r\n ? label\r\n : undefined,\r\n isVariation: variationDimValue !== VARIATION_VALUE_VALUE_KEY\r\n });\r\n });\r\n\r\n } else {\r\n const {data, dataAttributes} = getData(filtersValue);\r\n datasets.push({\r\n label: secondaryDim\r\n ? getDimensionValueLabelFromJsonStat(jsonStat, secondaryDim, secondaryDimValue, labelFormat, t)\r\n : \"\",\r\n data: data,\r\n type: chartType === CHART_TYPE_LINE ? \"line\" : getChartType(chartType), // needed to fix line + bar chart\r\n dataAttributes: dataAttributes\r\n });\r\n }\r\n\r\n return datasets;\r\n };\r\n\r\n if (secondaryDimValues && secondaryDimValues.length > 0) {\r\n secondaryDimValues.forEach((secondaryDimValue, secDimIdx) => {\r\n datasets = datasets.concat(getDataset(secondaryDimValue, secDimIdx));\r\n });\r\n\r\n } else {\r\n datasets = datasets.concat(getDataset());\r\n }\r\n\r\n let valorizedValues;\r\n\r\n if (chartType === CHART_TYPE_LINE && primaryDim === TIME_PERIOD_DIMENSION_KEY && timePeriodsByFreq) {\r\n let availableTimePeriods = [];\r\n if (filters.includes(FREQ_DIMENSION_KEY)) {\r\n availableTimePeriods = timePeriodsByFreq[filtersValue[FREQ_DIMENSION_KEY]];\r\n } else { // FREQ as secondary dimension\r\n secondaryDimValues.forEach(freq => availableTimePeriods = availableTimePeriods.concat(timePeriodsByFreq[freq]));\r\n }\r\n valorizedValues = primaryDimValues.map(primDimVal => availableTimePeriods.includes(primDimVal));\r\n\r\n } else if (secondaryDimValues && secondaryDimValues.length > 0) {\r\n valorizedValues = new Array(primaryDimValues.length);\r\n primaryDimValues.forEach((_, idx) => {\r\n let found = false;\r\n secondaryDimValues.forEach(secDimVal => {\r\n if (!found && valorizedDataMap[secDimVal][idx] === true) {\r\n found = true;\r\n }\r\n });\r\n valorizedValues[idx] = found;\r\n });\r\n\r\n } else {\r\n valorizedValues = [...valorizedDataArr];\r\n }\r\n\r\n datasets.forEach(dataset => {\r\n dataset.data = dataset.data.filter((_, idx) => valorizedValues[idx])\r\n dataset.dataAttributes = dataset.dataAttributes.filter((_, idx) => valorizedValues[idx])\r\n });\r\n\r\n const labels = [];\r\n primaryDimValues.forEach((value, idx) => {\r\n if (valorizedValues[idx]) {\r\n labels.push(getDimensionValueLabelFromJsonStat(jsonStat, primaryDim, value, labelFormat));\r\n }\r\n });\r\n\r\n const getPrimaryDimValueColors = datasetIdx => {\r\n return datasets[datasetIdx].data.map((_, valIdx) => {\r\n const idx = getNthValorizedElementIndexInBooleanArray(valorizedValues, valIdx);\r\n\r\n return chartSettings.chartColors?.[primaryDim]?.[primaryDimValues[idx]] ||\r\n chartSettings.chartColors?.[secondaryDim]?.[secondaryDimValues[datasetIdx]] ||\r\n (!secondaryDim && chartSettings.chartColors?.[primaryDim]?.[CHART_COLORS_ALL_DIMENSION_VALUES_KEY]) ||\r\n defaultColorArr[datasetIdx % defaultColorArr.length];\r\n });\r\n };\r\n\r\n const getDatasetColors = datasetIdx => {\r\n if (isBarChart(chartType)) {\r\n return getPrimaryDimValueColors(datasetIdx);\r\n\r\n } else if (isLineChart(chartType)) {\r\n return (secondaryDim && chartSettings.chartColors?.[secondaryDim]?.[secondaryDimValues[datasetIdx]]) ||\r\n (!secondaryDim && chartSettings.chartColors?.[primaryDim]?.[CHART_COLORS_ALL_DIMENSION_VALUES_KEY]) ||\r\n defaultColorArr[datasetIdx % defaultColorArr.length];\r\n\r\n } else {\r\n return datasets[datasetIdx].data.map((_, valIdx) => {\r\n const idx = getNthValorizedElementIndexInBooleanArray(valorizedValues, valIdx);\r\n\r\n return chartSettings.chartColors?.[primaryDim]?.[primaryDimValues[idx]] ||\r\n defaultColorArr[valIdx % defaultColorArr.length];\r\n });\r\n }\r\n };\r\n\r\n const getFill = datasetIdx => {\r\n let fill = false;\r\n if (chartType === CHART_TYPE_AREA) {\r\n fill = chartSettings.chartStacked\r\n ? datasetIdx === 0 ? \"origin\" : \"-1\"\r\n : \"origin\";\r\n } else if (chartType === CHART_TYPE_RADAR) {\r\n fill = \"origin\";\r\n }\r\n return fill\r\n };\r\n\r\n return {\r\n labels: labels,\r\n datasets: datasets.map((dataset, datasetIdx) => ({\r\n ...dataset,\r\n backgroundColor: getDatasetColors(datasetIdx),\r\n borderColor: isBarOrLineChart(chartType) ? getDatasetColors(datasetIdx) : \"white\",\r\n borderWidth: isBarOrLineChart(chartType) ? 2 : 1,\r\n lineTension: chartType === CHART_TYPE_AREA ? 0 : undefined,\r\n fill: getFill(datasetIdx),\r\n pointBackgroundColor: getPrimaryDimValueColors(datasetIdx),\r\n pointRadius: 4,\r\n pointHoverRadius: 4,\r\n pointBorderColor: \"white\",\r\n pointBorderWidth: 1,\r\n pointHoverBorderWidth: 1\r\n }))\r\n };\r\n};\r\n\r\nconst getOptions = (\r\n chartType,\r\n jsonStat,\r\n data,\r\n labelFormat,\r\n primaryDimLabel,\r\n decimalSeparator,\r\n decimalPlaces,\r\n chartSettings,\r\n disableWheelZoom,\r\n showTrend = false,\r\n showCyclical = false,\r\n defaultLanguage,\r\n languages,\r\n t\r\n) => {\r\n\r\n let max = 0;\r\n data.datasets.forEach(dataset => dataset.data.forEach(value => max = Math.max(max, Math.abs(value))));\r\n max += Math.floor(max / 100 * 20);\r\n\r\n const categoryAxisLabel = localizeI18nObj(chartSettings.chartCategoryAxisLabel, defaultLanguage, languages);\r\n const valueAxisLabel = localizeI18nObj(chartSettings.chartValueAxisLabel, defaultLanguage, languages);\r\n\r\n const xAxes = [];\r\n if ((isBarOrLineChart(chartType) && chartType !== CHART_TYPE_RADAR)) {\r\n xAxes.push({\r\n scaleLabel: (chartType !== CHART_TYPE_HORIZONTAL_BAR && chartType !== CHART_TYPE_PYRAMID)\r\n ? {\r\n display: chartSettings.chartShowAxesLabel,\r\n labelString: (chartSettings.chartCustomizeCategoryAxis && (categoryAxisLabel || \"\").length > 0)\r\n ? categoryAxisLabel\r\n : primaryDimLabel\r\n }\r\n : {\r\n display: (chartSettings.chartShowAxesLabel && (valueAxisLabel || \"\").length > 0),\r\n labelString: valueAxisLabel\r\n },\r\n gridLines: {\r\n display: chartType !== CHART_TYPE_BAR\r\n },\r\n ticks: {\r\n beginAtZero: (chartType === CHART_TYPE_HORIZONTAL_BAR || chartType === CHART_TYPE_PYRAMID),\r\n callback: value => {\r\n if (chartType === CHART_TYPE_HORIZONTAL_BAR || chartType === CHART_TYPE_PYRAMID) {\r\n const axisDecimalPlaces = decimalPlaces !== -1 ? decimalPlaces : AXIS_DECIMAL_PLACES_DEFAULT;\r\n if (chartType === CHART_TYPE_PYRAMID && data.datasets.length === 2 && value < 0) {\r\n return getFormattedValue(-value, decimalSeparator, axisDecimalPlaces);\r\n } else {\r\n return getFormattedValue(value, decimalSeparator, axisDecimalPlaces);\r\n }\r\n } else {\r\n return value;\r\n }\r\n },\r\n max: chartType === CHART_TYPE_PYRAMID ? max : undefined,\r\n min: chartType === CHART_TYPE_PYRAMID ? -(max) : undefined,\r\n },\r\n stacked: (chartType === CHART_TYPE_PYRAMID || (chartSettings.chartStacked && isBarOrLineChart(chartType)))\r\n });\r\n }\r\n\r\n const yAxes = [];\r\n if ((isBarOrLineChart(chartType) && chartType !== CHART_TYPE_RADAR)) {\r\n yAxes.push({\r\n scaleLabel: (chartType === CHART_TYPE_HORIZONTAL_BAR || chartType === CHART_TYPE_PYRAMID)\r\n ? {\r\n display: chartSettings.chartShowAxesLabel,\r\n labelString: (chartSettings.chartCustomizeCategoryAxis && (categoryAxisLabel || \"\").length > 0)\r\n ? categoryAxisLabel\r\n : primaryDimLabel\r\n }\r\n : {\r\n display: (chartSettings.chartShowAxesLabel && (valueAxisLabel || \"\").length > 0),\r\n labelString: valueAxisLabel\r\n },\r\n gridLines: {\r\n display: (chartType !== CHART_TYPE_HORIZONTAL_BAR && chartType !== CHART_TYPE_PYRAMID)\r\n },\r\n ticks: {\r\n beginAtZero: (chartType !== CHART_TYPE_HORIZONTAL_BAR && chartType !== CHART_TYPE_PYRAMID),\r\n callback: value => {\r\n if ((chartType !== CHART_TYPE_HORIZONTAL_BAR && chartType !== CHART_TYPE_PYRAMID)) {\r\n const axisDecimalPlaces = decimalPlaces !== -1 ? decimalPlaces : AXIS_DECIMAL_PLACES_DEFAULT;\r\n return getFormattedValue(value, decimalSeparator, axisDecimalPlaces);\r\n } else {\r\n return value;\r\n }\r\n }\r\n },\r\n stacked: (chartType === CHART_TYPE_PYRAMID || (chartSettings.chartStacked && isBarOrLineChart(chartType)))\r\n });\r\n if (jsonStat.id.includes(VARIATION_DIMENSION_KEY) && (showTrend || showCyclical) && getVariationChartType(chartType)) {\r\n yAxes.push({\r\n id: PERCENTAGE_AXES_ID,\r\n scaleLabel: {\r\n display: chartSettings.chartShowAxesLabel,\r\n labelString: t(\"components.chart.axis.variation.label\") + \" (%)\"\r\n },\r\n gridLines: {\r\n display: false\r\n },\r\n position: \"right\"\r\n });\r\n }\r\n }\r\n\r\n return {\r\n responsive: true,\r\n maintainAspectRatio: false,\r\n hover: {\r\n animationDuration: 0\r\n },\r\n scales: {\r\n xAxes: xAxes,\r\n yAxes: yAxes,\r\n },\r\n legend: {\r\n display: (!isBarOrLineChart(chartType) || (data.datasets || []).length > 1),\r\n position: chartSettings.chartLegendPosition\r\n },\r\n tooltips: {\r\n enabled: true,\r\n mode: \"point\",\r\n callbacks: {\r\n title: (tooltipItems, data) => (data.labels[tooltipItems[0].index] || ''),\r\n label: (tooltipItem, data) => {\r\n const getValue = dataset => {\r\n let value = dataset.data[tooltipItem.index];\r\n if (!value) {\r\n return null;\r\n }\r\n value = getFormattedValue(value, decimalSeparator, decimalPlaces);\r\n if (chartType === CHART_TYPE_PYRAMID && data.datasets.length === 2 && tooltipItem.datasetIndex === 0 && value[0] === \"-\") {\r\n return value.slice(1);\r\n } else {\r\n return value;\r\n }\r\n };\r\n const dataset = data.datasets[tooltipItem.datasetIndex];\r\n const value = getValue(dataset);\r\n return value\r\n ? `${dataset.label}: ${value}` + (dataset.isVariation ? \"%\" : \"\")\r\n : null;\r\n },\r\n footer: (tooltipItems, data) => {\r\n const datasetIdx = tooltipItems[0].datasetIndex;\r\n const dataIdx = tooltipItems[0].index;\r\n\r\n const attributes = data.datasets[datasetIdx].dataAttributes[dataIdx];\r\n const labels = [];\r\n\r\n /** observation **/\r\n if (attributes.observation && (attributes.observation.attributes || []).length > 0) {\r\n labels.push(t(\"components.chart.tooltip.attributes.observation.label\") + \":\"); // TODO\r\n attributes.observation.attributes.forEach(attr => {\r\n labels.push(`- ${getAttributeLabel(attr, labelFormat)}: ${getAttributeValueLabel(attr, labelFormat)}`);\r\n });\r\n }\r\n\r\n return labels;\r\n }\r\n },\r\n footerFontStyle: \"normal\",\r\n footerMarginTop: 12,\r\n },\r\n plugins: {\r\n zoom: disableWheelZoom\r\n ? {}\r\n : {\r\n pan: {\r\n enabled: (isBarOrLineChart(chartType) && chartType !== CHART_TYPE_RADAR),\r\n mode: () => (chartType === CHART_TYPE_HORIZONTAL_BAR || chartType === CHART_TYPE_PYRAMID) ? \"x\" : \"y\"\r\n },\r\n zoom: {\r\n enabled: (isBarOrLineChart(chartType) && chartType !== CHART_TYPE_RADAR),\r\n mode: () => (chartType === CHART_TYPE_HORIZONTAL_BAR || chartType === CHART_TYPE_PYRAMID) ? \"x\" : \"y\"\r\n }\r\n },\r\n datalabels: {\r\n labels: {\r\n value: {\r\n display: chartSettings.chartDataLabelType === CHART_DATA_LABEL_TYPE_NONE\r\n ? false\r\n : \"auto\",\r\n formatter: (value, ctx) => {\r\n const dataset = data.datasets[ctx.datasetIndex];\r\n\r\n if (chartSettings.chartDataLabelType === CHART_DATA_LABEL_TYPE_VALUE) {\r\n return getFormattedValue(value, decimalSeparator, decimalPlaces) + (dataset.isVariation ? \"%\" : \"\");\r\n\r\n } else if (chartSettings.chartDataLabelType === CHART_DATA_LABEL_TYPE_PERCENTAGE) {\r\n let sum = 0;\r\n dataset.data.forEach(data => {\r\n sum += data;\r\n });\r\n return (value * 100 / sum).toFixed(1) + \"%\";\r\n\r\n } else {\r\n return \"\";\r\n }\r\n },\r\n color: ctx => {\r\n const rgbaLightColor = \"rgba(255, 255, 255, 0.9)\";\r\n const rgbaDarkColor = \"rgba(42, 42, 42, 1)\";\r\n\r\n if (isLineChart(chartType)) {\r\n return rgbaDarkColor;\r\n }\r\n\r\n const color = ctx.dataset.backgroundColor[ctx.dataIndex];\r\n return color.startsWith(\"rgba\")\r\n ? getLightOrDarkColorBasedOnContrastRatio(color, rgbaLightColor, rgbaDarkColor)\r\n : rgbaLightColor;\r\n },\r\n font: {\r\n size: 14\r\n },\r\n align: (chartType === CHART_TYPE_HORIZONTAL_BAR || chartType === CHART_TYPE_PYRAMID) ? \"left\" : \"bottom\",\r\n offset: 2\r\n },\r\n attribute: {\r\n formatter: (value, ctx) => {\r\n const attributes = data.datasets[ctx.datasetIndex].dataAttributes[ctx.dataIndex];\r\n return (attributes?.observation !== null && attributes?.observation !== undefined)\r\n ? \"(*)\"\r\n : null;\r\n },\r\n font: {\r\n size: 12,\r\n family: \"Do Hyeon\"\r\n },\r\n align: (chartSettings.chartDataLabelType === CHART_DATA_LABEL_TYPE_NONE)\r\n ? \"center\"\r\n : (chartType === CHART_TYPE_HORIZONTAL_BAR || chartType === CHART_TYPE_PYRAMID)\r\n ? \"right\"\r\n : \"top\",\r\n offset: 2\r\n }\r\n },\r\n clamp: true\r\n }\r\n }\r\n }\r\n};\r\n\r\nclass Chart extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.chartRef = createRef();\r\n this.state = {\r\n data: null\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n const {\r\n t,\r\n defaultLanguage,\r\n languages,\r\n type,\r\n jsonStat,\r\n hiddenAttributes,\r\n layout,\r\n timePeriodsByFreq,\r\n disableWheelZoom = false,\r\n labelFormat = LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME,\r\n decimalSeparator,\r\n decimalPlaces,\r\n chartSettings: externalChartSettings,\r\n showTrend,\r\n showCyclical\r\n } = this.props;\r\n\r\n ChartJs.defaults.global.defaultFontFamily = \"'Roboto', 'Helvetica', 'Arial', sans-serif\";\r\n\r\n const chartSettings = getCompleteChartSettings(externalChartSettings);\r\n\r\n const data = getData(\r\n type,\r\n jsonStat,\r\n layout,\r\n hiddenAttributes,\r\n timePeriodsByFreq,\r\n labelFormat,\r\n chartSettings,\r\n showTrend,\r\n showCyclical,\r\n t\r\n );\r\n this.setState({data: data});\r\n\r\n const options = getOptions(\r\n type,\r\n jsonStat,\r\n data,\r\n labelFormat,\r\n getDimensionLabelFromJsonStat(jsonStat, layout.primaryDim[0], labelFormat),\r\n decimalSeparator,\r\n decimalPlaces,\r\n chartSettings,\r\n disableWheelZoom,\r\n showTrend,\r\n showCyclical,\r\n defaultLanguage,\r\n languages,\r\n t\r\n );\r\n\r\n this.myChart = new ChartJs(this.chartRef.current, {\r\n type: getChartType(type),\r\n data: data,\r\n options: options,\r\n plugins: [\r\n {\r\n beforeDraw: function (chart) {\r\n const ctx = chart.chart.ctx;\r\n ctx.fillStyle = \"white\";\r\n ctx.fillRect(0, 0, chart.chart.width, chart.chart.height);\r\n }\r\n }\r\n ]\r\n });\r\n }\r\n\r\n componentDidUpdate(prevProps) {\r\n const {\r\n t,\r\n defaultLanguage,\r\n languages,\r\n type,\r\n jsonStat,\r\n hiddenAttributes,\r\n layout,\r\n timePeriodsByFreq,\r\n disableWheelZoom,\r\n labelFormat,\r\n decimalSeparator,\r\n decimalPlaces,\r\n chartSettings: externalChartSettings,\r\n showTrend,\r\n showCyclical\r\n } = this.props;\r\n\r\n const prevChartSettings = getCompleteChartSettings(prevProps.chartSettings);\r\n const newChartSettings = getCompleteChartSettings(externalChartSettings);\r\n\r\n if (\r\n prevProps.jsonStat !== jsonStat ||\r\n prevProps.type !== type ||\r\n !_.isEqual(prevProps.layout, layout) ||\r\n (prevProps.disableWheelZoom !== disableWheelZoom) ||\r\n (prevProps.labelFormat !== labelFormat) ||\r\n (prevProps.decimalSeparator !== decimalSeparator) ||\r\n (prevProps.decimalPlaces !== decimalPlaces) ||\r\n !_.isEqual(prevChartSettings, newChartSettings) ||\r\n (prevProps.showTrend !== showTrend) ||\r\n (prevProps.showCyclical !== showCyclical)\r\n ) {\r\n\r\n const data = getData(\r\n type,\r\n jsonStat,\r\n layout,\r\n hiddenAttributes,\r\n timePeriodsByFreq,\r\n labelFormat,\r\n newChartSettings,\r\n showTrend,\r\n showCyclical,\r\n t\r\n );\r\n this.setState({data: data});\r\n\r\n const options = getOptions(\r\n type,\r\n jsonStat,\r\n data,\r\n labelFormat,\r\n getDimensionLabelFromJsonStat(jsonStat, layout.primaryDim[0], labelFormat),\r\n decimalSeparator,\r\n decimalPlaces,\r\n newChartSettings,\r\n disableWheelZoom,\r\n showTrend,\r\n showCyclical,\r\n defaultLanguage,\r\n languages,\r\n t\r\n );\r\n\r\n this.myChart.config.type = getChartType(type);\r\n this.myChart.data = data;\r\n this.myChart.options = options;\r\n this.myChart.update();\r\n }\r\n }\r\n\r\n render() {\r\n const {\r\n data\r\n } = this.state;\r\n\r\n const {\r\n t,\r\n classes,\r\n chartId = `cart__${uuidv4()}`,\r\n type,\r\n layout\r\n } = this.props;\r\n\r\n const isInvalidPyramid = (type === CHART_TYPE_PYRAMID && ((layout.secondaryDim || []).length !== 1 || (layout.secondaryDimValues || []).length !== 2));\r\n const dataCount = (data?.datasets || []).reduce((acc, {data}) => acc + data.length, 0);\r\n const isChartEmpty = dataCount === 0;\r\n\r\n const isChartVisible = (!isInvalidPyramid && !isChartEmpty);\r\n\r\n return (\r\n
\r\n {!isChartVisible && (\r\n \r\n )}\r\n \r\n
\r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n connect(state => ({\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages\r\n }))\r\n)(Chart);","export const SPINNER_MESSAGE_ADD = \"spinner/addMessage\";\r\nexport const SPINNER_MESSAGE_REMOVE = \"spinner/removeMessage\";\r\nexport const SPINNER_TIMEOUT_SET = \"spinner/setTimeout\";\r\nexport const SPINNER_TIMEOUT_CLEAR = \"spinner/clearTimeout\";\r\nexport const SPINNER_FLUSH = \"spinner/flush\";\r\n\r\nexport const addSpinnerMessage = (uid: any, message: any) => ({\r\n type: SPINNER_MESSAGE_ADD,\r\n payload: {\r\n uid,\r\n message\r\n }\r\n});\r\n\r\nexport const markSpinnerMessage = (uid: any, isError?: boolean) => ({\r\n type: SPINNER_MESSAGE_REMOVE,\r\n payload: {\r\n uid,\r\n isError\r\n }\r\n});\r\n\r\nexport const setSpinnerTimeout = (timeout: any) => ({\r\n type: SPINNER_TIMEOUT_SET,\r\n payload: {\r\n timeout\r\n }\r\n});\r\n\r\nexport const clearSpinnerTimeout = () => ({\r\n type: SPINNER_TIMEOUT_CLEAR\r\n});\r\n\r\nexport const flushSpinner = () => ({\r\n type: SPINNER_FLUSH\r\n});\r\n\r\n\r\n","import React, {useEffect, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport \"./style.css\";\r\nimport {getFormattedValue} from \"../../utils/formatters\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport Call from \"../../hocs/call/index\";\r\nimport {\r\n getAttributeLabel,\r\n getAttributeValueLabel,\r\n getDataIdxFromCoordinatesArray,\r\n getDimensionAttributeMap,\r\n getDimensionValueLabelFromJsonStat,\r\n getDimensionValuesIndexesMap,\r\n getObservationAttributeMap,\r\n VARIATION_DIMENSION_KEY,\r\n VARIATION_VALUE_VALUE_KEY\r\n} from \"../../utils/jsonStat\";\r\nimport {addSpinnerMessage, markSpinnerMessage} from \"../../state/spinner/spinnerActions\";\r\nimport {v4 as uuidv4} from \"uuid\";\r\nimport {connect} from \"react-redux\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport {getTextWidth} from \"../../utils/style\";\r\nimport SanitizedHTML from \"../sanitized-html\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst BASE_MAP_OSM = \"osm\";\r\nconst BASE_MAP_ITALY_REGIONS = \"italy_regions\";\r\n\r\nexport const getBaseMapOptions = t => [\r\n {\r\n value: BASE_MAP_OSM,\r\n label: t ? t(\"components.map.baseMap.osm\") : BASE_MAP_OSM\r\n },\r\n {\r\n value: BASE_MAP_ITALY_REGIONS,\r\n label: t ? t(\"components.map.baseMap.italyRegions\") : BASE_MAP_ITALY_REGIONS\r\n }\r\n];\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n map: {\r\n position: \"relative\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n zIndex: 0\r\n },\r\n detailLevelSelector: {\r\n position: \"absolute\",\r\n top: 0,\r\n left: 0,\r\n padding: 8,\r\n margin: 8,\r\n zIndex: 1,\r\n background: \"rgba(255, 255, 255, 0.7)\"\r\n },\r\n copyright: {\r\n position: \"absolute\",\r\n bottom: 0,\r\n right: 0,\r\n padding: \"0 4px\",\r\n zIndex: 1,\r\n fontSize: 12,\r\n background: \"rgba(255, 255, 255, 0.7)\"\r\n },\r\n attributesGrid: {\r\n display: \"table\",\r\n width: \"calc(100% + 24px)\",\r\n margin: \"-8px -12px\"\r\n },\r\n attributesTitle: {\r\n fontSize: 16,\r\n fontWeight: \"bold\"\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n hub: state.hub\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n addSpinner: (uuid, message) => dispatch(addSpinnerMessage(uuid, message)),\r\n markSpinner: (uuid, isError) => dispatch(markSpinnerMessage(uuid, isError))\r\n});\r\n\r\nexport const MAP_ZOOM_CONTROL_POSITION_TOP_LEFT = \"top-left-ol-zoom\";\r\nexport const MAP_ZOOM_CONTROL_POSITION_TOP_RIGHT = \"top-right-ol-zoom\";\r\nexport const MAP_ZOOM_CONTROL_POSITION_BOTTOM_LEFT = \"bottom-left-ol-zoom\";\r\nexport const MAP_ZOOM_CONTROL_POSITION_BOTTOM_RIGHT = \"bottom-right-ol-zoom\";\r\n\r\nconst validMapZoomControlPositions = [\r\n MAP_ZOOM_CONTROL_POSITION_TOP_LEFT,\r\n MAP_ZOOM_CONTROL_POSITION_TOP_RIGHT,\r\n MAP_ZOOM_CONTROL_POSITION_BOTTOM_LEFT,\r\n MAP_ZOOM_CONTROL_POSITION_BOTTOM_RIGHT\r\n];\r\n\r\nconst zoomControlPositionDefault = MAP_ZOOM_CONTROL_POSITION_BOTTOM_LEFT;\r\n\r\nexport const MAP_CLASSIFICATION_METHOD_DEFAULT = \"quantile\";\r\nexport const MAP_PALETTE_CARDINALITY_DEFAULT = 3;\r\nexport const MAP_PALETTE_COLOR_START_DEFAULT = \"#eff3ff\";\r\nexport const MAP_PALETTE_COLOR_END_DEFAULT = \"#2171b5\";\r\nexport const MAP_OPACITY_DEFAULT = 0.9;\r\nexport const MAP_IS_LEGEND_COLLAPSED_DEFAULT = true;\r\n\r\nfunction Map(props) {\r\n const {\r\n hub,\r\n classes,\r\n mapId = `map__${uuidv4()}`,\r\n jsonStat,\r\n layout,\r\n labelFormat,\r\n decimalSeparator,\r\n decimalPlaces,\r\n hiddenAttributes,\r\n onGeometryFetch,\r\n geometries,\r\n geometryDetailLevels,\r\n hideSpinner = false,\r\n isFullscreen,\r\n addSpinner,\r\n markSpinner,\r\n detailLevel: externalDetailLevel,\r\n setDetailLevel: setExternalDetailLevel,\r\n classificationMethod: externalClassificationMethod,\r\n paletteStartColor: externalPaletteStartColor,\r\n paletteEndColor: externalPaletteEndColor,\r\n paletteCardinality: externalPaletteCardinality,\r\n opacity: externalOpacity,\r\n isLegendCollapsed: externalIsLegendCollapsed,\r\n setSettings,\r\n zoomControlPosition = zoomControlPositionDefault,\r\n disableWheelZoom = false,\r\n readOnly = false,\r\n disableDetailLevelSelector = false,\r\n isGeometryData = false,\r\n enableLog = false\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [isRendering, setIsRendering] = useState(true);\r\n\r\n const [detailLevel, setDetailLevel] = useState(null);\r\n\r\n const [filteredGeometries, setFilteredGeometries] = useState(null);\r\n\r\n const [layerOptions, setLayerOptions] = useState(null);\r\n\r\n const [classificationMethod, setClassificationMethod] = useState(MAP_CLASSIFICATION_METHOD_DEFAULT);\r\n const [paletteStartColor, setPaletteStartColor] = useState(MAP_PALETTE_COLOR_START_DEFAULT);\r\n const [paletteEndColor, setPaletteEndColor] = useState(MAP_PALETTE_COLOR_END_DEFAULT);\r\n const [paletteCardinality, setPaletteCardinality] = useState(MAP_PALETTE_CARDINALITY_DEFAULT);\r\n const [opacity, setOpacity] = useState(MAP_OPACITY_DEFAULT);\r\n const [isLegendCollapsed, setIsLegendCollapsed] = useState(MAP_IS_LEGEND_COLLAPSED_DEFAULT);\r\n\r\n const [obsAttributeMap, setObsAttributeMap] = useState(null);\r\n const [dimAttributeMap, setDimAttributeMap] = useState(null);\r\n const [geometryIdMap, setGeometryIdMap] = useState(null);\r\n const [geometryId, setGeometryId] = useState(null);\r\n\r\n const [spinnerUuid] = useState(uuidv4());\r\n\r\n // destroy map on component unmount\r\n useEffect(() => {\r\n return () => {\r\n if (window.LMap.isInitialized(mapId)) {\r\n window.LMap.destroyMap(mapId);\r\n }\r\n }\r\n }, [mapId]);\r\n\r\n // dispatch resize event to handle fullscreen event\r\n useEffect(() => {\r\n window.dispatchEvent(new Event('resize'));\r\n }, [isFullscreen]);\r\n\r\n // check for missing geometry ids\r\n useEffect(() => {\r\n if (geometries !== null && geometries !== undefined && enableLog) {\r\n\r\n const geometryMap = {};\r\n geometries.forEach(g => geometryMap[g.id] = g);\r\n\r\n const missingGeometryList = [];\r\n jsonStat.dimension[layout.territoryDim].category.index.forEach(geomId => {\r\n if (!geometryMap[geomId]) {\r\n const missingEntry = {id: geomId, label: jsonStat.dimension[layout.territoryDim].category.label[geomId]};\r\n missingGeometryList.push(missingEntry);\r\n }\r\n });\r\n\r\n console.log(\"missing ids\", missingGeometryList);\r\n }\r\n setObsAttributeMap(getObservationAttributeMap(jsonStat, hiddenAttributes));\r\n setDimAttributeMap(getDimensionAttributeMap(jsonStat, hiddenAttributes));\r\n }, [geometries, jsonStat, layout, enableLog, hiddenAttributes]);\r\n\r\n // handle detail level\r\n useEffect(() => {\r\n if (geometryDetailLevels !== null && geometryDetailLevels !== undefined) {\r\n\r\n if (externalDetailLevel !== null && externalDetailLevel !== undefined && geometryDetailLevels.map(({level}) => level).includes(externalDetailLevel)) {\r\n setDetailLevel(prevDetailLevel => prevDetailLevel !== externalDetailLevel\r\n ? externalDetailLevel\r\n : prevDetailLevel\r\n );\r\n\r\n } else if (geometryDetailLevels && geometryDetailLevels?.length > 0) {\r\n const firstNotEmptyLevelIndex = geometryDetailLevels.findIndex(el => el);\r\n const newDetailLevel = geometryDetailLevels[firstNotEmptyLevelIndex].level;\r\n if (setExternalDetailLevel && newDetailLevel !== externalDetailLevel) {\r\n setExternalDetailLevel(newDetailLevel);\r\n } else {\r\n setDetailLevel(prevDetailLevel => prevDetailLevel !== newDetailLevel\r\n ? newDetailLevel\r\n : prevDetailLevel\r\n );\r\n }\r\n\r\n } else {\r\n const newDetailLevel = -1;\r\n if (setExternalDetailLevel && newDetailLevel !== externalDetailLevel) {\r\n setExternalDetailLevel(newDetailLevel);\r\n }\r\n setDetailLevel(prevDetailLevel => prevDetailLevel !== newDetailLevel\r\n ? newDetailLevel\r\n : prevDetailLevel\r\n );\r\n }\r\n }\r\n }, [mapId, geometryDetailLevels, externalDetailLevel, setExternalDetailLevel]);\r\n\r\n // calculate filtered geometries\r\n useEffect(() => {\r\n if (geometries !== null && geometries !== undefined && detailLevel !== null) {\r\n\r\n if (detailLevel >= 0) {\r\n\r\n const geometryMap = {};\r\n geometries.forEach(g => geometryMap[g.id] = g);\r\n\r\n const territoryDim = layout?.territoryDim;\r\n const territoryDimValues = jsonStat.dimension[territoryDim].category.index;\r\n const indexesMap = getDimensionValuesIndexesMap(jsonStat);\r\n\r\n let filtersValue = {...layout.filtersValue};\r\n\r\n if (jsonStat.id.includes(VARIATION_DIMENSION_KEY)) {\r\n filtersValue = {...filtersValue, [VARIATION_DIMENSION_KEY]: VARIATION_VALUE_VALUE_KEY};\r\n }\r\n\r\n const data = [];\r\n let levelsCounter = {};\r\n const newGeometryIdMap = {};\r\n\r\n territoryDimValues.forEach(territoryDimValue => {\r\n const dimValueArray = jsonStat.id.map(dim => {\r\n if (dim === territoryDim) {\r\n return territoryDimValue;\r\n } else {\r\n return filtersValue[dim];\r\n }\r\n });\r\n const valueIdx = getDataIdxFromCoordinatesArray(\r\n dimValueArray.map((value, idx) => indexesMap[jsonStat.id[idx]][value]),\r\n jsonStat.size\r\n );\r\n\r\n const getParsedValue = value => {\r\n if (value !== null && value !== \"\" && !isNaN(value)) {\r\n return Number(value);\r\n } else {\r\n return null;\r\n }\r\n };\r\n\r\n const value = getParsedValue(jsonStat.value[valueIdx]);\r\n const geom = geometryMap[territoryDimValue];\r\n\r\n if (value !== null && geom && geom.nutsLevel === +detailLevel) {\r\n const obsAttributes = obsAttributeMap?.[valueIdx]?.attributes || null;\r\n const dimAttributes = dimAttributeMap[territoryDim][territoryDimValue]?.attributes || null;\r\n const hasAttributes = (obsAttributes || []).concat(dimAttributes || []).length > 0;\r\n newGeometryIdMap[geom.uniqueId] = {\r\n hasAttributes: hasAttributes,\r\n obsAttributes: obsAttributes,\r\n dimAttributes: dimAttributes\r\n };\r\n\r\n data.push({\r\n value: value,\r\n identifier: geom.uniqueId,\r\n geometry: geom.wkt,\r\n label: getDimensionValueLabelFromJsonStat(jsonStat, territoryDim, territoryDimValue, labelFormat, t),\r\n suffix: hasAttributes\r\n ? t(\"components.map.tooltip.attributes.suffix\")\r\n : undefined\r\n });\r\n }\r\n if (value && geom?.nutsLevel >= 0) {\r\n if (!levelsCounter[geom.nutsLevel]) {\r\n levelsCounter[geom.nutsLevel] = 0;\r\n }\r\n levelsCounter[geom.nutsLevel]++;\r\n }\r\n });\r\n\r\n setFilteredGeometries(data);\r\n setGeometryIdMap(newGeometryIdMap);\r\n\r\n } else {\r\n markSpinner(spinnerUuid);\r\n setIsRendering(false);\r\n }\r\n }\r\n }, [geometries, detailLevel, jsonStat, layout, labelFormat, obsAttributeMap, dimAttributeMap, spinnerUuid, markSpinner, t]);\r\n\r\n // calculate layer options\r\n useEffect(() => {\r\n if (filteredGeometries !== null) {\r\n\r\n if (filteredGeometries.length > 0) {\r\n\r\n if (!hideSpinner) {\r\n addSpinner(spinnerUuid, t(\"components.map.spinners.rendering\"));\r\n } else {\r\n setIsRendering(true);\r\n }\r\n\r\n setLayerOptions({\r\n srid: \"EPSG:4326\",\r\n legendSettings: {\r\n classificationMethod: classificationMethod,\r\n paletteStartColor: paletteStartColor,\r\n paletteEndColor: paletteEndColor,\r\n paletteCardinality: paletteCardinality,\r\n opacity: opacity,\r\n isLegendCollapsed: isLegendCollapsed,\r\n pointStartRadius: 1,\r\n pointEndRadius: 9,\r\n pointRadiusCardinality: 9\r\n },\r\n onDataRender: function () {\r\n markSpinner(spinnerUuid);\r\n setIsRendering(false);\r\n },\r\n borderColor: [128, 128, 128, 0.5],\r\n valueFormatter: val => getFormattedValue(val, decimalSeparator, decimalPlaces, \"\"),\r\n centerMarker: isGeometryData\r\n ? \"data:image/png;base64,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\"\r\n : undefined,\r\n centerMarkerText: isGeometryData ? \"test\" : undefined,\r\n selectedCenterMarker: isGeometryData\r\n ? \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAADIklEQVR4AbXXA3hrWRQF4Ixt27Zt27atcGzbto3YeUZt2zbiNau+PVVO0uzv+9+r97o4UsVT6z7iUa1D66s9q26pc6+6td6lGpK0OuMF05BVaEs6jR6h949/1vzzdjrHz1tonJ+Qgc6hbbbUulbZUuuct8ZDdqCnKJsGCISTnjODAcCmY/yUTy/SzpurnSoGSbj5KZRGUYKSGECQTWdvrXcLIeSbVxIIkgFAdXQWDYWQDrAdrSCITnveiNPp1Bcs2NHgxKZqBzZ9ZMYg6bQjSV+9Tmx8Op1J93+1GD8vKcXiwkZYc5rwtqscZ7yzHFuy4ebTh3hi5H1wxRxgI1oqNj/nZQs+dxegsy8AsVp7/HjGWIRt9a7pQqTwEWxKMQc4mNonBXjehHctOQiEwpipBoNhqH/Pw2Zqhxigk46gmANcSMGJ5kZc+54LVS09mKsKG3tw4PMLGWJSgDBdIRPgZsKYU58z4pnfUxGKRDFXBcMR3PBVBjaZ+lLellCA9625iLV0f+YnHOBiCikDvPZvJqJRzFlR/tA9P+WIASJ0lUyAo6hbOe7v/GwhOvr8mKuau/048Y2l4ovYS8fLBNiGCgljznrJjH9TKjFXfbGoClvrXOLtL6MdZAKsSt8SlCPh6ndcWFbcNO2jiPCL1txm7P/sAnEEgH7iJLS6zDww9h74xSn4srcc+NJTgKL6TrT3+tHMCSi9uhPPmYqx11O+6eaAwNjz30rnkpqON6FFBGFCIiMuecOOGz704YTXFmO3J7zDjTcXr5xoOW1Oca2GNyknJNEJz5qwjVZoPFmY7qS4l+RNyJvAcrxEuPq47sJF1BtHgH66nMRVUDrEWvR1HAF+5G1fh+ZlT7gflUoEqKSDxKtPNMRd5I8hQJDu21ztEF+8hEOsSz/EEOB3Nt5A4sWTugt7Ud4sAYpof+Wkk4wQl1LXNAF66Gr5s4B8iNXoeQorAkTpVTZeXbz1yQqxMXfHfykCmGiz5DYXHsXZL5r2POFZc9b2ekfeZhrnvmye3AOqGGIXg1115NOWY3c12E/kIVV87smvTTRu1ca0yah4638QYUyY6yhczwAAAABJRU5ErkJggg==\"\r\n : undefined,\r\n disableSettings: readOnly,\r\n dataInfoDuration: 1000,\r\n onDataClick: id => {\r\n if (geometryIdMap[id].hasAttributes) {\r\n setGeometryId(id);\r\n }\r\n }\r\n });\r\n\r\n } else {\r\n markSpinner(spinnerUuid);\r\n setIsRendering(false);\r\n }\r\n }\r\n }, [decimalSeparator, decimalPlaces, filteredGeometries, isGeometryData, classificationMethod, paletteStartColor, paletteEndColor, paletteCardinality, opacity, isLegendCollapsed, readOnly, geometryIdMap, hideSpinner, spinnerUuid, addSpinner, markSpinner, t]);\r\n\r\n // init map and add layer or update layer with filtered geometries\r\n useEffect(() => {\r\n if (mapId && filteredGeometries !== null && layerOptions !== null) {\r\n\r\n setTimeout(function () {\r\n const legendTitle = t(\"components.map.translation.legend\");\r\n\r\n if (!window.LMap.isInitialized(mapId)) {\r\n\r\n const mapTranslations = {\r\n configure: t(\"components.map.translation.configure\"),\r\n opacity: t(\"components.map.translation.opacity\"),\r\n from: t(\"components.map.translation.from\"),\r\n to: t(\"components.map.translation.to\"),\r\n cancel: t(\"components.map.translation.cancel\"),\r\n apply: t(\"components.map.translation.apply\"),\r\n classification: t(\"components.map.translation.classification\"),\r\n equalInterval: t(\"components.map.translation.equalInterval\"),\r\n naturalBreaks: t(\"components.map.translation.naturalBreaks\"),\r\n quantile: t(\"components.map.translation.quantile\"),\r\n numberOfClasses: t(\"components.map.translation.numberOfClasses\"),\r\n startColor: t(\"components.map.translation.startColor\"),\r\n endColor: t(\"components.map.translation.endColor\"),\r\n preview: t(\"components.map.translation.preview\"),\r\n collapse: t(\"components.map.translation.collapse\"),\r\n uncollapse: t(\"components.map.translation.uncollapse\")\r\n };\r\n\r\n const hubExtras = JSON.parse(hub.hub.extras || \"{}\");\r\n\r\n const mapOptions = {\r\n baseMap: hubExtras?.BaseMap || \"italy_regions\",\r\n baseMapToGray: hubExtras?.BaseMap === BASE_MAP_OSM ? true : undefined,\r\n zoomControlClass: validMapZoomControlPositions.includes(zoomControlPosition) ? zoomControlPosition : zoomControlPositionDefault,\r\n disableWheelZoom: disableWheelZoom,\r\n onLoadingStart: function () {\r\n if (enableLog) {\r\n console.log(\"Map creation - start\");\r\n }\r\n },\r\n onLoadingFinish: function () {\r\n if (enableLog) {\r\n console.log(\"Map creation - done\");\r\n }\r\n },\r\n onSettingsChange: function (settings) {\r\n const {\r\n classificationMethod: newClassificationMethod,\r\n paletteStartColor: newPaletteStartColor,\r\n paletteEndColor: newPaletteEndColor,\r\n paletteCardinality: newPaletteCardinality,\r\n opacity: newOpacity,\r\n // isLegendCollapsed: newIsLegendCollapsed\r\n } = settings;\r\n\r\n if (setSettings) {\r\n setSettings({\r\n mapClassificationMethod: newClassificationMethod,\r\n mapPaletteStartColor: newPaletteStartColor,\r\n mapPaletteEndColor: newPaletteEndColor,\r\n mapPaletteCardinality: newPaletteCardinality,\r\n mapOpacity: newOpacity,\r\n // mapIsLegendCollapsed: newIsLegendCollapsed // commentato per evitare doppia render espandendo/collassando la legenda\r\n });\r\n } else {\r\n setClassificationMethod(newClassificationMethod);\r\n setPaletteStartColor(newPaletteStartColor);\r\n setPaletteEndColor(newPaletteEndColor);\r\n setPaletteCardinality(newPaletteCardinality);\r\n setOpacity(newOpacity);\r\n // setIsLegendCollapsed(newIsLegendCollapsed); // commentato per evitare doppia render espandendo/collassando la legenda\r\n }\r\n },\r\n legendFontFamily: \"Roboto\"\r\n };\r\n\r\n if (document.getElementById(mapId)) {\r\n window.LMap.initMap(mapId, mapOptions, mapTranslations);\r\n window.LMap.addLayer(mapId, filteredGeometries, legendTitle, layerOptions);\r\n }\r\n\r\n } else {\r\n if (document.getElementById(mapId)) {\r\n window.LMap.updateLayer(mapId, filteredGeometries, legendTitle, layerOptions);\r\n }\r\n }\r\n }, 1);\r\n\r\n setLayerOptions(null);\r\n }\r\n }, [hub, mapId, filteredGeometries, layerOptions, setSettings, disableWheelZoom, zoomControlPosition, enableLog, t]);\r\n\r\n // handle properties change\r\n useEffect(() => {\r\n if (externalClassificationMethod !== null && externalClassificationMethod !== undefined) {\r\n setClassificationMethod(externalClassificationMethod);\r\n }\r\n if (externalPaletteStartColor !== null && externalPaletteStartColor !== undefined) {\r\n setPaletteStartColor(externalPaletteStartColor);\r\n }\r\n if (externalPaletteEndColor !== null && externalPaletteEndColor !== undefined) {\r\n setPaletteEndColor(externalPaletteEndColor);\r\n }\r\n if (externalPaletteCardinality !== null && externalPaletteCardinality !== undefined) {\r\n setPaletteCardinality(externalPaletteCardinality);\r\n }\r\n if (externalOpacity !== null && externalOpacity !== undefined) {\r\n setOpacity(externalOpacity);\r\n }\r\n if (externalIsLegendCollapsed !== null && externalIsLegendCollapsed !== undefined) {\r\n setIsLegendCollapsed(externalIsLegendCollapsed);\r\n }\r\n }, [externalClassificationMethod, externalPaletteStartColor, externalPaletteEndColor, externalPaletteCardinality, externalOpacity, externalIsLegendCollapsed]);\r\n\r\n const isMapVisible = (!isRendering && filteredGeometries !== null && filteredGeometries.length > 0);\r\n\r\n const hubExtras = JSON.parse(hub.hub.extras || \"{}\");\r\n\r\n return (layout?.territoryDim && jsonStat.dimension[layout.territoryDim])\r\n ? (\r\n \r\n
\r\n {geometryDetailLevels !== null && geometryDetailLevels !== undefined && geometryDetailLevels.length > 1 && detailLevel !== null && detailLevel >= 0 && (\r\n
\r\n {(() => {\r\n const getTextWidthEl = $('').css({\r\n visibility: 'hidden',\r\n position: 'absolute',\r\n fontSize: 16\r\n }).appendTo('body').get(0);\r\n\r\n const label = t(\"components.map.detailLevel\");\r\n const Component = (\r\n \r\n {label}\r\n setExternalDetailLevel\r\n ? setExternalDetailLevel(ev.target.value)\r\n : setDetailLevel(ev.target.value)\r\n }\r\n disabled={disableDetailLevelSelector}\r\n SelectDisplayProps={{\"aria-haspopup\": true}}\r\n >\r\n {geometryDetailLevels.map(val =>\r\n {val.label}\r\n )}\r\n \r\n \r\n );\r\n\r\n $(getTextWidthEl).remove();\r\n\r\n return Component\r\n })()}\r\n
\r\n )}\r\n {(hubExtras?.MapCopyright || \"\").length > 0 && (\r\n \r\n \r\n
\r\n )}\r\n {detailLevel === null\r\n ? \r\n : isRendering\r\n ? \r\n : (filteredGeometries === null || filteredGeometries.length === 0)\r\n ? \r\n : \r\n }\r\n \r\n \r\n setGeometryId(null)}\r\n >\r\n setGeometryId(null)}>\r\n {t(\"components.map.dialogs.attributes.title\")}\r\n \r\n \r\n \r\n {geometryIdMap?.[geometryId]?.obsAttributes && (\r\n \r\n \r\n \r\n {t(\"components.map.dialogs.attributes.content.obsAttributes.title\")}\r\n \r\n {geometryIdMap[geometryId].obsAttributes.map((attribute, idx) =>\r\n \r\n {getAttributeLabel(attribute, labelFormat)}: {getAttributeValueLabel(attribute, labelFormat)}\r\n \r\n )}\r\n \r\n \r\n )}\r\n {geometryIdMap?.[geometryId]?.dimAttributes && (\r\n \r\n \r\n \r\n {t(\"components.map.dialogs.attributes.content.dimAttributes.title\")}\r\n \r\n {geometryIdMap[geometryId].dimAttributes.map((attribute, idx) =>\r\n \r\n {getAttributeLabel(attribute, labelFormat)}: {getAttributeValueLabel(attribute, labelFormat)}\r\n \r\n )}\r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n : ;\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps, mapDispatchToProps)\r\n)(Map);\r\n","export const isValidIntegerInInclusiveRange = (val, min, max) => {\r\n if (val === null || val === undefined || val === \"\" || isNaN(val) || !(/^[+-]?[0-9]*$/gm).test(val)) {\r\n return false;\r\n }\r\n\r\n const int = parseInt(val, 10);\r\n return !((min !== null && min !== undefined && int < min) || (max !== null && max !== undefined && int > max));\r\n}","const ACTION_EXTRAS = 'ACTION_EXTRAS';\r\nconst CURRENT_NODE_CONFIG = 'CURRENT_NODE_CONFIG';\r\n\r\nexport const getActionExtras = action => action[ACTION_EXTRAS];\r\nexport const getCurrentNodeConfig = action => action[CURRENT_NODE_CONFIG];\r\n\r\nconst actionDecoratorMiddlewareFactory = t => ({getState}) => next => action => {\r\n\r\n const state = getState();\r\n\r\n let decoratedAction = {\r\n ...action,\r\n [ACTION_EXTRAS]: {\r\n language: state?.app?.language,\r\n languages: state?.app?.languages,\r\n t: t\r\n },\r\n [CURRENT_NODE_CONFIG]: state?.node\r\n }\r\n\r\n return next(decoratedAction);\r\n\r\n};\r\n\r\nexport default actionDecoratorMiddlewareFactory;\r\n","import {Reducer} from \"@reduxjs/toolkit\";\r\nimport {REQUEST_ERROR, REQUEST_INIT, REQUEST_SUCCESS} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n ALL_FULL,\r\n ALL_PARTIAL,\r\n CRITERIA_SELECTION_MODE_ALL,\r\n CRITERIA_SELECTION_MODE_STEP_BY_STEP,\r\n CRITERIA_SELECTION_TYPE_DYNAMIC,\r\n CRITERIA_SELECTION_TYPE_FULL,\r\n CRITERIA_SELECTION_TYPE_PARTIAL,\r\n DATASET_CHART_FILTERS_TREE_SUBMIT,\r\n DATASET_CHART_LAYOUT_SUBMIT,\r\n DATASET_CHART_SETTINGS_SET,\r\n DATASET_CRITERIA_ALERT_HIDE,\r\n DATASET_CRITERIA_HIDE,\r\n DATASET_CRITERIA_SHOW,\r\n DATASET_DOWNLOAD_SUBMIT,\r\n DATASET_DOWNLOAD_WARNING_HIDE,\r\n DATASET_FETCH_ENABLE,\r\n DATASET_GEOMETRIES_FETCH,\r\n DATASET_HTML_GENERATING_TIME_SET,\r\n DATASET_LABEL_FORMAT_SET,\r\n DATASET_MAP_DETAIL_LEVEL_SET,\r\n DATASET_MAP_LAYOUT_SUBMIT,\r\n DATASET_MAP_SETTINGS_SET,\r\n DATASET_SDMX_QUERY_FETCH,\r\n DATASET_SDMX_QUERY_HIDE,\r\n DATASET_SDMX_QUERY_SHOW,\r\n DATASET_STATE_BACKUP,\r\n DATASET_STATE_RESET,\r\n DATASET_STRUCTURE_CODELIST_CRITERIA_SET,\r\n DATASET_STRUCTURE_CODELIST_FETCH,\r\n DATASET_STRUCTURE_CODELIST_TIME_PERIOD_SET,\r\n DATASET_STRUCTURE_CODELISTS_FETCH,\r\n DATASET_STRUCTURE_FETCH,\r\n DATASET_STRUCTURE_FETCH_ENABLE,\r\n DATASET_TABLE_FILTERS_TREE_SUBMIT,\r\n DATASET_TABLE_LAYOUT_SUBMIT,\r\n DATASET_UNAVAILABLE_VIEW_WARNING_HIDE,\r\n DATASET_VARIATION_SET,\r\n DATASET_VIEW_ERROR_HIDE,\r\n DATASET_VIEW_TEMPLATE_GEOMETRIES_FETCH,\r\n DATASET_VIEW_TEMPLATE_HIDE,\r\n DATASET_VIEW_TEMPLATE_SHOW,\r\n DATASET_VIEW_TEMPLATE_SUBMIT,\r\n DATASET_VIEWER_SET,\r\n STEP_BY_STEP_FULL,\r\n STEP_BY_STEP_PARTIAL\r\n} from \"./datasetActions\";\r\nimport {getTreeFromArray} from \"../../utils/tree\";\r\nimport {FREQ_DIMENSION_KEY, TIME_PERIOD_DIMENSION_KEY} from \"../../utils/jsonStat\";\r\nimport {LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME} from \"../../components/label-format-selector/constants\";\r\nimport {getViewerIdxFromType, getViewerTypeFromIdx} from \"../../components/data-viewer\";\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\nimport {\r\n FETCH_DATASET_ASYNC_HANDLER_ERROR,\r\n FETCH_DATASET_ASYNC_HANDLER_INIT,\r\n FETCH_DATASET_ASYNC_HANDLER_SUCCESS\r\n} from \"../../middlewares/fetchDatasetAsyncHandler/actions\";\r\nimport {\r\n CRITERIA_FILTER_TYPE_CODES,\r\n CRITERIA_FILTER_TYPE_EMPTY,\r\n CRITERIA_FILTER_TYPE_PERIODS,\r\n CRITERIA_FILTER_TYPE_RANGE,\r\n getCriteriaArrayFromObject,\r\n getCriteriaObjectFromArray,\r\n getFreq,\r\n getTimePeriod\r\n} from \"../../utils/criteria\";\r\nimport _ from \"lodash\";\r\nimport {CHART_DATA_LABEL_TYPE_DEFAULT, CHART_LEGEND_POSITION_DEFAULT} from \"../../components/chart\";\r\nimport {TABLE_EMPTY_CHAR_DEFAULT} from \"../../utils/formatters\";\r\nimport {getGeometryDetailLevels, getStorageDatasetKey} from \"../../utils/other\";\r\nimport {\r\n MAP_CLASSIFICATION_METHOD_DEFAULT,\r\n MAP_IS_LEGEND_COLLAPSED_DEFAULT,\r\n MAP_OPACITY_DEFAULT,\r\n MAP_PALETTE_CARDINALITY_DEFAULT,\r\n MAP_PALETTE_COLOR_END_DEFAULT,\r\n MAP_PALETTE_COLOR_START_DEFAULT\r\n} from \"../../components/map\";\r\nimport {isValidIntegerInInclusiveRange} from \"../../utils/validator\";\r\nimport {getCurrentNodeConfig} from \"../../middlewares/action-decorator/actionDecoratorMiddlewareFactory\";\r\n\r\nexport const GENERATING_HTML_TIME_KEY = \"generatingHtml\";\r\nexport const OBSERVATION_COUNT_KEY = \"observationCount\";\r\nexport const SERVER_TIMINGS_KEY = \"serverTimings\";\r\n\r\nconst MAX_ALLOWED_CELLS = 1000000;\r\n\r\ntype TimePeriod = {\r\n selectorType: string,\r\n freq: string | null,\r\n minDate: string | null,\r\n maxDate: string | null,\r\n fromDate: string | null,\r\n toDate: string | null,\r\n periods: number | null,\r\n missingRange: boolean\r\n};\r\n\r\nconst initialTimePeriod = {\r\n selectorType: CRITERIA_FILTER_TYPE_RANGE,\r\n freq: null,\r\n minDate: null,\r\n maxDate: null,\r\n fromDate: null,\r\n toDate: null,\r\n periods: null,\r\n missingRange: false\r\n};\r\n\r\ntype ChartSettings = {\r\n chartStacked: boolean,\r\n chartLegendPosition: string,\r\n chartColors: any,\r\n chartShowTitle: boolean,\r\n chartTitle: { [key: string]: string },\r\n chartShowFilters: boolean,\r\n chartShowAxesLabel: boolean,\r\n chartCustomizeCategoryAxis: boolean,\r\n chartCategoryAxisLabel: { [key: string]: string }\r\n chartValueAxisLabel: { [key: string]: string }\r\n chartDataLabelType: string\r\n};\r\n\r\nconst initialChartSettings = {\r\n chartStacked: false,\r\n chartLegendPosition: CHART_LEGEND_POSITION_DEFAULT,\r\n chartColors: {},\r\n chartShowTitle: true,\r\n chartTitle: {},\r\n chartShowFilters: true,\r\n chartShowAxesLabel: true,\r\n chartCustomizeCategoryAxis: false,\r\n chartCategoryAxisLabel: {},\r\n chartValueAxisLabel: {},\r\n chartDataLabelType: CHART_DATA_LABEL_TYPE_DEFAULT\r\n};\r\n\r\ntype MapSettings = {\r\n mapClassificationMethod: string,\r\n mapPaletteStartColor: string,\r\n mapPaletteEndColor: string,\r\n mapPaletteCardinality: number,\r\n mapOpacity: number,\r\n mapIsLegendCollapsed: boolean,\r\n mapShowTitle: boolean,\r\n mapTitle: { [key: string]: string },\r\n mapShowFilters: boolean\r\n};\r\n\r\nconst initialMapSettings = {\r\n mapClassificationMethod: MAP_CLASSIFICATION_METHOD_DEFAULT,\r\n mapPaletteStartColor: MAP_PALETTE_COLOR_START_DEFAULT,\r\n mapPaletteEndColor: MAP_PALETTE_COLOR_END_DEFAULT,\r\n mapPaletteCardinality: MAP_PALETTE_CARDINALITY_DEFAULT,\r\n mapOpacity: MAP_OPACITY_DEFAULT,\r\n mapIsLegendCollapsed: MAP_IS_LEGEND_COLLAPSED_DEFAULT,\r\n mapShowTitle: true,\r\n mapTitle: {},\r\n mapShowFilters: true\r\n};\r\n\r\ntype DatasetState = {\r\n datasetId: string | null,\r\n nodeCode: string | null\r\n categoryPath: string[] | null,\r\n viewId: string | null,\r\n dataset: any | null,\r\n isFirstFetch: boolean,\r\n isPartialData: boolean,\r\n isEmptyData: boolean,\r\n isTooBigData: boolean,\r\n isTooLongQuery: boolean,\r\n isCriteriaVisible: boolean,\r\n isCriteriaAlertVisible: boolean,\r\n dimensions: any[] | null,\r\n freqDimension: string | null,\r\n mode: string | null,\r\n type: string | null,\r\n viewerIdx: number,\r\n view: any | null,\r\n template: any | null,\r\n hasViewLayout: boolean,\r\n hasTemplateLayout: boolean,\r\n hasAnnotationLayout: boolean,\r\n tableLayout: any | null,\r\n mapLayout: any | null,\r\n chartLayout: any | null,\r\n tableFilterTree: any | null,\r\n mapFilterTree: any | null,\r\n chartFilterTree: any | null,\r\n timePeriodsByFreq: any | null,\r\n labelFormat: string | null,\r\n showTrend: boolean,\r\n showCyclical: boolean,\r\n criteria: object,\r\n initialCriteria: any | null,\r\n decimalSeparator: string | null,\r\n decimalPlaces: number | null\r\n tableEmptyChar: string,\r\n chartSettings: ChartSettings,\r\n mapDetailLevel: number | null,\r\n mapSettings: MapSettings\r\n hasMapStartColor: boolean | null,\r\n hasMapEndColor: boolean | null,\r\n enableCriteria: boolean,\r\n enableLayout: boolean,\r\n enableVariation: boolean,\r\n maxAllowedCells: number,\r\n codes: any[] | null,\r\n isCodesFlat: boolean,\r\n codelists: any[] | null,\r\n areCodelistsFlat: boolean[],\r\n codelistsLength: number[] | null,\r\n timePeriod: TimePeriod,\r\n criteriaObsCount: number | null,\r\n timings: any | null,\r\n isFetchStructureDisabled: boolean,\r\n isFetchDatasetDisabled: boolean,\r\n isDownloadWarningVisible: boolean,\r\n isUnavailableViewWarningVisible: boolean,\r\n geometries: any | null,\r\n geometryDetailLevels: any | null,\r\n backup: any | null,\r\n isViewVisible: boolean,\r\n isViewErrorVisible: boolean,\r\n viewErrorMessage: string | null,\r\n isTemplateVisible: boolean,\r\n templateGeometries: any | null,\r\n templateGeometryDetailLevels: any | null,\r\n isQueryVisible: boolean,\r\n structureQuery: string | null,\r\n dataQuery: string | null\r\n};\r\n\r\nconst initialState = {\r\n datasetId: null,\r\n nodeCode: null,\r\n categoryPath: null,\r\n viewId: null,\r\n dataset: null,\r\n isFirstFetch: false,\r\n isPartialData: false,\r\n isEmptyData: false,\r\n isTooBigData: false,\r\n isTooLongQuery: false,\r\n isCriteriaVisible: false,\r\n isCriteriaAlertVisible: false,\r\n dimensions: null,\r\n freqDimension: null,\r\n mode: null,\r\n type: null,\r\n viewerIdx: 0,\r\n view: null,\r\n template: null,\r\n hasViewLayout: false,\r\n hasTemplateLayout: false,\r\n hasAnnotationLayout: false,\r\n tableLayout: null,\r\n mapLayout: null,\r\n chartLayout: null,\r\n tableFilterTree: null,\r\n mapFilterTree: null,\r\n chartFilterTree: null,\r\n timePeriodsByFreq: null,\r\n labelFormat: null,\r\n showTrend: false,\r\n showCyclical: false,\r\n criteria: {},\r\n initialCriteria: null,\r\n decimalSeparator: null,\r\n decimalPlaces: null,\r\n tableEmptyChar: TABLE_EMPTY_CHAR_DEFAULT,\r\n chartSettings: initialChartSettings,\r\n mapDetailLevel: null,\r\n mapSettings: initialMapSettings,\r\n hasMapStartColor: null,\r\n hasMapEndColor: null,\r\n enableCriteria: true,\r\n enableLayout: true,\r\n enableVariation: false,\r\n maxAllowedCells: MAX_ALLOWED_CELLS,\r\n codes: null,\r\n isCodesFlat: false,\r\n codelists: null,\r\n areCodelistsFlat: [],\r\n codelistsLength: null,\r\n timePeriod: initialTimePeriod,\r\n criteriaObsCount: null,\r\n timings: null,\r\n isFetchStructureDisabled: true,\r\n isFetchDatasetDisabled: true,\r\n isDownloadWarningVisible: false,\r\n isUnavailableViewWarningVisible: false,\r\n geometries: null,\r\n geometryDetailLevels: null,\r\n backup: null,\r\n isViewVisible: false,\r\n isViewErrorVisible: false,\r\n viewErrorMessage: null,\r\n isTemplateVisible: false,\r\n templateGeometries: null,\r\n templateGeometryDetailLevels: null,\r\n isQueryVisible: false,\r\n structureQuery: null,\r\n dataQuery: null\r\n};\r\n\r\nconst datasetReducer: Reducer = (\r\n state = initialState,\r\n action\r\n) => {\r\n switch (action.type) {\r\n case DATASET_STATE_BACKUP: {\r\n return {\r\n ...state,\r\n backup: {\r\n viewId: state.viewId,\r\n datasetId: state.datasetId,\r\n nodeCode: state.nodeCode,\r\n categoryPath: state.categoryPath,\r\n template: {\r\n defaultView: getViewerTypeFromIdx(state.viewerIdx),\r\n criteria: getCriteriaArrayFromObject(state.criteria),\r\n layouts: JSON.stringify({\r\n labelFormat: state.labelFormat,\r\n showTrend: state.showTrend,\r\n showCyclical: state.showCyclical,\r\n tableLayout: state.tableLayout,\r\n mapLayout: state.mapLayout,\r\n chartLayout: state.chartLayout,\r\n tableEmptyChar: state.tableEmptyChar,\r\n ...state.chartSettings,\r\n mapDetailLevel: state.mapDetailLevel,\r\n ...state.mapSettings\r\n })\r\n }\r\n }\r\n }\r\n }\r\n case DATASET_STATE_RESET: {\r\n if (state.dataset) {\r\n const storageKey = getStorageDatasetKey({\r\n nodeCode: state.nodeCode,\r\n categoryPath: state.categoryPath,\r\n datasetId: state.datasetId,\r\n viewId: state.viewId\r\n });\r\n if (sessionStorage.getItem(storageKey) !== null && sessionStorage.getItem(storageKey) !== undefined) {\r\n sessionStorage.setItem(\r\n storageKey,\r\n JSON.stringify({\r\n defaultView: getViewerTypeFromIdx(state.viewerIdx),\r\n criteria: getCriteriaArrayFromObject(state.criteria),\r\n layouts: JSON.stringify({\r\n labelFormat: state.labelFormat,\r\n showTrend: state.showTrend,\r\n showCyclical: state.showCyclical,\r\n tableLayout: state.tableLayout,\r\n mapLayout: state.mapLayout,\r\n chartLayout: state.chartLayout,\r\n tableEmptyChar: state.tableEmptyChar,\r\n ...state.chartSettings,\r\n mapDetailLevel: state.mapDetailLevel,\r\n ...state.mapSettings\r\n })\r\n })\r\n );\r\n }\r\n }\r\n return {\r\n ...initialState,\r\n backup: state.backup\r\n }\r\n }\r\n case DATASET_STRUCTURE_FETCH_ENABLE: {\r\n return {\r\n ...initialState,\r\n isFetchStructureDisabled: false,\r\n datasetId: action.payload.datasetId,\r\n nodeCode: action.payload.nodeCode,\r\n categoryPath: action.payload.categoryPath,\r\n viewId: (action.payload.viewId || null),\r\n backup: state.backup\r\n }\r\n }\r\n case DATASET_FETCH_ENABLE: {\r\n return {\r\n ...state,\r\n isFetchDatasetDisabled: false,\r\n criteriaObsCount: null\r\n }\r\n }\r\n case DATASET_CRITERIA_SHOW: {\r\n return {\r\n ...state,\r\n isCriteriaVisible: true\r\n }\r\n }\r\n case DATASET_CRITERIA_HIDE: {\r\n return {\r\n ...state,\r\n isCriteriaVisible: false,\r\n criteria: state.initialCriteria,\r\n codes: null,\r\n isCodesFlat: false,\r\n codelists: null,\r\n areCodelistsFlat: [],\r\n timePeriod: initialTimePeriod\r\n }\r\n }\r\n case DATASET_CRITERIA_ALERT_HIDE: {\r\n return {\r\n ...state,\r\n isCriteriaAlertVisible: false\r\n }\r\n }\r\n case DATASET_STRUCTURE_CODELIST_CRITERIA_SET: {\r\n return {\r\n ...state,\r\n criteria: action.criteria,\r\n timePeriod: {\r\n ...state.timePeriod,\r\n freq: action.criteria[FREQ_DIMENSION_KEY]\r\n ? getFreq(action.criteria)\r\n : state.timePeriod.freq\r\n },\r\n criteriaObsCount: null\r\n }\r\n }\r\n case DATASET_STRUCTURE_CODELIST_TIME_PERIOD_SET: {\r\n let newCriteria = _.cloneDeep(state.criteria);\r\n const type = (action.timePeriod.selectorType || CRITERIA_FILTER_TYPE_EMPTY);\r\n\r\n let timePeriodCriteria = undefined;\r\n if (type !== CRITERIA_FILTER_TYPE_EMPTY || (type === CRITERIA_FILTER_TYPE_PERIODS && action.timePeriod.periods !== null)) {\r\n timePeriodCriteria = {\r\n id: TIME_PERIOD_DIMENSION_KEY,\r\n type: type,\r\n filterValues: null,\r\n period: type === CRITERIA_FILTER_TYPE_PERIODS ? action.timePeriod.periods : null,\r\n from: type === CRITERIA_FILTER_TYPE_RANGE ? action.timePeriod.fromDate : null,\r\n to: type === CRITERIA_FILTER_TYPE_RANGE ? action.timePeriod.toDate : null\r\n };\r\n }\r\n\r\n newCriteria = {\r\n ...newCriteria,\r\n [TIME_PERIOD_DIMENSION_KEY]: timePeriodCriteria\r\n };\r\n\r\n return {\r\n ...state,\r\n criteria: newCriteria,\r\n timePeriod: action.timePeriod,\r\n criteriaObsCount: null\r\n }\r\n }\r\n case DATASET_VIEWER_SET: {\r\n return {\r\n ...state,\r\n viewerIdx: action.viewerIdx\r\n }\r\n }\r\n case DATASET_TABLE_LAYOUT_SUBMIT: {\r\n return {\r\n ...state,\r\n tableLayout: action.layout\r\n }\r\n }\r\n case DATASET_TABLE_FILTERS_TREE_SUBMIT: {\r\n return {\r\n ...state,\r\n tableFilterTree: action.filterTree\r\n }\r\n }\r\n case DATASET_MAP_LAYOUT_SUBMIT: {\r\n return {\r\n ...state,\r\n mapLayout: action.layout\r\n }\r\n }\r\n case DATASET_CHART_LAYOUT_SUBMIT: {\r\n return {\r\n ...state,\r\n chartLayout: action.layout\r\n }\r\n }\r\n case DATASET_CHART_FILTERS_TREE_SUBMIT: {\r\n return {\r\n ...state,\r\n chartFilterTree: action.filterTree\r\n }\r\n }\r\n case DATASET_LABEL_FORMAT_SET: {\r\n return {\r\n ...state,\r\n labelFormat: action.labelFormat\r\n }\r\n }\r\n case DATASET_VARIATION_SET: {\r\n return {\r\n ...state,\r\n showTrend: action.variation?.showTrend || false,\r\n showCyclical: action.variation?.showCyclical || false\r\n }\r\n }\r\n case DATASET_CHART_SETTINGS_SET: {\r\n return {\r\n ...state,\r\n chartSettings: {\r\n ...state.chartSettings,\r\n ...action.chartSettings\r\n }\r\n }\r\n }\r\n case DATASET_MAP_DETAIL_LEVEL_SET: {\r\n return {\r\n ...state,\r\n mapDetailLevel: action.detailLevel\r\n }\r\n }\r\n case DATASET_MAP_SETTINGS_SET: {\r\n return {\r\n ...state,\r\n mapSettings: {\r\n ...state.mapSettings,\r\n ...action.mapSettings\r\n }\r\n }\r\n }\r\n case DATASET_DOWNLOAD_WARNING_HIDE: {\r\n return {\r\n ...state,\r\n isDownloadWarningVisible: false\r\n }\r\n }\r\n case DATASET_UNAVAILABLE_VIEW_WARNING_HIDE: {\r\n return {\r\n ...state,\r\n isUnavailableViewWarningVisible: false\r\n }\r\n }\r\n case DATASET_HTML_GENERATING_TIME_SET: {\r\n return {\r\n ...state,\r\n timings: {\r\n ...state.timings,\r\n [GENERATING_HTML_TIME_KEY]: action.time\r\n }\r\n }\r\n }\r\n case FETCH_DATASET_ASYNC_HANDLER_INIT: {\r\n return {\r\n ...state,\r\n isFetchDatasetDisabled: true\r\n }\r\n }\r\n case FETCH_DATASET_ASYNC_HANDLER_SUCCESS: {\r\n if (action.payload.worker) {\r\n action.payload.worker.terminate();\r\n }\r\n\r\n const isResponseValid = !action.payload.isResponseNotValid;\r\n\r\n return {\r\n ...state,\r\n isFirstFetch: false,\r\n\r\n dataset: isResponseValid ? action.payload.response : state.dataset,\r\n\r\n isTooBigData: action.payload.isTooBigData,\r\n isEmptyData: action.payload.isEmptyData,\r\n isPartialData: action.payload.isPartialData,\r\n\r\n isCriteriaVisible: !isResponseValid,\r\n isCriteriaAlertVisible: !isResponseValid,\r\n\r\n tableLayout: isResponseValid ? action.payload.tableLayout : state.tableLayout,\r\n mapLayout: isResponseValid ? action.payload.mapLayout : state.mapLayout,\r\n chartLayout: isResponseValid ? action.payload.chartLayout : state.chartLayout,\r\n\r\n tableFilterTree: isResponseValid ? action.payload.tableFilterTree : state.tableFilterTree,\r\n mapFilterTree: isResponseValid ? action.payload.mapFilterTree : state.mapFilterTree,\r\n chartFilterTree: isResponseValid ? action.payload.chartFilterTree : state.chartFilterTree,\r\n timePeriodsByFreq: isResponseValid ? action.payload.timePeriodsByFreq : state.timePeriodsByFreq,\r\n\r\n chartSettings: isResponseValid\r\n ? {\r\n ...state.chartSettings,\r\n chartTitle: {\r\n ...state.chartSettings.chartTitle,\r\n [action.payload.language]: (state.chartSettings.chartTitle[action.payload.language] !== null && state.chartSettings.chartTitle[action.payload.language] !== undefined)\r\n ? state.chartSettings.chartTitle[action.payload.language]\r\n : action.payload.response.label\r\n }\r\n }\r\n : state.chartSettings,\r\n\r\n mapSettings: isResponseValid\r\n ? {\r\n ...state.mapSettings,\r\n mapTitle: {\r\n ...state.mapSettings.mapTitle,\r\n [action.payload.language]: (state.mapSettings.mapTitle[action.payload.language] !== null && state.mapSettings.mapTitle[action.payload.language] !== undefined)\r\n ? state.mapSettings.mapTitle[action.payload.language]\r\n : action.payload.response.label\r\n }\r\n }\r\n : state.mapSettings,\r\n\r\n geometries: isResponseValid ? null : state.geometries,\r\n geometryDetailLevels: isResponseValid ? null : state.geometryDetailLevels,\r\n\r\n initialCriteria: isResponseValid ? state.criteria : state.initialCriteria,\r\n\r\n codes: isResponseValid ? null : state.codes,\r\n isCodesFlat: isResponseValid ? false : state.isCodesFlat,\r\n codelists: isResponseValid ? null : state.codelists,\r\n areCodelistsFlat: isResponseValid ? [] : state.areCodelistsFlat,\r\n\r\n timings: {\r\n [OBSERVATION_COUNT_KEY]: action.payload.response?.value ? Object.keys(action.payload.response.value).length : null,\r\n [SERVER_TIMINGS_KEY]: action.payload.responseHeaders.backendtimers\r\n ? JSON.parse(action.payload.responseHeaders.backendtimers)\r\n : null\r\n },\r\n\r\n structureQuery: null,\r\n dataQuery: null\r\n }\r\n }\r\n case FETCH_DATASET_ASYNC_HANDLER_ERROR: {\r\n const isPayloadTooLarge = action.payload.statusCode === 413;\r\n const isTooLongQuery = action.payload.statusCode === 414;\r\n\r\n return {\r\n ...state,\r\n dataset: null,\r\n isPartialData: false,\r\n isEmptyData: false,\r\n isTooBigData: isPayloadTooLarge,\r\n isTooLongQuery: isTooLongQuery,\r\n isCriteriaAlertVisible: (isPayloadTooLarge || isTooLongQuery)\r\n }\r\n }\r\n case DATASET_VIEW_TEMPLATE_SHOW: {\r\n return {\r\n ...state,\r\n isViewVisible: action.isView ? true : state.isViewVisible,\r\n isTemplateVisible: !action.isView ? true : state.isTemplateVisible\r\n }\r\n }\r\n case DATASET_VIEW_TEMPLATE_HIDE: {\r\n return {\r\n ...state,\r\n isViewVisible: action.isView ? false : state.isViewVisible,\r\n isTemplateVisible: !action.isView ? false : state.isTemplateVisible,\r\n templateGeometries: null,\r\n templateGeometryDetailLevels: null\r\n }\r\n }\r\n case DATASET_VIEW_ERROR_HIDE: {\r\n return {\r\n ...state,\r\n isViewErrorVisible: false,\r\n viewErrorMessage: null\r\n }\r\n }\r\n case DATASET_SDMX_QUERY_SHOW: {\r\n return {\r\n ...state,\r\n isQueryVisible: true\r\n }\r\n }\r\n case DATASET_SDMX_QUERY_HIDE: {\r\n return {\r\n ...state,\r\n isQueryVisible: false\r\n }\r\n }\r\n case REQUEST_INIT: {\r\n switch (action.payload.label) {\r\n case DATASET_STRUCTURE_FETCH: {\r\n return {\r\n ...state,\r\n isFirstFetch: true,\r\n isFetchStructureDisabled: true\r\n }\r\n }\r\n case DATASET_STRUCTURE_CODELIST_FETCH: {\r\n return {\r\n ...state,\r\n codes: null,\r\n isCodesFlat: false,\r\n criteriaObsCount: null\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n }\r\n case REQUEST_SUCCESS: {\r\n switch (action.payload.label) {\r\n case DATASET_STRUCTURE_FETCH: {\r\n const criteriaView = action.payload.response.criteriaView;\r\n\r\n const VIEW_KEY = \"view\";\r\n const TEMPLATE_KEY = \"template\";\r\n\r\n const storageKey = getStorageDatasetKey({\r\n nodeCode: state.nodeCode,\r\n categoryPath: state.categoryPath,\r\n datasetId: state.datasetId,\r\n viewId: state.viewId\r\n });\r\n\r\n const storageItem = sessionStorage.getItem(storageKey);\r\n const hasSessionBackup = (storageItem !== null && storageItem !== undefined && storageItem !== \"\");\r\n\r\n let viewTemplate = hasSessionBackup\r\n ? JSON.parse(storageItem || \"\")\r\n : action.payload.response[VIEW_KEY]\r\n ? action.payload.response[VIEW_KEY]\r\n : action.payload.response[TEMPLATE_KEY]\r\n ? action.payload.response[TEMPLATE_KEY]\r\n : null;\r\n\r\n const hasBackup = state.backup !== null && (\r\n state.backup.nodeCode === state.nodeCode &&\r\n (state.backup.categoryPath || []).join() === (state.categoryPath || []).join() &&\r\n state.backup.datasetId === state.datasetId &&\r\n (state.backup.viewId || \"\") === (state.viewId || \"\")\r\n );\r\n\r\n if (hasBackup && !hasSessionBackup) {\r\n viewTemplate = {\r\n ...viewTemplate,\r\n ...state.backup?.template\r\n }\r\n }\r\n\r\n let viewTemplateLayouts = viewTemplate\r\n ? JSON.parse(viewTemplate.layouts)\r\n : null;\r\n\r\n if (action.payload.response[VIEW_KEY]) {\r\n if (action.payload.response[TEMPLATE_KEY]) {\r\n const templateLayouts = JSON.parse(action.payload.response[TEMPLATE_KEY].layouts);\r\n viewTemplate = {\r\n ...viewTemplate,\r\n enableCriteria: action.payload.response[TEMPLATE_KEY].enableCriteria,\r\n enableLayout: action.payload.response[TEMPLATE_KEY].enableLayout,\r\n enableVariation: action.payload.response[TEMPLATE_KEY].enableVariation\r\n };\r\n viewTemplateLayouts = {\r\n ...viewTemplateLayouts,\r\n tableEmptyChar: templateLayouts.tableEmptyChar,\r\n tableLayout: (viewTemplateLayouts.tableLayout || templateLayouts.tableLayout),\r\n mapLayout: (viewTemplateLayouts.mapLayout || templateLayouts.mapLayout),\r\n chartLayout: (viewTemplateLayouts.chartLayout || templateLayouts.chartLayout)\r\n };\r\n\r\n } else {\r\n viewTemplate = {\r\n ...viewTemplate,\r\n enableCriteria: true,\r\n enableLayout: true,\r\n enableVariation: false\r\n };\r\n viewTemplateLayouts = {\r\n ...viewTemplateLayouts,\r\n tableEmptyChar: null\r\n };\r\n }\r\n }\r\n\r\n const tableLayout = viewTemplateLayouts?.tableLayout\r\n ? viewTemplateLayouts.tableLayout\r\n : action.payload.response.layout\r\n ? action.payload.response.layout\r\n : null;\r\n\r\n const mapLayout = viewTemplateLayouts?.mapLayout\r\n ? viewTemplateLayouts.mapLayout\r\n : null;\r\n\r\n const chartLayout = viewTemplateLayouts?.chartLayout\r\n ? viewTemplateLayouts.chartLayout\r\n : action.payload.response.layoutChart\r\n ? {\r\n ...action.payload.response.layoutChart,\r\n filters: undefined\r\n }\r\n : null;\r\n\r\n let structureCriteria = viewTemplate\r\n ? viewTemplate.criteria\r\n : action.payload.response.filters\r\n ? action.payload.response.filters\r\n : null;\r\n\r\n const criteria = getCriteriaObjectFromArray(structureCriteria);\r\n\r\n let viewerIdx = 0;\r\n\r\n if (viewTemplate) {\r\n viewerIdx = getViewerIdxFromType(viewTemplate.defaultView);\r\n\r\n } else if (action.payload.response.defaultView) {\r\n const type = action.payload.response.defaultView;\r\n if ((type || \"\").toLowerCase() === \"table\") {\r\n viewerIdx = 0;\r\n } else if ((type || \"\").toLowerCase() === \"map\") {\r\n viewerIdx = 1;\r\n } else if ((type || \"\").toLowerCase() === \"graph\") {\r\n viewerIdx = 2;\r\n }\r\n }\r\n\r\n const dimensions = (action.payload.response?.criteria || []);\r\n\r\n return {\r\n ...state,\r\n backup: null,\r\n hasViewLayout: !!action.payload.response[VIEW_KEY],\r\n hasTemplateLayout: !!action.payload.response[TEMPLATE_KEY],\r\n hasAnnotationLayout: !!action.payload.response.layout,\r\n view: action.payload.response[VIEW_KEY]\r\n ? {\r\n ...action.payload.response[VIEW_KEY],\r\n layouts: JSON.parse(action.payload.response[VIEW_KEY].layouts)\r\n }\r\n : null,\r\n template: action.payload.response[TEMPLATE_KEY]\r\n ? {\r\n ...action.payload.response[TEMPLATE_KEY],\r\n layouts: JSON.parse(action.payload.response[TEMPLATE_KEY].layouts)\r\n }\r\n : null,\r\n dimensions: dimensions,\r\n freqDimension: action.payload.response.freqDimension || null,\r\n mode: (criteriaView === ALL_FULL || criteriaView === ALL_PARTIAL)\r\n ? CRITERIA_SELECTION_MODE_ALL\r\n : CRITERIA_SELECTION_MODE_STEP_BY_STEP,\r\n type: (criteriaView === ALL_FULL || criteriaView === STEP_BY_STEP_FULL)\r\n ? CRITERIA_SELECTION_TYPE_FULL\r\n : (criteriaView === ALL_PARTIAL || criteriaView === STEP_BY_STEP_PARTIAL)\r\n ? CRITERIA_SELECTION_TYPE_PARTIAL\r\n : CRITERIA_SELECTION_TYPE_DYNAMIC,\r\n codelistsLength: state.codelistsLength ? state.codelistsLength : action.payload.response.criteria.map(() => null),\r\n isCriteriaVisible: structureCriteria === null,\r\n viewerIdx: viewerIdx,\r\n isUnavailableViewWarningVisible: (!!action.payload.extra?.viewId && !action.payload.response?.[VIEW_KEY]),\r\n tableLayout: tableLayout,\r\n mapLayout: mapLayout,\r\n chartLayout: chartLayout,\r\n labelFormat: (viewTemplateLayouts?.labelFormat || LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME),\r\n showTrend: (viewTemplateLayouts?.showTrend || false),\r\n showCyclical: (viewTemplateLayouts?.showCyclical || false),\r\n criteria: criteria,\r\n initialCriteria: criteria,\r\n decimalSeparator: (Object.keys(viewTemplate?.decimalSeparator || {}).length > 0)\r\n ? localizeI18nObj(viewTemplate.decimalSeparator, action.payload.extra.defaultLanguage, action.payload.extra.languages)\r\n : action.payload.response.decimalSeparator,\r\n decimalPlaces: (viewTemplate?.decimalNumber !== null && viewTemplate?.decimalNumber !== undefined && viewTemplate?.decimalNumber !== -1)\r\n ? viewTemplate?.decimalNumber\r\n : action.payload.response.decimalPlaces,\r\n tableEmptyChar: (viewTemplateLayouts?.tableEmptyChar !== null && viewTemplateLayouts?.tableEmptyChar !== undefined)\r\n ? viewTemplateLayouts.tableEmptyChar\r\n : action.payload.response.emptyCellPlaceHolder,\r\n chartSettings: {\r\n chartStacked: (viewTemplateLayouts?.chartStacked !== null && viewTemplateLayouts?.chartStacked !== undefined)\r\n ? viewTemplateLayouts.chartStacked\r\n : state.chartSettings.chartStacked,\r\n chartLegendPosition: (viewTemplateLayouts?.chartLegendPosition !== null && viewTemplateLayouts?.chartLegendPosition !== undefined)\r\n ? viewTemplateLayouts.chartLegendPosition\r\n : state.chartSettings.chartLegendPosition,\r\n chartColors: (viewTemplateLayouts?.chartColors !== null && viewTemplateLayouts?.chartColors !== undefined)\r\n ? viewTemplateLayouts.chartColors\r\n : state.chartSettings.chartColors,\r\n chartShowTitle: (viewTemplateLayouts?.chartShowTitle !== null && viewTemplateLayouts?.chartShowTitle !== undefined)\r\n ? viewTemplateLayouts.chartShowTitle\r\n : state.chartSettings.chartShowTitle,\r\n chartTitle: (viewTemplateLayouts?.chartTitle !== null && viewTemplateLayouts?.chartTitle !== undefined)\r\n ? viewTemplateLayouts.chartTitle\r\n : state.chartSettings.chartTitle,\r\n chartShowFilters: (viewTemplateLayouts?.chartShowFilters !== null && viewTemplateLayouts?.chartShowFilters !== undefined)\r\n ? viewTemplateLayouts.chartShowFilters\r\n : state.chartSettings.chartShowFilters,\r\n chartShowAxesLabel: (viewTemplateLayouts?.chartShowAxesLabel !== null && viewTemplateLayouts?.chartShowAxesLabel !== undefined)\r\n ? viewTemplateLayouts.chartShowAxesLabel\r\n : state.chartSettings.chartShowAxesLabel,\r\n chartCustomizeCategoryAxis: (viewTemplateLayouts?.chartCustomizeCategoryAxis !== null && viewTemplateLayouts?.chartCustomizeCategoryAxis !== undefined)\r\n ? viewTemplateLayouts.chartCustomizeCategoryAxis\r\n : state.chartSettings.chartCustomizeCategoryAxis,\r\n chartCategoryAxisLabel: (viewTemplateLayouts?.chartCategoryAxisLabel !== null && viewTemplateLayouts?.chartCategoryAxisLabel !== undefined)\r\n ? viewTemplateLayouts.chartCategoryAxisLabel\r\n : state.chartSettings.chartCategoryAxisLabel,\r\n chartValueAxisLabel: (viewTemplateLayouts?.chartValueAxisLabel !== null && viewTemplateLayouts?.chartValueAxisLabel !== undefined)\r\n ? viewTemplateLayouts.chartValueAxisLabel\r\n : state.chartSettings.chartValueAxisLabel,\r\n chartDataLabelType: (viewTemplateLayouts?.chartDataLabelType !== null && viewTemplateLayouts?.chartDataLabelType !== undefined)\r\n ? viewTemplateLayouts.chartDataLabelType\r\n : state.chartSettings.chartDataLabelType\r\n },\r\n mapDetailLevel: (viewTemplateLayouts?.mapDetailLevel !== null && viewTemplateLayouts?.mapDetailLevel !== undefined)\r\n ? viewTemplateLayouts.mapDetailLevel\r\n : state.mapDetailLevel,\r\n mapSettings: {\r\n mapClassificationMethod: (viewTemplateLayouts?.mapClassificationMethod !== null && viewTemplateLayouts?.mapClassificationMethod !== undefined)\r\n ? viewTemplateLayouts.mapClassificationMethod\r\n : state.mapSettings.mapClassificationMethod,\r\n mapPaletteStartColor: (viewTemplateLayouts?.mapPaletteStartColor !== null && viewTemplateLayouts?.mapPaletteStartColor !== undefined)\r\n ? viewTemplateLayouts.mapPaletteStartColor\r\n : state.mapSettings.mapPaletteStartColor,\r\n mapPaletteEndColor: (viewTemplateLayouts?.mapPaletteEndColor !== null && viewTemplateLayouts?.mapPaletteEndColor !== undefined)\r\n ? viewTemplateLayouts.mapPaletteEndColor\r\n : state.mapSettings.mapPaletteEndColor,\r\n mapPaletteCardinality: (viewTemplateLayouts?.mapPaletteCardinality !== null && viewTemplateLayouts?.mapPaletteCardinality !== undefined)\r\n ? viewTemplateLayouts.mapPaletteCardinality\r\n : state.mapSettings.mapPaletteCardinality,\r\n mapOpacity: (viewTemplateLayouts?.mapOpacity !== null && viewTemplateLayouts?.mapOpacity !== undefined)\r\n ? viewTemplateLayouts.mapOpacity\r\n : state.mapSettings.mapOpacity,\r\n mapIsLegendCollapsed: false, // proprietà cablata per evitare doppia update\r\n // mapIsLegendCollapsed: (viewTemplateLayouts?.mapIsLegendCollapsed !== null && viewTemplateLayouts?.mapIsLegendCollapsed !== undefined)\r\n // ? viewTemplateLayouts.mapIsLegendCollapsed\r\n // : state.mapSettings.mapIsLegendCollapsed,\r\n mapShowTitle: (viewTemplateLayouts?.mapShowTitle !== null && viewTemplateLayouts?.mapShowTitle !== undefined)\r\n ? viewTemplateLayouts.mapShowTitle\r\n : state.mapSettings.mapShowTitle,\r\n mapTitle: (viewTemplateLayouts?.mapTitle !== null && viewTemplateLayouts?.mapTitle !== undefined)\r\n ? viewTemplateLayouts.mapTitle\r\n : state.mapSettings.mapTitle,\r\n mapShowFilters: (viewTemplateLayouts?.mapShowFilters !== null && viewTemplateLayouts?.mapShowFilters !== undefined)\r\n ? viewTemplateLayouts.mapShowFilters\r\n : state.mapSettings.mapShowFilters,\r\n },\r\n hasMapStartColor: (viewTemplateLayouts?.mapPaletteStartColor !== null && viewTemplateLayouts?.mapPaletteStartColor !== undefined),\r\n hasMapEndColor: (viewTemplateLayouts?.mapPaletteEndColor !== null && viewTemplateLayouts?.mapPaletteEndColor !== undefined),\r\n enableCriteria: (viewTemplate?.enableCriteria !== false && dimensions.length > 0),\r\n enableLayout: viewTemplate?.enableLayout !== false,\r\n enableVariation: viewTemplate?.enableVariation === true,\r\n isFetchDatasetDisabled: structureCriteria === null,\r\n maxAllowedCells: (action.payload.response.maxTableCells || MAX_ALLOWED_CELLS),\r\n }\r\n }\r\n case DATASET_STRUCTURE_CODELIST_FETCH: {\r\n\r\n const dimensionCodelist = action.payload.response.criteria[0] || {};\r\n\r\n let flatCodes = dimensionCodelist.values ? dimensionCodelist.values : [];\r\n const codelistIdx = dimensionCodelist.id ? (state.dimensions || []).map(({id}: any) => id).indexOf(dimensionCodelist.id) : -1;\r\n\r\n const newCodelistsLength = state.codelistsLength ? [...state.codelistsLength] : [];\r\n if (codelistIdx >= 0 && dimensionCodelist.id !== TIME_PERIOD_DIMENSION_KEY) {\r\n newCodelistsLength[codelistIdx] = flatCodes.length;\r\n }\r\n\r\n let isCodesFlat = true;\r\n flatCodes.forEach((item: any) => {\r\n if (isCodesFlat && item.parentId !== null && item.parentId !== undefined) {\r\n isCodesFlat = false;\r\n }\r\n });\r\n\r\n let timePeriod = null;\r\n\r\n let newCriteria: any = _.cloneDeep(state.criteria);\r\n\r\n if (dimensionCodelist.id !== TIME_PERIOD_DIMENSION_KEY) {\r\n if (flatCodes.length === 1) {\r\n newCriteria = {\r\n ...newCriteria,\r\n [dimensionCodelist.id]: {\r\n id: dimensionCodelist.id,\r\n type: CRITERIA_FILTER_TYPE_CODES,\r\n filterValues: [flatCodes[0].id]\r\n }\r\n };\r\n }\r\n\r\n } else if (!newCriteria[TIME_PERIOD_DIMENSION_KEY]) {\r\n if (\r\n isValidIntegerInInclusiveRange(action.payload.extra.defaultLastNPeriods, 1) &&\r\n (state.type === CRITERIA_SELECTION_TYPE_DYNAMIC || state.type === CRITERIA_SELECTION_TYPE_PARTIAL)\r\n ) {\r\n newCriteria = {\r\n ...newCriteria,\r\n [TIME_PERIOD_DIMENSION_KEY]: {\r\n id: TIME_PERIOD_DIMENSION_KEY,\r\n type: CRITERIA_FILTER_TYPE_PERIODS,\r\n period: action.payload.extra.defaultLastNPeriods\r\n }\r\n };\r\n\r\n } else {\r\n timePeriod = getTimePeriod(\r\n state.timePeriod,\r\n newCriteria,\r\n dimensionCodelist,\r\n null,\r\n getCurrentNodeConfig(action)\r\n );\r\n\r\n newCriteria = {\r\n ...newCriteria,\r\n [TIME_PERIOD_DIMENSION_KEY]: {\r\n id: TIME_PERIOD_DIMENSION_KEY,\r\n type: CRITERIA_FILTER_TYPE_RANGE,\r\n from: timePeriod.fromDate,\r\n to: timePeriod.toDate\r\n }\r\n };\r\n }\r\n }\r\n\r\n return {\r\n ...state,\r\n criteria: newCriteria,\r\n codes: getTreeFromArray((flatCodes || []), \"parentId\", \"children\"),\r\n isCodesFlat: isCodesFlat,\r\n codelistsLength: newCodelistsLength,\r\n timePeriod: timePeriod || getTimePeriod(\r\n state.timePeriod,\r\n newCriteria,\r\n dimensionCodelist.id === TIME_PERIOD_DIMENSION_KEY ? dimensionCodelist : null,\r\n dimensionCodelist.id === FREQ_DIMENSION_KEY ? dimensionCodelist : null,\r\n getCurrentNodeConfig(action)\r\n ),\r\n criteriaObsCount: (state.mode === CRITERIA_SELECTION_MODE_STEP_BY_STEP && state.type === CRITERIA_SELECTION_TYPE_DYNAMIC)\r\n ? (action.payload.response?.obsCount || null)\r\n : null\r\n }\r\n }\r\n case DATASET_STRUCTURE_CODELISTS_FETCH: {\r\n\r\n const dimensionCodelists = (state.dimensions || []).map(({id: dimensionId}) => {\r\n const found = action.payload.response.criteria.find((criteria: any) => criteria.id === dimensionId);\r\n return {\r\n id: dimensionId,\r\n values: (found?.values || [])\r\n }\r\n });\r\n\r\n const flatCodelists = dimensionCodelists ? dimensionCodelists.map(({values}: any) => (values || [])) : [];\r\n\r\n let areCodelistsFlat = flatCodelists.map(() => true);\r\n flatCodelists.forEach((codelist: any, idx: number) => {\r\n codelist.forEach((item: any) => {\r\n if (areCodelistsFlat[idx] && item.parentId !== null && item.parentId !== undefined) {\r\n areCodelistsFlat[idx] = false;\r\n }\r\n })\r\n })\r\n\r\n const timePeriodIdx = (state.dimensions || []).map(({id}: any) => id).indexOf(TIME_PERIOD_DIMENSION_KEY);\r\n const freqIdx = (state.dimensions || []).map(({id}: any) => id).indexOf(FREQ_DIMENSION_KEY);\r\n\r\n let timePeriod = null;\r\n\r\n let newCriteria: any = _.cloneDeep(state.criteria);\r\n\r\n dimensionCodelists.forEach((dimensionCodelist, idx) => {\r\n\r\n if (dimensionCodelist.id !== TIME_PERIOD_DIMENSION_KEY) {\r\n if (flatCodelists[idx].length === 1) {\r\n newCriteria = {\r\n ...newCriteria,\r\n [dimensionCodelist.id]: {\r\n id: dimensionCodelist.id,\r\n type: CRITERIA_FILTER_TYPE_CODES,\r\n filterValues: [flatCodelists[idx][0].id],\r\n }\r\n };\r\n }\r\n\r\n } else if (!newCriteria[TIME_PERIOD_DIMENSION_KEY]) {\r\n if (\r\n isValidIntegerInInclusiveRange(action.payload.extra.defaultLastNPeriods, 1) &&\r\n state.type === CRITERIA_SELECTION_TYPE_PARTIAL\r\n ) {\r\n newCriteria = {\r\n ...newCriteria,\r\n [TIME_PERIOD_DIMENSION_KEY]: {\r\n id: TIME_PERIOD_DIMENSION_KEY,\r\n type: CRITERIA_FILTER_TYPE_PERIODS,\r\n period: action.payload.extra.defaultLastNPeriods,\r\n }\r\n };\r\n\r\n } else {\r\n timePeriod = getTimePeriod(\r\n state.timePeriod,\r\n newCriteria,\r\n dimensionCodelist,\r\n dimensionCodelists[freqIdx],\r\n getCurrentNodeConfig(action)\r\n );\r\n\r\n newCriteria = {\r\n ...newCriteria,\r\n [TIME_PERIOD_DIMENSION_KEY]: {\r\n id: TIME_PERIOD_DIMENSION_KEY,\r\n type: CRITERIA_FILTER_TYPE_RANGE,\r\n from: timePeriod.fromDate,\r\n to: timePeriod.toDate\r\n }\r\n };\r\n }\r\n }\r\n });\r\n\r\n return {\r\n ...state,\r\n codelists: flatCodelists.map((flatCodes: any) => getTreeFromArray((flatCodes || []), \"parentId\", \"children\")),\r\n areCodelistsFlat: areCodelistsFlat,\r\n timePeriod: timePeriod || getTimePeriod(\r\n state.timePeriod,\r\n newCriteria,\r\n dimensionCodelists[timePeriodIdx],\r\n dimensionCodelists[freqIdx],\r\n getCurrentNodeConfig(action)\r\n ),\r\n codelistsLength: flatCodelists.map((codelist: any, idx: number) => idx !== timePeriodIdx ? codelist.length : null),\r\n criteria: newCriteria\r\n }\r\n }\r\n case DATASET_GEOMETRIES_FETCH: {\r\n return {\r\n ...state,\r\n geometries: action.payload.response,\r\n geometryDetailLevels: getGeometryDetailLevels(action.payload.response, true, action.payload.extra.t)\r\n }\r\n }\r\n case DATASET_VIEW_TEMPLATE_GEOMETRIES_FETCH: {\r\n return {\r\n ...state,\r\n templateGeometries: action.payload.response,\r\n templateGeometryDetailLevels: getGeometryDetailLevels(action.payload.response, true, action.payload.extra.t)\r\n }\r\n }\r\n case DATASET_VIEW_TEMPLATE_SUBMIT: {\r\n return action.payload.extra.isView\r\n ? {\r\n ...state,\r\n isViewVisible: false,\r\n isTemplateVisible: false,\r\n templateGeometries: null,\r\n templateGeometryDetailLevels: null\r\n }\r\n : {\r\n ...initialState,\r\n isFetchStructureDisabled: false,\r\n datasetId: state.datasetId,\r\n nodeCode: state.nodeCode,\r\n categoryPath: state.categoryPath,\r\n viewId: state.viewId\r\n }\r\n }\r\n case DATASET_SDMX_QUERY_FETCH: {\r\n return {\r\n ...state,\r\n structureQuery: action.payload.response?.structureUrl || null,\r\n dataQuery: action.payload.response?.dataflowUrl || null\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n }\r\n case REQUEST_ERROR: {\r\n switch (action.payload.label) {\r\n case DATASET_STRUCTURE_FETCH: {\r\n return {\r\n ...initialState,\r\n datasetId: state.datasetId,\r\n nodeCode: state.nodeCode,\r\n categoryPath: state.categoryPath,\r\n viewId: state.viewId,\r\n enableCriteria: false,\r\n enableLayout: false\r\n }\r\n }\r\n case DATASET_STRUCTURE_CODELIST_FETCH: {\r\n const isTooLongQuery = action.payload.statusCode === 414;\r\n\r\n return {\r\n ...state,\r\n isTooLongQuery: isTooLongQuery,\r\n isCriteriaAlertVisible: isTooLongQuery\r\n }\r\n }\r\n case DATASET_STRUCTURE_CODELISTS_FETCH: {\r\n return {\r\n ...state\r\n }\r\n }\r\n case DATASET_GEOMETRIES_FETCH: {\r\n return {\r\n ...state,\r\n dataset: null,\r\n geometries: null,\r\n geometryDetailLevels: null\r\n }\r\n }\r\n case DATASET_DOWNLOAD_SUBMIT: {\r\n return {\r\n ...state,\r\n isDownloadWarningVisible: action.payload.statusCode === 406\r\n }\r\n }\r\n case DATASET_VIEW_TEMPLATE_SUBMIT: {\r\n return {\r\n ...state,\r\n isViewErrorVisible: !!(action.payload.extra.isView && action.payload.statusCode === 409 && action.payload.response),\r\n viewErrorMessage: action.payload.response\r\n }\r\n }\r\n case DATASET_SDMX_QUERY_FETCH: {\r\n return {\r\n ...state,\r\n isQueryVisible: false,\r\n structureQuery: null,\r\n dataQuery: null\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n};\r\n\r\nexport default datasetReducer;","export const NSI_RESPONSE_DOWNLOAD_SIZE_KEY = \"nsiResponseDownloadSize\";\r\nexport const TOTAL_KEY = \"total\";\r\n\r\nexport const getTimingsLabelTranslations = t => {\r\n\r\n const translations = t => ({\r\n nsiResponse: t(\"timings.nsiResponse\"),\r\n nsiResponseDownload: t(\"timings.nsiResponseDownload\"),\r\n [NSI_RESPONSE_DOWNLOAD_SIZE_KEY]: t(\"timings.nsiResponseDownloadSize\"),\r\n jsonToJsonStat: t(\"timings.jsonToJsonStat\"),\r\n xmlToJsonStat: t(\"timings.xmlToJsonStat\"),\r\n others: t(\"timings.others\"),\r\n [TOTAL_KEY]: t(\"timings.total\"),\r\n cacheRead: t(\"timings.cacheRead\"),\r\n variation: t(\"timings.variation\"),\r\n filterDataCache: t(\"timings.filterDataCache\")\r\n });\r\n\r\n return translations(t !== undefined ? t : str => str);\r\n};","import React, {Fragment} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport {GENERATING_HTML_TIME_KEY, OBSERVATION_COUNT_KEY, SERVER_TIMINGS_KEY} from \"../../state/dataset/datasetReducer\";\r\nimport {\r\n getTimingsLabelTranslations,\r\n NSI_RESPONSE_DOWNLOAD_SIZE_KEY,\r\n TOTAL_KEY\r\n} from \"../../constants/getTimingsLabelTranslation\";\r\n\r\nconst styles = theme => ({\r\n root: {},\r\n divider: {\r\n margin: \"16px 0\"\r\n }\r\n});\r\n\r\nconst getRow = (label, value, isTitle) => (\r\n \r\n \r\n {label}\r\n \r\n {value && (\r\n {value}\r\n )}\r\n \r\n);\r\n\r\nconst DataViewerTimings = ({\r\n t,\r\n classes,\r\n timings\r\n }) => {\r\n const rows = [];\r\n\r\n if (timings) {\r\n if (timings[GENERATING_HTML_TIME_KEY] !== null && timings[GENERATING_HTML_TIME_KEY] !== undefined) {\r\n rows.push(getRow(t(\"timings.observationCount\"), timings[OBSERVATION_COUNT_KEY], true));\r\n rows.push();\r\n }\r\n\r\n /** server side **/\r\n if (timings[SERVER_TIMINGS_KEY]) {\r\n\r\n rows.push(getRow(t(\"timings.serverTimings\"), null, true));\r\n\r\n for (const key in timings[SERVER_TIMINGS_KEY]) {\r\n if (timings[SERVER_TIMINGS_KEY].hasOwnProperty(key)) {\r\n if (key !== TOTAL_KEY && key !== NSI_RESPONSE_DOWNLOAD_SIZE_KEY) {\r\n rows.push(getRow(getTimingsLabelTranslations(t)[key] || key, timings[SERVER_TIMINGS_KEY][key]))\r\n }\r\n }\r\n }\r\n rows.push(getRow(getTimingsLabelTranslations(t)[TOTAL_KEY] || TOTAL_KEY, timings[SERVER_TIMINGS_KEY][TOTAL_KEY], true));\r\n rows.push();\r\n\r\n if (timings[SERVER_TIMINGS_KEY][NSI_RESPONSE_DOWNLOAD_SIZE_KEY]) {\r\n rows.push(getRow(getTimingsLabelTranslations(t)[NSI_RESPONSE_DOWNLOAD_SIZE_KEY] || NSI_RESPONSE_DOWNLOAD_SIZE_KEY, timings[SERVER_TIMINGS_KEY][NSI_RESPONSE_DOWNLOAD_SIZE_KEY], true));\r\n rows.push();\r\n }\r\n }\r\n\r\n /** client side **/\r\n if (timings[GENERATING_HTML_TIME_KEY] !== null && timings[GENERATING_HTML_TIME_KEY] !== undefined) {\r\n rows.push(getRow(t(\"timings.clientTimings\"), null, true));\r\n rows.push(getRow(t(\"timings.generatingHtml\"), `${timings[GENERATING_HTML_TIME_KEY]}ms`));\r\n }\r\n }\r\n\r\n return (\r\n \r\n {rows}\r\n \r\n )\r\n}\r\n\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(DataViewerTimings)","import React, {useState} from 'react';\r\nimport {TextField} from \"@material-ui/core\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport I18nInputAdornmentSelect from \"../i18n-input-adornment-select\";\r\nimport {connect} from \"react-redux\";\r\n\r\nconst Component = ({\r\n textFieldProps,\r\n defaultLanguage,\r\n languages,\r\n children\r\n }) => {\r\n\r\n const [language, setLanguage] = useState(defaultLanguage);\r\n\r\n return (\r\n {\r\n const res = {};\r\n languages.forEach(lang => {\r\n if (textFieldProps.value[lang]) {\r\n res[lang] = textFieldProps.value[lang];\r\n }\r\n });\r\n res[language] = target.value;\r\n textFieldProps.onChange(res);\r\n }}\r\n InputProps={{\r\n startAdornment: (\r\n \r\n setLanguage(lang)}/>\r\n \r\n )\r\n }}\r\n >\r\n {textFieldProps.children}\r\n \r\n );\r\n};\r\n\r\nconst ConnectedComponent =\r\n connect(state => ({\r\n languages: state.app.languages,\r\n defaultLanguage: state.app.language\r\n }))(Component);\r\n\r\nconst I18nTextField = props =>\r\n ;\r\n\r\nexport default I18nTextField;","import React from 'react';\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport I18nTextField from \"../i18n-text-field\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport {TIME_PERIOD_DIMENSION_KEY} from \"../../utils/jsonStat\";\r\nimport {CRITERIA_FILTER_TYPE_PERIODS} from \"../../utils/criteria\";\r\n\r\nconst ViewBuilder = ({\r\n t,\r\n view,\r\n onChange,\r\n criteria\r\n }) =>\r\n \r\n {criteria?.[TIME_PERIOD_DIMENSION_KEY]?.type === CRITERIA_FILTER_TYPE_PERIODS && (\r\n \r\n {t(\"scenes.dataViewer.viewTemplateBuilder.warnings.lastNPeriod\")}\r\n \r\n )}\r\n \r\n \r\n onChange({...view, title: value})}\r\n />\r\n \r\n \r\n \r\n\r\nexport default withTranslation()(ViewBuilder);","import {\r\n getCoordinatesArrayFromDataIdx,\r\n getDataIdxFromCoordinatesArray,\r\n getDimensionAttributeMap,\r\n getDimensionLabelFromJsonStat,\r\n getDimensionValueLabelFromJsonStat,\r\n getDimensionValuesIndexesMap,\r\n getObservationAttributeMap,\r\n TIME_PERIOD_DIMENSION_KEY,\r\n VARIATION_DIMENSION_KEY,\r\n VARIATION_VALUE_CYCLICAL_KEY,\r\n VARIATION_VALUE_TREND_KEY,\r\n VARIATION_VALUE_VALUE_KEY\r\n} from \"../../utils/jsonStat\";\r\nimport {getFormattedValue} from \"../../utils/formatters\";\r\nimport {getCombinationArrays, getNthValorizedElementIndexInBooleanArray} from \"../../utils/other\";\r\n\r\nconst TABLE_PREVIEW_PLACEHOLDER = \"xxx\";\r\nconst TABLE_SECTION_DIMENSIONS_SEPARATOR = '';\r\n\r\nconst TABLE_HEADER_CELL_TEXT_MAX_ROW_COUNT = 2;\r\n\r\nconst extendArr = (array, n) => {\r\n let arrays = Array.apply(null, new Array(n / array.length));\r\n arrays = arrays.map(() => array);\r\n return [].concat.apply([], arrays);\r\n};\r\n\r\nconst getRepCountMap = (jsonStat, arr, length) => {\r\n const obj = {};\r\n arr.forEach((el, idx) => {\r\n obj[el] = idx === 0\r\n ? length / jsonStat.size[jsonStat.id.indexOf(el)]\r\n : obj[arr[idx - 1]] / jsonStat.size[jsonStat.id.indexOf(el)];\r\n });\r\n\r\n return obj;\r\n};\r\n\r\nconst getDimValuesMap = (jsonStat, repCount, arr, length) => {\r\n const obj = {};\r\n\r\n arr.forEach(dim => {\r\n if (repCount[dim]) {\r\n obj[dim] = [];\r\n jsonStat.dimension[dim].category.index.forEach(value => {\r\n for (let j = 0; j < repCount[dim]; j++) {\r\n obj[dim].push(value);\r\n }\r\n });\r\n if (obj[dim].length < length) {\r\n obj[dim] = extendArr(obj[dim], length);\r\n }\r\n }\r\n });\r\n\r\n return obj;\r\n};\r\n\r\nconst getValorizedElCount = array => {\r\n let count = 0;\r\n\r\n array.forEach(el => {\r\n if (el === true) {\r\n count++;\r\n }\r\n });\r\n\r\n return count;\r\n};\r\n\r\nconst getJsonStatLayoutObjects = (jsonStat, rows, cols, sections, isPreview) => {\r\n\r\n /** rows handling **/\r\n let sectionRowCount = 1;\r\n (rows || []).forEach(row => sectionRowCount *= jsonStat.size[jsonStat.id.indexOf(row)]);\r\n\r\n /** cols handling **/\r\n let colCount = 1;\r\n (cols || []).forEach(col => colCount *= jsonStat.size[jsonStat.id.indexOf(col)]);\r\n\r\n /** sections handling **/\r\n const sectionArray = [];\r\n (sections || []).forEach(section => sectionArray.push(jsonStat.dimension[section].category.index));\r\n const sectionDimCombinations = sectionArray.length > 0\r\n ? getCombinationArrays(sectionArray)\r\n : [];\r\n\r\n const indexesMap = getDimensionValuesIndexesMap(jsonStat);\r\n\r\n const repCountMap = {\r\n ...getRepCountMap(jsonStat, rows, sectionRowCount),\r\n ...getRepCountMap(jsonStat, cols, colCount)\r\n };\r\n\r\n let dimValuesMap = null;\r\n if (!isPreview) {\r\n dimValuesMap = {\r\n ...getDimValuesMap(jsonStat, repCountMap, rows, sectionRowCount),\r\n ...getDimValuesMap(jsonStat, repCountMap, cols, colCount)\r\n };\r\n }\r\n\r\n return {\r\n sectionRowCount,\r\n colCount,\r\n sectionDimCombinations,\r\n indexesMap,\r\n repCountMap,\r\n dimValuesMap\r\n };\r\n};\r\n\r\nconst getCellAttributeIdsElem = (ids, htmlElemId, isDataCell) => {\r\n let idElems;\r\n const astElem = ' (*) ';\r\n\r\n if (!ids || ids.length === 0) {\r\n return \"\";\r\n\r\n } else {\r\n if (ids.length === 1 && ids[0].length <= 2) {\r\n idElems = ` ${ids[0]} `;\r\n } else {\r\n idElems = astElem;\r\n }\r\n }\r\n\r\n return `${idElems}`;\r\n};\r\n\r\nexport const getTableSupportStructures = (jsonStat, layout, isPreview, removeEmptyLines, hiddenAttributes, showTrend, showCyclical) => {\r\n\r\n if (isPreview) {\r\n return {\r\n layout,\r\n isPreview,\r\n showTrend,\r\n showCyclical\r\n };\r\n }\r\n\r\n const {\r\n rows,\r\n cols,\r\n filtersValue,\r\n sections\r\n } = layout;\r\n\r\n const {\r\n sectionRowCount,\r\n colCount,\r\n sectionDimCombinations,\r\n indexesMap,\r\n repCountMap,\r\n dimValuesMap\r\n } = getJsonStatLayoutObjects(jsonStat, rows, cols, sections, isPreview);\r\n\r\n /** empty rows & cols handling **/\r\n\r\n let valorizedRowsPerSection = (sectionDimCombinations && sectionDimCombinations.length > 0)\r\n ? sectionDimCombinations.map(() => [])\r\n : [[]];\r\n let valorizedCols = [];\r\n\r\n if (removeEmptyLines) {\r\n valorizedRowsPerSection = valorizedRowsPerSection.map(() => new Array(sectionRowCount).fill(false));\r\n valorizedCols = new Array(colCount).fill(false);\r\n\r\n const filterValueArray = jsonStat.id.map(dim => {\r\n if (filtersValue[dim]) {\r\n return indexesMap[dim][filtersValue[dim]]\r\n } else {\r\n return null\r\n }\r\n });\r\n Object.keys(jsonStat.value).forEach(key => {\r\n if (jsonStat.value[key] !== undefined) {\r\n const coordinates = getCoordinatesArrayFromDataIdx(key, jsonStat.size);\r\n\r\n let sectionIdx = 0;\r\n if (sections.length > 0) {\r\n const sectionValueArray = new Array(sections.length);\r\n coordinates.forEach((val, idx) => {\r\n const dim = jsonStat.id[idx];\r\n if (sections.includes(dim)) {\r\n sectionValueArray[sections.indexOf(dim)] = jsonStat.dimension[dim].category.index[val];\r\n }\r\n });\r\n sectionIdx = sectionDimCombinations.findIndex(combination => combination.join(\"+\") === sectionValueArray.join(\"+\"));\r\n }\r\n\r\n if (filterValueArray.filter((elem, idx) => elem !== null && elem !== coordinates[idx]).length === 0) {\r\n let y = 0;\r\n rows.forEach(row => {\r\n const val = coordinates[jsonStat.id.indexOf(row)];\r\n y += val * repCountMap[row];\r\n });\r\n\r\n let x = 0;\r\n cols.forEach(col => {\r\n const val = coordinates[jsonStat.id.indexOf(col)];\r\n x += val * repCountMap[col];\r\n });\r\n\r\n valorizedRowsPerSection[sectionIdx][y] = true;\r\n\r\n if (jsonStat.id.includes(VARIATION_DIMENSION_KEY)) {\r\n const variationDimValIdx = coordinates[jsonStat.id.indexOf(VARIATION_DIMENSION_KEY)];\r\n const variationDimVal = jsonStat.dimension[VARIATION_DIMENSION_KEY].category.index[variationDimValIdx];\r\n\r\n valorizedCols[x] = variationDimVal === VARIATION_VALUE_VALUE_KEY ||\r\n (variationDimVal === VARIATION_VALUE_TREND_KEY && showTrend) ||\r\n (variationDimVal === VARIATION_VALUE_CYCLICAL_KEY && showCyclical);\r\n\r\n } else {\r\n valorizedCols[x] = true;\r\n }\r\n }\r\n }\r\n });\r\n\r\n } else {\r\n valorizedRowsPerSection = valorizedRowsPerSection.map(() => new Array(sectionRowCount).fill(true));\r\n valorizedCols = new Array(colCount).fill(true);\r\n }\r\n\r\n let valorizedRows;\r\n if (Array.prototype.flat) {\r\n valorizedRows = valorizedRowsPerSection.flat();\r\n } else {\r\n valorizedRows = [];\r\n valorizedRowsPerSection.forEach(section => valorizedRows = valorizedRows.concat(section));\r\n }\r\n\r\n /** dimension attributes handling **/\r\n const dimAttributeMap = getDimensionAttributeMap(\r\n jsonStat,\r\n hiddenAttributes,\r\n (ids, dim, dimValue) => getCellAttributeIdsElem(ids, `${dim},${dimValue}`, false)\r\n );\r\n\r\n /** observation attributes handling **/\r\n const obsAttributeMap = getObservationAttributeMap(\r\n jsonStat,\r\n hiddenAttributes,\r\n (ids, obsIdx) => getCellAttributeIdsElem(ids, obsIdx, true)\r\n );\r\n\r\n return {\r\n layout,\r\n colCount: getValorizedElCount(valorizedCols),\r\n rowCount: getValorizedElCount(valorizedRows),\r\n repCountMap,\r\n dimValuesMap,\r\n sectionDimCombinations,\r\n indexesMap,\r\n valorizedCols,\r\n valorizedRows,\r\n valorizedRowsPerSection,\r\n sectionsLength: valorizedRowsPerSection[0].length,\r\n dimAttributeMap,\r\n obsAttributeMap,\r\n isPreview,\r\n showTrend,\r\n showCyclical\r\n };\r\n};\r\n\r\nconst getTableRightPadding = () => ``;\r\n\r\nconst getTableHeaderRightPadding = () => ``;\r\n\r\nexport const getTableHtml = (uuid, labelFormat, fontSize, decimalSeparator, decimalPlaces, emptyChar, paginationParams, tableSupportStructures, onTimeSet, t) => {\r\n\r\n const {\r\n jsonStat,\r\n layout,\r\n colCount,\r\n repCountMap,\r\n dimValuesMap,\r\n sectionDimCombinations,\r\n indexesMap,\r\n valorizedCols,\r\n valorizedRows,\r\n valorizedRowsPerSection,\r\n sectionsLength,\r\n dimAttributeMap,\r\n obsAttributeMap,\r\n isPreview,\r\n showTrend,\r\n showCyclical\r\n } = tableSupportStructures;\r\n\r\n const {\r\n rows,\r\n cols,\r\n filtersValue,\r\n sections\r\n } = layout;\r\n\r\n const t0 = performance.now();\r\n\r\n /** pagination **/\r\n\r\n let origColStart, origColEnd, rowStart, rowEnd, colStart, colEnd;\r\n\r\n if (!isPreview) {\r\n\r\n origColStart = paginationParams ? paginationParams.colStart : 0;\r\n origColEnd = paginationParams ? paginationParams.colEnd : colCount;\r\n\r\n rowStart = paginationParams\r\n ? getNthValorizedElementIndexInBooleanArray(valorizedRows, paginationParams.rowStart)\r\n : getNthValorizedElementIndexInBooleanArray(valorizedRows, 0);\r\n\r\n rowEnd = paginationParams\r\n ? getNthValorizedElementIndexInBooleanArray(valorizedRows, paginationParams.rowEnd)\r\n : getValorizedElCount(valorizedRows);\r\n\r\n colStart = paginationParams\r\n ? getNthValorizedElementIndexInBooleanArray(valorizedCols, paginationParams.colStart)\r\n : getNthValorizedElementIndexInBooleanArray(valorizedCols, 0);\r\n\r\n colEnd = paginationParams\r\n ? getNthValorizedElementIndexInBooleanArray(valorizedCols, paginationParams.colEnd)\r\n : getValorizedElCount(valorizedCols);\r\n\r\n }\r\n\r\n const getTextWidthEl = window.jQuery(\"\")\r\n .css({visibility: 'hidden'})\r\n .appendTo(`.jsonstat-table__${uuid}`).get(0);\r\n\r\n /** HTML generating **/\r\n\r\n let table = ``;\r\n\r\n /** table head **/\r\n\r\n table += '';\r\n\r\n cols\r\n .filter(col => col !== VARIATION_DIMENSION_KEY || showTrend || showCyclical)\r\n .forEach((col, idx) => {\r\n table += ``;\r\n\r\n const cellText = getDimensionLabelFromJsonStat(jsonStat, col, labelFormat, t);\r\n\r\n window.jQuery(getTextWidthEl).addClass(`c cf${fontSize} ch cl0`);\r\n window.jQuery(`${cellText}`).appendTo(getTextWidthEl);\r\n const minWidth = window.jQuery(getTextWidthEl).innerWidth();\r\n window.jQuery(getTextWidthEl).removeClass().empty();\r\n\r\n table += ``;\r\n\r\n if (!isPreview) {\r\n\r\n let c = colStart;\r\n let colVisited = origColStart;\r\n while (colVisited < origColEnd) {\r\n\r\n let fullColSpan = repCountMap[col] - (c % repCountMap[col]);\r\n let colSpan = valorizedCols.slice(c, c + fullColSpan).filter(el => el === true).length;\r\n\r\n if (colVisited + colSpan > origColEnd) {\r\n colSpan = origColEnd - colVisited;\r\n }\r\n\r\n if (colSpan > 0) {\r\n\r\n const cellText = getDimensionValueLabelFromJsonStat(jsonStat, col, dimValuesMap[col][c], labelFormat, t);\r\n const htmlString = (dimAttributeMap?.[col]?.[dimValuesMap[col][c]]?.htmlString || \"\");\r\n\r\n window.jQuery(getTextWidthEl).addClass(`c cf${fontSize} csh ${htmlString.length > 0 ? 'ca' : ''}`);\r\n window.jQuery(`${cellText + htmlString}`).appendTo(getTextWidthEl);\r\n const minWidth = window.jQuery(getTextWidthEl).innerWidth();\r\n window.jQuery(getTextWidthEl).removeClass().empty();\r\n\r\n table += (\r\n ``\r\n );\r\n }\r\n\r\n c += fullColSpan;\r\n colVisited += colSpan;\r\n }\r\n\r\n } else {\r\n for (let c = 0; c < 3; c++) {\r\n table += ``;\r\n }\r\n }\r\n\r\n table += getTableHeaderRightPadding();\r\n\r\n table += '';\r\n });\r\n\r\n if (rows.length > 0) {\r\n table += ``;\r\n rows.forEach((row, idx) => table += ``);\r\n if (!isPreview) {\r\n table += `';\r\n }\r\n\r\n table += '';\r\n\r\n /** table body **/\r\n\r\n table += '';\r\n\r\n if (!isPreview) {\r\n\r\n const sectionsStarts = [0];\r\n valorizedRowsPerSection.forEach((valorizedRows, idx) => sectionsStarts.push(sectionsStarts[idx] + valorizedRows.length));\r\n\r\n const subHeaderHandled = {};\r\n rows.forEach(row => subHeaderHandled[row] = -1);\r\n\r\n let currentSectionIdx = 0;\r\n for (let i = 0; i < sectionsStarts.length; i++) {\r\n if (rowStart >= sectionsStarts[i] && (i === sectionsStarts.length - 1 || rowStart < sectionsStarts[i + 1])) {\r\n currentSectionIdx = i;\r\n }\r\n }\r\n\r\n const getSectionRow = currentSectionIdx => {\r\n if (!valorizedRowsPerSection[currentSectionIdx].find(el => el)) {\r\n return \"\";\r\n }\r\n\r\n let sectionRow = ``;\r\n let sectionLabel = \"\";\r\n const currentSectionIdxClone = currentSectionIdx;\r\n sections.forEach((section, idx) => {\r\n\r\n const htmlString = (dimAttributeMap?.[section]?.[sectionDimCombinations[currentSectionIdxClone][idx]]?.htmlString || \"\");\r\n\r\n sectionLabel += (\r\n ` 0 ? 'ca' : ''}\" style=\"display: inline-block;\">` +\r\n `${getDimensionLabelFromJsonStat(jsonStat, section, labelFormat, t)}: ${getDimensionValueLabelFromJsonStat(jsonStat, section, sectionDimCombinations[currentSectionIdxClone][idx], labelFormat, t)}` +\r\n htmlString +\r\n ''\r\n );\r\n sectionLabel += idx < (sections.length - 1) ? `${TABLE_SECTION_DIMENSIONS_SEPARATOR}` : '';\r\n });\r\n\r\n sectionRow += ``;\r\n\r\n sectionRow += getTableRightPadding();\r\n\r\n sectionRow += '';\r\n\r\n return sectionRow;\r\n }\r\n\r\n if (sections && sections.length > 0) {\r\n table += getSectionRow(currentSectionIdx);\r\n }\r\n\r\n for (let r = rowStart; r < rowEnd; r++) {\r\n\r\n if (sections && sections.length > 0) {\r\n if (r > rowStart && sectionsStarts.indexOf(r) !== -1) {\r\n currentSectionIdx = sectionsStarts.indexOf(r);\r\n table += getSectionRow(currentSectionIdx);\r\n }\r\n }\r\n\r\n if (valorizedRows[r] === true) {\r\n\r\n table += ``;\r\n\r\n let subHeader = \"\";\r\n\r\n if (rows.length > 0) {\r\n for (let rr = 0; rr < rows.length; rr++) {\r\n\r\n const htmlString = (dimAttributeMap?.[rows[rr]]?.[dimValuesMap[rows[rr]][r % sectionsLength]]?.htmlString || \"\");\r\n\r\n if (r > subHeaderHandled[rows[rr]]) {\r\n\r\n let rowSpan = valorizedRows.slice(r, r + (repCountMap[rows[rr]] - (r % repCountMap[rows[rr]]))).filter(el => el === true).length;\r\n if (r + rowSpan > rowEnd) {\r\n rowSpan = rowEnd - r;\r\n }\r\n\r\n subHeaderHandled[rows[rr]] = r + (repCountMap[rows[rr]] - (r % repCountMap[rows[rr]])) - 1;\r\n\r\n if (rowSpan > 0) {\r\n subHeader += (\r\n ``\r\n );\r\n }\r\n }\r\n }\r\n\r\n } else {\r\n subHeader += ``\r\n );\r\n }\r\n\r\n for (let c = colStart; c < colEnd; c++) {\r\n if (valorizedCols[c] === true) {\r\n table += getDataCell(c, currentSectionIdx);\r\n }\r\n }\r\n\r\n table += getTableRightPadding();\r\n\r\n table += '';\r\n }\r\n\r\n }\r\n\r\n table += ``;\r\n\r\n } else {\r\n\r\n if (sections && sections.length > 0) {\r\n table += ``;\r\n let sectionLabel = \"\";\r\n sections.forEach((section, idx) => {\r\n sectionLabel += `${getDimensionLabelFromJsonStat(jsonStat, section, labelFormat, t)}: ${TABLE_PREVIEW_PLACEHOLDER}`;\r\n sectionLabel += idx < (sections.length - 1) ? `${TABLE_SECTION_DIMENSIONS_SEPARATOR}` : '';\r\n });\r\n table += ``;\r\n table += getTableRightPadding();\r\n table += '';\r\n }\r\n for (let r = 0; r < (rows.length > 0 ? 3 : 1); r++) {\r\n table += ``;\r\n if (rows.length > 0) {\r\n for (let rr = 0; rr < rows.length; rr++) {\r\n table += ``;\r\n }\r\n } else {\r\n table += ``\r\n }\r\n for (let c = 0; c < (cols.length > 0 ? 3 : 1); c++) {\r\n table += `';\r\n }\r\n table += ``;\r\n }\r\n\r\n table += '';\r\n\r\n table += '
${cellText} 0 ? 'ca' : ''}\" colspan=\"${colSpan}\" style=\"white-space: ${col === TIME_PERIOD_DIMENSION_KEY ? \"nowrap\" : \"normal\"}; min-width: ${(minWidth / TABLE_HEADER_CELL_TEXT_MAX_ROW_COUNT) + 24}px\">` +\r\n cellText +\r\n htmlString +\r\n `${TABLE_PREVIEW_PLACEHOLDER}
${getDimensionLabelFromJsonStat(jsonStat, row, labelFormat, t)}`;\r\n } else {\r\n table += ` 0 ? 3 : 1}\"/>`;\r\n }\r\n table += getTableHeaderRightPadding();\r\n table += '
${sectionLabel}
0 ? 'ca' : ''}\" rowspan=\"${rowSpan}\" style=\"white-space: ${rows[rr] === TIME_PERIOD_DIMENSION_KEY ? \"nowrap\" : \"normal\"}\">` +\r\n getDimensionValueLabelFromJsonStat(jsonStat, rows[rr], dimValuesMap[rows[rr]][r % sectionsLength], labelFormat, t) +\r\n htmlString +\r\n ``\r\n }\r\n\r\n table += subHeader;\r\n\r\n const getDataCell = (c, currentSectionIdx) => {\r\n\r\n const dataObj = {\r\n ...filtersValue\r\n };\r\n rows.forEach(row => dataObj[row] = dimValuesMap[row][r % sectionsLength]);\r\n cols.forEach(col => dataObj[col] = dimValuesMap[col][c]);\r\n sections.forEach((section, idx) => dataObj[section] = sectionDimCombinations[currentSectionIdx][idx]);\r\n\r\n const dataIndexArr = jsonStat.id.map(dim => indexesMap[dim][dataObj[dim]]);\r\n\r\n const dataIdx = getDataIdxFromCoordinatesArray(dataIndexArr, jsonStat.size);\r\n const value = jsonStat.value[dataIdx];\r\n\r\n const htmlString = (obsAttributeMap?.[dataIdx]?.htmlString || \"\");\r\n\r\n return (\r\n ` 0 ? 'ca' : ''}\">` +\r\n htmlString +\r\n getFormattedValue(value, decimalSeparator, decimalPlaces, emptyChar) +\r\n `
0 ? 0 : 1))}\">
0 ? 3 : 1)}\">${sectionLabel}
xxx `;\r\n }\r\n table += getTableRightPadding();\r\n table += '
0 ? 3 : 1)}\">
';\r\n\r\n table += '
'\r\n\r\n window.jQuery(getTextWidthEl).remove();\r\n\r\n const t1 = performance.now();\r\n if (!isPreview) {\r\n onTimeSet(Math.round((t1 - t0) * 100) / 100);\r\n }\r\n\r\n return table;\r\n};","import React, {useCallback, useEffect, useState} from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport Slider from \"@material-ui/core/Slider\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport ArrowDropUpIcon from '@material-ui/icons/ArrowDropUp';\r\nimport ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';\r\nimport ArrowLeftIcon from '@material-ui/icons/ArrowLeft';\r\nimport ArrowRightIcon from '@material-ui/icons/ArrowRight';\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport {useTranslation} from \"react-i18next\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nlet timeoutID = null;\r\nconst SCROLLBARS_TIMEOUT = 100;\r\nlet intervalID = null;\r\nconst SCROLLBARS_INTERVAL = 200;\r\n\r\nlet isOnMouseDownOnSliderThumb = null;\r\n\r\nconst WHEEL_DELTA = 1;\r\n\r\nexport const SLIDER_THICKNESS = 32;\r\nconst SLIDER_MARGIN = 4;\r\n\r\nconst SLIDER_RAIL_COLOR = \"#cfcfcf\";\r\nconst SLIDER_THUMB_COLOR = \"#808080\";\r\n\r\nconst styles = theme => ({\r\n root: {},\r\n button: {\r\n width: SLIDER_THICKNESS,\r\n height: SLIDER_THICKNESS,\r\n padding: 0,\r\n \"& svg\": {\r\n width: SLIDER_THICKNESS,\r\n height: SLIDER_THICKNESS,\r\n }\r\n },\r\n sliderRoot: {\r\n color: SLIDER_THUMB_COLOR\r\n },\r\n sliderTrack: {\r\n color: SLIDER_RAIL_COLOR,\r\n opacity: 1\r\n },\r\n sliderRail: {\r\n color: SLIDER_RAIL_COLOR,\r\n opacity: 1\r\n },\r\n spinnerOverlay: {\r\n width: \"100%\",\r\n height: \"100%\",\r\n position: \"absolute\",\r\n top: 0,\r\n left: 0\r\n }\r\n});\r\n\r\nconst isEventInContainer = (ev, container) => {\r\n const containerRect = container.getBoundingClientRect();\r\n const BUFFER = 32;\r\n\r\n return (\r\n ev.clientY >= (containerRect.top - BUFFER) &&\r\n ev.clientY <= (containerRect.bottom + BUFFER) &&\r\n ev.clientX >= (containerRect.left - BUFFER) &&\r\n ev.clientX <= (containerRect.right + BUFFER)\r\n );\r\n};\r\n\r\nfunction CustomSlider(props) {\r\n const {\r\n uuid,\r\n classes,\r\n orientation,\r\n value,\r\n maxValue,\r\n onChange,\r\n onIncrement,\r\n ticks,\r\n isVerticalScrollbarVisible\r\n } = props;\r\n\r\n useEffect(() => {\r\n const onMouseUp = () => {\r\n clearInterval(intervalID);\r\n isOnMouseDownOnSliderThumb = null;\r\n }\r\n window.addEventListener(\"mouseup\", onMouseUp);\r\n return () => window.removeEventListener(\"mouseup\", onMouseUp);\r\n }, []);\r\n\r\n useEffect(() => {\r\n window.jQuery(\".MuiSlider-thumb\").attr(\"tabindex\", \"-1\");\r\n });\r\n\r\n const handleChange = (value, ev, newValue, sliderId) => {\r\n const step = Math.ceil(ticks / 10);\r\n\r\n if (ev.type === \"mousedown\") {\r\n\r\n isOnMouseDownOnSliderThumb = isEventInContainer(ev, $(`#${sliderId} span.MuiSlider-thumb`)[0]);\r\n\r\n if (newValue < value) {\r\n if ((value - step) > newValue) {\r\n onIncrement(false, step, newValue);\r\n clearInterval(intervalID);\r\n intervalID = setInterval(\r\n () => onIncrement(false, step, newValue),\r\n SCROLLBARS_INTERVAL\r\n );\r\n } else {\r\n onChange(newValue);\r\n }\r\n } else {\r\n if ((value + step) < newValue) {\r\n onIncrement(true, step, newValue);\r\n clearInterval(intervalID);\r\n intervalID = setInterval(\r\n () => onIncrement(true, step, newValue),\r\n SCROLLBARS_INTERVAL\r\n );\r\n } else {\r\n onChange(newValue);\r\n }\r\n }\r\n\r\n } else if (ev.type === \"mousemove\" && isOnMouseDownOnSliderThumb) {\r\n onChange(newValue);\r\n }\r\n };\r\n\r\n return orientation === \"vertical\"\r\n ? (\r\n
\r\n {\r\n if (value > 0) {\r\n onIncrement(false, 1);\r\n intervalID = setInterval(\r\n () => onIncrement(false, 1),\r\n SCROLLBARS_INTERVAL\r\n );\r\n }\r\n }}\r\n disabled={value === 0}\r\n tabIndex={-1}\r\n >\r\n \r\n \r\n {\r\n const invertedValue = (ticks - newValue);\r\n handleChange(value, ev, invertedValue, `sliders__custom-sliders__vertical__${uuid}`)\r\n }}\r\n classes={{\r\n root: classes.sliderRoot,\r\n rail: classes.sliderRail,\r\n track: classes.sliderTrack\r\n }}\r\n style={{\r\n height: `calc(100% - ${SLIDER_THICKNESS + SLIDER_THICKNESS + SLIDER_MARGIN + SLIDER_MARGIN}px)`,\r\n padding: \"0 15px\",\r\n margin: `${SLIDER_MARGIN}px 0`\r\n }}\r\n />\r\n {\r\n if (value < (maxValue - 1)) {\r\n onIncrement(true, 1);\r\n intervalID = setInterval(\r\n () => onIncrement(true, 1),\r\n SCROLLBARS_INTERVAL\r\n );\r\n }\r\n }}\r\n disabled={value >= (maxValue - 1)}\r\n tabIndex={-1}\r\n >\r\n \r\n \r\n
\r\n )\r\n : (\r\n
\r\n {\r\n onIncrement(false, 1);\r\n intervalID = setInterval(\r\n () => onIncrement(false, 1),\r\n SCROLLBARS_INTERVAL\r\n );\r\n }}\r\n disabled={value === 0}\r\n tabIndex={-1}\r\n >\r\n \r\n \r\n handleChange(value, ev, newValue, `sliders__custom-sliders__horizontal__${uuid}`)}\r\n classes={{\r\n root: classes.sliderRoot,\r\n rail: classes.sliderRail,\r\n track: classes.sliderTrack\r\n }}\r\n style={{\r\n width: `calc(100% - ${SLIDER_THICKNESS + SLIDER_THICKNESS + SLIDER_MARGIN + SLIDER_MARGIN + (isVerticalScrollbarVisible ? SLIDER_THICKNESS : 0)}px)`,\r\n padding: \"15px 0\",\r\n margin: `0 ${SLIDER_MARGIN}px`\r\n }}\r\n />\r\n {\r\n onIncrement(true, 1);\r\n intervalID = setInterval(\r\n () => onIncrement(true, 1),\r\n SCROLLBARS_INTERVAL\r\n );\r\n }}\r\n disabled={value >= (maxValue - 1)}\r\n tabIndex={-1}\r\n >\r\n \r\n \r\n {isVerticalScrollbarVisible && (\r\n
\r\n )}\r\n
\r\n )\r\n}\r\n\r\nfunction Scrollbars(props) {\r\n const {\r\n classes,\r\n children,\r\n verticalValue,\r\n verticalMaxValue,\r\n verticalTicks,\r\n onVerticalScroll,\r\n isVerticalScrollbarVisible,\r\n horizontalValue,\r\n horizontalMaxValue,\r\n horizontalTicks,\r\n onHorizontalScroll,\r\n isHorizontalScrollbarVisible,\r\n disableWheelZoom\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [uuid] = useState(uuidv4());\r\n\r\n const [row, setRow] = useState(verticalValue);\r\n const [col, setCol] = useState(horizontalValue);\r\n\r\n const [isPaginating, setIsPaginating] = useState(false);\r\n\r\n const handleSliderScroll = (value, isVertical) => {\r\n if (isVertical) {\r\n setRow(value);\r\n if (value !== row) {\r\n setIsPaginating(true);\r\n }\r\n } else {\r\n setCol(value);\r\n if (value !== col) {\r\n setIsPaginating(true);\r\n }\r\n }\r\n };\r\n\r\n const getIncrementedValue = (prevValue, delta, isIncrement, limit) => isIncrement\r\n ? (prevValue + delta) > limit\r\n ? limit\r\n : (prevValue + delta)\r\n : (prevValue - delta) < limit\r\n ? limit\r\n : (prevValue - delta);\r\n\r\n const handleIncrement = (isIncrement, isVertical, delta, limit) => isVertical\r\n ? setRow(prevRow => isIncrement\r\n ? getIncrementedValue(prevRow, delta, isIncrement, (limit || (verticalMaxValue - 1)))\r\n : getIncrementedValue(prevRow, delta, isIncrement, (limit || 0))\r\n )\r\n : setCol(prevCol => isIncrement\r\n ? getIncrementedValue(prevCol, delta, isIncrement, (limit || (horizontalMaxValue - 1)))\r\n : getIncrementedValue(prevCol, delta, isIncrement, (limit || 0))\r\n );\r\n\r\n const handleWheelScroll = useCallback(\r\n ev => {\r\n const isVertical = ev.wheelDeltaY !== 0;\r\n const wheelDelta = isVertical\r\n ? ev.wheelDeltaY > 0 ? -WHEEL_DELTA : WHEEL_DELTA\r\n : ev.wheelDeltaX > 0 ? -WHEEL_DELTA : WHEEL_DELTA\r\n\r\n const isBetween = (val, min, max) => (val >= min && val < max);\r\n\r\n if (isVertical) {\r\n setRow(prevRow => {\r\n const newRow = isBetween(prevRow + wheelDelta, 0, verticalMaxValue) ? (prevRow + wheelDelta) : prevRow\r\n return isVerticalScrollbarVisible\r\n ? newRow\r\n : prevRow\r\n });\r\n } else {\r\n setCol(prevCol => {\r\n const newCol = isBetween(prevCol + wheelDelta, 0, horizontalMaxValue) ? (prevCol + wheelDelta) : prevCol;\r\n return isHorizontalScrollbarVisible\r\n ? newCol\r\n : prevCol\r\n });\r\n }\r\n },\r\n [isVerticalScrollbarVisible, isHorizontalScrollbarVisible, verticalMaxValue, horizontalMaxValue, setRow, setCol],\r\n );\r\n\r\n useEffect(() => {\r\n if (!disableWheelZoom) {\r\n document.getElementById(`scrollbars-container__${uuid}`).addEventListener(\"wheel\", handleWheelScroll);\r\n }\r\n return () => document.getElementById(`scrollbars-container__${uuid}`).removeEventListener(\"wheel\", handleWheelScroll);\r\n }, [uuid, disableWheelZoom, handleWheelScroll]);\r\n\r\n useEffect(() => {\r\n if (timeoutID) {\r\n clearTimeout(timeoutID);\r\n }\r\n\r\n timeoutID = setTimeout(\r\n () => {\r\n onVerticalScroll(row);\r\n onHorizontalScroll(col);\r\n setIsPaginating(false);\r\n },\r\n SCROLLBARS_TIMEOUT\r\n );\r\n }, [row, col, onVerticalScroll, onHorizontalScroll, setIsPaginating]);\r\n\r\n useEffect(() => {\r\n setRow(verticalValue);\r\n setCol(horizontalValue);\r\n }, [verticalValue, horizontalValue, setRow, setCol]);\r\n\r\n return (\r\n
\r\n
\r\n \r\n
{children}
\r\n {isPaginating && (\r\n
\r\n }\r\n style={{\r\n color: \"#ffffff\",\r\n backgroundColor: \"rgba(0, 0, 0, 0.1)\"\r\n }}\r\n />\r\n
\r\n )}\r\n
\r\n {isVerticalScrollbarVisible && (\r\n handleSliderScroll(value, true)}\r\n onIncrement={(isIncrement, delta, limit) => handleIncrement(isIncrement, true, delta, limit)}\r\n ticks={verticalTicks}\r\n isVerticalScrollbarVisible={isVerticalScrollbarVisible}\r\n />\r\n )}\r\n
\r\n {\r\n isHorizontalScrollbarVisible && (\r\n handleSliderScroll(value, false)}\r\n onIncrement={(isIncrement, delta, limit) => handleIncrement(isIncrement, false, delta, limit)}\r\n ticks={horizontalTicks}\r\n isVerticalScrollbarVisible={isVerticalScrollbarVisible}\r\n />\r\n )\r\n }\r\n
\r\n )\r\n}\r\n\r\nexport default withStyles(styles)(Scrollbars)","import React, {Fragment, useCallback, useEffect, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {getTableHtml} from \"./utils\";\r\nimport \"./style.css\"\r\nimport {setDatasetHtmlGeneratingTime} from \"../../state/dataset/datasetActions\";\r\nimport Scrollbars, {SLIDER_THICKNESS} from \"./Scrollbars\";\r\nimport {addSpinnerMessage, markSpinnerMessage} from \"../../state/spinner/spinnerActions\";\r\nimport Snackbar from '@material-ui/core/Snackbar';\r\nimport Alert from '@material-ui/lab/Alert';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME} from \"../label-format-selector/constants\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport {sanitize} from \"dompurify\";\r\nimport {getAttributeLabel, getAttributeValueLabel, VARIATION_DIMENSION_KEY} from \"../../utils/jsonStat\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nexport const JSONSTAT_TABLE_FONT_SIZE_SM = \"s\";\r\nexport const JSONSTAT_TABLE_FONT_SIZE_MD = \"m\";\r\nexport const JSONSTAT_TABLE_FONT_SIZE_LG = \"l\";\r\n\r\nconst COLS_PER_PAGE = 30;\r\nconst ROWS_PER_PAGE = 50;\r\n\r\nconst SLIDER_SAFETY_MARGIN_PERCENTAGE = 20;\r\n\r\nlet isFirstRender = false;\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n table: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n }\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n onTimeSet: time => dispatch(setDatasetHtmlGeneratingTime(time)),\r\n addSpinner: (uuid, message) => dispatch(addSpinnerMessage(uuid, message)),\r\n removeSpinner: (uuid, isError) => dispatch(markSpinnerMessage(uuid, isError)),\r\n});\r\n\r\nconst isElementInContainer = (el, container, isVerticalScrollbarVisible, isHorizontalScrollbarVisible, checkOnlyVertical) => {\r\n const containerRect = container.getBoundingClientRect();\r\n const elementRect = el.getBoundingClientRect();\r\n\r\n return (\r\n elementRect.top >= containerRect.top &&\r\n elementRect.bottom <= (containerRect.bottom - (isHorizontalScrollbarVisible ? SLIDER_THICKNESS : 0)) &&\r\n (checkOnlyVertical === true || (\r\n elementRect.left >= containerRect.left &&\r\n elementRect.right <= (containerRect.right - (isVerticalScrollbarVisible ? SLIDER_THICKNESS : 0))\r\n ))\r\n );\r\n}\r\n\r\nfunction Table(props) {\r\n const {\r\n classes,\r\n jsonStat,\r\n layout,\r\n labelFormat = LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME,\r\n fontSize,\r\n isFullscreen,\r\n isPreview = false,\r\n removeEmptyLines = !isPreview,\r\n decimalSeparator,\r\n decimalPlaces,\r\n emptyChar,\r\n hiddenAttributes,\r\n addSpinner,\r\n removeSpinner,\r\n hideSpinner = false,\r\n disableWheelZoom = false,\r\n showTrend = false,\r\n showCyclical = false,\r\n onTimeSet\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [uuid] = useState(uuidv4());\r\n const [spinnerUuid] = useState(uuidv4());\r\n\r\n const [tableSupportStructures, setTableSupportStructures] = useState(null);\r\n const [htmlTable, setHtmlTable] = useState(\"\");\r\n\r\n const [row, setRow] = useState(0);\r\n const [col, setCol] = useState(0);\r\n\r\n const [visibleRowCount, setVisibleRowCount] = useState(1);\r\n const [visibleColCount, setVisibleColCount] = useState(1);\r\n\r\n const [isHorizontalScrollbarVisible, setHorizontalScrollbarVisibility] = useState(null);\r\n const [isVerticalScrollbarVisible, setVerticalScrollbarVisibility] = useState(null);\r\n\r\n const [attributes, setAttributes] = useState(null);\r\n const [isCopiedVisible, setCopiedVisibility] = useState(false);\r\n\r\n const [worker] = useState(() => new Worker(\"./workers/getTableSupportStructuresWorker.js\"));\r\n\r\n useEffect(() => {\r\n return () => {\r\n if (worker) {\r\n worker.terminate();\r\n }\r\n }\r\n }, [worker]);\r\n\r\n const handleStyle = useCallback(\r\n (isFirstRender, isResizing) => {\r\n if (!isPreview && tableSupportStructures) {\r\n\r\n if (!isResizing) {\r\n\r\n /** attribute's tooltip handling **/\r\n const $tooltip = $(`.jsonstat-table__${uuid} #jsonstat-table__tooltip`);\r\n $(`.jsonstat-table__${uuid} .ca .ct`)\r\n .hover(\r\n function () {\r\n const $elem = $(this).get(0);\r\n const rect = $elem.getBoundingClientRect();\r\n\r\n const attributes = $elem.className.includes(\"ctd\")\r\n ? tableSupportStructures.obsAttributeMap[$elem.id].attributes\r\n : tableSupportStructures.dimAttributeMap[$elem.id.split(\",\")[0]][$elem.id.split(\",\")[1]].attributes;\r\n\r\n const ATTRIBUTE_HEIGHT = 18;\r\n\r\n $tooltip.empty();\r\n attributes.forEach(attribute => {\r\n $tooltip.append($(\r\n `
  • ${getAttributeLabel(attribute, labelFormat)}: ${getAttributeValueLabel(attribute, labelFormat)}
  • `\r\n ));\r\n });\r\n\r\n const left = rect.x < (window.innerWidth / 2)\r\n ? rect.left\r\n : rect.left - $tooltip.innerWidth();\r\n\r\n $tooltip.css({\r\n visibility: \"visible\",\r\n top: rect.top - (ATTRIBUTE_HEIGHT * attributes.length) - 30,\r\n left: left\r\n });\r\n },\r\n function () {\r\n $tooltip.empty().css({visibility: \"hidden\"});\r\n }\r\n )\r\n .click(\r\n function () {\r\n const $elem = $(this).get(0);\r\n\r\n const attributes = $elem.className.includes(\"ctd\")\r\n ? tableSupportStructures.obsAttributeMap[$elem.id].attributes\r\n : tableSupportStructures.dimAttributeMap[$elem.id.split(\",\")[0]][$elem.id.split(\",\")[1]].attributes;\r\n\r\n setAttributes(attributes);\r\n }\r\n );\r\n }\r\n\r\n removeSpinner(spinnerUuid);\r\n }\r\n },\r\n [uuid, tableSupportStructures, labelFormat, isPreview, removeSpinner, spinnerUuid]\r\n );\r\n\r\n const handleScrollbar = useCallback(\r\n updateVisibleRowAndColCount => {\r\n let $tableContainer = $(`.jsonstat-table__${uuid}`);\r\n\r\n if ($tableContainer && tableSupportStructures) {\r\n\r\n let isVerticalScrollbarVisible = null;\r\n let isHorizontalScrollbarVisible = null;\r\n\r\n const {rowCount, colCount} = tableSupportStructures;\r\n const $table = $(`.jsonstat-table__${uuid} table`);\r\n\r\n isVerticalScrollbarVisible = row !== null && row !== undefined && (\r\n row > 0 ||\r\n rowCount > ROWS_PER_PAGE ||\r\n ($table.height() > $tableContainer.height())\r\n );\r\n setVerticalScrollbarVisibility(isVerticalScrollbarVisible);\r\n\r\n isHorizontalScrollbarVisible = col !== null && col !== undefined && (\r\n col > 0 ||\r\n colCount > COLS_PER_PAGE ||\r\n ($table.width() > $tableContainer.width())\r\n );\r\n setHorizontalScrollbarVisibility(isHorizontalScrollbarVisible);\r\n\r\n let visibleColCount = 0;\r\n $(`.jsonstat-table__${uuid} tbody tr:not(.rs):first td`).each((idx, el) => {\r\n if (isElementInContainer(el, $tableContainer[0], isVerticalScrollbarVisible, isHorizontalScrollbarVisible)) {\r\n visibleColCount++;\r\n }\r\n });\r\n if (updateVisibleRowAndColCount) {\r\n setVisibleColCount(visibleColCount);\r\n }\r\n\r\n let visibleRowCount = 0;\r\n $(`.jsonstat-table__${uuid} tbody tr:not(.rs)`).each((idx, el) => {\r\n if (isElementInContainer($(el).children(\"td\")[0], $tableContainer[0], isVerticalScrollbarVisible, isHorizontalScrollbarVisible)) {\r\n visibleRowCount++;\r\n }\r\n });\r\n $(`.jsonstat-table__${uuid} tbody tr.rs`).each((idx, el) => {\r\n if (isElementInContainer(el, $tableContainer[0], isVerticalScrollbarVisible, isHorizontalScrollbarVisible, true)) {\r\n visibleRowCount++;\r\n }\r\n });\r\n if (updateVisibleRowAndColCount) {\r\n setVisibleRowCount(visibleRowCount);\r\n }\r\n }\r\n },\r\n [uuid, tableSupportStructures, row, col]\r\n );\r\n\r\n useEffect(() => {\r\n if (jsonStat && layout) {\r\n setTableSupportStructures(null);\r\n setHtmlTable(\"\");\r\n\r\n if (!hideSpinner && !isPreview) {\r\n addSpinner(spinnerUuid, t(\"components.table.spinners.rendering\"));\r\n }\r\n\r\n const newLayout = Object.assign({}, layout);\r\n if (jsonStat.id.includes(VARIATION_DIMENSION_KEY)) {\r\n newLayout.cols = [...layout.cols, VARIATION_DIMENSION_KEY];\r\n }\r\n\r\n if (!isPreview) {\r\n worker.onmessage = event => {\r\n setTableSupportStructures({\r\n jsonStat,\r\n ...event.data\r\n });\r\n if (event.data.obsAttributeMap === null) {\r\n console.error(t(\"components.table.error.observationAttribute\"));\r\n }\r\n };\r\n worker.onerror = () => {\r\n setTableSupportStructures(null);\r\n removeSpinner(spinnerUuid, true);\r\n };\r\n worker.postMessage({\r\n jsonStat,\r\n layout: newLayout,\r\n isPreview,\r\n removeEmptyLines,\r\n hiddenAttributes,\r\n showTrend,\r\n showCyclical\r\n });\r\n\r\n } else {\r\n setTableSupportStructures({\r\n jsonStat,\r\n layout: newLayout,\r\n isPreview: true\r\n });\r\n }\r\n\r\n setRow(0);\r\n setCol(0);\r\n isFirstRender = true;\r\n }\r\n }, [worker, jsonStat, layout, isPreview, removeEmptyLines, hiddenAttributes, showTrend, showCyclical, hideSpinner, addSpinner, removeSpinner, spinnerUuid, t]);\r\n\r\n useEffect(() => {\r\n if (tableSupportStructures) {\r\n const func = () => {\r\n handleStyle(false, true);\r\n handleScrollbar(true);\r\n }\r\n window.addEventListener(\"resize\", func);\r\n return () => window.removeEventListener(\"resize\", func);\r\n }\r\n }, [tableSupportStructures, handleStyle, handleScrollbar]);\r\n\r\n useEffect(() => {\r\n if (tableSupportStructures) {\r\n const {\r\n colCount,\r\n rowCount\r\n } = tableSupportStructures;\r\n\r\n const rowEnd = (row + ROWS_PER_PAGE) >= rowCount ? rowCount : (row + ROWS_PER_PAGE);\r\n const colEnd = (col + COLS_PER_PAGE) >= colCount ? colCount : (col + COLS_PER_PAGE);\r\n\r\n const paginationParams = isPreview\r\n ? null\r\n : {\r\n rowStart: row,\r\n rowEnd: rowEnd,\r\n colStart: col,\r\n colEnd: colEnd\r\n };\r\n\r\n setHtmlTable(getTableHtml(\r\n uuid,\r\n labelFormat,\r\n fontSize,\r\n decimalSeparator,\r\n decimalPlaces,\r\n sanitize(emptyChar),\r\n paginationParams,\r\n tableSupportStructures,\r\n onTimeSet,\r\n t\r\n ));\r\n\r\n $(`.jsonstat-table__${uuid}`).scrollTop(0).scrollLeft(0);\r\n }\r\n }, [tableSupportStructures, uuid, labelFormat, fontSize, decimalSeparator, decimalPlaces, emptyChar, isPreview, row, col, isFullscreen, onTimeSet, t]);\r\n\r\n useEffect(() => {\r\n if (htmlTable && htmlTable.length > 0) {\r\n handleStyle(isFirstRender, false);\r\n handleScrollbar(isFirstRender);\r\n\r\n isFirstRender = false;\r\n }\r\n }, [htmlTable, handleStyle, handleScrollbar]);\r\n\r\n return (\r\n \r\n {tableSupportStructures\r\n ? (tableSupportStructures.colCount + tableSupportStructures.rowCount === 0)\r\n ? (\r\n \r\n )\r\n : (\r\n
    \r\n {!isPreview\r\n ? (\r\n \r\n \r\n \r\n )\r\n : (\r\n \r\n )\r\n }\r\n
    \r\n )\r\n : (\r\n \r\n )\r\n }\r\n setCopiedVisibility(prevVal => !prevVal)}\r\n >\r\n setCopiedVisibility(prevVal => !prevVal)}>\r\n {t(\"components.table.alerts.attributeCopied\")}\r\n \r\n \r\n setAttributes(null)}\r\n >\r\n setAttributes(null)}>\r\n {t(\"components.table.dialogs.attributes.title\")}\r\n \r\n \r\n \r\n {(attributes || []).map((attribute, idx) =>\r\n \r\n {getAttributeLabel(attribute, labelFormat)}: {getAttributeValueLabel(attribute, labelFormat)}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )\r\n}\r\n\r\nexport default compose(\r\n connect(null, mapDispatchToProps),\r\n withStyles(styles)\r\n)(Table);","import React, {Fragment, useState} from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport I18nTextField from \"../i18n-text-field\";\r\nimport Table from \"../table\";\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport CardHeader from \"@material-ui/core/CardHeader\";\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport Chart from \"../chart\";\r\nimport Map from \"../map\";\r\nimport Autocomplete from \"@material-ui/lab/Autocomplete\";\r\nimport _ from \"lodash\";\r\nimport {TIME_PERIOD_DIMENSION_KEY, VARIATION_DIMENSION_KEY} from \"../../utils/jsonStat\";\r\nimport {isValidIntegerInInclusiveRange} from \"../../utils/validator\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport {CRITERIA_FILTER_TYPE_PERIODS} from \"../../utils/criteria\";\r\n\r\nconst styles = theme => ({\r\n card: {\r\n padding: theme.spacing(2)\r\n },\r\n viewer: {\r\n width: \"100%\",\r\n height: \"100%\",\r\n position: \"relative\"\r\n },\r\n viewerTable: {\r\n width: \"100%\",\r\n height: \"calc(100% - 16px - 64px)\",\r\n marginTop: 16\r\n },\r\n viewerChart: {\r\n width: \"100%\",\r\n height: \"calc(100% - 16px - 64px)\",\r\n position: \"relative\",\r\n marginTop: 16\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 48px)\",\r\n paddingTop: 16\r\n }\r\n});\r\n\r\nfunction TemplateBuilder(props) {\r\n const {\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n nodeId,\r\n template,\r\n onChange,\r\n viewers,\r\n jsonStat,\r\n timePeriodsByFreq,\r\n labelFormat,\r\n tableLayout,\r\n chartLayout,\r\n mapLayout,\r\n templateGeometries,\r\n templateGeometryDetailLevels,\r\n onGeometryFetch,\r\n hiddenAttributes,\r\n criteria\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [tabId, setTabId] = useState(0);\r\n\r\n const [mapId] = useState(\"map__\" + uuidv4());\r\n\r\n const [chartType, setChartType] = useState(\"bar\");\r\n\r\n const hiddenDimensions = _.uniq([\r\n ...(jsonStat?.id || []).filter(dim => dim !== VARIATION_DIMENSION_KEY),\r\n ...(template?.hiddenDimensions || [])\r\n ]);\r\n\r\n return (\r\n \r\n {criteria?.[TIME_PERIOD_DIMENSION_KEY]?.type === CRITERIA_FILTER_TYPE_PERIODS && (\r\n {t(\"scenes.dataViewer.viewTemplateBuilder.warnings.lastNPeriod\")}\r\n )}\r\n \r\n setTabId(newValue)}\r\n >\r\n \r\n \r\n \r\n {mapLayout && }\r\n \r\n \r\n
    \r\n {tabId === 0 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n onChange({...template, title: value})}\r\n />\r\n \r\n \r\n \r\n \r\n onChange({...template, defaultView: ev.target.value})}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n {viewers.map(({type, title}, idx) =>\r\n {title}\r\n )}\r\n \r\n \r\n \r\n \r\n onChange({...template, enableCriteria: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n onChange({...template, enableLayout: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n onChange({...template, enableVariation: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n onChange({...template, decimalNumber: ev.target.value})}\r\n error={(template.decimalNumber || \"\").length > 0 && !isValidIntegerInInclusiveRange(template.decimalNumber, 0, 20)}\r\n helperText={(template.decimalNumber || \"\").length > 0 && !isValidIntegerInInclusiveRange(template.decimalNumber, 0, 20)\r\n ? t(\"commons.validation.inRange\", {min: 0, max: 20})\r\n : null\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n onChange({...template, decimalSeparator: value})}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n \r\n {t(\"scenes.dataViewer.templateBuilder.tabs.options.cards.general.form.decimalSeparator.values.dot\")}\r\n \r\n \r\n {t(\"scenes.dataViewer.templateBuilder.tabs.options.cards.general.form.decimalSeparator.values.comma\")}\r\n \r\n \r\n \r\n \r\n \r\n {\r\n onChange({...template, hiddenDimensions: values})\r\n }}\r\n renderInput={params => (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n onChange({\r\n ...template,\r\n layouts: {\r\n ...template.layouts,\r\n tableEmptyChar: ev.target.value\r\n }\r\n })}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {tabId === 1 && (\r\n
    \r\n \r\n onChange({\r\n ...template,\r\n layouts: {\r\n ...template.layouts,\r\n tableDefaultLayout: ev.target.value,\r\n tableLayout: ev.target.value === \"custom\"\r\n ? tableLayout\r\n : null\r\n }\r\n })}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n \r\n {t(\"scenes.dataViewer.templateBuilder.tabs.table.form.defaultLayout.values.custom\")}\r\n \r\n \r\n {t(\"scenes.dataViewer.templateBuilder.tabs.table.form.defaultLayout.values.default\")}\r\n \r\n \r\n \r\n
    \r\n {jsonStat && tableLayout && (\r\n template.layouts.tableDefaultLayout === \"custom\"\r\n ? (\r\n \r\n )\r\n : (\r\n \r\n )\r\n )}\r\n
    \r\n
    \r\n )}\r\n {tabId === 2 && (\r\n
    \r\n \r\n setChartType(ev.target.value)}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n {viewers.slice(2).map(({type, title}, idx) =>\r\n {title}\r\n )}\r\n \r\n \r\n
    \r\n {jsonStat && chartLayout && (\r\n \r\n )}\r\n
    \r\n
    \r\n )}\r\n {tabId === 3 && mapLayout && (\r\n
    \r\n {jsonStat && mapLayout && (\r\n onGeometryFetch(idList, t, nodeId)}\r\n geometries={templateGeometries}\r\n geometryDetailLevels={templateGeometryDetailLevels}\r\n detailLevel={template.layouts.mapDetailLevel}\r\n classificationMethod={template.layouts.mapClassificationMethod}\r\n paletteStartColor={template.layouts.mapPaletteStartColor}\r\n paletteEndColor={template.layouts.mapPaletteEndColor}\r\n paletteCardinality={template.layouts.mapPaletteCardinality}\r\n opacity={template.layouts.mapOpacity}\r\n isLegendCollapsed={template.layouts.mapIsLegendCollapsed}\r\n readOnly\r\n />\r\n )}\r\n
    \r\n )}\r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default withStyles(styles)(TemplateBuilder);","import React, {useState} from \"react\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport copy from \"copy-to-clipboard\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport CardHeader from \"@material-ui/core/CardHeader\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Snackbar from '@material-ui/core/Snackbar';\r\nimport Alert from '@material-ui/lab/Alert';\r\n\r\nconst styles = theme => ({\r\n paper: {\r\n padding: theme.spacing(3)\r\n },\r\n paperHeader: {\r\n fontSize: 17,\r\n fontWeight: \"bold\",\r\n padding: \"0 0 16px 0\"\r\n }\r\n});\r\n\r\nconst Query = ({classes, title, query}) => {\r\n\r\n const [isCopiedVisible, setCopiedVisibility] = useState(false);\r\n\r\n const {t} = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n {query}\r\n \r\n \r\n {\r\n copy(query);\r\n setCopiedVisibility(prevVal => !prevVal);\r\n }}\r\n >\r\n {t(\"commons.confirm.copy\")}\r\n \r\n \r\n \r\n setCopiedVisibility(prevVal => !prevVal)}\r\n >\r\n setCopiedVisibility(prevVal => !prevVal)}>\r\n {t(\"components.query.alert.queryCopied.label\")}\r\n \r\n \r\n \r\n );\r\n}\r\n\r\nexport default withStyles(styles)(Query);","import React, {forwardRef} from \"react\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n\r\nconst styles = theme => ({\r\n attributeIcon: {\r\n width: 24,\r\n height: 24,\r\n fontSize: 23,\r\n fontWeight: \"bold\",\r\n fontFamily: \"Do Hyeon\"\r\n }\r\n});\r\n\r\nconst AttributeButton = forwardRef(({\r\n classes,\r\n onClick,\r\n iconStyle,\r\n ...props\r\n }, ref) =>\r\n \r\n \r\n (*)\r\n \r\n \r\n)\r\n\r\nexport default withStyles(styles)(AttributeButton);","import React from 'react';\r\nimport {getAttributeLabel, getAttributeValueLabel, getDimensionValueLabelFromJsonStat} from \"../../utils/jsonStat\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst DimensionAttributeList = ({\r\n jsonStat,\r\n dimension,\r\n dimValuesAttributeList,\r\n labelFormat,\r\n style\r\n }) =>\r\n
    \r\n \r\n {(dimValuesAttributeList || []).map(({dimVal, attributes}) => (\r\n \r\n \r\n {dimension && (\r\n \r\n {getDimensionValueLabelFromJsonStat(jsonStat, dimension, dimVal, labelFormat) + \":\"}\r\n \r\n )}\r\n {(attributes || []).map((attribute, idx) => (\r\n \r\n - {getAttributeLabel(attribute, labelFormat)}: {getAttributeValueLabel(attribute, labelFormat)}\r\n \r\n ))}\r\n \r\n \r\n ))}\r\n \r\n
    ;\r\n\r\nexport default DimensionAttributeList;","import React, {Fragment, useState} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport DimensionAttributeList from \"../dimension-attribute-list\";\r\nimport {getDimensionValuesAttributeList} from \"../../utils/jsonStat\";\r\n\r\nconst styles = theme => ({\r\n attributeButton: {\r\n padding: 8,\r\n cursor: \"pointer\"\r\n },\r\n attributeIcon: {\r\n height: 18,\r\n lineHeight: \"18px\",\r\n padding: \"0 4px\",\r\n borderRadius: 3\r\n },\r\n attributeIconAst: {\r\n fontSize: 18,\r\n fontFamily: \"Do Hyeon\",\r\n color: theme.palette.primary.main\r\n },\r\n attributeIconChar: {\r\n fontSize: 13,\r\n color: \"rgb(255, 255, 255)\",\r\n backgroundColor: \"rgb(108, 108, 108)\",\r\n margin: \"0 4px\",\r\n }\r\n});\r\n\r\nconst AttributeIcon = ({\r\n t,\r\n classes,\r\n jsonStat,\r\n layout,\r\n dimension,\r\n dimAttributeMap,\r\n labelFormat,\r\n iconStyle\r\n }) => {\r\n\r\n const [isVisible, setVisibility] = useState(false);\r\n\r\n const dimValuesAttributeList = getDimensionValuesAttributeList(dimension, dimAttributeMap, layout);\r\n\r\n let ids = null;\r\n if (dimValuesAttributeList.length === 1) {\r\n ids = dimValuesAttributeList[0].ids\r\n }\r\n\r\n return (\r\n \r\n {dimValuesAttributeList.length > 0 && (\r\n \r\n }\r\n placement=\"top\"\r\n >\r\n setVisibility(true)}\r\n >\r\n {(ids && ids.length === 1 && ids[0].length <= 2)\r\n ? (\r\n \r\n {ids[0]}\r\n \r\n )\r\n : (\r\n \r\n (*)\r\n \r\n )\r\n }\r\n \r\n \r\n )}\r\n\r\n setVisibility(false)}\r\n >\r\n setVisibility(false)}>\r\n {t(\"components.attributeIcons.dialog.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(AttributeIcon);","import React, {Fragment, useEffect, useState} from 'react';\r\nimport {useTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport ShareIcon from '@material-ui/icons/Share';\r\nimport GetAppIcon from '@material-ui/icons/GetApp';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport AttachFileIcon from '@material-ui/icons/AttachFile';\r\nimport AccessTimeIcon from '@material-ui/icons/AccessTime';\r\nimport ButtonSelect from \"../button-select\";\r\nimport SaveIcon from '@material-ui/icons/Save';\r\nimport AttributeList from \"../attribute-list\";\r\nimport {\r\n getDatasetAttributeList,\r\n getDimensionAttributeMap,\r\n getDimensionLabelFromJsonStat,\r\n getDimensionValueLabelFromJsonStat,\r\n getSeriesAttributeList\r\n} from \"../../utils/jsonStat\";\r\nimport {DECIMAL_SEPARATOR_DEFAULT} from \"../../utils/formatters\";\r\nimport {canSaveAsView, canSaveTemplate, canShare, canViewTemplateOrAnnotationIcon, canViewTimesLog} from \"../../utils/user\";\r\nimport {connect} from \"react-redux\";\r\nimport {compose} from \"redux\";\r\nimport {localizeI18nObj, validateI18nObj} from \"../../utils/i18n\";\r\nimport {\r\n DOWNLOAD_FORMAT_IMAGE,\r\n DOWNLOAD_VIEWER_CHART,\r\n DOWNLOAD_VIEWER_MAP,\r\n DOWNLOAD_VIEWER_TABLE,\r\n exportViewerCanvas,\r\n getDownloadFormatExtensionFromFormat,\r\n getDownloadFormatLabelFromFormat,\r\n getDownloadFormatViewersFromFormat,\r\n isDownloadFormatValid\r\n} from \"../../utils/download\";\r\nimport DataViewerTimings from \"./Timings\";\r\nimport {LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME} from \"../label-format-selector/constants\";\r\nimport ViewBuilder from \"./ViewBuilder\";\r\nimport TemplateBuilder from \"./TemplateBuilder\";\r\nimport {getCriteriaArrayFromObject} from \"../../utils/criteria\";\r\nimport {\r\n fetchDatasetSdmxQuery,\r\n fetchDatasetViewTemplateGeometries,\r\n hideDatasetSdmxQuery,\r\n hideDatasetViewError,\r\n hideDatasetViewTemplate,\r\n showDatasetSdmxQuery,\r\n showDatasetViewTemplate\r\n} from \"../../state/dataset/datasetActions\";\r\nimport FullscreenDialog from \"../fullscreen-dialog\";\r\nimport DeveloperModeIcon from '@material-ui/icons/DeveloperMode';\r\nimport Query from \"../query\";\r\nimport AttributeButton from \"../attribute-button\";\r\nimport {isValidIntegerInInclusiveRange} from \"../../utils/validator\";\r\nimport Call from \"../../hocs/call\";\r\nimport AttributeIcon from \"../attribute-icon\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\",\r\n padding: \"4px 16px 12px 16px\",\r\n color: theme.palette.primary.main\r\n },\r\n titleContainer: {\r\n paddingTop: 10,\r\n minHeight: 48\r\n },\r\n title: {\r\n display: \"unset\",\r\n fontSize: 28,\r\n fontWeight: 300,\r\n letterSpacing: 0,\r\n marginRight: 2\r\n },\r\n titleAction: {\r\n marginTop: -10\r\n },\r\n layoutIcon: {\r\n width: 48,\r\n height: 48,\r\n padding: 12,\r\n color: \"rgba(0, 0, 0, 0.54)\"\r\n },\r\n attributeId: {\r\n cursor: \"default\",\r\n fontSize: 13,\r\n color: \"rgb(255, 255, 255)\",\r\n backgroundColor: \"rgb(108, 108, 108)\",\r\n borderRadius: 3,\r\n padding: \"0 4px\"\r\n },\r\n attributeAst: {\r\n cursor: \"default\",\r\n fontSize: 15,\r\n color: theme.palette.primary.main,\r\n fontFamily: \"Do Hyeon\"\r\n },\r\n queryContainer: {\r\n '& > *': {\r\n marginBottom: theme.spacing(2)\r\n },\r\n '& > *:last-child': {\r\n marginBottom: 0\r\n }\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n user: state.user,\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages,\r\n view: state.dataset.view,\r\n template: state.dataset.template,\r\n isViewVisible: state.dataset.isViewVisible,\r\n isViewErrorVisible: state.dataset.isViewErrorVisible,\r\n viewErrorMessage: state.dataset.viewErrorMessage,\r\n isTemplateVisible: state.dataset.isTemplateVisible,\r\n templateGeometries: state.dataset.templateGeometries,\r\n templateGeometryDetailLevels: state.dataset.templateGeometryDetailLevels,\r\n isQueryVisible: state.dataset.isQueryVisible,\r\n structureQuery: state.dataset.structureQuery,\r\n dataQuery: state.dataset.dataQuery\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n onViewTemplateShow: isView => dispatch(showDatasetViewTemplate(isView)),\r\n onViewTemplateHide: isView => dispatch(hideDatasetViewTemplate(isView)),\r\n onViewErrorHide: isView => dispatch(hideDatasetViewError(isView)),\r\n onViewTemplateGeometriesFetch: (idList, t, nodeId) => dispatch(fetchDatasetViewTemplateGeometries(idList, t, nodeId)),\r\n onQueryShow: () => dispatch(showDatasetSdmxQuery()),\r\n onQueryHide: () => dispatch(hideDatasetSdmxQuery()),\r\n fetchQuery: ({nodeId, datasetId, criteria, datasetTitle}) =>\r\n dispatch(fetchDatasetSdmxQuery(nodeId, datasetId, criteria, datasetTitle)),\r\n});\r\n\r\nconst getEmptyViewTemplate = (viewTemplate, datasetId, decimalPlaces, decimalSeparator, defaultLanguage) => ({\r\n datasetId: datasetId,\r\n type: \"\",\r\n title: {},\r\n defaultView: \"table\",\r\n criteria: {},\r\n layouts: {\r\n labelFormat: LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME,\r\n showTrend: false,\r\n showCyclical: false,\r\n tableDefaultLayout: \"custom\",\r\n tableEmptyChar: \"\",\r\n tableLayout: {},\r\n mapLayout: {},\r\n chartLayout: {}\r\n },\r\n decimalSeparator: {\r\n [defaultLanguage]: (decimalSeparator !== null && decimalSeparator !== undefined) ? decimalSeparator : DECIMAL_SEPARATOR_DEFAULT\r\n },\r\n enableCriteria: true,\r\n enableLayout: true,\r\n enableVariation: false,\r\n hiddenDimensions: [],\r\n ...viewTemplate,\r\n decimalNumber: (decimalPlaces === null || decimalPlaces === undefined || decimalPlaces < 0)\r\n ? \"\"\r\n : decimalPlaces,\r\n});\r\n\r\nfunction DataViewerHeader(props) {\r\n\r\n const {\r\n classes,\r\n user,\r\n defaultLanguage,\r\n languages,\r\n nodeId,\r\n nodeDownloadFormats,\r\n hiddenAttributes,\r\n showQueryInfo,\r\n datasetId,\r\n datasetTitle,\r\n viewId,\r\n hasViewLayout,\r\n hasTemplateLayout,\r\n hasAnnotationLayout,\r\n view: structureView,\r\n template: structureTemplate,\r\n notes,\r\n attachedFiles,\r\n jsonStat,\r\n timePeriodsByFreq,\r\n labelFormat,\r\n showTrend,\r\n showCyclical,\r\n tableLayout,\r\n chartLayout,\r\n mapLayout,\r\n criteria,\r\n decimalSeparator,\r\n decimalPlaces,\r\n tableEmptyChar,\r\n chartSettings,\r\n mapDetailLevel,\r\n mapSettings,\r\n viewers,\r\n viewerIdx,\r\n isViewVisible,\r\n isViewErrorVisible,\r\n viewErrorMessage,\r\n isTemplateVisible,\r\n templateGeometries,\r\n templateGeometryDetailLevels,\r\n onViewTemplateShow,\r\n onViewTemplateHide,\r\n onViewTemplateSubmit,\r\n onViewErrorHide,\r\n onDownloadSubmit,\r\n onViewTemplateGeometriesFetch,\r\n timings,\r\n chartId,\r\n mapId,\r\n isQueryVisible,\r\n structureQuery,\r\n dataQuery,\r\n onQueryShow,\r\n onQueryHide,\r\n fetchQuery\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [initialView, setInitialView] = useState(null);\r\n const [view, setView] = useState(null);\r\n\r\n const [initialTemplate, setInitialTemplate] = useState(null);\r\n const [template, setTemplate] = useState(null);\r\n\r\n const [isAttributesVisible, setAttributesVisibility] = useState(false);\r\n const [isNotesVisible, setNotesVisibility] = useState(false);\r\n const [isTimingsVisible, setTimingsVisibility] = useState(false);\r\n\r\n const [downloadFormats, setDownloadFormats] = useState([]);\r\n\r\n const [isUpdatingView, setIsUpdatingView] = useState(false);\r\n\r\n useEffect(() => {\r\n const actionsWidth = document.getElementById(\"dataset-viewer-header__actions\")\r\n ? document.getElementById(\"dataset-viewer-header__actions\").offsetWidth\r\n : 0;\r\n document.getElementById(\"dataset-viewer-header__title\").setAttribute(\"style\", `width: calc(100% - ${actionsWidth}px - 8px)`);\r\n });\r\n\r\n useEffect(() => {\r\n const template = getEmptyViewTemplate(structureTemplate, datasetId, decimalPlaces, decimalSeparator, defaultLanguage);\r\n setInitialTemplate(template);\r\n setTemplate(template)\r\n const view = getEmptyViewTemplate(structureView, datasetId, decimalPlaces, decimalSeparator, defaultLanguage);\r\n setInitialView(view);\r\n setView(view);\r\n }, [structureView, structureTemplate, datasetId, tableEmptyChar, decimalPlaces, decimalSeparator, defaultLanguage]);\r\n\r\n useEffect(() => {\r\n const newDownloadFormats = [];\r\n (nodeDownloadFormats || []).forEach(format => {\r\n if (isDownloadFormatValid(format)) {\r\n newDownloadFormats.push({\r\n label: getDownloadFormatLabelFromFormat(format, t),\r\n format: format,\r\n extension: getDownloadFormatExtensionFromFormat(format),\r\n viewers: getDownloadFormatViewersFromFormat(format)\r\n })\r\n }\r\n });\r\n setDownloadFormats(newDownloadFormats);\r\n }, [nodeDownloadFormats, t]);\r\n\r\n const handleViewOpen = (defaultLanguage, isUpdate) => {\r\n onViewTemplateShow(true);\r\n setView({\r\n ...initialView,\r\n title: isUpdate\r\n ? view.title\r\n : {\r\n [defaultLanguage]: datasetTitle\r\n },\r\n defaultView: viewers[viewerIdx].type,\r\n criteria: criteria,\r\n layouts: {\r\n labelFormat: labelFormat,\r\n showTrend: showTrend,\r\n showCyclical: showCyclical,\r\n tableEmptyChar: tableEmptyChar,\r\n tableLayout: viewerIdx === 0 ? tableLayout : undefined,\r\n mapLayout: viewerIdx === 1 ? mapLayout : undefined,\r\n mapDetailLevel: viewerIdx === 1 ? mapDetailLevel : undefined,\r\n ...(viewerIdx === 1 ? mapSettings : {}),\r\n chartLayout: viewerIdx >= 2 ? chartLayout : undefined,\r\n ...(viewerIdx >= 2 ? chartSettings : {})\r\n }\r\n });\r\n };\r\n\r\n const handleViewClose = () => {\r\n onViewTemplateHide(true);\r\n setView(initialView);\r\n };\r\n\r\n const handleViewSubmit = viewId => {\r\n onViewTemplateSubmit({\r\n type: \"view\",\r\n viewTemplateId: viewId ? Number(viewId) : undefined,\r\n datasetId: view.datasetId,\r\n title: view.title,\r\n defaultView: view.defaultView,\r\n criteria: getCriteriaArrayFromObject(view.criteria),\r\n layouts: JSON.stringify(view.layouts)\r\n }, true);\r\n setView(initialView);\r\n };\r\n\r\n const handleTemplateOpen = (defaultLanguage, isUpdate) => {\r\n onViewTemplateShow(false);\r\n setTemplate({\r\n ...initialTemplate,\r\n title: isUpdate\r\n ? initialTemplate.title\r\n : {\r\n [defaultLanguage]: datasetTitle\r\n },\r\n criteria: criteria,\r\n layouts: {\r\n labelFormat: labelFormat,\r\n showTrend: showTrend,\r\n showCyclical: showCyclical,\r\n tableEmptyChar: tableEmptyChar,\r\n tableLayout: tableLayout,\r\n tableDefaultLayout: \"custom\",\r\n mapLayout: mapLayout,\r\n mapDetailLevel: mapLayout ? mapDetailLevel : undefined,\r\n ...(mapLayout ? mapSettings : {}),\r\n chartLayout: chartLayout,\r\n ...(chartLayout ? chartSettings : {})\r\n }\r\n });\r\n };\r\n\r\n const handleTemplateClose = () => {\r\n onViewTemplateHide(false);\r\n setTemplate(initialTemplate);\r\n };\r\n\r\n const handleTemplateSubmit = () => {\r\n onViewTemplateSubmit({\r\n ...template,\r\n type: \"template\",\r\n criteria: getCriteriaArrayFromObject(template.criteria),\r\n layouts: JSON.stringify({\r\n ...template.layouts,\r\n tableDefaultLayout: undefined\r\n }),\r\n decimalNumber: (template.decimalNumber === null || template.decimalNumber === undefined || template.decimalNumber === \"\")\r\n ? -1\r\n : template.decimalNumber\r\n }, false);\r\n setTemplate(initialTemplate);\r\n };\r\n\r\n const datasetAttributes = getDatasetAttributeList(jsonStat, hiddenAttributes);\r\n\r\n const seriesAttributes = getSeriesAttributeList(jsonStat, labelFormat, hiddenAttributes);\r\n\r\n const currentFilters = (viewers[viewerIdx].key === 0 && tableLayout?.filters)\r\n ? tableLayout.filters\r\n : (viewers[viewerIdx].key === 1 && mapLayout?.filters)\r\n ? mapLayout.filters\r\n : (viewers[viewerIdx].key >= 2 && chartLayout?.filters)\r\n ? chartLayout.filters\r\n : [];\r\n\r\n const subtitle = [];\r\n if (jsonStat && currentFilters) {\r\n currentFilters.forEach(filter => {\r\n if (jsonStat.size[jsonStat.id.indexOf(filter)] === 1) {\r\n subtitle.push({\r\n dim: filter,\r\n dimLabel: getDimensionLabelFromJsonStat(jsonStat, filter, labelFormat),\r\n value: jsonStat.dimension[filter].category.index[0],\r\n valueLabel: getDimensionValueLabelFromJsonStat(jsonStat, filter, jsonStat.dimension[filter].category.index[0], labelFormat)\r\n });\r\n }\r\n })\r\n }\r\n\r\n const dimAttributeMap = getDimensionAttributeMap(jsonStat, hiddenAttributes);\r\n\r\n const hasNotes = (notes || []).length > 0;\r\n const hasAttributes = datasetAttributes.concat(seriesAttributes).length > 0;\r\n\r\n return (\r\n \r\n
    \r\n \r\n \r\n \r\n {datasetTitle}\r\n \r\n {hasNotes && (\r\n \r\n setNotesVisibility(true)}\r\n aria-label={t(\"scenes.dataViewer.header.action.information.tooltip\")}\r\n className={classes.titleAction}\r\n >\r\n \r\n \r\n \r\n )}\r\n \r\n setAttributesVisibility(true)}\r\n aria-label={t(\"scenes.dataViewer.header.action.attributes.tooltip\")}\r\n className={classes.titleAction}\r\n style={{\r\n visibility: hasAttributes ? undefined : \"hidden\"\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n {(() => {\r\n if (canViewTemplateOrAnnotationIcon(user, nodeId)) {\r\n\r\n let title = null;\r\n if (hasViewLayout) {\r\n title = t(\"scenes.dataViewer.header.action.hasViewLayout.tooltip\");\r\n } else if (hasTemplateLayout) {\r\n title = t(\"scenes.dataViewer.header.action.hasTemplateLayout.tooltip\");\r\n } else if (hasAnnotationLayout) {\r\n title = t(\"scenes.dataViewer.header.action.hasAnnotationLayout.tooltip\");\r\n }\r\n\r\n if (title) {\r\n return (\r\n
    \r\n \r\n \r\n \r\n
    \r\n )\r\n }\r\n }\r\n })()}\r\n {canViewTimesLog(user, nodeId) && (\r\n \r\n \r\n
    \r\n setTimingsVisibility(true)}\r\n disabled={timings === null}\r\n aria-label={t(\"scenes.dataViewer.header.action.timesLog.tooltip\")}\r\n >\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n )}\r\n {(canSaveAsView(user) || canSaveTemplate(user, nodeId)) && (\r\n \r\n }\r\n tooltip={t(\"scenes.dataViewer.header.action.save.tooltip\")}\r\n ariaLabel={t(\"scenes.dataViewer.header.action.save.tooltip\")}\r\n color=\"default\"\r\n disabled={!tableLayout && !chartLayout && !mapLayout}\r\n >\r\n {canSaveAsView(user) && (\r\n {\r\n handleViewOpen(defaultLanguage, false);\r\n setIsUpdatingView(false);\r\n }}\r\n >\r\n {t(\"scenes.dataViewer.header.action.save.values.createView\")}\r\n
    \r\n )}\r\n {canSaveAsView(user) && hasViewLayout && viewId && (\r\n {\r\n handleViewOpen(defaultLanguage, true);\r\n setIsUpdatingView(true);\r\n }}\r\n >\r\n {t(\"scenes.dataViewer.header.action.save.values.updateView\")}\r\n
    \r\n )}\r\n {canSaveTemplate(user, nodeId) && (\r\n
    handleTemplateOpen(defaultLanguage, hasTemplateLayout)}>\r\n {hasTemplateLayout\r\n ? t(\"scenes.dataViewer.header.action.save.values.updateTemplate\")\r\n : t(\"scenes.dataViewer.header.action.save.values.createTemplate\")\r\n }\r\n
    \r\n )}\r\n \r\n \r\n )}\r\n {canShare(user) && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n }\r\n tooltip={t(\"scenes.dataViewer.header.action.attachments.tooltip\")}\r\n ariaLabel={t(\"scenes.dataViewer.header.action.attachments.tooltip\")}\r\n color=\"default\"\r\n onChange={({attachedFile}) => window.open(attachedFile.url)}\r\n disabled={!attachedFiles || attachedFiles.length === 0}\r\n >\r\n {(attachedFiles || []).map((attachedFile, idx) => {\r\n const fileName = attachedFile.url.split(\"/\").pop();\r\n return (\r\n
    \r\n {`${fileName} (${attachedFile.format})`}\r\n
    \r\n )\r\n })}\r\n \r\n
    \r\n {showQueryInfo && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {(() => {\r\n const formats = downloadFormats.filter(({viewers}) => {\r\n if (viewerIdx === 0) {\r\n return !viewers || viewers.includes(DOWNLOAD_VIEWER_TABLE);\r\n } else if (viewerIdx === 1) {\r\n return !viewers || viewers.includes(DOWNLOAD_VIEWER_MAP);\r\n } else {\r\n return !viewers || viewers.includes(DOWNLOAD_VIEWER_CHART);\r\n }\r\n });\r\n\r\n return formats.length > 0\r\n ? (\r\n \r\n }\r\n tooltip={t(\"scenes.dataViewer.header.action.export.tooltip\")}\r\n ariaLabel={t(\"scenes.dataViewer.header.action.export.ariaLabel\")}\r\n color=\"default\"\r\n onChange={({format, extension}) => {\r\n if (format === DOWNLOAD_FORMAT_IMAGE) {\r\n if (viewerIdx === 1) {\r\n window.LMap.getCanvas(\r\n mapId,\r\n canvas => {\r\n exportViewerCanvas(\r\n canvas,\r\n `${datasetTitle}.${extension}`,\r\n mapSettings.mapShowTitle === true\r\n ? localizeI18nObj(mapSettings.mapTitle, defaultLanguage, languages)\r\n : null,\r\n mapSettings.mapShowFilters === true\r\n ? mapLayout\r\n : null,\r\n mapSettings.mapShowFilters === true\r\n ? jsonStat\r\n : null\r\n );\r\n }\r\n );\r\n } else if (viewerIdx >= 2) {\r\n const chartCanvas = document.getElementById(chartId);\r\n exportViewerCanvas(\r\n chartCanvas,\r\n `${datasetTitle}.${extension}`,\r\n chartSettings.chartShowTitle === true\r\n ? localizeI18nObj(chartSettings.chartTitle, defaultLanguage, languages)\r\n : null,\r\n chartSettings.chartShowFilters === true\r\n ? chartLayout\r\n : null,\r\n chartSettings.chartShowFilters === true\r\n ? jsonStat\r\n : null\r\n );\r\n }\r\n } else {\r\n onDownloadSubmit(format, extension);\r\n }\r\n }}\r\n >\r\n {formats.map(({format, label, extension}, idx) =>\r\n \r\n {label}\r\n \r\n )}\r\n \r\n \r\n )\r\n : \r\n })()}\r\n \r\n \r\n \r\n {subtitle && dimAttributeMap && subtitle.map(({dim, dimLabel, value, valueLabel}, idx) =>\r\n \r\n {dimLabel}\r\n \r\n {valueLabel}\r\n \r\n {idx < subtitle.length - 1\r\n ? \r\n : \"\"\r\n }\r\n \r\n )}\r\n \r\n\r\n setAttributesVisibility(false)}\r\n >\r\n setAttributesVisibility(false)}>\r\n {t(\"scenes.dataViewer.header.dialogs.attributes.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n setTimingsVisibility(false)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n {initialView && (\r\n \r\n \r\n \r\n {isUpdatingView\r\n ? t(\"scenes.dataViewer.header.dialogs.view.title.update\")\r\n : t(\"scenes.dataViewer.header.dialogs.view.title.create\")\r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleViewSubmit(isUpdatingView ? viewId : null)}\r\n disabled={!validateI18nObj(view.title)}\r\n >\r\n {t(\"commons.confirm.save\")}\r\n \r\n \r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.header.dialogs.duplicateViewError.title\")}\r\n \r\n \r\n {viewErrorMessage && (\r\n \r\n {t(\"scenes.dataViewer.header.dialogs.duplicateViewError.content\") + \": \"}\r\n {Object.keys(viewErrorMessage).join(\", \")}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n\r\n {initialTemplate && (\r\n \r\n \r\n {hasTemplateLayout\r\n ? t(\"scenes.dataViewer.header.dialogs.template.title.update\")\r\n : t(\"scenes.dataViewer.header.dialogs.template.title.create\")\r\n }\r\n \r\n \r\n hidden !== true)}\r\n jsonStat={jsonStat}\r\n timePeriodsByFreq={timePeriodsByFreq}\r\n labelFormat={labelFormat}\r\n tableLayout={tableLayout}\r\n chartLayout={chartLayout}\r\n mapLayout={mapLayout}\r\n templateGeometries={templateGeometries}\r\n templateGeometryDetailLevels={templateGeometryDetailLevels}\r\n onGeometryFetch={isTemplateVisible ? onViewTemplateGeometriesFetch : () => null}\r\n hiddenAttributes={hiddenAttributes}\r\n criteria={criteria}\r\n />\r\n \r\n \r\n \r\n 0 && !isValidIntegerInInclusiveRange(template.decimalNumber, 0, 20))\r\n )}\r\n >\r\n {t(\"commons.confirm.save\")}\r\n \r\n \r\n \r\n )}\r\n\r\n setNotesVisibility(false)}\r\n >\r\n setNotesVisibility(false)}>\r\n {t(\"scenes.dataViewer.header.dialogs.notes.title\")}\r\n \r\n \r\n {notes}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.header.dialogs.query.title\")}\r\n \r\n \r\n \r\n {structureQuery && (\r\n \r\n )}\r\n {dataQuery && (\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps, mapDispatchToProps)\r\n)(DataViewerHeader)","import React, {Fragment, useState} from \"react\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport BarChartIcon from '@material-ui/icons/BarChart';\r\nimport BottomNavigationAction from \"@material-ui/core/BottomNavigationAction\";\r\nimport BottomNavigation from \"@material-ui/core/BottomNavigation\";\r\nimport SettingsIcon from \"@material-ui/icons/Settings\";\r\nimport EditIcon from \"@material-ui/icons/Edit\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Menu from \"@material-ui/core/Menu\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport Button from \"@material-ui/core/Button\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n textAlign: \"center\",\r\n '& > div': {\r\n padding: \"4px 0\",\r\n outline: \"none\"\r\n },\r\n \"& .MuiBottomNavigation-root\": {\r\n height: \"unset !important\",\r\n outline: \"none\"\r\n }\r\n },\r\n floatingMenuOption: {\r\n width: 200,\r\n color: \"gray\"\r\n },\r\n floatingMenuOptionSelected: {\r\n color: theme.palette.primary.main\r\n },\r\n divider: {\r\n margin: \"4px 0\"\r\n },\r\n categoryTitle: {\r\n color: \"gray\",\r\n fontSize: 11,\r\n fontWeight: 500\r\n },\r\n referenceMetadataIcon: {\r\n width: 24,\r\n height: 24,\r\n fontSize: 22,\r\n fontWeight: \"bold\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\"\r\n },\r\n iFrame: {\r\n width: 960,\r\n border: 0\r\n },\r\n navigationActionDisabled: {\r\n color: \"rgba(0, 0, 0, 0.26) !important\",\r\n \"& svg\": {\r\n color: \"rgba(0, 0, 0, 0.26)\"\r\n }\r\n }\r\n});\r\n\r\nfunction DataViewerSideBar(props) {\r\n\r\n const {\r\n classes,\r\n viewers,\r\n selected,\r\n isCriteriaDisabled,\r\n isLayoutDisabled,\r\n isTableDisabled,\r\n isChartDisabled,\r\n isMapDisabled,\r\n referenceMetadataUrl,\r\n onViewerSelect,\r\n onCriteriaOpen,\r\n onLayoutOpen\r\n } = props;\r\n\r\n const [anchorEl, setAnchorEl] = useState(null);\r\n\r\n const [isRefMetaVisible, setRefMetaVisibility] = useState(false);\r\n\r\n const {t} = useTranslation();\r\n\r\n const handleViewerSelect = index => {\r\n onViewerSelect(index);\r\n setAnchorEl(null);\r\n };\r\n\r\n return (\r\n
    \r\n
    \r\n\r\n \r\n }\r\n className={isCriteriaDisabled ? classes.navigationActionDisabled : \"\"}\r\n disabled={isCriteriaDisabled}\r\n role=\"menuitem\"\r\n />\r\n \r\n \r\n }\r\n className={(isLayoutDisabled || selected === 1) ? classes.navigationActionDisabled : \"\"}\r\n disabled={isLayoutDisabled || selected === 1}\r\n role=\"menuitem\"\r\n />\r\n \r\n \r\n\r\n {referenceMetadataUrl && (\r\n \r\n setRefMetaVisibility(true)}\r\n showLabels\r\n style={{marginBottom: 8}}\r\n >\r\n \r\n M\r\n \r\n }\r\n role=\"menuitem\"\r\n />\r\n \r\n \r\n \r\n )}\r\n\r\n handleViewerSelect(0)}\r\n showLabels\r\n >\r\n \r\n \r\n = 2 ? 0 : null}\r\n onChange={({currentTarget}) => setAnchorEl(currentTarget)}\r\n showLabels\r\n >\r\n = 2 ? viewers[selected].title : t(\"scenes.dataViewer.sidebar.chart\")}\r\n icon={selected >= 2 ? viewers[selected].icon : }\r\n className={isChartDisabled ? classes.navigationActionDisabled : \"\"}\r\n disabled={isChartDisabled}\r\n role=\"menuitem\"\r\n />\r\n \r\n {!isMapDisabled && (\r\n handleViewerSelect(1)}\r\n showLabels\r\n >\r\n \r\n \r\n )}\r\n\r\n
    \r\n\r\n setAnchorEl(null)}\r\n >\r\n {viewers\r\n .slice(2)\r\n .filter(({hidden}) => hidden !== true)\r\n .map(option => (\r\n handleViewerSelect(option.key)}\r\n >\r\n {option.icon}\r\n {option.title}\r\n \r\n ))}\r\n \r\n\r\n setRefMetaVisibility(false)}\r\n >\r\n setRefMetaVisibility(false)}>\r\n {t(\"scenes.dataViewer.sidebar.dialogs.referenceMetadata.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n );\r\n}\r\n\r\nexport default withStyles(styles)(DataViewerSideBar)","import React, {Fragment, useEffect, useState} from 'react';\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Chip from \"@material-ui/core/Chip\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport CancelIcon from '@material-ui/icons/Cancel';\r\nimport {goToDataset} from \"../../links\";\r\nimport _ from \"lodash\";\r\nimport {getStorageDatasetKey} from \"../../utils/other\";\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport ArrowLeftIcon from '@material-ui/icons/ArrowLeft';\r\nimport ArrowRightIcon from '@material-ui/icons/ArrowRight';\r\n\r\nconst SCROLL_STEP = 100;\r\n\r\nconst styles = theme => ({\r\n root: {\r\n whiteSpace: \"nowrap\"\r\n },\r\n controls: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n width: 72,\r\n margin: \"0 12px\",\r\n \"& button\": {\r\n padding: 6\r\n }\r\n },\r\n sheets: {\r\n overflow: \"hidden\",\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n width: `calc(100% - 112px)`,\r\n marginLeft: 8,\r\n marginRight: 8\r\n },\r\n sheetContainer: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n marginRight: 8\r\n },\r\n sheet: {\r\n maxWidth: 200\r\n }\r\n});\r\n\r\nfunction DataViewerFooter(props) {\r\n\r\n const {\r\n classes,\r\n dataset,\r\n onDatasetsChange\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [datasets, setDatasets] = useState([]);\r\n const [selectedIdx, setSelectedIdx] = useState(-1);\r\n\r\n const [datasetToRemove, setDatasetToRemove] = useState(null);\r\n\r\n const [isScrollLeftDisabled, setIsScrollLeftDisabled] = useState(true);\r\n const [isScrollRightDisabled, setIsScrollRightDisabled] = useState(true);\r\n\r\n const handleScrollbar = () => {\r\n const sheets = document.getElementById(\"data-viewer__footer__sheets\");\r\n setIsScrollLeftDisabled(sheets.scrollLeft === 0);\r\n setIsScrollRightDisabled(sheets.scrollLeft >= (sheets.scrollWidth - sheets.clientWidth));\r\n }\r\n\r\n useEffect(() => {\r\n window.addEventListener(\"resize\", handleScrollbar);\r\n return () => window.removeEventListener(\"resize\", handleScrollbar)\r\n }, []);\r\n\r\n useEffect(() => {\r\n let newDatasets = JSON.parse(sessionStorage.getItem(\"datasets\")) || [];\r\n setDatasets(newDatasets);\r\n }, []);\r\n\r\n useEffect(() => {\r\n const newSelectedIdx = (datasets || []).findIndex(data => getStorageDatasetKey(data) === getStorageDatasetKey(dataset));\r\n setSelectedIdx(newSelectedIdx);\r\n\r\n const sheets = document.getElementById(\"data-viewer__footer__sheets\");\r\n sheets.scrollLeft = newSelectedIdx * 208;\r\n\r\n handleScrollbar();\r\n\r\n onDatasetsChange();\r\n }, [datasets, dataset, onDatasetsChange]);\r\n\r\n const handleRemoveDataset = () => {\r\n let newDatasets = [...datasets];\r\n newDatasets = newDatasets.filter(dataset => getStorageDatasetKey(dataset) !== getStorageDatasetKey(datasetToRemove));\r\n\r\n sessionStorage.setItem(\"datasets\", JSON.stringify(newDatasets));\r\n sessionStorage.removeItem(getStorageDatasetKey(datasetToRemove));\r\n setDatasets(newDatasets);\r\n\r\n setDatasetToRemove(null);\r\n };\r\n\r\n const handleAddDataset = () => {\r\n let newDatasets = [...datasets];\r\n newDatasets.push(dataset);\r\n newDatasets = _.uniqWith(newDatasets, (a, b) => getStorageDatasetKey(a) === getStorageDatasetKey(b));\r\n\r\n sessionStorage.setItem(\"datasets\", JSON.stringify(newDatasets));\r\n sessionStorage.setItem(getStorageDatasetKey(dataset), \"\");\r\n setDatasets(newDatasets);\r\n };\r\n\r\n const handleScrollLeft = () => {\r\n const sheets = document.getElementById(\"data-viewer__footer__sheets\");\r\n sheets.scrollLeft -= SCROLL_STEP;\r\n handleScrollbar();\r\n };\r\n\r\n const handleScrollRight = () => {\r\n const sheets = document.getElementById(\"data-viewer__footer__sheets\");\r\n sheets.scrollLeft += SCROLL_STEP;\r\n handleScrollbar();\r\n };\r\n\r\n return (\r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n\r\n setDatasetToRemove(null)}\r\n >\r\n setDatasetToRemove(null)}>\r\n {t(\"scenes.dataViewer.footer.dialogs.datasetDelete.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n )\r\n}\r\n\r\nexport default withStyles(styles)(DataViewerFooter)","import React, {Fragment, useEffect, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {getTextWidth} from \"../../utils/style\";\r\nimport InfiniteScrollTable from \"../infinite-scroll-table\";\r\nimport {getDimensionAttributeMap, getDimensionFilterValues, getDimensionLabelFromJsonStat, TIME_PERIOD_DIMENSION_KEY} from \"../../utils/jsonStat\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME\r\n} from \"../label-format-selector/constants\";\r\nimport AttributeIcon from \"../attribute-icon\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst styles = theme => ({\r\n root: {\r\n maxWidth: \"100%\"\r\n },\r\n filter: {\r\n display: \"inline-block\",\r\n verticalAlign: \"bottom\",\r\n minWidth: 120,\r\n marginRight: 24,\r\n marginBottom: 8,\r\n maxWidth: \"100%\"\r\n },\r\n item: {\r\n fontSize: 14,\r\n maxWidth: \"100%\"\r\n },\r\n itemWrapper: {\r\n display: \"inline-block\",\r\n verticalAlign: \"bottom\",\r\n maxWidth: \"100%\"\r\n },\r\n itemDisabled: {\r\n pointerEvents: \"none\",\r\n '& > svg': {\r\n visibility: \"hidden\"\r\n }\r\n },\r\n dimensionTitle: {\r\n marginBottom: 4,\r\n fontSize: 13,\r\n color: theme.palette.primary.main\r\n }\r\n});\r\n\r\nconst getFormattedName = (dimension, dimensionValueId, dimensionValueName, labelFormat) => {\r\n\r\n if (dimension === TIME_PERIOD_DIMENSION_KEY) {\r\n return dimensionValueName;\r\n }\r\n\r\n switch (labelFormat) {\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME:\r\n return dimensionValueName;\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID:\r\n return dimensionValueId;\r\n case LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH:\r\n return `[${dimensionValueId}] ${dimensionValueName}`;\r\n default:\r\n return dimensionValueName;\r\n }\r\n};\r\n\r\nconst isMultiSelectDim = (dim, layout) => (layout?.primaryDim?.[0] === dim || layout?.secondaryDim?.[0] === dim);\r\n\r\nfunction DatasetFilters(props) {\r\n const {\r\n classes,\r\n jsonStat,\r\n hiddenAttributes,\r\n layout,\r\n filterTree,\r\n labelFormat,\r\n onSelect\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [visibleId, setVisibleId] = useState(null);\r\n const [data, setData] = useState(null);\r\n\r\n const [checkedKeys, setCheckedKeys] = useState(null);\r\n\r\n const [dimAttributeMap, setDimAttributeMap] = useState(null);\r\n\r\n useEffect(() => {\r\n setDimAttributeMap(getDimensionAttributeMap(jsonStat, hiddenAttributes));\r\n }, [jsonStat, hiddenAttributes]);\r\n\r\n const filters = (layout?.primaryDim || []).concat((layout?.secondaryDim || [])).concat(layout?.filters || []);\r\n\r\n const handleFilterOpen = visibleIdx => {\r\n setVisibleId(visibleIdx);\r\n const data = getDimensionFilterValues(filters[visibleIdx], jsonStat, layout, filterTree, true);\r\n if (filters[visibleIdx] === TIME_PERIOD_DIMENSION_KEY) {\r\n data.reverse();\r\n }\r\n setData(data);\r\n\r\n const dim = filters[visibleIdx];\r\n if (isMultiSelectDim(dim, layout)) {\r\n if (checkedKeys === null && dim === layout?.primaryDim?.[0]) {\r\n setCheckedKeys(layout.primaryDimValues);\r\n } else if (checkedKeys === null && dim === layout?.secondaryDim?.[0]) {\r\n setCheckedKeys(layout.secondaryDimValues);\r\n }\r\n }\r\n };\r\n\r\n const handleFilterClose = () => {\r\n setVisibleId(null);\r\n setCheckedKeys(null);\r\n setData(null);\r\n };\r\n\r\n const handleFilterSubmit = (dimension, values, isArr) => {\r\n let data;\r\n if (isArr) {\r\n data = jsonStat.dimension[dimension].category.index.filter(dimVal => values.includes(dimVal));\r\n } else {\r\n data = values;\r\n }\r\n onSelect(dimension, data);\r\n handleFilterClose();\r\n };\r\n\r\n return (\r\n \r\n
    \r\n {(() => {\r\n const getTextWidthEl = $('').css({\r\n visibility: 'hidden',\r\n position: 'absolute',\r\n fontSize: 16\r\n }).appendTo('body').get(0);\r\n\r\n const select = [];\r\n filters.forEach((filter, idx) => {\r\n\r\n const {\r\n filtersValue\r\n } = layout;\r\n\r\n const value = isMultiSelectDim(filter, layout)\r\n ? layout.primaryDim[0] === filter\r\n ? layout.primaryDimValues\r\n : layout.secondaryDimValues\r\n : filtersValue[filter];\r\n\r\n const getValueLabel = value => isMultiSelectDim(filter, layout)\r\n ? jsonStat.size[jsonStat.id.indexOf(filter)] !== 1\r\n ? value.length === 1\r\n ? t(\"components.datasetFilters.selectedCount\", {selected: value.length})\r\n : t(\"components.datasetFilters.selectedCount_plural\", {selected: value.length})\r\n : getFormattedName(filter, value[0], jsonStat.dimension[filter].category.label[value[0]], labelFormat)\r\n : getFormattedName(filter, value, jsonStat.dimension[filter].category.label[value], labelFormat);\r\n\r\n if (isMultiSelectDim(filter, layout) || jsonStat.size[jsonStat.id.indexOf(filter)] !== 1) {\r\n\r\n const dimLabel = getDimensionLabelFromJsonStat(jsonStat, filter);\r\n const minWidth = getTextWidth(dimLabel, getTextWidthEl) + 16;\r\n\r\n select.push(\r\n
    \r\n {isMultiSelectDim(filter, layout) && (\r\n \r\n {layout.primaryDim[0] === filter\r\n ? t(\"components.datasetFilters.primaryDim\")\r\n : t(\"components.datasetFilters.secondaryDim\")\r\n }\r\n \r\n )}\r\n \r\n {dimLabel}\r\n \r\n getValueLabel(value)}\r\n className={`${classes.item} ${jsonStat.size[jsonStat.id.indexOf(filter)] === 1 ? classes.itemDisabled : \"\"}`}\r\n onOpen={() => jsonStat.size[jsonStat.id.indexOf(filter)] === 1\r\n ? null\r\n : handleFilterOpen(idx)\r\n }\r\n SelectDisplayProps={{\r\n \"aria-haspopup\": true,\r\n \"aria-label\": `${dimLabel}: ${getValueLabel(value)}`\r\n }}\r\n >\r\n {jsonStat.dimension[filter].category.index.map((el, idx) => (\r\n {el}\r\n ))}\r\n \r\n \r\n \r\n
    \r\n \r\n
    \r\n
    \r\n )\r\n }\r\n });\r\n\r\n $(getTextWidthEl).remove();\r\n\r\n return select\r\n })()}\r\n
    \r\n \r\n \r\n {visibleId !== null\r\n ? !isMultiSelectDim(filters[visibleId], layout)\r\n ? t(\"components.datasetFilters.modals.title\", {dimension: getDimensionLabelFromJsonStat(jsonStat, filters[visibleId])})\r\n : t(\"components.datasetFilters.modals.title_plural\", {dimension: getDimensionLabelFromJsonStat(jsonStat, filters[visibleId])})\r\n : \"\"\r\n }\r\n \r\n \r\n {!isMultiSelectDim(filters[visibleId], layout)\r\n ? (\r\n id}\r\n showHeader={false}\r\n columns={[\r\n {\r\n title: \"\",\r\n dataIndex: 'label',\r\n render: (_, {id, label}) => getFormattedName(filters[visibleId], id, label, labelFormat),\r\n minWidth: 100\r\n }\r\n ]}\r\n onRowClick={rowData => handleFilterSubmit(filters[visibleId], rowData.id)}\r\n getRowStyle={rowData => ({\r\n background: rowData.id === layout.filtersValue[filters[visibleId]]\r\n ? \"#fff9e5\"\r\n : undefined\r\n })}\r\n />\r\n )\r\n : (\r\n id}\r\n columns={[\r\n {\r\n title: t(\"components.datasetFilters.table.columns.label.title\"),\r\n dataIndex: 'label',\r\n render: (_, {id, label}) => getFormattedName(filters[visibleId], id, label, labelFormat),\r\n minWidth: 100,\r\n noFilter: true,\r\n noSort: true\r\n }\r\n ]}\r\n rowSelection={{\r\n selectedRowKeys: checkedKeys,\r\n onChange: checkedKeys => setCheckedKeys(data.map(({id}) => id).filter(key => checkedKeys.includes(key)))\r\n }}\r\n />\r\n )\r\n }\r\n \r\n \r\n \r\n {isMultiSelectDim(filters[visibleId], layout) && (\r\n handleFilterSubmit(filters[visibleId], checkedKeys, true)}\r\n color=\"primary\"\r\n disabled={(checkedKeys || []).length < 1}\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n )}\r\n \r\n \r\n
    \r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles)\r\n)(DatasetFilters);","import React, {useEffect, useState} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport TreeItem from \"@material-ui/lab/TreeItem\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport ExpandMoreIcon from \"@material-ui/icons/ExpandMore\";\r\nimport ChevronRightIcon from \"@material-ui/icons/ChevronRight\";\r\nimport TreeView from \"@material-ui/lab/TreeView\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport LibraryAddCheckIcon from \"@material-ui/icons/LibraryAddCheck\";\r\nimport FilterNoneIcon from \"@material-ui/icons/FilterNone\";\r\nimport HeightIcon from \"@material-ui/icons/Height\";\r\nimport VerticalAlignCenterIcon from \"@material-ui/icons/VerticalAlignCenter\";\r\nimport AutoSearchInput from \"../auto-search-input\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport {getFilteredTreeWithPaths, getMaxTreeDepth, getNodesAtDepth} from \"../../utils/tree\";\r\nimport _ from \"lodash\"\r\nimport {v4 as uuidv4} from \"uuid\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\nimport CustomLink from \"../custom-link\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst DEFAULT_TREE_PAGE_SIZE = 30;\r\n\r\nconst TREE_NODE_KEY_OF_LEVEL_PREFIX = \"TREE_NODE_KEY_OF_LEVEL_PREFIX_\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: \"100%\",\r\n width: \"100%\"\r\n },\r\n treeActions: {\r\n marginBottom: 4,\r\n padding: 4\r\n },\r\n treeLevelSelector: {\r\n marginBottom: 4,\r\n padding: 4\r\n },\r\n tree: {\r\n overflow: \"auto\",\r\n \"& .MuiTreeItem-label\": {\r\n width: \"calc(100% - 19px)\"\r\n },\r\n padding: 4\r\n },\r\n treeNode: {\r\n padding: \"2px 0\",\r\n minHeight: 32\r\n },\r\n treeNodeCheckbox: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n padding: 4,\r\n marginRight: 4\r\n },\r\n treeNodeLabel: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n fontSize: 14,\r\n color: \"rgba(0, 0, 0, 0.65)\",\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\"\r\n },\r\n levelTreeNodeLabel: {\r\n color: \"rgba(0, 0, 0, 0.85)\",\r\n fontWeight: 500\r\n },\r\n treeNodeAction: {\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n marginLeft: 4,\r\n \"& > button\": {\r\n padding: 4\r\n }\r\n },\r\n divider: {\r\n margin: \"4px 0\"\r\n },\r\n showMoreNode: {\r\n marginLeft: 10,\r\n \"& i\": {\r\n fontSize: 14\r\n }\r\n },\r\n treeAction: {\r\n padding: 8\r\n }\r\n});\r\n\r\nconst getKeys = (tree, childrenKey, getNodeKey, test) => {\r\n\r\n const res = [];\r\n\r\n const recursive = subTree => subTree\r\n ? (\r\n subTree.map(node => {\r\n if (node[childrenKey] && node[childrenKey].length) {\r\n recursive(node[childrenKey]);\r\n }\r\n if (!test || test(node)) {\r\n res.push(getNodeKey(node));\r\n }\r\n return null;\r\n })\r\n )\r\n : [];\r\n\r\n recursive(tree);\r\n\r\n return res;\r\n};\r\n\r\nconst getFilteredTree = (tree, childrenKey, labelKey, getNodeLabel, searchText, defaultLanguage, languages, isLabelNotMultilingual) => {\r\n\r\n const filterNode = node => {\r\n const label = getNodeLabel\r\n ? getNodeLabel(node)\r\n : isLabelNotMultilingual\r\n ? node[labelKey]\r\n : localizeI18nObj(node[labelKey], defaultLanguage, languages);\r\n\r\n return label.toLowerCase().indexOf(searchText.toLowerCase()) >= 0;\r\n };\r\n\r\n const recursive = subtree => subtree\r\n ? ([\r\n ...subtree\r\n .map(node => ({...node}))\r\n .filter(node => {\r\n if (node[childrenKey] && node[childrenKey].length) {\r\n if (filterNode(node)) {\r\n return true;\r\n } else {\r\n const filteredChildren = [...recursive(node[childrenKey])];\r\n if (filteredChildren.length) {\r\n node[childrenKey] = filteredChildren;\r\n return true;\r\n } else {\r\n return false;\r\n }\r\n }\r\n } else {\r\n return filterNode(node);\r\n }\r\n })\r\n ])\r\n : null;\r\n\r\n return recursive(tree);\r\n};\r\n\r\nconst isSearchedNode = (node, labelKey, searchText, isLabelNotMultilingual, defaultLanguage, languages) => {\r\n const searchedStr = searchText.toLowerCase();\r\n const nodeLabel = isLabelNotMultilingual\r\n ? (node[labelKey] || \"\").toLowerCase()\r\n : (localizeI18nObj(node[labelKey], defaultLanguage, languages) || \"\").toLowerCase();\r\n\r\n return nodeLabel.includes(searchedStr)\r\n};\r\n\r\nconst handleHeight = (uuid, lsExpandedKeys, withLevelSelector) => {\r\n const actionHeight = $(`#enhanced-tree__${uuid} .enhanced-tree__actions`).outerHeight(true) || 0;\r\n\r\n let levelSelectorHeight = 0;\r\n if (withLevelSelector) {\r\n const nodeHeight = $(`#enhanced-tree__${uuid} .enhanced-tree__level-selector .enhanced-tree__level-selector__node:first`).outerHeight(true) || 0;\r\n levelSelectorHeight += nodeHeight;\r\n levelSelectorHeight += 12; // paddings + margins\r\n levelSelectorHeight += 9; // divider\r\n\r\n let found = false;\r\n for (let i = 0; i < lsExpandedKeys.length; i++) {\r\n if (lsExpandedKeys.find(key => key === TREE_NODE_KEY_OF_LEVEL_PREFIX + i) && !found) {\r\n levelSelectorHeight += nodeHeight;\r\n } else {\r\n found = true;\r\n }\r\n }\r\n }\r\n\r\n $(`#enhanced-tree__${uuid} .enhanced-tree__tree`).height(`calc(100% - ${actionHeight + levelSelectorHeight}px)`);\r\n};\r\n\r\nfunction EnhancedTree(props) {\r\n\r\n const {\r\n languages,\r\n defaultLanguage,\r\n hubExtras,\r\n classes,\r\n tree,\r\n getNodeKey,\r\n childrenKey,\r\n labelKey,\r\n getNodeLabel,\r\n checkable,\r\n isCheckDisabled,\r\n defaultExpandedKeys,\r\n nodeActions,\r\n withoutSearch,\r\n withoutCheckControls,\r\n withoutExpandControls,\r\n withLevelSelector,\r\n withoutPagination,\r\n getIsCheckable,\r\n isLabelNotMultilingual,\r\n checkboxCheckedIcon,\r\n checkboxUncheckedIcon,\r\n showDisabledCheckbox = false,\r\n treeActionsDirection\r\n } = props;\r\n\r\n const parsedHubExtras = JSON.parse(hubExtras || \"{}\");\r\n const treePageSize = (parsedHubExtras?.TreePageSize || \"\").length > 0\r\n ? Number(parsedHubExtras.TreePageSize)\r\n : DEFAULT_TREE_PAGE_SIZE;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [uuid] = useState(uuidv4());\r\n\r\n const [filteredTree, setFilteredTree] = useState(null);\r\n\r\n const [searchText, setSearchText] = useState(\"\");\r\n\r\n const [checkedKeys, setCheckedKeys] = useState(props.checkedKeys || []);\r\n const [expandedKeys, setExpandedKeys] = useState(null);\r\n const [showMoreKeyClicks, setShowMoreKeyClicks] = useState({});\r\n\r\n const [lsExpandedKeys, setLsExpandedKeys] = useState([]);\r\n\r\n const handleCheck = (checkedNode, checked) => {\r\n\r\n const newCheckedKeys = [...(props.checkedKeys || checkedKeys)];\r\n checked\r\n ? newCheckedKeys.push(getNodeKey(checkedNode))\r\n : newCheckedKeys.splice((props.checkedKeys || checkedKeys).indexOf(getNodeKey(checkedNode)), 1);\r\n\r\n setCheckedKeys(newCheckedKeys);\r\n if (props.onCheck) {\r\n props.onCheck(newCheckedKeys, checkedNode, checked);\r\n }\r\n };\r\n\r\n const handleLevelCheck = (checkedNode, checked) => {\r\n\r\n const nodesAtDepth = getNodesAtDepth(filteredTree, childrenKey, checkedNode.level + 1)\r\n .filter(node => getIsCheckable ? getIsCheckable(node) : true)\r\n .map(node => getNodeKey(node));\r\n\r\n let newCheckedKeys = [...(props.checkedKeys || checkedKeys)];\r\n newCheckedKeys = checked\r\n ? _.uniq(newCheckedKeys.concat(nodesAtDepth))\r\n : newCheckedKeys.filter(key => !nodesAtDepth.includes(key));\r\n\r\n setCheckedKeys(newCheckedKeys)\r\n if (props.onCheck) {\r\n props.onCheck(newCheckedKeys);\r\n }\r\n };\r\n\r\n const handleExpand = expandedKeys => {\r\n setExpandedKeys(expandedKeys);\r\n if (props.onExpand) {\r\n props.onExpand(expandedKeys);\r\n }\r\n };\r\n\r\n const handleLsExpand = expandedKeys => {\r\n setLsExpandedKeys(expandedKeys);\r\n };\r\n\r\n const handleSearch = searchText => {\r\n setSearchText(searchText);\r\n };\r\n\r\n useEffect(() => {\r\n handleHeight(uuid, lsExpandedKeys, withLevelSelector);\r\n });\r\n\r\n useEffect(() => {\r\n if (filteredTree && expandedKeys === null) {\r\n if (defaultExpandedKeys !== null && defaultExpandedKeys !== undefined) {\r\n const filtTree = getFilteredTreeWithPaths(filteredTree, childrenKey, node => defaultExpandedKeys.includes(getNodeKey(node)));\r\n const filtTreeKeys = getKeys(filtTree, childrenKey, getNodeKey);\r\n setExpandedKeys(filtTreeKeys);\r\n } else {\r\n setExpandedKeys([]);\r\n }\r\n setLsExpandedKeys([]);\r\n }\r\n }, [filteredTree, getNodeKey, childrenKey, expandedKeys, defaultExpandedKeys]);\r\n\r\n useEffect(() => {\r\n if (tree && tree.length > 0) {\r\n const newFilteredTree = getFilteredTree(tree, childrenKey, labelKey, getNodeLabel, searchText, defaultLanguage, languages, isLabelNotMultilingual);\r\n setFilteredTree(newFilteredTree);\r\n\r\n if (searchText && searchText.length > 0) {\r\n const filtTree = getFilteredTreeWithPaths(newFilteredTree, childrenKey, node => isSearchedNode(node, labelKey, searchText, isLabelNotMultilingual, defaultLanguage, languages));\r\n const filtTreeKeys = getKeys(filtTree, childrenKey, getNodeKey);\r\n setExpandedKeys(filtTreeKeys);\r\n setLsExpandedKeys([]);\r\n }\r\n }\r\n }, [tree, getNodeKey, childrenKey, labelKey, getNodeLabel, searchText, defaultLanguage, languages, isLabelNotMultilingual]);\r\n\r\n const getShowMoreNode = parent => {\r\n\r\n const key = `${parent ? getNodeKey(parent) : 'root'}`;\r\n\r\n const remaining = (parent ? parent[childrenKey] : (filteredTree || []).filter(node => node != null)).length - ((showMoreKeyClicks[key] || 0) + 1) * treePageSize;\r\n\r\n return (\r\n {t(\"components.enhancedTree.showMore\", {more: Math.min(remaining, treePageSize), remaining: remaining})}}\r\n onClick={() => setShowMoreKeyClicks({\r\n ...showMoreKeyClicks,\r\n [key]: showMoreKeyClicks[key]\r\n ? showMoreKeyClicks[key] + 1\r\n : 1\r\n })}\r\n />\r\n }\r\n />\r\n );\r\n };\r\n\r\n const getTreeNode = (node, getNodeKey, isLevelTree, checkable, checkedKeys, onCheck, getIsCheckable) => {\r\n\r\n const actions = (nodeActions || [])\r\n .filter(act => act)\r\n .map(act => typeof (act) === \"function\" ? act(node) : act)\r\n .filter(act => act);\r\n\r\n const label = (getNodeLabel && !isLevelTree)\r\n ? getNodeLabel(node)\r\n : isLabelNotMultilingual\r\n ? node[labelKey]\r\n : localizeI18nObj(node[labelKey], defaultLanguage, languages);\r\n\r\n const isNodeCheckable = !isCheckDisabled && (getIsCheckable ? getIsCheckable(node) : true);\r\n\r\n const checked = !isLevelTree\r\n ? checkedKeys.includes(getNodeKey(node))\r\n : (\r\n !getNodesAtDepth(filteredTree, childrenKey, node.level + 1)\r\n .filter(node => getIsCheckable ? getIsCheckable(node) : true)\r\n .map(node => getNodeKey(node))\r\n .some(val => checkedKeys.indexOf(val) === -1)\r\n );\r\n\r\n return (\r\n \r\n {checkable && (showDisabledCheckbox || isNodeCheckable) && (\r\n \r\n {\r\n onCheck(node, event.target.checked);\r\n event.stopPropagation();\r\n }}\r\n disabled={!isNodeCheckable}\r\n inputProps={{\r\n \"aria-label\": checked\r\n ? t(\"components.enhancedTree.checkBox.uncheck.ariaLabel\", {label: label})\r\n : t(\"components.enhancedTree.checkBox.check.ariaLabel\", {label: label})\r\n }}\r\n />\r\n \r\n )}\r\n \r\n 0) ? 4 + (32 * actions.length) : 0)}px)`}}\r\n >\r\n {label}\r\n \r\n \r\n {!isLevelTree && (\r\n
    \r\n {actions\r\n .filter(action => (action !== null && action !== undefined))\r\n .map((action, idx) =>\r\n \r\n {\r\n action.onClick(node);\r\n event.stopPropagation();\r\n }}\r\n aria-label={action.title}\r\n >\r\n {action.icon}\r\n \r\n \r\n )}\r\n
    \r\n )}\r\n \r\n }\r\n onLabelClick={evt => {\r\n if (checkable && isNodeCheckable) {\r\n onCheck(node, !checkedKeys.includes(getNodeKey(node)));\r\n evt.preventDefault()\r\n }\r\n }}\r\n >\r\n {node[childrenKey]\r\n ? node[childrenKey]\r\n .filter((child, index) => withoutPagination || index < treePageSize * ((showMoreKeyClicks[getNodeKey(node)] || 0) + 1))\r\n .map(child => getTreeNode(child, getNodeKey, isLevelTree, checkable, checkedKeys, onCheck, getIsCheckable))\r\n .concat(!withoutPagination && node[childrenKey].length > treePageSize * ((showMoreKeyClicks[getNodeKey(node)] || 0) + 1)\r\n ? [getShowMoreNode(node)]\r\n : []\r\n )\r\n : null\r\n }\r\n \r\n )\r\n };\r\n\r\n let levelTree = [];\r\n if (withLevelSelector) {\r\n const maxTreeDepth = getMaxTreeDepth(filteredTree, childrenKey);\r\n levelTree = [{\r\n id: TREE_NODE_KEY_OF_LEVEL_PREFIX + 0,\r\n [labelKey]: isLabelNotMultilingual\r\n ? t(\"components.enhancedTree.levelSelector\", {level: 0})\r\n : {\r\n [defaultLanguage]: t(\"components.enhancedTree.levelSelector\", {level: 0})\r\n },\r\n level: 0\r\n }];\r\n if (maxTreeDepth !== null && maxTreeDepth !== 0) {\r\n [...Array(maxTreeDepth - 1)].forEach(() => {\r\n let pointer = levelTree[0];\r\n let counter = 0;\r\n while (pointer[childrenKey]) {\r\n pointer = pointer[childrenKey][0];\r\n counter++;\r\n }\r\n pointer[childrenKey] = [{\r\n id: TREE_NODE_KEY_OF_LEVEL_PREFIX + Number(counter + 1),\r\n [labelKey]: isLabelNotMultilingual\r\n ? t(\"components.enhancedTree.levelSelector\", {level: counter + 1})\r\n : {\r\n [defaultLanguage]: t(\"components.enhancedTree.levelSelector\", {level: counter + 1})\r\n },\r\n level: counter + 1\r\n }];\r\n });\r\n }\r\n }\r\n\r\n return (\r\n
    \r\n
    \r\n \r\n \r\n \r\n {!withoutCheckControls && (\r\n \r\n \r\n \r\n \r\n
    \r\n {\r\n const newCheckedKeys = getKeys(filteredTree, childrenKey, getNodeKey, getIsCheckable);\r\n setCheckedKeys(newCheckedKeys)\r\n if (props.onCheck) {\r\n props.onCheck(newCheckedKeys)\r\n }\r\n }}\r\n className={classes.treeAction}\r\n disabled={isCheckDisabled}\r\n >\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n {\r\n setCheckedKeys([])\r\n if (props.onCheck) {\r\n props.onCheck([])\r\n }\r\n }}\r\n className={classes.treeAction}\r\n disabled={isCheckDisabled}\r\n >\r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n )}\r\n {!withoutExpandControls && (\r\n \r\n \r\n \r\n \r\n handleExpand(getKeys(filteredTree, childrenKey, getNodeKey))}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n handleExpand([])}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n
    \r\n
    \r\n \r\n {!withoutSearch && (\r\n \r\n )}\r\n \r\n
    \r\n
    \r\n {withLevelSelector && getKeys(filteredTree, childrenKey, getNodeKey).length > 1 && (\r\n
    \r\n }\r\n defaultExpandIcon={}\r\n disableSelection\r\n expanded={lsExpandedKeys}\r\n onNodeToggle={(ev, nodeIds) => handleLsExpand(nodeIds)}\r\n >\r\n {levelTree.map(node => getTreeNode(node, ({id}) => id, true, checkable, (props.checkedKeys || checkedKeys), handleLevelCheck, getIsCheckable))}\r\n \r\n \r\n
    \r\n )}\r\n
    \r\n {(filteredTree && filteredTree.length > 0 && expandedKeys)\r\n ? (\r\n }\r\n defaultExpandIcon={}\r\n disableSelection\r\n expanded={expandedKeys}\r\n onNodeToggle={(ev, nodeIds) => handleExpand(nodeIds)}\r\n >\r\n {filteredTree.map(node => getTreeNode(node, getNodeKey, false, checkable, (props.checkedKeys || checkedKeys), handleCheck, getIsCheckable))}\r\n \r\n )\r\n : \r\n }\r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(state => ({\r\n languages: state.app.languages,\r\n defaultLanguage: state.app.language,\r\n hubExtras: state.hub.hub?.extras\r\n }))\r\n)(EnhancedTree);","import React from 'react';\r\nimport {connect} from \"react-redux\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {DatePicker, MuiPickersUtilsProvider} from '@material-ui/pickers';\r\nimport DateFnsUtils from '@date-io/date-fns';\r\n\r\nimport enLocale from \"date-fns/locale/en-US\";\r\nimport itLocale from \"date-fns/locale/it\";\r\nimport frLocale from \"date-fns/locale/fr\";\r\nimport esLocale from \"date-fns/locale/es\";\r\nimport ptLocale from \"date-fns/locale/pt\";\r\n\r\nconst getLocale = lang => {\r\n const map = {\r\n it: itLocale,\r\n en: enLocale,\r\n fr: frLocale,\r\n es: esLocale,\r\n pt: ptLocale\r\n }\r\n\r\n return map[lang] || enLocale;\r\n};\r\n\r\nconst getFormat = lang => {\r\n const map = {\r\n it: \"dd-MM-yyyy\",\r\n en: \"yyyy-MM-dd\"\r\n };\r\n\r\n return map[lang] || \"yyyy-MM-dd\";\r\n}\r\n\r\nconst CustomDatePicker = ({\r\n appLang,\r\n \r\n label,\r\n value,\r\n minDate,\r\n maxDate,\r\n onChange,\r\n\r\n openTo = \"year\",\r\n views = [\"year\", \"month\", \"date\"],\r\n format = getFormat(appLang),\r\n inputVariant = undefined,\r\n className = undefined\r\n }) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default connect(state => ({\r\n appLang: state.app.language\r\n}))(CustomDatePicker);","import React, {Fragment} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport moment from \"moment\";\r\nimport _ from \"lodash\"\r\nimport {\r\n CRITERIA_FILTER_TYPE_EMPTY,\r\n CRITERIA_FILTER_TYPE_PERIODS,\r\n CRITERIA_FILTER_TYPE_RANGE,\r\n FREQ_MONTHLY,\r\n FREQ_QUARTERLY,\r\n FREQ_SEMESTER\r\n} from \"../../utils/criteria\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport TextField from '@material-ui/core/TextField';\r\nimport {canSaveAsView} from \"../../utils/user\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport {isValidIntegerInInclusiveRange} from \"../../utils/validator\";\r\nimport CustomDatePicker from \"../custom-date-picker\";\r\n\r\nconst styles = theme => ({\r\n root: {},\r\n selectContainer: {},\r\n formControl: {\r\n width: \"100%\"\r\n },\r\n timePeriodInput: {\r\n width: \"100%\"\r\n },\r\n alert: {\r\n padding: \"0 !important\"\r\n },\r\n lastPeriodsLabel: {\r\n height: 48,\r\n lineHeight: \"48px\"\r\n },\r\n lastPeriodsInput: {\r\n \"& input\": {\r\n height: 20,\r\n padding: 14\r\n }\r\n },\r\n lastPeriodsMenu: {\r\n maxHeight: 300\r\n }\r\n});\r\n\r\nconst periods = year => ({\r\n [FREQ_SEMESTER]: {\r\n values: [\"S1\", \"S2\"],\r\n S1: {\r\n start: `${year}-01-01`,\r\n end: moment(`${year}-06`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n S2: {\r\n start: `${year}-07-01`,\r\n end: moment(`${year}-12`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n }\r\n },\r\n [FREQ_QUARTERLY]: {\r\n values: [\"Q1\", \"Q2\", \"Q3\", \"Q4\"],\r\n Q1: {\r\n start: `${year}-01-01`,\r\n end: moment(`${year}-03`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n Q2: {\r\n start: `${year}-04-01`,\r\n end: moment(`${year}-06`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n Q3: {\r\n start: `${year}-07-01`,\r\n end: moment(`${year}-09`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n Q4: {\r\n start: `${year}-10-01`,\r\n end: moment(`${year}-12`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n }\r\n },\r\n [FREQ_MONTHLY]: {\r\n values: [\"01\", \"02\", \"03\", \"04\", \"05\", \"06\", \"07\", \"08\", \"09\", \"10\", \"11\", \"12\"],\r\n \"01\": {\r\n start: `${year}-01-01`,\r\n end: moment(`${year}-01`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"02\": {\r\n start: `${year}-02-01`,\r\n end: moment(`${year}-02`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"03\": {\r\n start: `${year}-03-01`,\r\n end: moment(`${year}-03`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"04\": {\r\n start: `${year}-04-01`,\r\n end: moment(`${year}-04`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"05\": {\r\n start: `${year}-05-01`,\r\n end: moment(`${year}-05`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"06\": {\r\n start: `${year}-06-01`,\r\n end: moment(`${year}-06`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"07\": {\r\n start: `${year}-07-01`,\r\n end: moment(`${year}-07`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"08\": {\r\n start: `${year}-08-01`,\r\n end: moment(`${year}-08`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"09\": {\r\n start: `${year}-09-01`,\r\n end: moment(`${year}-09`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"10\": {\r\n start: `${year}-10-01`,\r\n end: moment(`${year}-10`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"11\": {\r\n start: `${year}-11-01`,\r\n end: moment(`${year}-11`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n },\r\n \"12\": {\r\n start: `${year}-12-01`,\r\n end: moment(`${year}-12`, \"YYYY-MM\").endOf('month').format('YYYY-MM-DD')\r\n }\r\n }\r\n});\r\n\r\nconst getYearsArray = (startYear, endYear) => {\r\n const res = [];\r\n\r\n if (startYear && endYear) {\r\n const startYearNumeric = Number(startYear);\r\n const endYearNumeric = Number(endYear);\r\n\r\n for (let i = startYearNumeric; i <= endYearNumeric; i++) {\r\n res.push(i + \"\");\r\n }\r\n }\r\n\r\n return res;\r\n};\r\n\r\nconst getPeriod = (freq, date) => {\r\n if (freq && date) {\r\n const year = date.slice(0, 4);\r\n\r\n if (periods(year)[freq]) {\r\n const dateMoment = moment(date, \"YYYY-MM-DD\");\r\n\r\n return periods(year)[freq].values.find(period => {\r\n const start = moment(periods(year)[freq][period].start, \"YYYY-MM-DD\");\r\n const end = moment(periods(year)[freq][period].end, \"YYYY-MM-DD\");\r\n\r\n return dateMoment.isBetween(start, end, null, \"[]\");\r\n });\r\n }\r\n }\r\n\r\n return null;\r\n};\r\n\r\nconst getNewTimePeriodFromYear = (timePeriod, date, year, minYear, maxYear, period, minPeriod, maxPeriod, isFrom) => {\r\n let newDate;\r\n\r\n if (isFrom) {\r\n if (year === minYear && period && minPeriod) {\r\n if (moment((year + period), \"YYYY-MM-DD\").isSameOrAfter(moment(timePeriod.minDate, \"YYYY-MM-DD\"))) {\r\n newDate = periods(year)[timePeriod.freq][period].start;\r\n } else {\r\n newDate = periods(year)[timePeriod.freq][minPeriod].start;\r\n }\r\n\r\n } else if (year === maxYear && period && maxPeriod) {\r\n if (moment((year + period), \"YYYY-MM-DD\").isSameOrBefore(moment(timePeriod.maxDate, \"YYYY-MM-DD\"))) {\r\n newDate = periods(year)[timePeriod.freq][period].start;\r\n } else {\r\n newDate = periods(year)[timePeriod.freq][maxPeriod].start;\r\n }\r\n\r\n } else {\r\n newDate = period\r\n ? periods(year)[timePeriod.freq][period].start\r\n : year + \"-01-01\";\r\n }\r\n\r\n } else {\r\n if (year === minYear && period && minPeriod) {\r\n if (period && moment((year + period), \"YYYY-MM-DD\").isSameOrAfter(moment(timePeriod.minDate, \"YYYY-MM-DD\"))) {\r\n newDate = periods(year)[timePeriod.freq][period].end;\r\n } else {\r\n newDate = periods(year)[timePeriod.freq][minPeriod].end;\r\n }\r\n\r\n } else if (year === maxYear && period && maxPeriod) {\r\n if (period && moment((year + period), \"YYYY-MM-DD\").isSameOrBefore(moment(timePeriod.maxDate, \"YYYY-MM-DD\"))) {\r\n newDate = periods(year)[timePeriod.freq][period].end;\r\n } else {\r\n newDate = periods(year)[timePeriod.freq][maxPeriod].end;\r\n }\r\n\r\n } else {\r\n newDate = period\r\n ? periods(year)[timePeriod.freq][period].end\r\n : year + \"-12-31\";\r\n }\r\n }\r\n\r\n return {\r\n ...timePeriod,\r\n fromDate: isFrom ? newDate : timePeriod.fromDate,\r\n toDate: !isFrom ? newDate : timePeriod.toDate,\r\n }\r\n};\r\n\r\nconst handleSetTimePeriodRange = (newTimePeriod, onSetTimePeriod, setCriteriaValidity) => {\r\n onSetTimePeriod(newTimePeriod);\r\n setCriteriaValidity(moment(newTimePeriod.fromDate, \"YYYY-MM-DD\").isSameOrBefore(moment(newTimePeriod.toDate, \"YYYY-MM-DD\")));\r\n};\r\n\r\nconst handleSetTimePeriodPeriods = (newTimePeriod, onSetTimePeriod, setCriteriaValidity) => {\r\n onSetTimePeriod(newTimePeriod);\r\n setCriteriaValidity(isValidIntegerInInclusiveRange(newTimePeriod.periods, 1));\r\n};\r\n\r\nconst TimePeriod = ({\r\n t,\r\n classes,\r\n user,\r\n timePeriod,\r\n freqDimension,\r\n onSetTimePeriod,\r\n isCriteriaValid,\r\n setCriteriaValidity\r\n }) => {\r\n\r\n const minYear = timePeriod.minDate ? moment(timePeriod.minDate).format(\"YYYY\") : null;\r\n const maxYear = timePeriod.maxDate ? moment(timePeriod.maxDate).format(\"YYYY\") : null;\r\n const fromYear = timePeriod.fromDate ? moment(timePeriod.fromDate).format(\"YYYY\") : null;\r\n const toYear = timePeriod.toDate ? moment(timePeriod.toDate).format(\"YYYY\") : null;\r\n\r\n const minPeriod = getPeriod(timePeriod.freq, timePeriod.minDate);\r\n const maxPeriod = getPeriod(timePeriod.freq, timePeriod.maxDate);\r\n const fromPeriod = getPeriod(timePeriod.freq, timePeriod.fromDate);\r\n const toPeriod = getPeriod(timePeriod.freq, timePeriod.toDate);\r\n\r\n const fromPeriods = periods(fromYear)[timePeriod.freq]\r\n ? periods(fromYear)[timePeriod.freq].values.slice(\r\n fromYear === minYear ? periods(fromYear)[timePeriod.freq].values.indexOf(minPeriod) : 0,\r\n fromYear === maxYear ? periods(fromYear)[timePeriod.freq].values.indexOf(maxPeriod) + 1 : undefined\r\n )\r\n : [];\r\n const toPeriods = periods(toYear)[timePeriod.freq]\r\n ? periods(toYear)[timePeriod.freq].values.slice(\r\n toYear === minYear ? periods(toYear)[timePeriod.freq].values.indexOf(minPeriod) : 0,\r\n toYear === maxYear ? periods(toYear)[timePeriod.freq].values.indexOf(maxPeriod) + 1 : undefined\r\n )\r\n : [];\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n {t(\"components.criteria.timePeriod.typeSelector.label\") + \":\"}\r\n \r\n \r\n \r\n onSetTimePeriod({...timePeriod, selectorType: ev.target.value})}\r\n SelectProps={{\r\n SelectDisplayProps: {\r\n \"aria-haspopup\": true,\r\n \"aria-labelledby\": \"time-period__type-selector-label\"\r\n }\r\n }}\r\n >\r\n {canSaveAsView(user) && (\r\n \r\n {t(\"components.criteria.timePeriod.typeSelector.value.fullRange\")}\r\n \r\n )}\r\n \r\n {t(\"components.criteria.timePeriod.typeSelector.value.customRange\")}\r\n \r\n {!timePeriod.missingRange && freqDimension !== null && (\r\n \r\n {t(\"components.criteria.timePeriod.typeSelector.value.onlyLastPeriods\")}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n {(() => {\r\n if (timePeriod.selectorType === CRITERIA_FILTER_TYPE_RANGE) {\r\n if (timePeriod.freq !== null) {\r\n return (\r\n \r\n {!isCriteriaValid && (\r\n \r\n {t(\"components.criteria.timePeriod.alert.notValidRange\")}\r\n \r\n )}\r\n \r\n \r\n \r\n {t(\"components.criteria.timePeriod.customRange.start\")}\r\n \r\n \r\n {fromYear && minYear && toYear && (\r\n \r\n \r\n {t(\"components.criteria.timePeriod.customRange.year\")}\r\n \r\n {\r\n const year = ev.target.value;\r\n const newTimePeriod = getNewTimePeriodFromYear(timePeriod, timePeriod.fromDate, year, minYear, maxYear, fromPeriod, minPeriod, maxPeriod, true);\r\n handleSetTimePeriodRange(newTimePeriod, onSetTimePeriod, setCriteriaValidity);\r\n }}\r\n SelectDisplayProps={{\r\n \"aria-haspopup\": true,\r\n \"aria-labelledby\": \"time-period__custom-range__start-year-label\"\r\n }}\r\n >\r\n {getYearsArray(minYear, maxYear).map((year, idx) => (\r\n {year}\r\n ))}\r\n \r\n \r\n )}\r\n \r\n {fromYear && periods(fromYear)[timePeriod.freq] !== undefined && fromPeriods && fromPeriod && (\r\n \r\n \r\n \r\n {t(\"components.criteria.timePeriod.customRange.period\")}\r\n \r\n {\r\n const period = ev.target.value;\r\n const newTimePeriod = _.cloneDeep(timePeriod);\r\n newTimePeriod.fromDate = periods(fromYear)[timePeriod.freq][period].start;\r\n handleSetTimePeriodRange(newTimePeriod, onSetTimePeriod, setCriteriaValidity);\r\n }}\r\n SelectDisplayProps={{\r\n \"aria-haspopup\": true,\r\n \"aria-labelledby\": \"time-period__custom-range__start-period-label\"\r\n }}\r\n >\r\n {fromPeriods.map((period, idx) => (\r\n {period}\r\n ))}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {t(\"components.criteria.timePeriod.customRange.end\")}\r\n \r\n \r\n {toYear && fromYear && maxYear && (\r\n \r\n \r\n {t(\"components.criteria.timePeriod.customRange.year\")}\r\n \r\n {\r\n const year = ev.target.value;\r\n const newTimePeriod = getNewTimePeriodFromYear(timePeriod, timePeriod.toDate, year, minYear, maxYear, toPeriod, minPeriod, maxPeriod, false);\r\n handleSetTimePeriodRange(newTimePeriod, onSetTimePeriod, setCriteriaValidity);\r\n }}\r\n SelectDisplayProps={{\r\n \"aria-haspopup\": true,\r\n \"aria-labelledby\": \"time-period__custom-range__end-year-label\"\r\n }}\r\n >\r\n {getYearsArray(minYear, maxYear).map((year, idx) => (\r\n {year}\r\n ))}\r\n \r\n \r\n )}\r\n \r\n {toYear && periods(toYear)[timePeriod.freq] !== undefined && toPeriods && toPeriod && (\r\n \r\n \r\n \r\n {t(\"components.criteria.timePeriod.customRange.period\")}\r\n \r\n {\r\n const period = ev.target.value;\r\n const newTimePeriod = _.cloneDeep(timePeriod);\r\n newTimePeriod.toDate = periods(toYear)[timePeriod.freq][period].end;\r\n handleSetTimePeriodRange(newTimePeriod, onSetTimePeriod, setCriteriaValidity);\r\n }}\r\n SelectDisplayProps={{\r\n \"aria-haspopup\": true,\r\n \"aria-labelledby\": \"time-period__custom-range__end-period-label\"\r\n }}\r\n >\r\n {toPeriods.map((period, idx) => (\r\n {period}\r\n ))}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n )\r\n } else {\r\n return (\r\n \r\n \r\n onSetTimePeriod({\r\n ...timePeriod,\r\n fromDate: date ? moment(date).format(\"YYYY-MM-DD\") : timePeriod.minDate\r\n })}\r\n className={classes.timePeriodInput}\r\n />\r\n \r\n \r\n onSetTimePeriod({\r\n ...timePeriod,\r\n toDate: date ? moment(date).format(\"YYYY-MM-DD\") : timePeriod.maxDate\r\n })}\r\n className={classes.timePeriodInput}\r\n />\r\n \r\n \r\n )\r\n }\r\n } else if (timePeriod.selectorType === CRITERIA_FILTER_TYPE_PERIODS) {\r\n return (\r\n \r\n \r\n {\r\n const newTimePeriod = _.cloneDeep(timePeriod);\r\n newTimePeriod.periods = target.value !== \"\" ? Number(target.value) : null;\r\n handleSetTimePeriodPeriods(newTimePeriod, onSetTimePeriod, setCriteriaValidity);\r\n }}\r\n error={!isValidIntegerInInclusiveRange(timePeriod.periods, 1)}\r\n helperText={!isValidIntegerInInclusiveRange(timePeriod.periods, 1)\r\n ? t(\"components.criteria.timePeriod.selectLastPeriods.helperText\")\r\n : null\r\n }\r\n inputProps={{\r\n \"aria-labelledby\": \"time-period__last-period-selector-label\"\r\n }}\r\n />\r\n \r\n \r\n
    \r\n {t(\"components.criteria.timePeriod.selectLastPeriods.label\")}\r\n
    \r\n
    \r\n
    \r\n )\r\n } else {\r\n return (\r\n \r\n )\r\n }\r\n })()}\r\n
    \r\n
    \r\n
    \r\n )\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n connect(state => ({\r\n user: state.user\r\n }))\r\n)(TimePeriod)","import React, {Fragment, useEffect, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport Call from \"../../hocs/call\";\r\nimport {\r\n CRITERIA_SELECTION_MODE_ALL,\r\n CRITERIA_SELECTION_MODE_STEP_BY_STEP,\r\n CRITERIA_SELECTION_TYPE_DYNAMIC,\r\n fetchDatasetStructureCodelist,\r\n fetchDatasetStructureCodelists,\r\n setDatasetStructureCodelistCriteria,\r\n setDatasetStructureCodelistTimePeriod\r\n} from \"../../state/dataset/datasetActions\";\r\nimport EnhancedTree from \"../enhanced-tree\";\r\nimport _ from \"lodash\"\r\nimport PlaylistAddCheckIcon from \"@material-ui/icons/PlaylistAddCheck\"\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport InfiniteScrollTable from \"../infinite-scroll-table\";\r\nimport TimePeriod from \"./TimePeriod\";\r\nimport Typography from '@material-ui/core/Typography';\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {TIME_PERIOD_DIMENSION_KEY} from \"../../utils/jsonStat\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport {CRITERIA_FILTER_TYPE_CODES, CRITERIA_FILTER_TYPE_STRING} from \"../../utils/criteria\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport LibraryAddCheckIcon from \"@material-ui/icons/LibraryAddCheck\";\r\nimport FilterNoneIcon from \"@material-ui/icons/FilterNone\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: 440,\r\n width: \"100%\"\r\n },\r\n criteriaContainer: {\r\n width: \"100%\",\r\n padding: \"16px 24px 0\",\r\n overflowY: \"hidden\"\r\n },\r\n criteriaContainerDimension: {\r\n height: \"100%\"\r\n },\r\n codelistInfo: {\r\n width: \"100%\",\r\n padding: \"8px 0\"\r\n },\r\n codelistContainer: {\r\n width: \"100%\",\r\n },\r\n emptyContainer: {\r\n height: \"100%\",\r\n width: \"100%\"\r\n },\r\n timePeriodContainer: {\r\n height: \"100%\",\r\n width: \"100%\"\r\n },\r\n treeActions: {\r\n marginBottom: 8\r\n },\r\n tabLabel: {\r\n display: \"-webkit-box\",\r\n lineClamp: 3,\r\n boxOrient: \"vertical\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\"\r\n }\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchCodelist: ({nodeId, datasetId, dimensionId, type, criteria, defaultLastNPeriods}) =>\r\n dispatch(fetchDatasetStructureCodelist(nodeId, datasetId, dimensionId, type, criteria, defaultLastNPeriods)),\r\n fetchCodelists: ({nodeId, datasetId, type, defaultLastNPeriods}) =>\r\n dispatch(fetchDatasetStructureCodelists(nodeId, datasetId, type, defaultLastNPeriods)),\r\n onSetCriteria: criteria => dispatch(setDatasetStructureCodelistCriteria(criteria)),\r\n onSetTimePeriod: timePeriod => dispatch(setDatasetStructureCodelistTimePeriod(timePeriod)),\r\n});\r\n\r\nconst handleStyle = dimId => {\r\n const headerHeight = $(\"#criteria__header\").outerHeight(true) || 0;\r\n $(\"#criteria__container\").height(`calc(100% - ${headerHeight}px)`);\r\n\r\n const codelistInfoHeight = $(`#dimension__${dimId} #codelist-info`).outerHeight(true) || 0;\r\n $(`#dimension__${dimId} #codelist-container`).height(`calc(100% - ${codelistInfoHeight}px)`);\r\n};\r\n\r\nfunction Criteria(props) {\r\n const {\r\n t,\r\n classes,\r\n nodeId,\r\n datasetId,\r\n dimensions,\r\n freqDimension,\r\n mode,\r\n type,\r\n codes,\r\n isCodesFlat,\r\n codelists,\r\n areCodelistsFlat,\r\n codelistsLength,\r\n criteria,\r\n timePeriod,\r\n fetchCodelist,\r\n fetchCodelists,\r\n onSetCriteria,\r\n onSetTimePeriod,\r\n isCriteriaValid,\r\n setCriteriaValidity,\r\n defaultLastNPeriods\r\n } = props;\r\n\r\n const [tabId, setTabId] = useState(null);\r\n const [isCallDisabled, setIsCallDisabled] = useState(false);\r\n\r\n const [tmpCriteria, setTmpCriteria] = useState(null);\r\n const [tmpTabId, setTmpTabId] = useState(null);\r\n\r\n const [lastNotCodedFilter, setLastNotCodedFilter] = useState(null);\r\n\r\n useEffect(() => {\r\n const fun = () => dimensions[tabId]\r\n ? handleStyle(dimensions[tabId].id)\r\n : null;\r\n\r\n window.addEventListener(\"resize\", fun);\r\n\r\n return () => {\r\n window.removeEventListener(\"resize\", fun);\r\n }\r\n }, [dimensions, tabId]);\r\n\r\n useEffect(() => {\r\n if (dimensions[tabId]) {\r\n handleStyle(dimensions[tabId].id);\r\n }\r\n });\r\n\r\n useEffect(() => {\r\n if (tabId === null) {\r\n const lastValorizedDimension = dimensions\r\n .map(({id}) => id)\r\n .reverse()\r\n .find(dim => (criteria[dim]?.filterValues || []).length > 0 || criteria[dim]?.period > 0);\r\n\r\n if (type === CRITERIA_SELECTION_TYPE_DYNAMIC) {\r\n setTabId((lastValorizedDimension)\r\n ? dimensions.map(({id}) => id).indexOf(lastValorizedDimension)\r\n : 0\r\n );\r\n\r\n } else {\r\n setTabId(0);\r\n }\r\n }\r\n }, [tabId, dimensions, criteria, type]);\r\n\r\n const handleTabChange = newTabId => {\r\n const newCriteria = _.cloneDeep(criteria);\r\n\r\n const dimension = dimensions[tabId].id;\r\n const filterValue = criteria?.[dimension]?.filterValues?.[0];\r\n if (type === CRITERIA_SELECTION_TYPE_DYNAMIC && !dimensions[tabId]?.extra?.DataStructureRef && filterValue) {\r\n setLastNotCodedFilter({dimension, filterValue});\r\n }\r\n\r\n if (type === CRITERIA_SELECTION_TYPE_DYNAMIC && newTabId < (dimensions.length - 1)) {\r\n\r\n const criteriaToRemove = dimensions\r\n .map(({id}) => id)\r\n .slice(newTabId + 1)\r\n .filter(dim => newCriteria[dim] !== null && newCriteria[dim] !== undefined);\r\n\r\n if (criteriaToRemove.length > 0) {\r\n criteriaToRemove.forEach(dim => newCriteria[dim] = undefined);\r\n setTmpCriteria(newCriteria);\r\n setTmpTabId(newTabId);\r\n\r\n } else {\r\n setTabId(newTabId);\r\n setIsCallDisabled(false);\r\n }\r\n\r\n } else {\r\n setTabId(newTabId);\r\n setIsCallDisabled(false);\r\n }\r\n };\r\n\r\n const handleCheck = (checkedKeys, type) => {\r\n const newCriteria = _.cloneDeep(criteria);\r\n const dimensionId = dimensions[tabId].id;\r\n\r\n let newDimensionCriteria = undefined;\r\n\r\n if (checkedKeys && ((checkedKeys.length === 1 && checkedKeys[0] !== \"\") || checkedKeys.length > 1)) {\r\n newDimensionCriteria = {\r\n id: dimensionId,\r\n type: (type || CRITERIA_FILTER_TYPE_CODES),\r\n filterValues: checkedKeys,\r\n period: null,\r\n from: null,\r\n to: null\r\n };\r\n }\r\n\r\n newCriteria[dimensionId] = newDimensionCriteria;\r\n\r\n onSetCriteria(newCriteria);\r\n };\r\n\r\n const handleFetch = ({dimensionId, criteria: newCriteria}) => {\r\n const param = {\r\n nodeId,\r\n datasetId,\r\n dimensionId,\r\n type,\r\n criteria: newCriteria,\r\n defaultLastNPeriods\r\n };\r\n\r\n if (mode === CRITERIA_SELECTION_MODE_STEP_BY_STEP) {\r\n fetchCodelist(param);\r\n } else {\r\n fetchCodelists(param);\r\n }\r\n\r\n setIsCallDisabled(true);\r\n };\r\n\r\n return (\r\n
    \r\n {dimensions && tabId !== null && (\r\n \r\n \r\n handleTabChange(newValue)}\r\n >\r\n {(dimensions || []).map((dim, idx) => (\r\n \r\n \r\n \r\n \r\n {dim.label || dim.id}\r\n \r\n \r\n {codelistsLength?.[idx] && (\r\n \r\n {`(${(criteria[dim.id]?.filterValues || []).length}/${codelistsLength[idx]})`}\r\n \r\n )}\r\n \r\n \r\n }\r\n id={`tab__${dim.id}`}\r\n aria-controls={`dimension__${dim.id}`}\r\n tabIndex={0}\r\n disabled={!isCriteriaValid}\r\n />\r\n ))}\r\n \r\n \r\n \r\n {(dimensions || []).map((dim, idx) => (\r\n
    \r\n ))}\r\n \r\n\r\n setTmpCriteria(null)}\r\n >\r\n \r\n {t(\"components.criteria.dialogs.warning.losingFilters.title\")}\r\n \r\n \r\n {\r\n setTmpCriteria(null);\r\n setTmpTabId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.cancel\")}\r\n \r\n {\r\n setTmpCriteria(null);\r\n onSetCriteria(tmpCriteria);\r\n setTmpTabId(null);\r\n setTabId(tmpTabId);\r\n handleFetch({\r\n dimensionId: dimensions[tmpTabId].id,\r\n criteria: {\r\n ...tmpCriteria,\r\n [dimensions[tmpTabId].id]: undefined\r\n }\r\n });\r\n }}\r\n color=\"primary\"\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n \r\n \r\n\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n connect(null, mapDispatchToProps)\r\n)(Criteria);","import React, {Fragment} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {Draggable, Droppable} from \"react-beautiful-dnd\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport CardHeader from \"@material-ui/core/CardHeader\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: \"100%\",\r\n width: \"100%\",\r\n background: \"#eeeeee\"\r\n },\r\n sectionHeaderContainer: {\r\n height: 48,\r\n padding: \"16px 16px 0\"\r\n },\r\n sectionHeaderContent: {\r\n width: \"100%\"\r\n },\r\n sectionHeaderIcon: {\r\n width: 24,\r\n marginRight: 8,\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\"\r\n },\r\n sectionHeaderTitle: {\r\n width: `calc(100% - 32px)`,\r\n height: 30,\r\n display: \"inline-block\",\r\n verticalAlign: \"middle\",\r\n textOverflow: \"ellipsis\",\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\"\r\n },\r\n sectionContentWrapper: {\r\n width: \"100%\",\r\n height: \"calc(100% - 48px)\",\r\n padding: 16\r\n },\r\n draggingHover: {\r\n border: \"1px dashed #999999\"\r\n },\r\n sectionContent: {\r\n width: \"100%\",\r\n height: \"100%\",\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\"\r\n },\r\n sectionItem: {\r\n padding: \"2px 16px\"\r\n },\r\n dimension: {\r\n margin: 0\r\n },\r\n dimensionLabel: {\r\n textOverflow: \"ellipsis\",\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\"\r\n }\r\n});\r\n\r\nconst getItemStyle = (isDragging, draggableStyle) => ({\r\n userSelect: 'none',\r\n marginBottom: 8,\r\n ...draggableStyle\r\n});\r\n\r\nconst LayoutSection = ({\r\n classes,\r\n id,\r\n title,\r\n Icon,\r\n dimensions,\r\n jsonStat,\r\n disabled\r\n }) =>\r\n\r\n \r\n \r\n \r\n {Icon}\r\n {title}\r\n \r\n \r\n }\r\n classes={{\r\n content: classes.sectionHeaderContent\r\n }}\r\n />\r\n \r\n {(provided, snapshot) => (\r\n
    \r\n
    \r\n {dimensions.map((item, idx) =>\r\n \r\n {(provided, snapshot) => (\r\n \r\n \r\n \r\n \r\n \r\n {jsonStat.dimension[item].label || item}\r\n \r\n \r\n {`(${jsonStat.size[jsonStat.id.indexOf(item)]})`}\r\n \r\n \r\n \r\n \r\n
    \r\n )}\r\n \r\n )}\r\n {provided.placeholder}\r\n
    \r\n \r\n )}\r\n
    \r\n
    ;\r\n\r\nexport default compose(\r\n withStyles(styles)\r\n)(LayoutSection);","import React from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {DragDropContext} from \"react-beautiful-dnd\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FilterListIcon from '@material-ui/icons/FilterList';\r\nimport ViewCompactIcon from '@material-ui/icons/ViewCompact';\r\nimport ViewStreamIcon from '@material-ui/icons/ViewStream';\r\nimport ViewColumnIcon from '@material-ui/icons/ViewColumn';\r\nimport Table from \"../table\";\r\nimport LayoutSection from \"../layout-section\";\r\nimport \"./style.css\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n margin: -8,\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"center\"\r\n },\r\n layoutContainer: {\r\n width: \"60%\",\r\n height: \"100%\",\r\n padding: 8\r\n },\r\n previewContainer: {\r\n width: \"40%\",\r\n height: \"100%\",\r\n padding: 8\r\n },\r\n section: {\r\n height: 240,\r\n padding: 8\r\n }\r\n});\r\n\r\nconst reorder = (list, startIndex, endIndex) => {\r\n const [removed] = list.splice(startIndex, 1);\r\n list.splice(endIndex, 0, removed);\r\n};\r\n\r\nconst move = (source, destination, droppableSource, droppableDestination) => {\r\n const [removed] = source.splice(droppableSource.index, 1);\r\n destination.splice(droppableDestination.index, 0, removed);\r\n};\r\n\r\nconst onDragEnd = (result, dimensions, setDimensions) => {\r\n\r\n const {\r\n source,\r\n destination\r\n } = result;\r\n\r\n // dropped outside the list\r\n if (!destination) {\r\n return;\r\n }\r\n\r\n const newDimensions = JSON.parse(JSON.stringify(dimensions));\r\n\r\n if (source.droppableId === destination.droppableId) {\r\n reorder(\r\n newDimensions[source.droppableId],\r\n source.index,\r\n destination.index\r\n );\r\n\r\n } else {\r\n move(\r\n newDimensions[source.droppableId],\r\n newDimensions[destination.droppableId],\r\n source,\r\n destination\r\n );\r\n }\r\n\r\n setDimensions(newDimensions);\r\n};\r\n\r\nconst TableLayout = ({\r\n t,\r\n classes,\r\n jsonStat,\r\n layout,\r\n labelFormat,\r\n setLayout\r\n }) => {\r\n const {\r\n filters,\r\n sections,\r\n rows,\r\n cols,\r\n } = layout;\r\n\r\n let colCount = 1;\r\n cols.forEach(col => colCount *= jsonStat.size[jsonStat.id.indexOf(col)]);\r\n let rowCount = 1;\r\n rows.forEach(row => rowCount *= jsonStat.size[jsonStat.id.indexOf(row)]);\r\n sections.forEach(section => rowCount *= jsonStat.size[jsonStat.id.indexOf(section)]);\r\n\r\n return (\r\n
    \r\n
    \r\n onDragEnd(result, layout, setLayout)}>\r\n \r\n \r\n }\r\n dimensions={filters}\r\n jsonStat={jsonStat}\r\n />\r\n \r\n \r\n }\r\n dimensions={sections}\r\n jsonStat={jsonStat}\r\n />\r\n \r\n \r\n }\r\n dimensions={rows}\r\n jsonStat={jsonStat}\r\n />\r\n \r\n \r\n }\r\n dimensions={cols}\r\n jsonStat={jsonStat}\r\n />\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n \r\n \r\n {t(\"components.tableLayout.rowCount\", {rowCount})}\r\n \r\n \r\n {t(\"components.tableLayout.colCount\", {colCount})}\r\n \r\n \r\n
    \r\n
    \r\n )\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(TableLayout)","import React, {Fragment} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\n\r\nexport const FONT_SIZE_SELECTOR_FONT_SIZE_SM = \"sm\";\r\nexport const FONT_SIZE_SELECTOR_FONT_SIZE_MD = \"md\";\r\nexport const FONT_SIZE_SELECTOR_FONT_SIZE_LG = \"lg\";\r\n\r\nconst styles = theme => ({\r\n fontSizeIcon: {\r\n width: 24,\r\n height: 24,\r\n fontWeight: \"bold\",\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\"\r\n },\r\n fontSizeIconSm: {\r\n fontSize: 14\r\n },\r\n fontSizeIconMd: {\r\n fontSize: 16\r\n },\r\n fontSizeIconLg: {\r\n fontSize: 20\r\n },\r\n fontSizeSelected: {\r\n boxShadow: \"inset 0 -2px 0 0 rgba(0, 0, 0, .54)\"\r\n }\r\n});\r\n\r\nconst getFontSizeIcon = styleClasses =>\r\n A;\r\n\r\nconst FontSizeSelector = ({\r\n t,\r\n classes,\r\n fontSize,\r\n setFontSize\r\n }) =>\r\n\r\n \r\n \r\n setFontSize(FONT_SIZE_SELECTOR_FONT_SIZE_SM)}\r\n aria-label={t(\"components.fontSizeSelector.small.tooltip\")}\r\n >\r\n {getFontSizeIcon(`${classes.fontSizeIcon} ${classes.fontSizeIconSm} ${fontSize === FONT_SIZE_SELECTOR_FONT_SIZE_SM ? classes.fontSizeSelected : \"\"}`)}\r\n \r\n \r\n \r\n setFontSize(FONT_SIZE_SELECTOR_FONT_SIZE_MD)}\r\n aria-label={t(\"components.fontSizeSelector.normal.tooltip\")}\r\n >\r\n {getFontSizeIcon(`${classes.fontSizeIcon} ${classes.fontSizeIconMd} ${fontSize === FONT_SIZE_SELECTOR_FONT_SIZE_MD ? classes.fontSizeSelected : \"\"}`)}\r\n \r\n \r\n \r\n setFontSize(FONT_SIZE_SELECTOR_FONT_SIZE_LG)}\r\n aria-label={t(\"components.fontSizeSelector.big.tooltip\")}\r\n >\r\n {getFontSizeIcon(`${classes.fontSizeIcon} ${classes.fontSizeIconLg} ${fontSize === FONT_SIZE_SELECTOR_FONT_SIZE_LG ? classes.fontSizeSelected : \"\"}`)}\r\n \r\n \r\n ;\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(FontSizeSelector)","import React from 'react';\r\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\r\n\r\nconst AreaIcon = ({props}) =>\r\n \r\n \r\n \r\n\r\nexport default AreaIcon;","import React from 'react';\r\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\r\n\r\nconst RadarIcon = ({props}) =>\r\n \r\n \r\n \r\n\r\nexport default RadarIcon;","import React from 'react';\r\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\r\n\r\nconst PolarIcon = ({props}) =>\r\n \r\n \r\n \r\n\r\nexport default PolarIcon;","import React from 'react';\r\nimport SvgIcon from \"@material-ui/core/SvgIcon\";\r\n\r\nconst PyramidIcon = ({props}) =>\r\n \r\n \r\n \r\n\r\nexport default PyramidIcon;","import React from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {DragDropContext} from \"react-beautiful-dnd\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FilterListIcon from '@material-ui/icons/FilterList';\r\nimport ViewCompactIcon from '@material-ui/icons/ViewCompact';\r\nimport ViewStreamIcon from '@material-ui/icons/ViewStream';\r\nimport LayoutSection from \"../layout-section\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n leftSection: {\r\n padding: 8,\r\n height: 480\r\n },\r\n rightSection: {\r\n padding: 8,\r\n height: 240,\r\n maxWidth: \"100%\"\r\n }\r\n});\r\n\r\nconst reorder = (list, startIndex, endIndex) => {\r\n const [removed] = list.splice(startIndex, 1);\r\n list.splice(endIndex, 0, removed);\r\n};\r\n\r\nconst move = (source, destination, droppableSource, droppableDestination) => {\r\n const [removed] = source.splice(droppableSource.index, 1);\r\n destination.splice(droppableDestination.index, 0, removed);\r\n};\r\n\r\nconst swap = (sourceArr, destinationArr, droppableSource) => {\r\n const [removedSrc] = sourceArr.splice(droppableSource.index, 1);\r\n const [removedDst] = destinationArr.splice(0, 1, removedSrc);\r\n sourceArr.splice(sourceArr.length, 0, removedDst);\r\n};\r\n\r\nconst onDragEnd = (result, dimensions, setDimensions) => {\r\n\r\n const {\r\n source,\r\n destination\r\n } = result;\r\n\r\n // dropped outside the list\r\n if (!destination) {\r\n return;\r\n }\r\n\r\n const newDimensions = JSON.parse(JSON.stringify(dimensions));\r\n\r\n if (source.droppableId === destination.droppableId) {\r\n reorder(\r\n newDimensions[source.droppableId],\r\n source.index,\r\n destination.index\r\n );\r\n\r\n } else if (\r\n (source.droppableId === \"secondaryDim\" && destination.droppableId === \"filters\") ||\r\n (source.droppableId === \"filters\" && destination.droppableId === \"secondaryDim\" && newDimensions[destination.droppableId].length === 0)\r\n ) {\r\n move(\r\n newDimensions[source.droppableId],\r\n newDimensions[destination.droppableId],\r\n source,\r\n destination\r\n );\r\n\r\n } else {\r\n swap(\r\n newDimensions[source.droppableId],\r\n newDimensions[destination.droppableId],\r\n source\r\n );\r\n }\r\n\r\n setDimensions(newDimensions);\r\n};\r\n\r\nconst ChartLayout = ({\r\n t,\r\n classes,\r\n jsonStat,\r\n layout,\r\n setLayout\r\n }) => {\r\n\r\n const {\r\n primaryDim,\r\n secondaryDim,\r\n filters\r\n } = layout;\r\n\r\n return (\r\n
    \r\n onDragEnd(result, layout, setLayout)}>\r\n \r\n \r\n }\r\n dimensions={filters}\r\n jsonStat={jsonStat}\r\n />\r\n \r\n \r\n \r\n \r\n }\r\n dimensions={primaryDim}\r\n jsonStat={jsonStat}\r\n disabled\r\n />\r\n \r\n \r\n }\r\n dimensions={secondaryDim}\r\n jsonStat={jsonStat}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(ChartLayout)","import React from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport {LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH, LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID, LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME} from \"./constants\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n margin: \"0 8px\"\r\n },\r\n label: {\r\n color: \"rgba(0, 0, 0, 0.54)\",\r\n fontSize: 13,\r\n height: 40,\r\n lineHeight: \"40px\",\r\n marginRight: 8\r\n },\r\n formControl: {\r\n margin: \"8px 0\"\r\n },\r\n select: {\r\n \"& .MuiSelect-root.MuiSelect-select\": {\r\n padding: \"2px 24px 3px 0\",\r\n fontSize: 14\r\n }\r\n },\r\n menuItem: {\r\n fontSize: 14\r\n }\r\n});\r\n\r\nconst LabelFormatSelector = ({\r\n t,\r\n classes,\r\n labelFormat,\r\n setLabelFormat\r\n }) =>\r\n \r\n \r\n {t(\"components.labelFormatSelector.labelFormat.title\")}:\r\n \r\n \r\n \r\n setLabelFormat(ev.target.value)}\r\n SelectDisplayProps={{\r\n \"aria-haspopup\": true,\r\n \"aria-labelledby\": \"label-format-selector-label\"\r\n }}\r\n >\r\n \r\n {t(\"components.labelFormatSelector.labelFormat.values.name\")}\r\n \r\n \r\n {t(\"components.labelFormatSelector.labelFormat.values.id\")}\r\n \r\n \r\n {t(\"components.labelFormatSelector.labelFormat.values.both\")}\r\n \r\n \r\n \r\n \r\n \r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(LabelFormatSelector)","import React, {Fragment, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport {\r\n CHART_DATA_LABEL_TYPE_NONE,\r\n CHART_DATA_LABEL_TYPE_VALUE,\r\n CHART_LEGEND_POSITION_BOTTOM,\r\n CHART_LEGEND_POSITION_lEFT,\r\n CHART_LEGEND_POSITION_RIGHT,\r\n CHART_LEGEND_POSITION_TOP\r\n} from \"../chart\";\r\nimport ChartSettingsColors from \"./Colors\";\r\nimport I18nTextField from \"../i18n-text-field\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: \"100%\",\r\n padding: 4\r\n },\r\n tabs: {\r\n height: 48,\r\n marginBottom: 4\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 52px)\"\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: theme.spacing(3),\r\n paddingLeft: theme.spacing(3) / 2,\r\n \"& :first-child\": {\r\n marginTop: 0\r\n }\r\n },\r\n field: {\r\n marginTop: theme.spacing(3),\r\n paddingLeft: theme.spacing(3) / 2\r\n }\r\n});\r\n\r\nfunction ChartSettings(props) {\r\n const {\r\n t,\r\n classes,\r\n jsonStat,\r\n settings,\r\n onSettingsSet\r\n } = props;\r\n\r\n const {\r\n chartStacked,\r\n chartLegendPosition,\r\n chartColors,\r\n chartShowTitle,\r\n chartTitle,\r\n chartShowFilters,\r\n chartShowAxesLabel,\r\n chartCustomizeCategoryAxis,\r\n chartCategoryAxisLabel,\r\n chartValueAxisLabel,\r\n chartDataLabelType\r\n } = settings\r\n\r\n const [tabId, setTabId] = useState(0);\r\n\r\n return (\r\n
    \r\n \r\n setTabId(newValue)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {tabId === 0 && (\r\n \r\n \r\n onSettingsSet({...settings, chartStacked: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n onSettingsSet({...settings, chartLegendPosition: ev.target.value})}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n \r\n {t(\"scenes.dataViewer.chartSettings.legendPosition.values.top\")}\r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.legendPosition.values.right\")}\r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.legendPosition.values.bottom\")}\r\n \r\n \r\n {t(\"scenes.dataViewer.chartSettings.legendPosition.values.left\")}\r\n \r\n \r\n \r\n \r\n {\r\n onSettingsSet({\r\n ...settings,\r\n chartDataLabelType: value\r\n ? CHART_DATA_LABEL_TYPE_VALUE\r\n : CHART_DATA_LABEL_TYPE_NONE\r\n })\r\n }}\r\n />\r\n }\r\n />\r\n \r\n \r\n onSettingsSet({...settings, chartShowAxesLabel: value})}\r\n />\r\n }\r\n />\r\n \r\n {chartShowAxesLabel && (\r\n \r\n \r\n onSettingsSet({...settings, chartValueAxisLabel: value})}\r\n />\r\n \r\n \r\n onSettingsSet({...settings, chartCustomizeCategoryAxis: value})}\r\n />\r\n }\r\n />\r\n \r\n {chartCustomizeCategoryAxis && (\r\n \r\n onSettingsSet({...settings, chartCategoryAxisLabel: value})}\r\n />\r\n \r\n )}\r\n \r\n )}\r\n \r\n )}\r\n {tabId === 1 && (\r\n onSettingsSet({...settings, chartColors: newColors})}\r\n />\r\n )}\r\n {tabId === 2 && (\r\n \r\n \r\n \r\n onSettingsSet({...settings, chartShowTitle: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n onSettingsSet({...settings, chartTitle: value})}\r\n />\r\n \r\n \r\n \r\n onSettingsSet({...settings, chartShowFilters: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n )}\r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(ChartSettings);","import React, {Fragment, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport I18nTextField from \"../i18n-text-field\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: \"100%\",\r\n padding: 4\r\n },\r\n tabs: {\r\n height: 48,\r\n marginBottom: 4\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 52px)\"\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: 12,\r\n paddingLeft: theme.spacing(3) / 2,\r\n \"& :first-child\": {\r\n marginTop: 0\r\n }\r\n },\r\n field: {\r\n marginTop: theme.spacing(3),\r\n paddingLeft: theme.spacing(3) / 2\r\n }\r\n});\r\n\r\nfunction MapSettings(props) {\r\n const {\r\n t,\r\n classes,\r\n settings,\r\n onSettingsSet\r\n } = props;\r\n\r\n const {\r\n mapShowTitle,\r\n mapTitle,\r\n mapShowFilters\r\n } = settings\r\n\r\n const [tabId, setTabId] = useState(0);\r\n\r\n return (\r\n
    \r\n \r\n setTabId(newValue)}\r\n >\r\n \r\n \r\n \r\n
    \r\n {tabId === 0 && (\r\n \r\n \r\n \r\n onSettingsSet({...settings, mapShowTitle: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n onSettingsSet({...settings, mapTitle: value})}\r\n />\r\n \r\n \r\n \r\n onSettingsSet({...settings, mapShowFilters: value})}\r\n />\r\n }\r\n />\r\n \r\n \r\n )}\r\n
    \r\n
    \r\n )\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(MapSettings);","import React, {useState} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Checkbox from '@material-ui/core/Checkbox';\r\nimport {getVariationValueLabels, VARIATION_VALUE_CYCLICAL_KEY, VARIATION_VALUE_TREND_KEY} from \"../../utils/jsonStat\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n margin: \"0 8px\"\r\n },\r\n label: {\r\n color: \"rgba(0, 0, 0, 0.54)\",\r\n fontSize: 13,\r\n height: 40,\r\n lineHeight: \"40px\",\r\n marginRight: 8\r\n },\r\n formControl: {\r\n margin: \"8px 0\"\r\n },\r\n select: {\r\n \"& .MuiSelect-root.MuiSelect-select\": {\r\n padding: \"2px 24px 3px 0\",\r\n fontSize: 14\r\n }\r\n },\r\n menuItem: {\r\n height: 42,\r\n fontSize: 14,\r\n backgroundColor: \"#ffffff !important\"\r\n }\r\n});\r\n\r\nconst VARIATION_VALUE_NONE_KEY = \"NONE\";\r\n\r\nconst VariationSelector = ({\r\n t,\r\n classes,\r\n showTrend,\r\n showCyclical,\r\n onVariationSet\r\n }) => {\r\n\r\n const [open, setOpen] = useState(false);\r\n\r\n const values = [];\r\n if (showTrend) {\r\n values.push(VARIATION_VALUE_TREND_KEY);\r\n }\r\n if (showCyclical) {\r\n values.push(VARIATION_VALUE_CYCLICAL_KEY);\r\n }\r\n if (values.length === 0) {\r\n values.push(VARIATION_VALUE_NONE_KEY);\r\n }\r\n\r\n return (\r\n \r\n \r\n {t(\"components.variationSelector.variation.title\")}:\r\n \r\n \r\n \r\n {\r\n const newSelected = selected.filter(val => val !== VARIATION_VALUE_NONE_KEY);\r\n if (newSelected.length === 0) {\r\n return t(\"components.variationSelector.variation.none\");\r\n } else if (newSelected.length === 1) {\r\n return getVariationValueLabels(t)[newSelected[0]];\r\n } else if (newSelected.length === 2) {\r\n return t(\"components.variationSelector.variation.both\");\r\n } else {\r\n return \"\";\r\n }\r\n }}\r\n onChange={ev => {\r\n const values = ev.target.value;\r\n onVariationSet({\r\n showTrend: values.includes(VARIATION_VALUE_TREND_KEY),\r\n showCyclical: values.includes(VARIATION_VALUE_CYCLICAL_KEY)\r\n });\r\n setOpen(false);\r\n }}\r\n onOpen={() => setOpen(true)}\r\n onClose={() => setOpen(false)}\r\n MenuProps={{\r\n open: open,\r\n variant: \"menu\"\r\n }}\r\n SelectDisplayProps={{\r\n \"aria-haspopup\": true,\r\n \"aria-labelledby\": \"variation-selector-label\"\r\n }}\r\n >\r\n \r\n \r\n {getVariationValueLabels(t)[VARIATION_VALUE_TREND_KEY]}\r\n \r\n \r\n \r\n {getVariationValueLabels(t)[VARIATION_VALUE_CYCLICAL_KEY]}\r\n \r\n \r\n \r\n {t(\"components.variationSelector.variation.none\")}\r\n \r\n \r\n \r\n \r\n \r\n )\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(VariationSelector)","import React, {Fragment, useEffect, useState} from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport DataViewerHeader from \"./Header\";\r\nimport DataViewerSideBar from \"./Sidebar\";\r\nimport DataViewerFooter from \"./Footer\";\r\nimport DatasetFilters from \"../dataset-filters\";\r\nimport Table, {JSONSTAT_TABLE_FONT_SIZE_LG, JSONSTAT_TABLE_FONT_SIZE_MD, JSONSTAT_TABLE_FONT_SIZE_SM} from \"../table\";\r\nimport Criteria from \"../criteria\";\r\nimport TableLayout from \"../table-layout\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FontSizeSelector, {FONT_SIZE_SELECTOR_FONT_SIZE_MD, FONT_SIZE_SELECTOR_FONT_SIZE_SM} from \"../font-size-selector\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport FullscreenIcon from '@material-ui/icons/Fullscreen';\r\nimport FullscreenExitIcon from '@material-ui/icons/FullscreenExit';\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport TableChartIcon from \"@material-ui/icons/TableChart\";\r\nimport MapIcon from \"@material-ui/icons/Map\";\r\nimport BarChartIcon from \"@material-ui/icons/BarChart\";\r\nimport TimelineIcon from \"@material-ui/icons/Timeline\";\r\nimport DonutLargeIcon from \"@material-ui/icons/DonutLarge\";\r\nimport PieChartIcon from \"@material-ui/icons/PieChart\";\r\nimport AreaIcon from \"../custom-icons/AreaIcon\";\r\nimport RadarIcon from \"../custom-icons/RadarIcon\";\r\nimport PolarIcon from \"../custom-icons/PolarIcon\";\r\nimport PyramidIcon from \"../custom-icons/PyramindIcon\";\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {\r\n enableDatasetFetch,\r\n fetchDataset,\r\n fetchDatasetGeometries,\r\n hideDatasetCriteria,\r\n hideDatasetCriteriaAlert,\r\n hideDatasetDownloadWarning,\r\n hideDatasetUnavailableViewWarning,\r\n setDatasetChartSettings,\r\n setDatasetLabelFormat,\r\n setDatasetMapDetailLevel,\r\n setDatasetMapSettings,\r\n setDatasetVariation,\r\n setDatasetViewer,\r\n showDatasetCriteria,\r\n submitDatasetChartFilterTree,\r\n submitDatasetChartLayout,\r\n submitDatasetDownload,\r\n submitDatasetMapLayout,\r\n submitDatasetTableFilterTree,\r\n submitDatasetTableLayout,\r\n submitDatasetViewTemplate\r\n} from \"../../state/dataset/datasetActions\";\r\nimport Alert from \"@material-ui/lab/Alert\";\r\nimport {getDimensionFilterValues, getFilterTreeFromJsonStat, getInitialFiltersValue, getUpdatedLayout, TIME_PERIOD_DIMENSION_KEY} from \"../../utils/jsonStat\";\r\nimport {numberFormatter} from \"../../utils/formatters\";\r\nimport Call from \"../../hocs/call\";\r\nimport ChartLayout from \"../chart-layout\";\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport Map, {MAP_PALETTE_COLOR_END_DEFAULT, MAP_PALETTE_COLOR_START_DEFAULT} from \"../map/index\";\r\nimport LabelFormatSelector from \"../label-format-selector\";\r\nimport Chart, {\r\n CHART_TYPE_AREA,\r\n CHART_TYPE_BAR,\r\n CHART_TYPE_DOUGHNUT,\r\n CHART_TYPE_HORIZONTAL_BAR,\r\n CHART_TYPE_LINE,\r\n CHART_TYPE_PIE,\r\n CHART_TYPE_POLAR_AREA,\r\n CHART_TYPE_PYRAMID,\r\n CHART_TYPE_RADAR\r\n} from \"../chart\";\r\nimport SettingsIcon from \"@material-ui/icons/Settings\";\r\nimport ChartSettings from \"../chart-settings\";\r\nimport colorString from \"color-string\";\r\nimport MapSettings from \"../map-settings\";\r\nimport VariationSelector from \"../variation-selector\";\r\nimport {\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME\r\n} from \"../label-format-selector/constants\";\r\nimport {DOWNLOAD_FORMAT_CSV, DOWNLOAD_FORMAT_EXCEL, getDownloadFormatExtensionFromFormat} from \"../../utils/download\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport {getTextWidth} from \"../../utils/style\";\r\nimport {getCustomCssUrl} from \"../../serverApi/urls\";\r\nimport {toggleFullScreen} from \"../../utils/other\";\r\nimport GetAppIcon from '@material-ui/icons/GetApp';\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst SIDEBAR_WIDTH = 80;\r\n\r\nconst styles = theme => ({\r\n root: {\r\n width: \"100%\",\r\n height: \"100%\",\r\n overflow: \"auto\"\r\n },\r\n header: {\r\n width: \"100%\"\r\n },\r\n page: {\r\n width: \"100%\",\r\n minHeight: 400,\r\n minWidth: 560\r\n },\r\n sidebar: {\r\n display: \"inline-block\",\r\n verticalAlign: \"top\",\r\n width: SIDEBAR_WIDTH,\r\n height: \"100%\",\r\n overflow: \"auto\",\r\n marginLeft: theme.spacing(2),\r\n padding: \"0 8px\"\r\n },\r\n data: {\r\n display: \"inline-block\",\r\n verticalAlign: \"top\",\r\n width: `calc(100% - ${SIDEBAR_WIDTH + theme.spacing(2) + theme.spacing(2) + theme.spacing(2)}px)`,\r\n height: \"100%\",\r\n marginLeft: theme.spacing(2),\r\n marginRight: theme.spacing(2),\r\n padding: theme.spacing(2)\r\n },\r\n viewerContainer: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n filtersAndActions: {\r\n width: \"100%\",\r\n paddingBottom: theme.spacing(1),\r\n display: \"flex\",\r\n justifyContent: \"space-between\",\r\n alignItems: \"flex-start\"\r\n },\r\n filters: {},\r\n actions: {\r\n marginBottom: 8\r\n },\r\n action: {\r\n height: 40,\r\n \"& button\": {\r\n padding: 8\r\n }\r\n },\r\n viewer: {\r\n width: \"100%\",\r\n position: \"relative\"\r\n },\r\n attributes: {\r\n width: \"100%\",\r\n paddingTop: 12\r\n },\r\n footer: {\r\n bottom: 0,\r\n left: 0,\r\n width: \"100%\",\r\n overflowX: \"auto\",\r\n overflowY: \"hidden\",\r\n padding: theme.spacing(1)\r\n },\r\n warningAlert: {\r\n width: \"100%\",\r\n marginBottom: 16\r\n },\r\n criteriaContent: {\r\n overflow: \"hidden !important\"\r\n },\r\n exportLabel: {\r\n padding: \"12px 12px 12px 0\"\r\n },\r\n alert: {\r\n marginBottom: 12\r\n },\r\n field: {\r\n marginBottom: theme.spacing(2)\r\n },\r\n fieldLastRow: {\r\n marginBottom: 0\r\n }\r\n});\r\n\r\nconst mapStateToProps = ({hub, dataset}) => ({\r\n exportConfig: hub.hub.exportConfig,\r\n dataset: dataset.dataset,\r\n isFetchDatasetDisabled: dataset.isFetchDatasetDisabled,\r\n isCriteriaVisible: dataset.isCriteriaVisible,\r\n isCriteriaAlertVisible: dataset.isCriteriaAlertVisible,\r\n hasViewLayout: dataset.hasViewLayout,\r\n hasTemplateLayout: dataset.hasTemplateLayout,\r\n hasAnnotationLayout: dataset.hasAnnotationLayout,\r\n dimensions: dataset.dimensions,\r\n freqDimension: dataset.freqDimension,\r\n mode: dataset.mode,\r\n type: dataset.type,\r\n codelistsLength: dataset.codelistsLength,\r\n viewerIdx: dataset.viewerIdx,\r\n tableLayout: dataset.tableLayout,\r\n mapLayout: dataset.mapLayout,\r\n chartLayout: dataset.chartLayout,\r\n tableFilterTree: dataset.tableFilterTree,\r\n mapFilterTree: dataset.mapFilterTree,\r\n chartFilterTree: dataset.chartFilterTree,\r\n timePeriodsByFreq: dataset.timePeriodsByFreq,\r\n labelFormat: dataset.labelFormat,\r\n showTrend: dataset.showTrend,\r\n showCyclical: dataset.showCyclical,\r\n criteria: dataset.criteria,\r\n decimalSeparator: dataset.decimalSeparator,\r\n decimalPlaces: dataset.decimalPlaces,\r\n tableEmptyChar: dataset.tableEmptyChar,\r\n chartSettings: dataset.chartSettings,\r\n mapDetailLevel: dataset.mapDetailLevel,\r\n mapSettings: dataset.mapSettings,\r\n hasMapStartColor: dataset.hasMapStartColor,\r\n hasMapEndColor: dataset.hasMapEndColor,\r\n enableCriteria: dataset.enableCriteria,\r\n enableLayout: dataset.enableLayout,\r\n enableVariation: dataset.enableVariation,\r\n codes: dataset.codes,\r\n isCodesFlat: dataset.isCodesFlat,\r\n codelists: dataset.codelists,\r\n areCodelistsFlat: dataset.areCodelistsFlat,\r\n timePeriod: dataset.timePeriod,\r\n criteriaObsCount: dataset.criteriaObsCount,\r\n geometries: dataset.geometries,\r\n geometryDetailLevels: dataset.geometryDetailLevels,\r\n isPartialData: dataset.isPartialData,\r\n isEmptyData: dataset.isEmptyData,\r\n isTooBigData: dataset.isTooBigData,\r\n isTooLongQuery: dataset.isTooLongQuery,\r\n isDownloadWarningVisible: dataset.isDownloadWarningVisible,\r\n isUnavailableViewWarningVisible: dataset.isUnavailableViewWarningVisible,\r\n timings: dataset.timings\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n onDatasetFetch: ({nodeId, datasetId, criteria, datasetTitle}) => dispatch(fetchDataset(nodeId, datasetId, criteria, datasetTitle)),\r\n onFetchDatasetEnable: () => dispatch(enableDatasetFetch()),\r\n onCriteriaShow: () => dispatch(showDatasetCriteria()),\r\n onCriteriaHide: () => dispatch(hideDatasetCriteria()),\r\n onCriteriaAlertHide: () => dispatch(hideDatasetCriteriaAlert()),\r\n onViewerSet: viewerIdx => dispatch(setDatasetViewer(viewerIdx)),\r\n onTableLayoutSet: layout => dispatch(submitDatasetTableLayout(layout)),\r\n onTableFilterTreeSet: filterTree => dispatch(submitDatasetTableFilterTree(filterTree)),\r\n onMapLayoutSet: layout => dispatch(submitDatasetMapLayout(layout)),\r\n onChartLayoutSet: layout => dispatch(submitDatasetChartLayout(layout)),\r\n onChartFilterTreeSet: filterTree => dispatch(submitDatasetChartFilterTree(filterTree)),\r\n onLabelFormatSet: labelFormat => dispatch(setDatasetLabelFormat(labelFormat)),\r\n onVariationSet: variation => dispatch(setDatasetVariation(variation)),\r\n onChartSettingsSet: chartSetting => dispatch(setDatasetChartSettings(chartSetting)),\r\n onMapDetailLevelSet: detailLevel => dispatch(setDatasetMapDetailLevel(detailLevel)),\r\n onMapSettingsSet: mapSettings => dispatch(setDatasetMapSettings(mapSettings)),\r\n onDownloadSubmit: (nodeId, datasetId, datasetTitle, format, extension, zipped, criteria, layout, params, t) =>\r\n dispatch(submitDatasetDownload(nodeId, datasetId, datasetTitle, format, extension, zipped, criteria, layout, params, t)),\r\n onDownloadHide: () => dispatch(hideDatasetDownloadWarning()),\r\n onViewTemplateSubmit: (nodeId, viewTemplate, isView) => dispatch(submitDatasetViewTemplate(nodeId, viewTemplate, isView)),\r\n onUnavailableViewHide: () => dispatch(hideDatasetUnavailableViewWarning()),\r\n onGeometryFetch: (idList, t, nodeId) => dispatch(fetchDatasetGeometries(idList, t, nodeId))\r\n});\r\n\r\nconst viewers = t => [\r\n {\r\n key: 0,\r\n type: \"table\",\r\n title: t ? t(\"scenes.dataViewers.viewers.table\") : \"\",\r\n icon: \r\n },\r\n {\r\n key: 1,\r\n title: t ? t(\"scenes.dataViewers.viewers.map\") : \"\",\r\n type: \"map\",\r\n icon: \r\n },\r\n {\r\n key: 2,\r\n title: t ? t(\"scenes.dataViewers.viewers.verticalBar\") : \"\",\r\n type: CHART_TYPE_BAR,\r\n icon: ,\r\n chartType: \"bar\"\r\n },\r\n {\r\n key: 3,\r\n title: t ? t(\"scenes.dataViewers.viewers.horizontalBar\") : \"\",\r\n type: CHART_TYPE_HORIZONTAL_BAR,\r\n icon: ,\r\n chartType: \"horizontalBar\"\r\n },\r\n {\r\n key: 4,\r\n title: t ? t(\"scenes.dataViewers.viewers.line\") : \"\",\r\n type: CHART_TYPE_LINE,\r\n icon: ,\r\n chartType: \"line\"\r\n },\r\n {\r\n key: 5,\r\n title: t ? t(\"scenes.dataViewers.viewers.area\") : \"\",\r\n type: CHART_TYPE_AREA,\r\n icon: ,\r\n chartType: \"area\"\r\n },\r\n {\r\n key: 6,\r\n title: t ? t(\"scenes.dataViewers.viewers.doughnut\") : \"\",\r\n type: CHART_TYPE_DOUGHNUT,\r\n icon: ,\r\n chartType: \"doughnut\"\r\n },\r\n {\r\n key: 7,\r\n title: t ? t(\"scenes.dataViewers.viewers.pie\") : \"\",\r\n type: CHART_TYPE_PIE,\r\n icon: ,\r\n chartType: \"pie\"\r\n },\r\n {\r\n key: 8,\r\n title: t ? t(\"scenes.dataViewers.viewers.radar\") : \"\",\r\n type: CHART_TYPE_RADAR,\r\n icon: ,\r\n chartType: \"radar\"\r\n },\r\n {\r\n key: 9,\r\n title: t ? t(\"scenes.dataViewers.viewers.polarArea\") : \"\",\r\n type: CHART_TYPE_POLAR_AREA,\r\n icon: ,\r\n chartType: \"polarArea\"\r\n },\r\n {\r\n key: 10,\r\n title: t ? t(\"scenes.dataViewers.viewers.pyramid\") : \"\",\r\n type: CHART_TYPE_PYRAMID,\r\n icon: ,\r\n chartType: \"pyramid\"\r\n }\r\n];\r\n\r\nexport const getViewerIdxFromType = viewerType => {\r\n if (!viewerType) {\r\n return 0\r\n }\r\n\r\n const viewer = viewers().find(({type}) => type === viewerType);\r\n return viewer\r\n ? viewer.key\r\n : 0\r\n};\r\n\r\nexport const getViewerTypeFromIdx = viewerIdx => viewers()[viewerIdx].type;\r\n\r\nconst handleStyle = () => {\r\n\r\n const hubFooterHeight = $(\"#footer\").outerHeight(true) || 0;\r\n $(\"#data-viewer\").css({height: `calc(100% - ${hubFooterHeight}px)`});\r\n\r\n const headerHeight = $(\"#data-viewer__header\").outerHeight(true) || 0;\r\n const footerHeight = $(\"#data-viewer__footer\").outerHeight(true) || 0;\r\n $(\"#data-viewer__page\").css({height: `calc(100% - ${headerHeight + footerHeight}px)`});\r\n\r\n const $actions = $(\"#data-viewer__page__viewer__actions\");\r\n const $filters = $(\"#data-viewer__page__viewer__filters\");\r\n const $filtersAndActions = $(\"#data-viewer__page__viewer__filters-and-actions\");\r\n\r\n const actionsWidth = $actions.outerWidth(true) || 0;\r\n const filtersWidth = $filters.outerWidth(true) || 0;\r\n const filtersAndActionsWidth = $filtersAndActions.width() || 0;\r\n\r\n if (filtersAndActionsWidth > (actionsWidth + filtersWidth)) {\r\n $filtersAndActions.css({flexDirection: \"row\"});\r\n $actions.css({alignSelf: \"unset\"});\r\n\r\n } else {\r\n $filtersAndActions.css({flexDirection: \"column-reverse\"});\r\n $actions.css({alignSelf: \"end\"});\r\n }\r\n\r\n const viewerHeaderHeight = $(\"#data-viewer__page__viewer__header\").outerHeight(true) || 0;\r\n $(\"#data-viewer__page__viewer__viewer\").css({\r\n height: `calc(100% - ${viewerHeaderHeight}px)`\r\n });\r\n};\r\n\r\nconst getFilterCombinationCount = (jsonStat, filters) => {\r\n return (jsonStat && filters)\r\n ? filters.reduce((acc, dim) => acc * jsonStat.size[jsonStat.id.indexOf(dim)], 1)\r\n : 0\r\n};\r\n\r\nconst COLS_SEPARATOR_COMMA = \",\";\r\nconst COLS_SEPARATOR_SEMICOLON = \";\";\r\nconst COLS_SEPARATOR_PIPE = \"|\";\r\nconst COLS_SEPARATOR_TAB = \"\\t\";\r\n\r\nconst getColsSeparators = t => ([\r\n {\r\n value: COLS_SEPARATOR_COMMA,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.comma\") : \"Comma (,)\"\r\n },\r\n {\r\n value: COLS_SEPARATOR_SEMICOLON,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.semicolon\") : \"Semicolon (;)\"\r\n },\r\n {\r\n value: COLS_SEPARATOR_PIPE,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.pipe\") : \"Pipe (|)\"\r\n },\r\n {\r\n value: COLS_SEPARATOR_TAB,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.tab\") : \"Tab ( )\"\r\n }\r\n]);\r\n\r\nconst getInitialCsvParams = csvSeparator => ({\r\n labelFormat: LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH,\r\n colsSeparator: (csvSeparator && getColsSeparators().map(({value}) => value).includes(csvSeparator))\r\n ? csvSeparator\r\n : COLS_SEPARATOR_COMMA,\r\n textQualifier: \"\"\r\n});\r\n\r\nfunction DataViewer(props) {\r\n const {\r\n classes,\r\n\r\n nodeId,\r\n nodeCode,\r\n categoryPath,\r\n datasetId,\r\n datasetTitle,\r\n viewId,\r\n notes,\r\n attachedFiles,\r\n referenceMetadataUrl,\r\n nodeExtras,\r\n maxObservation,\r\n\r\n exportConfig,\r\n dataset,\r\n isFetchDatasetDisabled,\r\n isCriteriaVisible,\r\n isCriteriaAlertVisible,\r\n hasViewLayout,\r\n hasTemplateLayout,\r\n hasAnnotationLayout,\r\n dimensions,\r\n freqDimension,\r\n mode,\r\n type,\r\n codelistsLength,\r\n viewerIdx,\r\n tableLayout,\r\n mapLayout,\r\n chartLayout,\r\n tableFilterTree,\r\n mapFilterTree,\r\n chartFilterTree,\r\n timePeriodsByFreq,\r\n labelFormat,\r\n showTrend,\r\n showCyclical,\r\n criteria,\r\n decimalSeparator,\r\n decimalPlaces,\r\n tableEmptyChar,\r\n chartSettings,\r\n mapDetailLevel,\r\n mapSettings,\r\n hasMapStartColor,\r\n hasMapEndColor,\r\n enableCriteria,\r\n enableLayout,\r\n enableVariation,\r\n codes,\r\n isCodesFlat,\r\n codelists,\r\n areCodelistsFlat,\r\n timePeriod,\r\n criteriaObsCount,\r\n geometries,\r\n geometryDetailLevels,\r\n isPartialData,\r\n isEmptyData,\r\n isTooBigData,\r\n isTooLongQuery,\r\n isDownloadWarningVisible,\r\n isUnavailableViewWarningVisible,\r\n timings,\r\n\r\n onDatasetFetch,\r\n onFetchDatasetEnable,\r\n onCriteriaShow,\r\n onCriteriaHide,\r\n onCriteriaAlertHide,\r\n onViewerSet,\r\n onTableLayoutSet,\r\n onTableFilterTreeSet,\r\n onMapLayoutSet,\r\n onChartLayoutSet,\r\n onChartFilterTreeSet,\r\n onLabelFormatSet,\r\n onVariationSet,\r\n onChartSettingsSet,\r\n onMapDetailLevelSet,\r\n onMapSettingsSet,\r\n onDownloadSubmit,\r\n onDownloadHide,\r\n onViewTemplateSubmit,\r\n onUnavailableViewHide,\r\n onGeometryFetch\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n\r\n const [tmpTableLayout, setTmpTableLayout] = useState(null);\r\n const [tmpChartLayout, setTmpChartLayout] = useState(null);\r\n\r\n const [chartId] = useState(\"chart__\" + uuidv4());\r\n\r\n const [mapId] = useState(\"map__\" + uuidv4());\r\n\r\n const [isLayoutVisible, setLayoutVisibility] = useState(false);\r\n const [isCriteriaValid, setCriteriaValidity] = useState(true);\r\n\r\n const [isFullscreen, setFullscreen] = useState(false);\r\n const [fontSize, setFontSize] = useState(FONT_SIZE_SELECTOR_FONT_SIZE_MD);\r\n\r\n const [isChartSettingsVisible, setChartSettingsVisibility] = useState(false);\r\n const [tmpChartSettings, setTmpChartSettings] = useState(null);\r\n\r\n const [isMapSettingsVisible, setMapSettingsVisibility] = useState(false);\r\n const [tmpMapSettings, setTmpMapSettings] = useState(null);\r\n\r\n const [isObsCountWarningVisible, setIsObsCountWarningVisible] = useState(false);\r\n\r\n const [exportFormat, setExportFormat] = useState(null);\r\n const [exportParams, setExportParams] = useState(null);\r\n const [singleSheet, setSingleSheet] = useState(true);\r\n const [filteredDataset, setFilteredDataset] = useState(true);\r\n const [csvParams, setCsvParams] = useState(getInitialCsvParams(exportConfig?.csvSeparator));\r\n\r\n useEffect(() => {\r\n window.addEventListener(\"resize\", handleStyle);\r\n return () => window.removeEventListener(\"resize\", handleStyle)\r\n }, []);\r\n\r\n useEffect(() => {\r\n handleStyle();\r\n }, [dataset, viewerIdx, tableLayout, mapLayout, chartLayout, labelFormat]);\r\n\r\n useEffect(() => {\r\n setTmpTableLayout(tableLayout);\r\n }, [tableLayout]);\r\n\r\n useEffect(() => {\r\n setTmpChartLayout(chartLayout);\r\n }, [chartLayout]);\r\n\r\n useEffect(() => {\r\n setTmpChartSettings(chartSettings);\r\n }, [chartSettings]);\r\n\r\n useEffect(() => {\r\n setTmpMapSettings(mapSettings);\r\n }, [mapSettings]);\r\n\r\n // handling customCss map customization\r\n useEffect(() => {\r\n if (hasMapStartColor === false || hasMapEndColor === false) {\r\n\r\n const CUSTOM_CSS_MAP_SELECTOR_PREFIX = \".map__\";\r\n const CUSTOM_CSS_MAP_SELECTOR_NODE_PREFIX = \".map__node__\"\r\n\r\n const CUSTOM_CSS_MAP_SELECTOR_COLOR_START = \"start-color\"\r\n const CUSTOM_CSS_MAP_SELECTOR_COLOR_END = \"end-color\"\r\n\r\n fetch(getCustomCssUrl())\r\n .then(response => response.text())\r\n .then(css => {\r\n const doc = document.implementation.createHTMLDocument(\"\");\r\n const styleEl = document.createElement(\"style\");\r\n styleEl.textContent = String(css);\r\n doc.body.appendChild(styleEl);\r\n\r\n const colorRules = {};\r\n Object.values(styleEl.sheet.cssRules)\r\n .filter(({selectorText, style}) =>\r\n selectorText !== null &&\r\n selectorText !== undefined &&\r\n selectorText.startsWith(CUSTOM_CSS_MAP_SELECTOR_PREFIX) &&\r\n style[0] === \"color\" &&\r\n style.color.length > 0 &&\r\n colorString.get.rgb(style.color) !== null\r\n )\r\n .forEach(({selectorText, style}) => {\r\n colorRules[selectorText] = colorString.to.hex(colorString.get.rgb(style.color));\r\n });\r\n\r\n let start = null;\r\n if (!hasMapStartColor) {\r\n start = (nodeCode && colorRules[CUSTOM_CSS_MAP_SELECTOR_NODE_PREFIX + nodeCode + \"__\" + CUSTOM_CSS_MAP_SELECTOR_COLOR_START]) ||\r\n colorRules[CUSTOM_CSS_MAP_SELECTOR_PREFIX + CUSTOM_CSS_MAP_SELECTOR_COLOR_START] ||\r\n MAP_PALETTE_COLOR_START_DEFAULT;\r\n }\r\n\r\n let end = null;\r\n if (!hasMapEndColor) {\r\n end = (nodeCode && colorRules[CUSTOM_CSS_MAP_SELECTOR_NODE_PREFIX + nodeCode + \"__\" + CUSTOM_CSS_MAP_SELECTOR_COLOR_END]) ||\r\n colorRules[CUSTOM_CSS_MAP_SELECTOR_PREFIX + CUSTOM_CSS_MAP_SELECTOR_COLOR_END] ||\r\n MAP_PALETTE_COLOR_END_DEFAULT;\r\n }\r\n\r\n onMapSettingsSet({\r\n mapPaletteStartColor: start,\r\n mapPaletteEndColor: end\r\n });\r\n });\r\n }\r\n }, [nodeCode, hasMapStartColor, hasMapEndColor, onMapSettingsSet]);\r\n\r\n const handleSetViewer = viewerIdx => {\r\n onViewerSet(viewerIdx);\r\n };\r\n\r\n const handleLayoutOpen = () => {\r\n setLayoutVisibility(true);\r\n };\r\n\r\n const handleLayoutClose = () => {\r\n setLayoutVisibility(false);\r\n setTmpTableLayout(tableLayout);\r\n setTmpChartLayout(chartLayout);\r\n };\r\n\r\n const handleLayoutSubmit = () => {\r\n setLayoutVisibility(false);\r\n\r\n if (viewerIdx === 0) {\r\n const newTableFilterTree = getFilterTreeFromJsonStat(tmpTableLayout, dataset);\r\n onTableLayoutSet({\r\n ...tmpTableLayout,\r\n filtersValue: getInitialFiltersValue(dataset, tmpTableLayout, newTableFilterTree)\r\n });\r\n onTableFilterTreeSet(newTableFilterTree);\r\n\r\n } else if (viewerIdx >= 2) {\r\n const newPrimaryDim = tmpChartLayout.primaryDim[0];\r\n const newSecondaryDim = tmpChartLayout.secondaryDim[0];\r\n const prevPrimaryDim = chartLayout.primaryDim[0];\r\n const prevSecondaryDim = chartLayout.secondaryDim[0];\r\n\r\n const isSecondaryDimChanged = (\r\n (!prevSecondaryDim && !!newSecondaryDim) ||\r\n (!!prevSecondaryDim && !newSecondaryDim) ||\r\n (!!prevSecondaryDim && !!newSecondaryDim && prevSecondaryDim !== newSecondaryDim)\r\n );\r\n\r\n const newChartFilterTree = getFilterTreeFromJsonStat(tmpChartLayout, dataset);\r\n if (newPrimaryDim !== prevPrimaryDim) {\r\n tmpChartLayout.primaryDimValues = dataset.dimension[newPrimaryDim].category.index;\r\n tmpChartLayout.secondaryDimValues = newSecondaryDim\r\n ? getDimensionFilterValues(newSecondaryDim, dataset, tmpChartLayout, newChartFilterTree)\r\n : []\r\n } else if (isSecondaryDimChanged) {\r\n tmpChartLayout.secondaryDimValues = newSecondaryDim\r\n ? getDimensionFilterValues(newSecondaryDim, dataset, tmpChartLayout, newChartFilterTree)\r\n : []\r\n }\r\n onChartLayoutSet({\r\n ...tmpChartLayout,\r\n filtersValue: getInitialFiltersValue(dataset, tmpChartLayout, newChartFilterTree)\r\n });\r\n onChartFilterTreeSet(newChartFilterTree);\r\n }\r\n };\r\n\r\n const handleCriteriaOpen = () => {\r\n onCriteriaShow();\r\n }\r\n\r\n const handleCriteriaClose = () => {\r\n onCriteriaHide();\r\n setCriteriaValidity(true);\r\n }\r\n\r\n const handleCriteriaSubmit = () => {\r\n onFetchDatasetEnable();\r\n }\r\n\r\n const handleFilterSelect = (dimension, value) => {\r\n if (viewerIdx === 0) {\r\n onTableLayoutSet(getUpdatedLayout(dimension, value, dataset, tableLayout, tableFilterTree));\r\n } else if (viewerIdx === 1) {\r\n onMapLayoutSet(getUpdatedLayout(dimension, value, dataset, mapLayout, mapFilterTree));\r\n } else if (viewerIdx >= 2) {\r\n onChartLayoutSet(getUpdatedLayout(dimension, value, dataset, chartLayout, chartFilterTree));\r\n }\r\n };\r\n\r\n const handleFontSizeSelect = size => {\r\n setFontSize(size);\r\n };\r\n\r\n const handleChartSettingsOpen = () => {\r\n setChartSettingsVisibility(true);\r\n };\r\n\r\n const handleChartSettingsClose = () => {\r\n setChartSettingsVisibility(false);\r\n setTmpChartSettings(chartSettings);\r\n };\r\n\r\n const handleChartSettingsSubmit = () => {\r\n setChartSettingsVisibility(false);\r\n onChartSettingsSet(tmpChartSettings);\r\n };\r\n\r\n const handleMapSettingsOpen = () => {\r\n setMapSettingsVisibility(true);\r\n };\r\n\r\n const handleMapSettingsClose = () => {\r\n setMapSettingsVisibility(false);\r\n setTmpMapSettings(mapSettings);\r\n };\r\n\r\n const handleMapSettingsSubmit = () => {\r\n setMapSettingsVisibility(false);\r\n onMapSettingsSet(tmpMapSettings);\r\n };\r\n\r\n const handleFullscreen = () => {\r\n toggleFullScreen(\"data-viewer__page__viewer\", \"data-viewer__page__viewer__wrapper\", !isFullscreen);\r\n handleStyle();\r\n setFullscreen(!isFullscreen);\r\n };\r\n\r\n const handleExportExcelShow = params => {\r\n setExportFormat(DOWNLOAD_FORMAT_EXCEL);\r\n setSingleSheet(true);\r\n setExportParams(params);\r\n };\r\n\r\n const handleExportExcelHide = () => {\r\n setExportFormat(null);\r\n setExportParams(null);\r\n };\r\n\r\n const handleExportExcelSubmit = () => {\r\n handleExportExcelHide();\r\n onDownloadSubmit(\r\n nodeId,\r\n datasetId,\r\n datasetTitle,\r\n DOWNLOAD_FORMAT_EXCEL,\r\n getDownloadFormatExtensionFromFormat(DOWNLOAD_FORMAT_EXCEL),\r\n false,\r\n criteria,\r\n tableLayout,\r\n {\r\n ...exportParams,\r\n ignoreFilters: !singleSheet\r\n },\r\n t\r\n );\r\n };\r\n\r\n const handleExportCsvShow = params => {\r\n setExportFormat(DOWNLOAD_FORMAT_CSV);\r\n setFilteredDataset(true);\r\n setExportParams(params);\r\n setCsvParams(getInitialCsvParams(exportConfig?.csvSeparator));\r\n };\r\n\r\n const handleExportCsvHide = () => {\r\n setExportFormat(null);\r\n setExportParams(null);\r\n };\r\n\r\n const handleExportCsvSubmit = () => {\r\n const exportLayout = viewerIdx === 0\r\n ? tableLayout\r\n : viewerIdx === 1\r\n ? mapLayout\r\n : chartLayout;\r\n\r\n handleExportCsvHide();\r\n onDownloadSubmit(\r\n nodeId,\r\n datasetId,\r\n datasetTitle,\r\n DOWNLOAD_FORMAT_CSV,\r\n getDownloadFormatExtensionFromFormat(DOWNLOAD_FORMAT_CSV),\r\n false,\r\n criteria,\r\n exportLayout,\r\n {\r\n ...exportParams,\r\n ignoreFilters: !filteredDataset,\r\n ...csvParams\r\n },\r\n t\r\n );\r\n };\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n onViewTemplateSubmit(nodeId, viewTemplate, isView)}\r\n onDownloadSubmit={(format, extension) => {\r\n const exportParams = {\r\n decimalNumber: decimalPlaces,\r\n decimalSeparator: decimalSeparator,\r\n emptyCellPlaceHolder: tableEmptyChar,\r\n labelFormat: labelFormat,\r\n customLabelFormat: {\r\n [TIME_PERIOD_DIMENSION_KEY]: LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID\r\n },\r\n hasVariation: enableVariation,\r\n showTrend: showTrend,\r\n showCyclical: showCyclical,\r\n exportConfig: exportConfig\r\n };\r\n\r\n if (format === DOWNLOAD_FORMAT_EXCEL && getFilterCombinationCount(dataset, tableLayout?.filters) > 1) {\r\n handleExportExcelShow(exportParams);\r\n } else if (format === DOWNLOAD_FORMAT_CSV) {\r\n handleExportCsvShow(exportParams);\r\n } else {\r\n onDownloadSubmit(nodeId, datasetId, datasetTitle, format, extension, false, criteria, tableLayout, exportParams, t);\r\n }\r\n }}\r\n timings={timings}\r\n chartId={chartId}\r\n mapId={mapId}\r\n />\r\n
    \r\n
    \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n {dataset && (\r\n \r\n {dataset && isPartialData && (\r\n \r\n {t(\"scenes.dataViewer.warnings.maxObservation.label\", {maxObservation: maxObservation ? numberFormatter(maxObservation) : \"\"})}\r\n \r\n )}\r\n
    \r\n
    \r\n \r\n
    \r\n
    \r\n \r\n {enableVariation && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n {\r\n const exportParams = {\r\n decimalNumber: decimalPlaces,\r\n decimalSeparator: decimalSeparator,\r\n emptyCellPlaceHolder: tableEmptyChar,\r\n labelFormat: labelFormat,\r\n customLabelFormat: {\r\n [TIME_PERIOD_DIMENSION_KEY]: LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID\r\n },\r\n hasVariation: enableVariation,\r\n showTrend: showTrend,\r\n showCyclical: showCyclical\r\n };\r\n const layout = viewerIdx === 0\r\n ? tableLayout\r\n : viewerIdx === 1\r\n ? mapLayout\r\n : chartLayout;\r\n\r\n onDownloadSubmit(\r\n nodeId,\r\n datasetId,\r\n datasetTitle,\r\n DOWNLOAD_FORMAT_CSV,\r\n getDownloadFormatExtensionFromFormat(DOWNLOAD_FORMAT_CSV),\r\n false,\r\n criteria,\r\n layout,\r\n exportParams,\r\n t\r\n );\r\n }}\r\n >\r\n \r\n \r\n \r\n \r\n {viewerIdx >= 2 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {viewerIdx === 1 && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {viewerIdx === 0 && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n {isFullscreen ? : }\r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n )}\r\n
    \r\n
    \r\n {(() => {\r\n if (!dataset) {\r\n return isEmptyData\r\n ? \r\n : \r\n\r\n } else {\r\n if (viewerIdx === 0 && tableLayout) {\r\n return !isTooBigData\r\n ? (\r\n \r\n )\r\n : (\r\n \r\n )\r\n\r\n } else if (viewerIdx === 1 && mapLayout) {\r\n return (\r\n onGeometryFetch(idList, t, nodeId)}\r\n detailLevel={mapDetailLevel}\r\n setDetailLevel={onMapDetailLevelSet}\r\n classificationMethod={mapSettings.mapClassificationMethod}\r\n paletteStartColor={mapSettings.mapPaletteStartColor}\r\n paletteEndColor={mapSettings.mapPaletteEndColor}\r\n paletteCardinality={mapSettings.mapPaletteCardinality}\r\n opacity={mapSettings.mapOpacity}\r\n isLegendCollapsed={mapSettings.mapIsLegendCollapsed}\r\n setSettings={onMapSettingsSet}\r\n isFullscreen={isFullscreen}\r\n />\r\n )\r\n\r\n } else if (viewerIdx >= 2 && chartLayout) {\r\n return (\r\n \r\n )\r\n\r\n } else {\r\n return (\r\n \r\n )\r\n }\r\n }\r\n })()}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n \r\n\r\n \r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.criteria.title\")}\r\n \r\n \r\n \r\n {dimensions && isCriteriaVisible && (\r\n \r\n\r\n \r\n\r\n \r\n {(() => {\r\n if (isEmptyData) {\r\n return (\r\n \r\n {t(\"scenes.dataViewer.errors.emptyData\")}\r\n \r\n )\r\n\r\n } else if (isTooBigData) {\r\n return (\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.criteriaAlert.tooBigData.title\")}\r\n \r\n \r\n
    \r\n {t(\"scenes.dataViewer.dialogs.criteriaAlert.tooBigData.content\")}\r\n
    \r\n
    \r\n
    \r\n )\r\n\r\n } else if (isTooLongQuery) {\r\n return (\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.criteriaAlert.isTooLongQuery.title\")}\r\n \r\n \r\n
    \r\n {t(\"scenes.dataViewer.dialogs.criteriaAlert.isTooLongQuery.content\")}\r\n
    \r\n
    \r\n
    \r\n )\r\n\r\n } else {\r\n return (\r\n \r\n {t(\"scenes.dataViewer.errors.genericError\")}\r\n \r\n )\r\n }\r\n })()}\r\n \r\n \r\n \r\n \r\n\r\n setIsObsCountWarningVisible(false)}\r\n >\r\n \r\n {t(\"scenes.dataViewer.dialogs.obsCountWarning.content\")}\r\n \r\n \r\n \r\n {\r\n setIsObsCountWarningVisible(false);\r\n handleCriteriaSubmit();\r\n }}\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n \r\n \r\n\r\n
    \r\n )}\r\n
    \r\n \r\n \r\n (criteriaObsCount && criteriaObsCount > maxObservation)\r\n ? setIsObsCountWarningVisible(true)\r\n : handleCriteriaSubmit()\r\n }\r\n disabled={!isCriteriaValid}\r\n >\r\n {t(\"commons.confirm.apply\")}\r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.tableLayout.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n = 2}\r\n fullWidth\r\n maxWidth=\"md\"\r\n onClose={handleLayoutClose}\r\n >\r\n \r\n {t(\"scenes.dataViewer.dialogs.chartLayout.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.downloadFormat.content\")}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.unavailableView.content\")}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.chartSettings.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.mapSettings.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.exportExcel.title\")}\r\n \r\n \r\n {singleSheet === false && (getFilterCombinationCount(dataset, tableLayout?.filters) > exportConfig?.maxExcelSheets) && (\r\n \r\n {t(\"scenes.dataViewer.dialogs.exportExcel.warning\", {sheetsLimit: exportConfig?.maxExcelSheets})}\r\n \r\n )}\r\n {(() => {\r\n const label = t(\"scenes.dataViewer.dialogs.exportExcel.export.label\") + \":\";\r\n\r\n const getTextWidthEl = $(``).css({visibility: 'hidden'}).appendTo('body').get(0);\r\n const labelWidth = getTextWidth(label, getTextWidthEl);\r\n $(getTextWidthEl).remove();\r\n\r\n return (\r\n \r\n \r\n {label}\r\n \r\n setSingleSheet(ev.target.value)}\r\n SelectDisplayProps={{\"aria-haspopup\": true}}\r\n >\r\n {t(\"scenes.dataViewer.dialogs.exportExcel.export.values.singleSheet\")}\r\n {t(\"scenes.dataViewer.dialogs.exportExcel.export.values.multiSheet\")}\r\n \r\n \r\n )\r\n })()}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n \r\n {t(\"scenes.dataViewer.dialogs.exportCsv.title\")}\r\n \r\n \r\n {(() => {\r\n const exportLayout = viewerIdx === 0\r\n ? tableLayout\r\n : viewerIdx === 1\r\n ? mapLayout\r\n : chartLayout;\r\n\r\n return dataset && (\r\n \r\n {(\r\n getFilterCombinationCount(dataset, exportLayout?.filters) > 1 ||\r\n (exportLayout?.primaryDim?.[0] !== undefined && exportLayout.primaryDimValues.length < dataset.size[dataset.id.indexOf(exportLayout.primaryDim[0])]) ||\r\n (exportLayout?.secondaryDim?.[0] !== undefined && exportLayout.secondaryDimValues.length < dataset.size[dataset.id.indexOf(exportLayout.secondaryDim[0])])\r\n ) && (\r\n \r\n \r\n setFilteredDataset(ev.target.value)}\r\n variant=\"outlined\"\r\n SelectProps={{\"aria-haspopup\": true}}\r\n >\r\n {t(\"scenes.dataViewer.dialogs.exportCsv.export.values.filtered\")}\r\n {t(\"scenes.dataViewer.dialogs.exportCsv.export.values.full\")}\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n setCsvParams({...csvParams, labelFormat: ev.target.value})}\r\n variant=\"outlined\"\r\n SelectProps={{\"aria-haspopup\": true}}\r\n >\r\n {t(\"scenes.dataViewer.dialogs.exportCsv.labelFormat.values.both\")}\r\n {t(\"scenes.dataViewer.dialogs.exportCsv.labelFormat.values.name\")}\r\n {t(\"scenes.dataViewer.dialogs.exportCsv.labelFormat.values.id\")}\r\n \r\n \r\n \r\n \r\n \r\n setCsvParams({...csvParams, colsSeparator: ev.target.value})}\r\n variant=\"outlined\"\r\n SelectProps={{\"aria-haspopup\": true}}\r\n >\r\n {getColsSeparators(t).map(({value, label}, idx) => (\r\n {label}\r\n ))}\r\n \r\n \r\n \r\n \r\n \r\n (ev.target.value || \"\").length <= 1\r\n ? setCsvParams({...csvParams, textQualifier: ev.target.value})\r\n : null\r\n }\r\n variant=\"outlined\"\r\n error={csvParams?.colsSeparator === csvParams?.textQualifier}\r\n helperText={csvParams?.colsSeparator === csvParams?.textQualifier\r\n ? t(\"scenes.dataViewer.dialogs.exportCsv.textQualifier.helperText\")\r\n : null\r\n }\r\n />\r\n \r\n \r\n \r\n )\r\n })()}\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n );\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps, mapDispatchToProps)\r\n)(DataViewer);","export const FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_INIT = \"fetch/dashboard/dataset/async/handler/init\"\r\nexport const FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_SUCCESS = \"fetch/dashboard/dataset/async/handler/success\"\r\nexport const FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_ERROR = \"fetch/dashboard/dataset/async/handler/error\"\r\nexport const FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_RESET = \"fetch/dashboard/dataset/async/handler/reset\"\r\n\r\nexport const initFetchDashboardDatasetAsyncHandler = (dashboardId, isFetchingDynamicView, requestUuid) => ({\r\n type: FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_INIT,\r\n payload: {\r\n dashboardId: dashboardId,\r\n isFetchingDynamicView: isFetchingDynamicView,\r\n requestUuid: requestUuid\r\n }\r\n});\r\n\r\nexport const successFetchDashboardDatasetAsyncHandler = (dashboardId, isFetchingDynamicView, dashboardJsonStats, dashboardLayouts, dashboardFilterTrees, dashboardTimePeriodsByFreq, dashboardMaps) => ({\r\n type: FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_SUCCESS,\r\n payload: {\r\n dashboardId: dashboardId,\r\n isFetchingDynamicView: isFetchingDynamicView,\r\n dashboardJsonStats: dashboardJsonStats,\r\n dashboardLayouts: dashboardLayouts,\r\n dashboardFilterTrees: dashboardFilterTrees,\r\n dashboardTimePeriodsByFreq: dashboardTimePeriodsByFreq,\r\n dashboardMaps: dashboardMaps,\r\n }\r\n});\r\n\r\nexport const errorFetchDashboardDatasetAsyncHandler = (dashboardId, requestIds) => ({\r\n type: FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_ERROR,\r\n payload: {\r\n dashboardId: dashboardId,\r\n requestIds: requestIds\r\n }\r\n});\r\n\r\nexport const resetFetchDashboardDatasetAsyncHandler = (dashboardId, requestIds) => ({\r\n type: FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_RESET,\r\n payload: {\r\n dashboardId: dashboardId,\r\n requestIds: requestIds\r\n }\r\n});","import {Reducer} from \"redux\";\r\nimport {REQUEST_ERROR, REQUEST_INIT, REQUEST_SUCCESS} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n DASHBOARDS_DASHBOARD_FETCH,\r\n DASHBOARDS_DASHBOARDS_CLEAR,\r\n DASHBOARDS_DATASET_FILTER_APPLY,\r\n DASHBOARDS_DATASET_FILTER_SET,\r\n DASHBOARDS_MAP_GEOMETRIES_FETCH\r\n} from \"./dashboardActions\";\r\nimport {DASHBOARD_ELEM_FILTER_DIMENSION_KEY, DASHBOARD_ELEM_TYPE_KEY, DASHBOARD_ELEM_TYPE_VALUE_VIEW, getViewIdxFromRowAndCol} from \"../../utils/dashboards\";\r\nimport {getCriteriaObjectFromArray} from \"../../utils/criteria\";\r\nimport {\r\n FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_ERROR,\r\n FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_INIT,\r\n FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_RESET,\r\n FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_SUCCESS\r\n} from \"../../middlewares/fetchDashboardDatasetAsyncHandler/actions\";\r\nimport _ from \"lodash\";\r\nimport {getUpdatedLayout} from \"../../utils/jsonStat\";\r\nimport {getGeometryDetailLevels} from \"../../utils/other\";\r\n\r\nexport const DASHBOARD_VIEW_STATE_APPLY_FILTERS = \"DASHBOARD_VIEW_STATE_APPLY_FILTERS\"\r\nexport const DASHBOARD_VIEW_STATE_FETCHING = \"DASHBOARD_VIEW_STATE_FETCHING\"\r\nexport const DASHBOARD_VIEW_STATE_ERROR = \"DASHBOARD_VIEW_STATE_ERROR\"\r\nexport const DASHBOARD_VIEW_STATE_ERROR_FETCHING_GEOMETRIES = \"DASHBOARD_VIEW_STATE_ERROR_FETCHING_GEOMETRIES\"\r\n\r\ntype DashboardState = {\r\n dashboards: any | null,\r\n fetchedDashboards: { [key: string]: { [key: string]: boolean } },\r\n jsonStats: any | null,\r\n layouts: any | null,\r\n filterTrees: any | null,\r\n timePeriodsByFreq: any | null,\r\n maps: any | null,\r\n dynamicViewPendingRequests: string[]\r\n}\r\n\r\nconst initialState = {\r\n dashboards: null,\r\n fetchedDashboards: {},\r\n jsonStats: null,\r\n layouts: null,\r\n filterTrees: null,\r\n timePeriodsByFreq: null,\r\n maps: null,\r\n dynamicViewPendingRequests: []\r\n};\r\n\r\nconst dashboardReducer: Reducer = (\r\n state = initialState,\r\n action\r\n) => {\r\n switch (action.type) {\r\n case DASHBOARDS_DASHBOARDS_CLEAR: {\r\n return {\r\n ...initialState\r\n }\r\n }\r\n case DASHBOARDS_DATASET_FILTER_APPLY: {\r\n const newFetchedDashboards = _.cloneDeep(state.fetchedDashboards);\r\n Object.keys(newFetchedDashboards).forEach(id => newFetchedDashboards[id] = {\r\n ...newFetchedDashboards[id],\r\n dynamic: false\r\n });\r\n\r\n return {\r\n ...state,\r\n fetchedDashboards: newFetchedDashboards\r\n }\r\n }\r\n case FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_INIT: {\r\n let currentDashboardJsonStats = _.cloneDeep(state.jsonStats?.[action.payload.dashboardId]);\r\n let currentDashboardLayouts = _.cloneDeep(state.layouts?.[action.payload.dashboardId]);\r\n let currentDashboardFilterTrees = _.cloneDeep(state.filterTrees?.[action.payload.dashboardId]);\r\n let currentDashboardTimePeriodsByFreq = _.cloneDeep(state.timePeriodsByFreq?.[action.payload.dashboardId]);\r\n\r\n (state.dashboards?.[action.payload.dashboardId]?.dashboardConfig || []).forEach((row: any, rowIdx: number) => {\r\n row.forEach((col: any, colIdx: number) => {\r\n if (col[DASHBOARD_ELEM_TYPE_KEY] === DASHBOARD_ELEM_TYPE_VALUE_VIEW) {\r\n const viewIdx = getViewIdxFromRowAndCol(rowIdx, colIdx);\r\n const isStaticView = (col[DASHBOARD_ELEM_FILTER_DIMENSION_KEY] || \"\").length === 0;\r\n\r\n const jsonStat = currentDashboardJsonStats?.[viewIdx];\r\n currentDashboardJsonStats = {\r\n ...currentDashboardJsonStats,\r\n [viewIdx]: (isStaticView && jsonStat)\r\n ? jsonStat\r\n : DASHBOARD_VIEW_STATE_FETCHING\r\n }\r\n\r\n const layout = currentDashboardLayouts?.[viewIdx];\r\n currentDashboardLayouts = {\r\n ...currentDashboardLayouts,\r\n [viewIdx]: (isStaticView && jsonStat)\r\n ? layout\r\n : null\r\n }\r\n\r\n const filterTree = currentDashboardFilterTrees?.[viewIdx];\r\n currentDashboardFilterTrees = {\r\n ...currentDashboardFilterTrees,\r\n [viewIdx]: (isStaticView && jsonStat)\r\n ? filterTree\r\n : null\r\n }\r\n\r\n const timePeriodsByFreq = currentDashboardTimePeriodsByFreq?.[viewIdx];\r\n currentDashboardTimePeriodsByFreq = {\r\n ...currentDashboardTimePeriodsByFreq,\r\n [viewIdx]: timePeriodsByFreq || null\r\n }\r\n }\r\n });\r\n });\r\n\r\n const dynamicViewPendingRequests = [...state.dynamicViewPendingRequests];\r\n if (action.payload.isFetchingDynamicView) {\r\n dynamicViewPendingRequests.push(action.payload.requestUuid);\r\n }\r\n\r\n return {\r\n ...state,\r\n jsonStats: {\r\n ...state.jsonStats,\r\n [action.payload.dashboardId]: currentDashboardJsonStats\r\n },\r\n layouts: {\r\n ...state.layouts,\r\n [action.payload.dashboardId]: currentDashboardLayouts\r\n },\r\n filterTrees: {\r\n ...state.filterTrees,\r\n [action.payload.dashboardId]: currentDashboardFilterTrees\r\n },\r\n timePeriodsByFreq: {\r\n ...state.timePeriodsByFreq,\r\n [action.payload.dashboardId]: currentDashboardTimePeriodsByFreq\r\n },\r\n dynamicViewPendingRequests: dynamicViewPendingRequests\r\n }\r\n }\r\n case FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_SUCCESS: {\r\n\r\n const fetchedDashboard = state.fetchedDashboards[action.payload.dashboardId] || {};\r\n\r\n return (state.jsonStats && state.layouts && state.filterTrees && state.timePeriodsByFreq)\r\n ? {\r\n ...state,\r\n fetchedDashboards: {\r\n ...state.fetchedDashboards,\r\n [action.payload.dashboardId]: {\r\n static: !action.payload.isFetchingDynamicView ? true : fetchedDashboard.static,\r\n dynamic: action.payload.isFetchingDynamicView ? true : fetchedDashboard.dynamic\r\n }\r\n },\r\n jsonStats: {\r\n ...state.jsonStats,\r\n [action.payload.dashboardId]: {\r\n ...state.jsonStats[action.payload.dashboardId],\r\n ...action.payload.dashboardJsonStats\r\n }\r\n },\r\n layouts: {\r\n ...state.layouts,\r\n [action.payload.dashboardId]: {\r\n ...state.layouts[action.payload.dashboardId],\r\n ...action.payload.dashboardLayouts\r\n }\r\n },\r\n filterTrees: {\r\n ...state.filterTrees,\r\n [action.payload.dashboardId]: {\r\n ...state.filterTrees[action.payload.dashboardId],\r\n ...action.payload.dashboardFilterTrees\r\n }\r\n },\r\n timePeriodsByFreq: {\r\n ...state.timePeriodsByFreq,\r\n [action.payload.dashboardId]: {\r\n ...state.timePeriodsByFreq[action.payload.dashboardId],\r\n ...action.payload.dashboardTimePeriodsByFreq\r\n }\r\n },\r\n maps: {\r\n ...state.maps,\r\n [action.payload.dashboardId]: {\r\n ...state.maps?.[action.payload.dashboardId],\r\n ...action.payload.dashboardMaps\r\n }\r\n }\r\n }\r\n : {\r\n ...state\r\n }\r\n }\r\n case FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_ERROR: {\r\n const jsonStats = _.cloneDeep(state.jsonStats);\r\n const layouts = _.cloneDeep(state.layouts);\r\n const filterTrees = _.cloneDeep(state.filterTrees);\r\n const timePeriodsByFreq = _.cloneDeep(state.timePeriodsByFreq);\r\n\r\n (action.payload.requestIds || []).forEach((id: string) => {\r\n if (jsonStats) {\r\n jsonStats[action.payload.dashboardId] = {\r\n ...jsonStats[action.payload.dashboardId],\r\n [id]: DASHBOARD_VIEW_STATE_ERROR\r\n }\r\n }\r\n if (layouts) {\r\n layouts[action.payload.dashboardId] = {\r\n ...layouts[action.payload.dashboardId],\r\n [id]: null\r\n }\r\n }\r\n if (filterTrees) {\r\n filterTrees[action.payload.dashboardId] = {\r\n ...filterTrees[action.payload.dashboardId],\r\n [id]: null\r\n }\r\n }\r\n if (timePeriodsByFreq) {\r\n timePeriodsByFreq[action.payload.dashboardId] = {\r\n ...timePeriodsByFreq[action.payload.dashboardId],\r\n [id]: null\r\n }\r\n }\r\n });\r\n\r\n return {\r\n ...state,\r\n jsonStats: jsonStats,\r\n layouts: layouts,\r\n filterTrees: filterTrees,\r\n timePeriodsByFreq: timePeriodsByFreq\r\n }\r\n }\r\n case FETCH_DASHBOARD_DATASET_ASYNC_HANDLER_RESET: {\r\n const jsonStats = _.cloneDeep(state.jsonStats);\r\n const layouts = _.cloneDeep(state.layouts);\r\n const filterTrees = _.cloneDeep(state.filterTrees);\r\n const timePeriodsByFreq = _.cloneDeep(state.timePeriodsByFreq);\r\n\r\n (action.payload.requestIds || []).forEach((id: string) => {\r\n if (jsonStats) {\r\n jsonStats[action.payload.dashboardId] = {\r\n ...jsonStats[action.payload.dashboardId],\r\n [id]: DASHBOARD_VIEW_STATE_FETCHING\r\n }\r\n }\r\n if (layouts) {\r\n layouts[action.payload.dashboardId] = {\r\n ...layouts[action.payload.dashboardId],\r\n [id]: null\r\n }\r\n }\r\n if (filterTrees) {\r\n filterTrees[action.payload.dashboardId] = {\r\n ...filterTrees[action.payload.dashboardId],\r\n [id]: null\r\n }\r\n }\r\n if (timePeriodsByFreq) {\r\n timePeriodsByFreq[action.payload.dashboardId] = {\r\n ...timePeriodsByFreq[action.payload.dashboardId],\r\n [id]: null\r\n }\r\n }\r\n });\r\n\r\n return {\r\n ...state,\r\n jsonStats: jsonStats,\r\n layouts: layouts,\r\n filterTrees: filterTrees,\r\n timePeriodsByFreq: timePeriodsByFreq\r\n }\r\n }\r\n case DASHBOARDS_DATASET_FILTER_SET: {\r\n return {\r\n ...state,\r\n layouts: {\r\n ...state.layouts,\r\n [action.payload.dashboardId]: {\r\n ...state.layouts[action.payload.dashboardId],\r\n [action.payload.viewIdx]: {\r\n ...state.layouts[action.payload.dashboardId][action.payload.viewIdx],\r\n layout: getUpdatedLayout(\r\n action.payload.dimension,\r\n action.payload.value,\r\n state.jsonStats[action.payload.dashboardId][action.payload.viewIdx],\r\n state.layouts[action.payload.dashboardId][action.payload.viewIdx].layout,\r\n state.filterTrees[action.payload.dashboardId][action.payload.viewIdx]\r\n )\r\n }\r\n }\r\n }\r\n }\r\n }\r\n case REQUEST_INIT: {\r\n switch (action.payload.label) {\r\n case DASHBOARDS_MAP_GEOMETRIES_FETCH: {\r\n return {\r\n ...state,\r\n maps: {\r\n ...state.maps,\r\n [action.payload.extra.dashboardId]: {\r\n ...state?.maps?.[action.payload.extra.dashboardId],\r\n [action.payload.extra.viewIdx]: {\r\n geometries: null,\r\n geometryDetailLevels: null\r\n }\r\n }\r\n }\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n }\r\n case REQUEST_SUCCESS: {\r\n switch (action.payload.label) {\r\n case DASHBOARDS_DASHBOARD_FETCH: {\r\n const views = _.cloneDeep(action.payload.response.views);\r\n for (let key in views) {\r\n if (views.hasOwnProperty(key)) {\r\n views[key] = {\r\n ...views[key],\r\n datasetId: views[key].datasetId ? views[key].datasetId.split(\"+\").join(\",\") : undefined,\r\n criteria: getCriteriaObjectFromArray(views[key].criteria),\r\n layouts: JSON.parse(views[key].layouts)\r\n }\r\n }\r\n }\r\n\r\n return {\r\n ...state,\r\n dashboards: {\r\n ...state.dashboards,\r\n [action.payload.extra.dashboardId]: {\r\n ...action.payload.response,\r\n dashboardConfig: action.payload.response?.dashboardConfig\r\n ? JSON.parse(action.payload.response.dashboardConfig)\r\n : {},\r\n filterLevels: action.payload.response?.filterLevels\r\n ? JSON.parse(action.payload.response.filterLevels)\r\n : {},\r\n views: views\r\n }\r\n }\r\n }\r\n }\r\n case DASHBOARDS_MAP_GEOMETRIES_FETCH: {\r\n return {\r\n ...state,\r\n maps: {\r\n ...state.maps,\r\n [action.payload.extra.dashboardId]: {\r\n ...state.maps[action.payload.extra.dashboardId],\r\n [action.payload.extra.viewIdx]: {\r\n geometries: action.payload.response,\r\n geometryDetailLevels: getGeometryDetailLevels(action.payload.response, false, action.payload.extra.t)\r\n }\r\n }\r\n }\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n }\r\n case REQUEST_ERROR: {\r\n switch (action.payload.label) {\r\n case DASHBOARDS_DASHBOARD_FETCH: {\r\n return {\r\n ...state,\r\n dashboards: {\r\n ...state.dashboards,\r\n [action.payload.extra.dashboardId]: null\r\n }\r\n }\r\n }\r\n case DASHBOARDS_MAP_GEOMETRIES_FETCH: {\r\n return (state.jsonStats && state.layouts && state.filterTrees && state.timePeriodsByFreq)\r\n ? {\r\n ...state,\r\n jsonStats: {\r\n ...state.jsonStats,\r\n [action.payload.extra.dashboardId]: {\r\n ...state.jsonStats[action.payload.extra.dashboardId],\r\n [action.payload.extra.viewIdx]: DASHBOARD_VIEW_STATE_ERROR_FETCHING_GEOMETRIES\r\n }\r\n },\r\n layouts: {\r\n ...state.layouts,\r\n [action.payload.extra.dashboardId]: {\r\n ...state.layouts[action.payload.extra.dashboardId],\r\n [action.payload.extra.viewIdx]: null\r\n }\r\n },\r\n filterTrees: {\r\n ...state.filterTrees,\r\n [action.payload.extra.dashboardId]: {\r\n ...state.filterTrees[action.payload.extra.dashboardId],\r\n [action.payload.extra.viewIdx]: null\r\n }\r\n },\r\n timePeriodsByFreq: {\r\n ...state.timePeriodsByFreq,\r\n [action.payload.extra.dashboardId]: {\r\n ...state.timePeriodsByFreq[action.payload.extra.dashboardId],\r\n [action.payload.extra.viewIdx]: null\r\n }\r\n },\r\n maps: {\r\n ...state.maps,\r\n [action.payload.extra.dashboardId]: {\r\n ...state.maps[action.payload.extra.dashboardId],\r\n [action.payload.extra.viewIdx]: {\r\n geometries: null,\r\n geometryDetailLevels: null\r\n }\r\n }\r\n }\r\n }\r\n : {\r\n ...state\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n }\r\n default:\r\n return state\r\n }\r\n};\r\n\r\nexport default dashboardReducer;","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {getDashboardsUrl, getDatasetDownloadCustomUrl, getDatasetDownloadUrl, getDatasetUrl, getGeometryUrl} from \"../../serverApi/urls\";\r\nimport {getCriteriaArrayFromObject} from \"../../utils/criteria\";\r\nimport {DOWNLOAD_FORMAT_CSV, DOWNLOAD_FORMAT_EXCEL, downloadFormats, getCustomExportRequestBody} from \"../../utils/download\";\r\n\r\nexport const DASHBOARDS_DASHBOARD_FETCH = \"dashboards/dashboard/fetch\";\r\nexport const DASHBOARDS_DASHBOARDS_CLEAR = \"dashboards/dashboards/clear\";\r\nexport const DASHBOARDS_DATASET_FETCH = \"dashboards/dataset/fetch\";\r\nexport const DASHBOARDS_DATASET_FILTER_SET = \"dashboards/dataset/filter/set\";\r\nexport const DASHBOARDS_DATASET_FILTER_APPLY = \"dashboards/dataset/filter/apply\";\r\nexport const DASHBOARDS_MAP_GEOMETRIES_FETCH = \"dashboards/map/geometries/fetch\";\r\nexport const DASHBOARDS_DATASET_DOWNLOAD_SUBMIT = \"dashboards/dataset/download/submit\";\r\n\r\nexport const fetchDashboardsDashboard = (dashboardId: number) => initRequest(\r\n DASHBOARDS_DASHBOARD_FETCH,\r\n getDashboardsUrl(dashboardId),\r\n RequestMethod.GET,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.dashboard.actions.fetchingDashboard\")\r\n }),\r\n {\r\n dashboardId: dashboardId\r\n }\r\n);\r\n\r\nexport const clearDashboardsDashboards = () => ({\r\n type: DASHBOARDS_DASHBOARDS_CLEAR\r\n});\r\n\r\nexport const fetchDashboardsDataset = (dashboardId: number, isFetchingDynamicView: boolean, nodeId: number, datasetId: string, criteria: any, requestIds: string[], worker: any) => initRequest(\r\n DASHBOARDS_DATASET_FETCH,\r\n getDatasetUrl(nodeId, datasetId),\r\n RequestMethod.POST,\r\n getCriteriaArrayFromObject(criteria),\r\n t => ({\r\n onStart: t(\"scenes.dashboard.actions.fetchingDataset\")\r\n }),\r\n {\r\n dashboardId: dashboardId,\r\n isFetchingDynamicView: isFetchingDynamicView,\r\n requestIds: requestIds,\r\n criteria: criteria,\r\n worker: worker\r\n },\r\n \"\",\r\n () => true,\r\n true\r\n);\r\n\r\nexport const setDashboardsDatasetFilter = (dashboardId: number, viewIdx: string, dimension: string, value: string) => ({\r\n type: DASHBOARDS_DATASET_FILTER_SET,\r\n payload: {\r\n dashboardId,\r\n viewIdx,\r\n dimension,\r\n value\r\n }\r\n});\r\n\r\nexport const applyDashboardsDatasetFilter = () => ({\r\n type: DASHBOARDS_DATASET_FILTER_APPLY\r\n});\r\n\r\nexport const fetchDashboardsMapGeometries = (dashboardId: number, viewIdx: string, idList: string[], t: any, nodeId: number) => initRequest(\r\n DASHBOARDS_MAP_GEOMETRIES_FETCH,\r\n getGeometryUrl(nodeId),\r\n RequestMethod.POST,\r\n idList,\r\n t => ({\r\n onStart: t(`scenes.dashboard.actions.fetchingGeometries`)\r\n }),\r\n {\r\n dashboardId: dashboardId,\r\n viewIdx: viewIdx,\r\n t: t\r\n },\r\n \"\",\r\n () => true,\r\n true\r\n);\r\n\r\nexport const submitDashboardDatasetDownload = (\r\n nodeId: number,\r\n datasetId: string,\r\n datasetTitle: string,\r\n format: string,\r\n extension: string,\r\n zipped: boolean,\r\n criteria: any,\r\n layout: any,\r\n params: any,\r\n t: any\r\n) => {\r\n let url, body, type;\r\n\r\n if (format === DOWNLOAD_FORMAT_EXCEL || format === DOWNLOAD_FORMAT_CSV) {\r\n url = getDatasetDownloadCustomUrl(nodeId, format, zipped);\r\n body = getCustomExportRequestBody(datasetId, datasetTitle, criteria, layout, params, t);\r\n\r\n } else {\r\n // @ts-ignore\r\n const formatParam = downloadFormats()[format]?.param || format;\r\n url = getDatasetDownloadUrl(nodeId, datasetId, formatParam, zipped);\r\n body = getCriteriaArrayFromObject(criteria);\r\n }\r\n\r\n type = format === DOWNLOAD_FORMAT_EXCEL\r\n ? \"application/vnd.ms-excel\"\r\n : \"text/plain;charset=utf-8\";\r\n\r\n return initRequest(\r\n DASHBOARDS_DATASET_DOWNLOAD_SUBMIT,\r\n url,\r\n RequestMethod.POST,\r\n body,\r\n t => ({\r\n onStart: t(\"scenes.dataset.actions.downloadingDataset\")\r\n }),\r\n {\r\n fileSave: {\r\n name: `${datasetTitle} (${datasetId})`,\r\n extension: extension,\r\n type: type\r\n }\r\n },\r\n undefined,\r\n (statusCode: number) => statusCode === 406,\r\n undefined,\r\n undefined,\r\n true\r\n )\r\n};","import React, {Fragment, useEffect, useState} from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {\r\n DASHBOARD_ELEM_ENABLE_FILTERS_KEY,\r\n DASHBOARD_ELEM_FILTER_DIMENSION_KEY,\r\n DASHBOARD_ELEM_SHOW_TITLE_KEY,\r\n DASHBOARD_ELEM_TYPE_KEY,\r\n DASHBOARD_ELEM_TYPE_VALUE_TEXT,\r\n DASHBOARD_ELEM_TYPE_VALUE_VIEW,\r\n DASHBOARD_ELEM_VALUE_KEY,\r\n DASHBOARD_ELEM_WIDTH_KEY,\r\n getViewIdxFromRowAndCol\r\n} from \"../../utils/dashboards\";\r\nimport {getViewerIdxFromType} from \"../data-viewer\";\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\nimport {\r\n DOWNLOAD_FORMAT_IMAGE,\r\n DOWNLOAD_VIEWER_CHART,\r\n DOWNLOAD_VIEWER_MAP,\r\n DOWNLOAD_VIEWER_TABLE,\r\n exportViewerCanvas,\r\n getDownloadFormatExtensionFromFormat,\r\n getDownloadFormatLabelFromFormat,\r\n getDownloadFormatViewersFromFormat,\r\n isDownloadFormatValid\r\n} from \"../../utils/download\";\r\nimport SanitizedHTML from \"../sanitized-html\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport {\r\n DASHBOARD_VIEW_STATE_APPLY_FILTERS,\r\n DASHBOARD_VIEW_STATE_ERROR,\r\n DASHBOARD_VIEW_STATE_ERROR_FETCHING_GEOMETRIES,\r\n DASHBOARD_VIEW_STATE_FETCHING\r\n} from \"../../state/dashboard/dashboardReducer\";\r\nimport {\r\n getDatasetAttributeList,\r\n getDimensionAttributeMap,\r\n getDimensionLabelFromJsonStat,\r\n getDimensionValueLabelFromJsonStat,\r\n getSeriesAttributeList,\r\n TIME_PERIOD_DIMENSION_KEY,\r\n VARIATION_DIMENSION_KEY\r\n} from \"../../utils/jsonStat\";\r\nimport DatasetFilters from \"../dataset-filters\";\r\nimport Table from \"../table\";\r\nimport Map from \"../map\";\r\nimport Chart from \"../chart\";\r\nimport _ from \"lodash\";\r\nimport CircularProgress from \"@material-ui/core/CircularProgress\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport FullscreenIcon from '@material-ui/icons/Fullscreen';\r\nimport FullscreenExitIcon from '@material-ui/icons/FullscreenExit';\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport GetAppIcon from '@material-ui/icons/GetApp';\r\nimport Card from \"@material-ui/core/Card\";\r\nimport ButtonSelect from \"../button-select\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport AttributeList from \"../attribute-list\";\r\nimport AttributeButton from \"../attribute-button\";\r\nimport {LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID} from \"../label-format-selector/constants\";\r\nimport {toggleFullScreen} from \"../../utils/other\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst VIEW_FIXED_HEIGHT = 580;\r\n\r\nconst styles = theme => ({\r\n col: {\r\n display: \"inline-block\",\r\n verticalAlign: \"top\",\r\n padding: 8\r\n },\r\n viewContainer: {\r\n position: \"relative\",\r\n padding: \"16px 24px\"\r\n },\r\n viewContainerHeader: {},\r\n viewContainerHeaderTitle: {\r\n minHeight: 48,\r\n paddingBottom: 8,\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n fontSize: 18,\r\n \"& > button\": {\r\n marginLeft: 4\r\n }\r\n },\r\n viewContainerHeaderControllers: {\r\n position: \"absolute\",\r\n top: 16,\r\n right: 24,\r\n display: \"flex\",\r\n \"& > *\": {\r\n marginLeft: 4\r\n }\r\n },\r\n viewContainerHeaderStaticFilters: {\r\n paddingBottom: 8,\r\n },\r\n viewContainerHeaderActiveFilters: {\r\n paddingBottom: 8,\r\n },\r\n viewContainerHeaderPlaceholder: {\r\n paddingBottom: 8\r\n },\r\n viewContainerView: {\r\n width: \"100%\",\r\n position: \"relative\"\r\n },\r\n attributeId: {\r\n cursor: \"default\",\r\n fontSize: 13,\r\n color: \"rgb(255, 255, 255)\",\r\n backgroundColor: \"rgb(108, 108, 108)\",\r\n borderRadius: 3,\r\n padding: \"0 4px\",\r\n marginLeft: 4\r\n },\r\n attributeAst: {\r\n cursor: \"default\",\r\n fontSize: 15,\r\n color: theme.palette.primary.main,\r\n fontFamily: \"Do Hyeon\",\r\n marginLeft: 4\r\n }\r\n});\r\n\r\nconst handleStyle = (dashboardId, viewIdx, dashboardElem, minDashboardWidth) => {\r\n const $viewContainer = $(`#dashboard__${dashboardId}__view-container__${viewIdx}`);\r\n\r\n if ($viewContainer.is(\":visible\")) {\r\n\r\n const $col = $(`#dashboard__${dashboardId}__col__${viewIdx}`);\r\n const $header = $(`#dashboard__${dashboardId}__view-container__${viewIdx}__header`);\r\n const $title = $(`#dashboard__${dashboardId}__view-container__${viewIdx}__header__title`);\r\n const $controllers = $(`#dashboard__${dashboardId}__view-container__${viewIdx}__header__controllers`);\r\n const $placeHolder = $(`#dashboard__${dashboardId}__view-container__${viewIdx}__header__placeholder`);\r\n const $staticFilters = $(`#dashboard__${dashboardId}__view-container__${viewIdx}__header__static-filters`);\r\n const $activeFilters = $(`#dashboard__${dashboardId}__view-container__${viewIdx}__header__active-filters`);\r\n const $view = $(`#dashboard__${dashboardId}__view-container__${viewIdx}__view`);\r\n\r\n $col.css({\r\n width: `${window.innerWidth > minDashboardWidth ? dashboardElem[DASHBOARD_ELEM_WIDTH_KEY] : 100}%`\r\n });\r\n\r\n if ($title.length) {\r\n $title.css({\r\n maxWidth: `calc(100% - ${$controllers.outerWidth() || 0}px)`,\r\n minHeight: $controllers.outerHeight()\r\n });\r\n $staticFilters.css({\r\n width: \"100%\"\r\n });\r\n $activeFilters.css({\r\n width: \"100%\"\r\n });\r\n\r\n } else if ($staticFilters.length) {\r\n $staticFilters.css({\r\n maxWidth: `calc(100% - ${$controllers.outerWidth() || 0}px)`,\r\n minHeight: $controllers.outerHeight(),\r\n paddingTop: 12\r\n });\r\n $activeFilters.css({\r\n width: \"100%\"\r\n });\r\n\r\n } else if ($activeFilters.length) {\r\n $activeFilters.css({\r\n maxWidth: `calc(100% - ${$controllers.outerWidth() || 0}px)`,\r\n minHeight: $controllers.outerHeight(),\r\n paddingTop: 12\r\n });\r\n\r\n } else {\r\n $placeHolder.css({\r\n maxWidth: `calc(100% - ${$controllers.outerWidth() || 0}px)`,\r\n minHeight: $controllers.outerHeight()\r\n });\r\n }\r\n\r\n $view.css({\r\n height: `calc(100% - ${$header.outerHeight() || 0}px)`\r\n });\r\n }\r\n};\r\n\r\nfunction DashboardCol(props) {\r\n\r\n const {\r\n t,\r\n classes,\r\n hub,\r\n defaultLanguage,\r\n languages,\r\n minDashboardWidth = 960,\r\n dashboardId,\r\n dashboard,\r\n filterValue,\r\n rowIdx,\r\n colIdx,\r\n dashboardElem,\r\n jsonStat: externalJsonStat,\r\n layout: externalLayoutObj,\r\n filterTree: externalFilterTree,\r\n timePeriodsByFreq: externalTimePeriodsByFreq,\r\n map: externalMap,\r\n rowWithView,\r\n onSelect,\r\n fetchMapGeometries,\r\n onDownloadSubmit\r\n } = props;\r\n\r\n const [chartId] = useState(\"chart__\" + uuidv4());\r\n const [mapId] = useState(\"map__\" + uuidv4());\r\n\r\n const [jsonStat, setJsonStat] = useState(externalJsonStat);\r\n const [layoutObj, setLayoutObj] = useState(externalLayoutObj);\r\n const [filterTree, setFilterTree] = useState(externalFilterTree);\r\n const [timePeriodsByFreq, setTimePeriodsByFreq] = useState(externalTimePeriodsByFreq);\r\n const [map, setMap] = useState(externalMap);\r\n\r\n const [isFullscreen, setFullscreen] = useState(false);\r\n const [isAttributesVisible, setAttributesVisibility] = useState(false);\r\n\r\n const viewIdx = getViewIdxFromRowAndCol(rowIdx, colIdx);\r\n\r\n useEffect(() => {\r\n const func = () => handleStyle(dashboardId, viewIdx, dashboardElem, minDashboardWidth);\r\n window.addEventListener(\"resize\", func);\r\n return () => window.removeEventListener(\"resize\", func)\r\n }, [dashboardId, viewIdx, dashboardElem, minDashboardWidth]);\r\n\r\n useEffect(() => {\r\n handleStyle(dashboardId, viewIdx, dashboardElem, minDashboardWidth);\r\n });\r\n\r\n useEffect(() => {\r\n setJsonStat(prevJsonStat => {\r\n if (_.isEqual(prevJsonStat, externalJsonStat)) {\r\n return prevJsonStat\r\n } else {\r\n return externalJsonStat\r\n }\r\n });\r\n }, [externalJsonStat]);\r\n\r\n useEffect(() => {\r\n setLayoutObj(prevLayoutObj => {\r\n if (_.isEqual(prevLayoutObj, externalLayoutObj)) {\r\n return prevLayoutObj\r\n } else {\r\n return externalLayoutObj\r\n }\r\n });\r\n }, [externalLayoutObj]);\r\n\r\n useEffect(() => {\r\n setFilterTree(prevFilterTree => {\r\n if (_.isEqual(prevFilterTree, externalFilterTree)) {\r\n return prevFilterTree\r\n } else {\r\n return externalFilterTree\r\n }\r\n });\r\n }, [externalFilterTree]);\r\n\r\n useEffect(() => {\r\n setTimePeriodsByFreq(prevTimePeriodsByFreq => {\r\n if (_.isEqual(prevTimePeriodsByFreq, externalTimePeriodsByFreq)) {\r\n return prevTimePeriodsByFreq\r\n } else {\r\n return externalTimePeriodsByFreq\r\n }\r\n });\r\n }, [externalTimePeriodsByFreq]);\r\n\r\n useEffect(() => {\r\n setMap(prevMaps => {\r\n if (_.isEqual(prevMaps, externalMap)) {\r\n return prevMaps\r\n } else {\r\n return externalMap\r\n }\r\n });\r\n }, [externalMap]);\r\n\r\n const handleFullscreen = () => {\r\n toggleFullScreen(`dashboard__${dashboardId}__view-container__${viewIdx}`, `dashboard__${dashboardId}__col__${viewIdx}`, !isFullscreen);\r\n handleStyle(dashboardId, viewIdx, dashboardElem, minDashboardWidth);\r\n setFullscreen(!isFullscreen);\r\n };\r\n\r\n const view = _.cloneDeep((dashboard.views || {})[dashboardElem[DASHBOARD_ELEM_VALUE_KEY]]);\r\n const viewerIdx = view ? getViewerIdxFromType(view.defaultView) : null;\r\n\r\n const nodeMinimalInfo = view ? hub.nodes.find(({nodeId}) => nodeId === view.nodeId) : {};\r\n const nodeExtras = nodeMinimalInfo?.extras || [];\r\n const nodeDownloadFormats = JSON.parse(nodeExtras.find(({key}) => key === \"DownloadFormats\")?.value || \"[]\");\r\n const downloadFormats = [];\r\n nodeDownloadFormats.forEach(format => {\r\n if (isDownloadFormatValid(format)) {\r\n downloadFormats.push({\r\n label: getDownloadFormatLabelFromFormat(format, t),\r\n format: format,\r\n extension: getDownloadFormatExtensionFromFormat(format),\r\n viewers: getDownloadFormatViewersFromFormat(format)\r\n })\r\n }\r\n });\r\n\r\n const nodeHiddenAttributes = JSON.parse(nodeExtras.find(({key}) => key === \"HiddenAttributes\")?.value || \"[]\");\r\n const datasetAttributes = (jsonStat && layoutObj) ? getDatasetAttributeList(jsonStat, nodeHiddenAttributes) : [];\r\n const seriesAttributes = (jsonStat && layoutObj) ? getSeriesAttributeList(jsonStat, layoutObj.labelFormat, nodeHiddenAttributes) : [];\r\n const showAttributeIcon = datasetAttributes.concat(seriesAttributes).length > 0;\r\n\r\n return (\r\n \r\n \r\n {(() => {\r\n if (dashboardElem[DASHBOARD_ELEM_TYPE_KEY] === DASHBOARD_ELEM_TYPE_VALUE_TEXT) {\r\n return (\r\n \r\n )\r\n\r\n } else if (view === null || view === undefined) {\r\n return (\r\n \r\n )\r\n\r\n } else if (jsonStat !== null && jsonStat !== undefined) {\r\n\r\n if (jsonStat === DASHBOARD_VIEW_STATE_APPLY_FILTERS) {\r\n return (\r\n \r\n )\r\n\r\n } else if (jsonStat === DASHBOARD_VIEW_STATE_FETCHING) {\r\n return (\r\n }\r\n />\r\n )\r\n\r\n } else if (jsonStat === DASHBOARD_VIEW_STATE_ERROR) {\r\n return (\r\n \r\n )\r\n\r\n } else if (jsonStat === DASHBOARD_VIEW_STATE_ERROR_FETCHING_GEOMETRIES) {\r\n return (\r\n \r\n )\r\n\r\n } else if (jsonStat === \"\") {\r\n return (\r\n \r\n )\r\n\r\n } else if (layoutObj) {\r\n\r\n let layout = {...layoutObj.layout};\r\n\r\n const filter = dashboardElem[DASHBOARD_ELEM_FILTER_DIMENSION_KEY];\r\n if (filter && filterValue && (jsonStat.dimension[filter]?.category?.index || []).includes(filterValue)) {\r\n if ((layout.filters || []).includes(filter)) {\r\n layout.filtersValue = {\r\n ...layout.filtersValue,\r\n [filter]: filterValue\r\n };\r\n } else if ((layout.primaryDim || []).includes(filter)) {\r\n layout.primaryDimValues = [filterValue];\r\n } else if ((layout.secondaryDim || []).includes(filter)) {\r\n layout.secondaryDimValues = [filterValue];\r\n }\r\n }\r\n\r\n let staticFilters = [];\r\n layout.filters.forEach(dim => {\r\n if (!dashboardElem[DASHBOARD_ELEM_ENABLE_FILTERS_KEY] || jsonStat.size[jsonStat.id.indexOf(dim)] === 1) {\r\n const value = layout.filtersValue[dim];\r\n staticFilters.push({\r\n dim: dim,\r\n dimLabel: getDimensionLabelFromJsonStat(jsonStat, dim, layoutObj.labelFormat),\r\n value: value,\r\n valueLabel: getDimensionValueLabelFromJsonStat(jsonStat, dim, value, layoutObj.labelFormat)\r\n });\r\n }\r\n });\r\n\r\n let dimAttributeMap = getDimensionAttributeMap(jsonStat);\r\n\r\n const TitleComponent = (\r\n \r\n {localizeI18nObj(view.title, defaultLanguage, languages)}\r\n {showAttributeIcon && (\r\n \r\n setAttributesVisibility(true)}\r\n iconStyle={{fontWeight: \"normal\"}}\r\n />\r\n \r\n )}\r\n \r\n );\r\n\r\n const ControllersComponent = (\r\n \r\n {showAttributeIcon && !dashboardElem[DASHBOARD_ELEM_SHOW_TITLE_KEY] && (\r\n \r\n setAttributesVisibility(true)}\r\n iconStyle={{fontWeight: \"normal\"}}\r\n />\r\n \r\n )}\r\n \r\n \r\n {isFullscreen ? : }\r\n \r\n \r\n {(() => {\r\n const formats = downloadFormats.filter(({viewers}) => {\r\n if (viewerIdx === 0) {\r\n return !viewers || viewers.includes(DOWNLOAD_VIEWER_TABLE);\r\n } else if (viewerIdx === 1) {\r\n return !viewers || viewers.includes(DOWNLOAD_VIEWER_MAP);\r\n } else {\r\n return !viewers || viewers.includes(DOWNLOAD_VIEWER_CHART);\r\n }\r\n });\r\n\r\n return formats.length > 0\r\n ? (\r\n }\r\n tooltip={t(\"components.dashboard.actions.download.tooltip\")}\r\n ariaLabel={t(\"components.dashboard.actions.download.ariaLabel\")}\r\n color=\"primary\"\r\n onChange={({format, extension}) => {\r\n if (format === DOWNLOAD_FORMAT_IMAGE) {\r\n if (viewerIdx === 1) {\r\n window.LMap.getCanvas(\r\n mapId,\r\n canvas => {\r\n exportViewerCanvas(\r\n canvas,\r\n `${localizeI18nObj(view.title, defaultLanguage, languages)}.jpeg`,\r\n layoutObj.mapSettings.mapShowTitle === true\r\n ? localizeI18nObj(layoutObj.mapSettings.mapTitle, defaultLanguage, languages)\r\n : null,\r\n layoutObj.mapSettings.mapShowFilters === true\r\n ? layoutObj.layout\r\n : null,\r\n layoutObj.mapSettings.mapShowFilters === true\r\n ? jsonStat\r\n : null\r\n );\r\n }\r\n );\r\n } else if (viewerIdx >= 2) {\r\n const chartCanvas = document.getElementById(chartId);\r\n exportViewerCanvas(\r\n chartCanvas,\r\n `${localizeI18nObj(view.title, defaultLanguage, languages)}.jpeg`,\r\n layoutObj.chartSettings.chartShowTitle === true\r\n ? localizeI18nObj(layoutObj.chartSettings.chartTitle, defaultLanguage, languages)\r\n : null,\r\n layoutObj.chartSettings.chartShowFilters === true\r\n ? layoutObj.layout\r\n : null,\r\n layoutObj.chartSettings.chartShowFilters === true\r\n ? jsonStat\r\n : null\r\n );\r\n }\r\n } else {\r\n const newCriteria = {...view.criteria};\r\n Object.keys(layoutObj.layout.filtersValue).forEach(key => {\r\n if (key !== TIME_PERIOD_DIMENSION_KEY) {\r\n newCriteria[key] = {\r\n id: key,\r\n filterValues: [layoutObj.layout.filtersValue[key]]\r\n }\r\n }\r\n });\r\n const primaryDim = layoutObj.layout?.primaryDim?.[0] || null;\r\n if (primaryDim && primaryDim !== TIME_PERIOD_DIMENSION_KEY) {\r\n newCriteria[primaryDim] = {\r\n id: primaryDim,\r\n filterValues: layoutObj.layout.primaryDimValues\r\n }\r\n }\r\n const secondaryDim = layoutObj.layout?.secondaryDim?.[0] || null;\r\n if (secondaryDim && secondaryDim !== TIME_PERIOD_DIMENSION_KEY) {\r\n newCriteria[secondaryDim] = {\r\n id: secondaryDim,\r\n filterValues: layoutObj.layout.secondaryDimValues\r\n }\r\n }\r\n\r\n const exportParams = {\r\n decimalNumber: view.decimalNumber,\r\n decimalSeparator: localizeI18nObj(view.decimalSeparator, defaultLanguage, languages),\r\n emptyCellPlaceHolder: layoutObj.tableEmptyChar,\r\n labelFormat: layoutObj.labelFormat,\r\n customLabelFormat: {\r\n [TIME_PERIOD_DIMENSION_KEY]: LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID\r\n },\r\n hasVariation: jsonStat.id.includes(VARIATION_DIMENSION_KEY),\r\n showTrend: layoutObj.showTrend,\r\n showCyclical: layoutObj.showCyclical,\r\n exportConfig: hub.hub.exportConfig\r\n };\r\n\r\n onDownloadSubmit({\r\n nodeId: view.nodeId,\r\n datasetId: view.datasetId,\r\n datasetTitle: localizeI18nObj(view.title, defaultLanguage, languages),\r\n format: format,\r\n extension: extension,\r\n zipped: false,\r\n criteria: newCriteria,\r\n layout: layoutObj.layout,\r\n params: exportParams,\r\n t: t\r\n });\r\n }\r\n }}\r\n >\r\n {formats.map(({format, label, extension}, idx) =>\r\n \r\n {label}\r\n \r\n )}\r\n \r\n )\r\n : \r\n })()}\r\n \r\n );\r\n\r\n const StaticFiltersComponent = (\r\n \r\n {staticFilters.map(({dim, dimLabel, value, valueLabel}, idx) =>\r\n \r\n {(dimLabel || dim)}:\r\n {(valueLabel || value)}\r\n {dimAttributeMap?.[dim]?.[value] && (\r\n \r\n {dimAttributeMap[dim][value].attributes\r\n .map(({id, label, valueId, valueLabel}, idx) => (\r\n
    \r\n {`${label || id}: ${valueLabel || valueId}${valueLabel !== valueId ? ` [${valueId}]` : ''}`}\r\n
    \r\n ))\r\n }\r\n \r\n }\r\n placement=\"top\"\r\n >\r\n {(() => {\r\n const ids = dimAttributeMap[dim][value].ids;\r\n if (ids && ids.length === 1 && ids[0].length <= 2) {\r\n return {ids[0]}\r\n } else {\r\n return (*)\r\n }\r\n })()}\r\n \r\n )}\r\n \r\n {idx < staticFilters.length - 1 ? \",\" : \"\"}\r\n \r\n
    \r\n )}\r\n \r\n );\r\n\r\n const ActiveFiltersComponent = (\r\n \r\n onSelect(dashboardId, viewIdx, dimension, value)}\r\n />\r\n \r\n );\r\n\r\n const PlaceHolderComponent = (\r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n {dashboardElem[DASHBOARD_ELEM_SHOW_TITLE_KEY]\r\n ? (\r\n \r\n {TitleComponent}\r\n {ControllersComponent}\r\n {staticFilters.length > 0 && StaticFiltersComponent}\r\n {dashboardElem[DASHBOARD_ELEM_ENABLE_FILTERS_KEY] && filterTree && ActiveFiltersComponent}\r\n \r\n )\r\n : staticFilters.length > 0 ?\r\n (\r\n \r\n {StaticFiltersComponent}\r\n {ControllersComponent}\r\n {dashboardElem[DASHBOARD_ELEM_ENABLE_FILTERS_KEY] && filterTree && ActiveFiltersComponent}\r\n \r\n )\r\n : dashboardElem[DASHBOARD_ELEM_ENABLE_FILTERS_KEY] && filterTree\r\n ? (\r\n \r\n {ActiveFiltersComponent}\r\n {ControllersComponent}\r\n \r\n )\r\n : (\r\n \r\n {PlaceHolderComponent}\r\n {ControllersComponent}\r\n \r\n )\r\n }\r\n \r\n \r\n {(() => {\r\n const decimalSeparator = localizeI18nObj(view.decimalSeparator, defaultLanguage, languages);\r\n const decimalPlaces = view.decimalNumber;\r\n\r\n if (viewerIdx === 0) {\r\n return (\r\n \r\n )\r\n } else if (viewerIdx === 1) {\r\n return (\r\n fetchMapGeometries(dashboardId, viewIdx, idList, t, view.nodeId)}\r\n detailLevel={layoutObj.mapDetailLevel}\r\n classificationMethod={layoutObj.mapSettings.mapClassificationMethod}\r\n paletteStartColor={layoutObj.mapSettings.mapPaletteStartColor}\r\n paletteEndColor={layoutObj.mapSettings.mapPaletteEndColor}\r\n paletteCardinality={layoutObj.mapSettings.mapPaletteCardinality}\r\n opacity={layoutObj.mapSettings.mapOpacity}\r\n isLegendCollapsed={layoutObj.mapSettings.mapIsLegendCollapsed}\r\n isFullscreen={isFullscreen}\r\n readOnly\r\n disableDetailLevelSelector={!dashboardElem[DASHBOARD_ELEM_ENABLE_FILTERS_KEY]}\r\n hideSpinner\r\n disableWheelZoom\r\n />\r\n )\r\n } else {\r\n return (\r\n \r\n )\r\n }\r\n })()}\r\n \r\n\r\n setAttributesVisibility(false)}\r\n >\r\n setAttributesVisibility(false)}>\r\n {t(\"components.dashboard.dialogs.attributes.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n )\r\n } else {\r\n return \r\n }\r\n } else {\r\n return \r\n }\r\n })()}\r\n \r\n \r\n )\r\n}\r\n\r\nexport default compose(\r\n withTranslation(),\r\n withStyles(styles),\r\n connect(state => ({\r\n hub: state.hub,\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages,\r\n minDashboardWidth: state.appConfig?.minDashboardWidth\r\n }))\r\n)(DashboardCol);","import React from \"react\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {\r\n DASHBOARD_ELEM_FILTER_DIMENSION_KEY,\r\n DASHBOARD_ELEM_TYPE_KEY,\r\n DASHBOARD_ELEM_TYPE_VALUE_VIEW,\r\n getViewIdxFromRowAndCol\r\n} from \"../../utils/dashboards\";\r\nimport DashboardCol from \"./DashboardCol\";\r\n\r\nconst styles = theme => ({\r\n row: {\r\n width: \"100%\"\r\n }\r\n});\r\n\r\nconst DashboardRow = ({\r\n classes,\r\n dashboardId,\r\n dashboard,\r\n filterValue,\r\n row,\r\n rowIdx,\r\n jsonStats,\r\n layouts,\r\n filterTrees,\r\n timePeriodsByFreq,\r\n onSelect,\r\n maps,\r\n fetchMapGeometries,\r\n onDownloadSubmit\r\n }) => {\r\n const rowWithView = row.find(dashboardElem => dashboardElem[DASHBOARD_ELEM_TYPE_KEY] === DASHBOARD_ELEM_TYPE_VALUE_VIEW) || false;\r\n\r\n return (\r\n
    \r\n {row.map((col, idx) => {\r\n const viewIdx = getViewIdxFromRowAndCol(rowIdx, idx);\r\n return (\r\n \r\n )\r\n })}\r\n
    \r\n )\r\n};\r\n\r\n\r\nexport default withStyles(styles)(DashboardRow);","import React, {Fragment, useEffect, useState} from \"react\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport _ from \"lodash\";\r\nimport DashboardRow from \"./DashboardRow\";\r\nimport CustomEmpty from \"../custom-empty\";\r\n\r\nfunction Dashboard(props) {\r\n const {\r\n dashboardId,\r\n dashboard: externalDashboard,\r\n filterValue,\r\n jsonStats,\r\n layouts,\r\n filterTrees,\r\n timePeriodsByFreq,\r\n onFilterSet,\r\n maps,\r\n fetchMapGeometries,\r\n onDownloadSubmit\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n const [dashboard, setDashboard] = useState(externalDashboard);\r\n\r\n useEffect(() => {\r\n setDashboard(prevDashboard => {\r\n if (_.isEqual(prevDashboard, externalDashboard)) {\r\n return prevDashboard\r\n } else {\r\n return externalDashboard\r\n }\r\n });\r\n }, [externalDashboard]);\r\n\r\n return (\r\n \r\n {dashboard\r\n ? (\r\n \r\n {(dashboard.dashboardConfig || []).map((row, idx) =>\r\n \r\n )}\r\n \r\n )\r\n : (\r\n \r\n )}\r\n \r\n )\r\n}\r\n\r\nexport default Dashboard;","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {connect} from \"react-redux\";\r\nimport {compose} from \"redux\";\r\nimport VisibilityIcon from '@material-ui/icons/Visibility';\r\nimport EditIcon from \"@material-ui/icons/Edit\";\r\nimport {\r\n changeOtherConfigDashboard,\r\n clearOtherConfigDashboards,\r\n clearOtherConfigDashboardsDataset,\r\n clearOtherConfigDashboardViews,\r\n closeOtherConfigDashboard,\r\n createOtherConfigDashboard,\r\n deleteOtherConfigDashboard,\r\n fetchOtherConfigDashboards,\r\n fetchOtherConfigDashboardsDataset,\r\n fetchOtherConfigDashboardsMapGeometries,\r\n fetchOtherConfigDashboardViews,\r\n hideOtherConfigDashboard,\r\n setOtherConfigDashboardsDatasetFilter,\r\n submitOtherConfigDashboardCreate,\r\n submitOtherConfigDashboardUpdate,\r\n updateOtherConfigDashboard\r\n} from \"../../../state/otherConfig/otherConfigActions\";\r\nimport AddIcon from \"@material-ui/icons/Add\";\r\nimport {goToDashboard} from \"../../../links\";\r\nimport DashboardBuilder from \"../../dashboard-builder\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../../custom-material-table\";\r\nimport {getI18nObjCustomFilterAndSearch, localizeI18nObj, validateI18nObj} from \"../../../utils/i18n\";\r\nimport Call from \"../../../hocs/call\";\r\nimport Dashboard from \"../../dashboard\";\r\nimport {\r\n DASHBOARD_ELEM_FILTER_DIMENSION_KEY,\r\n DASHBOARD_ELEM_TYPE_KEY,\r\n DASHBOARD_ELEM_TYPE_VALUE_VIEW,\r\n DASHBOARD_ELEM_VALUE_KEY,\r\n getViewIdxFromRowAndCol\r\n} from \"../../../utils/dashboards\";\r\nimport _ from \"lodash\"\r\nimport FullscreenDialog from \"../../fullscreen-dialog\";\r\n\r\nconst styles = theme => ({\r\n tableToolbar: {\r\n marginBottom: theme.spacing(1)\r\n },\r\n previewDialog: {\r\n \"& .MuiDialogTitle-root, & .MuiDialogContent-root, & .MuiDialogActions-root\": {\r\n background: \"#f5f5f5\"\r\n }\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages,\r\n dashboardConfig: state.dashboardConfig,\r\n needDashboards: state.otherConfig.needDashboards,\r\n dashboards: state.otherConfig.dashboards,\r\n dashboard: state.otherConfig.dashboard,\r\n dashboardViews: state.otherConfig.dashboardViews,\r\n dashboardJsonStats: state.otherConfig.dashboardJsonStats,\r\n dashboardLayouts: state.otherConfig.dashboardLayouts,\r\n dashboardFilterTrees: state.otherConfig.dashboardFilterTrees,\r\n dashboardTimePeriodsByFreq: state.otherConfig.dashboardTimePeriodsByFreq,\r\n dashboardMaps: state.otherConfig.dashboardMaps\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchDashboards: () => dispatch(fetchOtherConfigDashboards()),\r\n clearDashboards: () => dispatch(clearOtherConfigDashboards()),\r\n createDashboard: dashboard => dispatch(createOtherConfigDashboard(dashboard)),\r\n updateDashboard: dashboardId => dispatch(updateOtherConfigDashboard(dashboardId)),\r\n changeDashboard: dashboard => dispatch(changeOtherConfigDashboard(dashboard)),\r\n submitDashboardCreate: (dashboard, dashboardConfig) => dispatch(submitOtherConfigDashboardCreate(dashboard, dashboardConfig)),\r\n submitDashboardUpdate: (dashboardId, dashboard, dashboardConfig) => dispatch(submitOtherConfigDashboardUpdate(dashboardId, dashboard, dashboardConfig)),\r\n deleteDashboard: dashboardId => dispatch(deleteOtherConfigDashboard(dashboardId)),\r\n hideDashboard: () => dispatch(hideOtherConfigDashboard()),\r\n fetchViews: () => dispatch(fetchOtherConfigDashboardViews()),\r\n clearViews: () => dispatch(clearOtherConfigDashboardViews()),\r\n onClose: () => dispatch(closeOtherConfigDashboard()),\r\n fetchDataset: (nodeId, datasetId, criteria, requestIds) => dispatch(fetchOtherConfigDashboardsDataset(nodeId, datasetId, criteria, requestIds)),\r\n onFilterSet: (dashboardId, viewIdx, dimension, value) => dispatch(setOtherConfigDashboardsDatasetFilter(viewIdx, dimension, value)),\r\n fetchMapGeometries: (dashboardId, viewIdx, idList, t, nodeId) => dispatch(fetchOtherConfigDashboardsMapGeometries(viewIdx, idList, t, nodeId)),\r\n clearDatasets: () => dispatch(clearOtherConfigDashboardsDataset()),\r\n});\r\n\r\nconst getStaticDashboard = dashboard => {\r\n if (!dashboard) {\r\n return null\r\n }\r\n\r\n const staticDashboard = _.cloneDeep(dashboard);\r\n staticDashboard.dashboardConfig.forEach(row => {\r\n row.forEach(col => {\r\n col[DASHBOARD_ELEM_FILTER_DIMENSION_KEY] = null\r\n });\r\n });\r\n\r\n return staticDashboard\r\n};\r\n\r\nconst initialDashboard = {\r\n title: {},\r\n dashboardConfig: [],\r\n viewIds: [],\r\n views: {},\r\n filterLevels: {}\r\n};\r\n\r\nconst UserDashboardsSettingsForm = ({\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n dashboardConfig,\r\n nodes,\r\n needDashboards,\r\n dashboards,\r\n dashboard,\r\n fetchDashboards,\r\n clearDashboards,\r\n createDashboard,\r\n updateDashboard,\r\n changeDashboard,\r\n submitDashboardCreate,\r\n submitDashboardUpdate,\r\n deleteDashboard,\r\n hideDashboard,\r\n dashboardViews,\r\n fetchViews,\r\n clearViews,\r\n onClose,\r\n dashboardJsonStats,\r\n dashboardLayouts,\r\n dashboardFilterTrees,\r\n dashboardTimePeriodsByFreq,\r\n onFilterSet,\r\n dashboardMaps,\r\n fetchDataset,\r\n fetchMapGeometries,\r\n clearDatasets,\r\n onDashboardsClose\r\n }, ref) => {\r\n\r\n const [deleteDashboardId, setDeleteDashboardId] = useState(null);\r\n const [updateDashboardId, setUpdateDashboardId] = useState(null);\r\n\r\n const [isPreviewVisible, setPreviewVisibility] = useState(false);\r\n\r\n const {t} = useTranslation();\r\n\r\n useEffect(() => {\r\n fetchDashboards();\r\n }, [fetchDashboards]);\r\n\r\n useEffect(() => {\r\n if (needDashboards) {\r\n fetchDashboards();\r\n }\r\n }, [dashboards, needDashboards, fetchDashboards]);\r\n\r\n useImperativeHandle(ref, () => ({\r\n cancel(f) {\r\n clearDashboards();\r\n onClose();\r\n f();\r\n }\r\n }));\r\n\r\n const handleFetchDatasets = () => {\r\n\r\n const requests = [];\r\n dashboard.dashboardConfig.forEach((row, rowIdx) => {\r\n row.forEach((col, colIdx) => {\r\n if (col[DASHBOARD_ELEM_TYPE_KEY] === DASHBOARD_ELEM_TYPE_VALUE_VIEW) {\r\n\r\n const view = dashboard.views[col[DASHBOARD_ELEM_VALUE_KEY]];\r\n\r\n let newCriteria = view.criteria;\r\n\r\n const request = requests.find(({nodeId, datasetId, criteria}) => {\r\n return (\r\n nodeId === view.nodeId &&\r\n datasetId === view.datasetId &&\r\n _.isEqual(criteria, newCriteria)\r\n )\r\n });\r\n\r\n if (request === undefined) {\r\n requests.push({\r\n nodeId: view.nodeId,\r\n datasetId: view.datasetId.split(\"+\").join(\",\"),\r\n criteria: newCriteria,\r\n requestIds: [getViewIdxFromRowAndCol(rowIdx, colIdx)]\r\n });\r\n } else {\r\n request.requestIds.push(getViewIdxFromRowAndCol(rowIdx, colIdx));\r\n }\r\n }\r\n });\r\n });\r\n requests.forEach(({\r\n nodeId,\r\n datasetId,\r\n criteria,\r\n requestIds\r\n }) => fetchDataset(nodeId, datasetId, criteria, requestIds));\r\n };\r\n\r\n return dashboards && (\r\n \r\n }\r\n onClick={() => createDashboard(initialDashboard)}\r\n >\r\n {t(\"scenes.dashboardsSettings.createDashboard\")}\r\n \r\n }\r\n columns={[\r\n {\r\n field: \"title\",\r\n title: t(\"scenes.dashboardsSettings.table.columns.dashboardTitle\"),\r\n render: ({title}) => localizeI18nObj(title, defaultLanguage, languages),\r\n customFilterAndSearch: getI18nObjCustomFilterAndSearch(defaultLanguage, languages)\r\n }\r\n ]}\r\n data={dashboards}\r\n actions={[\r\n {\r\n icon: VisibilityIcon,\r\n tooltip: t(\"scenes.dashboardsSettings.table.actions.viewDashboard\"),\r\n onClick: (_, {dashboardId}) => window.location.href.toLowerCase().includes(`/dashboards/${dashboardId}`)\r\n ? onDashboardsClose()\r\n : goToDashboard(dashboardId)\r\n },\r\n {\r\n icon: EditIcon,\r\n tooltip: t(\"scenes.dashboardsSettings.table.actions.editDashboard\"),\r\n onClick: (_, {dashboardId}) => {\r\n updateDashboard(dashboardId);\r\n setUpdateDashboardId(dashboardId);\r\n }\r\n },\r\n {\r\n icon: DeleteIcon,\r\n tooltip: t(\"scenes.dashboardsSettings.table.actions.deleteDashboard\"),\r\n onClick: (_, {dashboardId}) => setDeleteDashboardId(dashboardId)\r\n }\r\n ]}\r\n options={{\r\n actionsColumnIndex: 1\r\n }}\r\n />\r\n\r\n \r\n setDeleteDashboardId(null)}>\r\n {t(\"scenes.dashboardsSettings.modals.deleteDashboard.title\")}\r\n \r\n \r\n {t(\"scenes.dashboardsSettings.modals.deleteDashboard.content\")}\r\n \r\n \r\n setDeleteDashboardId(null)}\r\n >\r\n {t(\"commons.confirm.cancel\")}\r\n \r\n {\r\n deleteDashboard(deleteDashboardId);\r\n setDeleteDashboardId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n \r\n \r\n\r\n {\r\n hideDashboard();\r\n setUpdateDashboardId(null);\r\n }}\r\n >\r\n {\r\n hideDashboard();\r\n setUpdateDashboardId(null);\r\n }}\r\n >\r\n {updateDashboardId\r\n ? t(\"scenes.dashboardsSettings.modals.updateDashboard.title\")\r\n : t(\"scenes.dashboardsSettings.modals.createDashboard.title\")\r\n }\r\n \r\n \r\n \r\n \r\n \r\n {\r\n hideDashboard();\r\n setUpdateDashboardId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.close\")}\r\n \r\n setPreviewVisibility(true)}\r\n >\r\n {t(\"commons.confirm.preview\")}\r\n \r\n submitDashboardUpdate(updateDashboardId, dashboard, dashboardConfig)\r\n : () => {\r\n submitDashboardCreate(dashboard, dashboardConfig);\r\n hideDashboard();\r\n }\r\n }\r\n disabled={dashboard && !validateI18nObj(dashboard.title)}\r\n >\r\n {t(\"commons.confirm.save\")}\r\n \r\n \r\n \r\n\r\n setPreviewVisibility(false)}\r\n className={classes.previewDialog}\r\n >\r\n setPreviewVisibility(false)}>\r\n {t(\"components.dashboardBuilder.modals.preview.title\")}\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {\r\n setPreviewVisibility(false);\r\n clearDatasets();\r\n }}\r\n >\r\n {t(\"commons.confirm.close\")}\r\n \r\n \r\n \r\n\r\n \r\n );\r\n};\r\n\r\nexport default compose(withStyles(styles), connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(UserDashboardsSettingsForm);","import React, {Fragment, useRef, useState} from 'react';\r\nimport AccountCircleIcon from '@material-ui/icons/AccountCircle';\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {connect} from \"react-redux\";\r\nimport {\r\n clearUser,\r\n fetchUser,\r\n hideUserChangePasswordForm,\r\n hideUserEditUserModal,\r\n hideUserLoginForm,\r\n hideUserRegisterModal,\r\n showUserChangePasswordForm,\r\n showUserEditUserModal,\r\n showUserLoginForm,\r\n showUserRegisterModal\r\n} from \"../../state/user/userActions\";\r\nimport UserLoginDialog from \"../user-login-dialog\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport UserSettingsForm from \"../settings-select/users-settings-form/user-settings-form\";\r\nimport SettingsDialog from \"../settings-dialog\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport ButtonSelect from \"../button-select\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {compose} from \"redux\";\r\nimport UserChangePasswordForm from \"./user-change-password-form\";\r\nimport EditUserForm from \"./edit-user-form\";\r\nimport {canDisplayUserViews, canManagePersonalDashboards} from \"../../utils/user\";\r\nimport UserViewsSettingsForm from \"../settings-select/user-views-settings-form\";\r\nimport UserDashboardsSettingsForm from \"../settings-select/user-dashboards-settings-form\";\r\n\r\nconst mapStateToProps = state => ({\r\n user: state.user\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n onLogin: (email, password) => dispatch(fetchUser(email, password)),\r\n onLogout: () => dispatch(clearUser()),\r\n onLoginFormShow: () => dispatch(showUserLoginForm()),\r\n onLoginFormHide: () => dispatch(hideUserLoginForm()),\r\n onChangePasswordShow: () => dispatch(showUserChangePasswordForm()),\r\n onChangePasswordHide: () => dispatch(hideUserChangePasswordForm()),\r\n onRegisterModalShow: () => dispatch(showUserRegisterModal()),\r\n onRegisterModalHide: () => dispatch(hideUserRegisterModal()),\r\n onEditModalShow: () => dispatch(showUserEditUserModal()),\r\n onEditModalHide: () => dispatch(hideUserEditUserModal())\r\n});\r\n\r\nconst styles = () => ({\r\n email: {\r\n cursor: \"initial\",\r\n color: \"gray\"\r\n },\r\n divider: {\r\n width: \"100%\",\r\n color: \"gray\",\r\n fontStyle: \"italic\",\r\n fontSize: 14\r\n },\r\n});\r\n\r\nconst UserSelect = ({\r\n classes,\r\n user,\r\n onLogin,\r\n onLogout,\r\n onLoginFormShow,\r\n onLoginFormHide,\r\n onChangePasswordShow,\r\n onChangePasswordHide,\r\n onRegisterModalShow,\r\n onRegisterModalHide,\r\n onEditModalShow,\r\n onEditModalHide,\r\n nodes,\r\n disabled\r\n }) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n const registerFormRef = useRef();\r\n const changePasswordFormRef = useRef();\r\n const editUserFormRef = useRef();\r\n const viewsSettigsRef = useRef();\r\n const dashboardsSettingsRef = useRef();\r\n\r\n const [isViewsOpen, setIsViewsOpen] = useState(false);\r\n const [isDashboardsOpen, setIsDashboardsOpen] = useState(false);\r\n\r\n const onDashboardsOpen = () => {\r\n setIsDashboardsOpen(true);\r\n };\r\n\r\n const onDashboardsClose = () => {\r\n setIsDashboardsOpen(false);\r\n };\r\n\r\n const onViewsOpen = () => {\r\n setIsViewsOpen(true);\r\n };\r\n\r\n const onViewsClose = () => {\r\n setIsViewsOpen(false);\r\n };\r\n\r\n const unselectableIndexes = [0];\r\n let count = 0;\r\n if (canDisplayUserViews(user)) {\r\n count++;\r\n }\r\n if (canManagePersonalDashboards(user)) {\r\n count++;\r\n }\r\n if (count === 1) {\r\n unselectableIndexes.push(1);\r\n unselectableIndexes.push(3);\r\n } else if (count === 2) {\r\n unselectableIndexes.push(1);\r\n unselectableIndexes.push(4);\r\n }\r\n\r\n return (\r\n \r\n {user.isAuthenticated\r\n ? (\r\n \r\n }\r\n ariaLabel={t(\"components.header.actions.user.ariaLabel\")}\r\n tooltip={t(\"components.header.actions.user.title\")}\r\n unselectableIndexes={unselectableIndexes}\r\n >\r\n
    \r\n {user.email}\r\n
    \r\n {(canDisplayUserViews(user) || canManagePersonalDashboards(user)) && (\r\n
    \r\n {t(\"components.userSelect.userObjects\")}\r\n
    )}\r\n {canDisplayUserViews(user) && (\r\n
    \r\n {t(\"components.userSelect.views\")}\r\n
    \r\n )}\r\n {canManagePersonalDashboards(user) && (\r\n
    \r\n {t(\"components.userSelect.dashboards\")}\r\n
    \r\n )}\r\n
    \r\n {t(\"components.userSelect.accountSettings\")}\r\n
    \r\n
    onChangePasswordShow()}>\r\n {t(\"components.userSelect.changePassword\")}\r\n
    \r\n
    onEditModalShow()}>\r\n {t(\"components.userSelect.editUser\")}\r\n
    \r\n
    \r\n {t(\"components.userSelect.logout\")}\r\n
    \r\n \r\n
    \r\n )\r\n : (\r\n \r\n )\r\n }\r\n\r\n onLogin(email, password)}\r\n onRegister={() => onRegisterModalShow()}\r\n onHide={onLoginFormHide}\r\n alert={user.message}\r\n />\r\n\r\n {\r\n if (registerFormRef.current) {\r\n registerFormRef.current.cancel(() => {\r\n onRegisterModalHide();\r\n });\r\n } else {\r\n onRegisterModalHide();\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (registerFormRef.current) {\r\n registerFormRef.current.submit(() => {\r\n });\r\n }\r\n }}\r\n hasSubmit\r\n customSubmitLabel={t(\"components.userSelect.registerModal.submit.label\")}\r\n >\r\n \r\n \r\n\r\n {\r\n if (editUserFormRef.current) {\r\n editUserFormRef.current.cancel(() => {\r\n onEditModalHide();\r\n });\r\n } else {\r\n onEditModalHide();\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (editUserFormRef.current) {\r\n editUserFormRef.current.submit(() => {\r\n });\r\n }\r\n }}\r\n hasSubmit\r\n noMinHeight\r\n noFullScreen\r\n >\r\n \r\n \r\n\r\n {\r\n if (changePasswordFormRef.current) {\r\n changePasswordFormRef.current.cancel(() => {\r\n onChangePasswordHide();\r\n });\r\n } else {\r\n onChangePasswordHide();\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (changePasswordFormRef.current) {\r\n changePasswordFormRef.current.submit(() => {\r\n });\r\n }\r\n }}\r\n hasSubmit\r\n noMinHeight\r\n noFullScreen\r\n >\r\n \r\n \r\n\r\n {\r\n if (viewsSettigsRef.current) {\r\n viewsSettigsRef.current.cancel(() => {\r\n onViewsClose();\r\n });\r\n } else {\r\n onViewsClose();\r\n }\r\n }}\r\n >\r\n \r\n \r\n\r\n {\r\n if (dashboardsSettingsRef.current) {\r\n dashboardsSettingsRef.current.cancel(() => {\r\n onDashboardsClose();\r\n });\r\n } else {\r\n onDashboardsClose();\r\n }\r\n }}\r\n >\r\n \r\n \r\n\r\n
    \r\n );\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps, mapDispatchToProps)\r\n)(UserSelect);","import React, {Component, Fragment} from 'react';\r\nimport TreeView from '@material-ui/lab/TreeView';\r\nimport TreeItem from '@material-ui/lab/TreeItem';\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\r\nimport ChevronRightIcon from '@material-ui/icons/ChevronRight';\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {getDatasetsInternalUrl} from \"../../links\";\r\nimport FolderOpenIcon from '@material-ui/icons/FolderOpen';\r\nimport ListIcon from '@material-ui/icons/List';\r\nimport FolderIcon from '@material-ui/icons/Folder';\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {compose} from \"redux\";\r\nimport CatalogInfoButton from \"../catalog-info-button\";\r\nimport CatalogMetadataButton from \"../catalog-metadata-button\";\r\nimport CustomLink from \"../custom-link\";\r\n\r\nconst styles = () => ({\r\n node: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: 8\r\n },\r\n folderIcon: {\r\n marginRight: 8\r\n },\r\n nodeLabel: {},\r\n nodeIcon: {\r\n marginLeft: 8,\r\n \"& button\": {\r\n padding: 4\r\n }\r\n },\r\n nodeRoot: {\r\n \"&:focus > .MuiTreeItem-content .MuiTreeItem-label\": {\r\n outline: \"-webkit-focus-ring-color auto 1px\",\r\n outlineOffset: -1\r\n }\r\n },\r\n labelSelected: {\r\n background: \"rgba(0, 41, 90, 0.2) !important\"\r\n }\r\n});\r\n\r\nconst getNodeId = (catId, prevPath) => (prevPath || []).length > 0\r\n ? prevPath.join(\"+\") + \"+\" + catId\r\n : catId;\r\n\r\nconst getSelectedNodeIds = categoryPath => {\r\n const ret = [];\r\n\r\n categoryPath.forEach((category, idx) => {\r\n ret.push(getNodeId(category, categoryPath.slice(0, idx)));\r\n });\r\n\r\n return ret\r\n}\r\n\r\nclass CategoriesTree extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n this.state = {\r\n expanded: getSelectedNodeIds(props.selectedCategoryPath || []),\r\n selected: getSelectedNodeIds(props.selectedCategoryPath || [])\r\n };\r\n this.onExpand = this.onExpand.bind(this);\r\n }\r\n\r\n onExpand = expanded => this.setState({expanded});\r\n\r\n render() {\r\n\r\n const {\r\n classes,\r\n node,\r\n catalog,\r\n onClose,\r\n t\r\n } = this.props;\r\n\r\n const {\r\n expanded,\r\n selected\r\n } = this.state;\r\n\r\n const getTreeItems = (tree, prevPath) =>\r\n tree.map((cat, i) => {\r\n return (\r\n \r\n {(expanded.includes(getNodeId(cat.id, prevPath)))\r\n ? \r\n : \r\n }\r\n \r\n {cat.label}\r\n \r\n {cat.description && (\r\n
    \r\n \r\n
    \r\n )}\r\n {cat.metadataUrl && (\r\n
    \r\n \r\n
    \r\n )}\r\n \r\n }\r\n /* TODO: inefficente */\r\n classes={{\r\n root: classes.nodeRoot,\r\n label: selected.includes(getNodeId(cat.id, prevPath)) ? classes.labelSelected : null\r\n }}\r\n tabIndex={0}\r\n >\r\n {((cat.datasetIdentifiers && cat.datasetIdentifiers.length > 0) || (cat.childrenCategories && cat.childrenCategories.length > 0)) && (\r\n \r\n {(cat.datasetIdentifiers && cat.datasetIdentifiers.length > 0) && (\r\n {t(\"components.categoriesTree.goToData\", {datasetsCount: cat.datasetIdentifiers.length})}}\r\n icon={}\r\n onClick={onClose}\r\n />\r\n }\r\n />\r\n )}\r\n {cat.childrenCategories && cat.childrenCategories.length > 0 && (\r\n getTreeItems(cat.childrenCategories, [...prevPath, cat.id])\r\n )}\r\n \r\n )}\r\n \r\n )\r\n });\r\n\r\n const getCategorySchemeTree = ({id, label, categories}) =>\r\n }\r\n defaultExpandIcon={}\r\n expanded={expanded}\r\n onNodeToggle={(_, nodeIds) => this.onExpand(nodeIds)}\r\n key={id}\r\n >\r\n {getTreeItems([{id, label, childrenCategories: categories}], [])}\r\n ;\r\n\r\n return (\r\n \r\n {catalog.categoryGroups.length > 0 && (\r\n catalog.categoryGroups.length > 1\r\n ? (\r\n \r\n {catalog.categoryGroups.map(getCategorySchemeTree)}\r\n \r\n )\r\n : (\r\n }\r\n defaultExpandIcon={}\r\n expanded={expanded}\r\n onNodeToggle={(_, nodeIds) => this.onExpand(nodeIds)}\r\n >\r\n {getTreeItems(catalog.categoryGroups[0].categories, [])}\r\n \r\n )\r\n )}\r\n {catalog.uncategorizedDatasets && catalog.uncategorizedDatasets.length > 0 && (\r\n }\r\n defaultExpandIcon={}\r\n expanded={expanded}\r\n onNodeToggle={(_, nodeIds) => this.onExpand(nodeIds)}\r\n >\r\n \r\n {expanded.includes(\"uncategorized\")\r\n ? \r\n : \r\n }\r\n \r\n {t(\"commons.catalog.uncategorized\")}\r\n \r\n \r\n }\r\n /* TODO: inefficente */\r\n classes={{\r\n root: classes.nodeRoot,\r\n label: selected.includes(\"uncategorized\") ? classes.labelSelected : null\r\n }}\r\n >\r\n {t(\"components.categoriesTree.goToData\", {datasetsCount: catalog.uncategorizedDatasets.length})}}\r\n icon={}\r\n onClick={onClose}\r\n />\r\n }\r\n />\r\n \r\n \r\n )}\r\n \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(CategoriesTree);","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n getAddHubDashboardUrl,\r\n getHubConfigGetUrl,\r\n getHubConfigPutUrl,\r\n getHubDashboardsUrl,\r\n getOrderHubDashboardsUrl,\r\n getRemoveHubDashboardUrl,\r\n getUserDashboardsUrl\r\n} from \"../../serverApi/urls\";\r\n\r\nexport const HUB_CONFIG_FETCH = \"hubConfig/fetch\";\r\nexport const HUB_CONFIG_SEND = \"hubConfig/send\";\r\nexport const HUB_CONFIG_CLEAR = \"hubConfig/clear\";\r\nexport const HUB_CONFIG_DASHBOARDS_FETCH = \"hubConfig/dashboards/fetch\";\r\nexport const HUB_CONFIG_DASHBOARDS_FETCH_ALL = \"hubConfig/dashboards/fetchAll\";\r\nexport const HUB_CONFIG_DASHBOARDS_DASHBOARD_ADD = \"hubConfig/dashboards/addDashboard\";\r\nexport const HUB_CONFIG_DASHBOARDS_DASHBOARD_REMOVE = \"hubConfig/dashboards/removeDashboard\";\r\nexport const HUB_CONFIG_DASHBOARDS_ORDERS_SEND = \"hubConfig/dashboards/sendOrders\";\r\nexport const HUB_CONFIG_DASHBOARDS_CLEAR = \"hubConfig/dashboards/clear\";\r\nexport const HUB_CONFIG_DASHBOARDS_CLEAR_ALL = \"hubConfig/dashboards/clearAll\";\r\nexport const HUB_CONFIG_CLOSE = \"hubConfig/close\";\r\n\r\nexport const fetchHubConfig = () => initRequest(\r\n HUB_CONFIG_FETCH,\r\n getHubConfigGetUrl(),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.appSettings.messages.fetchConfig.start\")\r\n })\r\n);\r\n\r\nexport const sendHubConfig = (config: any) => initRequest(\r\n HUB_CONFIG_SEND,\r\n getHubConfigPutUrl(),\r\n RequestMethod.PUT,\r\n config,\r\n t => ({\r\n onStart: t(\"scenes.appSettings.messages.sendConfig.start\")\r\n })\r\n);\r\n\r\nexport const clearHubConfig = () => ({\r\n type: HUB_CONFIG_CLEAR\r\n});\r\n\r\nexport const fetchHubConfigDashboards = () => initRequest(\r\n HUB_CONFIG_DASHBOARDS_FETCH,\r\n getHubDashboardsUrl(),\r\n RequestMethod.GET,\r\n null,\r\n t => ({\r\n onStart: t(\"scenes.appSettings.messages.fetchDashboards.start\")\r\n })\r\n);\r\n\r\nexport const fetchAllHubConfigDashboards = () => initRequest(\r\n HUB_CONFIG_DASHBOARDS_FETCH_ALL,\r\n getUserDashboardsUrl(),\r\n RequestMethod.GET,\r\n null,\r\n t => ({\r\n onStart: t(\"scenes.appSettings.messages.fetchAllDashboards.start\")\r\n })\r\n);\r\n\r\nexport const addHubConfigDashboardsDashboard = (dashboardId: number) => initRequest(\r\n HUB_CONFIG_DASHBOARDS_DASHBOARD_ADD,\r\n getAddHubDashboardUrl(dashboardId),\r\n RequestMethod.POST,\r\n null,\r\n t => ({\r\n onStart: t(\"scenes.appSettings.messages.addDashboard.start\")\r\n })\r\n);\r\n\r\nexport const removeHubConfigDashboardsDashboard = (dashboardId: number) => initRequest(\r\n HUB_CONFIG_DASHBOARDS_DASHBOARD_REMOVE,\r\n getRemoveHubDashboardUrl(dashboardId),\r\n RequestMethod.DELETE,\r\n null,\r\n t => ({\r\n onStart:t(\"scenes.appSettings.messages.removeDashboard.start\")\r\n })\r\n);\r\n\r\nexport const sendHubConfigDashboardsOrders = (orderedDashboardsIds: number[]) => initRequest(\r\n HUB_CONFIG_DASHBOARDS_ORDERS_SEND,\r\n getOrderHubDashboardsUrl(),\r\n RequestMethod.POST,\r\n orderedDashboardsIds,\r\n t => ({\r\n onStart: t(\"scenes.appSettings.messages.sendDashboardsOrders.start\")\r\n })\r\n)\r\n\r\nexport const clearHubConfigDashboards = () => ({\r\n type: HUB_CONFIG_DASHBOARDS_CLEAR\r\n});\r\n\r\nexport const clearAllHubConfigDashboards = () => ({\r\n type: HUB_CONFIG_DASHBOARDS_CLEAR_ALL\r\n});\r\n\r\nexport const closeHubConfig = () => ({\r\n type: HUB_CONFIG_CLOSE\r\n});","import React, {Fragment, useState} from 'react';\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport CancelIcon from \"@material-ui/icons/Cancel\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport PublishIcon from '@material-ui/icons/Publish';\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport {connect} from \"react-redux\";\r\nimport {getFileUploadUrl} from \"../../serverApi/urls\";\r\nimport {compose} from \"redux\";\r\nimport {addSpinnerMessage, markSpinnerMessage} from \"../../state/spinner/spinnerActions\";\r\nimport {useTranslation} from \"react-i18next\";\r\n\r\nconst styles = theme => ({\r\n startAdornment: {\r\n marginRight: theme.spacing(2)\r\n },\r\n fileInput: {\r\n display: \"none\"\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n baseURL: state.config.baseURL,\r\n user: state.user\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n addSpinnerMessage: (uuid, message) => dispatch(addSpinnerMessage(uuid, message)),\r\n markSpinnerMessage: (uuid, isError) => dispatch(markSpinnerMessage(uuid, isError))\r\n});\r\n\r\nconst FileInput = ({label, value, onChange, classes, baseURL, error, helperText, required, addSpinnerMessage, markSpinnerMessage, user}) => {\r\n\r\n const [id] = useState(uuidv4());\r\n const [fileName, setFileName] = useState(value?.substring(value.lastIndexOf('/') + 1) || '');\r\n const {t} = useTranslation();\r\n\r\n return (\r\n \r\n {\r\n const file = e.target.files[0];\r\n\r\n let fileFormData = new FormData();\r\n fileFormData.append('files', file);\r\n\r\n const uuid = uuidv4();\r\n\r\n addSpinnerMessage(uuid, t(\"components.fileInput.messages.upload.start\"));\r\n\r\n fetch(baseURL + getFileUploadUrl(), {\r\n method: 'POST',\r\n body: fileFormData,\r\n headers: {\r\n \"Authorization\": user.token ? `bearer ${user.token}` : undefined\r\n },\r\n credentials: 'include'\r\n })\r\n .then(res => res.json())\r\n .then(res => {\r\n markSpinnerMessage(uuid);\r\n const filePath = res[0];\r\n onChange(filePath);\r\n setFileName(filePath.substring(filePath.lastIndexOf('/') + 1));\r\n })\r\n .catch(() => {\r\n markSpinnerMessage(uuid, true);\r\n window.error.show(t(\"components.fileInput.messages.upload.error\"));\r\n });\r\n }}\r\n />\r\n \r\n \r\n \r\n ),\r\n endAdornment:\r\n value && (\r\n \r\n {\r\n setFileName('');\r\n onChange('');\r\n }}\r\n >\r\n \r\n \r\n \r\n ),\r\n }}\r\n error={error}\r\n required={required}\r\n helperText={helperText}\r\n />\r\n \r\n );\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps, mapDispatchToProps)\r\n)(FileInput);","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport {connect} from \"react-redux\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport AddIcon from \"@material-ui/icons/Add\";\r\nimport {compose} from \"redux\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport ArrowDropUpIcon from \"@material-ui/icons/ArrowDropUp\";\r\nimport ArrowDropDownIcon from \"@material-ui/icons/ArrowDropDown\";\r\nimport DeleteIcon from \"@material-ui/icons/Delete\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../custom-material-table\";\r\nimport {getI18nObjCustomFilterAndSearch, localizeI18nObj} from \"../../utils/i18n\";\r\nimport \"./style.css\";\r\nimport FullscreenDialog from \"../fullscreen-dialog\";\r\n\r\nconst styles = theme => ({\r\n tableToolbar: {\r\n marginBottom: theme.spacing(1)\r\n },\r\n buttonAction: {\r\n ...theme.typography.button\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n languages: state.app.languages,\r\n defaultLanguage: state.app.language\r\n});\r\n\r\nconst DashboardsManager = ({\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n dashboards,\r\n allDashboards,\r\n fetchDashboards,\r\n fetchAllDashboards,\r\n addDashboard,\r\n removeDashboard,\r\n sendDashboardsOrders,\r\n clearDashboards,\r\n clearAllDashboards\r\n }, ref) => {\r\n\r\n const [needFetch, setNeedFetch] = useState(true);\r\n const {t} = useTranslation();\r\n\r\n useEffect(() => {\r\n if (needFetch) {\r\n setNeedFetch(false);\r\n fetchDashboards();\r\n }\r\n }, [dashboards, needFetch, setNeedFetch, fetchDashboards]);\r\n\r\n useImperativeHandle(ref, () => ({\r\n destroy(f) {\r\n clearDashboards();\r\n if (f) {\r\n f();\r\n }\r\n }\r\n }));\r\n\r\n const orderedDashboardsIds = (dashboards || []).map(({dashboardId}) => dashboardId);\r\n\r\n const moveUp = rowIndex =>\r\n sendDashboardsOrders([\r\n ...orderedDashboardsIds.slice(0, rowIndex - 1),\r\n orderedDashboardsIds[rowIndex],\r\n orderedDashboardsIds[rowIndex - 1],\r\n ...orderedDashboardsIds.slice(rowIndex + 1)\r\n ]);\r\n\r\n const moveDown = rowIndex =>\r\n sendDashboardsOrders([\r\n ...orderedDashboardsIds.slice(0, rowIndex),\r\n orderedDashboardsIds[rowIndex + 1],\r\n orderedDashboardsIds[rowIndex],\r\n ...orderedDashboardsIds.slice(rowIndex + 2)\r\n ]);\r\n\r\n return dashboards !== null && (\r\n \r\n \r\n \r\n {t(\"components.dashboardsManager.modals.addDashboard.title\")}\r\n \r\n \r\n {allDashboards !== null && (\r\n localizeI18nObj(title, defaultLanguage, languages),\r\n customFilterAndSearch: getI18nObjCustomFilterAndSearch(defaultLanguage, languages)\r\n }\r\n ]}\r\n data={allDashboards}\r\n actions={[\r\n ({dashboardId}) => {\r\n const assigned = !!dashboards.find(dashboard => dashboard.dashboardId === dashboardId)\r\n return ({\r\n icon: AddIcon,\r\n tooltip:\r\n assigned\r\n ? t(\"components.dashboardsManager.modals.addDashboard.table.actions.addDashboard.tooltip.assigned\")\r\n : t(\"components.dashboardsManager.modals.addDashboard.table.actions.addDashboard.tooltip.notAssigned\"),\r\n onClick: (_, {dashboardId}) => addDashboard(dashboardId),\r\n disabled: assigned\r\n });\r\n }\r\n ]}\r\n options={{\r\n actionsColumnIndex: 2\r\n }}\r\n />\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n\r\n \r\n }\r\n onClick={() => fetchAllDashboards()}\r\n >\r\n {t(\"components.dashboardsManager.addDashboard\")}\r\n \r\n }\r\n columns={[\r\n {\r\n field: \"title\",\r\n title: t(\"components.dashboardsManager.table.columns.dashboardTitle\"),\r\n render: ({title}) => localizeI18nObj(title, defaultLanguage, languages),\r\n customFilterAndSearch: getI18nObjCustomFilterAndSearch(defaultLanguage, languages)\r\n }\r\n ]}\r\n data={dashboards}\r\n actions={[\r\n ({tableData}) => ({\r\n icon: ArrowDropUpIcon,\r\n tooltip: t(\"components.dashboardsManager.table.actions.dashboardOrderMoveUp\"),\r\n onClick: (_, {tableData}) => moveUp(tableData.id), // tableData.id is the rowIndex\r\n disabled: tableData.id === 0\r\n }),\r\n ({tableData}) => ({\r\n icon: ArrowDropDownIcon,\r\n tooltip: t(\"components.dashboardsManager.table.actions.dashboardOrderMoveDown\"),\r\n onClick: (_, {tableData}) => moveDown(tableData.id), // tableData.id is the rowIndex\r\n disabled: tableData.id === dashboards.length - 1\r\n }),\r\n {\r\n icon: DeleteIcon,\r\n tooltip: t(\"components.dashboardsManager.table.actions.removeDashboard\"),\r\n onClick: (_, {dashboardId}) => removeDashboard(dashboardId)\r\n }\r\n ]}\r\n options={{\r\n actionsColumnIndex: 2\r\n }}\r\n />\r\n \r\n \r\n );\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps, null, null, {forwardRef: true}),\r\n forwardRef\r\n)(DashboardsManager);","import React from \"react\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport withTheme from \"@material-ui/core/styles/withTheme\";\r\n\r\nconst InfoTooltip = ({children, theme}) => {\r\n\r\n return children\r\n ? (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n : (\r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default withTheme(InfoTooltip);","import React, {Fragment} from 'react';\r\nimport InfoTooltip from \"../info-tooltip\";\r\n\r\nconst FormLabelWithTooltip = ({children, tooltip, tooltipOnRight}) => {\r\n\r\n const Tooltip = () =>\r\n \r\n \r\n {tooltip}\r\n \r\n
    ;\r\n\r\n return (\r\n \r\n {!tooltipOnRight && }\r\n \r\n {children}\r\n \r\n {tooltipOnRight && }\r\n \r\n );\r\n};\r\n\r\nexport default FormLabelWithTooltip;","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport {useForm} from 'react-hook-form'\r\nimport {compose} from \"redux\";\r\nimport {\r\n addHubConfigDashboardsDashboard,\r\n clearAllHubConfigDashboards,\r\n clearHubConfig,\r\n clearHubConfigDashboards,\r\n closeHubConfig,\r\n fetchAllHubConfigDashboards,\r\n fetchHubConfig,\r\n fetchHubConfigDashboards,\r\n removeHubConfigDashboardsDashboard,\r\n sendHubConfig,\r\n sendHubConfigDashboardsOrders\r\n} from \"../../../state/hubConfig/hubConfigActions\";\r\nimport {connect} from \"react-redux\";\r\nimport FileInput from \"../../file-input\";\r\nimport DashboardsManager from \"../../dashboards-manager\";\r\nimport {canManageAppDashboards} from \"../../../utils/user\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport I18nTextField from \"../../i18n-text-field\";\r\nimport I18nHtmlEditor from \"../../i18n-html-editor\";\r\nimport Autocomplete from \"@material-ui/lab/Autocomplete\";\r\nimport Chip from \"@material-ui/core/Chip\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport {getBaseMapOptions} from \"../../map\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport SanitizedHTML from \"../../sanitized-html\";\r\nimport HtmlEditor from \"../../html-editor\";\r\nimport {isValidIntegerInInclusiveRange} from \"../../../utils/validator\";\r\nimport FormLabelWithTooltip from \"../../form-label-with-tooltip\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: \"100%\"\r\n },\r\n field: {\r\n marginTop: theme.spacing(3)\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 56px)\",\r\n marginTop: 8,\r\n padding: \"0 4px\"\r\n },\r\n disclaimerLabel: {\r\n fontSize: \"1rem\",\r\n marginTop: theme.spacing(3)\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: theme.spacing(2)\r\n },\r\n paperHeader: {\r\n padding: 0\r\n },\r\n mapCopyrightLabel: {\r\n fontSize: \"1rem\",\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.hubConfig.hub,\r\n user: state.user,\r\n dashboards: state.hubConfig.hubDashboards,\r\n allDashboards: state.hubConfig.allDashboards\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n clearConfig: () => dispatch(clearHubConfig()),\r\n fetchConfig: () => dispatch(fetchHubConfig()),\r\n sendConfig: config => dispatch(sendHubConfig(config)),\r\n fetchDashboards: () => dispatch(fetchHubConfigDashboards()),\r\n fetchAllDashboards: () => dispatch(fetchAllHubConfigDashboards()),\r\n clearDashboards: () => dispatch(clearHubConfigDashboards()),\r\n clearAllDashboards: () => dispatch(clearAllHubConfigDashboards()),\r\n addDashboard: dashboardId => dispatch(addHubConfigDashboardsDashboard(dashboardId)),\r\n removeDashboard: dashboardId => dispatch(removeHubConfigDashboardsDashboard(dashboardId)),\r\n sendDashboardsOrders: orderedDashboarIds => dispatch(sendHubConfigDashboardsOrders(orderedDashboarIds)),\r\n onClose: () => dispatch(closeHubConfig())\r\n});\r\n\r\nconst Form = compose(withStyles(styles), forwardRef)(({\r\n classes,\r\n config,\r\n onSubmit,\r\n onCancel,\r\n user,\r\n dashboards,\r\n allDashboards,\r\n fetchDashboards,\r\n fetchAllDashboards,\r\n clearDashboards,\r\n clearAllDashboards,\r\n addDashboard,\r\n removeDashboard,\r\n sendDashboardsOrders\r\n }, ref) => {\r\n\r\n const [tab, setTab] = useState(\"general\");\r\n const dashboardsManagerRef = React.createRef();\r\n const {t} = useTranslation();\r\n\r\n const [isCopyrightVisible, setCopyrightVisibility] = useState(false);\r\n const [tmpCopyright, setTmpCopyright] = useState(null);\r\n\r\n const handleCopyrightOpen = () => {\r\n setCopyrightVisibility(true);\r\n setTmpCopyright(watch('mapCopyright'));\r\n };\r\n\r\n const handleCopyrightClose = () => {\r\n setCopyrightVisibility(false);\r\n setTmpCopyright(null);\r\n };\r\n\r\n const handleCopyrightSubmit = () => {\r\n setCopyrightVisibility(false);\r\n setValue('mapCopyright', tmpCopyright);\r\n setTmpCopyright(null);\r\n };\r\n\r\n const configExtras = config.extras ? JSON.parse(config.extras) : {};\r\n\r\n const {register, errors, handleSubmit, watch, setValue} = useForm({\r\n defaultValues: {\r\n ...config,\r\n pageSize: configExtras.PageSize,\r\n baseMap: configExtras.BaseMap,\r\n mapCopyright: configExtras.MapCopyright,\r\n treePageSize: configExtras.TreePageSize,\r\n headerLogoSmallURL: configExtras.HeaderLogoSmallURL,\r\n headerLogoAlt: configExtras.HeaderLogoAlt,\r\n headerLogoHref: configExtras.HeaderLogoHref,\r\n headerLogoTitle: configExtras.headerLogoTitle\r\n }\r\n });\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n handleSubmit(val => {\r\n const data = {\r\n ...config,\r\n ...val,\r\n pageSize: undefined,\r\n baseMap: undefined,\r\n mapCopyright: undefined,\r\n treePageSize: undefined,\r\n headerLogoSmallURL: undefined,\r\n headerLogoAlt: undefined,\r\n headerLogoHref: undefined,\r\n headerLogoTitle: undefined\r\n };\r\n\r\n data.extras = JSON.stringify({\r\n ...JSON.parse(data.extras || \"{}\"),\r\n PageSize: val.pageSize,\r\n BaseMap: val.baseMap,\r\n MapCopyright: val.mapCopyright,\r\n TreePageSize: val.treePageSize,\r\n HeaderLogoSmallURL: val.headerLogoSmallURL,\r\n HeaderLogoAlt: val.headerLogoAlt,\r\n HeaderLogoHref: val.headerLogoHref,\r\n headerLogoTitle: val.headerLogoTitle\r\n });\r\n\r\n onSubmit(data);\r\n f(data);\r\n if (dashboardsManagerRef.current) {\r\n dashboardsManagerRef.current.destroy();\r\n }\r\n })();\r\n },\r\n cancel(f) {\r\n onCancel();\r\n f();\r\n if (dashboardsManagerRef.current) {\r\n dashboardsManagerRef.current.destroy();\r\n }\r\n }\r\n }));\r\n\r\n /* custom register */\r\n useEffect(() => {\r\n register({\r\n name: 'title'\r\n });\r\n register({\r\n name: 'slogan'\r\n });\r\n register({\r\n name: 'supportedLanguages'\r\n }, {\r\n validate: val => val.length > 0 || t(\"commons.validation.required\")\r\n });\r\n register({\r\n name: 'defaultLanguage'\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({\r\n name: 'maxObservationsAfterCriteria'\r\n }, {\r\n required: t(\"commons.validation.required\"),\r\n min: {\r\n value: 1,\r\n message: t(\"commons.validation.positiveInteger\")\r\n }\r\n })\r\n register({\r\n name: \"maxCells\"\r\n }, {\r\n required: t(\"commons.validation.required\"),\r\n min: {\r\n value: 1,\r\n message: t(\"commons.validation.positiveInteger\")\r\n }\r\n })\r\n register({\r\n name: 'backgroundMediaURL'\r\n });\r\n register({\r\n name: 'logoURL'\r\n });\r\n register({\r\n name: 'headerLogoURL'\r\n });\r\n register({\r\n name: 'headerLogoSmallURL'\r\n });\r\n register({\r\n name: 'headerLogoAlt'\r\n });\r\n register({\r\n name: 'headerLogoHref'\r\n });\r\n register({\r\n name: 'headerLogoTitle'\r\n });\r\n register({\r\n name: 'description'\r\n });\r\n register({\r\n name: 'pageSize'\r\n }, {\r\n validate: val => !val || val > 0 || t(\"commons.validation.positiveInteger\")\r\n });\r\n register({\r\n name: \"disclaimer\"\r\n });\r\n register({\r\n name: \"baseMap\"\r\n });\r\n register({\r\n name: \"mapCopyright\"\r\n });\r\n register({\r\n name: \"treePageSize\"\r\n }, {\r\n validate: val => !val || (isValidIntegerInInclusiveRange(val, 1) || t(\"commons.validation.positiveInteger\"))\r\n });\r\n }, [register, t]);\r\n\r\n const defaultLanguage = watch('defaultLanguage');\r\n const supportedLanguages = watch('supportedLanguages');\r\n\r\n return (\r\n \r\n \r\n {\r\n setTab(tab)\r\n }}\r\n >\r\n \r\n \r\n \r\n {canManageAppDashboards(user) && ()}\r\n \r\n \r\n
    \r\n {tab === \"general\" && (\r\n \r\n \r\n setValue('title', value)}\r\n />\r\n \r\n \r\n setValue('slogan', value)}\r\n />\r\n \r\n \r\n value.map((option, index) => (\r\n \r\n ))\r\n }\r\n required\r\n onChange={(e, val) => {\r\n setValue('supportedLanguages', val);\r\n if (defaultLanguage && !val.includes(defaultLanguage)) {\r\n setValue('defaultLanguage', \"\");\r\n }\r\n }}\r\n renderInput={params => (\r\n \r\n \r\n {t(\"scenes.appSettings.fields.supportedLanguages.helper.text\")}\r\n \r\n {t(\"scenes.appSettings.fields.supportedLanguages.helper.linkText\")}\r\n \r\n \r\n )}\r\n />\r\n \r\n )}\r\n />\r\n \r\n setValue('defaultLanguage', e.target.value)}\r\n value={watch(\"defaultLanguage\") || ''}\r\n error={!!errors.defaultLanguage}\r\n helperText={errors.defaultLanguage?.message || t(\"scenes.nodeSettings.fields.defaultLanguage.helper\")}\r\n variant=\"outlined\"\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n {supportedLanguages.map((val, index) =>\r\n {val}\r\n )}\r\n \r\n \r\n \r\n setValue('maxObservationsAfterCriteria', target.value)}\r\n />\r\n \r\n \r\n setValue('maxCells', target.value)}\r\n />\r\n \r\n \r\n setValue('treePageSize', target.value)}\r\n />\r\n \r\n {/*\r\n setValue('pageSize', Number(target.value))}\r\n />\r\n */}\r\n \r\n setValue('backgroundMediaURL', value)}\r\n />\r\n \r\n \r\n setValue('logoURL', value)}\r\n />\r\n \r\n \r\n setValue('headerLogoURL', value)}\r\n />\r\n \r\n \r\n setValue('headerLogoSmallURL', value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.appSettings.fields.headerLogoAlt.label\")}\r\n \r\n }\r\n error={!!errors.headerLogoAlt}\r\n helperText={errors.headerLogoAlt?.message}\r\n variant=\"outlined\"\r\n value={watch('headerLogoAlt') || {}}\r\n onChange={value => setValue('headerLogoAlt', value)}\r\n />\r\n \r\n \r\n setValue('headerLogoHref', target.value)}\r\n />\r\n \r\n \r\n setValue('headerLogoTitle', value)}\r\n />\r\n \r\n \r\n )}\r\n {tab === \"infos\" && (\r\n setValue('description', val)}\r\n />\r\n )}\r\n {tab === \"users\" && (\r\n \r\n {/*\r\n value.map((option, index) => (\r\n \r\n ))\r\n }\r\n required\r\n onChange={(e, val) => setValue('userTypes', val)}\r\n renderInput={params => (\r\n \r\n \r\n \r\n )}\r\n />*/}\r\n
    \r\n {t(\"scenes.appSettings.fields.disclaimer.label\")}:\r\n
    \r\n setValue('disclaimer', val)}\r\n />\r\n
    \r\n )}\r\n {canManageAppDashboards(user) && tab === \"dashboards\" && (\r\n \r\n )}\r\n {tab === \"map\" && (\r\n \r\n \r\n setValue('baseMap', e.target.value)}\r\n value={watch(\"baseMap\") || ''}\r\n error={!!errors.baseMap}\r\n variant=\"outlined\"\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n {getBaseMapOptions(t).map(({value, label}, idx) =>\r\n {label}\r\n )}\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n {t(\"scenes.appSettings.fields.mapCopyright.label\")}:\r\n
    \r\n
    \r\n \r\n \r\n \r\n {(watch('mapCopyright') || \"\").length > 0\r\n ? (\r\n \r\n )\r\n : {t(\"scenes.appSettings.fields.mapCopyright.noCopyright\")}\r\n }\r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n )}\r\n
    \r\n
    \r\n \r\n \r\n setTmpCopyright(val)}\r\n minimalToolbar\r\n />\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n );\r\n});\r\n\r\nconst AppSettingsForm = ({\r\n config,\r\n fetchConfig,\r\n sendConfig,\r\n clearConfig,\r\n user,\r\n dashboards,\r\n allDashboards,\r\n fetchDashboards,\r\n fetchAllDashboards,\r\n clearDashboards,\r\n clearAllDashboards,\r\n addDashboard,\r\n removeDashboard,\r\n sendDashboardsOrders,\r\n onClose\r\n }, ref) => {\r\n\r\n const [needConfig, setNeedConfig] = useState(true);\r\n\r\n useEffect(() => {\r\n\r\n if (needConfig) {\r\n setNeedConfig(false);\r\n fetchConfig();\r\n }\r\n }, [config, needConfig, setNeedConfig, fetchConfig]);\r\n\r\n return (config &&\r\n {\r\n clearConfig();\r\n onClose();\r\n }}\r\n user={user}\r\n dashboards={dashboards}\r\n allDashboards={allDashboards}\r\n fetchDashboards={fetchDashboards}\r\n fetchAllDashboards={fetchAllDashboards}\r\n clearDashboards={clearDashboards}\r\n clearAllDashboards={clearAllDashboards}\r\n addDashboard={addDashboard}\r\n removeDashboard={removeDashboard}\r\n sendDashboardsOrders={sendDashboardsOrders}\r\n />);\r\n\r\n};\r\n\r\nexport default compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(AppSettingsForm);","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n getAddNodeDashboardUrl,\r\n getNodeConfigGetUrl,\r\n getNodeDashboardsUrl,\r\n getNodeDeleteUrl,\r\n getNodesConfigPostUrl,\r\n getNodesConfigPutUrl,\r\n getNodesConfigUrl,\r\n getNodesOrderPutUrl,\r\n getOrderNodeDashboardsUrl,\r\n getRemoveNodeDashboardUrl,\r\n getUserDashboardsUrl\r\n} from \"../../serverApi/urls\";\r\n\r\nexport const NODES_CONFIG_NODES_FETCH = \"nodesConfig/fetchNodes\";\r\nexport const NODES_CONFIG_NODES_CLEAR = \"nodesConfig/clearNodes\";\r\nexport const NODES_CONFIG_NODE_VISIBILITY_SET = \"nodesConfig/nodeVisibilitySet\";\r\nexport const NODES_CONFIG_NODE_ID_SET = \"nodesConfig/nodeIdSet\";\r\nexport const NODES_CONFIG_NODE_FETCH = \"nodesConfig/fetchNode\";\r\nexport const NODES_CONFIG_NODE_CLEAR = \"nodesConfig/clearNode\";\r\nexport const NODES_CONFIG_NODES_ORDER_SEND = \"nodesConfig/sendNodesOrder\";\r\nexport const NODES_CONFIG_NODE_DELETE = \"nodesConfig/deleteNode\";\r\nexport const NODES_CONFIG_NODE_CREATE = \"nodesConfig/createNode\";\r\nexport const NODES_CONFIG_NODE_EDIT = \"nodesConfig/editNode\";\r\nexport const NODES_CONFIG_NODE_DASHBOARDS_FETCH = \"nodesConfig/nodeDashboards/fetch\";\r\nexport const NODES_CONFIG_NODE_DASHBOARDS_FETCH_ALL = \"nodesConfig/nodeDashboards/fetchAll\";\r\nexport const NODES_CONFIG_NODE_DASHBOARDS_DASHBOARD_ADD = \"nodesConfig/nodeDashboards/addDashboard\";\r\nexport const NODES_CONFIG_NODE_DASHBOARDS_DASHBOARD_REMOVE = \"nodesConfig/nodeDashboards/removeDashboard\";\r\nexport const NODES_CONFIG_NODE_DASHBOARDS_ORDERS_SEND = \"nodesConfig/nodeDashboards/sendOrders\";\r\nexport const NODES_CONFIG_NODE_DASHBOARDS_CLEAR = \"nodesConfig/nodeDashboards/clear\";\r\nexport const NODES_CONFIG_NODE_DASHBOARDS_CLEAR_ALL = \"nodesConfig/nodeDashboards/clearAll\";\r\nexport const NODES_CONFIG_CLOSE = \"nodesConfig/close\";\r\n\r\nexport const fetchNodesConfigNodes = () => initRequest(\r\n NODES_CONFIG_NODES_FETCH,\r\n getNodesConfigUrl(),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.fetchNodes.start\")\r\n })\r\n);\r\n\r\nexport const clearNodesConfigNodes = () => ({\r\n type: NODES_CONFIG_NODES_CLEAR\r\n});\r\n\r\nexport const setNodesConfigNodeVisibility = (visible: boolean) => ({\r\n type: NODES_CONFIG_NODE_VISIBILITY_SET,\r\n visible\r\n});\r\n\r\nexport const setNodesConfigNodeId = (nodeId: number) => ({\r\n type: NODES_CONFIG_NODE_ID_SET,\r\n nodeId\r\n});\r\n\r\nexport const sendNodesConfigNodesOrder = (orderedIds: number[]) => initRequest(\r\n NODES_CONFIG_NODES_ORDER_SEND,\r\n getNodesOrderPutUrl(),\r\n RequestMethod.PUT,\r\n orderedIds,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.sendNodesOrder.start\")\r\n })\r\n);\r\n\r\nexport const deleteNodesConfigNode = (nodeId: number) => initRequest(\r\n NODES_CONFIG_NODE_DELETE,\r\n getNodeDeleteUrl(nodeId),\r\n RequestMethod.DELETE,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.deleteNode.start\")\r\n }),\r\n {\r\n nodeId,\r\n onForce: () => initRequest(\r\n NODES_CONFIG_NODE_DELETE,\r\n getNodeDeleteUrl(nodeId, true),\r\n RequestMethod.DELETE,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.deleteNode.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n )\r\n }\r\n);\r\n\r\nexport const fetchNodesConfigNode = (nodeId: number) => initRequest(\r\n NODES_CONFIG_NODE_FETCH,\r\n getNodeConfigGetUrl(nodeId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.fetchNode.start\")\r\n })\r\n);\r\n\r\nexport const clearNodesConfigNode = () => ({\r\n type: NODES_CONFIG_NODE_CLEAR\r\n});\r\n\r\nexport const sendNodesConfigNodeCreate = (node: any) => initRequest(\r\n NODES_CONFIG_NODE_CREATE,\r\n getNodesConfigPostUrl(),\r\n RequestMethod.POST,\r\n node,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.sendNodeCreate.start\")\r\n })\r\n);\r\n\r\nexport const sendNodesConfigNodeEdit = (node: any) => initRequest(\r\n NODES_CONFIG_NODE_EDIT,\r\n getNodesConfigPutUrl(node.nodeId),\r\n RequestMethod.PUT,\r\n node,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.sendNodeEdit.start\")\r\n }),\r\n {\r\n nodeId: node.nodeId\r\n }\r\n);\r\n\r\nexport const fetchNodesConfigNodeDashboards = (nodeId: number) => initRequest(\r\n NODES_CONFIG_NODE_DASHBOARDS_FETCH,\r\n getNodeDashboardsUrl(nodeId),\r\n RequestMethod.GET,\r\n null,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.fetchNodeDashboards.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n);\r\n\r\nexport const fetchAllNodeConfigDashboards = () => initRequest(\r\n NODES_CONFIG_NODE_DASHBOARDS_FETCH_ALL,\r\n getUserDashboardsUrl(),\r\n RequestMethod.GET,\r\n null,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.fetchAllDashboards.start\")\r\n })\r\n);\r\n\r\nexport const addNodesConfigDashboardsNodeDashboard = (nodeId: number, dashboardId: number) => initRequest(\r\n NODES_CONFIG_NODE_DASHBOARDS_DASHBOARD_ADD,\r\n getAddNodeDashboardUrl(nodeId, dashboardId),\r\n RequestMethod.POST,\r\n null,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.addNodeDashboard.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n);\r\n\r\nexport const removeNodesConfigDashboardsNodeDashboard = (nodeId: number, dashboardId: number) => initRequest(\r\n NODES_CONFIG_NODE_DASHBOARDS_DASHBOARD_REMOVE,\r\n getRemoveNodeDashboardUrl(nodeId, dashboardId),\r\n RequestMethod.DELETE,\r\n null,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.removeNodeDashboard.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n);\r\n\r\nexport const sendNodesConfigDashboardsNodeOrders = (nodeId: number, orderedDashboardsIds: number[]) => initRequest(\r\n NODES_CONFIG_NODE_DASHBOARDS_ORDERS_SEND,\r\n getOrderNodeDashboardsUrl(nodeId),\r\n RequestMethod.POST,\r\n orderedDashboardsIds,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.messages.sendNodeDashboardsOrders.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n)\r\n\r\nexport const clearNodesConfigNodeDashboards = () => ({\r\n type: NODES_CONFIG_NODE_DASHBOARDS_CLEAR\r\n});\r\n\r\nexport const clearAllNodesConfigNodeDashboards = () => ({\r\n type: NODES_CONFIG_NODE_DASHBOARDS_CLEAR_ALL\r\n});\r\n\r\nexport const closeNodesConfig = () => ({\r\n type: NODES_CONFIG_CLOSE\r\n});","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport {Checkbox, withStyles} from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport CardHeader from \"@material-ui/core/CardHeader\";\r\nimport {useForm} from 'react-hook-form'\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport {compose} from \"redux\";\r\nimport validator from \"validator\";\r\nimport {connect} from \"react-redux\";\r\nimport {clearNodesConfigNode, fetchNodesConfigNode, sendNodesConfigNodeCreate, sendNodesConfigNodeEdit} from \"../../../../state/nodesConfig/nodesConfigActions\";\r\nimport {ALL_FULL, ALL_PARTIAL, STEP_BY_STEP_DYNAMIC, STEP_BY_STEP_FULL, STEP_BY_STEP_PARTIAL} from \"../../../../state/dataset/datasetActions\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Autocomplete from \"@material-ui/lab/Autocomplete\";\r\nimport Chip from \"@material-ui/core/Chip\";\r\nimport FileInput from \"../../../file-input\";\r\nimport FormLabelWithTooltip from \"../../../form-label-with-tooltip\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport I18nTextField from \"../../../i18n-text-field\";\r\nimport {getI18nObjFromLanguages, validateI18nObj} from \"../../../../utils/i18n\";\r\nimport I18nHtmlEditor from \"../../../i18n-html-editor\";\r\nimport {downloadFormats} from \"../../../../utils/download\";\r\nimport Radio from '@material-ui/core/Radio';\r\nimport RadioGroup from '@material-ui/core/RadioGroup';\r\nimport {isValidIntegerInInclusiveRange} from \"../../../../utils/validator\";\r\nimport moment from \"moment\";\r\nimport CustomDatePicker from \"../../../custom-date-picker\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: \"100%\"\r\n },\r\n field: {\r\n marginTop: theme.spacing(3)\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: theme.spacing(3)\r\n },\r\n paperHeader: {\r\n padding: 0\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 56px)\",\r\n marginTop: 8,\r\n padding: \"0 4px\"\r\n },\r\n title: {\r\n fontSize: 16\r\n }\r\n});\r\n\r\n\r\nconst Form = compose(withStyles(styles), forwardRef)(({classes, config, languages, onSubmit, onCancel}, ref) => {\r\n\r\n const [tab, setTab] = useState(\"general\");\r\n const [mustChangeTabOnErrors, setMustChangeTabOnErrors] = useState(true);\r\n const {t} = useTranslation();\r\n\r\n const {register, errors, handleSubmit, watch, setValue} = useForm({\r\n defaultValues: {\r\n active: false,\r\n ...config,\r\n annotationConfig:\r\n config?.extras?.find(({key}) => key === \"AnnotationConfig\")\r\n ? JSON.parse(config.extras.find(({key}) => key === \"AnnotationConfig\").value)\r\n : {\r\n \"ORDER\": \"ORDER\",\r\n \"ORDER_CATEGORY\": \"ORDER\",\r\n \"ORDER_CODELIST\": \"ORDER\",\r\n \"NOT_DISPLAYED\": \"NOT_DISPLAYED\",\r\n \"DEFAULT\": \"DEFAULT\",\r\n \"LAYOUT_ROW\": \"LAYOUT_ROW\",\r\n \"LAYOUT_COLUMN\": \"LAYOUT_COLUMN\",\r\n \"LAYOUT_FILTER\": \"LAYOUT_FILTER\",\r\n \"LAYOUT_ROW_SECTION\": \"LAYOUT_ROW_SECTION\",\r\n \"LAYOUT_CHART_PRIMARY_DIM\": \"LAYOUT_CHART_PRIMARY_DIM\",\r\n \"LAYOUT_CHART_SECONDARY_DIM\": \"LAYOUT_CHART_SECONDARY_DIM\",\r\n \"LAYOUT_CHART_FILTER\": \"LAYOUT_CHART_FILTER\",\r\n \"CRITERIA_SELECTION\": \"CRITERIA_SELECTION\",\r\n \"ATTACHED_DATA_FILES\": \"ATTACHED_DATA_FILES\",\r\n \"LAYOUT_DECIMAL_SEPARATOR\": \"LAYOUT_DECIMAL_SEPARATOR\",\r\n \"LAYOUT_NUMBER_OF_DECIMALS\": \"LAYOUT_NUMBER_OF_DECIMALS\",\r\n \"LAYOUT_EMPTY_CELL_PLACEHOLDER\": \"LAYOUT_EMPTY_CELL_PLACEHOLDER\",\r\n \"DATAFLOW_NOTES\": \"DATAFLOW_NOTES\",\r\n \"DATAFLOW_SOURCE\": \"DATAFLOW_SOURCE\",\r\n \"METADATA_URL\": \"METADATA_URL\",\r\n \"KEYWORDS\": \"KEYWORDS\",\r\n \"DEFAULT_VIEW\": \"DEFAULT_VIEW\",\r\n \"GEO_ID\": \"GEO_ID\",\r\n \"LAST_UPDATE\": \"LAST_UPDATE\",\r\n \"VIRTUAL_DATAFLOW_NODE\": \"VIRTUAL_DATAFLOW_NODE\",\r\n \"DATAFLOW_CATALOG_TYPE\": \"DATAFLOW_CATALOG_TYPE\",\r\n \"DATAFLOW_HIDDEN\": \"DATAFLOW_HIDDEN\"\r\n },\r\n showCategoryLevels: config?.showCategoryLevels || 1,\r\n decimalNumber: (config?.decimalNumber === null || config?.decimalNumber === undefined || config?.decimalNumber < 0)\r\n ? \"\"\r\n : config?.decimalNumber,\r\n decimalSeparator: config?.decimalSeparator || getI18nObjFromLanguages(languages, \",\"),\r\n catalogNavigationMode: config?.catalogNavigationMode || \"List\",\r\n hiddenAttributes:\r\n config?.extras?.find(({key}) => key === \"HiddenAttributes\")\r\n ? JSON.parse(config.extras.find(({key}) => key === \"HiddenAttributes\").value)\r\n : [],\r\n pageSize:\r\n config?.extras?.find(({key}) => key === \"PageSize\")\r\n ? JSON.parse(config.extras.find(({key}) => key === \"PageSize\").value)\r\n : \"\",\r\n restDataResponseXml:\r\n config?.extras?.find(({key}) => key === \"RestDataResponseXml\") && (\r\n config.extras.find(({key}) => key === \"RestDataResponseXml\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"RestDataResponseXml\").value === \"true\"\r\n )\r\n ? config.extras.find(({key}) => key === \"RestDataResponseXml\").value\r\n : \"\",\r\n downloadFormats:\r\n config?.extras?.find(({key}) => key === \"DownloadFormats\")\r\n ? JSON.parse(config.extras.find(({key}) => key === \"DownloadFormats\").value)\r\n : [],\r\n supportPostFilters:\r\n config?.extras?.find(({key}) => key === \"SupportPostFilters\") && (\r\n config.extras.find(({key}) => key === \"SupportPostFilters\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"SupportPostFilters\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"SupportPostFilters\").value)\r\n : false,\r\n supportPostFiltersStructure:\r\n config?.extras?.find(({key}) => key === \"SupportPostFiltersStructure\") && (\r\n config.extras.find(({key}) => key === \"SupportPostFiltersStructure\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"SupportPostFiltersStructure\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"SupportPostFiltersStructure\").value)\r\n : false,\r\n enableEndpointV20:\r\n config?.extras?.find(({key}) => key === \"EnableEndPointV20\") && (\r\n config.extras.find(({key}) => key === \"EnableEndPointV20\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"EnableEndPointV20\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"EnableEndPointV20\").value)\r\n : false,\r\n endpointV20:\r\n config?.extras?.find(({key}) => key === \"EndPointV20\")\r\n ? config.extras.find(({key}) => key === \"EndPointV20\").value || \"\"\r\n : \"\",\r\n defaultLastNPeriods:\r\n config?.extras?.find(({key}) => key === \"DefaultLastNPeriods\")\r\n ? config.extras.find(({key}) => key === \"DefaultLastNPeriods\").value || \"\"\r\n : \"\",\r\n showHubDashboards:\r\n config?.extras?.find(({key}) => key === \"ShowHubDashboards\") && (\r\n config.extras.find(({key}) => key === \"ShowHubDashboards\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"ShowHubDashboards\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"ShowHubDashboards\").value)\r\n : false,\r\n showVirtualDataflow:\r\n config?.extras?.find(({key}) => key === \"ShowVirtualDataflow\") && (\r\n config.extras.find(({key}) => key === \"ShowVirtualDataflow\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"ShowVirtualDataflow\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"ShowVirtualDataflow\").value)\r\n : false,\r\n queryInfo:\r\n config?.extras?.find(({key}) => key === \"QueryInfo\") && (\r\n config.extras.find(({key}) => key === \"QueryInfo\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"QueryInfo\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"QueryInfo\").value)\r\n : false,\r\n showOnlyFileDataflow:\r\n config?.extras?.find(({key}) => key === \"ShowOnlyFileDataflow\") && (\r\n config.extras.find(({key}) => key === \"ShowOnlyFileDataflow\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"ShowOnlyFileDataflow\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"ShowOnlyFileDataflow\").value)\r\n : true,\r\n timePeriodRangeStart:\r\n config?.extras?.find(({key}) => key === \"TimePeriodRangeStart\")\r\n ? config.extras.find(({key}) => key === \"TimePeriodRangeStart\").value || null\r\n : null,\r\n timePeriodRangeEnd:\r\n config?.extras?.find(({key}) => key === \"TimePeriodRangeEnd\")\r\n ? config.extras.find(({key}) => key === \"TimePeriodRangeEnd\").value || null\r\n : null,\r\n hideLabelOnCategoryWithImage:\r\n config?.extras?.find(({key}) => key === \"HideLabelOnCategoryWithImage\") && (\r\n config.extras.find(({key}) => key === \"HideLabelOnCategoryWithImage\").value === \"false\" ||\r\n config.extras.find(({key}) => key === \"HideLabelOnCategoryWithImage\").value === \"true\"\r\n )\r\n ? JSON.parse(config.extras.find(({key}) => key === \"HideLabelOnCategoryWithImage\").value)\r\n : false\r\n }\r\n });\r\n\r\n const enableHttpAuth = watch(\"enableHttpAuth\");\r\n const enableProxy = watch(\"enableProxy\");\r\n const supportPostFiltersStructure = watch(\"supportPostFiltersStructure\");\r\n const enableEndpointV20 = watch(\"enableEndpointV20\");\r\n const isCriteriaSelectionModeDynamic = (watch(\"criteriaSelectionMode\") || '') === STEP_BY_STEP_DYNAMIC;\r\n const isLastNPeriodsDisabled = (\r\n (watch(\"criteriaSelectionMode\") || '') !== STEP_BY_STEP_DYNAMIC &&\r\n (watch(\"criteriaSelectionMode\") || '') !== STEP_BY_STEP_PARTIAL &&\r\n (watch(\"criteriaSelectionMode\") || '') !== ALL_PARTIAL\r\n );\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n setMustChangeTabOnErrors(true);\r\n handleSubmit(val => {\r\n const data = {\r\n ...config,\r\n ...val,\r\n type: \"SDMX-REST\",\r\n decimalNumber: (val?.decimalNumber === null || val?.decimalNumber === undefined || val?.decimalNumber === \"\")\r\n ? -1\r\n : val?.decimalNumber,\r\n annotationConfig: undefined,\r\n restDataResponseXml: undefined,\r\n optimizeCallWithSoap: undefined,\r\n namespaceV20: undefined,\r\n namespaceV21: undefined,\r\n hiddenAttributes: undefined,\r\n pageSize: undefined,\r\n downloadFormats: undefined,\r\n supportPostFilters: undefined,\r\n supportPostFiltersStructure: undefined,\r\n enableEndpointV20: undefined,\r\n endpointV20: undefined,\r\n defaultLastNPeriods: undefined,\r\n showHubDashboards: undefined,\r\n showVirtualDataflow: undefined,\r\n queryInfo: undefined\r\n };\r\n\r\n if (data.extras?.find(({key}) => key === \"AnnotationConfig\")) {\r\n data.extras.find(({key}) => key === \"AnnotationConfig\").value = JSON.stringify(val.annotationConfig)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"AnnotationConfig\",\r\n value: JSON.stringify(val.annotationConfig),\r\n isPublic: false\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"RestDataResponseXml\")) {\r\n data.extras.find(({key}) => key === \"RestDataResponseXml\").value = val.restDataResponseXml\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"RestDataResponseXml\",\r\n value: val.restDataResponseXml,\r\n isPublic: false\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"SupportPostFilters\")) {\r\n data.extras.find(({key}) => key === \"SupportPostFilters\").value = JSON.stringify(val.supportPostFilters)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"SupportPostFilters\",\r\n value: JSON.stringify(val.supportPostFilters),\r\n isPublic: false\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"SupportPostFiltersStructure\")) {\r\n data.extras.find(({key}) => key === \"SupportPostFiltersStructure\").value = JSON.stringify(val.supportPostFiltersStructure)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"SupportPostFiltersStructure\",\r\n value: JSON.stringify(val.supportPostFiltersStructure),\r\n isPublic: false\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"HiddenAttributes\")) {\r\n data.extras.find(({key}) => key === \"HiddenAttributes\").value = JSON.stringify(val.hiddenAttributes)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"HiddenAttributes\",\r\n value: JSON.stringify(val.hiddenAttributes),\r\n isPublic: true\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"PageSize\")) {\r\n data.extras.find(({key}) => key === \"PageSize\").value = JSON.stringify(val.pageSize)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"PageSize\",\r\n value: JSON.stringify(val.pageSize),\r\n isPublic: true\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"DownloadFormats\")) {\r\n data.extras.find(({key}) => key === \"DownloadFormats\").value = JSON.stringify(val.downloadFormats)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"DownloadFormats\",\r\n value: JSON.stringify(val.downloadFormats),\r\n isPublic: true\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"EnableEndPointV20\")) {\r\n data.extras.find(({key}) => key === \"EnableEndPointV20\").value = JSON.stringify(val.enableEndpointV20)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"EnableEndPointV20\",\r\n value: JSON.stringify(val.enableEndpointV20),\r\n isPublic: false\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"EndPointV20\")) {\r\n data.extras.find(({key}) => key === \"EndPointV20\").value = val.endpointV20\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"EndPointV20\",\r\n value: val.endpointV20 || \"\",\r\n isPublic: false\r\n });\r\n }\r\n\r\n const defaultLastNPeriodsExtra = data.extras?.find(({key}) => key === \"DefaultLastNPeriods\");\r\n const defaultLastNPeriodsExtraPublic = true;\r\n if (defaultLastNPeriodsExtra) {\r\n defaultLastNPeriodsExtra.value = val.defaultLastNPeriods;\r\n defaultLastNPeriodsExtra.isPublic = defaultLastNPeriodsExtraPublic;\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"DefaultLastNPeriods\",\r\n value: val.defaultLastNPeriods,\r\n isPublic: defaultLastNPeriodsExtraPublic\r\n });\r\n }\r\n\r\n const showHubDashboardsExtra = data.extras?.find(({key}) => key === \"ShowHubDashboards\");\r\n const showHubDashboardsExtraPublic = true;\r\n if (showHubDashboardsExtra) {\r\n showHubDashboardsExtra.value = JSON.stringify(val.showHubDashboards);\r\n showHubDashboardsExtra.isPublic = showHubDashboardsExtraPublic;\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"ShowHubDashboards\",\r\n value: JSON.stringify(val.showHubDashboards),\r\n isPublic: showHubDashboardsExtraPublic\r\n });\r\n }\r\n\r\n if (data.extras?.find(({key}) => key === \"ShowVirtualDataflow\")) {\r\n data.extras.find(({key}) => key === \"ShowVirtualDataflow\").value = JSON.stringify(val.showVirtualDataflow)\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"ShowVirtualDataflow\",\r\n value: JSON.stringify(val.showVirtualDataflow),\r\n isPublic: false\r\n });\r\n }\r\n\r\n const queryInfoExtra = data.extras?.find(({key}) => key === \"QueryInfo\");\r\n const queryInfoExtraPublic = true;\r\n if (queryInfoExtra) {\r\n queryInfoExtra.value = JSON.stringify(val.queryInfo);\r\n queryInfoExtra.isPublic = queryInfoExtraPublic;\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"QueryInfo\",\r\n value: JSON.stringify(val.queryInfo),\r\n isPublic: queryInfoExtraPublic\r\n });\r\n }\r\n\r\n const showOnlyFileDataflowExtra = data.extras?.find(({key}) => key === \"ShowOnlyFileDataflow\");\r\n const showOnlyFileDataflowExtraPublic = false;\r\n if (showOnlyFileDataflowExtra) {\r\n showOnlyFileDataflowExtra.value = JSON.stringify(val.showOnlyFileDataflow);\r\n showOnlyFileDataflowExtra.isPublic = showOnlyFileDataflowExtraPublic;\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"ShowOnlyFileDataflow\",\r\n value: JSON.stringify(val.showOnlyFileDataflow),\r\n isPublic: showOnlyFileDataflowExtraPublic\r\n });\r\n }\r\n\r\n const timePeriodRangeStartExtra = data.extras?.find(({key}) => key === \"TimePeriodRangeStart\");\r\n const timePeriodRangeStartExtraPublic = true;\r\n if (timePeriodRangeStartExtra) {\r\n timePeriodRangeStartExtra.value = val.timePeriodRangeStart;\r\n timePeriodRangeStartExtra.isPublic = timePeriodRangeStartExtraPublic;\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"TimePeriodRangeStart\",\r\n value: val.timePeriodRangeStart,\r\n isPublic: timePeriodRangeStartExtraPublic\r\n });\r\n }\r\n\r\n const timePeriodRangeEndExtra = data.extras?.find(({key}) => key === \"TimePeriodRangeEnd\");\r\n const timePeriodRangeEndExtraPublic = true;\r\n if (timePeriodRangeEndExtra) {\r\n timePeriodRangeEndExtra.value = val.timePeriodRangeEnd;\r\n timePeriodRangeEndExtra.isPublic = timePeriodRangeEndExtraPublic;\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"TimePeriodRangeEnd\",\r\n value: val.timePeriodRangeEnd,\r\n isPublic: timePeriodRangeEndExtraPublic\r\n });\r\n }\r\n\r\n const hideLabelOnCategoryWithImageExtra = data.extras?.find(({key}) => key === \"HideLabelOnCategoryWithImage\");\r\n const hideLabelOnCategoryWithImageExtraPublic = true;\r\n if (hideLabelOnCategoryWithImageExtra) {\r\n hideLabelOnCategoryWithImageExtra.value = JSON.stringify(val.hideLabelOnCategoryWithImage);\r\n hideLabelOnCategoryWithImageExtra.isPublic = hideLabelOnCategoryWithImageExtraPublic;\r\n } else {\r\n data.extras = data.extras || [];\r\n data.extras.push({\r\n key: \"HideLabelOnCategoryWithImage\",\r\n value: JSON.stringify(val.hideLabelOnCategoryWithImage),\r\n isPublic: hideLabelOnCategoryWithImageExtraPublic\r\n });\r\n }\r\n\r\n onSubmit(data);\r\n f(data);\r\n })();\r\n },\r\n cancel(f) {\r\n onCancel();\r\n f();\r\n }\r\n }));\r\n\r\n /* custom register */\r\n useEffect(() => {\r\n\r\n register({\r\n name: \"code\"\r\n }, {\r\n required: t(\"commons.validation.required\"),\r\n });\r\n register({\r\n name: \"title\"\r\n });\r\n register({\r\n name: \"agency\"\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n })\r\n register({name: 'active'});\r\n register({name: 'default'});\r\n register({name: \"slogan\"});\r\n register({name: 'backgroundMediaURL'});\r\n register({name: 'logo'});\r\n register({name: 'description'});\r\n register({\r\n name: 'criteriaSelectionMode'\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({\r\n name: \"endPoint\"\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({\r\n name: \"supportPostFilters\"\r\n });\r\n register({\r\n name: \"supportPostFiltersStructure\"\r\n });\r\n register({\r\n name: \"enableEndpointV20\"\r\n });\r\n register({name: 'enableHttpAuth'});\r\n register({name: 'enableProxy'});\r\n register({name: 'annotationConfig.ORDER'});\r\n register({name: 'annotationConfig.ORDER_CATEGORY'});\r\n register({name: 'annotationConfig.ORDER_CODELIST'});\r\n register({name: 'annotationConfig.NOT_DISPLAYED'});\r\n register({name: 'annotationConfig.DEFAULT'});\r\n register({name: 'annotationConfig.LAYOUT_ROW'});\r\n register({name: 'annotationConfig.LAYOUT_COLUMN'});\r\n register({name: 'annotationConfig.LAYOUT_FILTER'});\r\n register({name: 'annotationConfig.LAYOUT_ROW_SECTION'});\r\n register({name: 'annotationConfig.LAYOUT_CHART_PRIMARY_DIM'});\r\n register({name: 'annotationConfig.LAYOUT_CHART_SECONDARY_DIM'});\r\n register({name: 'annotationConfig.LAYOUT_CHART_FILTER'});\r\n register({name: 'annotationConfig.CRITERIA_SELECTION'});\r\n register({name: 'annotationConfig.ATTACHED_DATA_FILES'});\r\n register({name: 'annotationConfig.LAYOUT_DECIMAL_SEPARATOR'});\r\n register({name: 'annotationConfig.LAYOUT_NUMBER_OF_DECIMALS'});\r\n register({name: 'annotationConfig.LAYOUT_EMPTY_CELL_PLACEHOLDER'});\r\n register({name: 'annotationConfig.DATAFLOW_NOTES'});\r\n register({name: 'annotationConfig.DATAFLOW_SOURCE'});\r\n register({name: 'annotationConfig.METADATA_URL'});\r\n register({name: 'annotationConfig.KEYWORDS'});\r\n register({name: 'annotationConfig.DEFAULT_VIEW'});\r\n register({name: 'annotationConfig.GEO_ID'});\r\n register({name: 'annotationConfig.LAST_UPDATE'});\r\n register({name: 'annotationConfig.VIRTUAL_DATAFLOW_NODE'});\r\n register({name: 'annotationConfig.DATAFLOW_CATALOG_TYPE'});\r\n register({name: 'annotationConfig.DATAFLOW_HIDDEN'});\r\n register({\r\n name: \"ttlCatalog\"\r\n }, {\r\n validate: val =>\r\n (val || \"\").length === 0 ||\r\n isValidIntegerInInclusiveRange(val, -1) ||\r\n t(\"scenes.nodeSettings.validation.ttlCatalog\")\r\n });\r\n register({\r\n name: \"ttlDataflow\"\r\n }, {\r\n validate: val =>\r\n (val || \"\").length === 0 ||\r\n isValidIntegerInInclusiveRange(val, -1) ||\r\n t(\"scenes.nodeSettings.validation.ttlDataflow\")\r\n });\r\n register({name: 'showDataflowUncategorized'});\r\n register({name: 'showDataflowNotInProduction'});\r\n register({\r\n name: 'showCategoryLevels'\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({\r\n name: \"decimalNumber\"\r\n }, {\r\n validate: val =>\r\n (val || \"\").length === 0 ||\r\n isValidIntegerInInclusiveRange(val, 0, 20) ||\r\n t(\"commons.validation.inRange\", {min: 0, max: 20})\r\n });\r\n register({\r\n name: 'decimalSeparator'\r\n }, {\r\n validate: val => validateI18nObj(val) || t(\"commons.validation.requiredAnyLanguage\")\r\n });\r\n register({name: 'labelDimensionTerritorials'});\r\n register({name: 'categorySchemaExcludes'});\r\n register({\r\n name: 'catalogNavigationMode'\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({name: 'hiddenAttributes'});\r\n register({\r\n name: 'pageSize'\r\n }, {\r\n validate: val => !val || val > 0 || t(\"commons.validation.positiveInteger\")\r\n });\r\n register({\r\n name: 'restDataResponseXml'\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({name: 'downloadFormats'});\r\n register({\r\n name: 'defaultLastNPeriods'\r\n }, {\r\n validate: val => !val || val > 0 || t(\"commons.validation.positiveInteger\")\r\n });\r\n register({name: 'showHubDashboards'});\r\n register({name: 'showVirtualDataflow'});\r\n register({name: 'queryInfo'});\r\n register({name: 'showOnlyFileDataflow'});\r\n register({name: 'timePeriodRangeStart'});\r\n register({name: 'timePeriodRangeEnd'});\r\n register({name: 'hideLabelOnCategoryWithImage'});\r\n }, [register, t]);\r\n\r\n /* register enableHttpAuth fieldset */\r\n useEffect(() => {\r\n if (enableHttpAuth) {\r\n register({\r\n name: \"authHttpUsername\"\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({\r\n name: \"authHttpPassword\"\r\n });\r\n register({\r\n name: \"authHttpDomain\"\r\n });\r\n } else {\r\n register({name: \"authHttpUsername\"});\r\n }\r\n\r\n }, [register, enableHttpAuth, t]);\r\n\r\n /* register enableProxy fieldset */\r\n useEffect(() => {\r\n if (enableProxy) {\r\n register({\r\n name: \"proxyAddress\"\r\n }, {\r\n required: t(\"commons.validation.required\")\r\n });\r\n register({\r\n name: \"proxyPort\"\r\n }, {\r\n required: t(\"commons.validation.required\"),\r\n validate: val => (val && validator.isPort(val)) || t(\"scenes.nodeSettings.fields.proxyPort.validation\")\r\n });\r\n register({name: \"proxyUsername\"});\r\n register({name: \"proxyPassword\"});\r\n } else {\r\n register({name: \"proxyAddress\"});\r\n register({name: \"proxyPort\"});\r\n }\r\n }, [register, enableProxy, t]);\r\n\r\n /* register endpointV20 fieldset */\r\n useEffect(() => {\r\n if (enableEndpointV20) {\r\n register({name: \"endpointV20\"}, {required: t(\"commons.validation.required\")});\r\n } else {\r\n register({name: \"endpointV20\"});\r\n }\r\n }, [enableEndpointV20, register, t]);\r\n\r\n /* switch to first tab with errors */\r\n if (Object.keys(errors).length > 0 && mustChangeTabOnErrors) {\r\n\r\n setMustChangeTabOnErrors(false);\r\n\r\n const firstFieldWithErrors = Object.keys(errors)[0];\r\n\r\n if (\r\n firstFieldWithErrors === \"code\" ||\r\n firstFieldWithErrors === \"agency\" ||\r\n firstFieldWithErrors === \"title\" ||\r\n firstFieldWithErrors === \"slogan\"\r\n ) {\r\n if (tab !== \"general\") {\r\n setTab(\"general\")\r\n }\r\n\r\n } else if (\r\n firstFieldWithErrors === \"showCategoryLevels\" ||\r\n firstFieldWithErrors === \"decimalNumber\" ||\r\n firstFieldWithErrors === \"decimalSeparator\" ||\r\n firstFieldWithErrors === \"labelDimensionTerritorials\" ||\r\n firstFieldWithErrors === \"categorySchemaExcludes\" ||\r\n firstFieldWithErrors === \"catalogNavigationMode\" ||\r\n firstFieldWithErrors === \"hiddenAttributes\" ||\r\n firstFieldWithErrors === \"pageSize\" ||\r\n firstFieldWithErrors === \"downloadFormats\" ||\r\n firstFieldWithErrors === \"defaultLastNPeriods\" ||\r\n firstFieldWithErrors === \"timePeriodRangeStart\" ||\r\n firstFieldWithErrors === \"timePeriodRangeEnd\" ||\r\n firstFieldWithErrors === \"hideLabelOnCategoryWithImage\"\r\n ) {\r\n if (tab !== \"view\") {\r\n setTab(\"view\")\r\n }\r\n\r\n } else if (\r\n firstFieldWithErrors === \"ttlCatalog\" ||\r\n firstFieldWithErrors === \"ttlDataflow\"\r\n ) {\r\n if (tab !== \"cache\") {\r\n setTab(\"cache\")\r\n }\r\n\r\n } else if (firstFieldWithErrors) {\r\n if (tab !== \"endpoint\") {\r\n setTab(\"endpoint\");\r\n }\r\n\r\n }\r\n }\r\n\r\n return (\r\n \r\n setTab(tab)}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.code.label\")}\r\n \r\n }\r\n required\r\n error={!!errors.code}\r\n helperText={errors.code?.message}\r\n value={watch('code') || \"\"}\r\n onChange={({target}) => setValue('code', (target.value || \"\").toUpperCase())}\r\n inputProps={{\r\n style: {textTransform: \"uppercase\"}\r\n }}\r\n />\r\n \r\n \r\n \r\n \r\n setValue('title', value)}\r\n />\r\n \r\n \r\n \r\n \r\n setValue('agency', target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.active.label\")}\r\n \r\n }\r\n control={\r\n setValue('active', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n setValue('default', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n setValue('slogan', value)}\r\n />\r\n \r\n \r\n setValue('backgroundMediaURL', value)}\r\n />\r\n \r\n \r\n setValue('logo', value)}\r\n />\r\n \r\n \r\n \r\n\r\n \r\n setValue('description', val)}\r\n />\r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n SDMX-REST\r\n \r\n \r\n \r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.criteriaSelectionMode.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n onChange={e => setValue('criteriaSelectionMode', e.target.value)}\r\n value={watch(\"criteriaSelectionMode\") || ''}\r\n helperText={errors.criteriaSelectionMode?.message}\r\n error={!!errors.criteriaSelectionMode}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n ALL_FULL\r\n ALL_PARTIAL\r\n STEP_BY_STEP_FULL\r\n STEP_BY_STEP_PARTIAL\r\n STEP_BY_STEP_DYNAMIC\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n setValue('endPoint', target.value)}\r\n />\r\n \r\n \r\n setValue('restDataResponseXml', target.value)}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n XML\r\n JSON\r\n \r\n \r\n \r\n setValue('supportPostFilters', value)}\r\n />\r\n }\r\n />\r\n \r\n {isCriteriaSelectionModeDynamic && (\r\n \r\n \r\n {t(\"scenes.nodeSettings.tabs.endpoint.cards.structureFilters.label\")}\r\n \r\n }\r\n className={classes.paperHeader}\r\n />\r\n \r\n {(() => {\r\n let radioValue;\r\n if (supportPostFiltersStructure && enableEndpointV20) {\r\n radioValue = null;\r\n } else if (supportPostFiltersStructure) {\r\n radioValue = \"supportPostFiltersStructure\";\r\n } else if (enableEndpointV20) {\r\n radioValue = \"enableEndpointV20\";\r\n } else {\r\n radioValue = \"GET\";\r\n }\r\n\r\n return (\r\n {\r\n switch (event.target.value) {\r\n case \"supportPostFiltersStructure\": {\r\n setValue('supportPostFiltersStructure', true);\r\n setValue('enableEndpointV20', false);\r\n break;\r\n }\r\n case \"enableEndpointV20\": {\r\n setValue('supportPostFiltersStructure', false);\r\n setValue('enableEndpointV20', true);\r\n break;\r\n }\r\n default: {\r\n setValue('supportPostFiltersStructure', false);\r\n setValue('enableEndpointV20', false);\r\n }\r\n }\r\n }}\r\n >\r\n }\r\n label={t(\"scenes.nodeSettings.fields.structureFilters.default.label\")}\r\n />\r\n }\r\n label={t(\"scenes.nodeSettings.fields.structureFilters.supportPostFiltersStructure.label\")}\r\n />\r\n }\r\n label={\r\n \r\n {t(\"scenes.nodeSettings.fields.structureFilters.enableEndpointV20.label\")}\r\n \r\n }\r\n />\r\n \r\n )\r\n })()}\r\n \r\n {enableEndpointV20 && (\r\n \r\n setValue('endpointV20', target.value)}\r\n />\r\n \r\n )}\r\n \r\n )}\r\n \r\n {/*\r\n \r\n \r\n setValue('optimizeCallWithSoap', value)}\r\n />\r\n }\r\n />\r\n \r\n {optimizeCallWithSoap && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n */}\r\n \r\n \r\n \r\n setValue('enableHttpAuth', value)}\r\n />\r\n }\r\n />\r\n \r\n {enableHttpAuth && (\r\n \r\n \r\n \r\n setValue('authHttpUsername', target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n setValue('authHttpPassword', target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n setValue('authHttpDomain', target.value)}\r\n />\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n setValue('enableProxy', value)}\r\n />\r\n }\r\n />\r\n \r\n {enableProxy && (\r\n \r\n \r\n \r\n setValue('proxyAddress', target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n setValue('proxyPort', target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n setValue('proxyUsername', target.value)}\r\n />\r\n \r\n \r\n \r\n \r\n setValue('proxyPassword', e.target.value)}\r\n />\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.ORDER.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.ORDER') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.ORDER', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.ORDER_CATEGORY.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.ORDER_CATEGORY') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.ORDER_CATEGORY', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.ORDER_CODELIST.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.ORDER_CODELIST') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.ORDER_CODELIST', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.NOT_DISPLAYED.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.NOT_DISPLAYED') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.NOT_DISPLAYED', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.DEFAULT.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.DEFAULT') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.DEFAULT', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_ROW.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_ROW') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_ROW', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_COLUMN.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_COLUMN') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_COLUMN', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_FILTER.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_FILTER') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_FILTER', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_ROW_SECTION.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_ROW_SECTION') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_ROW_SECTION', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_CHART_PRIMARY_DIM.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_CHART_PRIMARY_DIM') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_CHART_PRIMARY_DIM', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_CHART_SECONDARY_DIM.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_CHART_SECONDARY_DIM') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_CHART_SECONDARY_DIM', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_CHART_FILTER.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_CHART_FILTER') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_CHART_FILTER', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.CRITERIA_SELECTION.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.CRITERIA_SELECTION') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.CRITERIA_SELECTION', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.ATTACHED_DATA_FILES.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.ATTACHED_DATA_FILES') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.ATTACHED_DATA_FILES', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_DECIMAL_SEPARATOR.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_DECIMAL_SEPARATOR') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_DECIMAL_SEPARATOR', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_NUMBER_OF_DECIMALS.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_NUMBER_OF_DECIMALS') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_NUMBER_OF_DECIMALS', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAYOUT_EMPTY_CELL_PLACEHOLDER.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAYOUT_EMPTY_CELL_PLACEHOLDER') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAYOUT_EMPTY_CELL_PLACEHOLDER', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.DATAFLOW_NOTES.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.DATAFLOW_NOTES') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.DATAFLOW_NOTES', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.DATAFLOW_SOURCE.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.DATAFLOW_SOURCE') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.DATAFLOW_SOURCE', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.METADATA_URL.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.METADATA_URL') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.METADATA_URL', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.KEYWORDS.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.KEYWORDS') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.KEYWORDS', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.DEFAULT_VIEW.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.DEFAULT_VIEW') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.DEFAULT_VIEW', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.GEO_ID.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.GEO_ID') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.GEO_ID', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.LAST_UPDATE.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.LAST_UPDATE') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.LAST_UPDATE', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.VIRTUAL_DATAFLOW_NODE.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.VIRTUAL_DATAFLOW_NODE') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.VIRTUAL_DATAFLOW_NODE', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.DATAFLOW_CATALOG_TYPE.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.DATAFLOW_CATALOG_TYPE') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.DATAFLOW_CATALOG_TYPE', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.annotations.DATAFLOW_HIDDEN.label\")}\r\n \r\n }\r\n variant=\"outlined\"\r\n value={watch('annotationConfig.DATAFLOW_HIDDEN') || \"\"}\r\n onChange={({target}) => setValue('annotationConfig.DATAFLOW_HIDDEN', target.value)}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.catalogCacheValidity.label\")}\r\n \r\n }\r\n error={!!errors.ttlCatalog}\r\n value={watch('ttlCatalog') !== null && watch('ttlCatalog') !== undefined\r\n ? watch('ttlCatalog')\r\n : \"\"\r\n }\r\n onChange={({target}) => setValue('ttlCatalog', target.value)}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.dataflowCacheValidity.label\")}\r\n \r\n }\r\n error={!!errors.ttlDataflow}\r\n value={watch('ttlDataflow') !== null && watch('ttlDataflow') !== undefined\r\n ? watch('ttlDataflow')\r\n : \"\"\r\n }\r\n onChange={({target}) => setValue('ttlDataflow', target.value)}\r\n />\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n setValue('showDataflowUncategorized', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n setValue('showDataflowNotInProduction', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n setValue('showVirtualDataflow', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n setValue('showOnlyFileDataflow', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n setValue('showCategoryLevels', e.target.value)}\r\n value={watch(\"showCategoryLevels\") || ''}\r\n error={!!errors.showCategoryLevels}\r\n helperText={errors.showCategoryLevels?.message}\r\n variant=\"outlined\"\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n 1\r\n 5\r\n \r\n \r\n \r\n setValue('hideLabelOnCategoryWithImage', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n value.map((option, index) => (\r\n \r\n ))\r\n }\r\n onChange={(e, val) => setValue('categorySchemaExcludes', val)}\r\n renderInput={params => (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n setValue('catalogNavigationMode', e.target.value)}\r\n value={watch(\"catalogNavigationMode\") || ''}\r\n required\r\n variant=\"outlined\"\r\n error={!!errors.catalogNavigationMode}\r\n helperText={errors.catalogNavigationMode?.message}\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n {t(\"scenes.nodeSettings.fields.catalogNavigationMode.values.card\")}\r\n {t(\"scenes.nodeSettings.fields.catalogNavigationMode.values.list\")}\r\n \r\n \r\n downloadFormats(t)[option]?.label || \"\"}\r\n value={watch('downloadFormats') || []}\r\n renderTags={(value, getTagProps) =>\r\n value.map((option, index) => (\r\n \r\n ))\r\n }\r\n onChange={(e, val) => setValue('downloadFormats', val)}\r\n renderInput={params => (\r\n \r\n \r\n \r\n )}\r\n />\r\n {/*\r\n setValue('showHubDashboards', value)}\r\n />\r\n }\r\n />\r\n */}\r\n \r\n \r\n \r\n \r\n setValue('decimalNumber', target.value)}\r\n />\r\n \r\n \r\n setValue('decimalSeparator', value)}\r\n value={watch(\"decimalSeparator\") || ''}\r\n helper={t(\"scenes.nodeSettings.fields.decimalSeparator.helper\")}\r\n error={!!errors.decimalSeparator}\r\n helperText={errors.decimalSeparator?.message}\r\n variant=\"outlined\"\r\n SelectProps={{SelectDisplayProps: {\"aria-haspopup\": true}}}\r\n >\r\n Dot\r\n Comma\r\n \r\n \r\n \r\n value.map((option, index) => (\r\n \r\n ))\r\n }\r\n onChange={(e, val) => setValue('labelDimensionTerritorials', val)}\r\n renderInput={params => (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n value.map((option, index) => (\r\n \r\n ))\r\n }\r\n onChange={(e, val) => setValue('hiddenAttributes', val)}\r\n renderInput={params => (\r\n \r\n \r\n \r\n )}\r\n />\r\n \r\n setValue('queryInfo', value)}\r\n />\r\n }\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.defaultLastNPeriods.label\")}\r\n \r\n }\r\n onChange={e => {\r\n if (e.target.value.match(/^[0-9]*$/gm)) {\r\n setValue('defaultLastNPeriods', e.target.value);\r\n }\r\n }}\r\n value={watch(\"defaultLastNPeriods\") || ''}\r\n variant=\"outlined\"\r\n error={!!errors.defaultLastNPeriods}\r\n helperText={errors.defaultLastNPeriods?.message}\r\n disabled={isLastNPeriodsDisabled}\r\n />\r\n \r\n \r\n \r\n {t(\"scenes.nodeSettings.fields.timePeriodRange.label\")}:\r\n \r\n \r\n \r\n setValue('timePeriodRangeStart', date ? moment(date).format(\"YYYY-MM-DD\") : null)}\r\n />\r\n \r\n \r\n \r\n \r\n setValue('timePeriodRangeEnd', date ? moment(date).format(\"YYYY-MM-DD\") : null)}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n {/*\r\n setValue('pageSize', Number(target.value))}\r\n />\r\n */}\r\n \r\n\r\n
    \r\n
    \r\n );\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.nodesConfig.node,\r\n languages: state.app.languages\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchConfig: nodeId => dispatch(fetchNodesConfigNode(nodeId)),\r\n sendConfigCreate: config => dispatch(sendNodesConfigNodeCreate(config)),\r\n sendConfig: config => dispatch(sendNodesConfigNodeEdit(config)),\r\n clearConfig: () => dispatch(clearNodesConfigNode())\r\n});\r\n\r\nconst NodeSettingsForm = ({config, languages, nodeId, fetchConfig, sendConfigCreate, sendConfig, clearConfig}, ref) => {\r\n\r\n const [needConfig, setNeedConfig] = useState(nodeId !== null);\r\n\r\n useEffect(() => {\r\n\r\n if (needConfig) {\r\n setNeedConfig(false);\r\n fetchConfig(nodeId);\r\n }\r\n }, [config, needConfig, setNeedConfig, fetchConfig, nodeId]);\r\n\r\n return ((nodeId === null || config) && (\r\n \r\n ));\r\n};\r\n\r\nexport default compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(NodeSettingsForm);\r\n","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {\r\n getClearNodeCatalogMemoryCacheUrl,\r\n getDataflowsCacheListUrl,\r\n getDataflowsCacheUpdateUrl,\r\n getDataflowsClearAllCacheUrl,\r\n getDataflowsClearCacheUrl,\r\n getDataflowsCreateCacheUrl\r\n} from \"../../serverApi/urls\";\r\n\r\nexport const DATAFLOW_CACHE_FETCH = \"cache/fetch\";\r\nexport const DATAFLOW_CACHE_CLEAR = \"cache/clear\";\r\nexport const DATAFLOW_CACHE_UPDATE = \"cache/update\";\r\nexport const DATAFLOW_CACHE_CREATE = \"cache/create\";\r\nexport const DATAFLOW_CACHE_DELETE = \"cache/delete\";\r\nexport const DATAFLOW_CACHE_DELETE_ALL = \"cache/deleteAll\";\r\nexport const DATAFLOW_CACHE_DELETE_CATALOG = \"cache/deleteCatalog\";\r\n\r\n\r\nexport const fetchDataflowCache = (nodeId: number) => initRequest(\r\n DATAFLOW_CACHE_FETCH,\r\n getDataflowsCacheListUrl(nodeId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.cacheSettings.messages.fetchDataflowCache.start\")\r\n })\r\n);\r\n\r\nexport const updateDataflowCache = (nodeId: number, cacheId: string, ttl: number) => initRequest(\r\n DATAFLOW_CACHE_UPDATE,\r\n getDataflowsCacheUpdateUrl(nodeId, cacheId),\r\n RequestMethod.PUT,\r\n {ttl: ttl},\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.cacheSettings.messages.updateDataflowCache.start\")\r\n }),\r\n {\r\n ttl: ttl,\r\n nodeId: nodeId,\r\n cacheId: cacheId\r\n }\r\n);\r\n\r\nexport const createDataflowCache = (nodeId: number, data:any) => initRequest(\r\n DATAFLOW_CACHE_CREATE,\r\n getDataflowsCreateCacheUrl(nodeId),\r\n RequestMethod.POST,\r\n data,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.cacheSettings.messages.createDataflowCache.start\")\r\n }),\r\n {\r\n oldData: data,\r\n }\r\n);\r\n\r\nexport const deleteDataflowCache = (nodeId: number, cacheId: string) => initRequest(\r\n DATAFLOW_CACHE_DELETE,\r\n getDataflowsClearCacheUrl(nodeId, cacheId),\r\n RequestMethod.POST,\r\n {},\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.cacheSettings.messages.deleteDataflowCache.start\")\r\n }),\r\n {\r\n nodeId: nodeId,\r\n cacheId: cacheId\r\n }\r\n);\r\n\r\nexport const clearDataflowCache = () => ({\r\n type: DATAFLOW_CACHE_CLEAR\r\n});\r\n\r\nexport const deleteAllDataflowCache = (nodeId: number) => initRequest(\r\n DATAFLOW_CACHE_DELETE_ALL,\r\n getDataflowsClearAllCacheUrl(nodeId),\r\n RequestMethod.POST,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.cacheSettings.messages.deleteAllDataflowCache.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n);\r\n\r\nexport const deleteCatalogCache = (nodeId: number) => initRequest(\r\n DATAFLOW_CACHE_DELETE_CATALOG,\r\n getClearNodeCatalogMemoryCacheUrl(nodeId),\r\n RequestMethod.POST,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.cacheSettings.messages.deleteCatalogCache.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n);\r\n","import React, {forwardRef, useEffect, useImperativeHandle, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {\r\n clearDataflowCache,\r\n createDataflowCache,\r\n deleteAllDataflowCache,\r\n deleteCatalogCache,\r\n deleteDataflowCache,\r\n fetchDataflowCache,\r\n updateDataflowCache\r\n} from \"../../../../state/cache/cacheActions\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport {Checkbox, withStyles, withTheme} from \"@material-ui/core\";\r\nimport FormControlLabel from \"@material-ui/core/FormControlLabel\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../../../custom-material-table\";\r\nimport {isValidIntegerInInclusiveRange} from \"../../../../utils/validator\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n height: 440\r\n },\r\n field: {\r\n marginTop: theme.spacing(3)\r\n },\r\n paper: {\r\n marginTop: theme.spacing(2),\r\n padding: theme.spacing(3)\r\n },\r\n tabContent: {\r\n overflowY: \"auto\",\r\n overflowX: \"hidden\",\r\n height: \"calc(100% - 56px)\",\r\n marginTop: 8,\r\n padding: \"0 4px\"\r\n },\r\n title: {\r\n fontSize: 16\r\n }\r\n});\r\n\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.cacheConfig\r\n});\r\n\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchCache: nodeId => dispatch(fetchDataflowCache(nodeId)),\r\n clearCache: () => dispatch(clearDataflowCache()),\r\n updateCache: (nodeId, cacheId, ttl) => dispatch(updateDataflowCache(nodeId, cacheId, ttl)),\r\n createCache: (nodeId, data) => dispatch(createDataflowCache(nodeId, data)),\r\n deleteFromCache: (nodeId, cacheId) => dispatch(deleteDataflowCache(nodeId, cacheId)),\r\n deleteAllFromCache: (nodeId) => dispatch(deleteAllDataflowCache(nodeId)),\r\n deleteCatalogCache: (nodeId) => dispatch(deleteCatalogCache(nodeId))\r\n});\r\n\r\n\r\nconst SECONDS_PER_DAY = 86400;\r\nconst SECONDS_PER_HOUR = 3600;\r\n\r\n\r\n/**\r\n * Convert seconds to HH:MM:SS\r\n * If seconds exceeds 24 hours, hours will be greater than 24 (30:05:10)\r\n *\r\n * @param {number} totalSeconds\r\n * @param {function} t\r\n * @returns {string}\r\n */\r\nconst secondsToHms = (totalSeconds, t) => {\r\n\r\n if (totalSeconds < 0) {\r\n return t(\"scenes.nodeSettings.cacheSettings.alwaysValid\");\r\n\r\n } else if (totalSeconds === 0) {\r\n return t(\"scenes.nodeSettings.cacheSettings.disabled\");\r\n\r\n } else {\r\n var days = Math.floor(totalSeconds / SECONDS_PER_DAY);\r\n var hours = Math.floor((totalSeconds - (days * SECONDS_PER_DAY)) / SECONDS_PER_HOUR);\r\n var minutes = Math.floor((totalSeconds - (days * SECONDS_PER_DAY) - (hours * SECONDS_PER_HOUR)) / 60);\r\n var seconds = totalSeconds - (days * SECONDS_PER_DAY) - (hours * SECONDS_PER_HOUR) - (minutes * 60);\r\n\r\n // round seconds\r\n seconds = Math.round(seconds * 100) / 100\r\n\r\n return wellFormattedTimeString(days, hours, minutes, seconds);\r\n }\r\n};\r\n\r\nconst wellFormattedTimeString = (days, hours, mins, sec) => {\r\n var result = \"\";\r\n result += (days > 0 ? days + \"d \" : \"\"); // hide days if 0\r\n result += (hours < 10 ? \" \" + hours : hours) + \"h \";\r\n result += (mins < 10 ? \" \" + mins : mins) + \"m \";\r\n\r\n if (days === 0) { // truncate if days is greater than zero\r\n result += (sec < 10 ? \" \" + sec : sec) + \"s\";\r\n }\r\n\r\n return result;\r\n}\r\n\r\nconst CacheSettingsForm = ({\r\n classes,\r\n config,\r\n nodeId,\r\n fetchCache,\r\n createCache,\r\n updateCache,\r\n clearCache,\r\n deleteFromCache,\r\n deleteAllFromCache,\r\n deleteCatalogCache\r\n }, ref) => {\r\n//const CacheSettingsForm = compose(withStyles(styles), forwardRef)(({classes, config, nodeId, fetchCache, updateCache, clearCache, deleteFromCache}, ref) => {\r\n\r\n const [needConfig, setNeedConfig] = useState(nodeId !== null && (!config || config.length === 0));\r\n const [hideEmptyDataflowCache, setEmptyDataflowCacheHidden] = useState(true);\r\n const [emptyRowsCounter, setEmptyRowsCounter] = useState(0);\r\n const [rowsCounter, setRowsCounter] = useState(0);\r\n const {t} = useTranslation();\r\n\r\n useEffect(() => {\r\n\r\n if (!config || config.length === 0) {\r\n setRowsCounter(0);\r\n setEmptyRowsCounter(0);\r\n return;\r\n }\r\n setRowsCounter(config.length);\r\n setEmptyRowsCounter(config.filter(val => val?.cacheSize === 0).length);\r\n }, [config]);\r\n\r\n useEffect(() => {\r\n if (needConfig) {\r\n setNeedConfig(false);\r\n fetchCache(nodeId);\r\n }\r\n\r\n\r\n }, [config, fetchCache, nodeId, needConfig, setNeedConfig]);\r\n /*\r\n const {register, errors, handleSubmit, watch, setValue} = useForm({\r\n defaultValues: {\r\n ...config\r\n }\r\n });\r\n */\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n f();\r\n },\r\n cancel(f) {\r\n clearCache();\r\n f();\r\n }\r\n }));\r\n\r\n\r\n return (\r\n\r\n \r\n \r\n \r\n\r\n \r\n\r\n \r\n\r\n\r\n \r\n \r\n \r\n \r\n \r\n {/* \r\n \r\n \r\n \r\n \r\n */}\r\n \r\n \r\n\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {/**/}\r\n {/* */}\r\n {/* */}\r\n {/* */}\r\n {/**/}\r\n \r\n \r\n \r\n \r\n setEmptyDataflowCacheHidden(value)}\r\n />\r\n }\r\n />\r\n {/**/}\r\n {/* { (!hideEmptyDataflowCache? \"Hide\" : \"Show\") + \" cache entries which size is 0 Kb.\" }*/}\r\n {/**/}\r\n \r\n \r\n \r\n \r\n secondsToHms(rowData.ttl, t)\r\n },\r\n {\r\n title: t(\"scenes.nodeSettings.cacheSettings.table.dataflowFiles\"),\r\n field: \"cachedDataflow\",\r\n type: \"numeric\",\r\n editable: 'never'\r\n },\r\n {\r\n title: t(\"scenes.nodeSettings.cacheSettings.table.dataflowSize\"),\r\n field: \"cacheSize\",\r\n type: \"numeric\",\r\n editable: 'never',\r\n render: rowData => rowData.cacheSize + \" Kb\"\r\n },\r\n {\r\n title: t(\"scenes.nodeSettings.cacheSettings.table.dataflowAccess\"),\r\n field: \"cachedDataAccess\",\r\n type: \"numeric\",\r\n editable: 'never'\r\n }\r\n\r\n ]}\r\n data={config?.filter(val => !hideEmptyDataflowCache || val.cacheSize > 0) || []}\r\n editable={{\r\n onRowUpdate: (newData, oldData) =>\r\n new Promise((resolve, reject) => {\r\n if ((newData.ttl || \"\").length > 0 && !isValidIntegerInInclusiveRange(newData.ttl, -1)) { // invalid ttl\r\n window.error.show(t(\"scenes.nodeSettings.cacheSettings.invalidTtl.label\"));\r\n reject();\r\n return;\r\n }\r\n\r\n if (newData.ttl === oldData.ttl) { // no update is needed here\r\n resolve();\r\n return;\r\n }\r\n\r\n const dataUpdate = [...config];\r\n const index = oldData.tableData.id;\r\n dataUpdate[index] = newData;\r\n\r\n if (!newData.id || newData.id === '00000000-0000-0000-0000-000000000000') {\r\n createCache(nodeId, newData);\r\n } else {\r\n updateCache(nodeId, newData.id, newData.ttl)\r\n }\r\n\r\n resolve();\r\n }),\r\n onRowDelete: oldData =>\r\n new Promise((resolve, reject) => {\r\n const dataDelete = [...config];\r\n const index = oldData.tableData.id;\r\n dataDelete.splice(index, 1);\r\n\r\n //data does not exists. no need to make a server call\r\n if (!oldData.id || oldData.id === '00000000-0000-0000-0000-000000000000') {\r\n resolve();\r\n return;\r\n }\r\n\r\n deleteFromCache(nodeId, oldData.id)\r\n //setCacheConfig([...dataDelete]);\r\n\r\n resolve();\r\n }),\r\n }}\r\n /*actions={[\r\n {\r\n icon: EditIcon,\r\n tooltip: 'Edit node',\r\n onClick: (_, {id}) => {window.notImplemented.show();}\r\n },\r\n {\r\n icon: DeleteIcon,\r\n tooltip: 'Delete node',\r\n onClick: (_, {id}) => {window.notImplemented.show();}\r\n }]}\r\n */\r\n options={{\r\n actionsColumnIndex: -1,\r\n //maxBodyHeight: 400\r\n }}\r\n localization={{\r\n body: {\r\n editRow: {\r\n deleteText: t(\"scenes.nodesSettings.cacheSettings.modals.deleteDataflowCache.title\")\r\n },\r\n editTooltip: t(\"scenes.nodeSettings.cacheSettings.table.actions.editRow\"),\r\n deleteTooltip: t(\"scenes.nodeSettings.cacheSettings.table.actions.deleteRow\")\r\n }\r\n }}\r\n />\r\n \r\n\r\n \r\n\r\n \r\n \r\n \r\n\r\n\r\n );\r\n};\r\n\r\nexport default compose(withStyles(styles), withTheme, compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}),\r\n forwardRef))(CacheSettingsForm);\r\n","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {getDeleteTemplateUrl, getNodeTemplatesUrl} from \"../../serverApi/urls\";\r\n\r\nexport const NODE_TEMPLATES_CONFIG_FETCH = \"nodeTemplatesConfig/fetch\";\r\nexport const NODE_TEMPLATES_CONFIG_CLEAR = \"nodeTemplatesConfig/clear\";\r\nexport const NODE_TEMPLATES_CONFIG_TEMPLATE_DELETE = \"nodeTemplatesConfig/deleteTemplate\";\r\n\r\nexport const fetchNodeTemplatesConfig = (nodeId: number) => initRequest(\r\n NODE_TEMPLATES_CONFIG_FETCH,\r\n getNodeTemplatesUrl(nodeId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.templatesSettings.fetchConfig.start\")\r\n })\r\n);\r\n\r\nexport const clearNodeTemplatesConfig = () => ({\r\n type: NODE_TEMPLATES_CONFIG_CLEAR\r\n});\r\n\r\nexport const deleteNodeTemplatesConfigTemplate = (nodeId: number, id: number) => initRequest(\r\n NODE_TEMPLATES_CONFIG_TEMPLATE_DELETE,\r\n getDeleteTemplateUrl(nodeId, id),\r\n RequestMethod.DELETE,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.templatesSettings.deleteTemplate.start\")\r\n }),\r\n {\r\n nodeId\r\n }\r\n);","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../../../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {connect} from \"react-redux\";\r\nimport {compose} from \"redux\";\r\nimport {Visibility} from \"@material-ui/icons\";\r\nimport {\r\n clearNodeTemplatesConfig,\r\n deleteNodeTemplatesConfigTemplate,\r\n fetchNodeTemplatesConfig\r\n} from \"../../../../state/noteTemplatesConfig/nodeTemplatesConfigActions\";\r\nimport {goToDataset} from \"../../../../links\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../../../custom-material-table\";\r\nimport {getI18nObjCustomFilterAndSearch, localizeI18nObj} from \"../../../../utils/i18n\";\r\n\r\nconst styles = theme => ({\r\n tableToolbar: {\r\n marginBottom: theme.spacing(1)\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages,\r\n templates: state.nodeTemplatesConfig.templates\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchTemplates: nodeId => dispatch(fetchNodeTemplatesConfig(nodeId)),\r\n deleteTemplate: (nodeId, id) => dispatch(deleteNodeTemplatesConfigTemplate(nodeId, id)),\r\n clearTemplates: () => dispatch(clearNodeTemplatesConfig())\r\n});\r\n\r\nconst TemplatesSettingsForm = ({\r\n classes,\r\n defaultLanguage,\r\n languages,\r\n nodes,\r\n nodeId,\r\n defaultNodeOpen,\r\n templates,\r\n fetchTemplates,\r\n deleteTemplate,\r\n clearTemplates,\r\n onTemplatesClose\r\n }, ref) => {\r\n\r\n const [needTemplates, setNeedTemplates] = useState(true);\r\n\r\n const {t} = useTranslation();\r\n\r\n useEffect(() => {\r\n\r\n if (needTemplates) {\r\n setNeedTemplates(false);\r\n fetchTemplates(nodeId);\r\n }\r\n }, [templates, needTemplates, setNeedTemplates, fetchTemplates, nodeId]);\r\n\r\n useImperativeHandle(ref, () => ({\r\n cancel(f) {\r\n clearTemplates();\r\n f();\r\n }\r\n }));\r\n\r\n const [deleteTemplateId, setDeleteTemplateId] = useState(null);\r\n\r\n return templates && (\r\n \r\n localizeI18nObj(title, defaultLanguage, languages),\r\n customFilterAndSearch: getI18nObjCustomFilterAndSearch(defaultLanguage, languages)\r\n }\r\n ]}\r\n data={(templates || []).filter(({nodeId}) => nodes.find(node => node.nodeId === nodeId))}\r\n actions={[\r\n {\r\n icon: Visibility,\r\n tooltip: t(\"scenes.nodeSettings.templatesSettings.table.actions.viewData\"),\r\n onClick: (_, {nodeId, datasetId}) => {\r\n const nodeCode = nodes.find(node => node.nodeId === nodeId).code.toLowerCase();\r\n return (window.location.href.toLowerCase().includes(nodeCode) && window.location.href.toLowerCase().includes(datasetId.toLowerCase()))\r\n ? onTemplatesClose()\r\n : goToDataset(nodeCode, [], datasetId)\r\n }\r\n\r\n },\r\n {\r\n icon: DeleteIcon,\r\n tooltip: t(\"scenes.nodeSettings.templatesSettings.table.actions.deleteTemplate\"),\r\n onClick: (_, {viewTemplateId}) => setDeleteTemplateId(viewTemplateId)\r\n }\r\n ]}\r\n options={{\r\n actionsColumnIndex: 3\r\n }}\r\n />\r\n\r\n \r\n setDeleteTemplateId(null)}>\r\n {t(\"scenes.nodeSettings.templatesSettings.modals.deleteTemplate.title\")}\r\n \r\n \r\n {t(\"scenes.nodeSettings.templatesSettings.modals.deleteTemplate.content\")}\r\n \r\n \r\n setDeleteTemplateId(null)}\r\n >\r\n {t(\"commons.confirm.cancel\")}\r\n \r\n {\r\n deleteTemplate(nodeId, deleteTemplateId);\r\n setDeleteTemplateId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n \r\n \r\n \r\n );\r\n};\r\n\r\nexport default compose(withStyles(styles), connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(TemplatesSettingsForm);","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useState} from 'react';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {\r\n clearNodePermissionsConfig,\r\n fetchNodePermissionsConfig,\r\n sendNodePermissionsConfig\r\n} from \"../../../../state/nodePermissionsConfig/nodePermissionsConfigActions\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport {useForm} from \"react-hook-form\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../../../custom-material-table\";\r\n\r\nconst styles = theme => ({\r\n tableToolbar: {\r\n marginBottom: theme.spacing(1)\r\n },\r\n buttonAction: {\r\n ...theme.typography.button\r\n }\r\n});\r\n\r\nconst PERMISSIONS = [\r\n \"ManageCache\",\r\n \"ManageTemplate\",\r\n \"ManageConfig\"\r\n];\r\n\r\nconst getPermissionsTranslations = t => ({\r\n ManageCache: t(\"scenes.nodeSettings.permissions.table.columns.manageCache\"),\r\n ManageTemplate: t(\"scenes.nodeSettings.permissions.table.columns.manageTemplate\"),\r\n ManageConfig: t(\"scenes.nodeSettings.permissions.table.columns.manageConfig\")\r\n});\r\n\r\nconst Form = compose(withStyles(styles), forwardRef)(({classes, config, nodeId, onSubmit, onCancel}, ref) => {\r\n\r\n const {register, handleSubmit, watch, setValue} = useForm({\r\n defaultValues: {\r\n config: config?.map((user, index) => {\r\n let res = {...user};\r\n PERMISSIONS.forEach(p => {\r\n res[p] = config[index].permission.includes(`${p}_SingleNode_${nodeId}`) === true;\r\n });\r\n return res;\r\n })\r\n }\r\n });\r\n\r\n const {t} = useTranslation();\r\n\r\n useEffect(() => {\r\n if (config) {\r\n config.forEach((user, index) =>\r\n PERMISSIONS.forEach(p =>\r\n register({name: `config[${index}].${p}`})))\r\n }\r\n }, [register, config]);\r\n\r\n useImperativeHandle(ref, () => ({\r\n submit(f) {\r\n handleSubmit(val => {\r\n\r\n const data = val.config.map((userVal, index) => {\r\n let res = {\r\n userId: config[index].userId,\r\n nodePermissions: []\r\n };\r\n PERMISSIONS.forEach(p => {\r\n if (userVal[p] === true) {\r\n res.nodePermissions.push(p);\r\n }\r\n });\r\n res.tableData = undefined;\r\n return res;\r\n });\r\n\r\n onSubmit(nodeId, data);\r\n f(data);\r\n })();\r\n },\r\n cancel(f) {\r\n onCancel();\r\n f();\r\n }\r\n }));\r\n\r\n return config && (\r\n \r\n ({\r\n title: getPermissionsTranslations(t)[p],\r\n render: ({tableData}) =>\r\n \r\n \r\n setValue(`config[${tableData.id}].${p}`, value)}\r\n />\r\n \r\n \r\n }))\r\n ]}\r\n data={config}\r\n />\r\n \r\n );\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.nodePermissionsConfig.permissions\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchConfig: nodeId => dispatch(fetchNodePermissionsConfig(nodeId)),\r\n sendConfig: (nodeId, config) => dispatch(sendNodePermissionsConfig(nodeId, config)),\r\n clearConfig: () => dispatch(clearNodePermissionsConfig())\r\n});\r\n\r\nconst PermissionsSettingsForm = ({config, nodeId, fetchConfig, sendConfig, clearConfig}, ref) => {\r\n\r\n const [needConfig, setNeedConfig] = useState(nodeId !== null);\r\n\r\n useEffect(() => {\r\n\r\n if (needConfig) {\r\n setNeedConfig(false);\r\n fetchConfig(nodeId);\r\n }\r\n }, [config, needConfig, setNeedConfig, fetchConfig, nodeId]);\r\n\r\n return ((nodeId === null || config) && (\r\n \r\n ));\r\n};\r\n\r\n\r\nexport default compose(withStyles(styles), connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(PermissionsSettingsForm);","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {getNodePermissionsConfigGetUrl, getNodePermissionsConfigPutUrl} from \"../../serverApi/urls\";\r\n\r\nexport const NODE_PERMISSIONS_CONFIG_FETCH = \"nodePermissionsConfig/fetch\";\r\nexport const NODE_PERMISSIONS_CONFIG_CLEAR = \"nodePermissionsConfig/clear\";\r\nexport const NODE_PERMISSIONS_CONFIG_SEND = \"nodePermissionsConfig/send\";\r\n\r\nexport const fetchNodePermissionsConfig = (nodeId: number) => initRequest(\r\n NODE_PERMISSIONS_CONFIG_FETCH,\r\n getNodePermissionsConfigGetUrl(nodeId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.permissionsSettings.fetchConfig.start\")\r\n })\r\n);\r\n\r\nexport const sendNodePermissionsConfig = (nodeId: number, config: any) => initRequest(\r\n NODE_PERMISSIONS_CONFIG_SEND,\r\n getNodePermissionsConfigPutUrl(nodeId),\r\n RequestMethod.PUT,\r\n config,\r\n t => ({\r\n onStart: t(\"scenes.nodesSettings.permissionsSettings.sendConfig.start\")\r\n })\r\n);\r\n\r\nexport const clearNodePermissionsConfig = () => ({\r\n type: NODE_PERMISSIONS_CONFIG_CLEAR\r\n});\r\n","import React, {forwardRef} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport DashboardsManager from \"../../../dashboards-manager\";\r\nimport {\r\n addNodesConfigDashboardsNodeDashboard,\r\n clearAllNodesConfigNodeDashboards,\r\n clearNodesConfigNodeDashboards,\r\n fetchAllNodeConfigDashboards,\r\n fetchNodesConfigNodeDashboards,\r\n removeNodesConfigDashboardsNodeDashboard,\r\n sendNodesConfigDashboardsNodeOrders\r\n} from \"../../../../state/nodesConfig/nodesConfigActions\";\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.hubConfig.hub,\r\n user: state.user,\r\n dashboards: state.nodesConfig.nodeDashboards,\r\n allDashboards: state.nodesConfig.allDashboards\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchDashboards: nodeId => dispatch(fetchNodesConfigNodeDashboards(nodeId)),\r\n fetchAllDashboards: () => dispatch(fetchAllNodeConfigDashboards()),\r\n clearDashboards: () => dispatch(clearNodesConfigNodeDashboards()),\r\n clearAllDashboards: () => dispatch(clearAllNodesConfigNodeDashboards()),\r\n addDashboard: (nodeId, dashboardId) => dispatch(addNodesConfigDashboardsNodeDashboard(nodeId, dashboardId)),\r\n removeDashboard: (nodeId, dashboardId) => dispatch(removeNodesConfigDashboardsNodeDashboard(nodeId, dashboardId)),\r\n sendDashboardsOrders: (nodeId, dashboardsIds) => dispatch(sendNodesConfigDashboardsNodeOrders(nodeId, dashboardsIds))\r\n});\r\n\r\nconst DashboardsSettingsForm = ({\r\n dashboards,\r\n allDashboards,\r\n fetchDashboards,\r\n fetchAllDashboards,\r\n clearDashboards,\r\n clearAllDashboards,\r\n addDashboard,\r\n removeDashboard,\r\n sendDashboardsOrders,\r\n nodeId\r\n }, ref) =>\r\n fetchDashboards(nodeId)}\r\n fetchAllDashboards={fetchAllDashboards}\r\n clearDashboards={clearDashboards}\r\n clearAllDashboards={clearAllDashboards}\r\n addDashboard={dashboardId => addDashboard(nodeId, dashboardId)}\r\n removeDashboard={dashboardId => removeDashboard(nodeId, dashboardId)}\r\n sendDashboardsOrders={dashboardsIds => sendDashboardsOrders(nodeId, dashboardsIds)}\r\n ref={ref}\r\n />;\r\n\r\nexport default compose(connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(DashboardsSettingsForm);","import React, {forwardRef, Fragment, useEffect, useImperativeHandle, useRef, useState} from 'react';\r\nimport NodeSettingsForm from \"./node-settings-form\";\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport {Box, withStyles} from \"@material-ui/core\";\r\nimport SettingsDialog from \"../../settings-dialog\";\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport ArrowDropUpIcon from '@material-ui/icons/ArrowDropUp';\r\nimport ArrowDropDownIcon from '@material-ui/icons/ArrowDropDown';\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {\r\n clearNodesConfigNodes,\r\n closeNodesConfig,\r\n deleteNodesConfigNode,\r\n fetchNodesConfigNodes,\r\n sendNodesConfigNodesOrder,\r\n setNodesConfigNodeId,\r\n setNodesConfigNodeVisibility\r\n} from \"../../../state/nodesConfig/nodesConfigActions\";\r\nimport {connect} from \"react-redux\";\r\nimport {compose} from \"redux\";\r\nimport CacheSettingsForm from \"./cache-setting-form/index\";\r\nimport TemplatesSettingsForm from \"./templates-settings-form\";\r\nimport {\r\n canCreateNode,\r\n canDeleteNodes,\r\n canDisplayCacheSettingForm,\r\n canDisplayPermissionsSettingsForm,\r\n canDisplayTemplatesSettingsForm,\r\n canEditNode,\r\n canManageNodeDashboards,\r\n canSortNodes\r\n} from \"../../../utils/user\";\r\nimport PermissionsSettingsForm from \"./permissions-settings-form\";\r\nimport PersonIcon from '@material-ui/icons/Person';\r\nimport DashboardIcon from \"@material-ui/icons/Dashboard\";\r\nimport DashboardsSettingsForm from \"./dashboards-settings-form\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../../custom-material-table\";\r\nimport {getI18nObjCustomFilterAndSearch, localizeI18nObj} from \"../../../utils/i18n\";\r\nimport \"./style.css\";\r\n\r\nconst styles = theme => ({\r\n tableToolbar: {\r\n marginBottom: theme.spacing(1)\r\n },\r\n buttonAction: {\r\n ...theme.typography.button\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.nodesConfig.nodes,\r\n isNodeVisible: state.nodesConfig.isNodeVisible,\r\n nodeId: state.nodesConfig.nodeId,\r\n user: state.user,\r\n language: state.app.language,\r\n languages: state.app.languages\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n setNodeVisibility: visible => dispatch(setNodesConfigNodeVisibility(visible)),\r\n setNodeId: nodeId => dispatch(setNodesConfigNodeId(nodeId)),\r\n fetchConfig: () => dispatch(fetchNodesConfigNodes()),\r\n sendOrders: orderedIds => dispatch(sendNodesConfigNodesOrder(orderedIds)),\r\n deleteNode: nodeId => dispatch(deleteNodesConfigNode(nodeId)),\r\n clearConfig: () => dispatch(clearNodesConfigNodes()),\r\n onClose: () => dispatch(closeNodesConfig())\r\n});\r\n\r\nconst NodesSettingsForm = ({\r\n classes,\r\n defaultNodeOpen,\r\n config,\r\n isNodeVisible,\r\n nodeId,\r\n setNodeVisibility,\r\n setNodeId,\r\n fetchConfig,\r\n sendOrders,\r\n deleteNode,\r\n clearConfig,\r\n nodes,\r\n user,\r\n onClose,\r\n language,\r\n languages,\r\n onNodesClose\r\n }, ref) => {\r\n\r\n const [needConfig, setNeedConfig] = useState(true);\r\n const {t} = useTranslation();\r\n\r\n useEffect(() => {\r\n\r\n if (needConfig) {\r\n setNeedConfig(false);\r\n fetchConfig();\r\n }\r\n }, [config, needConfig, setNeedConfig, fetchConfig]);\r\n\r\n useImperativeHandle(ref, () => ({\r\n cancel(f) {\r\n clearConfig();\r\n onClose();\r\n f();\r\n }\r\n }));\r\n\r\n const [nodeDeleteFormNodeId, setNodeDeleteFormNodeId] = useState(null);\r\n const [cacheFormNodeId, setCacheFormNodeId] = useState(null);\r\n const [isCacheFormVisible, setCacheFormVisibility] = useState(false);\r\n const [templatesNodeId, setTemplatesNodeId] = useState(null);\r\n const [permissionsNodeId, setPermissionsNodeId] = useState(null);\r\n const [dashboardsNodeId, setDashboardsNodeId] = useState(null);\r\n\r\n const nodeFormRef = useRef();\r\n const cacheFormRef = useRef();\r\n const templatesRef = useRef();\r\n const permissionsRef = useRef();\r\n const dashboardsRef = useRef();\r\n\r\n const allowedNodes = (config || []).filter(({nodeId}) =>\r\n canCreateNode(user) ||\r\n canSortNodes(user) ||\r\n canDisplayCacheSettingForm(user, nodeId) ||\r\n canDisplayTemplatesSettingsForm(user, nodeId) ||\r\n canDisplayPermissionsSettingsForm(user) ||\r\n canEditNode(user, nodeId) ||\r\n canDeleteNodes(user)\r\n );\r\n const orderedNodes = (allowedNodes || []).sort((a, b) => a.order - b.order)\r\n const orderedNodesIds = orderedNodes.map(({nodeId}) => nodeId);\r\n\r\n const moveUp = rowIndex =>\r\n sendOrders([\r\n ...orderedNodesIds.slice(0, rowIndex - 1),\r\n orderedNodesIds[rowIndex],\r\n orderedNodesIds[rowIndex - 1],\r\n ...orderedNodesIds.slice(rowIndex + 1)\r\n ]);\r\n\r\n const moveDown = rowIndex =>\r\n sendOrders([\r\n ...orderedNodesIds.slice(0, rowIndex),\r\n orderedNodesIds[rowIndex + 1],\r\n orderedNodesIds[rowIndex],\r\n ...orderedNodesIds.slice(rowIndex + 2)\r\n ]);\r\n\r\n return config && (\r\n \r\n \r\n }\r\n onClick={() => {\r\n setNodeId(null);\r\n setNodeVisibility(true);\r\n setCacheFormVisibility(false);\r\n }}\r\n >\r\n {t(\"scenes.nodesSettings.createNode\")}\r\n \r\n )\r\n : null\r\n }\r\n columns={[\r\n {\r\n field: \"code\",\r\n title: t(\"scenes.nodesSettings.table.columns.nodeCode\")\r\n },\r\n {\r\n field: \"title\",\r\n title: t(\"scenes.nodesSettings.table.columns.nodeName\"),\r\n render: ({title}) => localizeI18nObj(title, language, languages),\r\n customFilterAndSearch: getI18nObjCustomFilterAndSearch(language, languages)\r\n },\r\n {\r\n field: \"active\",\r\n title: t(\"scenes.nodesSettings.table.columns.isNodeActive.title\"),\r\n render: ({active}) =>\r\n active\r\n ? t(\"scenes.nodesSettings.table.columns.isNodeActive.values.true\")\r\n : t(\"scenes.nodesSettings.table.columns.isNodeActive.values.false\")\r\n },\r\n {\r\n field: \"default\",\r\n title: t(\"scenes.nodesSettings.table.columns.isNodeDefault.title\"),\r\n render: node =>\r\n node.default\r\n ? t(\"scenes.nodesSettings.table.columns.isNodeDefault.values.true\")\r\n : t(\"scenes.nodesSettings.table.columns.isNodeDefault.values.false\")\r\n }\r\n ]}\r\n data={orderedNodes}\r\n actions={[\r\n ({tableData}) =>\r\n canSortNodes(user)\r\n ? {\r\n icon: ArrowDropUpIcon,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.nodeOrderMoveUp\"),\r\n onClick: (_, {tableData}) => moveUp(tableData.id), // tableData.id is the rowIndex\r\n disabled: tableData.id === 0\r\n }\r\n : null,\r\n ({tableData}) =>\r\n canSortNodes(user)\r\n ? {\r\n icon: ArrowDropDownIcon,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.nodeOrderMoveDown\"),\r\n onClick: (_, {tableData}) => moveDown(tableData.id), // tableData.id is the rowIndex\r\n disabled: tableData.id === config.length - 1\r\n }\r\n : null,\r\n ({nodeId}) =>\r\n canDisplayCacheSettingForm(user, nodeId)\r\n ? {\r\n icon: () =>\r\n
    \r\n {t(\"scenes.nodesSettings.table.actions.nodeDataflowsCache.label\")}\r\n
    ,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.nodeDataflowsCache.tooltip\"),\r\n onClick: (_, {nodeId}) => {\r\n setCacheFormNodeId(nodeId);\r\n setNodeVisibility(false);\r\n setCacheFormVisibility(true);\r\n }\r\n }\r\n : null,\r\n ({nodeId}) =>\r\n canDisplayTemplatesSettingsForm(user, nodeId)\r\n ? {\r\n icon: () =>\r\n
    \r\n {t(\"scenes.nodesSettings.table.actions.nodeTemplates.label\")}\r\n
    ,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.nodeTemplates.tooltip\"),\r\n onClick: (_, {nodeId}) => {\r\n setTemplatesNodeId(nodeId);\r\n }\r\n }\r\n : null,\r\n () =>\r\n canDisplayPermissionsSettingsForm(user)\r\n ? {\r\n icon: PersonIcon,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.nodePermissions\"),\r\n onClick: (_, {nodeId}) => {\r\n setPermissionsNodeId(nodeId);\r\n }\r\n }\r\n : null,\r\n ({nodeId}) =>\r\n canManageNodeDashboards(user, nodeId)\r\n ? {\r\n icon: DashboardIcon,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.nodeDashboards\"),\r\n onClick: (_, {nodeId}) => {\r\n setDashboardsNodeId(nodeId);\r\n }\r\n }\r\n : null,\r\n ({nodeId}) =>\r\n canEditNode(user, nodeId)\r\n ? {\r\n icon: EditIcon,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.editNode\"),\r\n onClick: (_, {nodeId}) => {\r\n setNodeId(nodeId);\r\n setNodeVisibility(true);\r\n setCacheFormVisibility(false);\r\n }\r\n }\r\n : null,\r\n () =>\r\n canDeleteNodes(user)\r\n ? {\r\n icon: DeleteIcon,\r\n tooltip: t(\"scenes.nodesSettings.table.actions.deleteNode\"),\r\n onClick: (_, {nodeId}) => setNodeDeleteFormNodeId(nodeId)\r\n }\r\n : null\r\n ]}\r\n options={{\r\n actionsColumnIndex: 4\r\n }}\r\n />\r\n
    \r\n {\r\n if (nodeFormRef.current) {\r\n nodeFormRef.current.cancel(() => {\r\n setNodeVisibility(false);\r\n setNodeId(null);\r\n });\r\n } else {\r\n setNodeVisibility(false);\r\n setNodeId(null);\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (nodeFormRef.current) {\r\n nodeFormRef.current.submit(() => {\r\n // setNodeVisibility(false);\r\n // setNodeId(null);\r\n });\r\n } else {\r\n // setNodeVisibility(false);\r\n // setNodeId(null);\r\n }\r\n }}\r\n hasSubmit\r\n >\r\n \r\n\r\n \r\n\r\n node.nodeId === cacheFormNodeId)?.code})}\r\n open={isCacheFormVisible}\r\n onClose={() => {\r\n if (cacheFormRef.current) {\r\n cacheFormRef.current.cancel(() => {\r\n setCacheFormVisibility(false);\r\n setCacheFormNodeId(null);\r\n });\r\n } else {\r\n setCacheFormVisibility(false);\r\n setCacheFormNodeId(null);\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (cacheFormRef.current) {\r\n cacheFormRef.current.submit(() => {\r\n setCacheFormVisibility(false);\r\n setCacheFormNodeId(null);\r\n });\r\n } else {\r\n setCacheFormVisibility(false);\r\n setCacheFormNodeId(null);\r\n }\r\n }}\r\n false\r\n >\r\n \r\n \r\n\r\n node.nodeId === templatesNodeId)?.code})}\r\n open={templatesNodeId !== null}\r\n onClose={() => {\r\n if (templatesRef.current) {\r\n templatesRef.current.cancel(() => setTemplatesNodeId(null));\r\n } else {\r\n setTemplatesNodeId(null);\r\n }\r\n }}\r\n >\r\n {\r\n setTemplatesNodeId(null);\r\n onNodesClose();\r\n }}\r\n />\r\n \r\n\r\n node.nodeId === permissionsNodeId)?.code})}\r\n open={permissionsNodeId !== null}\r\n onClose={() => {\r\n if (permissionsRef.current) {\r\n permissionsRef.current.cancel(() => {\r\n setPermissionsNodeId(null);\r\n });\r\n } else {\r\n setPermissionsNodeId(null);\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (permissionsRef.current) {\r\n permissionsRef.current.submit(() => {\r\n setPermissionsNodeId(null);\r\n });\r\n } else {\r\n setPermissionsNodeId(null);\r\n }\r\n }}\r\n hasSubmit\r\n >\r\n \r\n \r\n\r\n node.nodeId === dashboardsNodeId)?.code})}\r\n open={dashboardsNodeId !== null}\r\n onClose={() => {\r\n if (dashboardsRef.current) {\r\n dashboardsRef.current.destroy(() => {\r\n setDashboardsNodeId(null);\r\n });\r\n } else {\r\n setDashboardsNodeId(null);\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (dashboardsRef.current) {\r\n dashboardsRef.current.destroy(() => {\r\n setDashboardsNodeId(null);\r\n });\r\n } else {\r\n setDashboardsNodeId(null);\r\n }\r\n }}\r\n >\r\n \r\n \r\n\r\n \r\n {\r\n setNodeDeleteFormNodeId(null);\r\n setCacheFormNodeId(null);\r\n }}\r\n >\r\n {t(\"scenes.nodesSettings.modals.nodeDelete.title\")}\r\n \r\n \r\n {t(\"scenes.nodesSettings.modals.nodeDelete.content\")}\r\n \r\n \r\n {\r\n setNodeDeleteFormNodeId(null);\r\n setCacheFormNodeId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.cancel\")}\r\n \r\n {\r\n deleteNode(nodeDeleteFormNodeId);\r\n setNodeDeleteFormNodeId(null);\r\n setCacheFormNodeId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default compose(withStyles(styles), connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}), forwardRef)(NodesSettingsForm);","import React, {forwardRef, useEffect, useImperativeHandle, useRef, useState} from 'react';\r\nimport EditIcon from '@material-ui/icons/Edit';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport SettingsDialog from \"../../settings-dialog\";\r\nimport AddIcon from '@material-ui/icons/Add';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {compose} from \"redux\";\r\nimport DeleteIcon from '@material-ui/icons/Delete';\r\nimport UserSettingsForm from \"./user-settings-form\";\r\nimport {connect} from \"react-redux\";\r\nimport {\r\n clearUsersConfigUsers,\r\n deleteUsersConfigUser,\r\n fetchUsersConfigUsers,\r\n hideUserConfigForm,\r\n showUserConfigForm\r\n} from \"../../../state/usersConfig/usersConfigActions\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport CustomMaterialTable from \"../../custom-material-table\";\r\nimport \"./style.css\";\r\nimport {localizeI18nObj} from \"../../../utils/i18n\";\r\n\r\nconst styles = theme => ({\r\n tableToolbar: {\r\n marginBottom: theme.spacing(1)\r\n },\r\n buttonAction: {\r\n ...theme.typography.button\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n config: state.usersConfig.users,\r\n userErrors: state.usersConfig.userErrors,\r\n userId: state.usersConfig.userId,\r\n appConfig: state.appConfig,\r\n languages: state.app.languages,\r\n language: state.app.language\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchConfig: () => dispatch(fetchUsersConfigUsers()),\r\n deleteUser: userId => dispatch(deleteUsersConfigUser(userId)),\r\n clearConfig: () => dispatch(clearUsersConfigUsers()),\r\n onUserFormShow: userId => dispatch(showUserConfigForm(userId)),\r\n onUserFormHide: () => dispatch(hideUserConfigForm())\r\n});\r\n\r\nconst UsersSettingsForm = ({\r\n classes,\r\n config,\r\n fetchConfig,\r\n deleteUser,\r\n clearConfig,\r\n users,\r\n userErrors,\r\n userId,\r\n onUserFormShow,\r\n onUserFormHide,\r\n appConfig,\r\n languages,\r\n language\r\n }, ref) => {\r\n\r\n const [needConfig, setNeedConfig] = useState(true);\r\n\r\n useEffect(() => {\r\n\r\n if (needConfig) {\r\n setNeedConfig(false);\r\n fetchConfig();\r\n }\r\n }, [config, needConfig, setNeedConfig, fetchConfig]);\r\n\r\n useImperativeHandle(ref, () => ({\r\n cancel(f) {\r\n clearConfig();\r\n f();\r\n }\r\n }));\r\n\r\n const [userDeleteFormUserId, setUserDeleteFormUserId] = useState(null);\r\n\r\n const userFormRef = useRef();\r\n\r\n const {t} = useTranslation();\r\n\r\n return config && (\r\n
    \r\n }\r\n onClick={() => onUserFormShow(-1)}\r\n >\r\n {t(\"scenes.usersSettings.createUser\")}\r\n \r\n }\r\n columns={[\r\n {field: \"firstName\", title: t(\"scenes.usersSettings.table.columns.userFirstName\")},\r\n {field: \"lastName\", title: t(\"scenes.usersSettings.table.columns.userLastName\")},\r\n {\r\n field: \"type\",\r\n title: t(\"scenes.usersSettings.table.columns.type\"),\r\n render: ({type}) => localizeI18nObj(appConfig?.user?.typeOptions?.find(({id}) => type === id)?.label, language, languages)\r\n },\r\n {field: \"organization\", title: t(\"scenes.usersSettings.table.columns.userOrganization\")},\r\n {field: \"email\", title: t(\"scenes.usersSettings.table.columns.userEmail\")},\r\n {\r\n field: \"isActive\",\r\n title: t(\"scenes.usersSettings.table.columns.isActive.title\"),\r\n render: ({isActive}) =>\r\n isActive\r\n ? t(\"scenes.usersSettings.table.columns.isActive.values.true\")\r\n : t(\"scenes.usersSettings.table.columns.isActive.values.false\")\r\n }\r\n ]}\r\n data={config}\r\n actions={[\r\n {\r\n icon: EditIcon,\r\n tooltip: t(\"scenes.usersSettings.table.actions.editUser\"),\r\n onClick: (_, {userId}) => {\r\n onUserFormShow(userId);\r\n }\r\n },\r\n {\r\n icon: DeleteIcon,\r\n tooltip: t(\"scenes.usersSettings.table.actions.deleteUser\"),\r\n onClick: (_, {userId}) => {\r\n setUserDeleteFormUserId(userId);\r\n }\r\n }\r\n ]}\r\n options={{\r\n actionsColumnIndex: 5\r\n }}\r\n />\r\n {\r\n if (userFormRef.current) {\r\n userFormRef.current.cancel(() => {\r\n onUserFormHide();\r\n });\r\n } else {\r\n onUserFormHide();\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (userFormRef.current) {\r\n userFormRef.current.submit(() => {\r\n });\r\n }\r\n }}\r\n hasSubmit\r\n >\r\n \r\n \r\n\r\n \r\n setUserDeleteFormUserId(null)}>\r\n {t(\"scenes.usersSettings.modals.deleteUser.title\")}\r\n \r\n \r\n {t(\"scenes.usersSettings.modals.deleteUser.content\")}\r\n \r\n \r\n setUserDeleteFormUserId(null)}\r\n >\r\n {t(\"commons.confirm.cancel\")}\r\n \r\n {\r\n deleteUser(userDeleteFormUserId);\r\n setUserDeleteFormUserId(null);\r\n }}\r\n >\r\n {t(\"commons.confirm.confirm\")}\r\n \r\n \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps, mapDispatchToProps, null, {forwardRef: true}),\r\n forwardRef\r\n)(UsersSettingsForm);","import React, {Fragment} from 'react';\r\nimport ButtonSelect from \"../button-select\";\r\nimport SettingsIcon from \"@material-ui/icons/Settings\";\r\nimport SettingsDialog from \"../settings-dialog\";\r\nimport AppSettingsForm from \"./app-settings-form\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport NodesSettingsForm from \"./nodes-settings-form\";\r\nimport {connect} from \"react-redux\";\r\nimport {compose} from \"redux\";\r\nimport {clearMemoryCache, downloadQueryLog} from \"./actions\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport Input from \"@material-ui/core/Input\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport UsersSettingsForm from \"./users-settings-form\";\r\nimport {canDisplayAppSettingsForm, canDisplayNodesSettingsForm, canDisplayUsersSettingsForm, canGetQueryLog} from \"../../utils/user\";\r\nimport {withTranslation} from \"react-i18next\";\r\n\r\nconst styles = theme => ({\r\n option: {\r\n width: \"100%\"\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n user: state.user\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n onLogDownload: limit => dispatch(downloadQueryLog(limit)),\r\n onCacheClear: () => dispatch(clearMemoryCache())\r\n});\r\n\r\nclass SettingsSelect extends React.Component {\r\n\r\n state = {\r\n isAppOpen: false,\r\n isNodesOpen: false,\r\n isUsersOpen: false,\r\n appSettingsRef: React.createRef(),\r\n nodesSettingsRef: React.createRef(),\r\n usersSettingsRef: React.createRef(),\r\n isLogDownloadOpen: false,\r\n logLimit: 5,\r\n };\r\n\r\n onAppOpen = () => this.setState({\r\n ...this.state,\r\n isAppOpen: true\r\n });\r\n\r\n onAppClose = showSnackbar => this.setState({\r\n ...this.state,\r\n isAppOpen: false,\r\n isAppSubmitSnackbarVisible: showSnackbar || false\r\n });\r\n\r\n onNodesOpen = () => this.setState({\r\n ...this.state,\r\n isNodesOpen: true\r\n });\r\n\r\n onNodesClose = () => this.setState({\r\n ...this.state,\r\n isNodesOpen: false\r\n });\r\n\r\n onUsersOpen = () => this.setState({\r\n ...this.state,\r\n isUsersOpen: true\r\n });\r\n\r\n onUsersClose = () => this.setState({\r\n ...this.state,\r\n isUsersOpen: false\r\n });\r\n\r\n onLogDownloadOpen = () => this.setState({\r\n ...this.state,\r\n isLogDownloadOpen: true\r\n });\r\n\r\n onLogDownloadClose = () => this.setState({\r\n ...this.state,\r\n isLogDownloadOpen: false,\r\n logLimit: 5\r\n });\r\n\r\n onLogLimitSet = logLimit => {\r\n if (!isNaN(logLimit)) {\r\n this.setState({\r\n ...this.state,\r\n logLimit: logLimit\r\n })\r\n }\r\n }\r\n\r\n render() {\r\n\r\n const {\r\n classes,\r\n onLogDownload,\r\n nodes,\r\n user,\r\n t\r\n } = this.props;\r\n\r\n const {\r\n isAppOpen,\r\n isNodesOpen,\r\n isUsersOpen,\r\n appSettingsRef,\r\n nodesSettingsRef,\r\n usersSettingsRef,\r\n isLogDownloadOpen,\r\n logLimit\r\n } = this.state;\r\n\r\n return (\r\n \r\n }\r\n ariaLabel={t(\"components.header.actions.settings.ariaLabel\")}\r\n tooltip={t(\"components.header.actions.settings.title\")}\r\n >\r\n {canDisplayAppSettingsForm(user) && (\r\n
    \r\n {t(\"components.header.settings.app\")}\r\n
    \r\n )}\r\n {canDisplayUsersSettingsForm(user) && (\r\n
    \r\n {t(\"components.header.settings.users\")}\r\n
    \r\n )}\r\n {canDisplayNodesSettingsForm(user) && (\r\n
    \r\n {t(\"components.header.settings.nodes\")}\r\n
    \r\n )}\r\n {canGetQueryLog(user) && (\r\n
    \r\n {t(\"components.header.settings.queriesLog\")}\r\n
    \r\n )}\r\n {/*{canClearServerCache(user) && (\r\n
    \r\n {t(\"components.header.settings.clearServerCache\")}\r\n
    \r\n )}*/}\r\n \r\n\r\n {\r\n if (appSettingsRef.current) {\r\n appSettingsRef.current.cancel(() => this.onAppClose());\r\n } else {\r\n this.onAppClose();\r\n }\r\n }}\r\n onSubmit={() => {\r\n if (appSettingsRef.current) {\r\n appSettingsRef.current.submit(() => {\r\n this.onAppClose();\r\n });\r\n } else {\r\n this.onAppClose();\r\n }\r\n }}\r\n hasSubmit\r\n >\r\n \r\n \r\n\r\n {\r\n if (nodesSettingsRef.current) {\r\n nodesSettingsRef.current.cancel(() => this.onNodesClose());\r\n } else {\r\n this.onNodesClose();\r\n }\r\n }}\r\n >\r\n \r\n \r\n\r\n {\r\n if (usersSettingsRef.current) {\r\n usersSettingsRef.current.cancel(() => this.onUsersClose());\r\n } else {\r\n this.onUsersClose();\r\n }\r\n }}\r\n >\r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n
    {t(\"components.header.settings.queriesLogModal.content\")}:
    \r\n
    \r\n \r\n this.onLogLimitSet(ev.target.value)}\r\n style={{width: \"100%\"}}\r\n />\r\n \r\n
    \r\n
    \r\n \r\n \r\n {\r\n this.onLogDownloadClose()\r\n onLogDownload(logLimit);\r\n }}\r\n color=\"primary\"\r\n >\r\n {t(\"commons.confirm.download\")}\r\n \r\n \r\n \r\n\r\n
    \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n connect(mapStateToProps, mapDispatchToProps),\r\n withStyles(styles),\r\n withTranslation()\r\n)(SettingsSelect);","import {initRequest, RequestMethod} from \"../../middlewares/request/requestActions\";\r\nimport {getClearMemoryCacheUrl, getQueryLog} from \"../../serverApi/urls\";\r\n\r\nexport const QUERY_LOG_DOWNLOAD = \"query/log/download\";\r\nexport const MEMORY_CACHE_CLEAR = \"memory/cache/clear\";\r\n\r\nexport const downloadQueryLog = limit => initRequest(\r\n QUERY_LOG_DOWNLOAD,\r\n getQueryLog(limit),\r\n RequestMethod.GET,\r\n null,\r\n null,\r\n {\r\n fileSave: {\r\n name: \"sdmx-query-log\",\r\n extension: \"txt\",\r\n type: \"text/plain;charset=utf-8\"\r\n },\r\n stringifyResponse: true\r\n }\r\n);\r\n\r\nexport const clearMemoryCache = () => initRequest(\r\n MEMORY_CACHE_CLEAR,\r\n getClearMemoryCacheUrl(),\r\n RequestMethod.POST,\r\n null,\r\n t => ({\r\n onStart: t(\"components.header.settings.clearServerCacheAction.messages.clear.start\")\r\n })\r\n);\r\n","import React from 'react';\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {useTranslation} from \"react-i18next\";\r\n\r\nimport Autocomplete from '@material-ui/lab/Autocomplete';\r\nimport ListSubheader from \"@material-ui/core/ListSubheader\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport {VariableSizeList} from \"react-window\";\r\nimport SearchIcon from \"@material-ui/icons/Search\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport InputAdornment from \"@material-ui/core/InputAdornment\";\r\n\r\n/* Based on https://material-ui.com/components/autocomplete/#virtualization */\r\n\r\nconst styles = theme => ({\r\n button: {\r\n borderRadius: theme.shape.borderRadius,\r\n backgroundColor: \"#f5f5f5\",\r\n borderColor: theme.palette.primary.main,\r\n borderWidth: 1,\r\n position: \"relative\",\r\n height: 35,\r\n },\r\n icon: {\r\n width: theme.spacing(6),\r\n height: 35,\r\n position: 'absolute',\r\n pointerEvents: 'none',\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'center',\r\n },\r\n inputRoot: {\r\n color: 'inherit',\r\n position: 'absolute',\r\n width: `calc(100% - ${theme.spacing(6)})`,\r\n left: theme.spacing(6)\r\n },\r\n inputInput: {\r\n padding: theme.spacing(1, 1, 1, 0),\r\n },\r\n listbox: {\r\n overflowX: \"hidden\",\r\n boxSizing: \"border-box\",\r\n \"& ul\": {\r\n padding: 0,\r\n margin: 0\r\n }\r\n }\r\n});\r\n\r\nconst LISTBOX_PADDING = 8; // px\r\n\r\nfunction renderRow(props) {\r\n const {data, index, style} = props;\r\n return React.cloneElement(data[index], {\r\n style: {\r\n ...style,\r\n top: style.top + LISTBOX_PADDING\r\n }\r\n });\r\n}\r\n\r\nconst OuterElementContext = React.createContext({});\r\n\r\nconst OuterElementType = React.forwardRef((props, ref) => {\r\n const outerProps = React.useContext(OuterElementContext);\r\n return
    ;\r\n});\r\n\r\nfunction useResetCache(data) {\r\n const ref = React.useRef(null);\r\n React.useEffect(() => {\r\n if (ref.current != null) {\r\n ref.current.resetAfterIndex(0, true);\r\n }\r\n }, [data]);\r\n return ref;\r\n}\r\n\r\n// Adapter for react-window\r\nconst ListboxComponent = React.forwardRef(function ListboxComponent(props, ref) {\r\n const {children, ...other} = props;\r\n const itemData = React.Children.toArray(children);\r\n const itemCount = itemData.length;\r\n const itemSize = 36;\r\n\r\n const getChildSize = (child) => {\r\n if (React.isValidElement(child) && child.type === ListSubheader) {\r\n return 48;\r\n }\r\n\r\n return itemSize;\r\n };\r\n\r\n const getHeight = () => {\r\n if (itemCount > 8) {\r\n return 8 * itemSize;\r\n }\r\n return itemData.map(getChildSize).reduce((a, b) => a + b, 0);\r\n };\r\n\r\n const gridRef = useResetCache(itemCount);\r\n\r\n return (\r\n
    \r\n \r\n getChildSize(itemData[index])}\r\n overscanCount={5}\r\n itemCount={itemCount}\r\n >\r\n {renderRow}\r\n \r\n \r\n
    \r\n );\r\n});\r\n\r\nconst AutocompleteSearchInput = ({classes, query = \"\", options, onSubmit}) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n return (\r\n
    \r\n \r\n {\r\n const searchText = state?.inputValue || \"\";\r\n const start = (option || \"\").toLowerCase().indexOf(searchText.toLowerCase());\r\n const end = start + searchText.length;\r\n\r\n return (\r\n \r\n \r\n {option.substr(0, start)}\r\n {option.substr(start, end - start)}\r\n {option.substr(end)}\r\n \r\n \r\n )\r\n }}\r\n onChange={(event, newValue) => {\r\n setTimeout(\r\n () => {\r\n onSubmit(newValue);\r\n },\r\n 1\r\n );\r\n }}\r\n renderInput={(params) => (\r\n \r\n \r\n \r\n }}\r\n />\r\n )}\r\n />\r\n
    \r\n );\r\n};\r\n\r\nexport default withStyles(styles)(AutocompleteSearchInput);","import React, {Fragment, useState} from 'react';\r\nimport {connect} from \"react-redux\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport {v4 as uuidv4} from 'uuid';\r\nimport IconButton from '@material-ui/core/IconButton';\r\nimport SearchIcon from \"@material-ui/icons/Search\";\r\nimport AutocompleteSearchInput from \"../autocomplete-search-input\";\r\nimport {getTrimmedStr} from \"../../utils/formatters\";\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\n\r\nimport {useTranslation} from \"react-i18next\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst SearchDialog = ({dialogTop, query, onSubmit, catalog}) => {\r\n\r\n const [uuid] = useState(uuidv4());\r\n const [isOpen, setIsOpen] = useState(false);\r\n\r\n const {t} = useTranslation();\r\n\r\n const datasets = Object.keys(catalog?.datasets || {}).map(key => catalog.datasets[key].title);\r\n const uncategorizedDatasets = (catalog?.uncategorizedDatasets || []).map(({title}) => title);\r\n\r\n return (\r\n \r\n \r\n setIsOpen(true)}\r\n aria-label={t(\"components.header.actions.search.ariaLabel\")}\r\n >\r\n \r\n \r\n \r\n setIsOpen(false)}\r\n onRendered={() => $(`#search-dialog__dialog__${uuid} input`).focus()}\r\n PaperProps={{\r\n style: {\r\n position: \"absolute\",\r\n top: dialogTop,\r\n height: 40\r\n }\r\n }}\r\n maxWidth={false}\r\n >\r\n
    \r\n {\r\n const trimmedValue = getTrimmedStr(value);\r\n if (trimmedValue.length > 0) {\r\n setIsOpen(false);\r\n onSubmit(trimmedValue);\r\n }\r\n }}\r\n options={datasets.concat(uncategorizedDatasets)}\r\n />\r\n
    \r\n \r\n
    \r\n );\r\n};\r\n\r\nexport default connect(state => ({catalog: state.catalog}))(SearchDialog);","import React from 'react';\r\nimport I18nInputAdornmentSelect from \"../i18n-input-adornment-select\";\r\nimport {connect} from \"react-redux\";\r\nimport {useLocation} from \"react-router\";\r\nimport {backupDatasetState} from \"../../state/dataset/datasetActions\";\r\nimport {useTranslation} from \"react-i18next\";\r\n\r\nconst mapStateToProps = state => ({\r\n language: state.app.language\r\n});\r\nconst mapDispatchToProps = dispatch => ({\r\n onDatasetBackup: () => dispatch(backupDatasetState())\r\n});\r\n\r\nconst AppLanguageSelect = ({language, onDatasetBackup}) => {\r\n\r\n const location = useLocation();\r\n const {t} = useTranslation();\r\n\r\n return (\r\n {\r\n if (val !== language) {\r\n onDatasetBackup();\r\n\r\n const url = location.pathname.includes(language)\r\n ? \"./#\" + location.pathname.replace(language, val) + location.search\r\n : `./#/${val}`;\r\n window.open(url, \"_self\");\r\n }\r\n }}\r\n ariaLabel={t(\"components.header.actions.appLanguage.ariaLabel\")}\r\n tooltip={t(\"components.header.actions.appLanguage.title\")}\r\n showAsIcon\r\n />\r\n );\r\n};\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(AppLanguageSelect);","import React from 'react';\r\nimport {connect} from \"react-redux\";\r\nimport ButtonSelect from \"../button-select\";\r\nimport AccessibilityNewIcon from '@material-ui/icons/AccessibilityNew';\r\nimport {useTranslation} from \"react-i18next\";\r\nimport Badge from \"@material-ui/core/Badge\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {compose} from \"redux\";\r\nimport CheckIcon from '@material-ui/icons/Check';\r\nimport {useLocation} from \"react-router\";\r\n\r\nconst styles = theme => ({\r\n badge: {\r\n padding: 0,\r\n width: 12,\r\n height: 12,\r\n minWidth: 0\r\n },\r\n badgeActive: {\r\n padding: 0,\r\n width: 12,\r\n height: 12,\r\n minWidth: 0,\r\n backgroundColor: theme.palette.success.main,\r\n },\r\n badgeIcon: {\r\n fontSize: 12\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n isA11y: state.app.isA11y\r\n});\r\n\r\nconst A11ySelect = ({classes, isA11y, getCustomA11yPath, getAdditionalA11yUrlParams}) => {\r\n\r\n const location = useLocation();\r\n const {t} = useTranslation();\r\n\r\n return (\r\n : undefined}\r\n classes={{\r\n badge: isA11y ? classes.badgeActive : classes.badge\r\n }}\r\n >\r\n \r\n \r\n }\r\n onChange={val => {\r\n\r\n if (val !== isA11y) {\r\n\r\n const params = new URLSearchParams(location.search);\r\n\r\n if (val) {\r\n params.set(\"accessible\", \"true\");\r\n } else {\r\n params.delete(\"accessible\")\r\n }\r\n\r\n if (getAdditionalA11yUrlParams) {\r\n const additionalA11yUrlParams = getAdditionalA11yUrlParams(val);\r\n if (additionalA11yUrlParams && Object.keys(additionalA11yUrlParams).length > 0) {\r\n Object.keys(additionalA11yUrlParams).forEach(key => params.set(key, additionalA11yUrlParams[key]));\r\n }\r\n }\r\n\r\n const paramsStr = params.toString();\r\n\r\n const path = getCustomA11yPath\r\n ? (getCustomA11yPath(val) || location.pathname)\r\n : location.pathname;\r\n\r\n window.open(\r\n \"./#\" + path + (paramsStr.length > 0 ? \"?\" : \"\") + paramsStr,\r\n \"_self\"\r\n );\r\n }\r\n }}\r\n ariaLabel={t(\"components.header.actions.a11y.ariaLabel\")}\r\n tooltip={t(\"components.header.actions.a11y.title\")}\r\n >\r\n {t(\"components.a11ySelect.disable\")}\r\n {t(\"components.a11ySelect.enable\")}\r\n \r\n );\r\n};\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n connect(mapStateToProps)\r\n)(A11ySelect);","import React from 'react'\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport {getTrimmedStr} from \"../../utils/formatters\";\r\n\r\nconst styles = theme => ({\r\n root: {},\r\n logoContainer: {\r\n height: 64,\r\n background: theme.palette.primary.main,\r\n padding: 16\r\n },\r\n logo: {\r\n height: 32,\r\n display: \"block\",\r\n margin: \"auto\"\r\n },\r\n nameContainer: {\r\n padding: \"24px 16px\"\r\n },\r\n textContainer: {\r\n padding: 8\r\n },\r\n versionContainer: {\r\n padding: 8\r\n },\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n baseURL: state.config.baseURL\r\n});\r\n\r\nconst AppInfo = ({\r\n t,\r\n classes,\r\n baseURL,\r\n hub\r\n }) =>\r\n \r\n {hub.headerLogoURL && (\r\n \r\n \"\"\r\n \r\n )}\r\n \r\n \r\n {hub.name}\r\n \r\n \r\n {getTrimmedStr(t(\"components.appInfo.content\")).length > 0 && (\r\n \r\n {t(\"components.appInfo.content\")}\r\n \r\n )}\r\n \r\n {t(\"components.appInfo.poweredBy\") + \": \"}Istat Data Browser v1.3.5.4\r\n \r\n ;\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n connect(mapStateToProps)\r\n)(AppInfo);","import {withStyles} from \"@material-ui/core\";\r\nimport AppBar from \"@material-ui/core/AppBar\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport MenuIcon from \"@material-ui/icons/Menu\";\r\nimport React, {Component} from \"react\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport UserSelect from \"../user-select\";\r\nimport Drawer from \"@material-ui/core/Drawer\";\r\nimport ChevronLeftIcon from \"@material-ui/icons/ChevronLeft\";\r\nimport ChevronRightIcon from \"@material-ui/icons/ChevronRight\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\nimport CategoriesTree from \"../categories-tree\";\r\nimport {withRouter} from \"react-router\";\r\nimport SettingsSelect from \"../settings-select\";\r\nimport SearchDialog from \"../search-dialog\";\r\nimport ButtonSelect from \"../button-select\";\r\nimport {getHomeInternalUrl, getNodeDashboardsInternalUrl, getNodeInternalUrl, goToDatasetsSearch, goToNode, goToNodeDashboards} from \"../../links\";\r\nimport HomeIcon from '@material-ui/icons/Home';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport DashboardIcon from '@material-ui/icons/Dashboard';\r\nimport {canClearServerCache, canDisplayAppSettingsForm, canDisplayNodesSettingsForm, canDisplayUsersSettingsForm, canGetQueryLog} from \"../../utils/user\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport AppLanguageSelect from \"../app-language-select\";\r\nimport A11ySelect from \"../a11y-select\";\r\nimport HelpIcon from '@material-ui/icons/Help';\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport AppInfo from \"../app-info\";\r\nimport CustomLink from \"../custom-link\";\r\nimport {Link} from 'react-router-dom';\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\nimport ExpandMoreIcon from '@material-ui/icons/ExpandMore';\r\nimport MuiAccordion from '@material-ui/core/Accordion';\r\nimport MuiAccordionSummary from '@material-ui/core/AccordionSummary';\r\nimport MuiAccordionDetails from '@material-ui/core/AccordionDetails';\r\nimport Tooltip from '@material-ui/core/Tooltip';\r\nimport MoreVertIcon from \"@material-ui/icons/MoreVert\";\r\nimport {areElementsOverlap} from \"../../utils/other\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst styles = theme => ({\r\n root: {\r\n position: \"fixed\",\r\n width: \"100%\",\r\n zIndex: theme.zIndex.appBar\r\n },\r\n firstRow: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n justifyContent: \"center\",\r\n minHeight: 64\r\n },\r\n firstRowContainer: {\r\n position: \"absolute\",\r\n padding: \"0 8px\"\r\n },\r\n firstRowLeftContainer: {\r\n left: 0\r\n },\r\n firstRowCenterContainer: {\r\n cursor: \"pointer\"\r\n },\r\n firstRowRightContainer: {\r\n right: 0\r\n },\r\n hiddenContainer: {\r\n visibility: \"hidden\"\r\n },\r\n secondRow: {\r\n display: \"flex\",\r\n justifyContent: \"center\",\r\n \"& $hubName\": {\r\n height: \"unset\",\r\n padding: 0,\r\n fontSize: 24\r\n }\r\n },\r\n thirdRow: {\r\n paddingLeft: 12\r\n },\r\n nodeSelector: {\r\n fontSize: 20,\r\n fontWeight: 500,\r\n textTransform: \"none\",\r\n whiteSpace: \"nowrap\",\r\n overflow: \"hidden\",\r\n textOverflow: \"ellipsis\"\r\n },\r\n hubLogo: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: 8,\r\n \"& img\": {\r\n height: 32,\r\n }\r\n },\r\n hubName: {\r\n height: 48,\r\n padding: 8,\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n whiteSpace: \"nowrap\",\r\n textOverflow: \"ellipsis\",\r\n overflow: \"hidden\"\r\n },\r\n hubNameLink: {\r\n fontSize: 20,\r\n fontWeight: 500,\r\n color: theme.palette.secondary.main,\r\n textDecoration: \"none\"\r\n },\r\n navigationDrawer: {\r\n width: 520,\r\n maxWidth: \"100%\"\r\n },\r\n navigationDrawerHeader: {\r\n display: 'flex',\r\n alignItems: 'center',\r\n justifyContent: 'space-between',\r\n padding: \"0 16px\"\r\n },\r\n navigationDrawerHeaderTitle: {\r\n fontSize: 20,\r\n fontWeight: 500,\r\n padding: \"16px 0\"\r\n },\r\n navigationDrawerDivider: {\r\n margin: \"0 8px 8px\"\r\n },\r\n navigationDrawerLink: {\r\n margin: \"1px 4px\",\r\n \"& div.custom-link--disabled\": {\r\n padding: \"4px 8px\"\r\n },\r\n \"& div.custom-link--enabled > a > div\": {\r\n padding: \"4px 8px\"\r\n }\r\n },\r\n toolbarDrawer: {\r\n overflow: \"hidden\",\r\n padding: 8\r\n },\r\n toolbarDrawerDivider: {\r\n width: \"100%\",\r\n margin: \"4px 0\"\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n baseURL: state.config.baseURL,\r\n enableHeaderAutoResponsiveness: state.appConfig?.enableHeaderAutoResponsiveness || false,\r\n user: state.user,\r\n isA11y: state.app.isA11y,\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages\r\n});\r\n\r\nconst Accordion = withStyles({\r\n root: {\r\n boxShadow: 'none',\r\n '&:not(:last-child)': {\r\n borderBottom: 0\r\n },\r\n '&:before': {\r\n display: 'none'\r\n },\r\n '&$expanded': {\r\n margin: 0,\r\n },\r\n },\r\n expanded: {},\r\n})(MuiAccordion);\r\n\r\nconst AccordionSummary = withStyles({\r\n root: {\r\n fontSize: 16,\r\n minHeight: 48,\r\n margin: \"0 4px\",\r\n padding: \"0 4px\",\r\n '&$expanded': {\r\n minHeight: 48\r\n },\r\n '&:hover': {\r\n backgroundColor: \"#f5f5f5\"\r\n },\r\n '&:focus': {\r\n outline: \"-webkit-focus-ring-color auto 1px\",\r\n outlineOffset: -1\r\n },\r\n '&:focus:hover': {\r\n backgroundColor: \"#f5f5f5\"\r\n },\r\n '&:focus:not(:hover)': {\r\n backgroundColor: \"#ffffff\"\r\n }\r\n },\r\n content: {\r\n margin: 12,\r\n '&$expanded': {\r\n margin: 12\r\n }\r\n },\r\n expanded: {},\r\n expandIcon: {\r\n transition: \"none\",\r\n margin: 0\r\n }\r\n})(MuiAccordionSummary);\r\n\r\nconst AccordionDetails = withStyles({\r\n root: {\r\n display: \"block\"\r\n }\r\n})(MuiAccordionDetails);\r\n\r\nconst NavigationDrawerButton = ({\r\n t,\r\n onNavigationDrawerOpen\r\n }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst NodeSelector = ({\r\n t,\r\n classes,\r\n isDefaultUniqueNode,\r\n node,\r\n nodes\r\n }) => {\r\n if (!isDefaultUniqueNode) {\r\n return (\r\n \r\n \r\n {node?.name || node?.code}\r\n \r\n }\r\n onChange={code => goToNode(code.toLowerCase())}\r\n tooltip={node?.name}\r\n buttonStyle={{maxWidth: \"100%\"}}\r\n ariaLabel={t(\"components.header.actions.nodeSelector.ariaLabel\")}\r\n >\r\n {nodes.sort((a, b) => a.order - b.order).map(({code, name}, i) =>\r\n \r\n {name || code}\r\n \r\n )}\r\n \r\n \r\n )\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nconst HubLogo = ({\r\n classes,\r\n hub,\r\n headerLogoTitle,\r\n headerLogoHref,\r\n baseURL,\r\n headerLogoAlt,\r\n handleStyle,\r\n headerLogoSmallURL,\r\n isCollapsed\r\n }) => {\r\n if ((!isCollapsed && hub.headerLogoURL) || (isCollapsed && headerLogoSmallURL)) {\r\n\r\n const img = (\r\n \r\n );\r\n\r\n return (\r\n \r\n \r\n {headerLogoHref.length > 0\r\n ? (\r\n \r\n \r\n {img}\r\n \r\n \r\n )\r\n : (\r\n \r\n \r\n {img}\r\n \r\n \r\n )}\r\n \r\n \r\n );\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nconst HubName = ({\r\n classes,\r\n hub\r\n }) => {\r\n if ((hub.name || \"\").length > 0) {\r\n return (\r\n \r\n \r\n \r\n {hub.name}\r\n \r\n \r\n \r\n )\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nconst SearchButton = ({\r\n noNode,\r\n query,\r\n node\r\n }) => {\r\n if (!noNode) {\r\n return (\r\n \r\n goToDatasetsSearch(node.code, value)}\r\n />\r\n \r\n )\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nconst LanguageButton = () => (\r\n \r\n \r\n \r\n);\r\n\r\nconst A11yButton = ({\r\n getAdditionalA11yUrlParams,\r\n getCustomA11yPath\r\n }) => (\r\n \r\n \r\n \r\n);\r\n\r\nconst DashboardButton = ({\r\n t,\r\n noNode,\r\n isA11y,\r\n node\r\n }) => {\r\n if (!noNode && !isA11y && node && node.dashboards && node.dashboards.length > 0) {\r\n return (\r\n \r\n \r\n goToNodeDashboards(node.code)}\r\n color=\"inherit\"\r\n aria-label={t(\"components.header.actions.dashboard.ariaLabel\")}\r\n >\r\n \r\n \r\n \r\n \r\n )\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nconst AdminSettingButton = ({\r\n user,\r\n defaultAppConfigOpen,\r\n defaultNodesConfigOpen,\r\n defaultUsersConfigOpen,\r\n defaultNodeConfigOpen,\r\n nodes\r\n }) => {\r\n if (\r\n canDisplayAppSettingsForm(user) ||\r\n canDisplayUsersSettingsForm(user) ||\r\n canDisplayNodesSettingsForm(user) ||\r\n canGetQueryLog(user) ||\r\n canClearServerCache(user)\r\n ) {\r\n return (\r\n \r\n \r\n \r\n )\r\n } else {\r\n return null;\r\n }\r\n};\r\n\r\nconst UserSettingsButton = ({\r\n nodes,\r\n disabled\r\n }) => (\r\n \r\n \r\n \r\n);\r\n\r\nconst InfoButton = ({\r\n t,\r\n onInfoOpen\r\n }) => (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n);\r\n\r\nconst isCategoriesExpandedDefault = true;\r\n\r\nclass NodeHeader extends Component {\r\n\r\n constructor(props) {\r\n super(props);\r\n\r\n const hubExtras = JSON.parse(props.hub.extras || \"{}\");\r\n\r\n this.state = {\r\n isNavigationDrawerOpen: props.defaultTreeOpen || false,\r\n isToolbarDrawerOpen: false,\r\n isInfoOpen: false,\r\n headerLogoSmallURL: hubExtras.HeaderLogoSmallURL || \"\",\r\n headerLogoAlt: localizeI18nObj(hubExtras.HeaderLogoAlt, props.defaultLanguage, props.languages) || \"\",\r\n headerLogoHref: hubExtras.HeaderLogoHref || \"\",\r\n headerLogoTitle: localizeI18nObj(hubExtras.headerLogoTitle, props.defaultLanguage, props.languages) || \"\",\r\n isCategoriesExpanded: isCategoriesExpandedDefault,\r\n isFirstRowCollapsed: false,\r\n isCenterContainerCollapsed: false\r\n };\r\n this.handleStyle = this.handleStyle.bind(this);\r\n this.handleCategoriesExpand = this.handleCategoriesExpand.bind(this);\r\n }\r\n\r\n handleStyle = () => {\r\n\r\n const isFirstRowCollapsed = this.props.enableHeaderAutoResponsiveness\r\n ? (\r\n areElementsOverlap(\"node-header__first-row__center-container\", \"node-header__first-row__left-container\") ||\r\n areElementsOverlap(\"node-header__first-row__center-container\", \"node-header__first-row__right-container\")\r\n )\r\n : window.innerWidth < 1024;\r\n\r\n const isCenterContainerCollapsed = this.props.enableHeaderAutoResponsiveness\r\n ? (\r\n areElementsOverlap(\"node-header__first-row__center-container\", \"node-header__first-row__left-container--collapsed\") ||\r\n areElementsOverlap(\"node-header__first-row__center-container\", \"node-header__first-row__right-container--collapsed\")\r\n )\r\n : window.innerWidth < 768;\r\n\r\n if (!this.props.enableHeaderAutoResponsiveness) {\r\n const centerContainerWidth = $(\"#node-header__first-row__center-container\").outerWidth(true) || 0;\r\n const navigationDrawerBtnWidth = $(\"#node-header__first-row__left-container .navigation-drawer-btn\").outerWidth(true) || 0;\r\n const homeBtnWidth = $(\"#node-header__first-row__left-container .home-btn\").outerWidth(true) || 0;\r\n\r\n $(\"#node-header__first-row__left-container .node-selector\").css({\r\n maxWidth: `calc(50vw - ${(centerContainerWidth / 2) + navigationDrawerBtnWidth + homeBtnWidth + 16}px)`\r\n });\r\n }\r\n\r\n if (this.state.isFirstRowCollapsed !== isFirstRowCollapsed) {\r\n this.setState({\r\n isFirstRowCollapsed: isFirstRowCollapsed\r\n });\r\n }\r\n\r\n if (this.state.isCenterContainerCollapsed !== isCenterContainerCollapsed) {\r\n this.setState({\r\n isCenterContainerCollapsed: isCenterContainerCollapsed\r\n });\r\n }\r\n };\r\n\r\n componentDidMount() {\r\n this.handleStyle();\r\n window.addEventListener(\"resize\", this.handleStyle);\r\n }\r\n\r\n componentWillUnmount() {\r\n window.removeEventListener(\"resize\", this.handleStyle);\r\n }\r\n\r\n componentDidUpdate() {\r\n this.handleStyle();\r\n }\r\n\r\n onNavigationDrawerOpen = () => {\r\n this.setState({\r\n isNavigationDrawerOpen: true,\r\n isCategoriesExpanded: isCategoriesExpandedDefault\r\n });\r\n };\r\n\r\n onNavigationDrawerClose = () => {\r\n this.setState({\r\n isNavigationDrawerOpen: false,\r\n isCategoriesExpanded: isCategoriesExpandedDefault\r\n });\r\n };\r\n\r\n onToolbarDrawerOpen = () => {\r\n this.setState({\r\n isToolbarDrawerOpen: true\r\n });\r\n };\r\n\r\n onToolbarDrawerClose = () => {\r\n this.setState({\r\n isToolbarDrawerOpen: false\r\n });\r\n };\r\n\r\n onInfoOpen = () => {\r\n this.setState({\r\n isInfoOpen: true\r\n });\r\n };\r\n\r\n onInfoClose = () => {\r\n this.setState({\r\n isInfoOpen: false\r\n });\r\n };\r\n\r\n handleCategoriesExpand = () => {\r\n this.setState({\r\n isCategoriesExpanded: !this.state.isCategoriesExpanded\r\n });\r\n };\r\n\r\n render() {\r\n\r\n const {\r\n classes,\r\n selectedCategoryPath,\r\n title,\r\n defaultAppConfigOpen,\r\n defaultUsersConfigOpen,\r\n defaultNodesConfigOpen,\r\n defaultNodeConfigOpen,\r\n nodes,\r\n noNode,\r\n catalog,\r\n node,\r\n query,\r\n hub,\r\n baseURL,\r\n user,\r\n isA11y,\r\n isDefault,\r\n getCustomA11yPath,\r\n getAdditionalA11yUrlParams,\r\n t,\r\n enableHeaderAutoResponsiveness\r\n } = this.props;\r\n\r\n const {\r\n isNavigationDrawerOpen,\r\n isToolbarDrawerOpen,\r\n isInfoOpen,\r\n headerLogoSmallURL,\r\n headerLogoAlt,\r\n headerLogoHref,\r\n headerLogoTitle,\r\n isCategoriesExpanded,\r\n isFirstRowCollapsed,\r\n isCenterContainerCollapsed\r\n } = this.state;\r\n\r\n const isDefaultUniqueNode = (!noNode && isDefault && node)\r\n ? nodes.filter(n => n.code.toLowerCase() !== node.code.toLowerCase()).length === 0\r\n : false;\r\n\r\n const nodeMinimalInfo = (!noNode && node)\r\n ? (nodes || []).find(({code}) => code.toLowerCase() === node.code.toLowerCase())\r\n : null;\r\n\r\n const isSecondRowVisible = isCenterContainerCollapsed;\r\n const isThirdRowVisible = isFirstRowCollapsed && !noNode && !isDefaultUniqueNode;\r\n\r\n return (\r\n
    \r\n \r\n
    \r\n {(enableHeaderAutoResponsiveness || !isFirstRowCollapsed) && (\r\n \r\n {!noNode && (\r\n \r\n \r\n \r\n \r\n goToNode((node?.code || \"\").toLowerCase())}\r\n aria-label={t(\"components.header.actions.nodeHome.ariaLabel\")}\r\n >\r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n
    \r\n )}\r\n {(enableHeaderAutoResponsiveness || isFirstRowCollapsed) && (\r\n \r\n {!noNode && (\r\n \r\n \r\n \r\n )}\r\n
    \r\n )}\r\n {(enableHeaderAutoResponsiveness || !isCenterContainerCollapsed) && (\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )}\r\n {(enableHeaderAutoResponsiveness || isCenterContainerCollapsed) && (\r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {(enableHeaderAutoResponsiveness || !isFirstRowCollapsed) && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n {(enableHeaderAutoResponsiveness || isFirstRowCollapsed) && (\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n )}\r\n \r\n {isSecondRowVisible && (\r\n
    \r\n \r\n
    \r\n )}\r\n {isThirdRowVisible && (\r\n
    \r\n \r\n
    \r\n )}\r\n \r\n\r\n {!noNode && (\r\n \r\n \r\n \r\n )}\r\n\r\n \r\n \r\n \r\n\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n connect(mapStateToProps),\r\n withRouter\r\n)(NodeHeader);","import React from \"react\";\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport SanitizedHTML from \"../sanitized-html\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\n\r\nconst styles = theme => ({\r\n footer: {\r\n margin: \"auto 16px 0 16px\",\r\n paddingTop: 16\r\n }\r\n});\r\n\r\nconst getLocalizedFooter = (footers, appLang, languages) => {\r\n const footerLangs = [appLang, \"default\", ...languages];\r\n const footerLang = footerLangs.find(lang => footers[lang]);\r\n\r\n return footerLang\r\n ? footers[footerLang]\r\n : null;\r\n};\r\n\r\nconst Footer = ({\r\n t,\r\n classes,\r\n appLanguage,\r\n languages,\r\n footers\r\n }) =>\r\n
    \r\n \r\n \r\n
    ;\r\n\r\nexport default compose(\r\n connect(state => ({\r\n appLanguage: state.app.language,\r\n languages: state.app.languages,\r\n footers: state.app.footers\r\n })),\r\n withStyles(styles),\r\n withTranslation()\r\n)(Footer);","import React, {Component, Fragment} from 'react';\r\nimport Box from \"@material-ui/core/Box\";\r\nimport Hero from \"../hero\";\r\nimport CardsGrid from \"../cards-grid\";\r\nimport PageSection from \"../page-section\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Page from \"../page\";\r\nimport NodeHeader from \"../node-header\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport Container from \"@material-ui/core/Container\";\r\nimport {getNodeInternalUrl, goToHubDashboards} from \"../../links\";\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport SanitizedHTML from \"../sanitized-html\";\r\nimport {HashLink} from 'react-router-hash-link';\r\nimport {withRouter} from \"react-router\";\r\nimport {getPageTitle} from \"../../utils/other\";\r\nimport Footer from \"../footer\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = theme => ({\r\n defaultBackground: {\r\n backgroundColor: theme.palette.primary.light\r\n },\r\n main: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n fullWidthContainer: {\r\n backgroundColor: \"#f5f5f5\",\r\n width: \"100%\"\r\n },\r\n container: {\r\n paddingTop: theme.spacing(3)\r\n },\r\n anchorContainer: {\r\n position: \"relative\"\r\n },\r\n anchor: {\r\n position: \"absolute\",\r\n top: -theme.mixins.toolbar.minHeight\r\n },\r\n section: {\r\n paddingTop: theme.spacing(3)\r\n },\r\n nodesContainer: {\r\n marginTop: theme.spacing(2)\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n hub: state.hub,\r\n baseURL: state.config.baseURL,\r\n isA11y: state.app.isA11y\r\n});\r\n\r\nclass Home extends Component {\r\n\r\n info = React.createRef();\r\n nodesRef = React.createRef();\r\n\r\n state = {\r\n isListMode: true,\r\n };\r\n\r\n scroll(ref) {\r\n ref.current.scrollIntoView({\r\n behavior: 'smooth',\r\n alignToTop: true,\r\n });\r\n }\r\n\r\n /* onListModeToggle = () => {\r\n this.setState({isListMode: !this.state.isListMode});\r\n };*/\r\n\r\n render() {\r\n\r\n const {classes, hub, baseURL, isA11y, t, location} = this.props;\r\n // const {isListMode} = this.state;\r\n\r\n const params = new URLSearchParams(location.search);\r\n params.set(\"accessible\", \"true\");\r\n const paramsStr = params.toString();\r\n const path = location.pathname;\r\n\r\n return (\r\n \r\n {!isA11y && (\r\n 0 ? \"?\" : \"\") + paramsStr}\r\n target=\"_self\"\r\n className=\"skip-link sr-only\"\r\n >\r\n {t(\"commons.hashLinks.accessible\")}\r\n \r\n )}\r\n \r\n {t(\"commons.hashLinks.main\")}\r\n \r\n {hub.hub.description && hub.hub.description.length > 0 && (\r\n \r\n {t(\"commons.hashLinks.hubInformation\")}\r\n \r\n )}\r\n \r\n {t(\"commons.hashLinks.otherNodes\")}\r\n \r\n \r\n {t(\"commons.hashLinks.footer\")}\r\n \r\n \r\n \r\n
    \r\n }\r\n background={hub.hub.backgroundMediaURL\r\n ? hub.hub.backgroundMediaURL.match(/\\.(jpeg|jpg|gif|png|JPEG|JPG|GIF|PNG|svg|SVG)$/)\r\n ?
    \r\n : (\r\n \r\n )\r\n :
    \r\n }\r\n >\r\n \r\n {hub.hub.description && hub.hub.description.length > 0 && (\r\n \r\n {\r\n this.scroll(this.info);\r\n this.info.current.focus({preventScroll: true});\r\n }}\r\n >\r\n {t(\"scenes.hub.informations\")}\r\n \r\n \r\n )}\r\n \r\n {\r\n this.scroll(this.nodesRef);\r\n this.nodesRef.current.focus({preventScroll: true});\r\n }}\r\n >\r\n {t(\"scenes.hub.nodes\")}\r\n \r\n \r\n {!isA11y && hub.hub.dashboards && hub.hub.dashboards.length > 0 && (\r\n \r\n \r\n \r\n )}\r\n \r\n \r\n
    \r\n \r\n {hub.hub.description && hub.hub.description.length > 0 && (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )}\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n connect(mapStateToProps),\r\n withRouter\r\n)(Home);","import {initRequest} from \"../../middlewares/request/requestActions\";\r\nimport {getHubMinimalInfoUrl} from \"../../serverApi/urls\";\r\n\r\nexport const HUB_FETCH = \"hub/fetch\";\r\nexport const HUB_CLEAR = \"hub/clear\";\r\n\r\nexport const fetchHub = () => initRequest(\r\n HUB_FETCH,\r\n getHubMinimalInfoUrl(),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"domains.hub.messages.fetch.start\")\r\n })\r\n);\r\n\r\nexport const clearHub = () => ({\r\n type: HUB_CLEAR\r\n})","import React, {Component, Fragment} from 'react';\r\nimport Hero from \"../hero\";\r\nimport CardsGrid from \"../cards-grid\";\r\nimport Container from \"@material-ui/core/Container\";\r\nimport PageSection from \"../page-section\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport NodeHeader from \"../node-header\";\r\nimport Page from \"../page\";\r\nimport {getNodeInternalUrl, goToNodeCategories, goToNodeDashboards} from \"../../links\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport {connect} from \"react-redux\";\r\nimport {compose} from \"redux\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport SanitizedHTML from \"../sanitized-html\";\r\nimport {HashLink} from 'react-router-hash-link';\r\nimport {withRouter} from \"react-router\";\r\nimport {getPageTitle} from \"../../utils/other\";\r\nimport Footer from \"../footer\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\n\r\nconst styles = theme => ({\r\n main: {\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n fullWidthContainer: {\r\n backgroundColor: \"#f5f5f5\",\r\n width: \"100%\"\r\n },\r\n container: {\r\n paddingTop: theme.spacing(3)\r\n },\r\n anchorContainer: {\r\n position: \"relative\"\r\n },\r\n anchor: {\r\n position: \"absolute\",\r\n top: -theme.mixins.toolbar.minHeight\r\n },\r\n section: {\r\n paddingTop: theme.spacing(3)\r\n },\r\n nodesContainer: {\r\n marginTop: theme.spacing(2)\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n baseURL: state.config.baseURL,\r\n isA11y: state.app.isA11y\r\n});\r\n\r\nclass Node extends Component {\r\n\r\n info = React.createRef();\r\n nodes = React.createRef();\r\n\r\n scroll(ref) {\r\n ref.current.scrollIntoView({\r\n behavior: 'smooth',\r\n alignToTop: true\r\n });\r\n }\r\n\r\n render() {\r\n\r\n const {\r\n classes,\r\n defaultTreeOpen,\r\n defaultNodeConfigOpen,\r\n defaultAppConfigOpen,\r\n defaultUserConfigOpen,\r\n defaultNodesConfigOpen,\r\n node,\r\n nodeCode,\r\n hub,\r\n catalog,\r\n baseURL,\r\n isDefault,\r\n isA11y,\r\n t,\r\n location\r\n } = this.props;\r\n\r\n const nodeMinimalInfo = hub.nodes.find(({code}) => code.toLowerCase() === nodeCode.toLowerCase());\r\n\r\n const otherNodes = hub.nodes.filter(n => n.code.toLowerCase() !== nodeCode.toLowerCase());\r\n\r\n const params = new URLSearchParams(location.search);\r\n params.set(\"accessible\", \"true\");\r\n const paramsStr = params.toString();\r\n const path = location.pathname;\r\n\r\n return (\r\n \r\n {!isA11y && (\r\n 0 ? \"?\" : \"\") + paramsStr}\r\n target=\"_self\"\r\n className=\"skip-link sr-only\"\r\n >\r\n {t(\"commons.hashLinks.accessible\")}\r\n \r\n )}\r\n \r\n {t(\"commons.hashLinks.main\")}\r\n \r\n {node && node.description && node.description.length > 0 && (\r\n \r\n {t(\"commons.hashLinks.nodeInformation\")}\r\n \r\n )}\r\n {isDefault && otherNodes.length > 0 && (\r\n \r\n {t(\"commons.hashLinks.otherNodes\")}\r\n \r\n )}\r\n \r\n {t(\"commons.hashLinks.footer\")}\r\n \r\n \r\n \r\n
    \r\n }\r\n background={nodeMinimalInfo.backgroundMediaURL\r\n ? nodeMinimalInfo.backgroundMediaURL.match(/\\.(jpeg|jpg|gif|png|JPEG|JPG|GIF|PNG|svg|SVG)$/)\r\n ?
    \r\n : (\r\n \r\n )\r\n :
    \r\n }\r\n >\r\n \r\n {node && node.description && node.description.length > 0 && (\r\n \r\n {\r\n this.scroll(this.info);\r\n this.info.current.focus({preventScroll: true});\r\n }}\r\n >\r\n {t(\"scenes.node.informations\")}\r\n \r\n \r\n )}\r\n {catalog && !catalog.isEmpty && (\r\n \r\n goToNodeCategories(nodeCode)}\r\n >\r\n {t(\"scenes.node.explore\")}\r\n \r\n \r\n )}\r\n {!isA11y && nodeMinimalInfo.dashboards && nodeMinimalInfo.dashboards.length > 0 && (\r\n \r\n goToNodeDashboards(nodeCode)}\r\n >\r\n {t(\"scenes.node.dashboards\")}\r\n \r\n \r\n )}\r\n {isDefault && otherNodes.length > 0 && (\r\n \r\n {\r\n this.scroll(this.nodes);\r\n this.nodes.current.focus({preventScroll: true});\r\n }}\r\n >\r\n {t(\"scenes.node.otherNodes\")}\r\n \r\n \r\n )}\r\n \r\n \r\n
    \r\n \r\n {node && node.description && node.description.length > 0 && (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )}\r\n {isDefault && otherNodes.length > 0 && (\r\n
    \r\n \r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )}\r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n
    \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n connect(mapStateToProps),\r\n withRouter\r\n)(Node);","import {initRequest} from \"../../middlewares/request/requestActions\";\r\nimport {getNodeCatalogUrl} from \"../../serverApi/urls\";\r\n\r\nexport const CATALOG_FETCH = \"catalog/fetch\";\r\nexport const CATALOG_CLEAR = \"catalog/clear\";\r\n\r\nexport const fetchCatalog = (nodeId: number, nodeCode: string) => initRequest(\r\n CATALOG_FETCH,\r\n getNodeCatalogUrl(nodeId),\r\n undefined,\r\n undefined,\r\n t => ({\r\n onStart: t(\"domains.catalog.messages.fetch.start\")\r\n }),\r\n {\r\n nodeId,\r\n nodeCode\r\n }\r\n);\r\n\r\nexport const clearCatalog = () => ({\r\n type: CATALOG_CLEAR\r\n})","import React from \"react\";\r\nimport TreeItem from \"@material-ui/lab/TreeItem\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport TreeView from \"@material-ui/lab/TreeView\";\r\nimport ExpandMoreIcon from \"@material-ui/icons/ExpandMore\";\r\nimport ChevronRightIcon from \"@material-ui/icons/ChevronRight\";\r\nimport {goToDatasetsSearch} from \"../../links\";\r\nimport Checkbox from \"@material-ui/core/Checkbox\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Box from \"@material-ui/core/Box\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {compose} from \"redux\";\r\n\r\nconst styles = () => ({\r\n container: {\r\n background: \"#F5F5F5\",\r\n paddingTop: 8,\r\n paddingBottom: 8\r\n },\r\n nodeIcon: {\r\n marginTop: 5\r\n },\r\n item: {\r\n background: \"none !important\"\r\n },\r\n resCount: {\r\n fontWeight: \"bold\",\r\n marginLeft: 4\r\n },\r\n checkbox: {\r\n padding: 0,\r\n transform: \"translateY(-2px)\"\r\n }\r\n});\r\n\r\nfunction ResultTree(props) {\r\n const {\r\n classes,\r\n catalog,\r\n query,\r\n node,\r\n filters = [],\r\n categoryGroupsWithCount,\r\n uncategorizedDatasetsCount,\r\n t\r\n } = props;\r\n\r\n const getTreeItems = (tree, prevPath, noCheckbox = false) =>\r\n tree.map((cat, i) => {\r\n\r\n const selected = !!filters.find(filter => filter.includes(cat.id));\r\n\r\n return (\r\n \r\n {!noCheckbox && (\r\n \r\n \r\n {\r\n goToDatasetsSearch(\r\n node.code,\r\n query,\r\n selected\r\n ? filters.filter(path => !path.includes(cat.id))\r\n : [...filters, [...prevPath, cat.id]]\r\n );\r\n e.stopPropagation();\r\n }}\r\n />\r\n \r\n )}\r\n \r\n {cat.label}\r\n {!noCheckbox && (\r\n ({cat.count})\r\n )}\r\n \r\n \r\n }\r\n classes={{\r\n label: classes.item\r\n }}\r\n >\r\n {cat.categories && cat.categories.length > 0 && getTreeItems(cat.categories, [...prevPath, cat.id])}\r\n \r\n );\r\n });\r\n\r\n const uncategorizedSelected = !!filters.find(filter => filter.includes(\"uncategorized\"));\r\n\r\n let defaultExpanded = catalog.categoryGroups.length > 1 ? categoryGroupsWithCount : categoryGroupsWithCount?.[0]?.categories;\r\n defaultExpanded = (defaultExpanded || []).map(({id}) => id);\r\n\r\n return (\r\n \r\n {categoryGroupsWithCount.length > 0 && (\r\n }\r\n defaultExpandIcon={}\r\n defaultExpanded={defaultExpanded}\r\n key={query ? `result-tree-categories-${query}` : 'result-tree-categories'}\r\n >\r\n {getTreeItems(\r\n catalog.categoryGroups.length > 1\r\n ? categoryGroupsWithCount\r\n : categoryGroupsWithCount[0].categories,\r\n [],\r\n catalog.categoryGroups.length > 1\r\n )}\r\n \r\n )}\r\n {uncategorizedDatasetsCount > 0 && (\r\n }\r\n defaultExpandIcon={}\r\n key={query ? `result-tree-uncategorized-${query}` : 'result-tree-uncategorized'}\r\n >\r\n \r\n \r\n \r\n {\r\n goToDatasetsSearch(\r\n node.code,\r\n query,\r\n uncategorizedSelected\r\n ? filters.filter(path => JSON.stringify(path) !== JSON.stringify([\"uncategorized\"]))\r\n : [...filters, [\"uncategorized\"]]\r\n );\r\n e.stopPropagation();\r\n }}\r\n />\r\n \r\n \r\n {t(\"commons.catalog.uncategorized\")} ({uncategorizedDatasetsCount})
    \r\n \r\n \r\n }\r\n classes={{label: classes.item}}\r\n />\r\n \r\n )}\r\n \r\n );\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation()\r\n)(ResultTree);","const getDownloadButtonStyle = extension => {\r\n\r\n const styles = {\r\n rdf: {\r\n backgroundColor: \"#3f51b5\",\r\n color: \"white\"\r\n },\r\n html: {backgroundColor: \"#00bcd4\"},\r\n csv: {backgroundColor: \"#ffeb3b\"},\r\n xml: {backgroundColor: \"#ff5722\"},\r\n json: {backgroundColor: \"#ff9800\"},\r\n xls: {backgroundColor: \"#4caf50\"}\r\n };\r\n\r\n return styles[extension] || {};\r\n};\r\n\r\nexport default getDownloadButtonStyle;","import React, {Fragment, useEffect, useState} from \"react\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Chip from \"@material-ui/core/Chip\";\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport ExpandLessIcon from \"@material-ui/icons/ExpandLess\";\r\nimport ExpandMoreIcon from \"@material-ui/icons/ExpandMore\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport Avatar from \"@material-ui/core/Avatar\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport List from \"@material-ui/core/List\";\r\nimport ListItem from \"@material-ui/core/ListItem\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport getDownloadButtonStyle from './getDownloadButtonStyle';\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport SanitizedHTML from \"../sanitized-html\";\r\nimport CatalogInfoButton from \"../catalog-info-button\";\r\nimport CatalogMetadataButton from \"../catalog-metadata-button\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport InfoIcon from '@material-ui/icons/Info';\r\nimport CustomLink from \"../custom-link\";\r\nimport StorageIcon from '@material-ui/icons/Storage';\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst styles = () => ({\r\n dataset: {\r\n display: \"flex\",\r\n alignItems: \"center\"\r\n },\r\n actions: {\r\n display: \"flex\",\r\n alignItems: \"center\",\r\n padding: \"8px 16px\",\r\n \"& > button\": {\r\n padding: 12\r\n },\r\n \"& > .MuiChip-root\": {\r\n margin: 12\r\n },\r\n \"& > .MuiChip-root:focus\": {\r\n outline: \"-webkit-focus-ring-color auto 1px\"\r\n }\r\n },\r\n downloadChipDeleteIcon: {\r\n backgroundColor: \"white\"\r\n },\r\n counterAvatar: {\r\n width: 16,\r\n height: 16,\r\n marginLeft: -4,\r\n marginRight: 4\r\n },\r\n description: {\r\n width: \"100%\",\r\n padding: \"16px !important\"\r\n },\r\n descriptionTextWrapper: {\r\n fontSize: 16\r\n },\r\n descriptionTextWrapperCollapsed: {\r\n maxHeight: 48,\r\n overflow: \"hidden\"\r\n },\r\n descriptionTextWrapperExpanded: {\r\n minHeight: 48\r\n },\r\n descriptionText: {\r\n \"& > p\": {\r\n margin: 0\r\n }\r\n },\r\n descriptionIcon: {\r\n display: \"none\",\r\n justifyContent: \"flex-end\"\r\n }\r\n});\r\n\r\n// based on https://stackoverflow.com/a/7616484\r\nconst getIdFromDatasetIdentifier = identifier => {\r\n if (!identifier) {\r\n return undefined;\r\n }\r\n\r\n let hash = 0, i, chr;\r\n if (identifier.length === 0) return hash;\r\n for (i = 0; i < identifier.length; i++) {\r\n chr = identifier.charCodeAt(i);\r\n hash = ((hash << 5) - hash) + chr;\r\n hash |= 0; // convert to 32bit integer\r\n }\r\n return \"id__\" + hash;\r\n};\r\n\r\nconst handleStyle = dataset => {\r\n const textHeight = $(`#${getIdFromDatasetIdentifier(dataset.identifier)}__description__text`).outerHeight() || 0;\r\n const textWrapperHeight = $(`#${getIdFromDatasetIdentifier(dataset.identifier)}__description__text-wrapper`).outerHeight() || 0;\r\n $(`#${getIdFromDatasetIdentifier(dataset.identifier)}__description__icon`).css({\r\n display: (textHeight > textWrapperHeight) ? \"flex\" : \"none\"\r\n });\r\n};\r\n\r\nconst DatasetCard = ({\r\n dataset,\r\n classes,\r\n isExpanded,\r\n onViewDataset,\r\n onExpand,\r\n onCollapse,\r\n onClick,\r\n xs,\r\n md,\r\n isMultiCategorized\r\n }) => {\r\n\r\n const {t} = useTranslation();\r\n\r\n const [isDownloadModalOpen, setIsDownloadModalOpen] = useState(false);\r\n const [downloadModal, setDownloadModal] = useState(null);\r\n\r\n useEffect(() => {\r\n const f = () => handleStyle(dataset);\r\n f();\r\n window.addEventListener(\"resize\", f);\r\n return () => window.removeEventListener(\"resize\", f)\r\n }, [dataset]);\r\n\r\n const groupedAttachments = [];\r\n (dataset.attachedDataFiles || []).forEach(({format, url}) => {\r\n const group = groupedAttachments.find(({extension}) => extension === format.toLowerCase());\r\n if (!group) {\r\n groupedAttachments.push({\r\n extension: format.toLowerCase(),\r\n urls: [url]\r\n })\r\n } else {\r\n group.urls.push(url);\r\n }\r\n });\r\n\r\n return (\r\n \r\n \r\n \r\n
    \r\n \r\n {dataset.title}\r\n {isMultiCategorized && (\r\n \r\n \r\n \r\n )}\r\n \r\n }\r\n icon={}\r\n textStyle={{\r\n fontSize: 18,\r\n minHeight: 48,\r\n padding: \"16px 16px 0 16px\"\r\n }}\r\n subText={dataset.source}\r\n subTextStyle={{\r\n fontSize: 14,\r\n fontWeight: \"normal\",\r\n color: \"rgba(0, 0, 0, 0.54)\",\r\n padding: \"0 16px 16px 16px\"\r\n }}\r\n disabled={dataset.catalogType === \"ONLY_FILE\"}\r\n />\r\n {(groupedAttachments.length > 0 || dataset.note || dataset.referenceMetadata) && (\r\n
    \r\n {groupedAttachments.map((group, index) =>\r\n 1\r\n ? (\r\n \r\n {group.urls.length}\r\n \r\n )\r\n : null\r\n }\r\n onDelete={group.urls.length > 1\r\n ? e => {\r\n e.stopPropagation();\r\n setIsDownloadModalOpen(true);\r\n setDownloadModal(group)\r\n }\r\n : null\r\n }\r\n size=\"small\"\r\n onClick={e => {\r\n e.stopPropagation();\r\n if (group.urls.length > 1) {\r\n setIsDownloadModalOpen(true);\r\n setDownloadModal(group)\r\n } else {\r\n window.open(group.urls[0], \"_blank\")\r\n }\r\n }}\r\n style={{\r\n cursor: \"pointer\",\r\n ...getDownloadButtonStyle(group.extension)\r\n }}\r\n classes={{\r\n deleteIconSmall: classes.downloadChipDeleteIcon\r\n }}\r\n aria-label={\r\n t(\"scenes.results.datasetCard.downloadAria\", {\r\n title: dataset.title,\r\n extension: group.extension.toUpperCase()\r\n })\r\n }\r\n />\r\n )}\r\n {dataset.note && (\r\n \r\n )}\r\n {dataset.referenceMetadata && (\r\n \r\n )}\r\n
    \r\n )}\r\n
    \r\n {dataset.description && (\r\n \r\n \r\n {dataset.description && (\r\n \r\n )}\r\n \r\n \r\n \r\n {isExpanded\r\n ? \r\n : \r\n }\r\n \r\n \r\n \r\n )}\r\n
    \r\n
    \r\n\r\n setIsDownloadModalOpen(false)}\r\n onExited={() => setDownloadModal(null)}\r\n >\r\n \r\n \r\n {downloadModal?.urls.map((url, key) =>\r\n \r\n {url}\r\n \r\n )}\r\n \r\n \r\n \r\n \r\n \r\n \r\n\r\n
    \r\n );\r\n};\r\n\r\nexport default withStyles(styles)(DatasetCard);","export const scrollResultsToDatasetByParam = () => {\r\n let datasetIdParam;\r\n\r\n const split = window.location.hash.split(\"datasetId=\");\r\n if (split && split.length === 2 && split[1].length > 0) {\r\n const split2 = split[1].split(\"&\");\r\n if (split2[0] && split2[0].length > 0) {\r\n datasetIdParam = decodeURIComponent(split2[0]);\r\n }\r\n }\r\n\r\n if (datasetIdParam) {\r\n const element = document.getElementById(encodeURIComponent(datasetIdParam));\r\n if (element) {\r\n element.scrollIntoView();\r\n }\r\n }\r\n};","import React, {Component, Fragment} from 'react';\r\nimport NodeHeader from \"../node-header\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport Page from \"../page\";\r\nimport Container from \"@material-ui/core/Container\";\r\nimport Card from \"@material-ui/core/Card\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\nimport {getDatasetInternalUrl, getDatasetsInternalUrl, getHomeInternalUrl, getNodeCategoriesInternalUrl, getNodeInternalUrl} from \"../../links\";\r\nimport CardActions from '@material-ui/core/CardActions';\r\nimport IconButton from \"@material-ui/core/IconButton\";\r\nimport ListIcon from '@material-ui/icons/List';\r\nimport GridOnIcon from '@material-ui/icons/GridOn';\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport ResultTree from \"./ResultTree\";\r\nimport {withTranslation} from \"react-i18next\";\r\nimport {compose} from \"redux\";\r\nimport FolderIcon from \"@material-ui/icons/Folder\";\r\nimport DatasetCard from \"./DatasetCard\";\r\nimport {scrollResultsToDatasetByParam} from \"./utils\";\r\nimport {withRouter} from \"react-router\";\r\nimport {HashLink} from 'react-router-hash-link';\r\nimport CatalogInfoButton from \"../catalog-info-button\";\r\nimport CatalogMetadataButton from \"../catalog-metadata-button\";\r\nimport {getPageTitle} from \"../../utils/other\";\r\nimport Footer from \"../footer\";\r\nimport CustomLink from \"../custom-link\";\r\nimport Tooltip from \"@material-ui/core/Tooltip\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport Divider from \"@material-ui/core/Divider\";\r\n\r\nconst styles = theme => ({\r\n fullWidthContainer: {\r\n width: \"100%\",\r\n minHeight: \"100%\",\r\n backgroundColor: \"#f5f5f5\",\r\n display: \"flex\",\r\n flexDirection: \"column\"\r\n },\r\n toolbar: {\r\n minHeight: 48,\r\n marginTop: theme.spacing(3)\r\n },\r\n searchTitle: {\r\n fontSize: 24,\r\n fontWeight: 400,\r\n letterSpacing: 0,\r\n whiteSpace: \"pre-wrap\"\r\n },\r\n categoriesTitle: {\r\n fontSize: 28,\r\n fontWeight: 300,\r\n letterSpacing: 0\r\n },\r\n breadcrumbs: {\r\n minHeight: 48,\r\n padding: \"8px 0\",\r\n display: \"flex\"\r\n },\r\n breadcrumbsSeparator: {\r\n margin: \"0 4px\"\r\n },\r\n breadcrumbsLastElem: {\r\n color: theme.palette.primary.main,\r\n padding: 4\r\n },\r\n results: {\r\n marginTop: theme.spacing(1)\r\n },\r\n row: {\r\n marginBottom: theme.spacing(1)\r\n },\r\n card: {\r\n height: \"100%\",\r\n display: \"flex\",\r\n flexDirection: \"row\",\r\n justifyContent: \"space-between\"\r\n },\r\n cardActions: {\r\n padding: \"4px 8px\"\r\n },\r\n divider: {\r\n margin: \"16px 0\"\r\n }\r\n});\r\n\r\nclass Results extends Component {\r\n\r\n state = {\r\n expandedIndexes: [],\r\n configIsListMode: this.props.hub.nodes\r\n .find(({code}) => code.toLowerCase() === this.props.nodeCode.toLowerCase())\r\n .catalogNavigationMode === \"List\",\r\n isListMode:\r\n this.props.hub.nodes\r\n .find(({code}) => code.toLowerCase() === this.props.nodeCode.toLowerCase())\r\n .catalogNavigationMode === \"List\"\r\n };\r\n\r\n static getDerivedStateFromProps(props, state) {\r\n\r\n const configIsListMode = props.hub.nodes\r\n .find(({code}) => code.toLowerCase() === props.nodeCode.toLowerCase())\r\n .catalogNavigationMode === \"List\";\r\n\r\n if (configIsListMode !== state.configIsListMode) {\r\n return {\r\n ...state,\r\n configIsListMode,\r\n isListMode: configIsListMode\r\n };\r\n } else {\r\n return null;\r\n }\r\n }\r\n\r\n componentDidMount() {\r\n scrollResultsToDatasetByParam();\r\n }\r\n\r\n expand = index =>\r\n this.setState({\r\n expandedIndexes: [...this.state.expandedIndexes, index]\r\n });\r\n\r\n collapse = index =>\r\n this.setState({\r\n expandedIndexes: [...this.state.expandedIndexes.filter(i => i !== index)]\r\n });\r\n\r\n onListModeToggle = () => {\r\n this.setState({isListMode: !this.state.isListMode});\r\n };\r\n\r\n render() {\r\n\r\n const {\r\n classes,\r\n query,\r\n hub,\r\n catalog,\r\n node,\r\n nodeCode,\r\n isDefault,\r\n categoryPath,\r\n datasets,\r\n subCategories,\r\n filters,\r\n categoryGroupsWithCount,\r\n uncategorizedDatasetsCount,\r\n t,\r\n isAccessible,\r\n onAccessibleDatasetFetch,\r\n location\r\n } = this.props;\r\n\r\n const {expandedIndexes, isListMode} = this.state;\r\n\r\n const nodeMinimalInfo = hub.nodes.find(({code}) => code.toLowerCase() === nodeCode.toLowerCase());\r\n\r\n const nodeExtras = nodeMinimalInfo?.extras || [];\r\n const hideLabelOnCategoryWithImage = JSON.parse(nodeExtras.find(({key}) => key === \"HideLabelOnCategoryWithImage\")?.value || \"[]\");\r\n\r\n let categoryPathLabels = [];\r\n if (categoryPath) {\r\n if (categoryPath[0] === \"uncategorized\") {\r\n categoryPathLabels = [t(\"commons.catalog.uncategorized\")];\r\n } else {\r\n\r\n let category;\r\n\r\n if (catalog.categoryGroups.length > 1) {\r\n category = catalog.categoryGroups.find(({id}) => id === categoryPath[0]);\r\n } else {\r\n category = catalog.categoryGroups[0].categories.find(({id}) => id === categoryPath[0]);\r\n }\r\n\r\n categoryPathLabels.push(category.label);\r\n for (let i = 1; i < categoryPath.length; i++) {\r\n category = (category.childrenCategories || category.categories).find(({id}) => id === categoryPath[i]);\r\n categoryPathLabels.push(category.label);\r\n }\r\n }\r\n }\r\n\r\n const params = new URLSearchParams(location.search);\r\n params.set(\"accessible\", \"true\");\r\n const paramsStr = params.toString();\r\n const path = location.pathname;\r\n\r\n return (\r\n \r\n {!isAccessible && (\r\n 0 ? \"?\" : \"\") + paramsStr}\r\n target=\"_self\"\r\n className=\"skip-link sr-only\"\r\n >\r\n {t(\"commons.hashLinks.accessible\")}\r\n \r\n )}\r\n \r\n {t(\"commons.hashLinks.main\")}\r\n \r\n \r\n {t(\"commons.hashLinks.footer\")}\r\n \r\n \r\n \r\n
    \r\n \r\n \r\n \r\n {query\r\n ? (\r\n \r\n {t(\"scenes.results.searchTitle\", {query})}\r\n \r\n )\r\n : (\r\n \r\n \r\n {(hub.nodes || []).length > 1 && (\r\n \r\n )}\r\n \r\n {categoryPath.map((id, idx) => {\r\n if (idx < categoryPath.length - 1 && id !== \"uncategorized\") {\r\n return (\r\n \r\n );\r\n } else {\r\n return (\r\n \r\n {categoryPathLabels[idx]}\r\n \r\n );\r\n }\r\n })}\r\n \r\n )\r\n }\r\n \r\n {!isAccessible && (\r\n \r\n {datasets.length > 0 && (\r\n \r\n \r\n {isListMode\r\n ? \r\n : \r\n }\r\n \r\n \r\n )}\r\n \r\n )}\r\n \r\n {!query && (\r\n \r\n {categoryPathLabels[categoryPath.length - 1]}\r\n \r\n )}\r\n \r\n {query && (\r\n \r\n \r\n \r\n )}\r\n \r\n {subCategories && subCategories.length\r\n ? (\r\n \r\n \r\n {datasets.length > 0 && }\r\n \r\n )\r\n : null\r\n }\r\n {query && datasets.length\r\n ? (\r\n \r\n {datasets.length > 1\r\n ? t(\"scenes.results.datasetsCount.plural\", {datasetsCount: datasets.length})\r\n : t(\"scenes.results.datasetsCount.singular\", {datasetsCount: datasets.length})\r\n }:\r\n \r\n )\r\n : null\r\n }\r\n {datasets.length > 0\r\n ? (\r\n \r\n )\r\n : (query || !subCategories || !subCategories.length)\r\n ? (\r\n \r\n )\r\n : null\r\n }\r\n \r\n \r\n \r\n
    \r\n
    \r\n \r\n
    \r\n );\r\n }\r\n}\r\n\r\nexport default compose(\r\n withStyles(styles),\r\n withTranslation(),\r\n withRouter\r\n)(Results);","import React, {Fragment, useEffect, useState} from 'react';\r\nimport NodeHeader from \"../node-header\";\r\nimport DataViewer from \"../data-viewer\";\r\nimport Page from \"../page\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {useLocation} from \"react-router\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {getPageTitle} from \"../../utils/other\";\r\nimport Footer from \"../footer\";\r\nimport {HashLink} from 'react-router-hash-link';\r\n\r\nconst styles = () => ({\r\n fullWidthContainer: {\r\n backgroundColor: \"#f5f5f5\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n position: \"fixed\",\r\n display: \"flex\",\r\n flexDirection: \"column\",\r\n \"& #footer\": {\r\n paddingTop: 0\r\n }\r\n }\r\n});\r\n\r\nconst Data = ({\r\n classes,\r\n hub,\r\n node,\r\n isDefault,\r\n catalog,\r\n categoryPath,\r\n isAccessible,\r\n datasetId,\r\n datasetTitle,\r\n viewId,\r\n notes,\r\n attachedFiles,\r\n referenceMetadataUrl\r\n }) => {\r\n\r\n const location = useLocation();\r\n const {t} = useTranslation();\r\n\r\n const [nodeExtras, setNodeExtras] = useState(null);\r\n const [hubExtras, setHubExtras] = useState(null);\r\n\r\n useEffect(() => {\r\n if (node?.extras) {\r\n const newNodeExtras = {};\r\n node.extras.forEach(({key, value}) => {\r\n try {\r\n newNodeExtras[key] = JSON.parse(value);\r\n } catch (e) {\r\n newNodeExtras[key] = value;\r\n }\r\n });\r\n setNodeExtras(newNodeExtras);\r\n }\r\n }, [node]);\r\n\r\n useEffect(() => {\r\n const newHubExtras = JSON.parse(hub.hub.extras || \"{}\");\r\n setHubExtras(newHubExtras);\r\n }, [hub]);\r\n\r\n const params = new URLSearchParams(location.search);\r\n params.set(\"accessible\", \"true\");\r\n params.set(\"datasetId\", datasetId)\r\n const paramsStr = params.toString();\r\n const path = `/${window.language}/${node?.code.toLowerCase()}/${categoryPath.join(\"/\")}`;\r\n\r\n return (\r\n \r\n {!isAccessible && (\r\n 0 ? \"?\" : \"\") + paramsStr}\r\n target=\"_self\"\r\n className=\"skip-link sr-only\"\r\n >\r\n {t(\"commons.hashLinks.accessible\")}\r\n \r\n )}\r\n \r\n {t(\"commons.hashLinks.main\")}\r\n \r\n \r\n {t(\"commons.hashLinks.footer\")}\r\n \r\n \r\n {\r\n if (isA11y) {\r\n return `/${window.language}/${node?.code.toLowerCase()}/${categoryPath.join(\"/\")}`;\r\n } else {\r\n return false;\r\n }\r\n }}\r\n getAdditionalA11yUrlParams={isA11y => {\r\n if (isA11y) {\r\n return {datasetId};\r\n } else {\r\n return false;\r\n }\r\n }}\r\n />\r\n
    \r\n \r\n
    \r\n
    \r\n
    \r\n
    \r\n )\r\n};\r\n\r\nexport default withStyles(styles)(Data);","import React, {Component} from 'react';\r\nimport Data from \"../components/data\";\r\nimport {connect} from \"react-redux\";\r\nimport {enableDatasetStructureFetch, fetchDatasetStructure, resetDatasetState} from \"../state/dataset/datasetActions\";\r\nimport Call from \"../hocs/call\";\r\n\r\nconst mapStateToProps = ({app, dataset}) => ({\r\n defaultLanguage: app.language,\r\n languages: app.languages,\r\n dsDatasetId: dataset.datasetId,\r\n dsNodeCode: dataset.nodeCode,\r\n dsCategoryPath: dataset.categoryPath,\r\n dsViewId: dataset.viewId,\r\n isFetchStructureDisabled: dataset.isFetchStructureDisabled\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n onFetchStructureEnable: (nodeCode, categoryPath, datasetId, viewId) =>\r\n dispatch(enableDatasetStructureFetch(nodeCode, categoryPath, datasetId, viewId)),\r\n fetchStructure: ({nodeId, datasetId, viewId, defaultLanguage, languages}) =>\r\n dispatch(fetchDatasetStructure(nodeId, datasetId, viewId, defaultLanguage, languages)),\r\n onDatasetReset: () => dispatch(resetDatasetState())\r\n});\r\n\r\nclass DatasetDomain extends Component {\r\n\r\n componentDidMount() {\r\n const {\r\n nodeCode,\r\n categoryPath,\r\n datasetId,\r\n viewId,\r\n onFetchStructureEnable\r\n } = this.props;\r\n\r\n onFetchStructureEnable(nodeCode, categoryPath, datasetId, viewId);\r\n };\r\n\r\n componentDidUpdate() {\r\n const {\r\n dsDatasetId,\r\n dsNodeCode,\r\n dsCategoryPath,\r\n dsViewId,\r\n nodeCode,\r\n categoryPath,\r\n datasetId,\r\n viewId,\r\n onFetchStructureEnable\r\n } = this.props;\r\n\r\n const isStateAndUrlSynced = (\r\n nodeCode === dsNodeCode &&\r\n (categoryPath || []).join() === (dsCategoryPath || []).join() &&\r\n datasetId === dsDatasetId &&\r\n (viewId || \"\") === (dsViewId || \"\")\r\n );\r\n\r\n if (!isStateAndUrlSynced) {\r\n onFetchStructureEnable(nodeCode, categoryPath, datasetId, viewId);\r\n }\r\n };\r\n\r\n componentWillUnmount() {\r\n const {\r\n onDatasetReset\r\n } = this.props;\r\n\r\n onDatasetReset();\r\n };\r\n\r\n render() {\r\n\r\n const {\r\n defaultLanguage,\r\n languages,\r\n isFetchStructureDisabled,\r\n hub,\r\n node,\r\n isDefault,\r\n catalog,\r\n categoryPath,\r\n isAccessible,\r\n datasetId,\r\n datasetTitle,\r\n notes,\r\n attachedFiles,\r\n referenceMetadataUrl,\r\n viewId,\r\n fetchStructure\r\n } = this.props;\r\n\r\n return (\r\n \r\n \r\n \r\n );\r\n }\r\n}\r\n\r\nexport default connect(mapStateToProps, mapDispatchToProps)(DatasetDomain);","import React, {Fragment, useState} from \"react\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport withStyles from \"@material-ui/core/styles/withStyles\";\r\nimport {getTextWidth} from \"../../utils/style\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport InputLabel from \"@material-ui/core/InputLabel\";\r\nimport Select from \"@material-ui/core/Select\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport InfiniteScrollTable from \"../infinite-scroll-table\";\r\nimport {getNode, getNodes} from \"../../utils/tree\";\r\nimport {getDashboardDynamicFilterLabelTranslations} from \"../../constants/getDashboardDynamicFilterLabelTranslations\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\n\r\nconst $ = window.jQuery;\r\n\r\nconst styles = theme => ({\r\n root: {},\r\n filter: {\r\n display: \"inline-block\",\r\n verticalAlign: \"bottom\",\r\n marginRight: 16,\r\n \"& label\": {\r\n fontSize: 16\r\n },\r\n padding: \"4px 0\"\r\n },\r\n item: {\r\n fontSize: 14\r\n }\r\n});\r\n\r\nconst getLabelsMap = tree => {\r\n const map = {};\r\n getNodes(tree, \"children\", () => true).forEach(({id, name}) => map[id] = name);\r\n\r\n return map;\r\n}\r\n\r\nfunction DashboardFilters(props) {\r\n const {\r\n classes,\r\n filters,\r\n selectValues,\r\n setSelectValues,\r\n lastValorizedIdx,\r\n setLastValorizedIdx,\r\n filterLevels,\r\n onFilterApply,\r\n onFilterReset\r\n } = props;\r\n\r\n const labels = filters?.labels || [];\r\n const values = filters?.values || [];\r\n\r\n const {t} = useTranslation();\r\n\r\n const [isApplyDisabled, setIsApplyDisable] = useState(false);\r\n\r\n const [visibleId, setVisibleId] = useState(null);\r\n\r\n const [labelsMap] = useState(getLabelsMap(values));\r\n\r\n const handleFilterSelect = (dimension, value) => {\r\n const newSelectedValues = {};\r\n let found = false;\r\n labels.forEach(label => {\r\n if (!found) {\r\n if (label !== dimension) {\r\n newSelectedValues[label] = selectValues[label];\r\n } else {\r\n found = true;\r\n newSelectedValues[label] = value;\r\n }\r\n } else {\r\n newSelectedValues[label] = \"\";\r\n }\r\n });\r\n setSelectValues(newSelectedValues);\r\n setLastValorizedIdx(visibleId);\r\n setVisibleId(null);\r\n setIsApplyDisable(false);\r\n };\r\n\r\n let data = [];\r\n if (visibleId !== null) {\r\n data = visibleId === 0\r\n ? values\r\n : getNode(values, \"children\", ({id}) => id === selectValues[labels[visibleId - 1]]).children\r\n }\r\n\r\n return (\r\n \r\n
    \r\n {(() => {\r\n const selects = [];\r\n\r\n let lastLavorizableIdx = -1;\r\n labels.forEach((label, idx) => {\r\n if (filterLevels?.[labels[idx]] === true) {\r\n lastLavorizableIdx = idx;\r\n }\r\n });\r\n\r\n const getTextWidthEl = $('').css({\r\n visibility: 'hidden',\r\n position: 'absolute',\r\n fontSize: 16\r\n }).appendTo('body').get(0);\r\n\r\n let filterValues = values;\r\n\r\n for (let i = 0; i <= Math.min(lastValorizedIdx + 1, lastLavorizableIdx); i++) {\r\n const label = labels[i];\r\n const minWidth = getTextWidth(label, getTextWidthEl) + 32;\r\n\r\n if (i > 0) {\r\n const idx = filterValues.findIndex(({id}) => id === selectValues[labels[i - 1]]);\r\n filterValues = filterValues[idx]?.children || [];\r\n }\r\n\r\n if (filterValues.length > 0) {\r\n selects.push(\r\n
    \r\n \r\n {getDashboardDynamicFilterLabelTranslations(t)[label] || label}\r\n labelsMap[value]}\r\n className={classes.item}\r\n onOpen={() => setVisibleId(i)}\r\n SelectDisplayProps={{\"aria-haspopup\": true}}\r\n >\r\n {filterValues.map(({id}, idx) =>\r\n {id}\r\n )}\r\n \r\n \r\n
    \r\n );\r\n }\r\n }\r\n\r\n $(getTextWidthEl).remove();\r\n\r\n if (lastLavorizableIdx >= 0) {\r\n selects.push(\r\n {\r\n onFilterApply(selectValues[labels[lastValorizedIdx]]);\r\n setIsApplyDisable(true);\r\n }}\r\n disabled={isApplyDisabled || lastValorizedIdx < 0 || filterLevels?.[labels[lastValorizedIdx]] === false}\r\n >\r\n {t(\"commons.confirm.apply\")}\r\n \r\n );\r\n selects.push(\r\n {\r\n onFilterReset();\r\n setIsApplyDisable(true);\r\n }}\r\n disabled={lastValorizedIdx < 0}\r\n >\r\n {t(\"commons.confirm.reset\")}\r\n \r\n );\r\n }\r\n\r\n return selects\r\n })()}\r\n
    \r\n\r\n setVisibleId(null)}\r\n fullWidth\r\n maxWidth=\"md\"\r\n >\r\n setVisibleId(null)}>\r\n {t(\"components.dashboardFilters.modals.title\", {level: getDashboardDynamicFilterLabelTranslations(t)[labels[visibleId]] || labels[visibleId]})}\r\n \r\n \r\n id}\r\n showHeader={false}\r\n columns={[\r\n {\r\n title: \"\",\r\n dataIndex: \"id\",\r\n render: (_, {id, name}) => `[${id}] ${name}`,\r\n renderText: (_, {id, name}) => `[${id}] ${name}`\r\n }\r\n ]}\r\n onRowClick={rowData => handleFilterSelect(labels[visibleId], rowData.id)}\r\n getRowStyle={rowData => ({\r\n background: rowData.id === selectValues[labels[visibleId]]\r\n ? \"#fff9e5\"\r\n : undefined\r\n })}\r\n />\r\n \r\n \r\n \r\n \r\n \r\n
    \r\n )\r\n}\r\n\r\nexport default withStyles(styles)(DashboardFilters);","import {CancelTokenSource} from \"axios\";\r\n\r\nexport const PENDING_REQUEST_ADD = \"request/add\";\r\nexport const PENDING_REQUESTS_CANCEL = \"requests/cancel\";\r\nexport const PENDING_REQUESTS_CLEAR = \"requests/clear\";\r\n\r\nexport const addPendingRequest = (requestUuid: string, requestLabel: string, cancelTokenSource: CancelTokenSource) => ({\r\n type: PENDING_REQUEST_ADD,\r\n payload: {\r\n requestUuid,\r\n requestLabel,\r\n cancelTokenSource\r\n }\r\n});\r\n\r\nexport const cancelPendingRequests = (requestUuids: string[]) => ({\r\n type: PENDING_REQUESTS_CANCEL,\r\n payload: {\r\n requestUuids\r\n }\r\n});\r\n\r\nexport const clearPendingRequests = () => ({\r\n type: PENDING_REQUESTS_CLEAR\r\n});","import React, {Fragment, useCallback, useEffect, useState} from 'react';\r\nimport {compose} from \"redux\";\r\nimport {connect} from \"react-redux\";\r\nimport {withStyles} from \"@material-ui/core\";\r\nimport {\r\n applyDashboardsDatasetFilter,\r\n clearDashboardsDashboards,\r\n fetchDashboardsDashboard,\r\n fetchDashboardsDataset,\r\n fetchDashboardsMapGeometries,\r\n setDashboardsDatasetFilter,\r\n submitDashboardDatasetDownload\r\n} from \"../../state/dashboard/dashboardActions\";\r\nimport Call from \"../../hocs/call\";\r\nimport Dashboard from \"../dashboard\";\r\nimport DashboardFilters from \"../dashboard-filters\";\r\nimport {\r\n DASHBOARD_ELEM_FILTER_DIMENSION_KEY,\r\n DASHBOARD_ELEM_TYPE_KEY,\r\n DASHBOARD_ELEM_TYPE_VALUE_VIEW,\r\n DASHBOARD_ELEM_VALUE_KEY,\r\n getViewIdxFromRowAndCol\r\n} from \"../../utils/dashboards\";\r\nimport _ from \"lodash\";\r\nimport Paper from \"@material-ui/core/Paper\";\r\nimport Tabs from \"@material-ui/core/Tabs\";\r\nimport Tab from \"@material-ui/core/Tab\";\r\nimport CustomEmpty from \"../custom-empty\";\r\nimport {localizeI18nObj} from \"../../utils/i18n\";\r\nimport {useTranslation} from \"react-i18next\";\r\nimport {CRITERIA_FILTER_TYPE_CODES} from \"../../utils/criteria\";\r\nimport {cancelPendingRequests} from \"../../state/pending-request/pendingRequestActions\";\r\nimport {useLocation} from \"react-router\";\r\nimport Page from \"../page\";\r\nimport {getPageTitle} from \"../../utils/other\";\r\nimport NodeHeader from \"../node-header\";\r\nimport Footer from \"../footer\";\r\nimport {HashLink} from 'react-router-hash-link';\r\nimport Breadcrumbs from \"@material-ui/core/Breadcrumbs\";\r\nimport CustomLink from \"../custom-link\";\r\nimport {getHomeInternalUrl, getNodeInternalUrl} from \"../../links\";\r\nimport {\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_ID,\r\n LABEL_FORMAT_SELECTOR_LABEL_FORMAT_NAME\r\n} from \"../label-format-selector/constants\";\r\nimport Dialog from \"@material-ui/core/Dialog\";\r\nimport CustomDialogTitle from \"../custom-dialog-title\";\r\nimport DialogContent from \"@material-ui/core/DialogContent\";\r\nimport DialogActions from \"@material-ui/core/DialogActions\";\r\nimport Button from \"@material-ui/core/Button\";\r\nimport Grid from \"@material-ui/core/Grid\";\r\nimport FormControl from \"@material-ui/core/FormControl\";\r\nimport TextField from \"@material-ui/core/TextField\";\r\nimport MenuItem from \"@material-ui/core/MenuItem\";\r\nimport {DOWNLOAD_FORMAT_CSV} from \"../../utils/download\";\r\nimport Typography from \"@material-ui/core/Typography\";\r\n\r\nconst styles = theme => ({\r\n root: {\r\n backgroundColor: \"#f5f5f5\",\r\n width: \"100%\",\r\n height: \"100%\",\r\n padding: \"0 !important\",\r\n overflow: \"hidden\"\r\n },\r\n fullWidthContainer: {\r\n padding: \"0 8px\",\r\n width: \"100%\",\r\n height: \"100%\"\r\n },\r\n breadcrumbs: {\r\n padding: \"16px 8px 8px\"\r\n },\r\n breadcrumbsSeparator: {\r\n margin: \"0 4px\"\r\n },\r\n breadcrumbsLastElem: {\r\n color: theme.palette.primary.main,\r\n padding: 4\r\n },\r\n dashboardTitle: {\r\n padding: \"0 12px 4px\",\r\n fontSize: 28,\r\n fontWeight: 300,\r\n letterSpacing: 0\r\n },\r\n commonsFilters: {\r\n padding: \"0 12px\"\r\n },\r\n dashboardHeader: {\r\n padding: \"8px 4px\"\r\n },\r\n dashboard: {\r\n overflow: \"auto\"\r\n },\r\n field: {\r\n marginBottom: theme.spacing(2)\r\n },\r\n fieldLastRow: {\r\n marginBottom: 0\r\n }\r\n});\r\n\r\nconst mapStateToProps = state => ({\r\n hub: state.hub,\r\n exportConfig: state.hub.hub?.exportConfig || {},\r\n node: state.node,\r\n nodeId: state.node?.nodeId,\r\n catalog: state.catalog,\r\n dashboardConfig: state.dashboardConfig,\r\n isA11y: state.app.isA11y,\r\n defaultLanguage: state.app.language,\r\n languages: state.app.languages,\r\n dashboards: state.dashboard.dashboards,\r\n fetchedDashboards: state.dashboard.fetchedDashboards,\r\n jsonStats: state.dashboard.jsonStats,\r\n layouts: state.dashboard.layouts,\r\n filterTrees: state.dashboard.filterTrees,\r\n timePeriodsByFreq: state.dashboard.timePeriodsByFreq,\r\n maps: state.dashboard.maps,\r\n dynamicViewPendingRequests: state.dashboard.dynamicViewPendingRequests\r\n});\r\n\r\nconst mapDispatchToProps = dispatch => ({\r\n fetchDashboard: dashboardId => dispatch(fetchDashboardsDashboard(dashboardId)),\r\n clearDashboards: () => dispatch(clearDashboardsDashboards()),\r\n fetchDataset: (dashboardId, isFetchingDynamicView, nodeId, datasetId, criteria, requestIds, worker) =>\r\n dispatch(fetchDashboardsDataset(dashboardId, isFetchingDynamicView, nodeId, datasetId, criteria, requestIds, worker)),\r\n onFilterSet: (dashboardId, viewIdx, dimension, value) => dispatch(setDashboardsDatasetFilter(dashboardId, viewIdx, dimension, value)),\r\n onFilterApply: () => dispatch(applyDashboardsDatasetFilter()),\r\n fetchMapGeometries: (dashboardId, viewIdx, idList, t, nodeId) => dispatch(fetchDashboardsMapGeometries(dashboardId, viewIdx, idList, t, nodeId)),\r\n onDownloadSubmit: ({nodeId, datasetId, datasetTitle, format, extension, zipped, criteria, layout, params, t}) =>\r\n dispatch(submitDashboardDatasetDownload(nodeId, datasetId, datasetTitle, format, extension, zipped, criteria, layout, params, t)),\r\n cancelPendingRequests: requestUuids => dispatch(cancelPendingRequests(requestUuids))\r\n});\r\n\r\nconst handleHeight = () => {\r\n const dashboardsBreadcrumbsHeight = document.getElementById(\"dashboards__breadcrumbs\")\r\n ? document.getElementById(\"dashboards__breadcrumbs\").offsetHeight\r\n : 0;\r\n const dashboardsTitleHeight = document.getElementById(\"dashboards__title\")\r\n ? document.getElementById(\"dashboards__title\").offsetHeight\r\n : 0;\r\n const dashboardsFiltersHeight = document.getElementById(\"dashboards__filters\")\r\n ? document.getElementById(\"dashboards__filters\").offsetHeight\r\n : 0;\r\n const dashboardsHeaderHeight = document.getElementById(\"dashboards__header\")\r\n ? document.getElementById(\"dashboards__header\").offsetHeight\r\n : 0;\r\n const footerHeight = document.getElementById(\"footer\")\r\n ? document.getElementById(\"footer\").offsetHeight\r\n : 0;\r\n if (document.getElementById(\"dashboards__content\")) {\r\n document.getElementById(\"dashboards__content\").setAttribute(\r\n \"style\",\r\n `height: calc(100% - ${dashboardsBreadcrumbsHeight + dashboardsTitleHeight + dashboardsFiltersHeight + dashboardsHeaderHeight + footerHeight}px)`\r\n );\r\n }\r\n};\r\n\r\nconst getIsFilterEnabled = (dashboard, dashboardConfig) => {\r\n if (!dashboard) {\r\n return false\r\n }\r\n\r\n let hasDynamicView = false;\r\n dashboard.dashboardConfig.forEach(row => {\r\n row.forEach(col => {\r\n if ((col[DASHBOARD_ELEM_FILTER_DIMENSION_KEY] || \"\").length > 0) {\r\n hasDynamicView = true;\r\n }\r\n });\r\n });\r\n\r\n let lastLavorizableIdx = -1;\r\n (dashboardConfig?.labels || []).forEach((label, idx) => {\r\n if (dashboard?.filterLevels?.[dashboardConfig.labels[idx]] === true) {\r\n lastLavorizableIdx = idx;\r\n }\r\n });\r\n\r\n return (hasDynamicView && lastLavorizableIdx >= 0)\r\n};\r\n\r\nconst COLS_SEPARATOR_COMMA = \",\";\r\nconst COLS_SEPARATOR_SEMICOLON = \";\";\r\nconst COLS_SEPARATOR_PIPE = \"|\";\r\nconst COLS_SEPARATOR_TAB = \"\\t\";\r\n\r\nconst getColsSeparators = t => ([\r\n {\r\n value: COLS_SEPARATOR_COMMA,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.comma\") : \"Comma (,)\"\r\n },\r\n {\r\n value: COLS_SEPARATOR_SEMICOLON,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.semicolon\") : \"Semicolon (;)\"\r\n },\r\n {\r\n value: COLS_SEPARATOR_PIPE,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.pipe\") : \"Pipe (|)\"\r\n },\r\n {\r\n value: COLS_SEPARATOR_TAB,\r\n label: t ? t(\"scenes.dataViewer.dialogs.exportCsv.colsSeparator.values.tab\") : \"Tab ( )\"\r\n }\r\n]);\r\n\r\nconst getInitialCsvParams = csvSeparator => ({\r\n labelFormat: LABEL_FORMAT_SELECTOR_LABEL_FORMAT_BOTH,\r\n colsSeparator: (csvSeparator && getColsSeparators().map(({value}) => value).includes(csvSeparator))\r\n ? csvSeparator\r\n : COLS_SEPARATOR_COMMA,\r\n textQualifier: \"\"\r\n});\r\n\r\nfunction Dashboards(props) {\r\n const {\r\n classes,\r\n\r\n dashboardId,\r\n nodeCode,\r\n isDefault,\r\n\r\n hub,\r\n exportConfig,\r\n node,\r\n nodeId,\r\n catalog,\r\n dashboardConfig,\r\n isA11y,\r\n defaultLanguage,\r\n languages,\r\n dashboards,\r\n fetchedDashboards,\r\n jsonStats,\r\n layouts,\r\n filterTrees,\r\n timePeriodsByFreq,\r\n maps,\r\n dynamicViewPendingRequests,\r\n\r\n fetchDashboard,\r\n clearDashboards,\r\n fetchDataset,\r\n onFilterSet,\r\n onFilterApply,\r\n fetchMapGeometries,\r\n onDownloadSubmit,\r\n cancelPendingRequests\r\n } = props;\r\n\r\n const {t} = useTranslation();\r\n const location = useLocation();\r\n\r\n const [filterValue, setFilterValue] = useState(\"\");\r\n const [selectValues, setSelectValues] = useState({});\r\n const [lastValorizedIdx, setLastValorizedIdx] = useState(-1);\r\n\r\n const [allowedDashboards, setAllowedDashboards] = useState(null);\r\n\r\n const [tabIdx, setTabIdx] = useState(0);\r\n\r\n const [exportArgs, setExportArgs] = useState(null);\r\n const [exportCsvParams, setExportCsvParams] = useState(null);\r\n\r\n const [worker] = useState(() => new Worker(\"./workers/fetchDashboardDatasetAsyncHandlerWorker.js\"));\r\n\r\n useEffect(() => {\r\n return () => {\r\n if (worker) {\r\n worker.terminate();\r\n }\r\n }\r\n }, [worker]);\r\n\r\n useEffect(() => {\r\n handleHeight();\r\n }, [dashboards, selectValues, tabIdx]);\r\n\r\n useEffect(() => {\r\n window.addEventListener(\"resize\", handleHeight);\r\n return () => window.removeEventListener(\"resize\", handleHeight)\r\n }, []);\r\n\r\n useEffect(() => {\r\n if (hub && (!nodeCode || (node && catalog && nodeId === catalog.nodeId && node.code.toLowerCase() === nodeCode.toLowerCase()))) {\r\n\r\n const nodeDashboards = nodeId ? (hub.nodes.find(node => node.nodeId === nodeId).dashboards || []) : [];\r\n const hubDashboards = (hub.hub.dashboards || []);\r\n\r\n // const showHubDashboardsExtra = JSON.parse((node?.extras || []).find(({key}) => key === \"ShowHubDashboards\")?.value || null);\r\n const showHubDashboards = true; // (!nodeId || (nodeId && showHubDashboardsExtra === true));\r\n\r\n const newAllowedDashboards = dashboardId\r\n ? [{id: dashboardId}]\r\n : nodeId\r\n ? showHubDashboards\r\n ? _.uniqBy(hubDashboards.concat(nodeDashboards), \"id\")\r\n : nodeDashboards\r\n : hubDashboards\r\n setAllowedDashboards(newAllowedDashboards);\r\n\r\n } else {\r\n clearDashboards();\r\n setFilterValue(\"\");\r\n setAllowedDashboards(null);\r\n }\r\n\r\n return () => {\r\n clearDashboards();\r\n }\r\n }, [hub, nodeId, nodeCode, node, catalog, dashboardId, clearDashboards]);\r\n\r\n const handleFilterApply = value => {\r\n if (value !== filterValue) {\r\n setFilterValue(value);\r\n onFilterApply();\r\n cancelPendingRequests(dynamicViewPendingRequests);\r\n }\r\n };\r\n\r\n const handleFilterReset = () => {\r\n setSelectValues({});\r\n setLastValorizedIdx(-1);\r\n handleFilterApply(dashboardConfig?.defaultValue || \"\");\r\n };\r\n\r\n const handleFetchDatasets = ({dashboardId, fetchStatic, fetchDynamic, dynamicFilterValue}) => {\r\n const requests = [];\r\n\r\n dashboards[dashboardId].dashboardConfig.forEach((row, rowIdx) => {\r\n row.forEach((col, colIdx) => {\r\n if (col[DASHBOARD_ELEM_TYPE_KEY] === DASHBOARD_ELEM_TYPE_VALUE_VIEW) {\r\n const view = dashboards[dashboardId].views[col[DASHBOARD_ELEM_VALUE_KEY]];\r\n\r\n if (view) {\r\n let newCriteria = (view?.criteria || {});\r\n\r\n let addRequest = false;\r\n\r\n const filterDimension = col[DASHBOARD_ELEM_FILTER_DIMENSION_KEY];\r\n\r\n if (!filterDimension || filterDimension.length === 0) {\r\n addRequest = fetchStatic;\r\n\r\n } else {\r\n if (fetchDynamic) {\r\n addRequest = true;\r\n if (dynamicFilterValue) {\r\n newCriteria = {\r\n ...newCriteria,\r\n [filterDimension]: {\r\n ...newCriteria[filterDimension],\r\n id: filterDimension,\r\n type: CRITERIA_FILTER_TYPE_CODES,\r\n filterValues: [dynamicFilterValue]\r\n }\r\n };\r\n } else {\r\n newCriteria = {\r\n ...newCriteria,\r\n [filterDimension]: {\r\n ...newCriteria[filterDimension],\r\n id: filterDimension,\r\n type: CRITERIA_FILTER_TYPE_CODES,\r\n filterValues: dashboardConfig?.defaultValue ? [dashboardConfig.defaultValue] : []\r\n }\r\n };\r\n }\r\n }\r\n }\r\n\r\n if (addRequest) {\r\n const request = requests.find(({nodeId, datasetId, criteria}) => {\r\n return (\r\n nodeId === view.nodeId &&\r\n datasetId === view.datasetId &&\r\n _.isEqual(criteria, newCriteria)\r\n )\r\n });\r\n\r\n if (request === undefined) {\r\n requests.push({\r\n nodeId: view.nodeId,\r\n datasetId: view.datasetId,\r\n criteria: newCriteria,\r\n requestIds: [getViewIdxFromRowAndCol(rowIdx, colIdx)]\r\n });\r\n } else {\r\n request.requestIds.push(getViewIdxFromRowAndCol(rowIdx, colIdx));\r\n }\r\n }\r\n }\r\n }\r\n });\r\n });\r\n\r\n requests.forEach(({nodeId, datasetId, criteria, requestIds}) =>\r\n fetchDataset(dashboardId, fetchDynamic, nodeId, datasetId, criteria, requestIds, worker)\r\n );\r\n };\r\n\r\n const handleExportCsvShow = useCallback(exportArgs => {\r\n setExportArgs(exportArgs);\r\n setExportCsvParams(getInitialCsvParams(exportConfig.csvSeparator));\r\n }, [exportConfig.csvSeparator]);\r\n\r\n const handleExportCsvHide = useCallback(() => {\r\n setExportArgs(null);\r\n }, []);\r\n\r\n const handleExportCsvSubmit = useCallback(() => {\r\n handleExportCsvHide();\r\n onDownloadSubmit({\r\n ...exportArgs,\r\n params: {\r\n ...exportArgs.params,\r\n ...exportCsvParams\r\n }\r\n });\r\n }, [exportArgs, exportCsvParams, onDownloadSubmit, handleExportCsvHide]);\r\n\r\n const handleExport = useCallback((exportArgs) => {\r\n if (exportArgs.format === DOWNLOAD_FORMAT_CSV) {\r\n handleExportCsvShow(exportArgs);\r\n } else {\r\n onDownloadSubmit(exportArgs);\r\n }\r\n }, [handleExportCsvShow, onDownloadSubmit]);\r\n\r\n const currentDashboardId = dashboardId\r\n ? dashboardId\r\n : allowedDashboards?.[tabIdx]?.id\r\n ? allowedDashboards[tabIdx].id\r\n : null;\r\n\r\n const params = new URLSearchParams(location.search);\r\n params.set(\"accessible\", \"true\");\r\n const paramsStr = params.toString();\r\n const path = (nodeId && nodeCode)\r\n ? `/${window.language}/${nodeCode.toLowerCase()}`\r\n : `/${window.language}`;\r\n\r\n return (\r\n \r\n {!isA11y && (\r\n 0 ? \"?\" : \"\") + paramsStr}\r\n target=\"_self\"\r\n className=\"skip-link sr-only\"\r\n >\r\n {t(\"commons.hashLinks.accessible\")}\r\n \r\n )}\r\n \r\n {t(\"commons.hashLinks.main\")}\r\n \r\n \r\n {t(\"commons.hashLinks.footer\")}\r\n \r\n \r\n
    \r\n {\r\n if (isA11y) {\r\n if (nodeCode) {\r\n return `/${window.language}/${nodeCode.toLowerCase()}`;\r\n } else {\r\n return `/${window.language}`;\r\n }\r\n } else {\r\n return false;\r\n }\r\n }\r\n }\r\n />\r\n
    \r\n
    \r\n \r\n \r\n {nodeId && (hub.nodes || []).length > 1 && (\r\n \r\n )}\r\n \r\n {t(\"scenes.dashboards.breadcrumbs.dashboards\")}\r\n \r\n \r\n
    \r\n {currentDashboardId\r\n ? (\r\n \r\n \r\n \r\n
    \r\n \r\n {(allowedDashboards || []).length > 1\r\n ? t(\"scenes.dashboard.title\")\r\n : localizeI18nObj(dashboards?.[currentDashboardId]?.title, defaultLanguage, languages)\r\n }\r\n \r\n
    \r\n
    \r\n \r\n \r\n
    \r\n
    \r\n {((allowedDashboards || []).length > 1) && (\r\n
    \r\n \r\n setTabIdx(newValue)}\r\n >\r\n {allowedDashboards.map(({id, title}, idx) =>\r\n \r\n )}\r\n \r\n \r\n
    \r\n )}\r\n \r\n
    \r\n {(allowedDashboards || []).map(({id}) =>\r\n
    \r\n )}\r\n \r\n \r\n
    \r\n \r\n \r\n )\r\n : (\r\n \r\n )\r\n }\r\n