PageSourceSearch

https://www.cccb.org/o/frontend-editor-ckeditor-web/__liferay__/ex…editor5-restricted-editing$dist$index.js.js

js cccb.org collected 2026-09-24 07:58:17 UTC 28,540 bytes, 10 lines download raw bytes

1import{Accessibility as ie,Command as M,CommandCollection as re,Context as se,ContextPlugin as ae,EditingKeystrokeHandler as ce,Editor as le,ElementApiMixin as de,MultiCommand as ue,PendingActions as ge,Plugin as m,_DEFAULT_ACCESSIBILITY_GROUP_ID as me,_getEditorUsageData as pe,attachToForm as Ie,secureSourceElement as we}from"../../../frontend-editor-ckeditor-web/__liferay__/exports/@ckeditor$ckeditor5-core$dist$index.js.js";import{AttributeOperation as Ee,Batch as be,BubblingEmitterMixin as _e,BubblingEventInfo as Me,ClickObserver as Ce,CompositionObserver as Ve,Conversion as xe,ConversionHelpers as ke,DataController as Se,Differ as Re,DomEventObserver as Te,DowncastHelpers as ve,EditingController as ye,EditingView as Pe,FakeSelectionObserver as De,FocusObserver as Le,History as Be,HtmlDataProcessor as Ae,InputObserver as Fe,InsertOperation as Oe,KeyObserver as Ne,MarkerCollection as He,MarkerOperation as Ue,Matcher as v,MergeOperation as We,Model as je,ModelDocument as ze,ModelDocumentFragment as Ge,ModelDocumentSelection as qe,ModelElement as Ke,ModelLivePosition as $e,ModelLiveRange as Qe,ModelNode as Je,ModelNodeList as Xe,ModelPosition as Ye,ModelRange as Ze,ModelRootElement as et,ModelSchemaContext as tt,ModelSelection as nt,ModelText as ot,ModelTextProxy as it,ModelTreeWalker as rt,ModelTypeCheckable as st,ModelWriter as at,MouseObserver as ct,MoveOperation as lt,MutationObserver as dt,NoOperation as ut,Observer as gt,OperationFactory as mt,RenameOperation as pt,RootAttributeOperation as It,RootOperation as wt,SelectionObserver as ht,SplitOperation as ft,StylesMap as Et,StylesProcessor as bt,TabObserver as _t,TouchObserver as Mt,UpcastHelpers as Ct,UpcastWriter as Vt,ViewAttributeElement as xt,ViewContainerElement as kt,ViewDataTransfer as St,ViewDocument as Rt,ViewDocumentDomEventData as Tt,ViewDocumentFragment as vt,ViewDocumentSelection as yt,ViewDomConverter as Pt,ViewDowncastWriter as Dt,ViewEditableElement as Lt,ViewElement as Bt,ViewEmptyElement as At,ViewNode as Ft,ViewPosition as Ot,ViewRange as Nt,ViewRawElement as Ht,ViewRenderer as Ut,ViewRootEditableElement as Wt,ViewSelection as jt,ViewText as zt,ViewTextProxy as Gt,ViewTokenList as qt,ViewTreeWalker as Kt,ViewTypeCheckable as $t,ViewUIElement as Qt,ViewUpcastWriter as Jt,XmlDataProcessor as Xt,_DataProcessorBasicHtmlWriter as Yt,_DetachOperation as Zt,_MapperCache as en,_OperationReplayer as tn,_VIEW_BR_FILLER as nn,_VIEW_INLINE_FILLER as on,_VIEW_INLINE_FILLER_LENGTH as rn,_VIEW_MARKED_NBSP_FILLER as sn,_VIEW_NBSP_FILLER as an,_ViewElementConversionConsumables as cn,_autoParagraphEmptyModelRoots as ln,_convertMapToStringifiedObject as dn,_convertMapToTags as un,_deleteModelContent as gn,_downcastCleanSelection as mn,_downcastConvertCollapsedSelection as pn,_downcastConvertRangeSelection as In,_downcastCreateViewElementFromDowncastHighlightDescriptor as wn,_downcastInsertAttributesAndChildren as hn,_downcastInsertElement as fn,_downcastInsertStructure as En,_downcastInsertText as bn,_downcastInsertUIElement as _n,_downcastRemove as Mn,_downcastWrap as Cn,_dumpTrees as Vn,_getDataWithoutViewFiller as xn,_getModelData as kn,_getModelNodeAfterPosition as Sn,_getModelNodeBeforePosition as Rn,_getModelTextNodeAtPosition as Tn,_getSelectedModelContent as vn,_getViewData as yn,_initDocumentDumping as Pn,_injectModelSelectionPostFixer as Dn,_injectViewQuirksHandling as Ln,_injectViewUIElementHandling as Bn,_insertIntoModelNodeList as An,_insertModelContent as Fn,_insertModelObject as On,_isInlineViewFiller as Nn,_isParagraphableModelNode as Hn,_isViewPatternMatched as Un,_logDocument as Wn,_mergeIntersectingModelRanges as jn,_modifyModelSelection as zn,_moveInModelNodeList as Gn,_normalizeConversionConsumables as qn,_normalizeInModelNodeList as Kn,_operationTransform as $n,_parseModel as Qn,_parseView as Jn,_removeFromModelNodeList as Xn,_setAttributeInModelNodeList as Yn,_setModelData as Zn,_setViewData as eo,_startsWithViewFiller as to,_stringifyModel as no,_stringifyView as oo,_tryFixingModelRange as io,_upcastConvertSelectionChange as ro,_upcastConvertText as so,_upcastConvertToModelFragment as ao,_wrapInModelParagraph as co,addBackgroun
1dStylesRules as lo,addBorderStylesRules as uo,addMarginStylesRules as go,addPaddingStylesRules as mo,autoParagraphEmptyRoots as po,disableViewPlaceholder as Io,enableViewPlaceholder as wo,getBoxSidesStyleShorthandValue as ho,getBoxSidesStyleValueReducer as fo,getBoxSidesStyleValues as Eo,getPositionStyleShorthandNormalizer as bo,getShorthandStylesValues as _o,getViewFillerOffset as Mo,hideViewPlaceholder as Co,isAttachmentStyleValue as Vo,isColorStyleValue as xo,isLengthStyleValue as ko,isLineStyleValue as So,isParagraphable as Ro,isPercentageStyleValue as To,isPositionStyleValue as vo,isRepeatStyleValue as yo,isURLStyleValue as Po,needsViewPlaceholder as Do,showViewPlaceholder as Lo,transformOperationSets as Bo,wrapInParagraph as Ao}from"../../../frontend-editor-ckeditor-web/__liferay__/exports/@ckeditor$ckeditor5-engine$dist$index.js.js";import{IconAccessibility as No,IconAddComment as Ho,IconAlignBottom as Uo,IconAlignCenter as Wo,IconAlignJustify as jo,IconAlignLeft as zo,IconAlignMiddle as Go,IconAlignRight as qo,IconAlignTop as Ko,IconArrowDown as $o,IconArrowUp as Qo,IconBold as Jo,IconBookmark as Xo,IconBookmarkInline as Yo,IconBookmarkMedium as Zo,IconBookmarkSmall as ei,IconBrowseFiles as ti,IconBulletedList as ni,IconCancel as oi,IconCaption as ii,IconCaseChange as ri,IconCheck as si,IconChevronDown as ai,IconChevronUp as ci,IconCkboxImageEdit as li,IconCode as di,IconCodeBlock as ui,IconCog as gi,IconColorPalette as mi,IconColorTileCheck as pi,IconCommentsArchive as Ii,IconContentLock as C,IconContentUnlock as y,IconCopy as wi,IconDragHandle as hi,IconDragIndicator as fi,IconDropbox as Ei,IconDropdownArrow as bi,IconEditComment as _i,IconEmoji as Mi,IconEraser as Ci,IconError as Vi,IconExportPdf as xi,IconExportWord as ki,IconFacebook as Si,IconFindReplace as Ri,IconFontBackground as Ti,IconFontColor as vi,IconFontFamily as yi,IconFontSize as Pi,IconFullscreenEnter as Di,IconFullscreenLeave as Li,IconGoogleDrive as Bi,IconGooglePhotos as Ai,IconHeading1 as Fi,IconHeading2 as Oi,IconHeading3 as Ni,IconHeading4 as Hi,IconHeading5 as Ui,IconHeading6 as Wi,IconHistory as ji,IconHorizontalLine as zi,IconHtml as Gi,IconImage as qi,IconImageAssetManager as Ki,IconImageUpload as $i,IconImageUrl as Qi,IconImportExport as Ji,IconImportWord as Xi,IconIndent as Yi,IconInsertMergeField as Zi,IconItalic as er,IconLegalStyleList as tr,IconLineHeight as nr,IconLink as or,IconListStyleCircle as ir,IconListStyleDecimal as rr,IconListStyleDecimalLeadingZero as sr,IconListStyleDisc as ar,IconListStyleLowerLatin as cr,IconListStyleLowerRoman as lr,IconListStyleSquare as dr,IconListStyleUpperLatin as ur,IconListStyleUpperRoman as gr,IconLocal as mr,IconLoupe as pr,IconLowVision as Ir,IconMagicWand as wr,IconMarker as hr,IconMedia as fr,IconMediaPlaceholder as Er,IconMultiLevelList as br,IconNextArrow as _r,IconNotification as Mr,IconNumberedList as Cr,IconObjectCenter as Vr,IconObjectFullWidth as xr,IconObjectInline as kr,IconObjectInlineLeft as Sr,IconObjectInlineRight as Rr,IconObjectLeft as Tr,IconObjectRight as vr,IconObjectSizeCustom as yr,IconObjectSizeFull as Pr,IconObjectSizeLarge as Dr,IconObjectSizeMedium as Lr,IconObjectSizeSmall as Br,IconOneDrive as Ar,IconOutdent as Fr,IconPageBreak as Or,IconPaginationExample as Nr,IconPaintRoller as Hr,IconPaintRollerCursorDefault as Ur,IconPaintRollerCursorText as Wr,IconParagraph as jr,IconPen as zr,IconPencil as Gr,IconPilcrow as qr,IconPlay as Kr,IconPlus as $r,IconPreviewMergeFields as Qr,IconPreviousArrow as Jr,IconPrint as Xr,IconProjectLogo as Yr,IconQuote as Zr,IconRedo as es,IconRemove as ts,IconRemoveComment as ns,IconRemoveFormat as os,IconReturnArrow as is,IconRevisionHistory as rs,IconRobotPencil as ss,IconSelectAll as as,IconSettings as cs,IconShowBlocks as ls,IconSource as ds,IconSpecialCharacters as us,IconStrikethrough as gs,IconSubmit as ms,IconSubscript as ps,IconSuperscript as Is,IconTable as ws,IconTableCellProperties as hs,IconTableColumn as fs,IconTableLayout as Es,IconTableMergeCell as bs,IconTableOfContents as _s,IconTableProperties as Ms,IconTableRow as Cs,IconTemplate as Vs,IconTemplateGeneric as xs,IconText as ks,IconTextAlternative as Ss,IconThreeVerticalDots as Rs,IconTodoList as Ts,IconTrackChanges as vs,IconTrackChangesAccept as ys,IconTrackChangesDiscard as Ps,IconUnderline as Ds,IconUndo as Ls,IconUnlink as Bs,IconUploadcareImageEdit as As,IconUploadcareImageUpload as Fs,IconUploadcareLink as Os,IconUser as Ns,IconWarning as Hs}from"../../../frontend-editor-ckeditor-web/__liferay__/exports/@ckeditor$ckeditor5-icons$dist$index.js.js";import{AccessibilityHelp as js,AccessibilityHelpContentView as zs,AriaLiveAnnouncer as Gs,AriaLiveAnnouncerPoliteness as qs,AriaLiveAnnouncerRegionView as Ks,AriaLiveAnnouncerView as $s,AutocompleteView as Qs,Badge as Js,BalloonPanelView as Xs,BalloonToolbar as Ys,BlockButtonView as Zs,BlockToolbar as ea,BodyCollection as ta,BoxedEditorUIView as na,ButtonLabelView as oa,ButtonLabelWithHighlightView as ia,ButtonView as P,CollapsibleView as ra,ColorGridView as sa,ColorGridsFragmentView as aa,ColorPickerFragmentView as ca,ColorPickerInputRowView as la,ColorPickerView as da,ColorSelectorView as ua,ColorTileView as ga,ComponentFactory as ma,ContextualBalloon as pa,CssTransitionDisablerMixin as Ia,DefaultMenuBarItems as wa,Dialog as ha,DialogActionsView as fa,DialogContentView as Ea,DialogView as ba,DialogViewPosition as _a,DocumentColorCollection as Ma,DraggableViewMixin as Ca,DropdownButtonView as Va,DropdownMenuButtonView as xa,DropdownMenuListItemButtonView as ka,DropdownMenuListItemView as Sa,DropdownMenuListView as Ra,DropdownMenuNestedMenuPanelView as Ta,DropdownMenuNestedMenuView as va,DropdownMenuPanelPositioningFunctions as ya,DropdownMenuRootListView as Pa,DropdownPanelView as Da,DropdownView as La,EditableUIView as Ba,EditorUI as Aa,EditorUIView as Fa,EvaluationBadge as Oa,FileDialogButtonView as Na,FileDialogListItemButtonView as Ha,FileDialogViewMixin as Ua,FocusCycler as Wa,FormHeaderView as ja,FormRowView as za,HighlightedTextView as Ga,IconView as qa,IframeView as Ka,InlineEditableUIView as $a,InputBase as Qa,InputNumberView as Ja,InputTextView as Xa,InputView as Ya,ItemsView as Za,LabelView as ec,LabelWithHighlightView as tc,LabeledFieldView as nc,LabeledInputVie
1w as oc,ListItemButtonView as ic,ListItemGroupView as rc,ListItemView as sc,ListSeparatorView as ac,ListView as cc,MenuBarMenuButtonView as lc,MenuBarMenuListItemButtonView as V,MenuBarMenuListItemFileDialogButtonView as dc,MenuBarMenuListItemView as D,MenuBarMenuListView as L,MenuBarMenuPanelView as uc,MenuBarMenuView as B,MenuBarView as gc,NESTED_TOOLBAR_ICONS as mc,Notification as pc,PoweredBy as Ic,SearchInfoView as wc,SearchResultsView as hc,SearchTextView as fc,SliderView as Ec,SpinnerView as bc,SplitButtonView as _c,StickyPanelView as Mc,SwitchButtonView as Cc,Template as Vc,TextareaView as xc,ToolbarLineBreakView as kc,ToolbarSeparatorView as Sc,ToolbarView as Rc,TooltipManager as Tc,UIModel as A,View as vc,ViewCollection as yc,ViewModel as Pc,_CheckIconHolderView as Dc,_CollapsibleView as Lc,_ContextualBalloonRotatorView as Bc,_DropdownMenuBehaviors as Ac,_DropdownRootMenuBehaviors as Fc,_MenuBarBehaviors as Oc,_MenuBarMenuBehaviors as Nc,_MenuBarMenuViewPanelPositioningFunctions as Hc,_SearchInfoView as Uc,_SearchTextQueryView as Wc,_TemplateBinding as jc,_TemplateIfBinding as zc,_TemplateToBinding as Gc,_convertColor as qc,_convertColorToHex as Kc,_preventUiViewDefault as $c,_processMenuBarConfig as Qc,_registerCustomElement as Jc,_tryNormalizeHexColor as Xc,addKeyboardHandlingForGrid as Yc,addListToDropdown as F,addMenuToDropdown as Zc,addToolbarToDropdown as el,clickOutsideHandler as tl,createDropdown as O,createLabeledDropdown as nl,createLabeledInputNumber as ol,createLabeledInputText as il,createLabeledTextarea as rl,filterGroupAndItemNames as sl,focusChildOnDropdownOpen as al,getLocalizedColorOptions as cl,isFocusable as ll,isViewWithFocusCycler as dl,normalizeColorOptions as ul,normalizeMenuBarConfig as gl,normalizeSingleColorDefinition as ml,normalizeToolbarConfig as pl,submitHandler as Il}from"../../../frontend-editor-ckeditor-web/__liferay__/exports/@ckeditor$ckeditor5-ui$dist$index.js.js";import{CKEditorError as fl,Collection as N,Config as El,DOCUMENTATION_URL as bl,DomEmitterMixin as _l,ElementReplacer as Ml,EmitterMixin as Cl,EventInfo as Vl,FocusTracker as xl,KeystrokeHandler as kl,Locale as Sl,ObservableMixin as Rl,Rect as Tl,ResizeObserver as vl,_clearTranslations as yl,_getEmitterId as Pl,_getEmitterListenedTo as Dl,_getUserAgent as Ll,_isAndroid as Bl,_isBlink as Al,_isGecko as Fl,_isMac as Ol,_isMediaForcedColors as Nl,_isMotionReduced as Hl,_isRegExpUnicodePropertySupported as Ul,_isSafari as Wl,_isWindows as jl,_isiOS as zl,_setEmitterId as Gl,_translate as ql,_unifyTranslations as Kl,abortableDebounce as $l,add as Ql,areConnectedThroughProperties as Jl,collectStylesheets as Xl,compareArrays as Yl,count as Zl,crc32 as ed,createElement as td,delay as nd,diff as od,diffToChanges as id,env as rd,exponentialDelay as sd,fastDiff as ad,findClosestScrollableAncestor as cd,first as ld,formatHtml as dd,getAncestors as ud,getBorderWidths as gd,getCode as md,getCommonAncestor as pd,getDataFromElement as Id,getEnvKeystrokeText as wd,getLanguageDirection as hd,getLocalizedArrowKeyCodeDirection as fd,getOptimalPosition as Ed,getPositionedAncestor as bd,getRangeFromMouseEvent as _d,getVisualViewportOffset as Md,global as Cd,indexOf as Vd,insertAt as xd,insertToPriorityArray as kd,isArrowKeyCode as Sd,isCombiningMark as Rd,isComment as Td,isForwardArrowKeyCode as vd,isHighSurrogateHalf as yd,isInsideCombinedSymbol as Pd,isInsideEmojiSequence as Dd,isInsideSurrogatePair as Ld,isIterable as Bd,isLowSurrogateHalf as Ad,isNode as Fd,isRange as Od,isText as Nd,isValidAttributeName as Hd,isViewWithFocusTracker as Ud,isVisible as Wd,isWindow as jd,keyCodes as zd,logError as Gd,logWarning as qd,mapsEqual as Kd,nth as $d,objectToMap as Qd,parseBase64EncodedObject as Jd,parseKeystroke as Xd,priorities as Yd,releaseDate as Zd,remove as eu,retry as tu,scrollAncestorsToShowTarget as nu,scrollViewportToShowTarget as ou,setDataInElement as iu,spliceArray as ru,spy as su,toArray as au,toMap as cu,toUnit as lu,uid as du,version as uu,wait as gu}from"../../../frontend-editor-ckeditor-web/__liferay__/exports/@ckeditor$ckeditor5-utils$dist$index.js.js";var I=class extends M{_direction;constructor(e,t){super(e),this.affectsData=!1,this._direction=t}refresh(){this.isEnabled=this._checkEnabled()}execute(){let e=H(this.editor.model,this._direction);e&&this.editor.model.change(t=>{t.setSelection(e)})}_checkEnabled(){return!!H(this.editor.model,this._direction)}};function H(s,e){let o=s.document.selection.getFirstPosition(),n=[];for(let i of s.markers.getMarkersGroup("restrictedEditingException")){let r=i.getRange(),a=o.isTouching(r.start)&&o.hasSameParentAs(r.start)||o.isTouching(r.end)&&o.hasSameParentAs(r.end
1);r.containsPosition(o)||a||(e==="forward"&&r.start.isAfter(o)||e==="backward"&&r.end.isBefore(o))&&n.push(r)}if(n.length)return n.sort((i,r)=>e==="forward"?i.start.isAfter(r.start)?1:-1:i.start.isBefore(r.start)?1:-1).shift()}function u(s,e){for(let t of s.model.markers){let o=t.getRange();if(T(o,e)&&t.name.startsWith("restrictedEditingException:"))return t}}function T(s,e){return s.containsPosition(e)||s.end.isEqual(e)||s.start.isEqual(e)}function W(s,e){if(!e)return!1;let t=e.getRange();return s.isCollapsed?T(t,s.focus):t.containsRange(s.getFirstRange(),!0)}var U="restricted-editing-exception_selected";function j(s){let e=s.editing.view,t=s.model,o=new Set;e.document.registerPostFixer(n=>{let i=t.document.selection,r=u(s,i.anchor);if(!r)return!1;for(let a of s.editing.mapper.markerNameToElements(r.name))n.addClass(U,a),o.add(a);return!1}),s.conversion.for("editingDowncast").add(n=>{n.on("insert",i,{priority:"highest"}),n.on("remove",i,{priority:"highest"}),n.on("attribute",i,{priority:"highest"}),n.on("cleanSelection",i);function i(){e.change(r=>{for(let a of o.values())r.removeClass(U,a),o.delete(a)})}})}function z(s){return e=>{let t=!1;for(let{name:o,data:n}of s.model.document.differ.getChangedMarkers())o.startsWith("restrictedEditingException")&&n.newRange&&n.newRange.root.rootName=="$graveyard"&&(e.updateMarker(o,{range:e.createRange(e.createPositionAt(n.oldRange.start))}),t=!0);return t}}function G(s){return e=>{let t=!1,o=s.model.schema;for(let n of s.model.document.differ.getChanges())n.type=="insert"&&o.checkChild("$block",n.name)&&(t=K(s,n.position,n.length,e)||t,t=$(s,n.position,n.length,e)||t);return t}}function q(s){return e=>e.on("element:span",(t,o,n)=>{let{writer:i}=n,a=new v(s.view).match(o.viewItem);if(!a)return;let c=a.match;c.name=!0;let{modelRange:l}=n.convertChildren(o.viewItem,o.modelCursor);n.consumable.consume(o.viewItem,c);let d=s.model(),g=i.createElement("$marker",{"data-name":d}),p=i.createElement("$marker",{"data-name":d});i.insert(p,l.end),i.insert(g,l.start),o.modelRange=i.createRange(i.createPositionBefore(g),i.createPositionAfter(p)),o.modelCursor=o.modelRange.end})}function K(s,e,t,o){let n=u(s,e.getShiftedBy(t));return n&&n.getStart().isEqual(e.getShiftedBy(t))?(o.updateMarker(n,{range:o.createRange(n.getStart().getShiftedBy(-t),n.getEnd())}),!0):!1}function $(s,e,t,o){let n=u(s,e);return n&&n.getEnd().isEqual(e)?(o.updateMarker(n,{range:o.createRange(n.getStart(),n.getEnd().getShiftedBy(t))}),!0):!1}
1var x="RestrictedEditingMode",w=class extends m{_alwaysEnabled;_allowedInException;static get pluginName(){return"RestrictedEditingModeEditing"}static get isOfficialPlugin(){return!0}constructor(e){super(e),e.config.define("restrictedEditing",{allowedCommands:["bold","italic","link","unlink"],allowedAttributes:["bold","italic","linkHref"]}),this._alwaysEnabled=new Set(["undo","redo"]),this._allowedInException=new Set(["input","insertText","delete","deleteForward"])}init(){let e=this.editor,t=e.editing.view;e.config.get("restrictedEditing.allowedCommands").forEach(n=>this._allowedInException.add(n)),this._setupConversion(),this._setupCommandsToggling(),this._setupRestrictions(),e.commands.add("goToPreviousRestrictedEditingException",new I(e,"backward")),e.commands.add("goToNextRestrictedEditingException",new I(e,"forward")),this.listenTo(t.document,"tab",(n,i)=>{let r=i.shiftKey?"goToPreviousRestrictedEditingException":"goToNextRestrictedEditingException";e.commands.get(r).isEnabled&&(e.execute(r),i.preventDefault(),i.stopPropagation()),n.stop()},{context:"$capture"}),e.keystrokes.set("Ctrl+A",Q(e)),t.change(n=>{for(let i of t.document.roots)n.addClass("ck-restricted-editing_mode_restricted",i)}),e.data.on("set",()=>{e.model.change(n=>{for(let i of e.model.markers.getMarkersGroup("restrictedEditingException"))n.removeMarker(i.name)})},{priority:"high"})}enableCommand(e){this.editor.commands.get(e).clearForceDisabled(x),this._alwaysEnabled.add(e)}_setupConversion(){let e=this.editor,o=e.model.document,n=0;e.conversion.for("upcast").add(q({view:{name:"span",classes:"restricted-editing-exception"},model:()=>(n++,`restrictedEditingException:${n}`)})),e.conversion.for("downcast").add(i=>{i.on("addMarker:restrictedEditingException",(r,a,c)=>{if(!a.item||a.item.is("selection")||!c.schema.isInline(a.item)||!c.consumable.consume(a.item,r.name))return;let l=c.writer,d=l.createAttributeElement("span",{class:"restricted-editing-exception"},{id:a.markerName,priority:-10}),g=c.mapper.toViewRange(a.range),p=l.wrap(g,d);for(let _ of p.getItems())if(_.is("attributeElement")&&_.isSimilar(d)){c.mapper.bindElementToMarker(_,a.markerName);break}})}),e.conversion.for("downcast").markerToHighlight({model:"restrictedEditingException",view:()=>({name:"span",classes:"restricted-editing-exception",priority:-10})}),e.conversion.for("editingDowncast").markerToElement({model:"restrictedEditingException",view:(i,{writer:r})=>r.createUIElement("span",{class:"restricted-editing-exception restricted-editing-exception_collapsed"})}),e.conversion.for("dataDowncast").markerToElement({model:"restrictedEditingException",view:(i,{writer:r})=>r.createEmptyElement("span",{class:"restricted-editing-exception"})}),o.registerPostFixer(G(e)),o.registerPostFixer(z(e)),o.registerPostFixer(Z(e)),j(e)}_setupRestrictions(){let e=this.editor,t=e.model,o=t.document.selection,n=e.editing.view.document,i=e.plugins.get("ClipboardPipeline");this.listenTo(t,"deleteContent",X(e),{priority:"high"});let r=e.commands.get("insertText");r&&this.listenTo(r,"execute",Y(e),{priority:"high"}),this.listenTo(i,"contentInsertion",c=>{k(e,o.getFirstRange())||c.stop()}),this.listenTo(n,"clipboardOutput",(c,l)=>{l.method=="cut"&&!k(e,o.getFirstRange())&&c.stop()},{priority:"high"});let a=e.config.get("restrictedEditing.allowedAttributes");t.schema.addAttributeCheck(ee(a)),t.schema.addChildCheck(te())}_setupCommandsToggling(){let o=this.editor.model.document;this._disableCommands(),this.listenTo(o.selection,"change",this._checkCommands.bind(this)),this.listenTo(o,"change:data",this._checkCommands.bind(this))}_checkCommands(){let e=this.editor,t=e.model.document.selection;if(t.rangeCount>1){this._disableCommands();return}let o=u(e,t.focus);this._disableCommands(),W(t,o)&&this._enableCommands(o)}_enableCommands(e){let t=this.editor;for(let[o,n]of t.commands)!n.affectsData||this._alwaysEnabled.has(o)||this._allowedInException.has(o)&&(J(o,t.model.document.selection,e.getRange())||n.clearForceDisabled(x))}_disableCommands(){let e=this.editor;for(let[t,o]of e.commands)!o.affectsData||this._alwaysEnabled.has(t)||o.forceDisabled(x)}};function Q(s){return(e,t)=>{let o=s.model,n=s.model.document.selection,i=u(s,n.focus);if(!i)return;let r=n.getFirstRange();(i.getRange().containsRange(r,!0)||n.isCollapsed)&&(t(),o.change(c=>{c.setSelection(i.getRange())}))}}
1function J(s,e,t){return!!(s=="delete"&&t.start.isEqual(e.focus)||s=="deleteForward"&&e.isCollapsed&&t.end.isEqual(e.focus))}function X(s){return(e,t)=>{let[o]=t,n=u(s,o.focus)||u(s,o.anchor);if(!n){e.stop();return}if(o.isCollapsed)return;let i=n.getRange().getIntersection(o.getFirstRange());o.is("documentSelection")?s.model.change(r=>{r.setSelection(i)}):o.setTo(i)}}function Y(s){return(e,t)=>{let[o]=t,{range:n}=o;n&&(k(s,n)||e.stop())}}function k(s,e){let t=u(s,e.start),o=u(s,e.end);return t&&o&&o===t}function Z(s){return e=>{let t=!1,o=s.model.document.differ.getChangedMarkers();for(let{data:n,name:i}of o){if(!i.startsWith("restrictedEditingException"))continue;let r=n.newRange;if(!n.oldRange&&!r.isFlat){let a=r.start,c=r.end,l=a.path.length>c.path.length,d=l?r.start:e.createPositionAt(c.parent,0),g=l?e.createPositionAt(a.parent,"end"):r.end;e.updateMarker(i,{range:e.createRange(d,g)}),t=!0}}return t}}function ee(s){return(e,t)=>{if(e.startsWith("$clipboardHolder"))return s.includes(t)}}function te(){return(s,e)=>{if(s.startsWith("$clipboardHolder"))return e.name==="$text"}}var h=class extends m{static get pluginName(){return"RestrictedEditingModeUI"}static get isOfficialPlugin(){return!0}init(){let e=this.editor,t=e.t;e.ui.componentFactory.add("restrictedEditing",o=>{let n=O(o),i=new N;return this._getButtonDefinitions().forEach(({commandName:r,label:a,keystroke:c})=>{i.add(this._getButtonDefinition(r,a,c))}),F(n,i,{role:"menu"}),n.buttonView.set({label:t("Navigate editable regions"),icon:C,tooltip:!0,isEnabled:!0,isOn:!1}),this.listenTo(n,"execute",r=>{let{_commandName:a}=r.source;e.execute(a),e.editing.view.focus()}),n}),e.ui.componentFactory.add("menuBar:restrictedEditing",o=>{let n=new B(o),i=new L(o);return i.set({ariaLabel:t("Navigate editable regions"),role:"menu"}),n.buttonView.set({label:t("Navigate editable regions"),icon:C}),n.panelView.children.add(i),this._getButtonDefinitions().forEach(({commandName:r,label:a,keystroke:c})=>{let l=new D(o,n),d=this._createMenuBarButton(a,r,c);d.delegate("execute").to(n),l.children.add(d),i.items.add(l)}),n})}_createMenuBarButton(e,t,o){let n=this.editor,i=n.commands.get(t),r=new V(n.locale);return r.set({label:e,keystroke:o,isEnabled:!0,isOn:!1}),r.bind("isEnabled").to(i),this.listenTo(r,"execute",()=>{n.execute(t),n.editing.view.focus()}),r}_getButtonDefinition(e,t,o){let i=this.editor.commands.get(e),r={type:"button",model:new A({label:t,withText:!0,keystroke:o,withKeystroke:!0,role:"menuitem",_commandName:e})};return r.model.bind("isEnabled").to(i,"isEnabled"),r}_getButtonDefinitions(){let e=this.editor.locale.t;return[{commandName:"goToPreviousRestrictedEditingException",label:e("Previous editable region"),keystroke:"Shift+Tab"},{commandName:"goToNextRestrictedEditingException",label:e("Next editable region"),keystroke:"Tab"}]}},S=class extends m{static get pluginName(){return"RestrictedEditingMode"}static get isOfficialPlugin(){return!0}static get requires(){return[w,h]}},f=class extends M{refresh(){let e=this.editor.model,t=e.document;this.value=!!t.selection.getAttribute("restrictedEditingException"),this.isEnabled=e.schema.checkAttributeInSelection(t.selection,"restrictedEditingException")}execute(e={}){let t=this.editor.model,n=t.document.selection,i=e.forceValue===void 0?!this.value:e.forceValue;t.change(r=>{let a=t.schema.getValidRanges(n.getRanges(),"restrictedEditingException");if(n.isCollapsed)if(i)r.setSelectionAttribute("restrictedEditingException",i);else{let c=p=>p.item.getAttribute("restrictedEditingException")===this.value,l=n.focus,d=l.getLastMatchingPosition(c,{direction:"backward"}),g=l.getLastMatchingPosition(c);r.removeSelectionAttribute("restrictedEditingException"),l.isEqual(d)||l.isEqual(g)||r.removeAttribute("restrictedEditingException",r.createRange(d,g))}else for(let c of a)i?r.setAttribute("restrictedEditingException",i,c):r.removeAttribute("restrictedEditingException",c)})}},E=class extends m{static get pluginName(){return"StandardEditingModeEditing"}static get isOfficialPlugin(){return!0}init(){let e=this.editor;e.model.schema.extend("$text",{allowAttributes:["restrictedEditingException"]}),e.conversion.for("upcast").elementToAttribute({model:"restrictedEditingException",view:{name:"span",classes:"restricted-editing-exception"}}),e.conversion.for("downcast").attributeToElement({model:"restrictedEditingException",view:(t,{writer
1:o})=>{if(t)return o.createAttributeElement("span",{class:"restricted-editing-exception"},{priority:-10})}}),e.commands.add("restrictedEditingException",new f(e)),e.editing.view.change(t=>{for(let o of e.editing.view.document.roots)t.addClass("ck-restricted-editing_mode_standard",o)})}},b=class extends m{static get pluginName(){return"StandardEditingModeUI"}static get isOfficialPlugin(){return!0}init(){let e=this.editor;e.ui.componentFactory.add("restrictedEditingException",()=>{let t=this._createButton(P);return t.set({tooltip:!0,isToggleable:!0}),t}),e.ui.componentFactory.add("menuBar:restrictedEditingException",()=>this._createButton(V))}_createButton(e){let t=this.editor,o=t.locale,n=this.editor.commands.get("restrictedEditingException"),i=new e(o),r=o.t;return i.icon=y,i.bind("isOn","isEnabled").to(n,"value","isEnabled"),i.bind("label").to(n,"value",a=>r(a?"Disable editing":"Enable editing")),this.listenTo(i,"execute",()=>{t.execute("restrictedEditingException"),t.editing.view.focus()}),i}},R=class extends m{static get pluginName(){return"StandardEditingMode"}static get isOfficialPlugin(){return!0}static get requires(){return[E,b]}};export{f as RestrictedEditingExceptionCommand,S as RestrictedEditingMode,w as RestrictedEditingModeEditing,I as RestrictedEditingModeNavigationCommand,h as RestrictedEditingModeUI,R as StandardEditingMode,E as StandardEditingModeEditing,b as StandardEditingModeUI,G as _extendRestrictedEditingMarkerOnTypingPostFixer,u as _getRestrictedEditingMarkerAtPosition,T as _isRestrictedEditingPositionInRangeBoundaries,W as _isRestrictedEditingSelectionInMarker,z as _resurrectRestrictedEditingCollapsedMarkerPostFixer,j as _setupRestrictedEditingExceptionHighlighting,q as _upcastRestrictedEditingHighlightToMarker};
2/*! Bundled license information:
3
4@ckeditor/ckeditor5-restricted-editing/dist/index.js:
5  (**
6   * @license Copyright (c) 2003-2025, CKSource Holding sp. z o.o. All rights reserved.
7   * For licensing, see LICENSE.md or https://ckeditor.com/legal/ckeditor-licensing-options
8   *)
9*/
10//# sourceMappingURL=@ckeditor$ckeditor5-restricted-editing$dist$index.js.(YVYPHLDT).js.map

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.