You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
topnotch_website/public/js/filament/forms/components/rich-editor.js

145 lines
170 KiB
JavaScript

2 months ago
var Mi="2.1.5",K="[data-trix-attachment]",je={preview:{presentation:"gallery",caption:{name:!0,size:!0}},file:{caption:{size:!0}}},y={default:{tagName:"div",parse:!1},quote:{tagName:"blockquote",nestable:!0},heading1:{tagName:"h1",terminal:!0,breakOnReturn:!0,group:!1},code:{tagName:"pre",terminal:!0,htmlAttributes:["language"],text:{plaintext:!0}},bulletList:{tagName:"ul",parse:!1},bullet:{tagName:"li",listAttribute:"bulletList",group:!1,nestable:!0,test(n){return Je(n.parentNode)===y[this.listAttribute].tagName}},numberList:{tagName:"ol",parse:!1},number:{tagName:"li",listAttribute:"numberList",group:!1,nestable:!0,test(n){return Je(n.parentNode)===y[this.listAttribute].tagName}},attachmentGallery:{tagName:"div",exclusive:!0,terminal:!0,parse:!1,group:!1}},Je=n=>{var t;return n==null||(t=n.tagName)===null||t===void 0?void 0:t.toLowerCase()},Ke=navigator.userAgent.match(/android\s([0-9]+.*Chrome)/i),se=Ke&&parseInt(Ke[1]),St={composesExistingText:/Android.*Chrome/.test(navigator.userAgent),recentAndroid:se&&se>12,samsungAndroid:se&&navigator.userAgent.match(/Android.*SM-/),forcesObjectResizing:/Trident.*rv:11/.test(navigator.userAgent),supportsInputEvents:typeof InputEvent<"u"&&["data","getTargetRanges","inputType"].every(n=>n in InputEvent.prototype)},h={attachFiles:"Attach Files",bold:"Bold",bullets:"Bullets",byte:"Byte",bytes:"Bytes",captionPlaceholder:"Add a caption\u2026",code:"Code",heading1:"Heading",indent:"Increase Level",italic:"Italic",link:"Link",numbers:"Numbers",outdent:"Decrease Level",quote:"Quote",redo:"Redo",remove:"Remove",strike:"Strikethrough",undo:"Undo",unlink:"Unlink",url:"URL",urlPlaceholder:"Enter a URL\u2026",GB:"GB",KB:"KB",MB:"MB",PB:"PB",TB:"TB"},ji=[h.bytes,h.KB,h.MB,h.GB,h.TB,h.PB],vi={prefix:"IEC",precision:2,formatter(n){switch(n){case 0:return"0 ".concat(h.bytes);case 1:return"1 ".concat(h.byte);default:let t;this.prefix==="SI"?t=1e3:this.prefix==="IEC"&&(t=1024);let e=Math.floor(Math.log(n)/Math.log(t)),i=(n/Math.pow(t,e)).toFixed(this.precision).replace(/0*$/,"").replace(/\.$/,"");return"".concat(i," ").concat(ji[e])}}},te="\uFEFF",U="\xA0",Ai=function(n){for(let t in n){let e=n[t];this[t]=e}return this},We=document.documentElement,Wi=We.matches,p=function(n){let{onElement:t,matchingSelector:e,withCallback:i,inPhase:r,preventDefault:o,times:s}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},a=t||We,l=e,c=r==="capturing",u=function(b){s!=null&&--s==0&&u.destroy();let A=q(b.target,{matchingSelector:l});A!=null&&(i?.call(A,b,A),o&&b.preventDefault())};return u.destroy=()=>a.removeEventListener(n,u,c),a.addEventListener(n,u,c),u},vt=function(n){let{onElement:t,bubbles:e,cancelable:i,attributes:r}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},o=t??We;e=e!==!1,i=i!==!1;let s=document.createEvent("Events");return s.initEvent(n,e,i),r!=null&&Ai.call(s,r),o.dispatchEvent(s)},xi=function(n,t){if(n?.nodeType===1)return Wi.call(n,t)},q=function(n){let{matchingSelector:t,untilNode:e}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};for(;n&&n.nodeType!==Node.ELEMENT_NODE;)n=n.parentNode;if(n!=null){if(t==null)return n;if(n.closest&&e==null)return n.closest(t);for(;n&&n!==e;){if(xi(n,t))return n;n=n.parentNode}}},Ue=n=>document.activeElement!==n&&J(n,document.activeElement),J=function(n,t){if(n&&t)for(;t;){if(t===n)return!0;t=t.parentNode}},ae=function(n){var t;if((t=n)===null||t===void 0||!t.parentNode)return;let e=0;for(n=n.previousSibling;n;)e++,n=n.previousSibling;return e},V=n=>{var t;return n==null||(t=n.parentNode)===null||t===void 0?void 0:t.removeChild(n)},Ft=function(n){let{onlyNodesOfType:t,usingFilter:e,expandEntityReferences:i}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=(()=>{switch(t){case"element":return NodeFilter.SHOW_ELEMENT;case"text":return NodeFilter.SHOW_TEXT;case"comment":return NodeFilter.SHOW_COMMENT;default:return NodeFilter.SHOW_ALL}})();return document.createTreeWalker(n,r,e??null,i===!0)},x=n=>{var t;return n==null||(t=n.tagName)===null||t===void 0?void 0:t.toLowerCase()},d=function(n){let t,e,i=arguments.length>1&&argume
`},Y={bold:{tagName:"strong",inheritable:!0,parser(n){let t=window.getComputedStyle(n);return t.fontWeight==="bold"||t.fontWeight>=600}},italic:{tagName:"em",inheritable:!0,parser:n=>window.getComputedStyle(n).fontStyle==="italic"},href:{groupTagName:"a",parser(n){let t="a:not(".concat(K,")"),e=n.closest(t);if(e)return e.getAttribute("href")}},strike:{tagName:"del",inheritable:!0},frozen:{style:{backgroundColor:"highlight"}}},Ci={getDefaultHTML:()=>`<div class="trix-button-row">
<span class="trix-button-group trix-button-group--text-tools" data-trix-button-group="text-tools">
<button type="button" class="trix-button trix-button--icon trix-button--icon-bold" data-trix-attribute="bold" data-trix-key="b" title="`.concat(h.bold,'" tabindex="-1">').concat(h.bold,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-italic" data-trix-attribute="italic" data-trix-key="i" title="`).concat(h.italic,'" tabindex="-1">').concat(h.italic,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-strike" data-trix-attribute="strike" title="`).concat(h.strike,'" tabindex="-1">').concat(h.strike,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-link" data-trix-attribute="href" data-trix-action="link" data-trix-key="k" title="`).concat(h.link,'" tabindex="-1">').concat(h.link,`</button>
</span>
<span class="trix-button-group trix-button-group--block-tools" data-trix-button-group="block-tools">
<button type="button" class="trix-button trix-button--icon trix-button--icon-heading-1" data-trix-attribute="heading1" title="`).concat(h.heading1,'" tabindex="-1">').concat(h.heading1,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-quote" data-trix-attribute="quote" title="`).concat(h.quote,'" tabindex="-1">').concat(h.quote,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-code" data-trix-attribute="code" title="`).concat(h.code,'" tabindex="-1">').concat(h.code,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-bullet-list" data-trix-attribute="bullet" title="`).concat(h.bullets,'" tabindex="-1">').concat(h.bullets,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-number-list" data-trix-attribute="number" title="`).concat(h.numbers,'" tabindex="-1">').concat(h.numbers,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-decrease-nesting-level" data-trix-action="decreaseNestingLevel" title="`).concat(h.outdent,'" tabindex="-1">').concat(h.outdent,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-increase-nesting-level" data-trix-action="increaseNestingLevel" title="`).concat(h.indent,'" tabindex="-1">').concat(h.indent,`</button>
</span>
<span class="trix-button-group trix-button-group--file-tools" data-trix-button-group="file-tools">
<button type="button" class="trix-button trix-button--icon trix-button--icon-attach" data-trix-action="attachFiles" title="`).concat(h.attachFiles,'" tabindex="-1">').concat(h.attachFiles,`</button>
</span>
<span class="trix-button-group-spacer"></span>
<span class="trix-button-group trix-button-group--history-tools" data-trix-button-group="history-tools">
<button type="button" class="trix-button trix-button--icon trix-button--icon-undo" data-trix-action="undo" data-trix-key="z" title="`).concat(h.undo,'" tabindex="-1">').concat(h.undo,`</button>
<button type="button" class="trix-button trix-button--icon trix-button--icon-redo" data-trix-action="redo" data-trix-key="shift+z" title="`).concat(h.redo,'" tabindex="-1">').concat(h.redo,`</button>
</span>
</div>
<div class="trix-dialogs" data-trix-dialogs>
<div class="trix-dialog trix-dialog--link" data-trix-dialog="href" data-trix-dialog-attribute="href">
<div class="trix-dialog__link-fields">
<input type="url" name="href" class="trix-input trix-input--dialog" placeholder="`).concat(h.urlPlaceholder,'" aria-label="').concat(h.url,`" required data-trix-input>
<div class="trix-button-group">
<input type="button" class="trix-button trix-button--dialog" value="`).concat(h.link,`" data-trix-method="setAttribute">
<input type="button" class="trix-button trix-button--dialog" value="`).concat(h.unlink,`" data-trix-method="removeAttribute">
</div>
</div>
</div>
</div>`)},Re={interval:5e3},Lt=Object.freeze({__proto__:null,attachments:je,blockAttributes:y,browser:St,css:{attachment:"attachment",attachmentCaption:"attachment__caption",attachmentCaptionEditor:"attachment__caption-editor",attachmentMetadata:"attachment__metadata",attachmentMetadataContainer:"attachment__metadata-container",attachmentName:"attachment__name",attachmentProgress:"attachment__progress",attachmentSize:"attachment__size",attachmentToolbar:"attachment__toolbar",attachmentGallery:"attachment-gallery"},fileSize:vi,input:qe,keyNames:{8:"backspace",9:"tab",13:"return",27:"escape",37:"left",39:"right",46:"delete",68:"d",72:"h",79:"o"},lang:h,parser:Tt,textAttributes:Y,toolbar:Ci,undo:Re}),f=class{static proxyMethod(t){let{name:e,toMethod:i,toProperty:r,optional:o}=qi(t);this.prototype[e]=function(){let s,a;var l,c;return i?a=o?(l=this[i])===null||l===void 0?void 0:l.call(this):this[i]():r&&(a=this[r]),o?(s=(c=a)===null||c===void 0?void 0:c[e],s?Ge.call(s,a,arguments):void 0):(s=a[e],Ge.call(s,a,arguments))}}},qi=function(n){let t=n.match(Vi);if(!t)throw new Error("can't parse @proxyMethod expression: ".concat(n));let e={name:t[4]};return t[2]!=null?e.toMethod=t[1]:e.toProperty=t[1],t[3]!=null&&(e.optional=!0),e},{apply:Ge}=Function.prototype,Vi=new RegExp("^(.+?)(\\(\\))?(\\?)?\\.(.+?)$"),ce,ue,he,Z=class extends f{static box(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"";return t instanceof this?t:this.fromUCS2String(t?.toString())}static fromUCS2String(t){return new this(t,Ee(t))}static fromCodepoints(t){return new this(Se(t),t)}constructor(t,e){super(...arguments),this.ucs2String=t,this.codepoints=e,this.length=this.codepoints.length,this.ucs2Length=this.ucs2String.length}offsetToUCS2Offset(t){return Se(this.codepoints.slice(0,Math.max(0,t))).length}offsetFromUCS2Offset(t){return Ee(this.ucs2String.slice(0,Math.max(0,t))).length}slice(){return this.constructor.fromCodepoints(this.codepoints.slice(...arguments))}charAt(t){return this.slice(t,t+1)}isEqualTo(t){return this.constructor.box(t).ucs2String===this.ucs2String}toJSON(){return this.ucs2String}getCacheKey(){return this.ucs2String}toString(){return this.ucs2String}},Hi=((ce=Array.from)===null||ce===void 0?void 0:ce.call(Array,"\u{1F47C}").length)===1,zi=((ue=" ".codePointAt)===null||ue===void 0?void 0:ue.call(" ",0))!=null,_i=((he=String.fromCodePoint)===null||he===void 0?void 0:he.call(String,32,128124))===" \u{1F47C}",Ee,Se;Ee=Hi&&zi?n=>Array.from(n).map(t=>t.codePointAt(0)):function(n){let t=[],e=0,{length:i}=n;for(;e<i;){let r=n.charCodeAt(e++);if(55296<=r&&r<=56319&&e<i){let o=n.charCodeAt(e++);(64512&o)==56320?r=((1023&r)<<10)+(1023&o)+65536:e--}t.push(r)}return t},Se=_i?n=>String.fromCodePoint(...Array.from(n||[])):function(n){return(()=>{let t=[];return Array.from(n).forEach(e=>{let i="";e>65535&&(e-=65536,i+=String.fromCharCode(e>>>10&1023|55296),e=56320|1023&e),t.push(i+String.fromCharCode(e))}),t})().join("")};var Ji=0,O=class extends f{static fromJSONString(t){return this.fromJSON(JSON.parse(t))}constructor(){super(...arguments),this.id=++Ji}hasSameConstructorAs(t){return this.constructor===t?.constructor}isEqualTo(t){return this===t}inspect(){let t=[],e=this.contentsForInspection()||{};for(let i in e){let r=e[i];t.push("".concat(i,"=").concat(r))}return"#<".concat(this.constructor.name,":").concat(this.id).concat(t.length?" ".concat(t.join(", ")):"",">")}contentsForInspection(){}toJSONString(){return JSON.stringify(this)}toUTF16String(){return Z.box(this)}getCacheKey(){return this.id.toString()}},Q=function(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(n.length!==t.length)return!1;for(let e=0;e<n.length;e++)if(n[e]!==t[e])return!1;return!0},Ve=function(n){let t=n.slice(0);for(var e=arguments.length,i=new Array(e>1?e-1:0),r=1;r<e;r++)i[r-1]=arguments[r];return t.splice(...i),t},Ki=/[\u05BE\u05C0\u05C3\u05D0-\u05EA\u05F0-\u05F4\u061B\u061F\u0621-\u063A\u0640-\u064A\u066D\u0671-\u06B7\u06BA-\u06BE\u06C0-\u06CE\u06D0-\u06D5\u06E5\u06E6\u200F
`);for(let r=0;r<i.length;r++){let o=i[r];if(r>0){let s=d("br");e.push(s)}if(o.length){let s=document.createTextNode(this.preserveSpaces(o));e.push(s)}}return e}}createElement(){let t,e,i,r={};for(e in this.attributes){i=this.attributes[e];let s=De(e);if(s){if(s.tagName){var o;let a=d(s.tagName);o?(o.appendChild(a),o=a):t=o=a}if(s.styleProperty&&(r[s.styleProperty]=i),s.style)for(e in s.style)i=s.style[e],r[e]=i}}if(Object.keys(r).length)for(e in t||(t=d("span")),r)i=r[e],t.style[e]=i;return t}createContainerElement(){for(let t in this.attributes){let e=this.attributes[t],i=De(t);if(i&&i.groupTagName){let r={};return r[t]=e,d(i.groupTagName,r)}}}preserveSpaces(t){return this.context.isLast&&(t=t.replace(/\ $/,U)),t=t.replace(/(\S)\ {3}(\S)/g,"$1 ".concat(U," $2")).replace(/\ {2}/g,"".concat(U," ")).replace(/\ {2}/g," ".concat(U)),(this.context.isFirst||this.context.followsWhitespace)&&(t=t.replace(/^\ /,U)),t}},Mt=class extends M{constructor(){super(...arguments),this.text=this.object,this.textConfig=this.options.textConfig}createNodes(){let t=[],e=Ct.groupObjects(this.getPieces()),i=e.length-1;for(let o=0;o<e.length;o++){let s=e[o],a={};o===0&&(a.isFirst=!0),o===i&&(a.isLast=!0),cn(r)&&(a.followsWhitespace=!0);let l=this.findOrCreateCachedChildView(Ot,s,{textConfig:this.textConfig,context:a});t.push(...Array.from(l.getNodes()||[]));var r=s}return t}getPieces(){return Array.from(this.text.getPieces()).filter(t=>!t.hasAttribute("blockBreak"))}},cn=n=>/\s$/.test(n?.toString()),{css:ni}=Lt,jt=class extends M{constructor(){super(...arguments),this.block=this.object,this.attributes=this.block.getAttributes()}createNodes(){let t=[document.createComment("block")];if(this.block.isEmpty())t.push(d("br"));else{var e;let i=(e=v(this.block.getLastAttribute()))===null||e===void 0?void 0:e.text,r=this.findOrCreateCachedChildView(Mt,this.block.text,{textConfig:i});t.push(...Array.from(r.getNodes()||[])),this.shouldAddExtraNewlineElement()&&t.push(d("br"))}if(this.attributes.length)return t;{let i,{tagName:r}=y.default;this.block.isRTL()&&(i={dir:"rtl"});let o=d({tagName:r,attributes:i});return t.forEach(s=>o.appendChild(s)),[o]}}createContainerElement(t){let e={},i,r=this.attributes[t],{tagName:o,htmlAttributes:s=[]}=v(r);if(t===0&&this.block.isRTL()&&Object.assign(e,{dir:"rtl"}),r==="attachmentGallery"){let a=this.block.getBlockBreakPosition();i="".concat(ni.attachmentGallery," ").concat(ni.attachmentGallery,"--").concat(a)}return Object.entries(this.block.htmlAttributes).forEach(a=>{let[l,c]=a;s.includes(l)&&(e[l]=c)}),d({tagName:o,className:i,attributes:e})}shouldAddExtraNewlineElement(){return/\n\n$/.test(this.block.toString())}},ct=class extends M{static render(t){let e=d("div"),i=new this(t,{element:e});return i.render(),i.sync(),e}constructor(){super(...arguments),this.element=this.options.element,this.elementStore=new Be,this.setDocument(this.object)}setDocument(t){t.isEqualTo(this.document)||(this.document=this.object=t)}render(){if(this.childViews=[],this.shadowElement=d("div"),!this.document.isEmpty()){let t=Ct.groupObjects(this.document.getBlocks(),{asTree:!0});Array.from(t).forEach(e=>{let i=this.findOrCreateCachedChildView(jt,e);Array.from(i.getNodes()).map(r=>this.shadowElement.appendChild(r))})}}isSynced(){return un(this.shadowElement,this.element)}sync(){let t=this.createDocumentFragmentForSync();for(;this.element.lastChild;)this.element.removeChild(this.element.lastChild);return this.element.appendChild(t),this.didSync()}didSync(){return this.elementStore.reset(ri(this.element)),He(()=>this.garbageCollectCachedViews())}createDocumentFragmentForSync(){let t=document.createDocumentFragment();return Array.from(this.shadowElement.childNodes).forEach(e=>{t.appendChild(e.cloneNode(!0))}),Array.from(ri(t)).forEach(e=>{let i=this.elementStore.remove(e);i&&e.parentNode.replaceChild(i,e)}),t}},ri=n=>n.querySelectorAll("[data-trix-store-key]"),un=(n,t)=>oi(n.innerHTML)===oi(t.innerHTML),oi=n=>n.replace(/&nbsp;/g," ");function wt(n){var t,e;function i(o,s){try{var a=n[o](s),l=a.value,c=l instanceof hn;Promise.resolve(c?l.v:l).th
`))(t),this.length=this.string.length}getValue(){return this.string}toString(){return this.string.toString()}isBlockBreak(){return this.toString()===`
`&&this.getAttribute("blockBreak")===!0}toJSON(){let t=super.toJSON(...arguments);return t.string=this.string,t}canBeConsolidatedWith(t){return t&&this.hasSameConstructorAs(t)&&this.hasSameAttributesAsPiece(t)}consolidateWith(t){return new this.constructor(this.toString()+t.toString(),this.attributes)}splitAtOffset(t){let e,i;return t===0?(e=null,i=this):t===this.length?(e=this,i=null):(e=new this.constructor(this.string.slice(0,t),this.attributes),i=new this.constructor(this.string.slice(t),this.attributes)),[e,i]}toConsole(){let{string:t}=this;return t.length>15&&(t=t.slice(0,14)+"\u2026"),JSON.stringify(t.toString())}};j.registerType("string",Rt);var ut=class extends O{static box(t){return t instanceof this?t:new this(t)}constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments),this.objects=t.slice(0),this.length=this.objects.length}indexOf(t){return this.objects.indexOf(t)}splice(){for(var t=arguments.length,e=new Array(t),i=0;i<t;i++)e[i]=arguments[i];return new this.constructor(Ve(this.objects,...e))}eachObject(t){return this.objects.map((e,i)=>t(e,i))}insertObjectAtIndex(t,e){return this.splice(e,0,t)}insertSplittableListAtIndex(t,e){return this.splice(e,0,...t.objects)}insertSplittableListAtPosition(t,e){let[i,r]=this.splitObjectAtPosition(e);return new this.constructor(i).insertSplittableListAtIndex(t,r)}editObjectAtIndex(t,e){return this.replaceObjectAtIndex(e(this.objects[t]),t)}replaceObjectAtIndex(t,e){return this.splice(e,1,t)}removeObjectAtIndex(t){return this.splice(t,1)}getObjectAtIndex(t){return this.objects[t]}getSplittableListInRange(t){let[e,i,r]=this.splitObjectsAtRange(t);return new this.constructor(e.slice(i,r+1))}selectSplittableList(t){let e=this.objects.filter(i=>t(i));return new this.constructor(e)}removeObjectsInRange(t){let[e,i,r]=this.splitObjectsAtRange(t);return new this.constructor(e).splice(i,r-i+1)}transformObjectsInRange(t,e){let[i,r,o]=this.splitObjectsAtRange(t),s=i.map((a,l)=>r<=l&&l<=o?e(a):a);return new this.constructor(s)}splitObjectsAtRange(t){let e,[i,r,o]=this.splitObjectAtPosition(mn(t));return[i,e]=new this.constructor(i).splitObjectAtPosition(pn(t)+o),[i,r,e-1]}getObjectAtPosition(t){let{index:e}=this.findIndexAndOffsetAtPosition(t);return this.objects[e]}splitObjectAtPosition(t){let e,i,{index:r,offset:o}=this.findIndexAndOffsetAtPosition(t),s=this.objects.slice(0);if(r!=null)if(o===0)e=r,i=0;else{let a=this.getObjectAtIndex(r),[l,c]=a.splitAtOffset(o);s.splice(r,1,l,c),e=r+1,i=l.getLength()-o}else e=s.length,i=0;return[s,e,i]}consolidate(){let t=[],e=this.objects[0];return this.objects.slice(1).forEach(i=>{var r,o;(r=(o=e).canBeConsolidatedWith)!==null&&r!==void 0&&r.call(o,i)?e=e.consolidateWith(i):(t.push(e),e=i)}),e&&t.push(e),new this.constructor(t)}consolidateFromIndexToIndex(t,e){let i=this.objects.slice(0).slice(t,e+1),r=new this.constructor(i).consolidate().toArray();return this.splice(t,i.length,...r)}findIndexAndOffsetAtPosition(t){let e,i=0;for(e=0;e<this.objects.length;e++){let r=i+this.objects[e].getLength();if(i<=t&&t<r)return{index:e,offset:t-i};i=r}return{index:null,offset:null}}findPositionAtIndexAndOffset(t,e){let i=0;for(let r=0;r<this.objects.length;r++){let o=this.objects[r];if(r<t)i+=o.getLength();else if(r===t){i+=e;break}}return i}getEndPosition(){return this.endPosition==null&&(this.endPosition=0,this.objects.forEach(t=>this.endPosition+=t.getLength())),this.endPosition}toString(){return this.objects.join("")}toArray(){return this.objects.slice(0)}toJSON(){return this.toArray()}isEqualTo(t){return super.isEqualTo(...arguments)||gn(this.objects,t?.objects)}contentsForInspection(){return{objects:"[".concat(this.objects.map(t=>t.inspect()).join(", "),"]")}}},gn=function(n){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:[];if(n.length!==t.length)return!1;let e=!0;for(let i=0;i<n.length;i++){let r=n[i];e&&!r.isEqualTo(t[i])&&(e=!1)}return e},mn=n=>n[0],pn=n=>n[1],R=class extends O{static textForAttachmentWithAttributes(t,e){return new this([new z(t,e)])}static textForStringWithAttributes(t,e){retu
`,e);break;case"backward":r=i.slice(0,e).lastIndexOf(`
`)}if(r!==-1)return r}contentsForInspection(){return{text:this.text.inspect(),attributes:this.attributes}}toString(){return this.text.toString()}toJSON(){return{text:this.text,attributes:this.attributes,htmlAttributes:this.htmlAttributes}}getDirection(){return this.text.getDirection()}isRTL(){return this.text.isRTL()}getLength(){return this.text.getLength()}canBeConsolidatedWith(t){return!this.hasAttributes()&&!t.hasAttributes()&&this.getDirection()===t.getDirection()}consolidateWith(t){let e=R.textForStringWithAttributes(`
`),i=this.getTextWithoutBlockBreak().appendText(e);return this.copyWithText(i.appendText(t.text))}splitAtOffset(t){let e,i;return t===0?(e=null,i=this):t===this.getLength()?(e=this,i=null):(e=this.copyWithText(this.text.getTextAtRange([0,t])),i=this.copyWithText(this.text.getTextAtRange([t,this.getLength()]))),[e,i]}getBlockBreakPosition(){return this.text.getLength()-1}getTextWithoutBlockBreak(){return wi(this.text)?this.text.getTextAtRange([0,this.getBlockBreakPosition()]):this.text.copy()}canBeGrouped(t){return this.attributes[t]}canBeGroupedWith(t,e){let i=t.getAttributes(),r=i[e],o=this.attributes[e];return o===r&&!(v(o).group===!1&&!(()=>{if(!Dt){Dt=[];for(let s in y){let{listAttribute:a}=y[s];a!=null&&Dt.push(a)}}return Dt})().includes(i[e+1]))&&(this.getDirection()===t.getDirection()||t.isEmpty())}},fn=function(n){return n=bn(n),n=An(n)},bn=function(n){let t=!1,e=n.getPieces(),i=e.slice(0,e.length-1),r=e[e.length-1];return r?(i=i.map(o=>o.isBlockBreak()?(t=!0,xn(o)):o),t?new R([...i,r]):n):n},vn=R.textForStringWithAttributes(`
`,{blockBreak:!0}),An=function(n){return wi(n)?n:n.appendText(vn)},wi=function(n){let t=n.getLength();return t===0?!1:n.getTextAtRange([t-1,t]).isBlockBreak()},xn=n=>n.copyWithoutAttribute("blockBreak"),si=function(n){let{listAttribute:t}=v(n);return t?[t,n]:[n]},ai=n=>n.slice(-1)[0],li=function(n,t){let e=n.lastIndexOf(t);return e===-1?n:Ve(n,e,1)},k=class extends O{static fromJSON(t){return new this(Array.from(t).map(e=>S.fromJSON(e)))}static fromString(t,e){let i=R.textForStringWithAttributes(t,e);return new this([new S(i)])}constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments),t.length===0&&(t=[new S]),this.blockList=ut.box(t)}isEmpty(){let t=this.getBlockAtIndex(0);return this.blockList.length===1&&t.isEmpty()&&!t.hasAttributes()}copy(){let t=(arguments.length>0&&arguments[0]!==void 0?arguments[0]:{}).consolidateBlocks?this.blockList.consolidate().toArray():this.blockList.toArray();return new this.constructor(t)}copyUsingObjectsFromDocument(t){let e=new Te(t.getObjects());return this.copyUsingObjectMap(e)}copyUsingObjectMap(t){let e=this.getBlocks().map(i=>t.find(i)||i.copyUsingObjectMap(t));return new this.constructor(e)}copyWithBaseBlockAttributes(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],e=this.getBlocks().map(i=>{let r=t.concat(i.getAttributes());return i.copyWithAttributes(r)});return new this.constructor(e)}replaceBlock(t,e){let i=this.blockList.indexOf(t);return i===-1?this:new this.constructor(this.blockList.replaceObjectAtIndex(e,i))}insertDocumentAtRange(t,e){let{blockList:i}=t;e=g(e);let[r]=e,{index:o,offset:s}=this.locationFromPosition(r),a=this,l=this.getBlockAtPosition(r);return N(e)&&l.isEmpty()&&!l.hasAttributes()?a=new this.constructor(a.blockList.removeObjectAtIndex(o)):l.getBlockBreakPosition()===s&&r++,a=a.removeTextAtRange(e),new this.constructor(a.blockList.insertSplittableListAtPosition(i,r))}mergeDocumentAtRange(t,e){let i,r;e=g(e);let[o]=e,s=this.locationFromPosition(o),a=this.getBlockAtIndex(s.index).getAttributes(),l=t.getBaseBlockAttributes(),c=a.slice(-l.length);if(Q(l,c)){let A=a.slice(0,-l.length);i=t.copyWithBaseBlockAttributes(A)}else i=t.copy({consolidateBlocks:!0}).copyWithBaseBlockAttributes(a);let u=i.getBlockCount(),b=i.getBlockAtIndex(0);if(Q(a,b.getAttributes())){let A=b.getTextWithoutBlockBreak();if(r=this.insertTextAtRange(A,e),u>1){i=new this.constructor(i.getBlocks().slice(1));let L=o+A.getLength();r=r.insertDocumentAtRange(i,L)}}else r=this.insertDocumentAtRange(i,e);return r}insertTextAtRange(t,e){e=g(e);let[i]=e,{index:r,offset:o}=this.locationFromPosition(i),s=this.removeTextAtRange(e);return new this.constructor(s.blockList.editObjectAtIndex(r,a=>a.copyWithText(a.text.insertTextAtPosition(t,o))))}removeTextAtRange(t){let e;t=g(t);let[i,r]=t;if(N(t))return this;let[o,s]=Array.from(this.locationRangeFromRange(t)),a=o.index,l=o.offset,c=this.getBlockAtIndex(a),u=s.index,b=s.offset,A=this.getBlockAtIndex(u);if(r-i==1&&c.getBlockBreakPosition()===l&&A.getBlockBreakPosition()!==b&&A.text.getStringAtPosition(b)===`
`)e=this.blockList.editObjectAtIndex(u,L=>L.copyWithText(L.text.removeTextAtRange([b,b+1])));else{let L,gt=c.text.getTextAtRange([0,l]),P=A.text.getTextAtRange([b,A.getLength()]),it=gt.appendText(P);L=a!==u&&l===0&&c.getAttributeLevel()>=A.getAttributeLevel()?A.copyWithText(it):c.copyWithText(it);let mt=u+1-a;e=this.blockList.splice(a,mt,L)}return new this.constructor(e)}moveTextFromRangeToPosition(t,e){let i;t=g(t);let[r,o]=t;if(r<=e&&e<=o)return this;let s=this.getDocumentAtRange(t),a=this.removeTextAtRange(t),l=r<e;l&&(e-=s.getLength());let[c,...u]=s.getBlocks();return u.length===0?(i=c.getTextWithoutBlockBreak(),l&&(e+=1)):i=c.text,a=a.insertTextAtRange(i,e),u.length===0?a:(s=new this.constructor(u),e+=i.getLength(),a.insertDocumentAtRange(s,e))}addAttributeAtRange(t,e,i){let{blockList:r}=this;return this.eachBlockAtRange(i,(o,s,a)=>r=r.editObjectAtIndex(a,function(){return v(t)?o.addAttribute(t,e):s[0]===s[1]?o:o.copyWithText(o.text.addAttributeAtRange(t,e,s))})),new this.constructor(r)}addAttribute(t,e){let{blockList:i}=this;return this.eachBlock((r,o)=>i=i.editObjectAtIndex(o,()=>r.addAttribute(t,e))),new this.constructor(i)}removeAttributeAtRange(t,e){let{blockList:i}=this;return this.eachBlockAtRange(e,function(r,o,s){v(t)?i=i.editObjectAtIndex(s,()=>r.removeAttribute(t)):o[0]!==o[1]&&(i=i.editObjectAtIndex(s,()=>r.copyWithText(r.text.removeAttributeAtRange(t,o))))}),new this.constructor(i)}updateAttributesForAttachment(t,e){let i=this.getRangeOfAttachment(e),[r]=Array.from(i),{index:o}=this.locationFromPosition(r),s=this.getTextAtIndex(o);return new this.constructor(this.blockList.editObjectAtIndex(o,a=>a.copyWithText(s.updateAttributesForAttachment(t,e))))}removeAttributeForAttachment(t,e){let i=this.getRangeOfAttachment(e);return this.removeAttributeAtRange(t,i)}setHTMLAttributeAtPosition(t,e,i){let r=this.getBlockAtPosition(t),o=r.addHTMLAttribute(e,i);return this.replaceBlock(r,o)}insertBlockBreakAtRange(t){let e;t=g(t);let[i]=t,{offset:r}=this.locationFromPosition(i),o=this.removeTextAtRange(t);return r===0&&(e=[new S]),new this.constructor(o.blockList.insertSplittableListAtPosition(new ut(e),i))}applyBlockAttributeAtRange(t,e,i){let r=this.expandRangeToLineBreaksAndSplitBlocks(i),o=r.document;i=r.range;let s=v(t);if(s.listAttribute){o=o.removeLastListAttributeAtRange(i,{exceptAttributeName:t});let a=o.convertLineBreaksToBlockBreaksInRange(i);o=a.document,i=a.range}else o=s.exclusive?o.removeBlockAttributesAtRange(i):s.terminal?o.removeLastTerminalAttributeAtRange(i):o.consolidateBlocksAtRange(i);return o.addAttributeAtRange(t,e,i)}removeLastListAttributeAtRange(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},{blockList:i}=this;return this.eachBlockAtRange(t,function(r,o,s){let a=r.getLastAttribute();a&&v(a).listAttribute&&a!==e.exceptAttributeName&&(i=i.editObjectAtIndex(s,()=>r.removeAttribute(a)))}),new this.constructor(i)}removeLastTerminalAttributeAtRange(t){let{blockList:e}=this;return this.eachBlockAtRange(t,function(i,r,o){let s=i.getLastAttribute();s&&v(s).terminal&&(e=e.editObjectAtIndex(o,()=>i.removeAttribute(s)))}),new this.constructor(e)}removeBlockAttributesAtRange(t){let{blockList:e}=this;return this.eachBlockAtRange(t,function(i,r,o){i.hasAttributes()&&(e=e.editObjectAtIndex(o,()=>i.copyWithoutAttributes()))}),new this.constructor(e)}expandRangeToLineBreaksAndSplitBlocks(t){let e;t=g(t);let[i,r]=t,o=this.locationFromPosition(i),s=this.locationFromPosition(r),a=this,l=a.getBlockAtIndex(o.index);if(o.offset=l.findLineBreakInDirectionFromPosition("backward",o.offset),o.offset!=null&&(e=a.positionFromLocation(o),a=a.insertBlockBreakAtRange([e,e+1]),s.index+=1,s.offset-=a.getBlockAtIndex(o.index).getLength(),o.index+=1),o.offset=0,s.offset===0&&s.index>o.index)s.index-=1,s.offset=a.getBlockAtIndex(s.index).getBlockBreakPosition();else{let c=a.getBlockAtIndex(s.index);c.text.getStringAtRange([s.offset-1,s.offset])===`
`?s.offset-=1:s.offset=c.findLineBreakInDirectionFromPosition("forward",s.offset),s.offset!==c.getBlockBreakPosition()&&(e=a.positionFromLocation(s),a=a.insertBlockBreakAtRange([e,e+1]))}return i=a.positionFromLocation(o),r=a.positionFromLocation(s),{document:a,range:t=g([i,r])}}convertLineBreaksToBlockBreaksInRange(t){t=g(t);let[e]=t,i=this.getStringAtRange(t).slice(0,-1),r=this;return i.replace(/.*?\n/g,function(o){e+=o.length,r=r.insertBlockBreakAtRange([e-1,e])}),{document:r,range:t}}consolidateBlocksAtRange(t){t=g(t);let[e,i]=t,r=this.locationFromPosition(e).index,o=this.locationFromPosition(i).index;return new this.constructor(this.blockList.consolidateFromIndexToIndex(r,o))}getDocumentAtRange(t){t=g(t);let e=this.blockList.getSplittableListInRange(t).toArray();return new this.constructor(e)}getStringAtRange(t){let e,i=t=g(t);return i[i.length-1]!==this.getLength()&&(e=-1),this.getDocumentAtRange(t).toString().slice(0,e)}getBlockAtIndex(t){return this.blockList.getObjectAtIndex(t)}getBlockAtPosition(t){let{index:e}=this.locationFromPosition(t);return this.getBlockAtIndex(e)}getTextAtIndex(t){var e;return(e=this.getBlockAtIndex(t))===null||e===void 0?void 0:e.text}getTextAtPosition(t){let{index:e}=this.locationFromPosition(t);return this.getTextAtIndex(e)}getPieceAtPosition(t){let{index:e,offset:i}=this.locationFromPosition(t);return this.getTextAtIndex(e).getPieceAtPosition(i)}getCharacterAtPosition(t){let{index:e,offset:i}=this.locationFromPosition(t);return this.getTextAtIndex(e).getStringAtRange([i,i+1])}getLength(){return this.blockList.getEndPosition()}getBlocks(){return this.blockList.toArray()}getBlockCount(){return this.blockList.length}getEditCount(){return this.editCount}eachBlock(t){return this.blockList.eachObject(t)}eachBlockAtRange(t,e){let i,r;t=g(t);let[o,s]=t,a=this.locationFromPosition(o),l=this.locationFromPosition(s);if(a.index===l.index)return i=this.getBlockAtIndex(a.index),r=[a.offset,l.offset],e(i,r,a.index);for(let c=a.index;c<=l.index;c++)if(i=this.getBlockAtIndex(c),i){switch(c){case a.index:r=[a.offset,i.text.getLength()];break;case l.index:r=[0,l.offset];break;default:r=[0,i.text.getLength()]}e(i,r,c)}}getCommonAttributesAtRange(t){t=g(t);let[e]=t;if(N(t))return this.getCommonAttributesAtPosition(e);{let i=[],r=[];return this.eachBlockAtRange(t,function(o,s){if(s[0]!==s[1])return i.push(o.text.getCommonAttributesAtRange(s)),r.push(ci(o))}),C.fromCommonAttributesOfObjects(i).merge(C.fromCommonAttributesOfObjects(r)).toObject()}}getCommonAttributesAtPosition(t){let e,i,{index:r,offset:o}=this.locationFromPosition(t),s=this.getBlockAtIndex(r);if(!s)return{};let a=ci(s),l=s.text.getAttributesAtPosition(o),c=s.text.getAttributesAtPosition(o-1),u=Object.keys(Y).filter(b=>Y[b].inheritable);for(e in c)i=c[e],(i===l[e]||u.includes(e))&&(a[e]=i);return a}getRangeOfCommonAttributeAtPosition(t,e){let{index:i,offset:r}=this.locationFromPosition(e),o=this.getTextAtIndex(i),[s,a]=Array.from(o.getExpandedRangeForAttributeAtOffset(t,r)),l=this.positionFromLocation({index:i,offset:s}),c=this.positionFromLocation({index:i,offset:a});return g([l,c])}getBaseBlockAttributes(){let t=this.getBlockAtIndex(0).getAttributes();for(let e=1;e<this.getBlockCount();e++){let i=this.getBlockAtIndex(e).getAttributes(),r=Math.min(t.length,i.length);t=(()=>{let o=[];for(let s=0;s<r&&i[s]===t[s];s++)o.push(i[s]);return o})()}return t}getAttachmentById(t){for(let e of this.getAttachments())if(e.id===t)return e}getAttachmentPieces(){let t=[];return this.blockList.eachObject(e=>{let{text:i}=e;return t=t.concat(i.getAttachmentPieces())}),t}getAttachments(){return this.getAttachmentPieces().map(t=>t.attachment)}getRangeOfAttachment(t){let e=0,i=this.blockList.toArray();for(let r=0;r<i.length;r++){let{text:o}=i[r],s=o.getRangeOfAttachment(t);if(s)return g([e+s[0],e+s[1]]);e+=o.getLength()}}getLocationRangeOfAttachment(t){let e=this.getRangeOfAttachment(t);return this.locationRangeFromRange(e)}getAttachmentPieceForAttachment(t){for(let e of this.getAttachmentPieces())if(e.attachment===t)return e}findRangesForBlockAttribute(t){let
`);if(e===this.containerElement||this.isBlockElement(e)){var i;let r=this.getBlockAttributes(e),o=this.getBlockHTMLAttributes(e);Q(r,(i=this.currentBlock)===null||i===void 0?void 0:i.attributes)||(this.currentBlock=this.appendBlockForAttributesWithElement(r,e,o),this.currentBlockElement=e)}}appendBlockForElement(t){let e=this.isBlockElement(t),i=J(this.currentBlockElement,t);if(e&&!this.isBlockElement(t.firstChild)){if(!this.isInsignificantTextNode(t.firstChild)||!this.isBlockElement(t.firstElementChild)){let r=this.getBlockAttributes(t),o=this.getBlockHTMLAttributes(t);if(t.firstChild){if(i&&Q(r,this.currentBlock.attributes))return this.appendStringWithAttributes(`
`);this.currentBlock=this.appendBlockForAttributesWithElement(r,t,o),this.currentBlockElement=t}}}else if(this.currentBlockElement&&!i&&!e){let r=this.findParentBlockElement(t);if(r)return this.appendBlockForElement(r);this.currentBlock=this.appendEmptyBlock(),this.currentBlockElement=null}}findParentBlockElement(t){let{parentElement:e}=t;for(;e&&e!==this.containerElement;){if(this.isBlockElement(e)&&this.blockElements.includes(e))return e;e=e.parentElement}return null}processTextNode(t){let e=t.data;var i;return hi(t.parentNode)||(e=_e(e),Ti((i=t.previousSibling)===null||i===void 0?void 0:i.textContent)&&(e=kn(e))),this.appendStringWithAttributes(e,this.getTextAttributes(t.parentNode))}processElement(t){let e;if($(t)){if(e=ui(t,"attachment"),Object.keys(e).length){let i=this.getTextAttributes(t);this.appendAttachmentWithAttributes(e,i),t.innerHTML=""}return this.processedElements.push(t)}switch(x(t)){case"br":return this.isExtraBR(t)||this.isBlockElement(t.nextSibling)||this.appendStringWithAttributes(`
`,this.getTextAttributes(t)),this.processedElements.push(t);case"img":e={url:t.getAttribute("src"),contentType:"image"};let i=(r=>{let o=r.getAttribute("width"),s=r.getAttribute("height"),a={};return o&&(a.width=parseInt(o,10)),s&&(a.height=parseInt(s,10)),a})(t);for(let r in i){let o=i[r];e[r]=o}return this.appendAttachmentWithAttributes(e,this.getTextAttributes(t)),this.processedElements.push(t);case"tr":if(this.needsTableSeparator(t))return this.appendStringWithAttributes(Tt.tableRowSeparator);break;case"td":if(this.needsTableSeparator(t))return this.appendStringWithAttributes(Tt.tableCellSeparator)}}appendBlockForAttributesWithElement(t,e){let i=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{};this.blockElements.push(e);let r=function(){return{text:[],attributes:arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},htmlAttributes:arguments.length>1&&arguments[1]!==void 0?arguments[1]:{}}}(t,i);return this.blocks.push(r),r}appendEmptyBlock(){return this.appendBlockForAttributesWithElement([],null)}appendStringWithAttributes(t,e){return this.appendPiece(fe(t,e))}appendAttachmentWithAttributes(t,e){return this.appendPiece(function(i){return{attachment:i,attributes:arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},type:"attachment"}}(t,e))}appendPiece(t){return this.blocks.length===0&&this.appendEmptyBlock(),this.blocks[this.blocks.length-1].text.push(t)}appendStringToTextAtIndex(t,e){let{text:i}=this.blocks[e],r=i[i.length-1];if(r?.type!=="string")return i.push(fe(t));r.string+=t}prependStringToTextAtIndex(t,e){let{text:i}=this.blocks[e],r=i[0];if(r?.type!=="string")return i.unshift(fe(t));r.string=t+r.string}getTextAttributes(t){let e,i={};for(let r in Y){let o=Y[r];if(o.tagName&&q(t,{matchingSelector:o.tagName,untilNode:this.containerElement}))i[r]=!0;else if(o.parser){if(e=o.parser(t),e){let s=!1;for(let a of this.findBlockElementAncestors(t))if(o.parser(a)===e){s=!0;break}s||(i[r]=e)}}else o.styleProperty&&(e=t.style[o.styleProperty],e&&(i[r]=e))}if($(t)){let r=ui(t,"attributes");for(let o in r)e=r[o],i[o]=e}return i}getBlockAttributes(t){let e=[];for(;t&&t!==this.containerElement;){for(let r in y){let o=y[r];var i;o.parse!==!1&&x(t)===o.tagName&&((i=o.test)!==null&&i!==void 0&&i.call(o,t)||!o.test)&&(e.push(r),o.listAttribute&&e.push(o.listAttribute))}t=t.parentNode}return e.reverse()}getBlockHTMLAttributes(t){let e={},i=Object.values(y).find(r=>r.tagName===x(t));return(i?.htmlAttributes||[]).forEach(r=>{t.hasAttribute(r)&&(e[r]=t.getAttribute(r))}),e}findBlockElementAncestors(t){let e=[];for(;t&&t!==this.containerElement;){let i=x(t);At().includes(i)&&e.push(t),t=t.parentNode}return e}isBlockElement(t){if(t?.nodeType===Node.ELEMENT_NODE&&!$(t)&&!q(t,{matchingSelector:"td",untilNode:this.containerElement}))return At().includes(x(t))||window.getComputedStyle(t).display==="block"}isInsignificantTextNode(t){if(t?.nodeType!==Node.TEXT_NODE||!Rn(t.data))return;let{parentNode:e,previousSibling:i,nextSibling:r}=t;return yn(e.previousSibling)&&!this.isBlockElement(e.previousSibling)||hi(e)?void 0:!i||this.isBlockElement(i)||!r||this.isBlockElement(r)}isExtraBR(t){return x(t)==="br"&&this.isBlockElement(t.parentNode)&&t.parentNode.lastChild===t}needsTableSeparator(t){if(Tt.removeBlankTableCells){var e;let i=(e=t.previousSibling)===null||e===void 0?void 0:e.textContent;return i&&/\S/.test(i)}return t.previousSibling}translateBlockElementMarginsToNewlines(){let t=this.getMarginOfDefaultBlockElement();for(let e=0;e<this.blocks.length;e++){let i=this.getMarginOfBlockElementAtIndex(e);i&&(i.top>2*t.top&&this.prependStringToTextAtIndex(`
`,e),i.bottom>2*t.bottom&&this.appendStringToTextAtIndex(`
`,e))}}getMarginOfBlockElementAtIndex(t){let e=this.blockElements[t];if(e&&e.textContent&&!At().includes(x(e))&&!this.processedElements.includes(e))return di(e)}getMarginOfDefaultBlockElement(){let t=d(y.default.tagName);return this.containerElement.appendChild(t),di(t)}},hi=function(n){let{whiteSpace:t}=window.getComputedStyle(n);return["pre","pre-wrap","pre-line"].includes(t)},yn=n=>n&&!Ti(n.textContent),di=function(n){let t=window.getComputedStyle(n);if(t.display==="block")return{top:parseInt(t.marginTop),bottom:parseInt(t.marginBottom)}},Cn=function(n){return x(n)==="style"?NodeFilter.FILTER_REJECT:NodeFilter.FILTER_ACCEPT},kn=n=>n.replace(new RegExp("^".concat(ze.source,"+")),""),Rn=n=>new RegExp("^".concat(ze.source,"*$")).test(n),Ti=n=>/\s$/.test(n),En=["contenteditable","data-trix-id","data-trix-store-key","data-trix-mutable","data-trix-placeholder","tabindex"],Pe="data-trix-serialized-attributes",Sn="[".concat(Pe,"]"),Ln=new RegExp("<!--block-->","g"),Dn={"application/json":function(n){let t;if(n instanceof k)t=n;else{if(!(n instanceof HTMLElement))throw new Error("unserializable object");t=et.parse(n.innerHTML).getDocument()}return t.toSerializableDocument().toJSONString()},"text/html":function(n){let t;if(n instanceof k)t=ct.render(n);else{if(!(n instanceof HTMLElement))throw new Error("unserializable object");t=n.cloneNode(!0)}return Array.from(t.querySelectorAll("[data-trix-serialize=false]")).forEach(e=>{V(e)}),En.forEach(e=>{Array.from(t.querySelectorAll("[".concat(e,"]"))).forEach(i=>{i.removeAttribute(e)})}),Array.from(t.querySelectorAll(Sn)).forEach(e=>{try{let i=JSON.parse(e.getAttribute(Pe));e.removeAttribute(Pe);for(let r in i){let o=i[r];e.setAttribute(r,o)}}catch{}}),t.innerHTML.replace(Ln,"")}},wn=Object.freeze({__proto__:null}),m=class extends f{constructor(t,e){super(...arguments),this.attachmentManager=t,this.attachment=e,this.id=this.attachment.id,this.file=this.attachment.file}remove(){return this.attachmentManager.requestRemovalOfAttachment(this.attachment)}};m.proxyMethod("attachment.getAttribute"),m.proxyMethod("attachment.hasAttribute"),m.proxyMethod("attachment.setAttribute"),m.proxyMethod("attachment.getAttributes"),m.proxyMethod("attachment.setAttributes"),m.proxyMethod("attachment.isPending"),m.proxyMethod("attachment.isPreviewable"),m.proxyMethod("attachment.getURL"),m.proxyMethod("attachment.getHref"),m.proxyMethod("attachment.getFilename"),m.proxyMethod("attachment.getFilesize"),m.proxyMethod("attachment.getFormattedFilesize"),m.proxyMethod("attachment.getExtension"),m.proxyMethod("attachment.getContentType"),m.proxyMethod("attachment.getFile"),m.proxyMethod("attachment.setFile"),m.proxyMethod("attachment.releaseFile"),m.proxyMethod("attachment.getUploadProgress"),m.proxyMethod("attachment.setUploadProgress");var Ut=class extends f{constructor(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[];super(...arguments),this.managedAttachments={},Array.from(t).forEach(e=>{this.manageAttachment(e)})}getAttachments(){let t=[];for(let e in this.managedAttachments){let i=this.managedAttachments[e];t.push(i)}return t}manageAttachment(t){return this.managedAttachments[t.id]||(this.managedAttachments[t.id]=new m(this,t)),this.managedAttachments[t.id]}attachmentIsManaged(t){return t.id in this.managedAttachments}requestRemovalOfAttachment(t){var e,i;if(this.attachmentIsManaged(t))return(e=this.delegate)===null||e===void 0||(i=e.attachmentManagerDidRequestRemovalOfAttachment)===null||i===void 0?void 0:i.call(e,t)}unmanageAttachment(t){let e=this.managedAttachments[t.id];return delete this.managedAttachments[t.id],e}},qt=class{constructor(t){this.composition=t,this.document=this.composition.document;let e=this.composition.getSelectedRange();this.startPosition=e[0],this.endPosition=e[1],this.startLocation=this.document.locationFromPosition(this.startPosition),this.endLocation=this.document.locationFromPosition(this.endPosition),this.block=this.document.getBlockAtIndex(this.endLocation.index),this.breaksOnReturn=this.block.breaksOnReturn(),this.previousCharacter=this.block.text.getStr
`}shouldBreakFormattedBlock(){return this.block.hasAttributes()&&!this.block.isListItem()&&(this.breaksOnReturn&&this.nextCharacter===`
`||this.previousCharacter===`
`)}shouldDecreaseListLevel(){return this.block.hasAttributes()&&this.block.isListItem()&&this.block.isEmpty()}shouldPrependListItem(){return this.block.isListItem()&&this.startLocation.offset===0&&!this.block.isEmpty()}shouldRemoveLastBlockAttribute(){return this.block.hasAttributes()&&!this.block.isListItem()&&this.block.isEmpty()}},F=class extends f{constructor(){super(...arguments),this.document=new k,this.attachments=[],this.currentAttributes={},this.revision=0}setDocument(t){var e,i;if(!t.isEqualTo(this.document))return this.document=t,this.refreshAttachments(),this.revision++,(e=this.delegate)===null||e===void 0||(i=e.compositionDidChangeDocument)===null||i===void 0?void 0:i.call(e,t)}getSnapshot(){return{document:this.document,selectedRange:this.getSelectedRange()}}loadSnapshot(t){var e,i,r,o;let{document:s,selectedRange:a}=t;return(e=this.delegate)===null||e===void 0||(i=e.compositionWillLoadSnapshot)===null||i===void 0||i.call(e),this.setDocument(s??new k),this.setSelection(a??[0,0]),(r=this.delegate)===null||r===void 0||(o=r.compositionDidLoadSnapshot)===null||o===void 0?void 0:o.call(r)}insertText(t){let{updatePosition:e}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{updatePosition:!0},i=this.getSelectedRange();this.setDocument(this.document.insertTextAtRange(t,i));let r=i[0],o=r+t.getLength();return e&&this.setSelection(o),this.notifyDelegateOfInsertionAtRange([r,o])}insertBlock(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new S,e=new k([t]);return this.insertDocument(e)}insertDocument(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:new k,e=this.getSelectedRange();this.setDocument(this.document.insertDocumentAtRange(t,e));let i=e[0],r=i+t.getLength();return this.setSelection(r),this.notifyDelegateOfInsertionAtRange([i,r])}insertString(t,e){let i=this.getCurrentTextAttributes(),r=R.textForStringWithAttributes(t,i);return this.insertText(r,e)}insertBlockBreak(){let t=this.getSelectedRange();this.setDocument(this.document.insertBlockBreakAtRange(t));let e=t[0],i=e+1;return this.setSelection(i),this.notifyDelegateOfInsertionAtRange([e,i])}insertLineBreak(){let t=new qt(this);if(t.shouldDecreaseListLevel())return this.decreaseListLevel(),this.setSelection(t.startPosition);if(t.shouldPrependListItem()){let e=new k([t.block.copyWithoutText()]);return this.insertDocument(e)}return t.shouldInsertBlockBreak()?this.insertBlockBreak():t.shouldRemoveLastBlockAttribute()?this.removeLastBlockAttribute():t.shouldBreakFormattedBlock()?this.breakFormattedBlock(t):this.insertString(`
`)}insertHTML(t){let e=et.parse(t).getDocument(),i=this.getSelectedRange();this.setDocument(this.document.mergeDocumentAtRange(e,i));let r=i[0],o=r+e.getLength()-1;return this.setSelection(o),this.notifyDelegateOfInsertionAtRange([r,o])}replaceHTML(t){let e=et.parse(t).getDocument().copyUsingObjectsFromDocument(this.document),i=this.getLocationRange({strict:!1}),r=this.document.rangeFromLocationRange(i);return this.setDocument(e),this.setSelection(r)}insertFile(t){return this.insertFiles([t])}insertFiles(t){let e=[];return Array.from(t).forEach(i=>{var r;if((r=this.delegate)!==null&&r!==void 0&&r.compositionShouldAcceptFile(i)){let o=H.attachmentForFile(i);e.push(o)}}),this.insertAttachments(e)}insertAttachment(t){return this.insertAttachments([t])}insertAttachments(t){let e=new R;return Array.from(t).forEach(i=>{var r;let o=i.getType(),s=(r=je[o])===null||r===void 0?void 0:r.presentation,a=this.getCurrentTextAttributes();s&&(a.presentation=s);let l=R.textForAttachmentWithAttributes(i,a);e=e.appendText(l)}),this.insertText(e)}shouldManageDeletingInDirection(t){let e=this.getLocationRange();if(N(e)){if(t==="backward"&&e[0].offset===0||this.shouldManageMovingCursorInDirection(t))return!0}else if(e[0].index!==e[1].index)return!0;return!1}deleteInDirection(t){let e,i,r,{length:o}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},s=this.getLocationRange(),a=this.getSelectedRange(),l=N(a);if(l?i=t==="backward"&&s[0].offset===0:r=s[0].index!==s[1].index,i&&this.canDecreaseBlockAttributeLevel()){let c=this.getBlock();if(c.isListItem()?this.decreaseListLevel():this.decreaseBlockAttributeLevel(),this.setSelection(a[0]),c.isEmpty())return!1}return l&&(a=this.getExpandedRangeInDirection(t,{length:o}),t==="backward"&&(e=this.getAttachmentAtRange(a))),e?(this.editAttachment(e),!1):(this.setDocument(this.document.removeTextAtRange(a)),this.setSelection(a[0]),!i&&!r&&void 0)}moveTextFromRange(t){let[e]=Array.from(this.getSelectedRange());return this.setDocument(this.document.moveTextFromRangeToPosition(t,e)),this.setSelection(e)}removeAttachment(t){let e=this.document.getRangeOfAttachment(t);if(e)return this.stopEditingAttachment(),this.setDocument(this.document.removeTextAtRange(e)),this.setSelection(e[0])}removeLastBlockAttribute(){let[t,e]=Array.from(this.getSelectedRange()),i=this.document.getBlockAtPosition(e);return this.removeCurrentAttribute(i.getLastAttribute()),this.setSelection(t)}insertPlaceholder(){return this.placeholderPosition=this.getPosition(),this.insertString(" ")}selectPlaceholder(){if(this.placeholderPosition!=null)return this.setSelectedRange([this.placeholderPosition,this.placeholderPosition+1]),this.getSelectedRange()}forgetPlaceholder(){this.placeholderPosition=null}hasCurrentAttribute(t){let e=this.currentAttributes[t];return e!=null&&e!==!1}toggleCurrentAttribute(t){let e=!this.currentAttributes[t];return e?this.setCurrentAttribute(t,e):this.removeCurrentAttribute(t)}canSetCurrentAttribute(t){return v(t)?this.canSetCurrentBlockAttribute(t):this.canSetCurrentTextAttribute(t)}canSetCurrentTextAttribute(t){let e=this.getSelectedDocument();if(e){for(let i of Array.from(e.getAttachments()))if(!i.hasContent())return!1;return!0}}canSetCurrentBlockAttribute(t){let e=this.getBlock();if(e)return!e.isTerminalBlock()}setCurrentAttribute(t,e){return v(t)?this.setBlockAttribute(t,e):(this.setTextAttribute(t,e),this.currentAttributes[t]=e,this.notifyDelegateOfCurrentAttributesChange())}setHTMLAtributeAtPosition(t,e,i){var r;let o=this.document.getBlockAtPosition(t),s=(r=v(o.getLastAttribute()))===null||r===void 0?void 0:r.htmlAttributes;if(o&&s!=null&&s.includes(e)){let a=this.document.setHTMLAttributeAtPosition(t,e,i);this.setDocument(a)}}setTextAttribute(t,e){let i=this.getSelectedRange();if(!i)return;let[r,o]=Array.from(i);if(r!==o)return this.setDocument(this.document.addAttributeAtRange(t,e,i));if(t==="href"){let s=R.textForStringWithAttributes(e,{href:e});return this.insertText(s)}}setBlockAttribute(t,e){let i=this.getSelectedRange();if(this.canSetCurrentAttribute(t))return this.setDocument(this.document.appl
`?r+=1:e=e.removeTextAtRange(o),o=[r,r]):t.nextCharacter===`
`?t.previousCharacter===`
`?o=[r-1,r+1]:(o=[r,r+1],r+=1):t.startLocation.offset-1!=0&&(r+=1);let s=new k([i.removeLastAttribute().copyWithoutText()]);return this.setDocument(e.insertDocumentAtRange(s,o)),this.setSelection(r)}getPreviousBlock(){let t=this.getLocationRange();if(t){let{index:e}=t[0];if(e>0)return this.document.getBlockAtIndex(e-1)}}getBlock(){let t=this.getLocationRange();if(t)return this.document.getBlockAtIndex(t[0].index)}getAttachmentAtRange(t){let e=this.document.getDocumentAtRange(t);if(e.toString()==="".concat("\uFFFC",`
`))return e.getAttachments()[0]}notifyDelegateOfCurrentAttributesChange(){var t,e;return(t=this.delegate)===null||t===void 0||(e=t.compositionDidChangeCurrentAttributes)===null||e===void 0?void 0:e.call(t,this.currentAttributes)}notifyDelegateOfInsertionAtRange(t){var e,i;return(e=this.delegate)===null||e===void 0||(i=e.compositionDidPerformInsertionAtRange)===null||i===void 0?void 0:i.call(e,t)}translateUTF16PositionFromOffset(t,e){let i=this.document.toUTF16String(),r=i.offsetFromUCS2Offset(t);return i.offsetToUCS2Offset(r+e)}};F.proxyMethod("getSelectionManager().getPointRange"),F.proxyMethod("getSelectionManager().setLocationRangeFromPointRange"),F.proxyMethod("getSelectionManager().createLocationRangeFromDOMRange"),F.proxyMethod("getSelectionManager().locationIsCursorTarget"),F.proxyMethod("getSelectionManager().selectionIsExpanded"),F.proxyMethod("delegate?.getSelectionManager");var Et=class extends f{constructor(t){super(...arguments),this.composition=t,this.undoEntries=[],this.redoEntries=[]}recordUndoEntry(t){let{context:e,consolidatable:i}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},r=this.undoEntries.slice(-1)[0];if(!i||!Tn(r,t,e)){let o=this.createEntry({description:t,context:e});this.undoEntries.push(o),this.redoEntries=[]}}undo(){let t=this.undoEntries.pop();if(t){let e=this.createEntry(t);return this.redoEntries.push(e),this.composition.loadSnapshot(t.snapshot)}}redo(){let t=this.redoEntries.pop();if(t){let e=this.createEntry(t);return this.undoEntries.push(e),this.composition.loadSnapshot(t.snapshot)}}canUndo(){return this.undoEntries.length>0}canRedo(){return this.redoEntries.length>0}createEntry(){let{description:t,context:e}=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};return{description:t?.toString(),context:JSON.stringify(e),snapshot:this.composition.getSnapshot()}}},Tn=(n,t,e)=>n?.description===t?.toString()&&n?.context===JSON.stringify(e),be="attachmentGallery",Vt=class{constructor(t){this.document=t.document,this.selectedRange=t.selectedRange}perform(){return this.removeBlockAttribute(),this.applyBlockAttribute()}getSnapshot(){return{document:this.document,selectedRange:this.selectedRange}}removeBlockAttribute(){return this.findRangesOfBlocks().map(t=>this.document=this.document.removeAttributeAtRange(be,t))}applyBlockAttribute(){let t=0;this.findRangesOfPieces().forEach(e=>{e[1]-e[0]>1&&(e[0]+=t,e[1]+=t,this.document.getCharacterAtPosition(e[1])!==`
`&&(this.document=this.document.insertBlockBreakAtRange(e[1]),e[1]<this.selectedRange[1]&&this.moveSelectedRangeForward(),e[1]++,t++),e[0]!==0&&this.document.getCharacterAtPosition(e[0]-1)!==`
`&&(this.document=this.document.insertBlockBreakAtRange(e[0]),e[0]<this.selectedRange[0]&&this.moveSelectedRangeForward(),e[0]++,t++),this.document=this.document.applyBlockAttributeAtRange(be,!0,e))})}findRangesOfBlocks(){return this.document.findRangesForBlockAttribute(be)}findRangesOfPieces(){return this.document.findRangesForTextAttribute("presentation",{withValue:"gallery"})}moveSelectedRangeForward(){this.selectedRange[0]+=1,this.selectedRange[1]+=1}},Bi=function(n){let t=new Vt(n);return t.perform(),t.getSnapshot()},Bn=[Bi],Ht=class{constructor(t,e,i){this.insertFiles=this.insertFiles.bind(this),this.composition=t,this.selectionManager=e,this.element=i,this.undoManager=new Et(this.composition),this.filters=Bn.slice(0)}loadDocument(t){return this.loadSnapshot({document:t,selectedRange:[0,0]})}loadHTML(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:"",e=et.parse(t,{referenceElement:this.element}).getDocument();return this.loadDocument(e)}loadJSON(t){let{document:e,selectedRange:i}=t;return e=k.fromJSON(e),this.loadSnapshot({document:e,selectedRange:i})}loadSnapshot(t){return this.undoManager=new Et(this.composition),this.composition.loadSnapshot(t)}getDocument(){return this.composition.document}getSelectedDocument(){return this.composition.getSelectedDocument()}getSnapshot(){return this.composition.getSnapshot()}toJSON(){return this.getSnapshot()}deleteInDirection(t){return this.composition.deleteInDirection(t)}insertAttachment(t){return this.composition.insertAttachment(t)}insertAttachments(t){return this.composition.insertAttachments(t)}insertDocument(t){return this.composition.insertDocument(t)}insertFile(t){return this.composition.insertFile(t)}insertFiles(t){return this.composition.insertFiles(t)}insertHTML(t){return this.composition.insertHTML(t)}insertString(t){return this.composition.insertString(t)}insertText(t){return this.composition.insertText(t)}insertLineBreak(){return this.composition.insertLineBreak()}getSelectedRange(){return this.composition.getSelectedRange()}getPosition(){return this.composition.getPosition()}getClientRectAtPosition(t){let e=this.getDocument().locationRangeFromRange([t,t+1]);return this.selectionManager.getClientRectAtLocationRange(e)}expandSelectionInDirection(t){return this.composition.expandSelectionInDirection(t)}moveCursorInDirection(t){return this.composition.moveCursorInDirection(t)}setSelectedRange(t){return this.composition.setSelectedRange(t)}activateAttribute(t){let e=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];return this.composition.setCurrentAttribute(t,e)}attributeIsActive(t){return this.composition.hasCurrentAttribute(t)}canActivateAttribute(t){return this.composition.canSetCurrentAttribute(t)}deactivateAttribute(t){return this.composition.removeCurrentAttribute(t)}setHTMLAtributeAtPosition(t,e,i){this.composition.setHTMLAtributeAtPosition(t,e,i)}canDecreaseNestingLevel(){return this.composition.canDecreaseNestingLevel()}canIncreaseNestingLevel(){return this.composition.canIncreaseNestingLevel()}decreaseNestingLevel(){if(this.canDecreaseNestingLevel())return this.composition.decreaseNestingLevel()}increaseNestingLevel(){if(this.canIncreaseNestingLevel())return this.composition.increaseNestingLevel()}canRedo(){return this.undoManager.canRedo()}canUndo(){return this.undoManager.canUndo()}recordUndoEntry(t){let{context:e,consolidatable:i}=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return this.undoManager.recordUndoEntry(t,{context:e,consolidatable:i})}redo(){if(this.canRedo())return this.undoManager.redo()}undo(){if(this.canUndo())return this.undoManager.undo()}},zt=class{constructor(t){this.element=t}findLocationFromContainerAndOffset(t,e){let{strict:i}=arguments.length>2&&arguments[2]!==void 0?arguments[2]:{strict:!0},r=0,o=!1,s={index:0,offset:0},a=this.findAttachmentElementParentForNode(t);a&&(t=a.parentNode,e=ae(a));let l=Ft(this.element,{usingFilter:Fi});for(;l.nextNode();){let c=l.currentNode;if(c===t&&xt(t)){st(c)||(s.offset+=e);break}if(c.parentNode===t){if(r++===e)break}else if(!J(t,c)&&r>0)break;$e(c,{strict:i}
`]):(t=Ie(i),e=Ie(r)),{additions:t.filter((o,s)=>o!==e[s]).map(bt),deletions:e.filter((o,s)=>o!==t[s]).map(bt)}}getTextChangesFromCharacterData(){let t,e,i=this.getMutationsByType("characterData");if(i.length){let r=i[0],o=i[i.length-1],s=function(a,l){let c,u;return a=Z.box(a),(l=Z.box(l)).length<a.length?[u,c]=ti(a,l):[c,u]=ti(l,a),{added:c,removed:u}}(bt(r.oldValue),bt(o.target.data));t=s.added,e=s.removed}return{additions:t?[t]:[],deletions:e?[e]:[]}}},Ie=function(){let n=arguments.length>0&&arguments[0]!==void 0?arguments[0]:[],t=[];for(let e of Array.from(n))switch(e.nodeType){case Node.TEXT_NODE:t.push(e.data);break;case Node.ELEMENT_NODE:x(e)==="br"?t.push(`
`):t.push(...Array.from(Ie(e.childNodes)||[]))}return t},Xt=class extends at{constructor(t){super(...arguments),this.file=t}perform(t){let e=new FileReader;return e.onerror=()=>t(!1),e.onload=()=>{e.onerror=null;try{e.abort()}catch{}return t(!0,this.file)},e.readAsArrayBuffer(this.file)}},Ne=class{constructor(t){this.element=t}shouldIgnore(t){return!!St.samsungAndroid&&(this.previousEvent=this.event,this.event=t,this.checkSamsungKeyboardBuggyModeStart(),this.checkSamsungKeyboardBuggyModeEnd(),this.buggyMode)}checkSamsungKeyboardBuggyModeStart(){this.insertingLongTextAfterUnidentifiedChar()&&jn(this.element.innerText,this.event.data)&&(this.buggyMode=!0,this.event.preventDefault())}checkSamsungKeyboardBuggyModeEnd(){this.buggyMode&&this.event.inputType!=="insertText"&&(this.buggyMode=!1)}insertingLongTextAfterUnidentifiedChar(){var t;return this.isBeforeInputInsertText()&&this.previousEventWasUnidentifiedKeydown()&&((t=this.event.data)===null||t===void 0?void 0:t.length)>50}isBeforeInputInsertText(){return this.event.type==="beforeinput"&&this.event.inputType==="insertText"}previousEventWasUnidentifiedKeydown(){var t,e;return((t=this.previousEvent)===null||t===void 0?void 0:t.type)==="keydown"&&((e=this.previousEvent)===null||e===void 0?void 0:e.key)==="Unidentified"}},jn=(n,t)=>gi(n)===gi(t),Wn=new RegExp("(".concat("\uFFFC","|").concat(te,"|").concat(U,"|\\s)+"),"g"),gi=n=>n.replace(Wn," ").trim(),ht=class extends f{constructor(t){super(...arguments),this.element=t,this.mutationObserver=new Gt(this.element),this.mutationObserver.delegate=this,this.flakyKeyboardDetector=new Ne(this.element);for(let e in this.constructor.events)p(e,{onElement:this.element,withCallback:this.handlerFor(e)})}elementDidMutate(t){}editorWillSyncDocumentView(){return this.mutationObserver.stop()}editorDidSyncDocumentView(){return this.mutationObserver.start()}requestRender(){var t,e;return(t=this.delegate)===null||t===void 0||(e=t.inputControllerDidRequestRender)===null||e===void 0?void 0:e.call(t)}requestReparse(){var t,e;return(t=this.delegate)===null||t===void 0||(e=t.inputControllerDidRequestReparse)===null||e===void 0||e.call(t),this.requestRender()}attachFiles(t){let e=Array.from(t).map(i=>new Xt(i));return Promise.all(e).then(i=>{this.handleInput(function(){var r,o;return(r=this.delegate)===null||r===void 0||r.inputControllerWillAttachFiles(),(o=this.responder)===null||o===void 0||o.insertFiles(i),this.requestRender()})})}handlerFor(t){return e=>{e.defaultPrevented||this.handleInput(()=>{if(!Ue(this.element)){if(this.flakyKeyboardDetector.shouldIgnore(e))return;this.eventName=t,this.constructor.events[t].call(this,e)}})}}handleInput(t){try{var e;(e=this.delegate)===null||e===void 0||e.inputControllerWillHandleInput(),t.call(this)}finally{var i;(i=this.delegate)===null||i===void 0||i.inputControllerDidHandleInput()}}createLinkHTML(t,e){let i=document.createElement("a");return i.href=t,i.textContent=e||t,i.outerHTML}},ye;E(ht,"events",{});var{browser:Un,keyNames:Ni}=Lt,qn=0,w=class extends ht{constructor(){super(...arguments),this.resetInputSummary()}setInputSummary(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};this.inputSummary.eventName=this.eventName;for(let e in t){let i=t[e];this.inputSummary[e]=i}return this.inputSummary}resetInputSummary(){this.inputSummary={}}reset(){return this.resetInputSummary(),tt.reset()}elementDidMutate(t){var e,i;return this.isComposing()?(e=this.delegate)===null||e===void 0||(i=e.inputControllerDidAllowUnhandledInput)===null||i===void 0?void 0:i.call(e):this.handleInput(function(){return this.mutationIsSignificant(t)&&(this.mutationIsExpected(t)?this.requestRender():this.requestReparse()),this.reset()})}mutationIsExpected(t){let{textAdded:e,textDeleted:i}=t;if(this.inputSummary.preferDocument)return!0;let r=e!=null?e===this.inputSummary.textAdded:!this.inputSummary.textAdded,o=i!=null?this.inputSummary.didDelete:!this.inputSummary.didDelete,s=[`
`,`
`].includes(e)&&!r,a=i===`
`&&!o;if(s&&!a||a&&!s){let c=this.getSelectedRange();if(c){var l;let u=s?e.replace(/\n$/,"").length||-1:e?.length||1;if((l=this.responder)!==null&&l!==void 0&&l.positionIsBlockBreak(c[1]+u))return!0}}return r&&o}mutationIsSignificant(t){var e;let i=Object.keys(t).length>0,r=((e=this.compositionInput)===null||e===void 0?void 0:e.getEndData())==="";return i||!r}getCompositionInput(){if(this.isComposing())return this.compositionInput;this.compositionInput=new B(this)}isComposing(){return this.compositionInput&&!this.compositionInput.isEnded()}deleteInDirection(t,e){var i;return((i=this.responder)===null||i===void 0?void 0:i.deleteInDirection(t))!==!1?this.setInputSummary({didDelete:!0}):e?(e.preventDefault(),this.requestRender()):void 0}serializeSelectionToDataTransfer(t){var e;if(!function(r){if(r==null||!r.setData)return!1;for(let o in Ye){let s=Ye[o];try{if(r.setData(o,s),!r.getData(o)===s)return!1}catch{return!1}}return!0}(t))return;let i=(e=this.responder)===null||e===void 0?void 0:e.getSelectedDocument().toSerializableDocument();return t.setData("application/x-trix-document",JSON.stringify(i)),t.setData("text/html",ct.render(i).innerHTML),t.setData("text/plain",i.toString().replace(/\n$/,"")),!0}canAcceptDataTransfer(t){let e={};return Array.from(t?.types||[]).forEach(i=>{e[i]=!0}),e.Files||e["application/x-trix-document"]||e["text/html"]||e["text/plain"]}getPastedHTMLUsingHiddenElement(t){let e=this.getSelectedRange(),i={position:"absolute",left:"".concat(window.pageXOffset,"px"),top:"".concat(window.pageYOffset,"px"),opacity:0},r=d({style:i,tagName:"div",editable:!0});return document.body.appendChild(r),r.focus(),requestAnimationFrame(()=>{let o=r.innerHTML;return V(r),this.setSelectedRange(e),t(o)})}};E(w,"events",{keydown(n){this.isComposing()||this.resetInputSummary(),this.inputSummary.didInput=!0;let t=Ni[n.keyCode];if(t){var e;let r=this.keys;["ctrl","alt","shift","meta"].forEach(o=>{var s;n["".concat(o,"Key")]&&(o==="ctrl"&&(o="control"),r=(s=r)===null||s===void 0?void 0:s[o])}),((e=r)===null||e===void 0?void 0:e[t])!=null&&(this.setInputSummary({keyName:t}),tt.reset(),r[t].call(this,n))}if(Ei(n)){let r=String.fromCharCode(n.keyCode).toLowerCase();if(r){var i;let o=["alt","shift"].map(s=>{if(n["".concat(s,"Key")])return s}).filter(s=>s);o.push(r),(i=this.delegate)!==null&&i!==void 0&&i.inputControllerDidReceiveKeyboardCommand(o)&&n.preventDefault()}}},keypress(n){if(this.inputSummary.eventName!=null||n.metaKey||n.ctrlKey&&!n.altKey)return;let t=zn(n);var e,i;return t?((e=this.delegate)===null||e===void 0||e.inputControllerWillPerformTyping(),(i=this.responder)===null||i===void 0||i.insertString(t),this.setInputSummary({textAdded:t,didDelete:this.selectionIsExpanded()})):void 0},textInput(n){let{data:t}=n,{textAdded:e}=this.inputSummary;if(e&&e!==t&&e.toUpperCase()===t){var i;let r=this.getSelectedRange();return this.setSelectedRange([r[0],r[1]+e.length]),(i=this.responder)===null||i===void 0||i.insertString(t),this.setInputSummary({textAdded:t}),this.setSelectedRange(r)}},dragenter(n){n.preventDefault()},dragstart(n){var t,e;return this.serializeSelectionToDataTransfer(n.dataTransfer),this.draggedRange=this.getSelectedRange(),(t=this.delegate)===null||t===void 0||(e=t.inputControllerDidStartDrag)===null||e===void 0?void 0:e.call(t)},dragover(n){if(this.draggedRange||this.canAcceptDataTransfer(n.dataTransfer)){n.preventDefault();let i={x:n.clientX,y:n.clientY};var t,e;if(!dt(i,this.draggingPoint))return this.draggingPoint=i,(t=this.delegate)===null||t===void 0||(e=t.inputControllerDidReceiveDragOverPoint)===null||e===void 0?void 0:e.call(t,this.draggingPoint)}},dragend(n){var t,e;(t=this.delegate)===null||t===void 0||(e=t.inputControllerDidCancelDrag)===null||e===void 0||e.call(t),this.draggedRange=null,this.draggingPoint=null},drop(n){var t,e;n.preventDefault();let i=(t=n.dataTransfer)===null||t===void 0?void 0:t.files,r=n.dataTransfer.getData("application/x-trix-document"),o={x:n.clientX,y:n.clientY};if((e=this.responder)===null||e===void 0||e.setLocationRangeFromPointRange(o),i!=null&&i.length)this.attachFi
`,{updatePosition:!1}),this.requestRender()}},shift:{return(n){var t,e;(t=this.delegate)===null||t===void 0||t.inputControllerWillPerformTyping(),(e=this.responder)===null||e===void 0||e.insertString(`
`),this.requestRender(),n.preventDefault()},tab(n){var t,e;(t=this.responder)!==null&&t!==void 0&&t.canDecreaseNestingLevel()&&((e=this.responder)===null||e===void 0||e.decreaseNestingLevel(),this.requestRender(),n.preventDefault())},left(n){if(this.selectionIsInCursorTarget())return n.preventDefault(),this.expandSelectionInDirection("backward")},right(n){if(this.selectionIsInCursorTarget())return n.preventDefault(),this.expandSelectionInDirection("forward")}},alt:{backspace(n){var t;return this.setInputSummary({preferDocument:!1}),(t=this.delegate)===null||t===void 0?void 0:t.inputControllerWillPerformTyping()}},meta:{backspace(n){var t;return this.setInputSummary({preferDocument:!1}),(t=this.delegate)===null||t===void 0?void 0:t.inputControllerWillPerformTyping()}}}),w.proxyMethod("responder?.getSelectedRange"),w.proxyMethod("responder?.setSelectedRange"),w.proxyMethod("responder?.expandSelectionInDirection"),w.proxyMethod("responder?.selectionIsInCursorTarget"),w.proxyMethod("responder?.selectionIsExpanded");var Vn=n=>{var t;return(t=n.type)===null||t===void 0||(t=t.match(/\/(\w+)$/))===null||t===void 0?void 0:t[1]},Hn=!((ye=" ".codePointAt)===null||ye===void 0||!ye.call(" ",0)),zn=function(n){if(n.key&&Hn&&n.key.codePointAt(0)===n.keyCode)return n.key;{let t;if(n.which===null?t=n.keyCode:n.which!==0&&n.charCode!==0&&(t=n.charCode),t!=null&&Ni[t]!=="escape")return Z.fromCodepoints([t]).toString()}},_n=function(n){let t=n.clipboardData;if(t){if(t.types.includes("text/html")){for(let e of t.types){let i=/^CorePasteboardFlavorType/.test(e),r=/^dyn\./.test(e)&&t.getData(e);if(i||r)return!0}return!1}{let e=t.types.includes("com.apple.webarchive"),i=t.types.includes("com.apple.flat-rtfd");return e||i}}},B=class extends f{constructor(t){super(...arguments),this.inputController=t,this.responder=this.inputController.responder,this.delegate=this.inputController.delegate,this.inputSummary=this.inputController.inputSummary,this.data={}}start(t){if(this.data.start=t,this.isSignificant()){var e,i;this.inputSummary.eventName==="keypress"&&this.inputSummary.textAdded&&((i=this.responder)===null||i===void 0||i.deleteInDirection("left")),this.selectionIsExpanded()||(this.insertPlaceholder(),this.requestRender()),this.range=(e=this.responder)===null||e===void 0?void 0:e.getSelectedRange()}}update(t){if(this.data.update=t,this.isSignificant()){let e=this.selectPlaceholder();e&&(this.forgetPlaceholder(),this.range=e)}}end(t){return this.data.end=t,this.isSignificant()?(this.forgetPlaceholder(),this.canApplyToDocument()?(this.setInputSummary({preferDocument:!0,didInput:!1}),(e=this.delegate)===null||e===void 0||e.inputControllerWillPerformTyping(),(i=this.responder)===null||i===void 0||i.setSelectedRange(this.range),(r=this.responder)===null||r===void 0||r.insertString(this.data.end),(o=this.responder)===null||o===void 0?void 0:o.setSelectedRange(this.range[0]+this.data.end.length)):this.data.start!=null||this.data.update!=null?(this.requestReparse(),this.inputController.reset()):void 0):this.inputController.reset();var e,i,r,o}getEndData(){return this.data.end}isEnded(){return this.getEndData()!=null}isSignificant(){return!Un.composesExistingText||this.inputSummary.didInput}canApplyToDocument(){var t,e;return((t=this.data.start)===null||t===void 0?void 0:t.length)===0&&((e=this.data.end)===null||e===void 0?void 0:e.length)>0&&this.range}};B.proxyMethod("inputController.setInputSummary"),B.proxyMethod("inputController.requestRender"),B.proxyMethod("inputController.requestReparse"),B.proxyMethod("responder?.selectionIsExpanded"),B.proxyMethod("responder?.insertPlaceholder"),B.proxyMethod("responder?.selectPlaceholder"),B.proxyMethod("responder?.forgetPlaceholder");var G=class extends ht{constructor(){super(...arguments),this.render=this.render.bind(this)}elementDidMutate(){return this.scheduledRender?this.composing?(t=this.delegate)===null||t===void 0||(e=t.inputControllerDidAllowUnhandledInput)===null||e===void 0?void 0:e.call(t):void 0:this.reparse();var t,e}scheduleRender(){return this.scheduledRender?this.scheduledRender:this.scheduled
`)},insertLink(){return this.activateAttributeIfSupported("href",this.event.data)},insertOrderedList(){return this.toggleAttributeIfSupported("number")},insertParagraph(){var n;return(n=this.delegate)===null||n===void 0||n.inputControllerWillPerformTyping(),this.withTargetDOMRange(function(){var t;return(t=this.responder)===null||t===void 0?void 0:t.insertLineBreak()})},insertReplacementText(){let n=this.event.dataTransfer.getData("text/plain"),t=this.event.getTargetRanges()[0];this.withTargetDOMRange(t,()=>{this.insertString(n,{updatePosition:!1})})},insertText(){var n;return this.insertString(this.event.data||((n=this.event.dataTransfer)===null||n===void 0?void 0:n.getData("text/plain")))},insertTranspose(){return this.insertString(this.event.data)},insertUnorderedList(){return this.toggleAttributeIfSupported("bullet")}});var Jn=function(n){let t=document.createRange();return t.setStart(n.startContainer,n.startOffset),t.setEnd(n.endContainer,n.endOffset),t},Ce=n=>{var t;return Array.from(((t=n.dataTransfer)===null||t===void 0?void 0:t.types)||[]).includes("Files")},Kn=n=>{var t;return((t=n.dataTransfer.files)===null||t===void 0?void 0:t[0])&&!Oi(n)&&!(e=>{let{dataTransfer:i}=e;return i.types.includes("Files")&&i.types.includes("text/html")&&i.getData("text/html").includes("urn:schemas-microsoft-com:office:office")})(n)},Oi=function(n){let t=n.clipboardData;if(t)return Array.from(t.types).filter(e=>e.match(/file/i)).length===t.types.length&&t.files.length>=1},$n=function(n){let t=n.clipboardData;if(t)return t.types.includes("text/plain")&&t.types.length===1},Gn=function(n){let t=[];return n.altKey&&t.push("alt"),n.shiftKey&&t.push("shift"),t.push(n.key),t},ke=n=>({x:n.clientX,y:n.clientY}),Oe="[data-trix-attribute]",Me="[data-trix-action]",Xn="".concat(Oe,", ").concat(Me),ee="[data-trix-dialog]",Yn="".concat(ee,"[data-trix-active]"),Zn="".concat(ee," [data-trix-method]"),mi="".concat(ee," [data-trix-input]"),pi=(n,t)=>(t||(t=rt(n)),n.querySelector("[data-trix-input][name='".concat(t,"']"))),fi=n=>n.getAttribute("data-trix-action"),rt=n=>n.getAttribute("data-trix-attribute")||n.getAttribute("data-trix-dialog-attribute"),Yt=class extends f{constructor(t){super(t),this.didClickActionButton=this.didClickActionButton.bind(this),this.didClickAttributeButton=this.didClickAttributeButton.bind(this),this.didClickDialogButton=this.didClickDialogButton.bind(this),this.didKeyDownDialogInput=this.didKeyDownDialogInput.bind(this),this.element=t,this.attributes={},this.actions={},this.resetDialogInputs(),p("mousedown",{onElement:this.element,matchingSelector:Me,withCallback:this.didClickActionButton}),p("mousedown",{onElement:this.element,matchingSelector:Oe,withCallback:this.didClickAttributeButton}),p("click",{onElement:this.element,matchingSelector:Xn,preventDefault:!0}),p("click",{onElement:this.element,matchingSelector:Zn,withCallback:this.didClickDialogButton}),p("keydown",{onElement:this.element,matchingSelector:mi,withCallback:this.didKeyDownDialogInput})}didClickActionButton(t,e){var i;(i=this.delegate)===null||i===void 0||i.toolbarDidClickButton(),t.preventDefault();let r=fi(e);return this.getDialog(r)?this.toggleDialog(r):(o=this.delegate)===null||o===void 0?void 0:o.toolbarDidInvokeAction(r,e);var o}didClickAttributeButton(t,e){var i;(i=this.delegate)===null||i===void 0||i.toolbarDidClickButton(),t.preventDefault();let r=rt(e);var o;return this.getDialog(r)?this.toggleDialog(r):(o=this.delegate)===null||o===void 0||o.toolbarDidToggleAttribute(r),this.refreshAttributeButtons()}didClickDialogButton(t,e){let i=q(e,{matchingSelector:ee});return this[e.getAttribute("data-trix-method")].call(this,i)}didKeyDownDialogInput(t,e){if(t.keyCode===13){t.preventDefault();let i=e.getAttribute("name"),r=this.getDialog(i);this.setAttribute(r)}if(t.keyCode===27)return t.preventDefault(),this.hideDialog()}updateActions(t){return this.actions=t,this.refreshActionButtons()}refreshActionButtons(){return this.eachActionButton((t,e)=>{t.disabled=this.actions[e]===!1})}eachActionButton(t){return Array.from(this.element.querySelectorAll(Me)).map(e
display: block;
}
%t {
white-space: nowrap;
}
%t [data-trix-dialog] {
display: none;
}
%t [data-trix-dialog][data-trix-active] {
display: block;
}
%t [data-trix-dialog] [data-trix-validate]:invalid {
background-color: #ffdddd;
}`);var Zt=class extends HTMLElement{connectedCallback(){this.innerHTML===""&&(this.innerHTML=Ci.getDefaultHTML())}},ir=0,nr=function(n){if(!n.hasAttribute("contenteditable"))return n.setAttribute("contenteditable",""),function(t){let e=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};return e.times=1,p(t,e)}("focus",{onElement:n,withCallback:()=>rr(n)})},rr=function(n){return or(n),sr(n)},or=function(n){var t,e;if((t=(e=document).queryCommandSupported)!==null&&t!==void 0&&t.call(e,"enableObjectResizing"))return document.execCommand("enableObjectResizing",!1,!1),p("mscontrolselect",{onElement:n,preventDefault:!0})},sr=function(n){var t,e;if((t=(e=document).queryCommandSupported)!==null&&t!==void 0&&t.call(e,"DefaultParagraphSeparator")){let{tagName:i}=y.default;if(["div","p"].includes(i))return document.execCommand("DefaultParagraphSeparator",!1,i)}},bi=St.forcesObjectResizing?{display:"inline",width:"auto"}:{display:"inline-block",width:"1px"};ki("trix-editor",`%t {
display: block;
}
%t:empty::before {
content: attr(placeholder);
color: graytext;
cursor: text;
pointer-events: none;
white-space: pre-line;
}
%t a[contenteditable=false] {
cursor: text;
}
%t img {
max-width: 100%;
height: auto;
}
%t `.concat(K,` figcaption textarea {
resize: none;
}
%t `).concat(K,` figcaption textarea.trix-autoresize-clone {
position: absolute;
left: -9999px;
max-height: 0px;
}
%t `).concat(K,` figcaption[data-trix-placeholder]:empty::before {
content: attr(data-trix-placeholder);
color: graytext;
}
%t [data-trix-cursor-target] {
display: `).concat(bi.display,` !important;
width: `).concat(bi.width,` !important;
padding: 0 !important;
margin: 0 !important;
border: none !important;
}
%t [data-trix-cursor-target=left] {
vertical-align: top !important;
margin-left: -1px !important;
}
%t [data-trix-cursor-target=right] {
vertical-align: bottom !important;
margin-right: -1px !important;
}`));var Qt=class extends HTMLElement{get trixId(){return this.hasAttribute("trix-id")?this.getAttribute("trix-id"):(this.setAttribute("trix-id",++ir),this.trixId)}get labels(){let t=[];this.id&&this.ownerDocument&&t.push(...Array.from(this.ownerDocument.querySelectorAll("label[for='".concat(this.id,"']"))||[]));let e=q(this,{matchingSelector:"label"});return e&&[this,null].includes(e.control)&&t.push(e),t}get toolbarElement(){var t;if(this.hasAttribute("toolbar"))return(t=this.ownerDocument)===null||t===void 0?void 0:t.getElementById(this.getAttribute("toolbar"));if(this.parentNode){let e="trix-toolbar-".concat(this.trixId);this.setAttribute("toolbar",e);let i=d("trix-toolbar",{id:e});return this.parentNode.insertBefore(i,this),i}}get form(){var t;return(t=this.inputElement)===null||t===void 0?void 0:t.form}get inputElement(){var t;if(this.hasAttribute("input"))return(t=this.ownerDocument)===null||t===void 0?void 0:t.getElementById(this.getAttribute("input"));if(this.parentNode){let e="trix-input-".concat(this.trixId);this.setAttribute("input",e);let i=d("input",{type:"hidden",id:e});return this.parentNode.insertBefore(i,this.nextElementSibling),i}}get editor(){var t;return(t=this.editorController)===null||t===void 0?void 0:t.editor}get name(){var t;return(t=this.inputElement)===null||t===void 0?void 0:t.name}get value(){var t;return(t=this.inputElement)===null||t===void 0?void 0:t.value}set value(t){var e;this.defaultValue=t,(e=this.editor)===null||e===void 0||e.loadHTML(this.defaultValue)}notify(t,e){if(this.editorController)return vt("trix-".concat(t),{onElement:this,attributes:e})}setInputElementValue(t){this.inputElement&&(this.inputElement.value=t)}connectedCallback(){this.hasAttribute("data-trix-internal")||(nr(this),function(t){t.hasAttribute("role")||t.setAttribute("role","textbox")}(this),function(t){if(t.hasAttribute("aria-label")||t.hasAttribute("aria-labelledby"))return;let e=function(){let i=Array.from(t.labels).map(o=>{if(!o.contains(t))return o.textContent}).filter(o=>o),r=i.join(" ");return r?t.setAttribute("aria-label",r):t.removeAttribute("aria-label")};e(),p("focus",{onElement:t,withCallback:e})}(this),this.editorController||(vt("trix-before-initialize",{onElement:this}),this.editorController=new X({editorElement:this,html:this.defaultValue=this.value}),requestAnimationFrame(()=>vt("trix-initialize",{onElement:this}))),this.editorController.registerSelectionManager(),this.registerResetListener(),this.registerClickListener(),function(t){!document.querySelector(":focus")&&t.hasAttribute("autofocus")&&document.querySelector("[autofocus]")===t&&t.focus()}(this))}disconnectedCallback(){var t;return(t=this.editorController)===null||t===void 0||t.unregisterSelectionManager(),this.unregisterResetListener(),this.unregisterClickListener()}registerResetListener(){return this.resetListener=this.resetBubbled.bind(this),window.addEventListener("reset",this.resetListener,!1)}unregisterResetListener(){return window.removeEventListener("reset",this.resetListener,!1)}registerClickListener(){return this.clickListener=this.clickBubbled.bind(this),window.addEventListener("click",this.clickListener,!1)}unregisterClickListener(){return window.removeEventListener("click",this.clickListener,!1)}resetBubbled(t){if(!t.defaultPrevented&&t.target===this.form)return this.reset()}clickBubbled(t){if(t.defaultPrevented||this.contains(t.target))return;let e=q(t.target,{matchingSelector:"label"});return e&&Array.from(this.labels).includes(e)?this.focus():void 0}reset(){this.value=this.defaultValue}},T={VERSION:Mi,config:Lt,core:wn,models:Pi,views:In,controllers:Qn,observers:tr,operations:er,elements:Object.freeze({__proto__:null,TrixEditorElement:Qt,TrixToolbarElement:Zt}),filters:Object.freeze({__proto__:null,Filter:Vt,attachmentGalleryFilter:Bi})};Object.assign(T,Pi),window.Trix=T,setTimeout(function(){customElements.get("trix-toolbar")||customElements.define("trix-toolbar",Zt),customElements.get("trix-editor")||customElements.define("trix-editor",Qt)},0);T.config.blockAttributes.default.tagName="p";T.config.blockAttributes.default