@univerjs/core 0.2.5 → 0.2.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/lib/cjs/index.js +10 -10
  2. package/lib/es/index.js +8406 -7042
  3. package/lib/types/common/const.d.ts +1 -1
  4. package/lib/types/common/error.d.ts +18 -0
  5. package/lib/types/common/unit.d.ts +3 -0
  6. package/lib/types/docs/data-model/document-data-model.d.ts +4 -0
  7. package/lib/types/docs/data-model/json-x/json-x.d.ts +2 -1
  8. package/lib/types/docs/data-model/preset-list-type.d.ts +54 -4
  9. package/lib/types/docs/data-model/text-x/__tests__/transform-position.spec.d.ts +16 -0
  10. package/lib/types/docs/data-model/text-x/__tests__/transform.spec.d.ts +16 -0
  11. package/lib/types/docs/data-model/text-x/apply-utils/common.d.ts +2 -2
  12. package/lib/types/docs/data-model/text-x/text-x.d.ts +31 -1
  13. package/lib/types/docs/data-model/text-x/transform-utils.d.ts +3 -0
  14. package/lib/types/docs/data-model/types.d.ts +12 -10
  15. package/lib/types/index.d.ts +2 -1
  16. package/lib/types/services/context/context.d.ts +3 -1
  17. package/lib/types/services/instance/instance.service.d.ts +18 -6
  18. package/lib/types/services/plugin/plugin.d.ts +1 -1
  19. package/lib/types/services/plugin/plugin.service.d.ts +1 -0
  20. package/lib/types/services/resource-manager/resource-manager.service.d.ts +4 -6
  21. package/lib/types/services/resource-manager/type.d.ts +8 -4
  22. package/lib/types/services/snapshot/snapshot-transform.d.ts +3 -0
  23. package/lib/types/services/snapshot/snapshot-utils.d.ts +2 -2
  24. package/lib/types/shared/shape.d.ts +6 -0
  25. package/lib/types/shared/tools.d.ts +11 -0
  26. package/lib/types/sheets/workbook.d.ts +1 -0
  27. package/lib/types/slides/slide-model.d.ts +24 -2
  28. package/lib/types/types/enum/text-style.d.ts +3 -1
  29. package/lib/types/types/interfaces/i-document-data-interceptor.d.ts +5 -1
  30. package/lib/types/types/interfaces/i-document-data.d.ts +166 -57
  31. package/lib/types/types/interfaces/i-workbook-data.d.ts +6 -5
  32. package/lib/umd/index.js +10 -10
  33. package/package.json +10 -7
package/lib/umd/index.js CHANGED
@@ -1,11 +1,11 @@
1
- (function(u,W){typeof exports=="object"&&typeof module<"u"?W(exports,require("rxjs"),require("rxjs/operators"),require("react")):typeof define=="function"&&define.amd?define(["exports","rxjs","rxjs/operators","react"],W):(u=typeof globalThis<"u"?globalThis:u||self,W(u.UniverCore={},u.rxjs,u.rxjs.operators,u.React))})(this,function(u,W,ht,ke){"use strict";var dd=Object.defineProperty;var fd=(u,W,ht)=>W in u?dd(u,W,{enumerable:!0,configurable:!0,writable:!0,value:ht}):u[W]=ht;var g=(u,W,ht)=>fd(u,typeof W!="symbol"?W+"":W,ht);var Ta,ya;function La(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const t in e)if(t!=="default"){const r=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(n,t,r.get?r:{enumerable:!0,get:()=>e[t]})}}return n.default=e,Object.freeze(n)}function Pa(e,n){for(var t=0;t<n.length;t++){const r=n[t];if(typeof r!="string"&&!Array.isArray(r)){for(const s in r)if(s!=="default"&&!(s in e)){const i=Object.getOwnPropertyDescriptor(r,s);i&&Object.defineProperty(e,s,i.get?i:{enumerable:!0,get:()=>r[s]})}}}return Object.freeze(Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}))}const et=La(ke);function ka(){Fa()}const mn=typeof global<"u"?global:typeof self<"u"?self:window;function Fa(){typeof mn.requestIdleCallback!="function"&&(mn.requestIdleCallback=function(t){const r=Date.now();return setTimeout(function(){const i=Math.max(0,50-(Date.now()-r));t({didTimeout:i===0,timeRemaining(){return i}})},1)}),typeof mn.cancelIdleCallback!="function"&&(mn.cancelIdleCallback=function(t){clearTimeout(t)})}const Ha="__default_document_sub_component_id20231101__",Qt=2,is=1;function $a(e,n){if(n==null||e==null)return!0;const{left:t=0,top:r=0,height:s=0,width:i=0,angle:o=0}=n,{left:a=0,top:l=0,height:d=0,width:h=0,angle:c=0}=e,f=h,_=d,E=i,p=s;return Math.abs(a-t)>Qt||Math.abs(l-r)>Qt||Math.abs(f-E)>Qt||Math.abs(_-p)>Qt||Math.abs(c-o)>is}function os(e,n){let t=0,r=e.length-1;for(;t<=r;){const s=Math.floor((r+t)/2);if(n<e[s]&&(s===0||n>=e[s-1]))return s;if(n>=e[s])t=s+1;else if(n<e[s])r=s-1;else return-1}return-1}function as(e,n){let t=0,r=0,s=0,i=-1,o=e.length-1;for(;t<e.length&&o>=0&&o>=t;){if(r=e[o],o===0?s=0:s=e[o-1],n>=s&&n<=r){i=o;break}if(r=e[t],t===0?s=0:s=e[t-1],n>=s&&n<r){i=t;break}t++,o--}return i}function Wa(e,n){let t=e.length-1;return n<0?-1:n<e[0]?0:n>e[e.length-1]?Number.POSITIVE_INFINITY:(e.length<40||n<=e[20]||n>=e[t-20]?t=as(e,n):t=os(e,n),t)}function Ba(e){const n=new Blob([e],{type:"text/javascript"});return window.URL.createObjectURL(n)}var ls=(e=>(e[e.DEFAULT_SERIES=0]="DEFAULT_SERIES",e[e.ALTERNATE_SERIES=1]="ALTERNATE_SERIES",e))(ls||{}),he=(e=>(e[e.NONE=0]="NONE",e[e.THIN=1]="THIN",e[e.HAIR=2]="HAIR",e[e.DOTTED=3]="DOTTED",e[e.DASHED=4]="DASHED",e[e.DASH_DOT=5]="DASH_DOT",e[e.DASH_DOT_DOT=6]="DASH_DOT_DOT",e[e.DOUBLE=7]="DOUBLE",e[e.MEDIUM=8]="MEDIUM",e[e.MEDIUM_DASHED=9]="MEDIUM_DASHED",e[e.MEDIUM_DASH_DOT=10]="MEDIUM_DASH_DOT",e[e.MEDIUM_DASH_DOT_DOT=11]="MEDIUM_DASH_DOT_DOT",e[e.SLANT_DASH_DOT=12]="SLANT_DASH_DOT",e[e.THICK=13]="THICK",e))(he||{}),us=(e=>(e.TOP="top",e.BOTTOM="bottom",e.LEFT="left",e.RIGHT="right",e.NONE="none",e.ALL="all",e.OUTSIDE="outside",e.INSIDE="inside",e.HORIZONTAL="horizontal",e.VERTICAL="vertical",e.TLBR="tlbr",e.TLBC_TLMR="tlbc_tlmr",e.TLBR_TLBC_TLMR="tlbr_tlbc_tlmr",e.BLTR="bl_tr",e.MLTR_BCTR="mltr_bctr",e))(us||{}),ze=(e=>(e[e.UNSUPPORTED=0]="UNSUPPORTED",e[e.RGB=1]="RGB",e[e.HEX=2]="HEX",e[e.THEME=3]="THEME",e))(ze||{}),cs=(e=>(e[e.ON=0]="ON",e[e.OFF=1]="OFF",e))(cs||{}),hs=(e=>(e[e.PASTE_NORMAL=0]="PASTE_NORMAL",e[e.PASTE_NO_BORDERS=1]="PASTE_NO_BORDERS",e[e.PASTE_FORMAT=2]="PASTE_FORMAT",e[e.PASTE_FORMULA=3]="PASTE_FORMULA",e[e.PASTE_DATA_VALIDATION=4]="PASTE_DATA_VALIDATION",e[e.PASTE_VALUES=5]="PASTE_VALUES",e[e.PASTE_CONDITIONAL_FORMATTING=6]="PASTE_CONDITIONAL_FORMATTING",e[e.PASTE_COLUMN_WIDTHS=7]="PASTE_COLUMN_WIDTHS",e))(hs||{}),ds=(e=>(e[e.DOCUMENT=0]="DOCUMENT",e[e.PROJECT=1]="PROJECT",e))(ds||{}),fs=(e=>(e[e.COLUMNS=0]="COLUMNS",e[e.ROWS=1]="ROWS",e))(fs||{}),_s=(e=>(e[e.UP=0]="UP",e[e.RIGHT=1]="RIGHT",e[e.DOWN=2]="DOWN",e[e.LEFT=3]="LEFT",e))(_s||{});function ja(e){switch(e){case 3:return 1;case 1:return 3;case 0:return 2;case 2:return 0}}var gs=(e=>(e[e.NUMBER_FORMAT_TYPE_UNSPECIFIED=0]="NUMBER_FORMAT_TYPE_UNSPECIFIED",e[e.TEXT=1]="TEXT",e[e.NUMBER=2]="NUMBER",e[e.PERCENT=3]="PERCENT",e[e.CURRENCY=4]="CURRENCY",e[e.DATE=5]="DATE",e[e.TIME=6]="TIME",e[e.DATE_TIME=7]="DATE_TIME",e[e.SCIENTIFIC=8]="SCIENTIFIC",e))(gs||{}),ms=(e=>(e[e.INTERPOLATION_POINT_TYPE_UNSPECIFIED=0]="INTERPOLATION_POINT_TYPE_UNSPECIFIED",e[e.MIN=1]="MIN",e[e.MAX=2]="MAX",e[e.NUMBER=3]="NUMBER",e[e.PERCENT=4]="PERCENT",e[e.PERCENTILE=5]="PERCENTILE",e))(ms||{}),bt=(e=>(e.EN_US="enUS",e.ZH_CN="zhCN",e.RU_RU="ruRU",e.ZH_TW="zhTW",e.VI_VN="viVN",e))(bt||{}),Es=(e=>(e[e.RANGE=0]="RANGE",e[e.SHEET=1]="SHEET",e))(Es||{}),ps=(e=>(e[e.RELATIVE_DATE_UNSPECIFIED=0]="RELATIVE_DATE_UNSPECIFIED",e[e.PAST_YEAR=1]="PAST_YEAR",e[e.PAST_MONTH=2]="PAST_MONTH",e[e.PAST_WEEK=3]="PAST_WEEK",e[e.YESTERDAY=4]="YESTERDAY",e[e.TODAY=5]="TODAY",e[e.TOMORROW=6]="TOMORROW",e))(ps||{}),En=(e=>(e[e.GRID=0]="GRID",e[e.KANBAN=1]="KANBAN",e[e.GANTT=2]="GANTT",e))(En||{}),qt=(e=>(e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.LEFT_TO_RIGHT=1]="LEFT_TO_RIGHT",e[e.RIGHT_TO_LEFT=2]="RIGHT_TO_LEFT",e))(qt||{}),Rs=(e=>(e[e.DASH=0]="DASH",e[e.DASH_DOT_DOT_HEAVY=1]="DASH_DOT_DOT_HEAVY",e[e.DASH_DOT_HEAVY=2]="DASH_DOT_HEAVY",e[e.DASHED_HEAVY=3]="DASHED_HEAVY",e[e.DASH_LONG=4]="DASH_LONG",e[e.DASH_LONG_HEAVY=5]="DASH_LONG_HEAVY",e[e.DOT_DASH=6]="DOT_DASH",e[e.DOT_DOT_DASH=7]="DOT_DOT_DASH",e[e.DOTTED=8]="DOTTED",e[e.DOTTED_HEAVY=9]="DOTTED_HEAVY",e[e.DOUBLE=10]="DOUBLE",e[e.NONE=11]="NONE",e[e.SINGLE=12]="SINGLE",e[e.THICK=13]="THICK",e[e.WAVE=14]="WAVE",e[e.WAVY_DOUBLE=15]="WAVY_DOUBLE",e[e.WAVY_HEAVY=16]="WAVY_HEAVY",e[e.WORDS=17]="WORDS",e))(Rs||{}),At=(e=>(e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.LEFT=1]="LEFT",e[e.CENTER=2]="CENTER",e[e.RIGHT=3]="RIGHT",e[e.JUSTIFIED=4]="JUSTIFIED",e))(At||{}),Wt=(e=>(e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.TOP=1]="TOP",e[e.MIDDLE=2]="MIDDLE",e[e.BOTTOM=3]="BOTTOM",e))(Wt||{}),Bt=(e=>(e[e.UNSPECIFIED=0]="UNSPECIFIED",e[e.OVERFLOW=1]="OVERFLOW",e[e.CLIP=2]="CLIP",e[e.WRAP=3]="WRAP",e))(Bt||{}),pn=(e=>(e[e.NORMAL=0]="NORMAL",e[e.ITALIC=1]="ITALIC",e))(pn||{}),Rn=(e=>(e[e.NORMAL=0]="NORMAL",e[e.BOLD=1]="BOLD",e))(Rn||{}),jt=(e=>(e[e.NORMAL=1]="NORMAL",e[e.SUBSCRIPT=2]="SUBSCRIPT",e[e.SUPERSCRIPT=3]="SUPERSCRIPT",e))(jt||{}),z=(e=>(e[e.FALSE=0]="FALSE",e[e.TRUE=1]="TRUE",e))(z||{}),Tt=(e=>(e[e.STRING=1]="STRING",e[e.NUMBER=2]="NUMBER",e[e.BOOLEAN=3]="BOOLEAN",e[e.FORCE_STRING=4]="FORCE_STRING",e))(Tt||{}),We=(e=>(e[e.DARK1=0]="DARK1",e[e.LIGHT1=1]="LIGHT1",e[e.DARK2=2]="DARK2",e[e.LIGHT2=3]="LIGHT2",e[e.ACCENT1=4]="ACCENT1",e[e.ACCENT2=5]="ACCENT2",e[e.ACCENT3=6]="ACCENT3",e[e.ACCENT4=7]="ACCENT4",e[e.ACCENT5=8]="ACCENT5",e[e.ACCENT6=9]="ACCENT6",e[e.HYPERLINK=10]="HYPERLINK",e[e.FOLLOWED_HYPERLINK=11]="FOLLOWED_HYPERLINK",e))(We||{}),Cn=(e=>(e.OFFICE="Office",e.OFFICE_2007_2010="Office 2007-2010",e.GRAYSCALE="Grayscale",e.BLUE_WARM="Blue Warm",e.BLUE="Blue",e.BLUE_II="Blue II",e.BLUE_GREEN="Blue Green",e.GREEN="Green",e.GREEN_YELLOW="Green Yellow",e.YELLOW="Yellow",e.YELLOW_ORANGE="Yellow Orange",e.ORANGE="Orange",e.ORANGE_RED="Orange Red",e.RED_ORANGE="Red Orange",e.RED="Red",e.RED_VIOLET="Red Violet",e.VIOLET="Violet",e.VIOLET_II="Violet II",e.MEDIAN="Median",e.PAPER="Paper",e.MARQUEE="Marquee",e.SLIPSTREAM="Slipstream",e.Aspect="Aspect",e))(Cn||{}),Cs=(e=>(e.Line="line",e.LineInv="lineInv",e.Triangle="triangle",e.RtTriangle="rtTriangle",e.Rect="rect",e.Diamond="diamond",e.Parallelogram="parallelogram",e.Trapezoid="trapezoid",e.NonIsocelesTrapezoid="nonIsocelesTrapezoid",e.Pentagon="pentagon",e.Hexagon="hexagon",e.Heptagon="heptagon",e.Octagon="octagon",e.Decagon="decagon",e.Dodecagon="dodecagon",e.Star4="star4",e.Star5="star5",e.Star6="star6",e.Star7="star7",e.Star8="star8",e.Star10="star10",e.Star12="star12",e.Star16="star16",e.Star24="star24",e.Star32="star32",e.RoundRect="roundRect",e.Round1Rect="round1Rect",e.Round2SameRect="round2SameRect",e.Round2DiagRect="round2DiagRect",e.Ellipse="ellipse",e))(Cs||{}),Is=(e=>(e.RightArrow="rightArrow",e.LeftArrow="leftArrow",e.UpArrow="upArrow",e.DownArrow="downArrow",e.LeftRightArrow="leftRightArrow",e.UpDownArrow="upDownArrow",e.QuadArrow="quadArrow",e.LeftRightUpArrow="leftRightUpArrow",e.BentArrow="bentArrow",e.UturnArrow="uturnArrow",e.CircularArrow="circularArrow",e.NotchedRightArrow="notchedRightArrow",e.HomePlate="homePlate",e.Chevron="chevron",e.LeftCircularArrow="leftCircularArrow",e.LeftRightCircularArrow="leftRightCircularArrow",e))(Is||{}),vs=(e=>(e.Plaque="plaque",e.Can="can",e.Cube="cube",e.Bevel="bevel",e.Donut="donut",e.NoSmoking="noSmoking",e.BlockArc="blockArc",e.FoldedCorner="foldedCorner",e))(vs||{}),Os=(e=>(e.SmileyFace="smileyFace",e.Heart="heart",e.LightningBolt="lightningBolt",e.Sun="sun",e.Moon="moon",e.Cloud="cloud",e.Arc="arc",e.Backpack="backpack",e.Frame="frame",e.HalfFrame="halfFrame",e.Corner="corner",e.Chord="chord",e.Pie="pie",e.Teardrop="teardrop",e.WedgeRectCallout="wedgeRectCallout",e.WedgeRRectCallout="wedgeRRectCallout",e.WedgeEllipseCallout="wedgeEllipseCallout",e.CloudCallout="cloudCallout",e.BorderCallout1="borderCallout1",e.BorderCallout2="borderCallout2",e.BorderCallout3="borderCallout3",e.AccentCallout1="accentCallout1",e.AccentCallout2="accentCallout2",e.AccentCallout3="accentCallout3",e.Callout1="callout1",e.Callout2="callout2",e.Callout3="callout3",e.ActionButtonBackPrevious="actionButtonBackPrevious",e.ActionButtonEnd="actionButtonEnd",e.ActionButtonForwardNext="actionButtonForwardNext",e.ActionButtonHelp="actionButtonHelp",e.ActionButtonHome="actionButtonHome",e.ActionButtonInformation="actionButtonInformation",e.ActionButtonMovie="actionButtonMovie",e.ActionButtonReturn="actionButtonReturn",e.ActionButtonSound="actionButtonSound",e))(Os||{});const Ss={[Cn.OFFICE]:{[We.ACCENT1]:"#4472C4",[We.ACCENT2]:"#ED7D31",[We.ACCENT3]:"#A5A5A5",[We.ACCENT4]:"#70AD47",[We.ACCENT5]:"#5B9BD5",[We.ACCENT6]:"#70AD47",[We.DARK1]:"#000000",[We.DARK2]:"#44546A",[We.LIGHT1]:"#FFFFFF",[We.LIGHT2]:"#E7E6E6",[We.HYPERLINK]:"#0563C1",[We.FOLLOWED_HYPERLINK]:"#954F72"}};class In{constructor(){g(this,"_themeValue",We.LIGHT1);g(this,"_themeColors");g(this,"_themeTint");g(this,"_rgbValue","");g(this,"_colorType");this._colorType=ze.UNSUPPORTED,this._themeColors=Cn.OFFICE,this._themeTint=0}asRgbColor(){return new vn(this._rgbValue,this)}asThemeColor(){return new On(this._themeValue,this._themeTint,this._themeColors,this)}build(){switch(this._colorType){case ze.THEME:return this.asThemeColor();case ze.RGB:return this.asRgbColor();case ze.UNSUPPORTED:throw new Error("unsupported color type")}}setRgbColor(n){return this._colorType=ze.RGB,this._rgbValue=n,this}setThemeColors(n){this._colorType=ze.THEME,this._themeColors=n}setThemeTint(n){this._colorType=ze.THEME,this._themeTint=n}setThemeColor(n){return this._colorType=ze.THEME,this._themeValue=n,this}getColorType(){return this._colorType}}class yt{constructor(n){g(this,"_builder");this._builder=n}static rgbColorToHexValue(n){return`#${((1<<24)+(n.getRed()<<16)+(n.getGreen()<<8)+n.getBlue()).toString(16).slice(1)}`}static hexValueToRgbColor(n){n?n.indexOf("#")>-1&&(n=n.substring(1)):n="#000000";const t=+`0x${n[0]}${n[1]}`,r=+`0x${n[2]}${n[3]}`,s=+`0x${n[4]}${n[5]}`;return new In().setRgbColor(`rgb(${t},${r},${s})`).asRgbColor()}static hexToRgbString(n){const t=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;n=n.replace(t,(i,o,a,l)=>o+o+a+a+l+l);const r=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(n);let s=null;if(r){const i=Number.parseInt(r[1],16),o=Number.parseInt(r[2],16),a=Number.parseInt(r[3],16);s=`rgba(${i},${o},${a})`}return s}asRgbColor(){return this._builder.asRgbColor()}asThemeColor(){return this._builder.asThemeColor()}getColorType(){return this._builder.getColorType()}clone(){return new yt(this._builder)}equals(n){return!1}}class Ns{constructor(n){g(this,"_saturation",0);g(this,"_hue",0);g(this,"_lightness",0);g(this,"_alpha",0);const t=n.getRed()/255,r=n.getGreen()/255,s=n.getBlue()/255,i=n.getAlpha()/255,o=Math.min(t,Math.min(r,s)),a=Math.max(t,Math.max(r,s)),l=a-o;if(a===o){this._hue=0,this._saturation=0,this._lightness=a;return}this._lightness=(o+a)/2,this._lightness<.5?this._saturation=l/(a+o):this._saturation=l/(2-a-o),t===a&&(this._hue=(r-s)/l),r===a&&(this._hue=2+(s-t)/l),s===a&&(this._hue=4+(t-r)/l),this._hue*=60,this._hue<0&&(this._hue+=360),this._alpha=i}asRgbColor(){const n=new In;if(this._saturation===0)return n.setRgbColor(`rgba(${this._lightness*255},${this._lightness*255},${this._lightness*255},${this._alpha*255})`),n.asRgbColor();let t;this._lightness<.5?t=this._lightness*(1+this._saturation):t=this._lightness+this._saturation-this._lightness*this._saturation;const r=2*this._lightness-t,s=this._hue/360,i=s+1/3,o=this.setColor(t,r,i),a=this.setColor(t,r,s),l=s-1/3,d=this.setColor(t,r,l);return n.setRgbColor(`rgba(${Math.round(o*255)},${Math.round(a*255)},${Math.round(d*255)},${this._alpha*255})`),n.asRgbColor()}getLightness(){return this._lightness}getHue(){return this._hue}getSaturation(){return this._saturation}getAlpha(){return this._alpha}setColor(n,t,r){r<0&&(r+=1),r>1&&(r-=1);let s;return 6*r<1?s=t+(n-t)*6*r:2*r<1?s=n:3*r<2?s=t+(n-t)*(2/3-r)*6:s=t,s}setLightness(n){this._lightness=n}}const Xe=class Xe extends yt{constructor(t,r){super(r);g(this,"_cssString");g(this,"_red");g(this,"_green");g(this,"_blue");g(this,"_alpha");let s=t.match(Xe.RGBA_EXTRACT);if(s){const i=+s[1],o=+s[2],a=+s[3],l=+s[4];this._cssString=t,this._red=i,this._green=o,this._blue=a,this._alpha=l;return}if(s=t.match(Xe.RGB_EXTRACT),s){const i=+s[1],o=+s[2],a=+s[3];this._cssString=t,this._red=i,this._green=o,this._blue=a,this._alpha=1;return}throw new Error("Invalid rgba or rgb color")}asHexString(){return yt.rgbColorToHexValue(this)}getRed(){let t=this._red+Xe.RGB_COLOR_AMT;return t>255?t=255:t<0&&(t=0),t}getGreen(){let t=this._green+Xe.RGB_COLOR_AMT;return t>255?t=255:t<0&&(t=0),t}getBlue(){let t=this._blue+Xe.RGB_COLOR_AMT;return t>255?t=255:t<0&&(t=0),t}getAlpha(){return this._alpha}getColorType(){return ze.RGB}clone(){return new Xe(this._cssString,this._builder)}asThemeColor(){throw new Error("rgb color not support to themeColor")}equals(t){return t instanceof Xe?t._red===this._red&&t._blue===this._blue&&t._green===this._green&&t._alpha===this._alpha:!1}getCssString(){return this._cssString}};g(Xe,"RGB_COLOR_AMT",0),g(Xe,"RGBA_EXTRACT",new RegExp("\\s*rgba\\s*\\((\\s*\\d+\\s*),(\\s*\\d+\\s*),(\\s*\\d+\\s*),(\\s*\\d.\\d|\\d\\s*)\\)\\s*")),g(Xe,"RGB_EXTRACT",new RegExp("\\s*rgb\\s*\\((\\s*\\d+\\s*),(\\s*\\d+\\s*),(\\s*\\d+\\s*)\\)\\s*"));let vn=Xe;const Nt=class Nt extends yt{constructor(t,r,s,i){super(i);g(this,"_themeColorType");g(this,"_themeTint");g(this,"_themeColors");this._themeColorType=t,this._themeTint=r,this._themeColors=s}lumValue(t,r){if(t==null)return r;let s;return t<0?s=r*(1+t):s=r*(1-t)+(255-255*(1-t)),s}asRgbColor(){const t=Ss[this._themeColors];if(t==null)throw new Error("not find themeColors type");const r=t[this._themeColorType];if(r==null)throw new Error("not find themeColors value");let s;if(Nt._cacheThemeColor.has(this._themeColors)){if(s=Nt._cacheThemeColor.get(this._themeColors),s.has(this._themeColorType))return s.get(this._themeColorType)}else s=new Map,Nt._cacheThemeColor.set(this._themeColors,s);const i=new Ns(yt.hexValueToRgbColor(r));i.setLightness(this.lumValue(this._themeTint,i.getLightness()*255)/255);const o=i.asRgbColor();return s.set(this._themeColorType,o),o}clone(){return new Nt(this._themeColorType,this._themeTint,this._themeColors,this._builder)}equals(t){return t instanceof Nt?t._themeColorType===this._themeColorType:!1}getColorType(){return ze.THEME}getThemeColorType(){return this._themeColorType}};g(Nt,"_cacheThemeColor",new Map);let On=Nt;const Ga="rgb(",Va="rgba(",Zn={aliceBlue:[240,248,255],antiqueWhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blancheAlmond:[255,235,205],blue:[0,0,255],blueViolet:[138,43,226],brown:[165,42,42],burlyWood:[222,184,135],cadetBlue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornFlowerBlue:[100,149,237],cornSilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkCyan:[0,139,139],darkGoldenrod:[184,132,11],darkGray:[169,169,169],darkGreen:[0,100,0],darkGrey:[169,169,169],darkKhaki:[189,183,107],darkMagenta:[139,0,139],darkOliveGreen:[85,107,47],darkOrange:[255,140,0],darkOrchid:[153,50,204],darkRed:[139,0,0],darkSalmon:[233,150,122],darkSeaGreen:[143,188,143],darkSlateBlue:[72,61,139],darkSlateGray:[47,79,79],darkSlateGrey:[47,79,79],darkTurquoise:[0,206,209],darkViolet:[148,0,211],deepPink:[255,20,147],deepSkyBlue:[0,191,255],dimGray:[105,105,105],dimGrey:[105,105,105],dodgerBlue:[30,144,255],firebrick:[178,34,34],floralWhite:[255,255,240],forestGreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostWhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenYellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotPink:[255,105,180],indianRed:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderBlush:[255,240,245],lawnGreen:[124,252,0],lemonChiffon:[255,250,205],lightblue:[173,216,230],lightCoral:[240,128,128],lightCyan:[224,255,255],lightGoldenrodYellow:[250,250,210],lightGray:[211,211,211],lightGreen:[144,238,144],lightGrey:[211,211,211],lightPink:[255,182,193],lightSalmon:[255,160,122],lightSeaGreen:[32,178,170],lightSkyBlue:[135,206,250],lightSlateGray:[119,136,153],lightSlateGrey:[119,136,153],lightSteelBlue:[176,196,222],lightYellow:[255,255,224],lime:[0,255,0],limeGreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumAquamarine:[102,205,170],mediumBlue:[0,0,205],mediumOrchid:[186,85,211],mediumPurple:[147,112,219],mediumSeaGreen:[60,179,113],mediumSlateBlue:[123,104,238],mediumSpringGreen:[0,250,154],mediumTurquoise:[72,209,204],mediumVioletRed:[199,21,133],midBightBlue:[25,25,112],mintCream:[245,255,250],mistyRose:[255,228,225],moccasin:[255,228,181],navajoWhite:[255,222,173],navy:[0,0,128],oldLace:[253,245,230],olive:[128,128,0],oliveDrab:[107,142,35],orange:[255,165,0],orangeRed:[255,69,0],orchid:[218,112,214],paleGoldenrod:[238,232,170],paleGreen:[152,251,152],paleTurquoise:[175,238,238],paleVioletRed:[219,112,147],papayaWhip:[255,239,213],peachPuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderBlue:[176,224,230],purple:[128,0,128],rebeccaPurple:[102,51,153],red:[255,0,0],rosyBrown:[188,143,143],royalBlue:[65,105,225],saddleBrown:[139,69,19],salmon:[250,128,114],sandyBrown:[244,164,96],seaGreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyBlue:[135,206,235],slateBlue:[106,90,205],slateGray:[119,128,144],slateGrey:[119,128,144],snow:[255,255,250],springGreen:[0,255,127],steelBlue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whiteSmoke:[245,245,245],yellow:[255,255,0],yellowGreen:[154,205,5]};class tt{constructor(n){g(this,"_color");g(this,"_rgbColor");g(this,"_isValid",!1);if(n==null){this._setNullColor();return}if(n instanceof tt){this._color={...n._color},this._rgbColor={...n._rgbColor};return}const t=ws(n);if(t==null){this._setNullColor();return}this._color=t;const r=Xa(this._color);if(r==null){this._setNullColor();return}this._rgbColor=r,this._isValid=!0}static mix(n,t,r){var d,h;r=Math.min(1,Math.max(0,r));const s=new tt(n).toRgb(),i=new tt(t).toRgb(),o=(d=s.a)!=null?d:1,a=(h=i.a)!=null?h:1,l={r:(i.r-s.r)*r+s.r,g:(i.g-s.g)*r+s.g,b:(i.b-s.b)*r+s.b,a:(a-o)*r+o};return new tt(l)}static getContrastRatio(n,t){const r=new tt(n).getLuminance(),s=new tt(t).getLuminance();return(Math.max(r,s)+.05)/(Math.min(r,s)+.05)}get isValid(){return this._isValid}toRgb(){return this._rgbColor}toRgbString(){const{r:n,g:t,b:r,a:s=1}=this.toRgb(),i=s<1;return`rgb${i?"a":""}(${n},${t},${r}${i?`,${s}`:""})`}toString(){return this.toRgbString()}toHexString(n){const{r:t,g:r,b:s,a:i=1}=this.toRgb(),o=i<1,a=[Sn(Math.round(t).toString(16)),Sn(Math.round(r).toString(16)),Sn(Math.round(s).toString(16)),Sn(Math.round(i*255).toString(16))];return n&&a[0][0]===a[0][1]&&a[1][0]===a[1][1]&&a[2][0]===a[2][1]&&a[3][0]===a[3][1]?o?`#${a[0][0]}${a[1][0]}${a[2][0]}${a[3][0]}`:`#${a[0][0]}${a[1][0]}${a[2][0]}`:o?`#${a[0]}${a[1]}${a[2]}${a[3]}`:`#${a[0]}${a[1]}${a[2]}`}toHsv(){return Ja(this.toRgb())}toHsl(){return Za(this.toRgb())}lighten(n=10){const t=this.toHsl();return t.l+=n,t.l=Math.min(Math.max(t.l,0),100),new tt(t)}darken(n=10){const t=this.toHsl();return t.l-=n,t.l=Math.min(Math.max(t.l,0),100),new tt(t)}setAlpha(n){return new tt({...this._rgbColor,a:n})}getLuminance(){let{r:n,g:t,b:r}=this.toRgb();return n=Jn(n),t=Jn(t),r=Jn(r),Number((.2126*n+.7152*t+.0722*r).toFixed(3))}getBrightness(){const{r:n,g:t,b:r}=this.toRgb();return(n*299+t*587+r*114)/1e3}getAlpha(){var n;return(n=this._color.a)!=null?n:1}isDark(){return this.getBrightness()<128}isLight(){return!this.isDark()}_setNullColor(){this._isValid=!1,this._color={r:0,g:0,b:0,a:0},this._rgbColor={r:0,g:0,b:0,a:0}}}const Sn=e=>e.length===1?`0${e}`:e,Jn=e=>(e/=255,e<=.03928?e/12.92:((e+.055)/1.055)**2.4),ws=e=>{if(tl(e)){if("r"in e){const r={r:Math.round(e.r),g:Math.round(e.g),b:Math.round(e.b)};return e.a!==void 0&&(r.a=e.a),r}if("l"in e){const r={h:Math.round(e.h),s:e.s,l:e.l};return e.a!==void 0&&(r.a=e.a),r}const t={h:Math.round(e.h),s:e.s,v:e.v};return e.a!==void 0&&(t.a=e.a),t}const n=e.trim();if(Zn[n]){const t=Zn[n],r={r:Math.round(t[0]),g:Math.round(t[1]),b:Math.round(t[2])};return r.a=t[3]||1,r}if(n.startsWith("#"))return xa(n);if(n.startsWith("rgb"))return Ka(n);if(n.startsWith("hsl"))return za(n);if(n.startsWith("hsv"))return Ya(n)},xa=e=>{const n=e.substring(1),t=new RegExp(`.{1,${n.length>=6?2:1}}`,"g");let r=n.match(t);if(!r||r.length<3)throw new Error(`The color '${e}' is illegal hex color`);r[0].length===1&&(r=r.map(i=>i+i));const s={r:Number.parseInt(r[0],16),g:Number.parseInt(r[1],16),b:Number.parseInt(r[2],16)};return r.length>3&&(s.a=Number.parseInt(r[3],16)/255),s},Ka=e=>{const n=e.indexOf("(");if(n===-1)throw new Error(`The color '${e}' is illegal rgb color`);const t=e.substring(n+1,e.length-1).split(",");if(t.length<3)throw new Error(`The color '${e}' is illegal rgb color`);const r={r:Number.parseInt(t[0],10),g:Number.parseInt(t[1],10),b:Number.parseInt(t[2],10)};return t.length>3&&(r.a=Number.parseFloat(t[3])),r},za=e=>{const n=e.indexOf("(");if(n===-1)throw new Error(`The color '${e}' is illegal hsl color`);const t=e.substring(n+1,e.length-1).split(",");if(t.length<3)throw new Error(`The color '${e}' is illegal hsl color`);const r={h:Number.parseInt(t[0],10),s:Number.parseFloat(t[1]),l:Number.parseFloat(t[2])};return t.length>3&&(r.a=Number.parseFloat(t[3])),r},Ya=e=>{const n=e.indexOf("(");if(n===-1)throw new Error(`The color '${e}' is illegal hsv color`);const t=e.substring(n+1,e.length-1).split(",");if(t.length<3)throw new Error(`The color '${e}' is illegal hsv color`);const r={h:Number.parseInt(t[0],10),s:Number.parseFloat(t[1]),v:Number.parseFloat(t[2])};return t.length>3&&(r.a=Number.parseFloat(t[3])),r},Xa=e=>{const n=ws(e);if(n!=null)return"r"in n?n:"l"in n?Qa(n):qa(n)},er=(e,n,t)=>(t<0&&(t+=1),t>1&&(t-=1),t<1/6?e+(n-e)*6*t:t<1/2?n:t<2/3?e+(n-e)*(2/3-t)*6:e),Qa=e=>{let{h:n,s:t,l:r}=e;n/=360,t/=100,r/=100;let s=0,i=0,o=0;if(t===0)s=i=o=r;else{const l=r<.5?r*(1+t):r+t-r*t,d=2*r-l;s=er(d,l,n+1/3),i=er(d,l,n),o=er(d,l,n-1/3)}const a={r:Math.round(s*255),g:Math.round(i*255),b:Math.round(o*255)};return e.a!==void 0&&(a.a=e.a),a},qa=e=>{let{h:n,s:t,v:r}=e;n=n/360*6,t/=100,r/=100;const s=Math.floor(n),i=n-s,o=r*(1-t),a=r*(1-i*t),l=r*(1-(1-i)*t),d=s%6,h=[r,a,o,o,l,r][d],c=[l,r,r,a,o,o][d],f=[o,o,l,r,r,a][d],_={r:h*255,g:c*255,b:f*255};return e.a!==void 0&&(_.a=e.a),_},Za=e=>{let{r:n,g:t,b:r}=e;n/=255,t/=255,r/=255;const s=Math.max(n,t,r),i=Math.min(n,t,r),o=(s+i)/2;let a,l;if(s===i)a=l=0;else{const h=s-i;switch(l=o>.5?h/(2-s-i):h/(s+i),s){case n:a=(t-r)/h+(t<r?6:0);break;case t:a=(r-n)/h+2;break;default:a=(n-t)/h+4;break}a/=6}const d={h:Math.round(a*360),s:Math.round(l*100),l:Math.round(o*100)};return e.a!==void 0&&(d.a=e.a),d},Ja=e=>{let{r:n,g:t,b:r}=e;n/=255,t/=255,r/=255;const s=Math.max(n,t,r),i=Math.min(n,t,r);let o;const a=s,l=s-i,d=s===0?0:l/s;if(s===i)o=0;else{switch(s){case n:o=(t-r)/l+(t<r?6:0);break;case t:o=(r-n)/l+2;break;default:o=(n-t)/l+4;break}o/=6}const h={h:Math.round(o*360),s:Math.round(d*100),v:Math.round(a*100)};return e.a!==void 0&&(h.a=e.a),h},el=e=>e==null,tl=e=>!el(e)&&typeof e=="object";function nl(e){const n=/^#(?:[0]{3}|[0]{6})\b/,t=/^rgb\s*\(\s*0+\s*,\s*0+\s*,\s*0+\s*\)$/,r=/^rgba\s*\(\s*0+\s*,\s*0+\s*,\s*0+\s*,\s*(1|1\.0*|0?\.\d+)\)$/,s=/^hsl\s*\(\s*0*\s*,\s*0%*\s*,\s*0%*\s*\)$/,i=/^hsla\s*\(\s*0*\s*,\s*0%*\s*,\s*0%*\s*,\s*(1|1\.0*|0?\.\d+)\)$/;return!!(n.test(e)||t.test(e)||r.test(e)||s.test(e)||i.test(e))}function rl(e){const n=/^#(?:[Ff]{3}|[Ff]{6})\b/,t=/^rgb\s*\(\s*255\s*,\s*255\s*,\s*255\s*\)$/,r=/^rgba\s*\(\s*255\s*,\s*255\s*,\s*255\s*,\s*(1|1\.0*|0?\.\d+)\)$/,s=/^hsl\s*\(\s*0*\s*,\s*0%*\s*,\s*100%*\s*\)$/,i=/^hsla\s*\(\s*0*\s*,\s*0%*\s*,\s*100%*\s*,\s*(1|1\.0*|0?\.\d+)\)$/;return!!(n.test(e)||t.test(e)||r.test(e)||s.test(e)||i.test(e))}var Fe=(e=>(e[e.COVER=0]="COVER",e[e.REPLACE=1]="REPLACE",e[e.INTERSECTION=2]="INTERSECTION",e))(Fe||{});function sl(e){return e&&(e.s!==void 0||e.p!==void 0||e.v!==void 0||e.t!==void 0||e.f!==void 0||e.si!==void 0)}function il(e){if(e.t!==void 0)return e.t;if(typeof e.v=="string")return Tt.STRING;if(typeof e.v=="number")return Tt.NUMBER;if(typeof e.v=="boolean")return Tt.BOOLEAN}function ol(e){if(e==null)return!0;const{v:n,f:t,si:r,p:s,s:i,custom:o}=e;return!(!(n==null||typeof n=="string"&&n.length===0)||t!=null&&t.length>0||r!=null&&r.length>0||s!=null||o!=null)}function al(e){return e!=null&&(typeof e=="string"||typeof e=="number"||typeof e=="boolean")}var bs=(e=>(e[e.character=0]="character",e[e.paragraph=1]="paragraph",e[e.table=2]="table",e[e.numbering=3]="numbering",e))(bs||{}),As=(e=>(e[e.TAB=0]="TAB",e[e.SPACE=1]="SPACE",e[e.NOTHING=2]="NOTHING",e))(As||{}),Zt=(e=>(e[e.GLYPH_TYPE_UNSPECIFIED=0]="GLYPH_TYPE_UNSPECIFIED",e[e.NONE=1]="NONE",e[e.DECIMAL=2]="DECIMAL",e[e.ZERO_DECIMAL=3]="ZERO_DECIMAL",e[e.UPPER_ALPHA=4]="UPPER_ALPHA",e[e.ALPHA=5]="ALPHA",e[e.UPPER_ROMAN=6]="UPPER_ROMAN",e[e.ROMAN=7]="ROMAN",e))(Zt||{}),Rt=(e=>(e[e.BULLET_ALIGNMENT_UNSPECIFIED=0]="BULLET_ALIGNMENT_UNSPECIFIED",e[e.START=1]="START",e[e.CENTER=2]="CENTER",e[e.END=3]="END",e))(Rt||{}),Ts=(e=>(e[e.HYPERLINK=0]="HYPERLINK",e[e.FIELD=1]="FIELD",e[e.SDT=2]="SDT",e[e.BOOKMARK=3]="BOOKMARK",e[e.COMMENT=4]="COMMENT",e[e.CUSTOM=5]="CUSTOM",e[e.MENTION=6]="MENTION",e[e.UNI_FORMULA=7]="UNI_FORMULA",e))(Ts||{}),ys=(e=>(e[e.COMMENT=0]="COMMENT",e))(ys||{}),Ds=(e=>(e[e.DRAWING=0]="DRAWING",e[e.CUSTOM=1]="CUSTOM",e))(Ds||{}),Ms=(e=>(e[e.TRADITIONAL=0]="TRADITIONAL",e[e.MODERN=1]="MODERN",e))(Ms||{}),Us=(e=>(e[e.DEFAULT=0]="DEFAULT",e[e.LINES=1]="LINES",e[e.LINES_AND_CHARS=2]="LINES_AND_CHARS",e[e.SNAP_TO_CHARS=3]="SNAP_TO_CHARS",e))(Us||{}),Ls=(e=>(e[e.SECTION_TYPE_UNSPECIFIED=0]="SECTION_TYPE_UNSPECIFIED",e[e.CONTINUOUS=1]="CONTINUOUS",e[e.NEXT_PAGE=2]="NEXT_PAGE",e[e.EVEN_PAGE=3]="EVEN_PAGE",e[e.ODD_PAGE=4]="ODD_PAGE",e))(Ls||{}),Ps=(e=>(e[e.COLUMN_SEPARATOR_STYLE_UNSPECIFIED=0]="COLUMN_SEPARATOR_STYLE_UNSPECIFIED",e[e.NONE=1]="NONE",e[e.BETWEEN_EACH_COLUMN=2]="BETWEEN_EACH_COLUMN",e))(Ps||{}),ks=(e=>(e[e.NORMAL=0]="NORMAL",e[e.TBRL=1]="TBRL",e[e.LRTBV=2]="LRTBV",e))(ks||{}),Fs=(e=>(e[e.TEXT_RUN=0]="TEXT_RUN",e[e.AUTO_TEXT=1]="AUTO_TEXT",e[e.PAGE_BREAK=2]="PAGE_BREAK",e[e.COLUMN_BREAK=3]="COLUMN_BREAK",e[e.FOOT_NOTE_REFERENCE=4]="FOOT_NOTE_REFERENCE",e[e.HORIZONTAL_RULE=5]="HORIZONTAL_RULE",e[e.EQUATION=6]="EQUATION",e[e.DRAWING=7]="DRAWING",e[e.PERSON=8]="PERSON",e[e.RICH_LINK=9]="RICH_LINK",e))(Fs||{}),Hs=(e=>(e[e.BOTH_SIDES=0]="BOTH_SIDES",e[e.LEFT=1]="LEFT",e[e.RIGHT=2]="RIGHT",e[e.LARGEST=3]="LARGEST",e))(Hs||{}),$s=(e=>(e[e.INLINE=0]="INLINE",e[e.WRAP_NONE=1]="WRAP_NONE",e[e.WRAP_POLYGON=2]="WRAP_POLYGON",e[e.WRAP_SQUARE=3]="WRAP_SQUARE",e[e.WRAP_THROUGH=4]="WRAP_THROUGH",e[e.WRAP_TIGHT=5]="WRAP_TIGHT",e[e.WRAP_TOP_AND_BOTTOM=6]="WRAP_TOP_AND_BOTTOM",e))($s||{}),Ws=(e=>(e[e.NAMED_STYLE_TYPE_UNSPECIFIED=0]="NAMED_STYLE_TYPE_UNSPECIFIED",e[e.NORMAL_TEXT=1]="NORMAL_TEXT",e[e.TITLE=2]="TITLE",e[e.SUBTITLE=3]="SUBTITLE",e[e.HEADING_1=4]="HEADING_1",e[e.HEADING_2=5]="HEADING_2",e[e.HEADING_3=6]="HEADING_3",e[e.HEADING_4=7]="HEADING_4",e[e.HEADING_5=8]="HEADING_5",e[e.HEADING_6=9]="HEADING_6",e))(Ws||{}),Bs=(e=>(e[e.AUTO=0]="AUTO",e[e.AT_LEAST=1]="AT_LEAST",e[e.EXACT=2]="EXACT",e))(Bs||{}),js=(e=>(e[e.DASH_STYLE_UNSPECIFIED=0]="DASH_STYLE_UNSPECIFIED",e[e.SOLID=1]="SOLID",e[e.DOT=2]="DOT",e[e.DASH=3]="DASH",e))(js||{}),Gs=(e=>(e[e.TAB_STOP_ALIGNMENT_UNSPECIFIED=0]="TAB_STOP_ALIGNMENT_UNSPECIFIED",e[e.START=1]="START",e[e.CENTER=2]="CENTER",e[e.END=3]="END",e))(Gs||{}),Vs=(e=>(e.EVENLY_DISTRIBUTED="0",e.FIXED_WIDTH="1",e))(Vs||{}),xs=(e=>(e[e.CONTENT_ALIGNMENT_UNSPECIFIED=0]="CONTENT_ALIGNMENT_UNSPECIFIED",e[e.CONTENT_ALIGNMENT_UNSUPPORTED=1]="CONTENT_ALIGNMENT_UNSUPPORTED",e[e.TOP=2]="TOP",e[e.MIDDLE=3]="MIDDLE",e[e.BOTTOM=4]="BOTTOM",e))(xs||{}),Ks=(e=>(e.NORMAL="normal",e.BOLD="bold",e.ITALIC="italic",e))(Ks||{}),zs=(e=>(e[e.PAGE=0]="PAGE",e[e.COLUMN=1]="COLUMN",e[e.CHARACTER=2]="CHARACTER",e[e.MARGIN=3]="MARGIN",e[e.INSIDE_MARGIN=4]="INSIDE_MARGIN",e[e.OUTSIDE_MARGIN=5]="OUTSIDE_MARGIN",e[e.LEFT_MARGIN=6]="LEFT_MARGIN",e[e.RIGHT_MARGIN=7]="RIGHT_MARGIN",e))(zs||{}),Ys=(e=>(e[e.PAGE=0]="PAGE",e[e.PARAGRAPH=1]="PARAGRAPH",e[e.LINE=2]="LINE",e[e.MARGIN=3]="MARGIN",e[e.TOP_MARGIN=4]="TOP_MARGIN",e[e.BOTTOM_MARGIN=5]="BOTTOM_MARGIN",e[e.INSIDE_MARGIN=6]="INSIDE_MARGIN",e[e.OUTSIDE_MARGIN=7]="OUTSIDE_MARGIN",e))(Ys||{}),Xs=(e=>(e[e.POINT=0]="POINT",e[e.LINE=1]="LINE",e[e.CHARACTER=2]="CHARACTER",e[e.PIXEL=3]="PIXEL",e))(Xs||{}),Qs=(e=>(e[e.CENTER=0]="CENTER",e[e.INSIDE=1]="INSIDE",e[e.LEFT=2]="LEFT",e[e.OUTSIDE=3]="OUTSIDE",e[e.RIGHT=4]="RIGHT",e[e.BOTH=5]="BOTH",e[e.DISTRIBUTE=6]="DISTRIBUTE",e))(Qs||{}),qs=(e=>(e[e.BOTTOM=0]="BOTTOM",e[e.CENTER=1]="CENTER",e[e.INSIDE=2]="INSIDE",e[e.OUTSIDE=3]="OUTSIDE",e[e.TOP=4]="TOP",e))(qs||{}),Zs=(e=>(e[e.compressPunctuation=0]="compressPunctuation",e[e.compressPunctuationAndJapaneseKana=1]="compressPunctuationAndJapaneseKana",e[e.doNotCompress=2]="doNotCompress",e))(Zs||{}),Js=(e=>(e[e.PORTRAIT=0]="PORTRAIT",e[e.LANDSCAPE=1]="LANDSCAPE",e))(Js||{}),ei=(e=>(e[e.forward=0]="forward",e[e.backward=1]="backward",e[e.front=2]="front",e[e.back=3]="back",e))(ei||{}),ti=(e=>(e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e[e.DRAWING_IMAGE=0]="DRAWING_IMAGE",e[e.DRAWING_SHAPE=1]="DRAWING_SHAPE",e[e.DRAWING_CHART=2]="DRAWING_CHART",e[e.DRAWING_TABLE=3]="DRAWING_TABLE",e[e.DRAWING_SMART_ART=4]="DRAWING_SMART_ART",e[e.DRAWING_VIDEO=5]="DRAWING_VIDEO",e[e.DRAWING_GROUP=6]="DRAWING_GROUP",e[e.DRAWING_UNIT=7]="DRAWING_UNIT",e[e.DRAWING_DOM=8]="DRAWING_DOM",e))(ti||{}),oe=(e=>(e[e.NORMAL=0]="NORMAL",e[e.ROW=1]="ROW",e[e.COLUMN=2]="COLUMN",e[e.ALL=3]="ALL",e))(oe||{}),Oe=(e=>(e[e.NONE=0]="NONE",e[e.ROW=1]="ROW",e[e.COLUMN=2]="COLUMN",e[e.ALL=3]="ALL",e))(Oe||{});function ll(e){return[e.startRow,e.startColumn,e.endRow,e.endColumn]}function ul(e,n,t){let r=!1,s=!1,i=e,o=n,a=e,l=n;if(t==null)return{actualRow:e,actualColumn:n,isMergedMainCell:s,isMerged:r,endRow:i,endColumn:o,startRow:a,startColumn:l};for(let d=0;d<t.length;d++){const{startRow:h,endRow:c,startColumn:f,endColumn:_}=t[d];if(e===h&&n===f){i=c,o=_,a=h,l=f,s=!0;break}if(e>=h&&e<=c&&n>=f&&n<=_){i=c,o=_,a=h,l=f,r=!0;break}}return{actualRow:e,actualColumn:n,isMergedMainCell:s,isMerged:r,endRow:i,endColumn:o,startRow:a,startColumn:l}}var tr=(e=>(e[e.SLIDE=0]="SLIDE",e[e.MASTER=1]="MASTER",e[e.LAYOUT=2]="LAYOUT",e[e.HANDOUT_MASTER=3]="HANDOUT_MASTER",e[e.NOTES_MASTER=4]="NOTES_MASTER",e))(tr||{}),ni=(e=>(e[e.SHAPE=0]="SHAPE",e[e.IMAGE=1]="IMAGE",e[e.TEXT=2]="TEXT",e[e.SPREADSHEET=3]="SPREADSHEET",e[e.DOCUMENT=4]="DOCUMENT",e[e.SLIDE=5]="SLIDE",e))(ni||{}),ri=(e=>(e[e.RELATIVE_SLIDE_LINK_UNSPECIFIED=0]="RELATIVE_SLIDE_LINK_UNSPECIFIED",e[e.NEXT_SLIDE=1]="NEXT_SLIDE",e[e.PREVIOUS_SLIDE=2]="PREVIOUS_SLIDE",e[e.FIRST_SLIDE=3]="FIRST_SLIDE",e[e.LAST_SLIDE=4]="LAST_SLIDE",e))(ri||{});const cl="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let hl=e=>crypto.getRandomValues(new Uint8Array(e)),dl=(e,n,t)=>{let r=(2<<Math.log(e.length-1)/Math.LN2)-1,s=-~(1.6*r*n/e.length);return(i=n)=>{let o="";for(;;){let a=t(s),l=s;for(;l--;)if(o+=e[a[l]&r]||"",o.length===i)return o}}},fl=(e,n=21)=>dl(e,n,hl),_l=(e=21)=>{let n="",t=crypto.getRandomValues(new Uint8Array(e));for(;e--;)n+=cl[t[e]&63];return n};const gl=new Set(["ac","ad","ae","aero","af","ag","ai","al","am","ao","aq","ar","arpa","as","asia","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","biz","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cat","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","com","coop","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","edu","ee","eg","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gov","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","info","int","io","iq","ir","is","it","je","jm","jo","jobs","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mil","mk","ml","mm","mn","mo","mobi","mp","mq","mr","ms","mt","mu","museum","mv","mw","mx","my","mz","na","name","nc","ne","net","nf","ng","ni","nl","no","np","nr","nu","nz","om","onion","org","pa","pe","pf","pg","ph","pk","pl","pm","pn","post","pr","pro","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tel","tf","tg","th","tj","tk","tl","tm","tn","to","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","yt","za","zm","zw"]),ml=new RegExp("^(?:(?:(?:https?|ftp):)?\\/\\/)?(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u00a1-\\uffff][a-z0-9\\u00a1-\\uffff_-]{0,62})?[a-z0-9\\u00a1-\\uffff]\\.)+(?:[a-z\\u00a1-\\uffff]{2,}\\.?))(?::\\d{2,5})?(?:[/?#]\\S*)?$","i");function El(e){if(!Number.isNaN(+e))return!1;if(e.startsWith("http://localhost:3002")||e.startsWith("localhost:3002"))return!0;if(ml.test(e)){if(si(e))return!0;try{const r=new URL(ii(e)).hostname.split(".").pop();if(r&&gl.has(r))return!0}catch{return!1}}return!1}function si(e){return/^[a-zA-Z]+:\/\//.test(e)}function pl(e){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(e)}function ii(e){return si(e)?e:pl(e)?`mailto://${e}`:`https://${e}`}const Rl=/^-ms-/,Cl=/-([a-z])/g,Ct=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"];class k{static stringAt(n){let t="",r=n;for(;r>=Ct.length;)r/=Ct.length,r-=1,t+=Ct[r%Ct.length];const s=n%Ct.length;return t+=Ct[s],t}static indexAt(n){let t=0;for(let r=0;r<n.length-1;r+=1){const s=n.charCodeAt(r)-65,i=n.length-1-r;t+=Ct.length**i+Ct.length*s}return t+=n.charCodeAt(n.length-1)-65,t}static deleteBlank(n){return k.isString(n)?n.replace(/\s/g,""):n}static getSystemType(){const n=navigator.userAgent,t=navigator.platform==="Win32"||navigator.platform==="Windows",r=navigator.platform==="Mac68K"||navigator.platform==="MacPPC"||navigator.platform==="Macintosh"||navigator.platform==="MacIntel";if(r)return"Mac";if(navigator.platform==="X11"&&!t&&!r)return"Unix";if(String(navigator.platform).indexOf("Linux")>-1)return"Linux";if(t){if(n.indexOf("Windows NT 5.0")>-1||n.indexOf("Windows 2000")>-1)return"Windows 2000";if(n.indexOf("Windows NT 5.1")>-1||n.indexOf("Windows XP")>-1)return"Windows XP";if(n.indexOf("Windows NT 5.2")>-1||n.indexOf("Windows 2003")>-1)return"Windows 2003";if(n.indexOf("Windows NT 6.0")>-1||n.indexOf("Windows Vista")>-1)return"Windows Vista";if(n.indexOf("Windows NT 6.1")>-1||n.indexOf("Windows 7")>-1)return"Windows 7";if(n.indexOf("Windows NT 10")>-1||n.indexOf("Windows 10")>-1)return"Windows 10";if(n.indexOf("Windows NT 11")>-1||n.indexOf("Windows 11")>-1)return"Windows 11"}return"Unknown system"}static getBrowserType(){const n=navigator.userAgent,t=n.indexOf("Opera")>-1,r=n.indexOf("compatible")>-1&&n.indexOf("MSIE")>-1&&!t,s=n.indexOf("Trident")>-1&&n.indexOf("rv:11.0")>-1,i=n.indexOf("Edge")>-1,o=n.indexOf("Firefox")>-1,a=n.indexOf("Safari")>-1&&n.indexOf("Chrome")===-1,l=n.indexOf("Chrome")>-1&&n.indexOf("Safari")>-1;if(r){new RegExp("MSIE (\\d+\\.\\d+);").test(n);const h=Number.parseFloat(RegExp.$1);return h===7?"IE7":h===8?"IE8":h===9?"IE9":h===10?"IE10":"0"}return o?"FF":t?"Opera":a?"Safari":l?"Chrome":i?"Edge":s?"IE11":"Unknown browser"}static generateRandomId(n=21,t){return oi(n,t)}static getClassName(n){return n.constructor.name}static deepMerge(n,...t){t.forEach(o=>o&&i(o));function r(o,a){o.forEach((l,d)=>{var h,c;if(k.isArray(l)){const f=(h=a[d])!=null?h:[];a[d]=f,r(l,f);return}if(k.isObject(l)){const f=(c=a[d])!=null?c:{};a[d]=f,s(l,f);return}a[d]=l})}function s(o,a){Object.keys(o).forEach(l=>{var h,c;const d=o[l];if(k.isObject(d)){const f=(h=a[l])!=null?h:{};a[l]=f,s(d,f);return}if(k.isArray(d)){const f=(c=a[l])!=null?c:[];a[l]=f,r(d,f);return}a[l]=d})}function i(o){Object.keys(o).forEach(a=>{var d,h;const l=o[a];if(k.isArray(l)){const c=(d=n[a])!=null?d:[];n[a]=c,r(l,c);return}if(k.isObject(l)){const c=(h=n[a])!=null?h:{};n[a]=c,s(l,c);return}n[a]=l})}return n}static numberFixed(n,t){return Number(Number(n).toFixed(t))}static diffValue(n,t){function r(o,a){const l=k.getValueType(o),d=k.getValueType(a);return l!==d?!1:k.isArray(o)?s(o,a):k.isObject(o)?i(o,a):k.isDate(o)?o.getTime()===a.getTime():k.isRegExp(o)?o.toString()===a.toString():o===a}function s(o,a){if(n.length!==t.length)return!1;for(let l=0,d=o.length;l<d;l++){const h=o[l],c=a[l];if(!r(h,c))return!1}return!0}function i(o,a){const l=Object.keys(o),d=Object.keys(a);if(l.length!==d.length)return!1;for(const h of l){if(!d.includes(h))return!1;const c=o[h],f=a[h];if(!r(c,f))return!1}return!0}return r(n,t)}static deepClone(n){if(!this.isDefine(n))return n;if(this.isRegExp(n))return new RegExp(n);if(this.isDate(n))return new Date(n);if(this.isArray(n)){const t=[];return n.forEach((r,s)=>{t[s]=k.deepClone(r)}),t}if(this.isObject(n)){const t={};return Object.keys(n).forEach(r=>{const s=n[r];t[r]=k.deepClone(s)}),Object.setPrototypeOf(t,Object.getPrototypeOf(n)),t}return n}static getLanguage(){const n="en-US";return globalThis.navigator&&(navigator.languages&&navigator.languages[0]||navigator.language)||n}static getValueType(n){return Object.prototype.toString.apply(n)}static isDefine(n){return n!=null}static isBlank(n){return this.isDefine(n)?this.isString(n)?n.trim()==="":!1:!0}static isAssignableFrom(n,t){return n instanceof t}static isBoolean(n){return this.getValueType(n)==="[object Boolean]"}static isPlainObject(n){return this.isDefine(n)?Object.getPrototypeOf(n)===Object.getPrototypeOf({}):!1}static isFunction(n){return this.getValueType(n)==="[object Function]"}static isDate(n){return this.getValueType(n)==="[object Date]"}static isRegExp(n){return this.getValueType(n)==="[object RegExp]"}static isArray(n){return this.getValueType(n)==="[object Array]"}static isString(n){return this.getValueType(n)==="[object String]"}static isNumber(n){return this.getValueType(n)==="[object Number]"}static isStringNumber(n){return!isNaN(Number.parseFloat(n))&&isFinite(n)}static isObject(n){return this.getValueType(n)==="[object Object]"}static isEmptyObject(n){for(const t in n)return!1;return!0}static isMobile(){let n=0,t=0;return document.body.clientWidth&&(n=document.body.clientWidth),document.body.clientHeight&&(t=document.body.clientHeight),this.isAndroid()||this.isIPhone()||this.isTablet()||n<350&&t<500}static isTablet(){return/ipad|android|android 3.0|xoom|sch-i800|playbook|tablet|kindle/i.test(navigator.userAgent.toLowerCase())}static isWeChat(){const n=navigator.userAgent.toLowerCase();return String(n.match(/MicroMessenger/i))==="micromessenger"}static isAndroid(){const n=navigator.userAgent;return n.indexOf("Android")>-1||n.indexOf("Linux")>-1}static isIPhone(){return/iPhone/i.test(navigator.userAgent)}static isLegalUrl(n){return El(n)}static normalizeUrl(n){return ii(n)}static itCount(n){return t=>{for(let r=0;r<n;r++)t&&t()}}static hasLength(n,t){return k.isDefine(n)?k.isDefine(t)?n.length===t:n.length>0:!1}static capitalize(n){return n.charAt(0).toUpperCase()+n.slice(1)}static fCamelCase(n,t){return t.toUpperCase()}static camelCase(n){return n.replace(Rl,"ms-").replace(Cl,this.fCamelCase)}static removeNull(n){return this.isObject(n)&&Object.keys(n).forEach(t=>{const r=n[t];r==null?delete n[t]:k.removeNull(r)}),n}static fillTwoDimensionalArray(n,t,r){return new Array(n).fill(r).map(s=>new Array(t).fill(r))}static numToWord(n){let t="";for(;n>0;){let r=n%26;r=r===0?r=26:r,t=String.fromCharCode(96+r)+t,n=(n-r)/26}return t.toLocaleUpperCase()}static ABCatNum(n){if(n==null||n.length===0)return Number.NaN;const t=n.toLowerCase().split(""),r=t.length;let s=0,i=0;for(let o=0;o<r;o++)i=t[o].charCodeAt(0)-96,s+=i*26**(r-o-1);return s===0?Number.NaN:s-1}static chatAtABC(n){let i="";for(;n>=0;)i=String.fromCharCode(n%26+97)+i,n=Math.floor(n/26)-1;return i.toUpperCase()}static randSort(n){for(let t=0,r=n.length;t<r;t++){const s=Number.parseInt((Math.random()*r).toString()),i=n[s];n[s]=n[t],n[t]=i}return n}static commonExtend(n,t){const r={};for(const s in n)r[s]=n[s];for(const s in t)t[s]!=null&&(r[s]=t[s]);return r}static commonExtend1(n,t){for(const r in n)t[r]==null&&(t[r]=n[r]);return t}static arrayToObject(n){const t={};return n.forEach((r,s)=>{t[s]={},r.forEach((i,o)=>{t[s][o]=i})}),t}static hasIntersectionBetweenTwoRanges(n,t,r,s){return t>=r&&s>=n}static isStartValidPosition(n){return/^[A-Za-z_]/.test(n)}static isValidParameter(n){const t=/[~!@#$%^&*()+=\-{}\[\]\|:;"'<>,?\/ ]+/.test(n),r=n.length<=255;return!t&&r}static set(n,t,r){const s=t.split("."),i=s.pop();s.forEach(o=>{n[o]||(n[o]={}),n=n[o]}),i&&(n[i]=r)}static clamp(n,t,r){return Math.max(t,Math.min(r,n))}}function oi(e=21,n){return n?fl(n,e)():_l(e)}function Il(e){const{actualRow:n,actualColumn:t,isMerged:r,isMergedMainCell:s,mergeInfo:i}=e;let{startY:o,endY:a,startX:l,endX:d}=e,h=n,c=t,f=n,_=t;if(r&&i){const{startRow:E,startColumn:p,endRow:N,endColumn:D,startY:te,endY:me,startX:fe,endX:R}=i;h=E,c=p,f=N,_=D,o=te,a=me,l=fe,d=R}return s&&(o=i.startY,a=i.endY,l=i.startX,d=i.endX,f=i.endRow,_=i.endColumn),{startRow:h,startColumn:c,endRow:f,endColumn:_,startY:o,endY:a,startX:l,endX:d}}function vl(e){if(!e)return;const{actualRow:n,actualColumn:t,isMerged:r,isMergedMainCell:s,startRow:i,startColumn:o,endRow:a,endColumn:l}=e;let d=n,h=t,c=n,f=t;return(r||s)&&(d=i,h=o,c=a,f=l),{startRow:d,startColumn:h,endRow:c,endColumn:f}}function ai(e){var t;return!e||(((t=e==null?void 0:e.v)==null?void 0:t.toString())||"").length===0&&!e.p}function Ol(e){return ai(e)&&(e==null?void 0:e.coverable)!==!1}function lt(e){if(e){if(e.rgb)return e.rgb;if(e.th)return new In().setThemeColor(e.th).asThemeColor().asRgbColor().getCssString()}return null}function Sl(e){return k.isString(e)&&e.substring(0,1)==="="&&e.length>1}function Nl(e){return k.isString(e)&&e.length>0}function wl(e,n=!1){var i;let t="";const r=new Map([["ff",()=>{e.ff&&(t+=`font-family: ${e.ff}; `)}],["fs",()=>{if(e.fs){let o=e.fs;e.va&&(o/=2),t+=`font-size: ${o}pt; `}}],["it",()=>{e.it&&(t+="font-style: italic; ")}],["bl",()=>{e.bl&&(t+="font-weight: bold; ")}],["ul",()=>{var o;(o=e.ul)!=null&&o.s&&(t.indexOf("text-decoration-line")>-1?t=t.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(a,l)=>`${l} underline`):t+="text-decoration: underline; ",e.ul.cl&&t.indexOf("text-decoration-color")===-1&&(t+=`text-decoration-color: ${lt(e.ul.cl)}; `),e.ul.t&&t.indexOf("text-decoration-style")===-1&&(t+=`text-decoration-style: ${e.ul.t} `))}],["st",()=>{var o;(o=e.st)!=null&&o.s&&(t.indexOf("text-decoration-line")>-1?t=t.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(a,l)=>`${l} line-through`):t+="text-decoration-line: line-through; ",e.st.cl&&t.indexOf("text-decoration-color")===-1&&(t+=`text-decoration-color: ${lt(e.st.cl)}; `),e.st.t&&t.indexOf("text-decoration-style")===-1&&(t+=`text-decoration-style: ${e.st.t} `))}],["ol",()=>{var o;(o=e.ol)!=null&&o.s&&(t.indexOf("text-decoration-line")>-1?t=t.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(a,l)=>`${l} overline`):t+="text-decoration-line: overline; ",e.ol.cl&&t.indexOf("text-decoration-color")===-1&&(t+=`text-decoration-color: ${lt(e.ol.cl)}; `),e.ol.t&&t.indexOf("text-decoration-style")===-1&&(t+=`text-decoration-style: ${e.ol.t} `))}],["bg",()=>{e.bg&&(t+=`background: ${lt(e.bg)}; `)}],["bd",()=>{var o,a,l,d,h,c,f,_,E,p,N,D;(o=e.bd)!=null&&o.b&&(t+=`border-bottom: ${Nn((a=e.bd)==null?void 0:a.b.s)} ${(l=lt(e.bd.b.cl))!=null?l:""}; `),(d=e.bd)!=null&&d.t&&(t+=`border-top: ${Nn((h=e.bd)==null?void 0:h.t.s)} ${(c=lt(e.bd.t.cl))!=null?c:""}; `),(f=e.bd)!=null&&f.r&&(t+=`border-right: ${Nn((_=e.bd)==null?void 0:_.r.s)} ${(E=lt(e.bd.r.cl))!=null?E:""}; `),(p=e.bd)!=null&&p.l&&(t+=`border-left: ${Nn((N=e.bd)==null?void 0:N.l.s)} ${(D=lt(e.bd.l.cl))!=null?D:""}; `)}],["cl",()=>{e.cl&&(t+=`color: ${lt(e.cl)}; `)}],["va",()=>{e.va===jt.SUBSCRIPT?t+="vertical-align: sub; ":e.va===jt.SUPERSCRIPT&&(t+="vertical-align: super; ")}],["td",()=>{e.td===qt.LEFT_TO_RIGHT?t+="direction: ltr; ":e.td===qt.RIGHT_TO_LEFT&&(t+="direction: rtl; ")}],["tr",()=>{var o,a,l;e.tr&&(t+=`--data-rotate: (${(o=e.tr)==null?void 0:o.a}deg${(a=e.tr)!=null&&a.v?` ,${(l=e.tr)==null?void 0:l.v}`:""});`)}],["ht",()=>{e.ht===At.LEFT?t+="text-align: left; ":e.ht===At.RIGHT?t+="text-align: right; ":e.ht===At.CENTER?t+="text-align: center; ":e.ht===At.JUSTIFIED&&(t+="text-align: justify; ")}],["vt",()=>{e.vt===Wt.BOTTOM?t+="vertical-align: bottom; ":e.vt===Wt.TOP?t+="vertical-align: top; ":e.vt===Wt.MIDDLE&&(t+="vertical-align: middle; ")}],["tb",()=>{e.tb===Bt.CLIP?t+="white-space: nowrap; overflow-x: hidden; ":e.tb===Bt.WRAP&&(t+="white-space: normal;")}],["pd",()=>{var h,c,f,_,E,p,N,D;const o=`${(h=e.pd)==null?void 0:h.b}pt`,a=`${(c=e.pd)==null?void 0:c.t}pt`,l=`${(f=e.pd)==null?void 0:f.l}pt`,d=`${(_=e.pd)==null?void 0:_.r}pt`;(E=e.pd)!=null&&E.b&&(t+=`padding-bottom: ${o}; `),(p=e.pd)!=null&&p.t&&(t+=`padding-top: ${a}; `),(N=e.pd)!=null&&N.l&&(t+=`padding-left: ${l}; `),(D=e.pd)!=null&&D.r&&(t+=`padding-right: ${d}; `)}]]),s=["bd","tr","tb"];for(const o in e)n&&s.includes(o)||(i=r.get(o))==null||i();return t}function Nn(e){let n="";return e===he.NONE?n="none":e===he.THIN?n="0.5pt solid":e===he.HAIR?n="0.5pt double":e===he.DOTTED?n="0.5pt dotted":e===he.DASHED||e===he.DASH_DOT?n="0.5pt dashed":e===he.DASH_DOT_DOT?n="0.5pt dotted":e===he.DOUBLE?n="0.5pt double":e===he.MEDIUM?n="1pt solid":e===he.MEDIUM_DASHED||e===he.MEDIUM_DASH_DOT?n="1pt dashed":e===he.MEDIUM_DASH_DOT_DOT?n="1pt dotted":e===he.SLANT_DASH_DOT?n="0.5pt dashed":e===he.THICK&&(n="1.5pt solid"),n}function bl(e){let n=0;if(e=e.trim(),e==="none")n=he.NONE;else if(e==="0.5pt solid")n=he.THIN;else if(e==="0.5pt double")n=he.HAIR;else if(e==="0.5pt dotted")n=he.DOTTED;else if(e==="0.5pt dashed")n=he.DASHED;else if(e==="1pt solid")n=he.MEDIUM;else if(e==="1pt dashed")n=he.MEDIUM_DASHED;else if(e==="1pt dotted")n=he.MEDIUM_DASH_DOT_DOT;else if(e==="1.5pt solid")n=he.THICK;else if(!e.includes("none"))n=he.THIN;else return he.NONE;return n}function Al(e,n){let t=e.body;if(n){const{headers:r,footers:s}=e;r!=null&&r[n]?t=r[n].body:s!=null&&s[n]&&(t=s[n].body)}return t}function Tl(e){const{startRow:n,endRow:t,startColumn:r,endColumn:s,rangeType:i}=e;return!(n<0||r<0||t<0||s<0||!(Number.isNaN(n)&&Number.isNaN(t))&&i===oe.COLUMN||!(Number.isNaN(r)&&Number.isNaN(s))&&i===oe.ROW||i!==oe.ROW&&i!==oe.COLUMN&&(Number.isNaN(r)||Number.isNaN(n)||Number.isNaN(s)||Number.isNaN(t)))}function yl(e,n){return{startRow:e,endRow:e,startColumn:n,endColumn:n}}function nr(e,n){return Object.prototype.toString.call(e)===Object.prototype.toString.call(n)?Object.prototype.toString.call(e)==="[object Object]"||Object.prototype.toString.call(e)==="[object Array]"?Object.keys(e).length!==Object.keys(n).length?!1:Object.keys(e).every(t=>nr(e[t],n[t])):e===n:!1}function li(e,n){const t=e.ts||{},r=n.ts||{};return e.sId!==n.sId?!1:nr(t,r)}function Dl(e,n){return n.some(t=>e.indexOf(t)>-1)}function wn(e,n,t,r){if(e>n&&([e,n]=[n,e]),t>r&&([t,r]=[r,t]),n<t||r<e)return[e,n];t<e&&(t=e),r>n&&(r=n);const s=r-t+1;let i=[];return e===t?i=[r+1-s,n-s]:n===r?i=[e,t-1]:i=[e,n-s],i}function Ml(e){if(e==null)return!1;const n=e.bullet;return(n==null?void 0:n.listId)!=null}function Ul(e){if(e==null)return!1;const n=e.paragraphStyle;return ui(n)}function ui(e){var n;return!(e==null||(e.indentStart==null||e.indentStart.v===0)&&e.hanging==null||((n=e.hanging)==null?void 0:n.v)===0)}function ci(e,n,t){return e.slice(0,n)+t+e.slice(n)}function hi(e,n,t){return n>t?e:e.slice(0,n)+e.slice(t)}function Ll(e){return e===null||e.toString().replace(/\s/g,"")===""||typeof e=="boolean"?!1:!isNaN(e)}function Pl(e){let n=0;for(let t=0;t<e.length;t++)n=e.charCodeAt(t)+(n<<6)+(n<<16)-n;return n>>>0}function di(e){var n=typeof Symbol=="function"&&Symbol.iterator,t=n&&e[n],r=0;if(t)return t.call(e);if(e&&typeof e.length=="number")return{next:function(){return e&&r>=e.length&&(e=void 0),{value:e&&e[r++],done:!e}}};throw new TypeError(n?"Object is not iterable.":"Symbol.iterator is not defined.")}function fi(e,n){var t=typeof Symbol=="function"&&e[Symbol.iterator];if(!t)return e;var r=t.call(e),s,i=[],o;try{for(;(n===void 0||n-- >0)&&!(s=r.next()).done;)i.push(s.value)}catch(a){o={error:a}}finally{try{s&&!s.done&&(t=r.return)&&t.call(r)}finally{if(o)throw o.error}}return i}function _i(e,n,t){if(t||arguments.length===2)for(var r=0,s=n.length,i;r<s;r++)(i||!(r in n))&&(i||(i=Array.prototype.slice.call(n,0,r)),i[r]=n[r]);return e.concat(i||Array.prototype.slice.call(n))}typeof SuppressedError=="function"&&SuppressedError;function Jt(e){return typeof e=="function"}function kl(e){var n=function(r){Error.call(r),r.stack=new Error().stack},t=e(n);return t.prototype=Object.create(Error.prototype),t.prototype.constructor=t,t}var rr=kl(function(e){return function(t){e(this),this.message=t?t.length+` errors occurred during unsubscription:
2
- `+t.map(function(r,s){return s+1+") "+r.toString()}).join(`
3
- `):"",this.name="UnsubscriptionError",this.errors=t}});function gi(e,n){if(e){var t=e.indexOf(n);0<=t&&e.splice(t,1)}}var mi=function(){function e(n){this.initialTeardown=n,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var n,t,r,s,i;if(!this.closed){this.closed=!0;var o=this._parentage;if(o)if(this._parentage=null,Array.isArray(o))try{for(var a=di(o),l=a.next();!l.done;l=a.next()){var d=l.value;d.remove(this)}}catch(p){n={error:p}}finally{try{l&&!l.done&&(t=a.return)&&t.call(a)}finally{if(n)throw n.error}}else o.remove(this);var h=this.initialTeardown;if(Jt(h))try{h()}catch(p){i=p instanceof rr?p.errors:[p]}var c=this._finalizers;if(c){this._finalizers=null;try{for(var f=di(c),_=f.next();!_.done;_=f.next()){var E=_.value;try{Ei(E)}catch(p){i=i!=null?i:[],p instanceof rr?i=_i(_i([],fi(i)),fi(p.errors)):i.push(p)}}}catch(p){r={error:p}}finally{try{_&&!_.done&&(s=f.return)&&s.call(f)}finally{if(r)throw r.error}}}if(i)throw new rr(i)}},e.prototype.add=function(n){var t;if(n&&n!==this)if(this.closed)Ei(n);else{if(n instanceof e){if(n.closed||n._hasParent(this))return;n._addParent(this)}(this._finalizers=(t=this._finalizers)!==null&&t!==void 0?t:[]).push(n)}},e.prototype._hasParent=function(n){var t=this._parentage;return t===n||Array.isArray(t)&&t.includes(n)},e.prototype._addParent=function(n){var t=this._parentage;this._parentage=Array.isArray(t)?(t.push(n),t):t?[t,n]:n},e.prototype._removeParent=function(n){var t=this._parentage;t===n?this._parentage=null:Array.isArray(t)&&gi(t,n)},e.prototype.remove=function(n){var t=this._finalizers;t&&gi(t,n),n instanceof e&&n._removeParent(this)},e.EMPTY=function(){var n=new e;return n.closed=!0,n}(),e}();mi.EMPTY;function Fl(e){return e instanceof mi||e&&"closed"in e&&Jt(e.remove)&&Jt(e.add)&&Jt(e.unsubscribe)}function Ei(e){Jt(e)?e():e.unsubscribe()}function Se(e){let n=!1;return e?Fl(e)?{dispose:()=>e.unsubscribe()}:typeof e=="function"?{dispose:()=>{n||(n=!0,e())}}:e:Se(()=>{})}function Hl(e){return Se(()=>{e.unsubscribe()})}class sr{constructor(){g(this,"_disposables",new Set)}add(n){const t=Se(n);return this._disposables.add(t),{dispose:()=>{t.dispose(),this._disposables.delete(t)}}}dispose(){this._disposables.forEach(n=>{n.dispose()}),this._disposables.clear()}}class Te{constructor(){g(this,"_disposed",!1);g(this,"_collection",new sr)}disposeWithMe(n){return this._collection.add(n)}ensureNotDisposed(){if(this._disposed)throw new Error("[Disposable]: object is disposed!")}dispose(){this._disposed||(this._disposed=!0,this._collection.dispose())}}class $l extends Te{constructor(){super(...arguments);g(this,"dispose$",new W.Subject)}dispose(){super.dispose(),this.dispose$.next(),this.dispose$.complete()}}class Wl extends Te{constructor(t){super();g(this,"_ref",0);this._rootDisposable=t}inc(){if(this._disposed)throw new Error("[RCDisposable]: should not ref to a disposed.");this._ref+=1}dec(){this._ref-=1,this._ref===0&&(this._rootDisposable.dispose(),this.dispose())}}class en{static hasLength(n,t){return n.length===t}static getValueType(n){return Object.prototype.toString.apply(n)}static isObject(n){return this.getValueType(n)==="[object Object]"}static isIterable(n){return n[Symbol.iterator]!=null}static isNumber(n){return this.getValueType(n)==="[object Number]"}}function bn(e,n){const t=e.indexOf(n);return t>-1?(e.splice(t,1),!0):!1}function Bl(e){const n=new Set,t=[];for(const r of e)n.has(r)||(n.add(r),t.push(r));return t}function jl(e,n){for(let t=e.length-1;t>-1;t--){const r=e[t];if(n(r,t))return r}return null}function Gl(e,n){if(e.length===0)return e;const t=n%e.length;return e.slice(t).concat(e.slice(0,t))}function Vl(e,n){const t=new Map;return e.forEach(r=>{const s=n(r);let i=t.get(s);t.has(s)||(i=[],t.set(s,i)),i.push(r)}),t}function xl(e){return Array.isArray(e)?e:[e]}const ce=Symbol("newer"),ye=Symbol("older");class pi{constructor(n){g(this,"entry");this.entry=n}[Symbol.iterator](){return this}next(){const n=this.entry;return n?(this.entry=n[ce],{done:!1,value:n.key}):{done:!0,value:void 0}}}class Ri{constructor(n){g(this,"entry");this.entry=n}[Symbol.iterator](){return this}next(){const n=this.entry;return n?(this.entry=n[ce],{done:!1,value:n.value}):{done:!0,value:void 0}}}class Ci{constructor(n){g(this,"entry");this.entry=n}[Symbol.iterator](){return this}next(){const n=this.entry;return n?(this.entry=n[ce],{done:!1,value:[n.key,n.value]}):{done:!0,value:void 0}}}ya=ce,Ta=ye;class ir{constructor(n,t){g(this,"key");g(this,"value");g(this,ya);g(this,Ta);this.key=n,this.value=t,this[ce]=void 0,this[ye]=void 0}toJSON(){return{key:this.key,value:this.value}}}class Ii{constructor(...n){g(this,"_keymap");g(this,"size",0);g(this,"limit");g(this,"oldest");g(this,"newest");g(this,"_onShiftListeners",[]);if(en.hasLength(n,1)){if(en.isNumber(n[0])){const t=n[0];this._initialize(t,void 0);return}if(en.isIterable(n[0])){const t=n[0];this._initialize(0,t);return}return}if(en.hasLength(n,2)){const t=n[0],r=n[1];this._initialize(t,r)}}onShift(n){if(this._onShiftListeners.indexOf(n)===-1)return this._onShiftListeners.push(n),Se(()=>bn(this._onShiftListeners,n));throw new Error("[LRUMap]: the listener has been registered!")}_initialize(n,t){this.oldest=void 0,this.newest=void 0,this.size=0,this.limit=n,this._keymap=new Map,t&&(this.assign(t),n<1&&(this.limit=this.size))}_markEntryAsUsed(n){n!==this.newest&&(n[ce]&&(n===this.oldest&&(this.oldest=n[ce]),n[ce][ye]=n[ye]),n[ye]&&(n[ye][ce]=n[ce]),n[ce]=void 0,n[ye]=this.newest,this.newest&&(this.newest[ce]=n),this.newest=n)}assign(n){let t,r=this.limit||Number.MAX_VALUE;this._keymap.clear();const s=n[Symbol.iterator]();for(let i=s.next();!i.done;i=s.next()){const o=new ir(i.value[0],i.value[1]);if(this._keymap.set(o.key,o),t?(t[ce]=o,o[ye]=t):this.oldest=o,t=o,r--===0)throw new Error("overflow")}this.newest=t,this.size=this._keymap.size}set(n,t){let r=this._keymap.get(n);return r?(r.value=t,this._markEntryAsUsed(r),this):(this._keymap.set(n,r=new ir(n,t)),this.newest?(this.newest[ce]=r,r[ye]=this.newest):this.oldest=r,this.newest=r,++this.size,this.size>this.limit&&this.shift(),this)}shift(){const n=this.oldest;if(n)return this.oldest&&this.oldest[ce]?(this.oldest=this.oldest[ce],this.oldest[ye]=void 0):(this.oldest=void 0,this.newest=void 0),n[ce]=n[ye]=void 0,this._keymap.delete(n.key),--this.size,this._onShiftListeners.forEach(t=>t(n)),[n.key,n.value]}get(n){const t=this._keymap.get(n);if(t)return this._markEntryAsUsed(t),t.value}has(n){return this._keymap.has(n)}find(n){const t=this._keymap.get(n);return t?t.value:void 0}delete(n){const t=this._keymap.get(n);if(t)return this._keymap.delete(t.key),t[ce]&&t[ye]?(t[ye][ce]=t[ce],t[ce][ye]=t[ye]):t[ce]?(t[ce][ye]=void 0,this.oldest=t[ce]):t[ye]?(t[ye][ce]=void 0,this.newest=t[ye]):this.oldest=this.newest=void 0,this.size--,t.value}clear(){this.oldest=void 0,this.newest=void 0,this.size=0,this._keymap.clear()}keys(){return new pi(this.oldest)}values(){return new Ri(this.oldest)}entries(){return this[Symbol.iterator]()}[Symbol.iterator](){return new Ci(this.oldest)}forEach(n,t){typeof t!="object"&&(t=this);let r=this.oldest;for(;r;)n.call(t,r.value,r.key,this),r=r[ce]}toJSON(){const n=new Array(this.size);let t=0,r=this.oldest;for(;r;)n[t++]={key:r.key,value:r.value},r=r[ce];return n}toString(){let n="",t=this.oldest;for(;t;)n+=`${String(t.key)}:${t.value}`,t=t[ce],t&&(n+=" < ");return n}}function It(e){let n=0;const t=Object.keys(e);for(const r of t){const s=Number(r);n=Math.max(n,s)}return n+1}function or(e,n,t){const r=It(t),s=t;for(let i=r-1;i>=e;i--)s[i+1]=s[i];s[e]=n}function ar(e,n,t){const r=Object.keys(t).reduce((s,i)=>Math.max(s,Number.parseInt(i)),0)+1;for(let s=e;s<r;s++)s<e+n?delete t[s]:t[s]!==void 0&&(t[s-n]=t[s],delete t[s])}function Kl(e,n){const t=e,r=Object.keys(t),s=r.length,i=n,o=Object.keys(i),a=o.length,l={};let d=0;for(let h=0;h<s;h++,d++){const c=r[h];l[d]=t[c]}for(let h=0;h<a;h++,d++){const c=o[h];l[d]=i[c]}return l}function zl(e,n,t){const r=t;if(It(t)>0){const i={};let o=0;for(let a=e;a<=n;a++)r[a]&&(i[o]=r[a],o++);return i}return{}}function lr(e,n,t,r){const s=e>t;if(!s&&e+n>t)throw new Error("Invalid move operation");s?Yl(e,n,t,r):Xl(e,n,t,r)}function Yl(e,n,t,r){const s=r,i=[];for(let o=e;o<e+n;o++)i.push(s[o]);for(let o=e-1;o>=t;o--){const a=s[o];s[o+n]=a,a===void 0&&delete s[o+n]}i.forEach((o,a)=>{s[t+a]=o,o===void 0&&delete s[t+a]})}function Xl(e,n,t,r){const s=r,i=[];for(let o=e;o<e+n;o++)i.push(s[o]);for(let o=e+n;o<t;o++){const a=s[o];s[o-n]=a,a===void 0&&delete s[o-n]}i.forEach((o,a)=>{s[t+a-n]=o,o===void 0&&delete s[t+a-n]})}class nt{constructor(n={}){g(this,"_matrix");this._setOriginValue(n)}static MakeObjectMatrixSize(n){return new nt({[n-1]:{}})}getMatrix(){return this._matrix}forEach(n){const t=this._matrix,r=Object.keys(t);for(const s of r){const i=Number(s),o=t[i];if(n(i,o)===!1)return this}return this}forRow(n){const t=this._matrix,r=Object.keys(t);for(const s of r){const i=Number(s),o=t[i];if(n(i,Object.keys(o).map(l=>Number(l)))===!1)return this}return this}forValue(n){const t=this._matrix,r=Object.keys(t);for(const s of r){const i=Number(s),o=t[i];if(!o)continue;const a=Object.keys(o);for(const l of a){const d=Number(l),h=o[Number(l)];if(n(i,d,h)===!1)return this}}return this}swapRow(n,t){const r=this._matrix[n],s=this._matrix[t];this._matrix[n]=s,this._matrix[t]=r}getRow(n){return this._matrix[n]}getRowOrCreate(n){let t=this.getRow(n);return t==null&&(t={},this._matrix[n]=t),t}reset(){this._setOriginValue({})}hasValue(){const n=this._matrix,t=Object.keys(n);if(t.length===0)return!1;for(const r of t){const s=Number(r),i=n[s];if(Object.keys(i).length>0)return!0}return!1}getValue(n,t){var r,s;return(s=(r=this._matrix)==null?void 0:r[n])==null?void 0:s[t]}setValue(n,t,r){const s=this.getRowOrCreate(n);s[t]=r}deleteValue(n,t){var r,s;(s=(r=this._matrix)==null?void 0:r[n])==null||delete s[t]}realDeleteValue(n,t){var r,s,i;if((s=(r=this._matrix)==null?void 0:r[n])==null||delete s[t],this.getRow(n)){const o=this.getRow(n);if(o==null)return;Object.keys(o).length===0&&((i=this._matrix)==null||delete i[n])}}setRow(n,t){this._matrix[n]=t}moveRows(n,t,r){lr(n,t,r,this._matrix)}moveColumns(n,t,r){this.forEach((s,i)=>{lr(n,t,r,i)})}insertRows(n,t){for(let r=n;r<n+t;r++)or(r,{},this._matrix)}insertColumns(n,t){for(let r=n;r<n+t;r++)this.forEach((s,i)=>{i&&or(r,void 0,i)})}removeRows(n,t){ar(n,t,this._matrix)}removeColumns(n,t){this.forEach((r,s)=>{s&&ar(n,t,s)})}getFragment(n,t,r,s){const i=new nt;let o=0;for(let a=n;a<=t;a++){const l={};let d=0;for(let h=r;h<=s;h++){const c=this.getValue(a,h);l[d]=c,d++}i.setRow(o,l),o++}return i}getSlice(n,t,r,s){const i=new nt;for(let o=n;o<=t;o++)for(let a=r;a<=s;a++){const l=this.getValue(o,a);l&&i.setValue(o,a,k.deepClone(l))}return i}getSizeOf(){return Object.keys(this._matrix).length}getLength(){return It(this._matrix)}getRange(){const r=this.getLength()-1;let s=0;const i=this.getLength();for(let o=0;o<i;o++){const a=this.getRow(o);if(a){const l=It(a)-1;s=l>s?l:s}}return{startRow:0,startColumn:0,endRow:r,endColumn:s}}toNativeArray(){const n=new Array;return this.forValue((t,r,s)=>{n.push(s)}),n}toArray(){const n=[];return this.forRow((t,r)=>{n[t]==null&&(n[t]=[]),r.forEach(s=>{n[t][s]=this.getValue(t,s)})}),n}toFullArray(){const n=this.getRange(),{endColumn:t,endRow:r}=n,s=[];for(let i=0;i<=r;i++){const o=Array(t+1).fill(void 0);s.push(o)}return this.forValue((i,o,a)=>{s[i][o]=a}),s}toJSON(){return this._matrix}clone(){const n=JSON.stringify(this._matrix);return JSON.parse(n)}getData(){const n=JSON.stringify(this._matrix);return JSON.parse(n)}getArrayData(){let n=0,t=0,r=!1,s=!1;const i=new nt;return this.forEach((o,a)=>{r||(r=!0,n=o),Object.keys(a).forEach(l=>{const d=Number(l);s?d<t&&(t=d):(s=!0,t=d);const h=this.getValue(o,d);i.setValue(o-n,d-t,h)})}),i.getData()}getDataRange(){let n=0,t=0,r=0,s=-1,i=!1,o=!1;return this.forEach((a,l)=>{if(i||(i=!0,n=a),l==null)return;const d=It(l)-1;d>r&&(r=d),Object.keys(l).forEach(h=>{const c=Number(h);o?c<t&&(t=c):(o=!0,t=c)}),a>s&&(s=a)}),{startRow:n,startColumn:t,endRow:s,endColumn:r}}getDiscreteRanges(){const n=[];return this.forEach((t,r)=>{Object.keys(r).forEach(s=>{const i=Number(s);let o=!1;for(const a of n)if(t>=a.startRow&&t<=a.endRow+1&&i>=a.startColumn&&i<=a.endColumn+1){a.endRow=Math.max(t,a.endRow),a.endColumn=Math.max(i,a.endColumn),o=!0;break}o||n.push({startRow:t,endRow:t,startColumn:i,endColumn:i})})}),n}merge(n){this.forValue((t,r)=>{const s=n.getValue(t,r);s!=null&&this.setValue(t,r,s)})}_setOriginValue(n={}){this._matrix=n}}const _t=class _t{static clone(n){return n.rangeType!==void 0?{startRow:n.startRow,startColumn:n.startColumn,endRow:n.endRow,endColumn:n.endColumn,rangeType:n.rangeType}:{startRow:n.startRow,startColumn:n.startColumn,endRow:n.endRow,endColumn:n.endColumn}}static equals(n,t){return n==null||t==null?!1:n.endRow===t.endRow&&n.endColumn===t.endColumn&&n.startRow===t.startRow&&n.startColumn===t.startColumn&&(n.rangeType===t.rangeType||n.rangeType===void 0&&t.rangeType===oe.NORMAL||t.rangeType===void 0&&n.rangeType===oe.NORMAL)}static intersects(n,t){if(n.rangeType===oe.ROW&&t.rangeType===oe.COLUMN||n.rangeType===oe.COLUMN&&t.rangeType===oe.ROW)return!0;if(n.rangeType===oe.ROW&&t.rangeType===oe.ROW)return n.startRow<=t.endRow&&n.endRow>=t.startRow;if(n.rangeType===oe.COLUMN&&t.rangeType===oe.COLUMN)return n.startColumn<=t.endColumn&&n.endColumn>=t.startColumn;const r=Math.floor(Number.MAX_SAFE_INTEGER/10),s=Number.isNaN(n.startRow)?0:n.startRow,i=Number.isNaN(n.endRow)?r:n.endRow,o=Number.isNaN(n.startColumn)?0:n.startColumn,a=Number.isNaN(n.endColumn)?r:n.endColumn,l=Number.isNaN(t.startRow)?0:t.startRow,d=Number.isNaN(t.endRow)?r:t.endRow,h=Number.isNaN(t.startColumn)?0:t.startColumn,c=Number.isNaN(t.endColumn)?r:t.endColumn,f=Math.abs(o+a-h-c),_=Math.abs(o-a)+Math.abs(h-c),E=Math.abs(s+i-l-d),p=Math.abs(s-i)+Math.abs(l-d);return f<=_&&E<=p}static getIntersects(n,t){const r=n.startRow,s=n.endRow,i=n.startColumn,o=n.endColumn,a=t.startRow,l=t.endRow,d=t.startColumn,h=t.endColumn;let c,f,_,E;if(a<=s)a>=r?f=a:f=r;else return null;if(l>=r)l>=s?E=s:E=l;else return null;if(d<=o)d>i?c=d:c=i;else return null;if(h>=i)h>=o?_=o:_=h;else return null;return{startRow:f,endRow:E,startColumn:c,endColumn:_,rangeType:oe.NORMAL}}static contains(n,t){return n.startRow<=t.startRow&&n.endRow>=t.endRow&&n.startColumn<=t.startColumn&&n.endColumn>=t.endColumn}static realContain(n,t){return _t.contains(n,t)&&(n.startRow<t.startRow||n.endRow>t.endRow||n.startColumn<t.startColumn||n.endColumn>t.endColumn)}static union(...n){return n.reduce((t,r)=>({startRow:Math.min(t.startRow,r.startRow),startColumn:Math.min(t.startColumn,r.startColumn),endRow:Math.max(t.endRow,r.endRow),endColumn:Math.max(t.endColumn,r.endColumn),rangeType:oe.NORMAL}),n[0])}static realUnion(...n){const t=n.some(i=>i.rangeType===oe.COLUMN),r=n.some(i=>i.rangeType===oe.ROW),s=_t.union(...n);return{startColumn:r?Number.NaN:s.startColumn,endColumn:r?Number.NaN:s.endColumn,startRow:t?Number.NaN:s.startRow,endRow:t?Number.NaN:s.endRow,rangeType:r?oe.ROW:t?oe.COLUMN:oe.NORMAL}}static subtract(n,t){if(t.startRow>n.endRow||t.endRow<n.startRow||t.startColumn>n.endColumn||t.endColumn<n.startColumn)return[n];const r=[];t.startRow>=n.startRow&&r.push({startRow:n.startRow,startColumn:n.startColumn,endRow:t.startRow-1,endColumn:n.endColumn}),t.endRow<=n.endRow&&r.push({startRow:t.endRow+1,startColumn:n.startColumn,endRow:n.endRow,endColumn:n.endColumn});const s=Math.max(n.startRow,t.startRow),i=Math.min(n.endRow,t.endRow);return t.startColumn>=n.startColumn&&r.push({startRow:s,startColumn:n.startColumn,endRow:i,endColumn:t.startColumn-1}),t.endColumn<=n.endColumn&&r.push({startRow:s,startColumn:t.endColumn+1,endRow:i,endColumn:n.endColumn}),r.filter(a=>a.startRow<=a.endRow&&a.startColumn<=a.endColumn)}static hasIntersectionBetweenTwoRect(n,t){return!(n.left>t.right||n.right<t.left||n.top>t.bottom||n.bottom<t.top)}static getIntersectionBetweenTwoRect(n,t){const r=Math.max(n.left,t.left),s=Math.min(n.right,t.right),i=Math.max(n.top,t.top),o=Math.min(n.bottom,t.bottom);return s<=r||o<=i?null:{left:r,right:s,top:i,bottom:o,width:s-r,height:o-i}}};g(_t,"getRelativeRange",(n,t)=>({startRow:n.startRow-t.startRow,endRow:n.endRow-n.startRow,startColumn:n.startColumn-t.startColumn,endColumn:n.endColumn-n.startColumn})),g(_t,"getPositionRange",(n,t,r)=>({...r||{},startRow:r&&[Oe.ROW,Oe.ALL].includes(r.startAbsoluteRefType||0)?r.startRow:n.startRow+t.startRow,endRow:r&&[Oe.ROW,Oe.ALL].includes(r.endAbsoluteRefType||0)?r.endRow:n.endRow+n.startRow+t.startRow,startColumn:r&&[Oe.COLUMN,Oe.ALL].includes(r.startAbsoluteRefType||0)?r.startColumn:n.startColumn+t.startColumn,endColumn:r&&[Oe.COLUMN,Oe.ALL].includes(r.endAbsoluteRefType||0)?r.endColumn:n.endColumn+n.startColumn+t.startColumn})),g(_t,"moveHorizontal",(n,t=0,r=0)=>({...n,startColumn:n.startColumn+t,endColumn:n.endColumn+t+r})),g(_t,"moveVertical",(n,t=0,r=0)=>({...n,startRow:n.startRow+t,endRow:n.endRow+t+r})),g(_t,"moveOffset",(n,t,r)=>({...n,startRow:n.startRow+r,endRow:n.endRow+r,startColumn:n.startColumn+t,endColumn:n.endColumn+t}));let vt=_t;class Ql{constructor(n,t){g(this,"_values",[]);g(this,"_keys",[]);g(this,"_keyMaps",new Map);this._values=n,this._keys=t,n.forEach(r=>{this._initKeyMap(r)})}_initKeyMap(n){this._keys.forEach(t=>{const r=n[t],s=this._keyMaps.get(t)||new Map;s.set(r,n),this._keyMaps.set(t,s)})}getValue(n,t){const r=t||this._keys;for(let s=0;s<r.length;s++){const i=this._keyMaps.get(r[s]);if(i!=null&&i.has(n))return i.get(n)}return null}hasValue(n){for(let t=0;t<this._keys.length;t++){const r=this._keyMaps.get(this._keys[t]);if(r!=null&&r.has(n))return!0}return!1}addValue(n){this._values.push(n),this._initKeyMap(n)}setValue(n,t,r){const s=this.getValue(n);s&&Object.keys(s).includes(t)&&(s[t]=r)}deleteValue(n){const t=this.getValue(n);if(t){this._keys.forEach(s=>{const i=this._keyMaps.get(s),o=t[s];i==null||i.delete(o)});const r=this._values.findIndex(s=>s===t);this._values.splice(r,1)}}getValues(){return this._values}getKeyMap(n){var t;return[...((t=this._keyMaps.get(n))==null?void 0:t.keys())||[]]}clear(){this._values=[],this._keys=[],this._keyMaps.clear()}}function ur(e,n,t,r){return{forEach(s){for(let i=e;i<=n;i++)for(let o=t;o<=r;o++)s(i,o)}}}function ql(e){if(e==null||e.length===0)return Number.NaN;const n=e.toLowerCase().split(""),t=n.length,r=o=>o.charCodeAt(0)-96;let s=0,i=0;for(let o=0;o<t;o++)i=r(n[o]),s+=i*26**(t-o-1);return s===0?Number.NaN:s-1}const An=65,vi=90,Zl=97;function Jl(e){const n=vi-An+1;let t="";for(;e>=0;)t=String.fromCharCode(e%n+An)+t,e=Math.floor(e/n)-1;return t}function Oi(e,n){let t="";for(;n>0;)t+=e,n--;return t}function eu(e,n=!1){const t=vi-An+1;let r=Zl;n&&(r=An);const s=String.fromCharCode(e%t+r),i=Math.floor(e/t)+1;return Oi(s,i)}function tu(e,n){return e.zIndex>n.zIndex?1:e.zIndex===n.zIndex?0:-1}function nu(e,n){return e.zIndex>n.zIndex?-1:e.zIndex===n.zIndex?0:1}function Dt(e="index",n=1){return(t,r)=>t[e]>r[e]?n:t[e]===r[e]?0:-n}function ru(e,n){let t;function r(...s){const i=this,o=function(){t=null,e.apply(i,s)};clearTimeout(t),t=setTimeout(o,n)}return Object.defineProperty(r,"cancel",{value:()=>{clearTimeout(t)},enumerable:!1,writable:!1}),r}function Tn(e,n,t){const{dataStream:r,textRuns:s=[]}=e;let i=n;const o=[];for(const a of s){const{st:l,ed:d}=a;k.hasIntersectionBetweenTwoRanges(n,t,l,d)&&(l>i?(o.push(r.slice(i,l)),o.push(cr(r,{...a,ed:Math.min(d,t)}))):o.push(cr(r,{...a,st:i,ed:Math.min(d,t)}))),i=Math.max(n,Math.min(d,t))}return i!==t&&o.push(r.slice(i,t)),o.join("")}function su(e,n=!0){var t;if(n&&((t=e.paragraphs)!=null&&t.length)){const{dataStream:r,paragraphs:s=[]}=e;let i="",o=-1;for(const a of s){const{startIndex:l,paragraphStyle:d={}}=a,{spaceAbove:h,spaceBelow:c,lineSpacing:f}=d,_=[];h!=null&&(typeof h=="number"?_.push(`margin-top: ${h}px`):_.push(`margin-top: ${h.v}px`)),c!=null&&(typeof c=="number"?_.push(`margin-bottom: ${c}px`):_.push(`margin-bottom: ${c.v}px`)),f!=null&&_.push(`line-height: ${f}`),l>o+1?i+=`<p class="UniverNormal" ${_.length?`style="${_.join("; ")};"`:""}>${Tn(e,o+1,l)}</p>`:i+=`<p class="UniverNormal" ${_.length?`style="${_.join("; ")};"`:""}></p>`,o=l}return o!==r.length&&(i+=Tn(e,o,r.length)),i}else return Tn(e,0,e.dataStream.length)}function cr(e,n){const{st:t,ed:r,ts:s={}}=n,{ff:i,fs:o,it:a,bl:l,ul:d,st:h,ol:c,bg:f,cl:_,va:E}=s;let p=e.slice(t,r);const N=[];return a===z.TRUE&&(p=`<i>${p}</i>`),E===jt.SUPERSCRIPT?p=`<sup>${p}</sup>`:E===jt.SUBSCRIPT&&(p=`<sub>${p}</sub>`),(d==null?void 0:d.s)===z.TRUE&&(p=`<u>${p}</u>`),(h==null?void 0:h.s)===z.TRUE&&(p=`<s>${p}</s>`),l===z.TRUE&&(p=`<strong>${p}</strong>`),i&&N.push(`font-family: ${i}`),_&&N.push(`color: ${_.rgb}`),o&&N.push(`font-size: ${o}pt`),c&&N.push("text-decoration: overline"),f&&N.push(`background: ${f.rgb}`),N.length?`<span style="${N.join("; ")};">${p}</span>`:p}const iu={sheetId:"",range:{startRow:-1,endRow:-1,startColumn:-1,endColumn:-1}},ou={startRow:-1,startColumn:-1,endRow:-1,endColumn:-1},au={startRow:0,startColumn:0,endRow:0,endColumn:0},lu={row:0,column:0},yn={ff:"Arial",fs:11,it:z.FALSE,bl:z.FALSE,ul:{s:z.FALSE},st:{s:z.FALSE},ol:{s:z.FALSE},tr:{a:0,v:z.FALSE},td:qt.UNSPECIFIED,cl:{rgb:"#000"},bg:{rgb:"#fff"},ht:At.UNSPECIFIED,vt:Wt.UNSPECIFIED,tb:Bt.UNSPECIFIED,pd:{t:0,r:0,b:0,l:0}},Si={id:"default_slide",title:"defaultSlide",pageSize:{width:300,height:300}};var Ni=(e=>(e.ARRAY_CONVERTOR="ARRAY_CONVERTOR",e.MATRIX_CONVERTOR="MATRIX_CONVERTOR",e))(Ni||{});function Dn(e,n){const{textRuns:t=[]}=n;let r=0;for(const i of t){const{ts:o={},st:a,ed:l}=i;if(o[e]==null)return z.FALSE;switch(e){case"bl":case"it":{if(o[e]===z.FALSE)return z.FALSE;break}case"ul":case"st":{if(o[e].s===z.FALSE)return z.FALSE;break}default:throw new Error(`unknown style key: ${e} in IStyleBase`)}r+=l-a}return n.dataStream.indexOf(`\r
4
- `)===r?z.TRUE:z.FALSE}const fn=class fn{constructor(n,t,r){g(this,"_range");g(this,"_worksheet");this._deps=r,this._range=t,this._worksheet=n}static foreach(n,t){const{startRow:r,startColumn:s,endRow:i,endColumn:o}=n;for(let a=r;a<=i;a++)for(let l=s;l<=o;l++)t(a,l)}getRangeData(){return this._range}getValue(){return this.getValues()[0][0]}getValues(){const{startRow:n,endRow:t,startColumn:r,endColumn:s}=this._range,i=[];for(let o=n;o<=t;o++){const a=[];for(let l=r;l<=s;l++)a.push(this.getMatrix().getValue(o,l)||null);i.push(a)}return i}getMatrix(){const{startRow:n,endRow:t,startColumn:r,endColumn:s}=this._range,i=this._worksheet.getCellMatrix(),o=new nt;for(let a=n;a<=t;a++)for(let l=r;l<=s;l++)o.setValue(a,l,i.getValue(a,l)||null);return o}getMatrixObject(){const{startRow:n,endRow:t,startColumn:r,endColumn:s}=this._range,i=this._worksheet.getCellMatrix(),o=new nt;for(let a=n;a<=t;a++)for(let l=r;l<=s;l++)o.setValue(a-n,l-r,i.getValue(a,l)||{});return o}getA1Notation(){const{startRow:n,endRow:t,startColumn:r,endColumn:s}=this._range;let i,o;return r<s?(i=k.numToWord(r+1)+(n+1),o=k.numToWord(s+1)+(t+1)):(i=k.numToWord(s+1)+(t+1),o=k.numToWord(r+1)+(n+1)),i===o?`${i}`:`${i}:${o}`}getBackground(){return this.getBackgrounds()[0][0]}getBackgrounds(){const n=this._deps.getStyles();return this.getValues().map(t=>t.map(r=>{var i;const s=n.getStyleByCell(r);return((i=s==null?void 0:s.bg)==null?void 0:i.rgb)||yn.bg.rgb}))}getCell(n,t){const{startRow:r,endRow:s,startColumn:i,endColumn:o}=this._range,a={startRow:r+n,endRow:r+n,startColumn:i+t,endColumn:i+t};return new fn(this._worksheet,a,this._deps)}getColumn(){return this._range.startColumn}getObjectValue(n={}){return this.getObjectValues(n)[0][0]}getObjectValues(n={}){var a;const{startRow:t,endRow:r,startColumn:s,endColumn:i}=this._range,o=this._worksheet.getCellMatrix().getFragment(t,r,s,i).getData();if(n.isIncludeStyle){const l=this._deps.getStyles();for(let d=0;d<=r-t;d++)for(let h=0;h<=i-s;h++){if(o==null||((a=o==null?void 0:o[d])==null?void 0:a[h])==null)continue;const c=o[d][h].s;c&&(o[d][h].s=l.get(c))}}return o}getFontColor(){return this.getFontColors()[0][0]}getFontColors(){const n=this._deps.getStyles();return this.getValues().map(t=>t.map(r=>{var i;const s=n.getStyleByCell(r);return((i=s==null?void 0:s.cl)==null?void 0:i.rgb)||yn.cl.rgb}))}getFontFamilies(){return this._getStyles("ff")}getFontFamily(){return this.getFontFamilies()[0][0]}getUnderlines(){return this._getStyles("ul")}getUnderline(){var t,r;const{p:n}=(t=this.getValue())!=null?t:{};return n&&Array.isArray((r=n.body)==null?void 0:r.textRuns)&&n.body.textRuns.length>0?Dn("ul",n.body)===z.TRUE?{s:z.TRUE}:{s:z.FALSE}:this.getUnderlines()[0][0]}getOverlines(){return this._getStyles("ol")}getOverline(){return this.getOverlines()[0][0]}getStrikeThrough(){var t,r;const{p:n}=(t=this.getValue())!=null?t:{};return n&&Array.isArray((r=n.body)==null?void 0:r.textRuns)&&n.body.textRuns.length>0?Dn("st",n.body)===z.TRUE?{s:z.TRUE}:{s:z.FALSE}:this.getStrikeThroughs()[0][0]}getStrikeThroughs(){return this._getStyles("st")}getFontSize(){var t,r;const n=((t=this.getValue())==null?void 0:t.p)||{};return n&&Array.isArray((r=n.body)==null?void 0:r.textRuns)&&n.body.textRuns.length>0?n.body.textRuns.some(s=>{var i;return((i=s==null?void 0:s.ts)==null?void 0:i.fs)!=null})?Math.max(...n.body.textRuns.map(s=>{var i;return((i=s==null?void 0:s.ts)==null?void 0:i.fs)||0})):this.getFontSizes()[0][0]:this.getFontSizes()[0][0]}getFontSizes(){return this._getStyles("fs")}getBorder(){return this.getBorders()[0][0]}getBorders(){return this._getStyles("bd")}getFontStyle(){var t,r;const{p:n}=(t=this.getValue())!=null?t:{};return n&&Array.isArray((r=n.body)==null?void 0:r.textRuns)&&n.body.textRuns.length>0?Dn("it",n.body)===z.TRUE?pn.ITALIC:pn.NORMAL:this._getFontStyles()[0][0]}_getFontStyles(){return this._getStyles("it")}getFontWeight(){var t,r;const{p:n}=(t=this.getValue())!=null?t:{};return n&&Array.isArray((r=n.body)==null?void 0:r.textRuns)&&n.body.textRuns.length>0?Dn("bl",n.body)===z.TRUE?Rn.BOLD:Rn.NORMAL:this._getFontWeights()[0][0]}_getFontWeights(){return this._getStyles("bl")}getGridId(){return this._worksheet.getSheetId()}getHeight(){const{_range:n,_worksheet:t}=this,{startRow:r,endRow:s}=n;let i=0;for(let o=0;o<=s-r;o++){const a=t.getRowHeight(o);i+=a}return i}getHorizontalAlignment(){return this.getHorizontalAlignments()[0][0]}getHorizontalAlignments(){return this._getStyles("ht")}getLastColumn(){return this._range.endColumn}getLastRow(){return this._range.endRow}getNumColumns(){const{startColumn:n,endColumn:t}=this._range;return t-n+1}getNumRows(){const{startRow:n,endRow:t}=this._range;return t-n+1}getRichTextValue(){return this.getRichTextValues()[0][0]}getRichTextValues(){return this.getValues().map(n=>n.map(t=>(t==null?void 0:t.p)||""))}getRowIndex(){return this._range.startRow}getSheet(){return this._worksheet}getTextDirection(){return this.getTextDirections()[0][0]}getTextDirections(){return this._getStyles("td")}getTextRotation(){return this.getTextRotations()[0][0]}getTextRotations(){return this._getStyles("tr")}getTextStyle(){return this.getTextStyles()[0][0]}getTextStyles(){const n=this._deps.getStyles();return this.getValues().map(t=>t.map(r=>n.getStyleByCell(r)))}getVerticalAlignment(){return this.getVerticalAlignments()[0][0]}getVerticalAlignments(){return this._getStyles("vt")}getWidth(){const{_range:n,_worksheet:t}=this,{startColumn:r,endColumn:s}=n;let i=0;for(let o=0;o<=s-r;o++)i+=t.getColumnWidth(o);return i}getWrap(){return this.getWrapStrategy()===Bt.WRAP?z.TRUE:z.FALSE}getWrapStrategies(){return this._getStyles("tb")}getWrapStrategy(){return this.getWrapStrategies()[0][0]}forEach(n){fn.foreach(this._range,n)}_getStyles(n){const t=this._deps.getStyles();return this.getValues().map(r=>r.map(s=>{const i=t&&t.getStyleByCell(s);return i&&i[n]||yn[n]}))}};g(fn,"transformRange",(n,t)=>n.rangeType===oe.ALL?{startColumn:0,startRow:0,endColumn:t.getMaxColumns()-1,endRow:t.getMaxRows()-1}:n.rangeType===oe.COLUMN?{startRow:0,endRow:t.getMaxRows()-1,startColumn:n.startColumn,endColumn:n.endColumn}:n.rangeType===oe.ROW?{startColumn:0,endColumn:t.getMaxColumns()-1,startRow:n.startRow,endRow:n.endRow}:n);let Gt=fn;function uu(e,n){if(e.length===0||e[0].length===0)return null;const t=new Array(e[0].length).fill(0);let r=0,s=null;for(let i=0;i<e.length;i++){for(let a=0;a<e[0].length;a++)t[a]=n(e[i][a])?t[a]+1:0;const o=cu(t);o.area>r&&(r=o.area,s={startColumn:o.start,startRow:i-o.height+1,endColumn:o.end,endRow:i})}return s}function cu(e){const n=[];let t=0,r={area:0,height:0,start:0,end:0},s=0;for(;s<e.length;)if(n.length===0||e[s]>=e[n[n.length-1]])n.push(s++);else{const i=e[n.pop()],o=n.length===0?s:s-n[n.length-1]-1;i*o>t&&(t=i*o,r={area:t,height:i,start:n.length===0?0:n[n.length-1]+1,end:s-1})}for(;n.length>0;){const i=e[n.pop()],o=n.length===0?s:s-n[n.length-1]-1;i*o>t&&(t=i*o,r={area:t,height:i,start:n.length===0?0:n[n.length-1]+1,end:s-1})}return r}function hu(e,n){Gt.foreach(n,(t,r)=>{e[t][r]=void 0})}function du(e,n){const t=e.toFullArray(),r=[];for(;;){const s=uu(t,n);if(!s)break;r.push(s),hu(t,s)}return r}function fu(e,n,t,r=!1){let s={...e};const i=s.startAbsoluteRefType||Oe.NONE,o=s.endAbsoluteRefType||Oe.NONE;return!r&&i===Oe.ALL&&o===Oe.ALL?s:r||i===Oe.NONE&&o===Oe.NONE?vt.moveOffset(s,n,t):(i===Oe.NONE?s={...s,startRow:s.startRow+t,startColumn:s.startColumn+n}:i===Oe.COLUMN?s={...s,startRow:s.startRow+t}:i===Oe.ROW&&(s={...s,startColumn:s.startColumn+n}),o===Oe.NONE?s={...s,endRow:s.endRow+t,endColumn:s.endColumn+n}:o===Oe.COLUMN?s={...s,endRow:s.endRow+t}:o===Oe.ROW&&(s={...s,endColumn:s.endColumn+n}),s)}var hr=Symbol("$$IDENTIFIER_DECORATOR");function _u(e){return e&&e[hr]===!0}function dr(e){return typeof e=="function"}function fr(e){return!!(e&&typeof e.useClass<"u")}function _r(e){return!!(e&&typeof e.useFactory<"u")}function gr(e){return!!(e&&typeof e.useValue<"u")}function gu(e){return!!(e&&typeof e.useExisting<"u")}function mr(e){return!!(e&&typeof e.useAsync<"u")}var wi=Symbol("AsyncHook");function Mn(e){return!!(e&&e.__symbol===wi)}function Ve(e){return typeof e>"u"?"undefined":dr(e)&&!e[hr]?e.name:e.toString()}u.Quantity=void 0,function(e){e.MANY="many",e.OPTIONAL="optional",e.REQUIRED="required"}(u.Quantity||(u.Quantity={})),u.LookUp=void 0,function(e){e.SELF="self",e.SKIP_SELF="skipSelf"}(u.LookUp||(u.LookUp={}));var mu=function(){var e=function(n,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(r[i]=s[i])},e(n,t)};return function(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(n,t);function r(){this.constructor=n}n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}(),Le=function(e){mu(n,e);function n(t){return e.call(this,"[redi]: ".concat(t))||this}return n}(Error),bi=function(){var e=function(n,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(r[i]=s[i])},e(n,t)};return function(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(n,t);function r(){this.constructor=n}n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}(),Ai=Symbol("$$TARGET"),Er=Symbol("$$DEPENDENCIES"),Eu=function(e){bi(n,e);function n(t,r){var s="Could not find dependency registered on the ".concat(t,' (indexed) parameter of the constructor of "').concat(Ve(r),'".');return e.call(this,s)||this}return n}(Le),Ti=function(e){bi(n,e);function n(t,r){var s='It seems that you register "undefined" as dependency on the '.concat(r+1,' parameter of "').concat(Ve(t),'". Please make sure that there is not cyclic dependency among your TypeScript files, or consider using "forwardRef". For more info please visit our website https://redi.wendell.fun/docs/debug#could-not-find-dependency-registered-on');return e.call(this,s)||this}return n}(Le);function yi(e){var n=e;return n[Er]||[]}function pr(e,n){var t=yi(e),r=t.find(function(s){return s.paramIndex===n});if(!r)throw new Eu(n,e);return r}function Rr(e,n,t,r,s){r===void 0&&(r=u.Quantity.REQUIRED);var i={paramIndex:t,identifier:n,quantity:r,lookUp:s,withNew:!1};if(typeof n>"u")throw new Ti(e,t);var o=e;o[Ai]===o?o[Er].push(i):(o[Er]=[i],o[Ai]=o)}var Di=new Set;function xe(e){if(Di.has(e))throw new Le('Identifier "'.concat(e,'" already exists.'));Di.add(e);var n=function(t,r,s){Rr(t,n,s)};return n.toString=function(){return e},n[hr]=!0,n}var pu=function(){var e=function(n,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(r[i]=s[i])},e(n,t)};return function(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(n,t);function r(){this.constructor=n}n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}(),Ru=function(e){pu(n,e);function n(t,r,s){var i='Expect "'.concat(r,'" dependency items for id "').concat(Ve(t),'" but get ').concat(s,".");return e.call(this,i)||this}return n}(Le);function Mi(e,n,t){if(n===u.Quantity.OPTIONAL&&t>1||n===u.Quantity.REQUIRED&&t!==1)throw new Ru(e,n,t)}function Cu(e,n){return e===u.Quantity.MANY?n:n[0]}function Iu(e,n,t){var r=pr(e,n);r.quantity=t}function Cr(e){return function n(t){return this instanceof n?this:function(r,s,i){if(t)Rr(r,t,i,e);else{if(e===u.Quantity.REQUIRED)throw new Ti(r,i);Iu(r,i,e)}}}}var Ui=Cr(u.Quantity.MANY),Li=Cr(u.Quantity.OPTIONAL),rt=Cr(u.Quantity.REQUIRED);function vu(e){return{unwrap:e}}function Ou(e){return!!e&&typeof e.unwrap=="function"}function Su(e){return Ou(e)?e.unwrap():e}function Ir(e){return!!e&&typeof e.dispose=="function"}var Pi=function(){var e=function(n,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(r[i]=s[i])},e(n,t)};return function(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(n,t);function r(){this.constructor=n}n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}();function Nu(e){return e.length===1}var Un=[];function ki(e){Un.push(e)}function Fi(){Un.pop()}function wu(){Un.length=0}var Hi=function(e){Pi(n,e);function n(t,r,s){var i='Cannot find "'.concat(Ve(r),'" registered by any injector. It is the ').concat(s,'th param of "').concat(_u(t)?Ve(t):t.name,'".');return e.call(this,i)||this}return n}(Le),Ln=function(e){Pi(n,e);function n(t){var r=this,s='Cannot find "'.concat(Ve(t),'" registered by any injector. The stack of dependencies is: "').concat(Un.map(function(i){return Ve(i)}).join(" -> "),'".');return r=e.call(this,s)||this,wu(),r}return n}(Le),bu=function(){function e(n){var t=this;this.dependencyMap=new Map,this.normalizeDependencies(n).map(function(r){return t.add(r[0],r[1])})}return e.prototype.add=function(n,t){typeof t>"u"&&(t={useClass:n,lazy:!1});var r=this.dependencyMap.get(n);typeof r>"u"&&(r=[],this.dependencyMap.set(n,r)),r.push(t)},e.prototype.delete=function(n){this.dependencyMap.delete(n)},e.prototype.get=function(n,t){t===void 0&&(t=u.Quantity.REQUIRED);var r=this.dependencyMap.get(n);return Mi(n,t,r.length),Cu(t,r)},e.prototype.has=function(n){return this.dependencyMap.has(n)},e.prototype.append=function(n){var t=this;this.normalizeDependencies(n).forEach(function(r){return t.add(r[0],r[1])})},e.prototype.dispose=function(){this.dependencyMap.clear()},e.prototype.normalizeDependencies=function(n){return n.map(function(t){var r=t[0],s;return Nu(t)?s={useClass:t[0],lazy:!1}:s=t[1],[r,s]})},e}(),Au=function(){function e(){this.resolvedDependencies=new Map}return e.prototype.add=function(n,t){var r=this.resolvedDependencies.get(n);typeof r>"u"&&(r=[],this.resolvedDependencies.set(n,r)),r.push(t)},e.prototype.has=function(n){return this.resolvedDependencies.has(n)},e.prototype.delete=function(n){if(this.resolvedDependencies.has(n)){var t=this.resolvedDependencies.get(n);t.forEach(function(r){return Ir(r)?r.dispose():void 0}),this.resolvedDependencies.delete(n)}},e.prototype.get=function(n,t){t===void 0&&(t=u.Quantity.REQUIRED);var r=this.resolvedDependencies.get(n);if(!r)throw new Ln(n);return Mi(n,t,r.length),t===u.Quantity.MANY?r:r[0]},e.prototype.dispose=function(){Array.from(this.resolvedDependencies.values()).forEach(function(n){n.forEach(function(t){return Ir(t)?t.dispose():void 0})}),this.resolvedDependencies.clear()},e}();function Tu(e,n,t){var r=pr(e,n);r.lookUp=t}function $i(e){return function n(){return this instanceof n?this:function(t,r,s){Tu(t,s,e)}}}var Wi=$i(u.LookUp.SKIP_SELF),Bi=$i(u.LookUp.SELF);function yu(e,n,t){var r=pr(e,n);r.withNew=t}function Du(e){return function n(){return this instanceof n?this:function(t,r,s){yu(t,s,e)}}}var ji=Du(!0);function Gi(e,n){return n===void 0&&(n=0),e?e.map(function(t,r){if(r+=n,!Array.isArray(t))return{paramIndex:r,identifier:t,quantity:u.Quantity.REQUIRED,withNew:!1};var s=t.slice(0,t.length-1),i=t[t.length-1],o=void 0,a=u.Quantity.REQUIRED,l=!1;return s.forEach(function(d){if(d instanceof Bi)o=u.LookUp.SELF;else if(d instanceof Wi)o=u.LookUp.SKIP_SELF;else if(d instanceof Li)a=u.Quantity.OPTIONAL;else if(d instanceof Ui)a=u.Quantity.MANY;else if(d instanceof ji)l=!0;else throw new Le("unknown dep modifier ".concat(d,"."))}),{paramIndex:r,identifier:i,quantity:a,lookUp:o,withNew:l}}):[]}var vr;(function(){if(typeof requestIdleCallback<"u"&&typeof cancelIdleCallback<"u")vr=function(n,t){var r=requestIdleCallback(n,typeof t=="number"?{timeout:t}:void 0),s=!1;return function(){s||(s=!0,cancelIdleCallback(r))}};else{var e=Object.freeze({didTimeout:!0,timeRemaining:function(){return 15}});vr=function(n){var t=setTimeout(function(){return n(e)}),r=!1;return function(){r||(r=!0,clearTimeout(t))}}}})();var Mu=function(){function e(n){var t=this;this.didRun=!1,this.selfExecutor=function(){try{t.value=n()}catch(r){t.error=r}finally{t.didRun=!0}},this.disposeCallback=vr(function(){return t.selfExecutor()})}return e.prototype.hasRun=function(){return this.didRun},e.prototype.dispose=function(){this.disposeCallback()},e.prototype.getValue=function(){if(this.didRun||(this.dispose(),this.selfExecutor()),this.error)throw this.error;return this.value},e}(),Vt=function(){var e=function(n,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(r[i]=s[i])},e(n,t)};return function(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(n,t);function r(){this.constructor=n}n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}(),Pn=function(){return Pn=Object.assign||function(e){for(var n,t=1,r=arguments.length;t<r;t++){n=arguments[t];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(e[s]=n[s])}return e},Pn.apply(this,arguments)},Mt=function(e,n,t){if(t||arguments.length===2)for(var r=0,s=n.length,i;r<s;r++)(i||!(r in n))&&(i||(i=Array.prototype.slice.call(n,0,r)),i[r]=n[r]);return e.concat(i||Array.prototype.slice.call(n))},Uu=300,tn=Symbol("$$NOT_INSTANTIATED_SYMBOL"),Lu=function(e){Vt(n,e);function n(t){return e.call(this,'Detecting cyclic dependency. The last identifier is "'.concat(Ve(t),'".'))||this}return n}(Le),Pu=function(e){Vt(n,e);function n(){return e.call(this,"Injector cannot be accessed after it was disposed.")||this}return n}(Le),ku=function(e){Vt(n,e);function n(t){return e.call(this,'Async item "'.concat(Ve(t),'" returns another async item.'))||this}return n}(Le),Fu=function(e){Vt(n,e);function n(t){return e.call(this,'Cannot get async item "'.concat(Ve(t),'" from sync api.'))||this}return n}(Le),Vi=function(e){Vt(n,e);function n(t){return e.call(this,'Cannot add dependency "'.concat(Ve(t),'" after it is already resolved.'))||this}return n}(Le),Hu=function(e){Vt(n,e);function n(t){return e.call(this,'Cannot dependency dependency "'.concat(Ve(t),'" after it is already resolved.'))||this}return n}(Le),dt=function(){function e(n,t){t===void 0&&(t=null),this.parent=t,this.children=[],this.resolutionOngoing=0,this.disposed=!1,this.dependencyCollection=new bu(n||[]),this.resolvedDependencyCollection=new Au,t&&t.children.push(this)}return e.prototype.createChild=function(n){return this._ensureInjectorNotDisposed(),new e(n,this)},e.prototype.dispose=function(){this.children.forEach(function(n){return n.dispose()}),this.children.length=0,this.dependencyCollection.dispose(),this.resolvedDependencyCollection.dispose(),this.deleteSelfFromParent(),this.disposed=!0},e.prototype.deleteSelfFromParent=function(){if(this.parent){var n=this.parent.children.indexOf(this);n>-1&&this.parent.children.splice(n,1)}},e.prototype.add=function(n){this._ensureInjectorNotDisposed();var t=n[0],r=n[1];if(this.resolvedDependencyCollection.has(t))throw new Vi(t);typeof r>"u"?this.dependencyCollection.add(t):mr(r)||fr(r)||gr(r)||_r(r)?this.dependencyCollection.add(t,r):this.resolvedDependencyCollection.add(t,r)},e.prototype.replace=function(n){this._ensureInjectorNotDisposed();var t=n[0];if(this.resolvedDependencyCollection.has(t))throw new Vi(t);this.dependencyCollection.delete(t),n.length===1?this.dependencyCollection.add(t):this.dependencyCollection.add(t,n[1])},e.prototype.delete=function(n){if(this._ensureInjectorNotDisposed(),this.resolvedDependencyCollection.has(n))throw new Hu(n);this.dependencyCollection.delete(n)},e.prototype.invoke=function(n){for(var t=this,r=[],s=1;s<arguments.length;s++)r[s-1]=arguments[s];this._ensureInjectorNotDisposed();var i={get:function(o,a,l){return t._get(o,a,l)}};return n.apply(void 0,Mt([i],r,!1))},e.prototype.has=function(n){var t;return this.dependencyCollection.has(n)||((t=this.parent)===null||t===void 0?void 0:t.has(n))||!1},e.prototype.get=function(n,t,r){this._ensureInjectorNotDisposed();var s=this._get(n,t,r);if(Array.isArray(s)&&s.some(function(i){return Mn(i)})||Mn(s))throw new Fu(n);return s},e.prototype._get=function(n,t,r,s){var i=u.Quantity.REQUIRED;if(t===u.Quantity.REQUIRED||t===u.Quantity.OPTIONAL||t===u.Quantity.MANY?i=t:r=t,!s){var o=this.getValue(n,i,r);if(o!==tn)return o}return this.createDependency(n,i,r,!s)},e.prototype.getAsync=function(n){this._ensureInjectorNotDisposed();var t=this.getValue(n,u.Quantity.REQUIRED);if(t!==tn)return Promise.resolve(t);var r=this.createDependency(n,u.Quantity.REQUIRED);return Mn(r)?r.whenReady():Promise.resolve(r)},e.prototype.createInstance=function(n){for(var t=[],r=1;r<arguments.length;r++)t[r-1]=arguments[r];return this._ensureInjectorNotDisposed(),this._resolveClassImpl.apply(this,Mt([{useClass:n}],t,!1))},e.prototype._resolveDependency=function(n,t,r){r===void 0&&(r=!0);var s;ki(n);try{gr(t)?s=this._resolveValueDependency(n,t):_r(t)?s=this._resolveFactory(n,t,r):fr(t)?s=this._resolveClass(n,t,r):gu(t)?s=this._resolveExisting(n,t):s=this._resolveAsync(n,t),Fi()}catch(i){throw Fi(),i}return s},e.prototype._resolveExisting=function(n,t){var r=this.get(t.useExisting);return this.resolvedDependencyCollection.add(n,r),r},e.prototype._resolveValueDependency=function(n,t){var r=t.useValue;return this.resolvedDependencyCollection.add(n,r),r},e.prototype._resolveClass=function(n,t,r){var s=this;r===void 0&&(r=!0),t.useClass;var i;if(t.lazy){var o=new Mu(function(){return s._ensureInjectorNotDisposed(),s._resolveClassImpl(t)});i=new Proxy(Object.create(null),{get:function(a,l){if(l in a)return a[l];if(l!=="whenReady"){var d=o.getValue(),h=d[l];return typeof h!="function"||(h=h.bind(d),a[l]=h),h}},set:function(a,l,d){return o.getValue()[l]=d,!0}})}else i=this._resolveClassImpl(t);return n&&r&&this.resolvedDependencyCollection.add(n,i),i},e.prototype._resolveClassImpl=function(n){for(var t,r=[],s=1;s<arguments.length;s++)r[s-1]=arguments[s];var i=n.useClass;this.markNewResolution(i);for(var o=yi(i).sort(function(N,D){return N.paramIndex-D.paramIndex}).map(function(N){return Pn(Pn({},N),{identifier:Su(N.identifier)})}),a=[],l=0,d=o;l<d.length;l++){var h=d[l];try{var c=this._get(h.identifier,h.quantity,h.lookUp,h.withNew);a.push(c)}catch(N){throw N instanceof Ln?new Hi(i,h.identifier,h.paramIndex):N}}var f=Mt([],r,!0),_=o.length>0?o[0].paramIndex:f.length;if(f.length!==_){console.warn("[redi]: Expect ".concat(_," custom parameter(s) of ").concat(Ve(i)," but get ").concat(f.length,"."));var E=_-f.length;E>0?f=Mt(Mt([],f,!0),new Array(E).fill(void 0),!0):f=f.slice(0,_)}var p=new(i.bind.apply(i,Mt(Mt([void 0],f,!1),a,!1)));return(t=n==null?void 0:n.onInstantiation)===null||t===void 0||t.call(n,p),this.markResolutionCompleted(),p},e.prototype._resolveFactory=function(n,t,r){var s;this.markNewResolution(n);for(var i=Gi(t.deps),o=[],a=0,l=i;a<l.length;a++){var d=l[a];try{var h=this._get(d.identifier,d.quantity,d.lookUp,d.withNew);o.push(h)}catch(f){throw f instanceof Ln?new Hi(n,d.identifier,d.paramIndex):f}}var c=t.useFactory.apply(null,o);return r&&this.resolvedDependencyCollection.add(n,c),this.markResolutionCompleted(),(s=t==null?void 0:t.onInstantiation)===null||s===void 0||s.call(t,c),c},e.prototype._resolveAsync=function(n,t){var r=this,s={__symbol:wi,whenReady:function(){return r._resolveAsyncImpl(n,t)}};return s},e.prototype._resolveAsyncImpl=function(n,t){var r=this;return t.useAsync().then(function(s){var i=r.getValue(n);if(i!==tn)return i;var o;if(Array.isArray(s)){var a=s[1];if(mr(a))throw new ku(n);o=r._resolveDependency(n,a)}else dr(s)?o=r._resolveClassImpl({useClass:s,onInstantiation:t.onInstantiation}):o=s;return r.resolvedDependencyCollection.add(n,o),o})},e.prototype.getValue=function(n,t,r){var s=this;t===void 0&&(t=u.Quantity.REQUIRED);var i=function(){return s.dependencyCollection.has(n)&&!s.resolvedDependencyCollection.has(n)?tn:s.resolvedDependencyCollection.get(n,t)},o=function(){return s.parent?s.parent.getValue(n,t):tn};return r===u.LookUp.SKIP_SELF?o():r===u.LookUp.SELF||this.resolvedDependencyCollection.has(n)||this.dependencyCollection.has(n)?i():o()},e.prototype.createDependency=function(n,t,r,s){var i=this;t===void 0&&(t=u.Quantity.REQUIRED),s===void 0&&(s=!0);var o=function(){var l=i.dependencyCollection.get(n,t),d=null;return Array.isArray(l)?d=l.map(function(h){return i._resolveDependency(n,h,s)}):l&&(d=i._resolveDependency(n,l,s)),d},a=function(){if(i.parent)return i.parent.createDependency(n,t,void 0,s);if(t===u.Quantity.OPTIONAL)return null;throw ki(n),new Ln(n)};return r===u.LookUp.SKIP_SELF?a():n===e?this:this.dependencyCollection.has(n)?o():a()},e.prototype.markNewResolution=function(n){if(this.resolutionOngoing+=1,this.resolutionOngoing>=Uu)throw new Lu(n)},e.prototype.markResolutionCompleted=function(){this.resolutionOngoing-=1},e.prototype._ensureInjectorNotDisposed=function(){if(this.disposed)throw new Pu},e}();function $u(e,n,t){t===void 0&&(t=0);var r=Gi(n,t);r.forEach(function(s){Rr(e,s.identifier,s.paramIndex,s.quantity,s.lookUp)})}var xi=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||typeof global<"u"&&global,Ki="REDI_GLOBAL_LOCK",Wu=typeof process<"u"&&process.versions!=null&&process.versions.node!=null;xi[Ki]?Wu||console.error(`[redi]: You are loading scripts of redi more than once! This may cause undesired behavior in your application.
1
+ (function(global2,factory){typeof exports=="object"&&typeof module<"u"?factory(exports,require("rxjs"),require("rxjs/operators"),require("@univerjs/core"),require("react")):typeof define=="function"&&define.amd?define(["exports","rxjs","rxjs/operators","@univerjs/core","react"],factory):(global2=typeof globalThis<"u"?globalThis:global2||self,factory(global2.UniverCore={},global2.rxjs,global2.rxjs.operators,global2.UniverCore,global2.React))})(this,function(exports2,rxjs,operators,core,React){"use strict";var __defProp=Object.defineProperty;var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __publicField=(obj,key,value)=>__defNormalProp(obj,typeof key!="symbol"?key+"":key,value);var _a,_b,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l,_m;function _interopNamespaceDefault(e){const n=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(e){for(const k in e)if(k!=="default"){const d=Object.getOwnPropertyDescriptor(e,k);Object.defineProperty(n,k,d.get?d:{enumerable:!0,get:__name(()=>e[k],"get")})}}return n.default=e,Object.freeze(n)}__name(_interopNamespaceDefault,"_interopNamespaceDefault");function _mergeNamespaces(n,m){for(var i=0;i<m.length;i++){const e=m[i];if(typeof e!="string"&&!Array.isArray(e)){for(const k in e)if(k!=="default"&&!(k in n)){const d=Object.getOwnPropertyDescriptor(e,k);d&&Object.defineProperty(n,k,d.get?d:{enumerable:!0,get:__name(()=>e[k],"get")})}}}return Object.freeze(Object.defineProperty(n,Symbol.toStringTag,{value:"Module"}))}__name(_mergeNamespaces,"_mergeNamespaces");const React__namespace=_interopNamespaceDefault(React);function installShims(){installRequestIdleCallback()}__name(installShims,"installShims");const glob=typeof global<"u"?global:typeof self<"u"?self:window;function installRequestIdleCallback(){typeof glob.requestIdleCallback!="function"&&(glob.requestIdleCallback=__name(function(callback){const start=Date.now();return setTimeout(__name(function(){const remaining=Math.max(0,50-(Date.now()-start));callback({didTimeout:remaining===0,timeRemaining(){return remaining}})},"rICCallback"),1)},"shimRIC")),typeof glob.cancelIdleCallback!="function"&&(glob.cancelIdleCallback=__name(function(id){clearTimeout(id)},"shimCancelRIC"))}__name(installRequestIdleCallback,"installRequestIdleCallback");const DEFAULT_DOCUMENT_SUB_COMPONENT_ID="__default_document_sub_component_id20231101__",MOVE_BUFFER_VALUE=2,ROTATE_BUFFER_VALUE=1;function checkIfMove(transform,previousTransform){if(previousTransform==null||transform==null)return!0;const{left:leftPrev=0,top:topPrev=0,height:heightPrev=0,width:widthPrev=0,angle:anglePrev=0}=previousTransform,{left=0,top=0,height=0,width=0,angle=0}=transform,allWidth=width,allHeight=height,allWidthPrev=widthPrev,allHeightPrev=heightPrev;return Math.abs(left-leftPrev)>MOVE_BUFFER_VALUE||Math.abs(top-topPrev)>MOVE_BUFFER_VALUE||Math.abs(allWidth-allWidthPrev)>MOVE_BUFFER_VALUE||Math.abs(allHeight-allHeightPrev)>MOVE_BUFFER_VALUE||Math.abs(angle-anglePrev)>ROTATE_BUFFER_VALUE}__name(checkIfMove,"checkIfMove");function binarySearchArray(arr,pos){let low=0,high=arr.length-1;for(;low<=high;){const mid=Math.floor((high+low)/2);if(pos<arr[mid]&&(mid===0||pos>=arr[mid-1]))return mid;if(pos>=arr[mid])low=mid+1;else if(pos<arr[mid])high=mid-1;else return-1}return-1}__name(binarySearchArray,"binarySearchArray");function orderSearchArray(arr,pos){let i=0,cur=0,cur_pre=0,cur_index=-1,i_ed=arr.length-1;for(;i<arr.length&&i_ed>=0&&i_ed>=i;){if(cur=arr[i_ed],i_ed===0?cur_pre=0:cur_pre=arr[i_ed-1],pos>=cur_pre&&pos<=cur){cur_index=i_ed;break}if(cur=arr[i],i===0?cur_pre=0:cur_pre=arr[i-1],pos>=cur_pre&&pos<cur){cur_index=i;break}i++,i_ed--}return cur_index}__name(orderSearchArray,"orderSearchArray");function searchArray(arr,num){let index2=arr.length-1;return num<0?-1:num<arr[0]?0:num>arr[arr.length-1]?Number.POSITIVE_INFINITY:(arr.length<40||num<=arr[20]||num>=arr[index2-20]?index2=orderSearchArray(arr,num):index2=binarySearchArray(arr,num),index2)}__name(searchArray,"searchArray");function codeToBlob(code){const blob=new Blob([code],{type:"text/javascript"});return window.URL.createObjectURL(blob)}__name(codeToBlob,"codeToBlob");var AutoFillSeries=(AutoFillSeries2=>(AutoFillSeries2[AutoFillSeries2.DEFAULT_SERIES=0]="DEFAULT_SERIES",AutoFillSeries2[AutoFillSeries2.ALTERNATE_SERIES=1]="ALTERNATE_SERIES",AutoFillSeries2))(AutoFillSeries||{}),BorderStyleTypes=(BorderStyleTypes2=>(BorderStyleTypes2[BorderStyleTypes2.NONE=0]="NONE",BorderStyleTypes2[BorderStyleTypes2.THIN=1]="THIN",BorderStyleTypes2[BorderStyleTypes2.HAIR=2]="HAIR",BorderStyleTypes2[BorderStyleTypes2.DOTTED=3]="DOTTED",BorderStyleTypes2[BorderStyleTypes2.DASHED=4]="DASHED",BorderStyleTypes2[BorderStyleTypes2.DASH_DOT=5]="DASH_DOT",BorderStyleTypes2[BorderStyleTypes2.DASH_DOT_DOT=6]="DASH_DOT_DOT",BorderStyleTypes2[BorderStyleTypes2.DOUBLE=7]="DOUBLE",BorderStyleTypes2[BorderStyleTypes2.MEDIUM=8]="MEDIUM",BorderStyleTypes2[BorderStyleTypes2.MEDIUM_DASHED=9]="MEDIUM_DASHED",BorderStyleTypes2[BorderStyleTypes2.MEDIUM_DASH_DOT=10]="MEDIUM_DASH_DOT",BorderStyleTypes2[BorderStyleTypes2.MEDIUM_DASH_DOT_DOT=11]="MEDIUM_DASH_DOT_DOT",BorderStyleTypes2[BorderStyleTypes2.SLANT_DASH_DOT=12]="SLANT_DASH_DOT",BorderStyleTypes2[BorderStyleTypes2.THICK=13]="THICK",BorderStyleTypes2))(BorderStyleTypes||{}),BorderType=(BorderType2=>(BorderType2.TOP="top",BorderType2.BOTTOM="bottom",BorderType2.LEFT="left",BorderType2.RIGHT="right",BorderType2.NONE="none",BorderType2.ALL="all",BorderType2.OUTSIDE="outside",BorderType2.INSIDE="inside",BorderType2.HORIZONTAL="horizontal",BorderType2.VERTICAL="vertical",BorderType2.TLBR="tlbr",BorderType2.TLBC_TLMR="tlbc_tlmr",BorderType2.TLBR_TLBC_TLMR="tlbr_tlbc_tlmr",BorderType2.BLTR="bl_tr",BorderType2.MLTR_BCTR="mltr_bctr",BorderType2))(BorderType||{}),ColorType=(ColorType2=>(ColorType2[ColorType2.UNSUPPORTED=0]="UNSUPPORTED",ColorType2[ColorType2.RGB=1]="RGB",ColorType2[ColorType2.HEX=2]="HEX",ColorType2[ColorType2.THEME=3]="THEME",ColorType2))(ColorType||{}),CommonHideTypes=(CommonHideTypes2=>(CommonHideTypes2[CommonHideTypes2.ON=0]="ON",CommonHideTypes2[CommonHideTypes2.OFF=1]="OFF",CommonHideTypes2))(CommonHideTypes||{}),CopyPasteType=(CopyPasteType2=>(CopyPasteType2[CopyPasteType2.PASTE_NORMAL=0]="PASTE_NORMAL",CopyPasteType2[CopyPasteType2.PASTE_NO_BORDERS=1]="PASTE_NO_BORDERS",CopyPasteType2[CopyPasteType2.PASTE_FORMAT=2]="PASTE_FORMAT",CopyPasteType2[CopyPasteType2.PASTE_FORMULA=3]="PASTE_FORMULA",CopyPasteType2[CopyPasteType2.PASTE_DATA_VALIDATION=4]="PASTE_DATA_VALIDATION",CopyPasteType2[CopyPasteType2.PASTE_VALUES=5]="PASTE_VALUES",CopyPasteType2[CopyPasteType2.PASTE_CONDITIONAL_FORMATTING=6]="PASTE_CONDITIONAL_FORMATTING",CopyPasteType2[CopyPasteType2.PASTE_COLUMN_WIDTHS=7]="PASTE_COLUMN_WIDTHS",CopyPasteType2))(CopyPasteType||{}),DeveloperMetadataVisibility=(DeveloperMetadataVisibility2=>(DeveloperMetadataVisibility2[DeveloperMetadataVisibility2.DOCUMENT=0]="DOCUMENT",DeveloperMetadataVisibility2[DeveloperMetadataVisibility2.PROJECT=1]="PROJECT",DeveloperMetadataVisibility2))(DeveloperMetadataVisibility||{}),Dimension=(Dimension2=>(Dimension2[Dimension2.COLUMNS=0]="COLUMNS",Dimension2[Dimension2.ROWS=1]="ROWS",Dimension2))(Dimension||{}),Direction=(Direction2=>(Direction2[Direction2.UP=0]="UP",Direction2[Direction2.RIGHT=1]="RIGHT",Direction2[Direction2.DOWN=2]="DOWN",Direction2[Direction2.LEFT=3]="LEFT",Direction2))(Direction||{});function getReverseDirection(direction){switch(direction){case 3:return 1;case 1:return 3;case 0:return 2;case 2:return 0}}__name(getReverseDirection,"getReverseDirection");var FormatType=(FormatType2=>(FormatType2[FormatType2.NUMBER_FORMAT_TYPE_UNSPECIFIED=0]="NUMBER_FORMAT_TYPE_UNSPECIFIED",FormatType2[FormatType2.TEXT=1]="TEXT",FormatType2[FormatType2.NUMBER=2]="NUMBER",FormatType2[FormatType2.PERCENT=3]="PERCENT",FormatType2[FormatType2.CURRENCY=4]="CURRENCY",FormatType2[FormatType2.DATE=5]="DATE",FormatType2[FormatType2.TIME=6]="TIME",FormatType2[FormatType2.DATE_TIME=7]="DATE_TIME",FormatType2[FormatType2.SCIENTIFIC=8]="SCIENTIFIC",FormatType2))(FormatType||{}),InterpolationPointType=(InterpolationPointType2=>(InterpolationPointType2[InterpolationPointType2.INTERPOLATION_POINT_TYPE_UNSPECIFIED=0]="INTERPOLATION_POINT_TYPE_UNSPECIFIED",InterpolationPointType2[InterpolationPointType2.MIN=1]="MIN",InterpolationPointType2[InterpolationPointType2.MAX=2]="MAX",InterpolationPointType2[InterpolationPointType2.NUMBER=3]="NUMBER",InterpolationPointType2[InterpolationPointType2.PERCENT=4]="PERCENT",InterpolationPointType2[InterpolationPointType2.PERCENTILE=5]="PERCENTILE",InterpolationPointType2))(InterpolationPointType||{}),LocaleType=(LocaleType2=>(LocaleType2.EN_US="enUS",LocaleType2.ZH_CN="zhCN",LocaleType2.RU_RU="ruRU",LocaleType2.ZH_TW="zhTW",LocaleType2.VI_VN="viVN",LocaleType2))(LocaleType||{}),ProtectionType=(ProtectionType2=>(ProtectionType2[ProtectionType2.RANGE=0]="RANGE",ProtectionType2[ProtectionType2.SHEET=1]="SHEET",ProtectionType2))(ProtectionType||{}),RelativeDate=(RelativeDate2=>(RelativeDate2[RelativeDate2.RELATIVE_DATE_UNSPECIFIED=0]="RELATIVE_DATE_UNSPECIFIED",RelativeDate2[RelativeDate2.PAST_YEAR=1]="PAST_YEAR",RelativeDate2[RelativeDate2.PAST_MONTH=2]="PAST_MONTH",RelativeDate2[RelativeDate2.PAST_WEEK=3]="PAST_WEEK",RelativeDate2[RelativeDate2.YESTERDAY=4]="YESTERDAY",RelativeDate2[RelativeDate2.TODAY=5]="TODAY",RelativeDate2[RelativeDate2.TOMORROW=6]="TOMORROW",RelativeDate2))(RelativeDate||{}),SheetTypes=(SheetTypes2=>(SheetTypes2[SheetTypes2.GRID=0]="GRID",SheetTypes2[SheetTypes2.KANBAN=1]="KANBAN",SheetTypes2[SheetTypes2.GANTT=2]="GANTT",SheetTypes2))(SheetTypes||{}),TextDirection=(TextDirection2=>(TextDirection2[TextDirection2.UNSPECIFIED=0]="UNSPECIFIED",TextDirection2[TextDirection2.LEFT_TO_RIGHT=1]="LEFT_TO_RIGHT",TextDirection2[TextDirection2.RIGHT_TO_LEFT=2]="RIGHT_TO_LEFT",TextDirection2))(TextDirection||{}),TextDecoration=(TextDecoration2=>(TextDecoration2[TextDecoration2.DASH=0]="DASH",TextDecoration2[TextDecoration2.DASH_DOT_DOT_HEAVY=1]="DASH_DOT_DOT_HEAVY",TextDecoration2[TextDecoration2.DASH_DOT_HEAVY=2]="DASH_DOT_HEAVY",TextDecoration2[TextDecoration2.DASHED_HEAVY=3]="DASHED_HEAVY",TextDecoration2[TextDecoration2.DASH_LONG=4]="DASH_LONG",TextDecoration2[TextDecoration2.DASH_LONG_HEAVY=5]="DASH_LONG_HEAVY",TextDecoration2[TextDecoration2.DOT_DASH=6]="DOT_DASH",TextDecoration2[TextDecoration2.DOT_DOT_DASH=7]="DOT_DOT_DASH",TextDecoration2[TextDecoration2.DOTTED=8]="DOTTED",TextDecoration2[TextDecoration2.DOTTED_HEAVY=9]="DOTTED_HEAVY",TextDecoration2[TextDecoration2.DOUBLE=10]="DOUBLE",TextDecoration2[TextDecoration2.NONE=11]="NONE",TextDecoration2[TextDecoration2.SINGLE=12]="SINGLE",TextDecoration2[TextDecoration2.THICK=13]="THICK",TextDecoration2[TextDecoration2.WAVE=14]="WAVE",TextDecoration2[TextDecoration2.WAVY_DOUBLE=15]="WAVY_DOUBLE",TextDecoration2[TextDecoration2.WAVY_HEAVY=16]="WAVY_HEAVY",TextDecoration2[TextDecoration2.WORDS=17]="WORDS",TextDecoration2))(TextDecoration||{}),HorizontalAlign=(HorizontalAlign2=>(HorizontalAlign2[HorizontalAlign2.UNSPECIFIED=0]="UNSPECIFIED",HorizontalAlign2[HorizontalAlign2.LEFT=1]="LEFT",HorizontalAlign2[HorizontalAlign2.CENTER=2]="CENTER",HorizontalAlign2[HorizontalAlign2.RIGHT=3]="RIGHT",HorizontalAlign2[HorizontalAlign2.JUSTIFIED=4]="JUSTIFIED",HorizontalAlign2[HorizontalAlign2.BOTH=5]="BOTH",HorizontalAlign2[HorizontalAlign2.DISTRIBUTED=6]="DISTRIBUTED",HorizontalAlign2))(HorizontalAlign||{}),VerticalAlign=(VerticalAlign2=>(VerticalAlign2[VerticalAlign2.UNSPECIFIED=0]="UNSPECIFIED",VerticalAlign2[VerticalAlign2.TOP=1]="TOP",VerticalAlign2[VerticalAlign2.MIDDLE=2]="MIDDLE",VerticalAlign2[VerticalAlign2.BOTTOM=3]="BOTTOM",VerticalAlign2))(VerticalAlign||{}),WrapStrategy=(WrapStrategy2=>(WrapStrategy2[WrapStrategy2.UNSPECIFIED=0]="UNSPECIFIED",WrapStrategy2[WrapStrategy2.OVERFLOW=1]="OVERFLOW",WrapStrategy2[WrapStrategy2.CLIP=2]="CLIP",WrapStrategy2[WrapStrategy2.WRAP=3]="WRAP",WrapStrategy2))(WrapStrategy||{}),FontItalic=(FontItalic2=>(FontItalic2[FontItalic2.NORMAL=0]="NORMAL",FontItalic2[FontItalic2.ITALIC=1]="ITALIC",FontItalic2))(FontItalic||{}),FontWeight=(FontWeight2=>(FontWeight2[FontWeight2.NORMAL=0]="NORMAL",FontWeight2[FontWeight2.BOLD=1]="BOLD",FontWeight2))(FontWeight||{}),BaselineOffset=(BaselineOffset2=>(BaselineOffset2[BaselineOffset2.NORMAL=1]="NORMAL",BaselineOffset2[BaselineOffset2.SUBSCRIPT=2]="SUBSCRIPT",BaselineOffset2[BaselineOffset2.SUPERSCRIPT=3]="SUPERSCRIPT",BaselineOffset2))(BaselineOffset||{}),BooleanNumber=(BooleanNumber2=>(BooleanNumber2[BooleanNumber2.FALSE=0]="FALSE",BooleanNumber2[BooleanNumber2.TRUE=1]="TRUE",BooleanNumber2))(BooleanNumber||{}),CellValueType=(CellValueType2=>(CellValueType2[CellValueType2.STRING=1]="STRING",CellValueType2[CellValueType2.NUMBER=2]="NUMBER",CellValueType2[CellValueType2.BOOLEAN=3]="BOOLEAN",CellValueType2[CellValueType2.FORCE_STRING=4]="FORCE_STRING",CellValueType2))(CellValueType||{}),ThemeColorType=(ThemeColorType2=>(ThemeColorType2[ThemeColorType2.DARK1=0]="DARK1",ThemeColorType2[ThemeColorType2.LIGHT1=1]="LIGHT1",ThemeColorType2[ThemeColorType2.DARK2=2]="DARK2",ThemeColorType2[ThemeColorType2.LIGHT2=3]="LIGHT2",ThemeColorType2[ThemeColorType2.ACCENT1=4]="ACCENT1",ThemeColorType2[ThemeColorType2.ACCENT2=5]="ACCENT2",ThemeColorType2[ThemeColorType2.ACCENT3=6]="ACCENT3",ThemeColorType2[ThemeColorType2.ACCENT4=7]="ACCENT4",ThemeColorType2[ThemeColorType2.ACCENT5=8]="ACCENT5",ThemeColorType2[ThemeColorType2.ACCENT6=9]="ACCENT6",ThemeColorType2[ThemeColorType2.HYPERLINK=10]="HYPERLINK",ThemeColorType2[ThemeColorType2.FOLLOWED_HYPERLINK=11]="FOLLOWED_HYPERLINK",ThemeColorType2))(ThemeColorType||{}),ThemeColors=(ThemeColors2=>(ThemeColors2.OFFICE="Office",ThemeColors2.OFFICE_2007_2010="Office 2007-2010",ThemeColors2.GRAYSCALE="Grayscale",ThemeColors2.BLUE_WARM="Blue Warm",ThemeColors2.BLUE="Blue",ThemeColors2.BLUE_II="Blue II",ThemeColors2.BLUE_GREEN="Blue Green",ThemeColors2.GREEN="Green",ThemeColors2.GREEN_YELLOW="Green Yellow",ThemeColors2.YELLOW="Yellow",ThemeColors2.YELLOW_ORANGE="Yellow Orange",ThemeColors2.ORANGE="Orange",ThemeColors2.ORANGE_RED="Orange Red",ThemeColors2.RED_ORANGE="Red Orange",ThemeColors2.RED="Red",ThemeColors2.RED_VIOLET="Red Violet",ThemeColors2.VIOLET="Violet",ThemeColors2.VIOLET_II="Violet II",ThemeColors2.MEDIAN="Median",ThemeColors2.PAPER="Paper",ThemeColors2.MARQUEE="Marquee",ThemeColors2.SLIPSTREAM="Slipstream",ThemeColors2.Aspect="Aspect",ThemeColors2))(ThemeColors||{}),BasicShapes=(BasicShapes2=>(BasicShapes2.Line="line",BasicShapes2.LineInv="lineInv",BasicShapes2.Triangle="triangle",BasicShapes2.RtTriangle="rtTriangle",BasicShapes2.Rect="rect",BasicShapes2.Diamond="diamond",BasicShapes2.Parallelogram="parallelogram",BasicShapes2.Trapezoid="trapezoid",BasicShapes2.NonIsocelesTrapezoid="nonIsocelesTrapezoid",BasicShapes2.Pentagon="pentagon",BasicShapes2.Hexagon="hexagon",BasicShapes2.Heptagon="heptagon",BasicShapes2.Octagon="octagon",BasicShapes2.Decagon="decagon",BasicShapes2.Dodecagon="dodecagon",BasicShapes2.Star4="star4",BasicShapes2.Star5="star5",BasicShapes2.Star6="star6",BasicShapes2.Star7="star7",BasicShapes2.Star8="star8",BasicShapes2.Star10="star10",BasicShapes2.Star12="star12",BasicShapes2.Star16="star16",BasicShapes2.Star24="star24",BasicShapes2.Star32="star32",BasicShapes2.RoundRect="roundRect",BasicShapes2.Round1Rect="round1Rect",BasicShapes2.Round2SameRect="round2SameRect",BasicShapes2.Round2DiagRect="round2DiagRect",BasicShapes2.Ellipse="ellipse",BasicShapes2))(BasicShapes||{}),ArrowsAndMarkersShapes=(ArrowsAndMarkersShapes2=>(ArrowsAndMarkersShapes2.RightArrow="rightArrow",ArrowsAndMarkersShapes2.LeftArrow="leftArrow",ArrowsAndMarkersShapes2.UpArrow="upArrow",ArrowsAndMarkersShapes2.DownArrow="downArrow",ArrowsAndMarkersShapes2.LeftRightArrow="leftRightArrow",ArrowsAndMarkersShapes2.UpDownArrow="upDownArrow",ArrowsAndMarkersShapes2.QuadArrow="quadArrow",ArrowsAndMarkersShapes2.LeftRightUpArrow="leftRightUpArrow",ArrowsAndMarkersShapes2.BentArrow="bentArrow",ArrowsAndMarkersShapes2.UturnArrow="uturnArrow",ArrowsAndMarkersShapes2.CircularArrow="circularArrow",ArrowsAndMarkersShapes2.NotchedRightArrow="notchedRightArrow",ArrowsAndMarkersShapes2.HomePlate="homePlate",ArrowsAndMarkersShapes2.Chevron="chevron",ArrowsAndMarkersShapes2.LeftCircularArrow="leftCircularArrow",ArrowsAndMarkersShapes2.LeftRightCircularArrow="leftRightCircularArrow",ArrowsAndMarkersShapes2))(ArrowsAndMarkersShapes||{}),OtherShapes=(OtherShapes2=>(OtherShapes2.Plaque="plaque",OtherShapes2.Can="can",OtherShapes2.Cube="cube",OtherShapes2.Bevel="bevel",OtherShapes2.Donut="donut",OtherShapes2.NoSmoking="noSmoking",OtherShapes2.BlockArc="blockArc",OtherShapes2.FoldedCorner="foldedCorner",OtherShapes2))(OtherShapes||{}),SpecialShapes=(SpecialShapes2=>(SpecialShapes2.SmileyFace="smileyFace",SpecialShapes2.Heart="heart",SpecialShapes2.LightningBolt="lightningBolt",SpecialShapes2.Sun="sun",SpecialShapes2.Moon="moon",SpecialShapes2.Cloud="cloud",SpecialShapes2.Arc="arc",SpecialShapes2.Backpack="backpack",SpecialShapes2.Frame="frame",SpecialShapes2.HalfFrame="halfFrame",SpecialShapes2.Corner="corner",SpecialShapes2.Chord="chord",SpecialShapes2.Pie="pie",SpecialShapes2.Teardrop="teardrop",SpecialShapes2.WedgeRectCallout="wedgeRectCallout",SpecialShapes2.WedgeRRectCallout="wedgeRRectCallout",SpecialShapes2.WedgeEllipseCallout="wedgeEllipseCallout",SpecialShapes2.CloudCallout="cloudCallout",SpecialShapes2.BorderCallout1="borderCallout1",SpecialShapes2.BorderCallout2="borderCallout2",SpecialShapes2.BorderCallout3="borderCallout3",SpecialShapes2.AccentCallout1="accentCallout1",SpecialShapes2.AccentCallout2="accentCallout2",SpecialShapes2.AccentCallout3="accentCallout3",SpecialShapes2.Callout1="callout1",SpecialShapes2.Callout2="callout2",SpecialShapes2.Callout3="callout3",SpecialShapes2.ActionButtonBackPrevious="actionButtonBackPrevious",SpecialShapes2.ActionButtonEnd="actionButtonEnd",SpecialShapes2.ActionButtonForwardNext="actionButtonForwardNext",SpecialShapes2.ActionButtonHelp="actionButtonHelp",SpecialShapes2.ActionButtonHome="actionButtonHome",SpecialShapes2.ActionButtonInformation="actionButtonInformation",SpecialShapes2.ActionButtonMovie="actionButtonMovie",SpecialShapes2.ActionButtonReturn="actionButtonReturn",SpecialShapes2.ActionButtonSound="actionButtonSound",SpecialShapes2))(SpecialShapes||{});const THEME_COLORS={[ThemeColors.OFFICE]:{[ThemeColorType.ACCENT1]:"#4472C4",[ThemeColorType.ACCENT2]:"#ED7D31",[ThemeColorType.ACCENT3]:"#A5A5A5",[ThemeColorType.ACCENT4]:"#70AD47",[ThemeColorType.ACCENT5]:"#5B9BD5",[ThemeColorType.ACCENT6]:"#70AD47",[ThemeColorType.DARK1]:"#000000",[ThemeColorType.DARK2]:"#44546A",[ThemeColorType.LIGHT1]:"#FFFFFF",[ThemeColorType.LIGHT2]:"#E7E6E6",[ThemeColorType.HYPERLINK]:"#0563C1",[ThemeColorType.FOLLOWED_HYPERLINK]:"#954F72"}},_ColorBuilder=class _ColorBuilder{constructor(){__publicField(this,"_themeValue",ThemeColorType.LIGHT1);__publicField(this,"_themeColors");__publicField(this,"_themeTint");__publicField(this,"_rgbValue","");__publicField(this,"_colorType");this._colorType=ColorType.UNSUPPORTED,this._themeColors=ThemeColors.OFFICE,this._themeTint=0}asRgbColor(){return new RgbColor(this._rgbValue,this)}asThemeColor(){return new ThemeColor(this._themeValue,this._themeTint,this._themeColors,this)}build(){switch(this._colorType){case ColorType.THEME:return this.asThemeColor();case ColorType.RGB:return this.asRgbColor();case ColorType.UNSUPPORTED:throw new Error("unsupported color type")}}setRgbColor(cssString){return this._colorType=ColorType.RGB,this._rgbValue=cssString,this}setThemeColors(value){this._colorType=ColorType.THEME,this._themeColors=value}setThemeTint(value){this._colorType=ColorType.THEME,this._themeTint=value}setThemeColor(theme){return this._colorType=ColorType.THEME,this._themeValue=theme,this}getColorType(){return this._colorType}};__name(_ColorBuilder,"ColorBuilder");let ColorBuilder=_ColorBuilder;const _Color=class _Color{constructor(builder){__publicField(this,"_builder");this._builder=builder}static rgbColorToHexValue(color){return`#${((1<<24)+(color.getRed()<<16)+(color.getGreen()<<8)+color.getBlue()).toString(16).slice(1)}`}static hexValueToRgbColor(hexValue){hexValue?hexValue.indexOf("#")>-1&&(hexValue=hexValue.substring(1)):hexValue="#000000";const r=+`0x${hexValue[0]}${hexValue[1]}`,g=+`0x${hexValue[2]}${hexValue[3]}`,b=+`0x${hexValue[4]}${hexValue[5]}`;return new ColorBuilder().setRgbColor(`rgb(${r},${g},${b})`).asRgbColor()}static hexToRgbString(hex){const shorthandRegex=/^#?([a-f\d])([a-f\d])([a-f\d])$/i;hex=hex.replace(shorthandRegex,(m,r,g,b)=>r+r+g+g+b+b);const result=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(hex);let string=null;if(result){const r=Number.parseInt(result[1],16),g=Number.parseInt(result[2],16),b=Number.parseInt(result[3],16);string=`rgba(${r},${g},${b})`}return string}asRgbColor(){return this._builder.asRgbColor()}asThemeColor(){return this._builder.asThemeColor()}getColorType(){return this._builder.getColorType()}clone(){return new _Color(this._builder)}equals(color){return!1}};__name(_Color,"Color");let Color=_Color;const _HLSColor=class _HLSColor{constructor(rgbColor){__publicField(this,"_saturation",0);__publicField(this,"_hue",0);__publicField(this,"_lightness",0);__publicField(this,"_alpha",0);const red=rgbColor.getRed()/255,green=rgbColor.getGreen()/255,blue=rgbColor.getBlue()/255,alpha=rgbColor.getAlpha()/255,min=Math.min(red,Math.min(green,blue)),max=Math.max(red,Math.max(green,blue)),delta=max-min;if(max===min){this._hue=0,this._saturation=0,this._lightness=max;return}this._lightness=(min+max)/2,this._lightness<.5?this._saturation=delta/(max+min):this._saturation=delta/(2-max-min),red===max&&(this._hue=(green-blue)/delta),green===max&&(this._hue=2+(blue-red)/delta),blue===max&&(this._hue=4+(red-green)/delta),this._hue*=60,this._hue<0&&(this._hue+=360),this._alpha=alpha}asRgbColor(){const builder=new ColorBuilder;if(this._saturation===0)return builder.setRgbColor(`rgba(${this._lightness*255},${this._lightness*255},${this._lightness*255},${this._alpha*255})`),builder.asRgbColor();let t1;this._lightness<.5?t1=this._lightness*(1+this._saturation):t1=this._lightness+this._saturation-this._lightness*this._saturation;const t2=2*this._lightness-t1,hue=this._hue/360,tR=hue+1/3,red=this.setColor(t1,t2,tR),green=this.setColor(t1,t2,hue),tB=hue-1/3,blue=this.setColor(t1,t2,tB);return builder.setRgbColor(`rgba(${Math.round(red*255)},${Math.round(green*255)},${Math.round(blue*255)},${this._alpha*255})`),builder.asRgbColor()}getLightness(){return this._lightness}getHue(){return this._hue}getSaturation(){return this._saturation}getAlpha(){return this._alpha}setColor(t1,t2,t3){t3<0&&(t3+=1),t3>1&&(t3-=1);let color;return 6*t3<1?color=t2+(t1-t2)*6*t3:2*t3<1?color=t1:3*t3<2?color=t2+(t1-t2)*(2/3-t3)*6:color=t2,color}setLightness(lightness){this._lightness=lightness}};__name(_HLSColor,"HLSColor");let HLSColor=_HLSColor;const _RgbColor=class _RgbColor extends Color{constructor(cssString,builder){super(builder);__publicField(this,"_cssString");__publicField(this,"_red");__publicField(this,"_green");__publicField(this,"_blue");__publicField(this,"_alpha");let match=cssString.match(_RgbColor.RGBA_EXTRACT);if(match){const red=+match[1],green=+match[2],blue=+match[3],alpha=+match[4];this._cssString=cssString,this._red=red,this._green=green,this._blue=blue,this._alpha=alpha;return}if(match=cssString.match(_RgbColor.RGB_EXTRACT),match){const red=+match[1],green=+match[2],blue=+match[3];this._cssString=cssString,this._red=red,this._green=green,this._blue=blue,this._alpha=1;return}throw new Error("Invalid rgba or rgb color")}asHexString(){return Color.rgbColorToHexValue(this)}getRed(){let r=this._red+_RgbColor.RGB_COLOR_AMT;return r>255?r=255:r<0&&(r=0),r}getGreen(){let g=this._green+_RgbColor.RGB_COLOR_AMT;return g>255?g=255:g<0&&(g=0),g}getBlue(){let b=this._blue+_RgbColor.RGB_COLOR_AMT;return b>255?b=255:b<0&&(b=0),b}getAlpha(){return this._alpha}getColorType(){return ColorType.RGB}clone(){return new _RgbColor(this._cssString,this._builder)}asThemeColor(){throw new Error("rgb color not support to themeColor")}equals(color){return color instanceof _RgbColor?color._red===this._red&&color._blue===this._blue&&color._green===this._green&&color._alpha===this._alpha:!1}getCssString(){return this._cssString}};__name(_RgbColor,"RgbColor"),__publicField(_RgbColor,"RGB_COLOR_AMT",0),__publicField(_RgbColor,"RGBA_EXTRACT",new RegExp("\\s*rgba\\s*\\((\\s*\\d+\\s*),(\\s*\\d+\\s*),(\\s*\\d+\\s*),(\\s*\\d.\\d|\\d\\s*)\\)\\s*")),__publicField(_RgbColor,"RGB_EXTRACT",new RegExp("\\s*rgb\\s*\\((\\s*\\d+\\s*),(\\s*\\d+\\s*),(\\s*\\d+\\s*)\\)\\s*"));let RgbColor=_RgbColor;const _ThemeColor=class _ThemeColor extends Color{constructor(theme,themeTint,themeColors,builder){super(builder);__publicField(this,"_themeColorType");__publicField(this,"_themeTint");__publicField(this,"_themeColors");this._themeColorType=theme,this._themeTint=themeTint,this._themeColors=themeColors}lumValue(tint,lum){if(tint==null)return lum;let value;return tint<0?value=lum*(1+tint):value=lum*(1-tint)+(255-255*(1-tint)),value}asRgbColor(){const themeColors=THEME_COLORS[this._themeColors];if(themeColors==null)throw new Error("not find themeColors type");const hexValue=themeColors[this._themeColorType];if(hexValue==null)throw new Error("not find themeColors value");let themeCache;if(_ThemeColor._cacheThemeColor.has(this._themeColors)){if(themeCache=_ThemeColor._cacheThemeColor.get(this._themeColors),themeCache.has(this._themeColorType))return themeCache.get(this._themeColorType)}else themeCache=new Map,_ThemeColor._cacheThemeColor.set(this._themeColors,themeCache);const hlsColor=new HLSColor(Color.hexValueToRgbColor(hexValue));hlsColor.setLightness(this.lumValue(this._themeTint,hlsColor.getLightness()*255)/255);const rgbColor=hlsColor.asRgbColor();return themeCache.set(this._themeColorType,rgbColor),rgbColor}clone(){return new _ThemeColor(this._themeColorType,this._themeTint,this._themeColors,this._builder)}equals(color){return color instanceof _ThemeColor?color._themeColorType===this._themeColorType:!1}getColorType(){return ColorType.THEME}getThemeColorType(){return this._themeColorType}};__name(_ThemeColor,"ThemeColor"),__publicField(_ThemeColor,"_cacheThemeColor",new Map);let ThemeColor=_ThemeColor;const RGB_PAREN="rgb(",RGBA_PAREN="rgba(",COLORS={aliceBlue:[240,248,255],antiqueWhite:[250,235,215],aqua:[0,255,255],aquamarine:[127,255,212],azure:[240,255,255],beige:[245,245,220],bisque:[255,228,196],black:[0,0,0],blancheAlmond:[255,235,205],blue:[0,0,255],blueViolet:[138,43,226],brown:[165,42,42],burlyWood:[222,184,135],cadetBlue:[95,158,160],chartreuse:[127,255,0],chocolate:[210,105,30],coral:[255,127,80],cornFlowerBlue:[100,149,237],cornSilk:[255,248,220],crimson:[220,20,60],cyan:[0,255,255],darkblue:[0,0,139],darkCyan:[0,139,139],darkGoldenrod:[184,132,11],darkGray:[169,169,169],darkGreen:[0,100,0],darkGrey:[169,169,169],darkKhaki:[189,183,107],darkMagenta:[139,0,139],darkOliveGreen:[85,107,47],darkOrange:[255,140,0],darkOrchid:[153,50,204],darkRed:[139,0,0],darkSalmon:[233,150,122],darkSeaGreen:[143,188,143],darkSlateBlue:[72,61,139],darkSlateGray:[47,79,79],darkSlateGrey:[47,79,79],darkTurquoise:[0,206,209],darkViolet:[148,0,211],deepPink:[255,20,147],deepSkyBlue:[0,191,255],dimGray:[105,105,105],dimGrey:[105,105,105],dodgerBlue:[30,144,255],firebrick:[178,34,34],floralWhite:[255,255,240],forestGreen:[34,139,34],fuchsia:[255,0,255],gainsboro:[220,220,220],ghostWhite:[248,248,255],gold:[255,215,0],goldenrod:[218,165,32],gray:[128,128,128],green:[0,128,0],greenYellow:[173,255,47],grey:[128,128,128],honeydew:[240,255,240],hotPink:[255,105,180],indianRed:[205,92,92],indigo:[75,0,130],ivory:[255,255,240],khaki:[240,230,140],lavender:[230,230,250],lavenderBlush:[255,240,245],lawnGreen:[124,252,0],lemonChiffon:[255,250,205],lightblue:[173,216,230],lightCoral:[240,128,128],lightCyan:[224,255,255],lightGoldenrodYellow:[250,250,210],lightGray:[211,211,211],lightGreen:[144,238,144],lightGrey:[211,211,211],lightPink:[255,182,193],lightSalmon:[255,160,122],lightSeaGreen:[32,178,170],lightSkyBlue:[135,206,250],lightSlateGray:[119,136,153],lightSlateGrey:[119,136,153],lightSteelBlue:[176,196,222],lightYellow:[255,255,224],lime:[0,255,0],limeGreen:[50,205,50],linen:[250,240,230],magenta:[255,0,255],maroon:[128,0,0],mediumAquamarine:[102,205,170],mediumBlue:[0,0,205],mediumOrchid:[186,85,211],mediumPurple:[147,112,219],mediumSeaGreen:[60,179,113],mediumSlateBlue:[123,104,238],mediumSpringGreen:[0,250,154],mediumTurquoise:[72,209,204],mediumVioletRed:[199,21,133],midBightBlue:[25,25,112],mintCream:[245,255,250],mistyRose:[255,228,225],moccasin:[255,228,181],navajoWhite:[255,222,173],navy:[0,0,128],oldLace:[253,245,230],olive:[128,128,0],oliveDrab:[107,142,35],orange:[255,165,0],orangeRed:[255,69,0],orchid:[218,112,214],paleGoldenrod:[238,232,170],paleGreen:[152,251,152],paleTurquoise:[175,238,238],paleVioletRed:[219,112,147],papayaWhip:[255,239,213],peachPuff:[255,218,185],peru:[205,133,63],pink:[255,192,203],plum:[221,160,203],powderBlue:[176,224,230],purple:[128,0,128],rebeccaPurple:[102,51,153],red:[255,0,0],rosyBrown:[188,143,143],royalBlue:[65,105,225],saddleBrown:[139,69,19],salmon:[250,128,114],sandyBrown:[244,164,96],seaGreen:[46,139,87],seashell:[255,245,238],sienna:[160,82,45],silver:[192,192,192],skyBlue:[135,206,235],slateBlue:[106,90,205],slateGray:[119,128,144],slateGrey:[119,128,144],snow:[255,255,250],springGreen:[0,255,127],steelBlue:[70,130,180],tan:[210,180,140],teal:[0,128,128],thistle:[216,191,216],transparent:[255,255,255,0],tomato:[255,99,71],turquoise:[64,224,208],violet:[238,130,238],wheat:[245,222,179],white:[255,255,255],whiteSmoke:[245,245,245],yellow:[255,255,0],yellowGreen:[154,205,5]},_ColorKit=class _ColorKit{constructor(color){__publicField(this,"_color");__publicField(this,"_rgbColor");__publicField(this,"_isValid",!1);if(color==null){this._setNullColor();return}if(color instanceof _ColorKit){this._color={...color._color},this._rgbColor={...color._rgbColor};return}const colorObject=toColor(color);if(colorObject==null){this._setNullColor();return}this._color=colorObject;const rgbColorObject=toRgbColor(this._color);if(rgbColorObject==null){this._setNullColor();return}this._rgbColor=rgbColorObject,this._isValid=!0}static mix(color1,color2,amount){var _a2,_b2;amount=Math.min(1,Math.max(0,amount));const rgb1=new _ColorKit(color1).toRgb(),rgb2=new _ColorKit(color2).toRgb(),alpha1=(_a2=rgb1.a)!=null?_a2:1,alpha2=(_b2=rgb2.a)!=null?_b2:1,rgba={r:(rgb2.r-rgb1.r)*amount+rgb1.r,g:(rgb2.g-rgb1.g)*amount+rgb1.g,b:(rgb2.b-rgb1.b)*amount+rgb1.b,a:(alpha2-alpha1)*amount+alpha1};return new _ColorKit(rgba)}static getContrastRatio(foreground,background){const lumA=new _ColorKit(foreground).getLuminance(),lumB=new _ColorKit(background).getLuminance();return(Math.max(lumA,lumB)+.05)/(Math.min(lumA,lumB)+.05)}get isValid(){return this._isValid}toRgb(){return this._rgbColor}toRgbString(){const{r,g,b,a=1}=this.toRgb(),useAlpha=a<1;return`rgb${useAlpha?"a":""}(${r},${g},${b}${useAlpha?`,${a}`:""})`}toString(){return this.toRgbString()}toHexString(allowShort){const{r,g,b,a=1}=this.toRgb(),useAlpha=a<1,hex=[pad2(Math.round(r).toString(16)),pad2(Math.round(g).toString(16)),pad2(Math.round(b).toString(16)),pad2(Math.round(a*255).toString(16))];return allowShort&&hex[0][0]===hex[0][1]&&hex[1][0]===hex[1][1]&&hex[2][0]===hex[2][1]&&hex[3][0]===hex[3][1]?useAlpha?`#${hex[0][0]}${hex[1][0]}${hex[2][0]}${hex[3][0]}`:`#${hex[0][0]}${hex[1][0]}${hex[2][0]}`:useAlpha?`#${hex[0]}${hex[1]}${hex[2]}${hex[3]}`:`#${hex[0]}${hex[1]}${hex[2]}`}toHsv(){return rgb2Hsv(this.toRgb())}toHsl(){return rgb2Hsl(this.toRgb())}lighten(amount=10){const hsl=this.toHsl();return hsl.l+=amount,hsl.l=Math.min(Math.max(hsl.l,0),100),new _ColorKit(hsl)}darken(amount=10){const hsl=this.toHsl();return hsl.l-=amount,hsl.l=Math.min(Math.max(hsl.l,0),100),new _ColorKit(hsl)}setAlpha(value){return new _ColorKit({...this._rgbColor,a:value})}getLuminance(){let{r,g,b}=this.toRgb();return r=rgbNormalize(r),g=rgbNormalize(g),b=rgbNormalize(b),Number((.2126*r+.7152*g+.0722*b).toFixed(3))}getBrightness(){const{r,g,b}=this.toRgb();return(r*299+g*587+b*114)/1e3}getAlpha(){var _a2;return(_a2=this._color.a)!=null?_a2:1}isDark(){return this.getBrightness()<128}isLight(){return!this.isDark()}_setNullColor(){this._isValid=!1,this._color={r:0,g:0,b:0,a:0},this._rgbColor={r:0,g:0,b:0,a:0}}};__name(_ColorKit,"ColorKit");let ColorKit=_ColorKit;const pad2=__name(v=>v.length===1?`0${v}`:v,"pad2"),rgbNormalize=__name(val=>(val/=255,val<=.03928?val/12.92:((val+.055)/1.055)**2.4),"rgbNormalize"),toColor=__name(color=>{if(isObject(color)){if("r"in color){const rgb={r:Math.round(color.r),g:Math.round(color.g),b:Math.round(color.b)};return color.a!==void 0&&(rgb.a=color.a),rgb}if("l"in color){const hsl={h:Math.round(color.h),s:color.s,l:color.l};return color.a!==void 0&&(hsl.a=color.a),hsl}const hsv={h:Math.round(color.h),s:color.s,v:color.v};return color.a!==void 0&&(hsv.a=color.a),hsv}const parsedColor=color.trim();if(COLORS[parsedColor]){const colorArray=COLORS[parsedColor],rgb={r:Math.round(colorArray[0]),g:Math.round(colorArray[1]),b:Math.round(colorArray[2])};return rgb.a=colorArray[3]||1,rgb}if(parsedColor.startsWith("#"))return hexToColor(parsedColor);if(parsedColor.startsWith("rgb"))return rgbToColor(parsedColor);if(parsedColor.startsWith("hsl"))return hslToColor(parsedColor);if(parsedColor.startsWith("hsv"))return hsvToColor(parsedColor)},"toColor"),hexToColor=__name(color=>{const parsedColor=color.substring(1),re=new RegExp(`.{1,${parsedColor.length>=6?2:1}}`,"g");let colors=parsedColor.match(re);if(!colors||colors.length<3)throw new Error(`The color '${color}' is illegal hex color`);colors[0].length===1&&(colors=colors.map(n=>n+n));const rgbColor={r:Number.parseInt(colors[0],16),g:Number.parseInt(colors[1],16),b:Number.parseInt(colors[2],16)};return colors.length>3&&(rgbColor.a=Number.parseInt(colors[3],16)/255),rgbColor},"hexToColor"),rgbToColor=__name(color=>{const matcher=color.indexOf("(");if(matcher===-1)throw new Error(`The color '${color}' is illegal rgb color`);const values=color.substring(matcher+1,color.length-1).split(",");if(values.length<3)throw new Error(`The color '${color}' is illegal rgb color`);const rgbColor={r:Number.parseInt(values[0],10),g:Number.parseInt(values[1],10),b:Number.parseInt(values[2],10)};return values.length>3&&(rgbColor.a=Number.parseFloat(values[3])),rgbColor},"rgbToColor"),hslToColor=__name(color=>{const matcher=color.indexOf("(");if(matcher===-1)throw new Error(`The color '${color}' is illegal hsl color`);const values=color.substring(matcher+1,color.length-1).split(",");if(values.length<3)throw new Error(`The color '${color}' is illegal hsl color`);const hslColor={h:Number.parseInt(values[0],10),s:Number.parseFloat(values[1]),l:Number.parseFloat(values[2])};return values.length>3&&(hslColor.a=Number.parseFloat(values[3])),hslColor},"hslToColor"),hsvToColor=__name(color=>{const matcher=color.indexOf("(");if(matcher===-1)throw new Error(`The color '${color}' is illegal hsv color`);const values=color.substring(matcher+1,color.length-1).split(",");if(values.length<3)throw new Error(`The color '${color}' is illegal hsv color`);const hsvColor={h:Number.parseInt(values[0],10),s:Number.parseFloat(values[1]),v:Number.parseFloat(values[2])};return values.length>3&&(hsvColor.a=Number.parseFloat(values[3])),hsvColor},"hsvToColor"),toRgbColor=__name(color=>{const obj=toColor(color);if(obj!=null)return"r"in obj?obj:"l"in obj?hsl2Rgb(obj):hsv2Rgb(obj)},"toRgbColor"),hue2Rgb=__name((p,q,t)=>(t<0&&(t+=1),t>1&&(t-=1),t<1/6?p+(q-p)*6*t:t<1/2?q:t<2/3?p+(q-p)*(2/3-t)*6:p),"hue2Rgb"),hsl2Rgb=__name(color=>{let{h,s,l:l2}=color;h/=360,s/=100,l2/=100;let r=0,g=0,b=0;if(s===0)r=g=b=l2;else{const q=l2<.5?l2*(1+s):l2+s-l2*s,p=2*l2-q;r=hue2Rgb(p,q,h+1/3),g=hue2Rgb(p,q,h),b=hue2Rgb(p,q,h-1/3)}const IRgbColor={r:Math.round(r*255),g:Math.round(g*255),b:Math.round(b*255)};return color.a!==void 0&&(IRgbColor.a=color.a),IRgbColor},"hsl2Rgb"),hsv2Rgb=__name(color=>{let{h,s,v}=color;h=h/360*6,s/=100,v/=100;const i=Math.floor(h),f=h-i,p=v*(1-s),q=v*(1-f*s),t=v*(1-(1-f)*s),mod=i%6,r=[v,q,p,p,t,v][mod],g=[t,v,v,q,p,p][mod],b=[p,p,t,v,v,q][mod],IRgbColor={r:r*255,g:g*255,b:b*255};return color.a!==void 0&&(IRgbColor.a=color.a),IRgbColor},"hsv2Rgb"),rgb2Hsl=__name(color=>{let{r,g,b}=color;r/=255,g/=255,b/=255;const max=Math.max(r,g,b),min=Math.min(r,g,b),l2=(max+min)/2;let h,s;if(max===min)h=s=0;else{const d=max-min;switch(s=l2>.5?d/(2-max-min):d/(max+min),max){case r:h=(g-b)/d+(g<b?6:0);break;case g:h=(b-r)/d+2;break;default:h=(r-g)/d+4;break}h/=6}const hslColor={h:Math.round(h*360),s:Math.round(s*100),l:Math.round(l2*100)};return color.a!==void 0&&(hslColor.a=color.a),hslColor},"rgb2Hsl"),rgb2Hsv=__name(color=>{let{r,g,b}=color;r/=255,g/=255,b/=255;const max=Math.max(r,g,b),min=Math.min(r,g,b);let h;const v=max,d=max-min,s=max===0?0:d/max;if(max===min)h=0;else{switch(max){case r:h=(g-b)/d+(g<b?6:0);break;case g:h=(b-r)/d+2;break;default:h=(r-g)/d+4;break}h/=6}const hsvColor={h:Math.round(h*360),s:Math.round(s*100),v:Math.round(v*100)};return color.a!==void 0&&(hsvColor.a=color.a),hsvColor},"rgb2Hsv"),isUndefinedOrNull=__name(value=>value==null,"isUndefinedOrNull"),isObject=__name(value=>!isUndefinedOrNull(value)&&typeof value=="object","isObject");function isBlackColor(color){const hexRegex=/^#(?:[0]{3}|[0]{6})\b/,rgbRegex=/^rgb\s*\(\s*0+\s*,\s*0+\s*,\s*0+\s*\)$/,rgbaRegex=/^rgba\s*\(\s*0+\s*,\s*0+\s*,\s*0+\s*,\s*(1|1\.0*|0?\.\d+)\)$/,hslRegex=/^hsl\s*\(\s*0*\s*,\s*0%*\s*,\s*0%*\s*\)$/,hslaRegex=/^hsla\s*\(\s*0*\s*,\s*0%*\s*,\s*0%*\s*,\s*(1|1\.0*|0?\.\d+)\)$/;return!!(hexRegex.test(color)||rgbRegex.test(color)||rgbaRegex.test(color)||hslRegex.test(color)||hslaRegex.test(color))}__name(isBlackColor,"isBlackColor");function isWhiteColor(color){const hexRegex=/^#(?:[Ff]{3}|[Ff]{6})\b/,rgbRegex=/^rgb\s*\(\s*255\s*,\s*255\s*,\s*255\s*\)$/,rgbaRegex=/^rgba\s*\(\s*255\s*,\s*255\s*,\s*255\s*,\s*(1|1\.0*|0?\.\d+)\)$/,hslRegex=/^hsl\s*\(\s*0*\s*,\s*0%*\s*,\s*100%*\s*\)$/,hslaRegex=/^hsla\s*\(\s*0*\s*,\s*0%*\s*,\s*100%*\s*,\s*(1|1\.0*|0?\.\d+)\)$/;return!!(hexRegex.test(color)||rgbRegex.test(color)||rgbaRegex.test(color)||hslRegex.test(color)||hslaRegex.test(color))}__name(isWhiteColor,"isWhiteColor");var UpdateDocsAttributeType=(UpdateDocsAttributeType2=>(UpdateDocsAttributeType2[UpdateDocsAttributeType2.COVER=0]="COVER",UpdateDocsAttributeType2[UpdateDocsAttributeType2.REPLACE=1]="REPLACE",UpdateDocsAttributeType2[UpdateDocsAttributeType2.INTERSECTION=2]="INTERSECTION",UpdateDocsAttributeType2))(UpdateDocsAttributeType||{});function isICellData(value){return value&&(value.s!==void 0||value.p!==void 0||value.v!==void 0||value.t!==void 0||value.f!==void 0||value.si!==void 0)}__name(isICellData,"isICellData");function getCellValueType(cell){if(cell.t!==void 0)return cell.t;if(typeof cell.v=="string")return CellValueType.STRING;if(typeof cell.v=="number")return CellValueType.NUMBER;if(typeof cell.v=="boolean")return CellValueType.BOOLEAN}__name(getCellValueType,"getCellValueType");function isNullCell(cell){if(cell==null)return!0;const{v,f,si,p,s,custom}=cell;return!(!(v==null||typeof v=="string"&&v.length===0)||f!=null&&f.length>0||si!=null&&si.length>0||p!=null||custom!=null)}__name(isNullCell,"isNullCell");function isCellV(cell){return cell!=null&&(typeof cell=="string"||typeof cell=="number"||typeof cell=="boolean")}__name(isCellV,"isCellV");var DocStyleType=(DocStyleType2=>(DocStyleType2[DocStyleType2.character=0]="character",DocStyleType2[DocStyleType2.paragraph=1]="paragraph",DocStyleType2[DocStyleType2.table=2]="table",DocStyleType2[DocStyleType2.numbering=3]="numbering",DocStyleType2))(DocStyleType||{}),FollowNumberWithType=(FollowNumberWithType2=>(FollowNumberWithType2[FollowNumberWithType2.TAB=0]="TAB",FollowNumberWithType2[FollowNumberWithType2.SPACE=1]="SPACE",FollowNumberWithType2[FollowNumberWithType2.NOTHING=2]="NOTHING",FollowNumberWithType2))(FollowNumberWithType||{}),GlyphType=(GlyphType2=>(GlyphType2[GlyphType2.BULLET=0]="BULLET",GlyphType2[GlyphType2.NONE=1]="NONE",GlyphType2[GlyphType2.DECIMAL=2]="DECIMAL",GlyphType2[GlyphType2.DECIMAL_ZERO=3]="DECIMAL_ZERO",GlyphType2[GlyphType2.UPPER_LETTER=4]="UPPER_LETTER",GlyphType2[GlyphType2.LOWER_LETTER=5]="LOWER_LETTER",GlyphType2[GlyphType2.UPPER_ROMAN=6]="UPPER_ROMAN",GlyphType2[GlyphType2.LOWER_ROMAN=7]="LOWER_ROMAN",GlyphType2[GlyphType2.ORDINAL=8]="ORDINAL",GlyphType2[GlyphType2.CARDINAL_TEXT=9]="CARDINAL_TEXT",GlyphType2[GlyphType2.ORDINAL_TEXT=10]="ORDINAL_TEXT",GlyphType2[GlyphType2.HEX=11]="HEX",GlyphType2[GlyphType2.CHICAGO=12]="CHICAGO",GlyphType2[GlyphType2.IDEOGRAPH_DIGITAL=13]="IDEOGRAPH_DIGITAL",GlyphType2[GlyphType2.JAPANESE_COUNTING=14]="JAPANESE_COUNTING",GlyphType2[GlyphType2.AIUEO=15]="AIUEO",GlyphType2[GlyphType2.IROHA=16]="IROHA",GlyphType2[GlyphType2.DECIMAL_FULL_WIDTH=17]="DECIMAL_FULL_WIDTH",GlyphType2[GlyphType2.DECIMAL_HALF_WIDTH=18]="DECIMAL_HALF_WIDTH",GlyphType2[GlyphType2.JAPANESE_LEGAL=19]="JAPANESE_LEGAL",GlyphType2[GlyphType2.JAPANESE_DIGITAL_TEN_THOUSAND=20]="JAPANESE_DIGITAL_TEN_THOUSAND",GlyphType2[GlyphType2.DECIMAL_ENCLOSED_CIRCLE=21]="DECIMAL_ENCLOSED_CIRCLE",GlyphType2[GlyphType2.DECIMAL_FULL_WIDTH2=22]="DECIMAL_FULL_WIDTH2",GlyphType2[GlyphType2.AIUEO_FULL_WIDTH=23]="AIUEO_FULL_WIDTH",GlyphType2[GlyphType2.IROHA_FULL_WIDTH=24]="IROHA_FULL_WIDTH",GlyphType2[GlyphType2.GANADA=25]="GANADA",GlyphType2[GlyphType2.CHOSUNG=26]="CHOSUNG",GlyphType2[GlyphType2.DECIMAL_ENCLOSED_FULLSTOP=27]="DECIMAL_ENCLOSED_FULLSTOP",GlyphType2[GlyphType2.DECIMAL_ENCLOSED_PAREN=28]="DECIMAL_ENCLOSED_PAREN",GlyphType2[GlyphType2.DECIMAL_ENCLOSED_CIRCLE_CHINESE=29]="DECIMAL_ENCLOSED_CIRCLE_CHINESE",GlyphType2[GlyphType2.IDEOGRAPH_ENCLOSED_CIRCLE=30]="IDEOGRAPH_ENCLOSED_CIRCLE",GlyphType2[GlyphType2.IDEOGRAPH_TRADITIONAL=31]="IDEOGRAPH_TRADITIONAL",GlyphType2[GlyphType2.IDEOGRAPH_ZODIAC=32]="IDEOGRAPH_ZODIAC",GlyphType2[GlyphType2.IDEOGRAPH_ZODIAC_TRADITIONAL=33]="IDEOGRAPH_ZODIAC_TRADITIONAL",GlyphType2[GlyphType2.TAIWANESE_COUNTING=34]="TAIWANESE_COUNTING",GlyphType2[GlyphType2.IDEOGRAPH_LEGAL_TRADITIONAL=35]="IDEOGRAPH_LEGAL_TRADITIONAL",GlyphType2[GlyphType2.TAIWANESE_COUNTING_THOUSAND=36]="TAIWANESE_COUNTING_THOUSAND",GlyphType2[GlyphType2.TAIWANESE_DIGITAL=37]="TAIWANESE_DIGITAL",GlyphType2[GlyphType2.CHINESE_COUNTING=38]="CHINESE_COUNTING",GlyphType2[GlyphType2.CHINESE_LEGAL_SIMPLIFIED=39]="CHINESE_LEGAL_SIMPLIFIED",GlyphType2[GlyphType2.CHINESE_COUNTING_THOUSAND=40]="CHINESE_COUNTING_THOUSAND",GlyphType2[GlyphType2.KOREAN_DIGITAL=41]="KOREAN_DIGITAL",GlyphType2[GlyphType2.KOREAN_COUNTING=42]="KOREAN_COUNTING",GlyphType2[GlyphType2.KOREAN_LEGAL=43]="KOREAN_LEGAL",GlyphType2[GlyphType2.KOREAN_DIGITAL2=44]="KOREAN_DIGITAL2",GlyphType2[GlyphType2.VIETNAMESE_COUNTING=45]="VIETNAMESE_COUNTING",GlyphType2[GlyphType2.RUSSIAN_LOWER=46]="RUSSIAN_LOWER",GlyphType2[GlyphType2.RUSSIAN_UPPER=47]="RUSSIAN_UPPER",GlyphType2[GlyphType2.NUMBER_IN_DASH=48]="NUMBER_IN_DASH",GlyphType2[GlyphType2.HEBREW1=49]="HEBREW1",GlyphType2[GlyphType2.HEBREW2=50]="HEBREW2",GlyphType2[GlyphType2.ARABIC_ALPHA=51]="ARABIC_ALPHA",GlyphType2[GlyphType2.ARABIC_ABJAD=52]="ARABIC_ABJAD",GlyphType2[GlyphType2.HINDI_VOWELS=53]="HINDI_VOWELS",GlyphType2[GlyphType2.HINDI_CONSONANTS=54]="HINDI_CONSONANTS",GlyphType2[GlyphType2.HINDI_NUMBERS=55]="HINDI_NUMBERS",GlyphType2[GlyphType2.HINDI_COUNTING=56]="HINDI_COUNTING",GlyphType2[GlyphType2.THAI_LETTERS=57]="THAI_LETTERS",GlyphType2[GlyphType2.THAI_NUMBERS=58]="THAI_NUMBERS",GlyphType2[GlyphType2.THAI_COUNTING=59]="THAI_COUNTING",GlyphType2[GlyphType2.CUSTOM=60]="CUSTOM",GlyphType2))(GlyphType||{}),BulletAlignment=(BulletAlignment2=>(BulletAlignment2[BulletAlignment2.BULLET_ALIGNMENT_UNSPECIFIED=0]="BULLET_ALIGNMENT_UNSPECIFIED",BulletAlignment2[BulletAlignment2.START=1]="START",BulletAlignment2[BulletAlignment2.CENTER=2]="CENTER",BulletAlignment2[BulletAlignment2.END=3]="END",BulletAlignment2[BulletAlignment2.BOTH=4]="BOTH",BulletAlignment2))(BulletAlignment||{}),CustomRangeType=(CustomRangeType2=>(CustomRangeType2[CustomRangeType2.HYPERLINK=0]="HYPERLINK",CustomRangeType2[CustomRangeType2.FIELD=1]="FIELD",CustomRangeType2[CustomRangeType2.SDT=2]="SDT",CustomRangeType2[CustomRangeType2.BOOKMARK=3]="BOOKMARK",CustomRangeType2[CustomRangeType2.COMMENT=4]="COMMENT",CustomRangeType2[CustomRangeType2.CUSTOM=5]="CUSTOM",CustomRangeType2[CustomRangeType2.MENTION=6]="MENTION",CustomRangeType2[CustomRangeType2.UNI_FORMULA=7]="UNI_FORMULA",CustomRangeType2))(CustomRangeType||{}),CustomDecorationType=(CustomDecorationType2=>(CustomDecorationType2[CustomDecorationType2.COMMENT=0]="COMMENT",CustomDecorationType2))(CustomDecorationType||{}),BlockType=(BlockType2=>(BlockType2[BlockType2.DRAWING=0]="DRAWING",BlockType2[BlockType2.CUSTOM=1]="CUSTOM",BlockType2))(BlockType||{}),DocumentFlavor=(DocumentFlavor2=>(DocumentFlavor2[DocumentFlavor2.TRADITIONAL=0]="TRADITIONAL",DocumentFlavor2[DocumentFlavor2.MODERN=1]="MODERN",DocumentFlavor2))(DocumentFlavor||{}),GridType=(GridType2=>(GridType2[GridType2.DEFAULT=0]="DEFAULT",GridType2[GridType2.LINES=1]="LINES",GridType2[GridType2.LINES_AND_CHARS=2]="LINES_AND_CHARS",GridType2[GridType2.SNAP_TO_CHARS=3]="SNAP_TO_CHARS",GridType2))(GridType||{}),SectionType=(SectionType2=>(SectionType2[SectionType2.SECTION_TYPE_UNSPECIFIED=0]="SECTION_TYPE_UNSPECIFIED",SectionType2[SectionType2.CONTINUOUS=1]="CONTINUOUS",SectionType2[SectionType2.NEXT_PAGE=2]="NEXT_PAGE",SectionType2[SectionType2.EVEN_PAGE=3]="EVEN_PAGE",SectionType2[SectionType2.ODD_PAGE=4]="ODD_PAGE",SectionType2))(SectionType||{}),ColumnSeparatorType=(ColumnSeparatorType2=>(ColumnSeparatorType2[ColumnSeparatorType2.COLUMN_SEPARATOR_STYLE_UNSPECIFIED=0]="COLUMN_SEPARATOR_STYLE_UNSPECIFIED",ColumnSeparatorType2[ColumnSeparatorType2.NONE=1]="NONE",ColumnSeparatorType2[ColumnSeparatorType2.BETWEEN_EACH_COLUMN=2]="BETWEEN_EACH_COLUMN",ColumnSeparatorType2))(ColumnSeparatorType||{}),TextDirectionType=(TextDirectionType2=>(TextDirectionType2[TextDirectionType2.NORMAL=0]="NORMAL",TextDirectionType2[TextDirectionType2.TBRL=1]="TBRL",TextDirectionType2[TextDirectionType2.LRTBV=2]="LRTBV",TextDirectionType2))(TextDirectionType||{}),ParagraphElementType=(ParagraphElementType2=>(ParagraphElementType2[ParagraphElementType2.TEXT_RUN=0]="TEXT_RUN",ParagraphElementType2[ParagraphElementType2.AUTO_TEXT=1]="AUTO_TEXT",ParagraphElementType2[ParagraphElementType2.PAGE_BREAK=2]="PAGE_BREAK",ParagraphElementType2[ParagraphElementType2.COLUMN_BREAK=3]="COLUMN_BREAK",ParagraphElementType2[ParagraphElementType2.FOOT_NOTE_REFERENCE=4]="FOOT_NOTE_REFERENCE",ParagraphElementType2[ParagraphElementType2.HORIZONTAL_RULE=5]="HORIZONTAL_RULE",ParagraphElementType2[ParagraphElementType2.EQUATION=6]="EQUATION",ParagraphElementType2[ParagraphElementType2.DRAWING=7]="DRAWING",ParagraphElementType2[ParagraphElementType2.PERSON=8]="PERSON",ParagraphElementType2[ParagraphElementType2.RICH_LINK=9]="RICH_LINK",ParagraphElementType2))(ParagraphElementType||{}),WrapTextType=(WrapTextType2=>(WrapTextType2[WrapTextType2.BOTH_SIDES=0]="BOTH_SIDES",WrapTextType2[WrapTextType2.LEFT=1]="LEFT",WrapTextType2[WrapTextType2.RIGHT=2]="RIGHT",WrapTextType2[WrapTextType2.LARGEST=3]="LARGEST",WrapTextType2))(WrapTextType||{}),PositionedObjectLayoutType=(PositionedObjectLayoutType2=>(PositionedObjectLayoutType2[PositionedObjectLayoutType2.INLINE=0]="INLINE",PositionedObjectLayoutType2[PositionedObjectLayoutType2.WRAP_NONE=1]="WRAP_NONE",PositionedObjectLayoutType2[PositionedObjectLayoutType2.WRAP_POLYGON=2]="WRAP_POLYGON",PositionedObjectLayoutType2[PositionedObjectLayoutType2.WRAP_SQUARE=3]="WRAP_SQUARE",PositionedObjectLayoutType2[PositionedObjectLayoutType2.WRAP_THROUGH=4]="WRAP_THROUGH",PositionedObjectLayoutType2[PositionedObjectLayoutType2.WRAP_TIGHT=5]="WRAP_TIGHT",PositionedObjectLayoutType2[PositionedObjectLayoutType2.WRAP_TOP_AND_BOTTOM=6]="WRAP_TOP_AND_BOTTOM",PositionedObjectLayoutType2))(PositionedObjectLayoutType||{}),NamedStyleType=(NamedStyleType2=>(NamedStyleType2[NamedStyleType2.NAMED_STYLE_TYPE_UNSPECIFIED=0]="NAMED_STYLE_TYPE_UNSPECIFIED",NamedStyleType2[NamedStyleType2.NORMAL_TEXT=1]="NORMAL_TEXT",NamedStyleType2[NamedStyleType2.TITLE=2]="TITLE",NamedStyleType2[NamedStyleType2.SUBTITLE=3]="SUBTITLE",NamedStyleType2[NamedStyleType2.HEADING_1=4]="HEADING_1",NamedStyleType2[NamedStyleType2.HEADING_2=5]="HEADING_2",NamedStyleType2[NamedStyleType2.HEADING_3=6]="HEADING_3",NamedStyleType2[NamedStyleType2.HEADING_4=7]="HEADING_4",NamedStyleType2[NamedStyleType2.HEADING_5=8]="HEADING_5",NamedStyleType2[NamedStyleType2.HEADING_6=9]="HEADING_6",NamedStyleType2))(NamedStyleType||{}),SpacingRule=(SpacingRule2=>(SpacingRule2[SpacingRule2.AUTO=0]="AUTO",SpacingRule2[SpacingRule2.AT_LEAST=1]="AT_LEAST",SpacingRule2[SpacingRule2.EXACT=2]="EXACT",SpacingRule2))(SpacingRule||{}),DashStyleType=(DashStyleType2=>(DashStyleType2[DashStyleType2.DASH_STYLE_UNSPECIFIED=0]="DASH_STYLE_UNSPECIFIED",DashStyleType2[DashStyleType2.SOLID=1]="SOLID",DashStyleType2[DashStyleType2.DOT=2]="DOT",DashStyleType2[DashStyleType2.DASH=3]="DASH",DashStyleType2))(DashStyleType||{}),TabStopAlignment=(TabStopAlignment2=>(TabStopAlignment2[TabStopAlignment2.TAB_STOP_ALIGNMENT_UNSPECIFIED=0]="TAB_STOP_ALIGNMENT_UNSPECIFIED",TabStopAlignment2[TabStopAlignment2.START=1]="START",TabStopAlignment2[TabStopAlignment2.CENTER=2]="CENTER",TabStopAlignment2[TabStopAlignment2.END=3]="END",TabStopAlignment2))(TabStopAlignment||{}),TableSizeType=(TableSizeType2=>(TableSizeType2[TableSizeType2.UNSPECIFIED=0]="UNSPECIFIED",TableSizeType2[TableSizeType2.SPECIFIED=1]="SPECIFIED",TableSizeType2))(TableSizeType||{}),TableAlignmentType=(TableAlignmentType2=>(TableAlignmentType2[TableAlignmentType2.START=0]="START",TableAlignmentType2[TableAlignmentType2.CENTER=1]="CENTER",TableAlignmentType2[TableAlignmentType2.END=2]="END",TableAlignmentType2))(TableAlignmentType||{}),TableLayoutType=(TableLayoutType2=>(TableLayoutType2[TableLayoutType2.AUTO_FIT=0]="AUTO_FIT",TableLayoutType2[TableLayoutType2.FIXED=1]="FIXED",TableLayoutType2))(TableLayoutType||{}),TableTextWrapType=(TableTextWrapType2=>(TableTextWrapType2[TableTextWrapType2.NONE=0]="NONE",TableTextWrapType2[TableTextWrapType2.WRAP=1]="WRAP",TableTextWrapType2))(TableTextWrapType||{}),TableCellHeightRule=(TableCellHeightRule2=>(TableCellHeightRule2[TableCellHeightRule2.AUTO=0]="AUTO",TableCellHeightRule2[TableCellHeightRule2.AT_LEAST=1]="AT_LEAST",TableCellHeightRule2[TableCellHeightRule2.EXACT=2]="EXACT",TableCellHeightRule2))(TableCellHeightRule||{}),VerticalAlignmentType=(VerticalAlignmentType2=>(VerticalAlignmentType2[VerticalAlignmentType2.CONTENT_ALIGNMENT_UNSPECIFIED=0]="CONTENT_ALIGNMENT_UNSPECIFIED",VerticalAlignmentType2[VerticalAlignmentType2.BOTH=1]="BOTH",VerticalAlignmentType2[VerticalAlignmentType2.TOP=2]="TOP",VerticalAlignmentType2[VerticalAlignmentType2.CENTER=3]="CENTER",VerticalAlignmentType2[VerticalAlignmentType2.BOTTOM=4]="BOTTOM",VerticalAlignmentType2))(VerticalAlignmentType||{}),FontStyleType=(FontStyleType2=>(FontStyleType2.NORMAL="normal",FontStyleType2.BOLD="bold",FontStyleType2.ITALIC="italic",FontStyleType2))(FontStyleType||{}),ObjectRelativeFromH=(ObjectRelativeFromH2=>(ObjectRelativeFromH2[ObjectRelativeFromH2.PAGE=0]="PAGE",ObjectRelativeFromH2[ObjectRelativeFromH2.COLUMN=1]="COLUMN",ObjectRelativeFromH2[ObjectRelativeFromH2.CHARACTER=2]="CHARACTER",ObjectRelativeFromH2[ObjectRelativeFromH2.MARGIN=3]="MARGIN",ObjectRelativeFromH2[ObjectRelativeFromH2.INSIDE_MARGIN=4]="INSIDE_MARGIN",ObjectRelativeFromH2[ObjectRelativeFromH2.OUTSIDE_MARGIN=5]="OUTSIDE_MARGIN",ObjectRelativeFromH2[ObjectRelativeFromH2.LEFT_MARGIN=6]="LEFT_MARGIN",ObjectRelativeFromH2[ObjectRelativeFromH2.RIGHT_MARGIN=7]="RIGHT_MARGIN",ObjectRelativeFromH2))(ObjectRelativeFromH||{}),ObjectRelativeFromV=(ObjectRelativeFromV2=>(ObjectRelativeFromV2[ObjectRelativeFromV2.PAGE=0]="PAGE",ObjectRelativeFromV2[ObjectRelativeFromV2.PARAGRAPH=1]="PARAGRAPH",ObjectRelativeFromV2[ObjectRelativeFromV2.LINE=2]="LINE",ObjectRelativeFromV2[ObjectRelativeFromV2.MARGIN=3]="MARGIN",ObjectRelativeFromV2[ObjectRelativeFromV2.TOP_MARGIN=4]="TOP_MARGIN",ObjectRelativeFromV2[ObjectRelativeFromV2.BOTTOM_MARGIN=5]="BOTTOM_MARGIN",ObjectRelativeFromV2[ObjectRelativeFromV2.INSIDE_MARGIN=6]="INSIDE_MARGIN",ObjectRelativeFromV2[ObjectRelativeFromV2.OUTSIDE_MARGIN=7]="OUTSIDE_MARGIN",ObjectRelativeFromV2))(ObjectRelativeFromV||{}),NumberUnitType=(NumberUnitType2=>(NumberUnitType2[NumberUnitType2.POINT=0]="POINT",NumberUnitType2[NumberUnitType2.LINE=1]="LINE",NumberUnitType2[NumberUnitType2.CHARACTER=2]="CHARACTER",NumberUnitType2[NumberUnitType2.PIXEL=3]="PIXEL",NumberUnitType2[NumberUnitType2.PERCENT=4]="PERCENT",NumberUnitType2))(NumberUnitType||{}),AlignTypeH=(AlignTypeH2=>(AlignTypeH2[AlignTypeH2.CENTER=0]="CENTER",AlignTypeH2[AlignTypeH2.INSIDE=1]="INSIDE",AlignTypeH2[AlignTypeH2.LEFT=2]="LEFT",AlignTypeH2[AlignTypeH2.OUTSIDE=3]="OUTSIDE",AlignTypeH2[AlignTypeH2.RIGHT=4]="RIGHT",AlignTypeH2[AlignTypeH2.BOTH=5]="BOTH",AlignTypeH2[AlignTypeH2.DISTRIBUTE=6]="DISTRIBUTE",AlignTypeH2))(AlignTypeH||{}),AlignTypeV=(AlignTypeV2=>(AlignTypeV2[AlignTypeV2.BOTTOM=0]="BOTTOM",AlignTypeV2[AlignTypeV2.CENTER=1]="CENTER",AlignTypeV2[AlignTypeV2.INSIDE=2]="INSIDE",AlignTypeV2[AlignTypeV2.OUTSIDE=3]="OUTSIDE",AlignTypeV2[AlignTypeV2.TOP=4]="TOP",AlignTypeV2))(AlignTypeV||{}),characterSpacingControlType=(characterSpacingControlType2=>(characterSpacingControlType2[characterSpacingControlType2.compressPunctuation=0]="compressPunctuation",characterSpacingControlType2[characterSpacingControlType2.compressPunctuationAndJapaneseKana=1]="compressPunctuationAndJapaneseKana",characterSpacingControlType2[characterSpacingControlType2.doNotCompress=2]="doNotCompress",characterSpacingControlType2))(characterSpacingControlType||{}),PageOrientType=(PageOrientType2=>(PageOrientType2[PageOrientType2.PORTRAIT=0]="PORTRAIT",PageOrientType2[PageOrientType2.LANDSCAPE=1]="LANDSCAPE",PageOrientType2))(PageOrientType||{}),ArrangeTypeEnum=(ArrangeTypeEnum2=>(ArrangeTypeEnum2[ArrangeTypeEnum2.forward=0]="forward",ArrangeTypeEnum2[ArrangeTypeEnum2.backward=1]="backward",ArrangeTypeEnum2[ArrangeTypeEnum2.front=2]="front",ArrangeTypeEnum2[ArrangeTypeEnum2.back=3]="back",ArrangeTypeEnum2))(ArrangeTypeEnum||{}),DrawingTypeEnum=(DrawingTypeEnum2=>(DrawingTypeEnum2[DrawingTypeEnum2.UNRECOGNIZED=-1]="UNRECOGNIZED",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_IMAGE=0]="DRAWING_IMAGE",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_SHAPE=1]="DRAWING_SHAPE",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_CHART=2]="DRAWING_CHART",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_TABLE=3]="DRAWING_TABLE",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_SMART_ART=4]="DRAWING_SMART_ART",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_VIDEO=5]="DRAWING_VIDEO",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_GROUP=6]="DRAWING_GROUP",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_UNIT=7]="DRAWING_UNIT",DrawingTypeEnum2[DrawingTypeEnum2.DRAWING_DOM=8]="DRAWING_DOM",DrawingTypeEnum2))(DrawingTypeEnum||{}),RANGE_TYPE=(RANGE_TYPE2=>(RANGE_TYPE2[RANGE_TYPE2.NORMAL=0]="NORMAL",RANGE_TYPE2[RANGE_TYPE2.ROW=1]="ROW",RANGE_TYPE2[RANGE_TYPE2.COLUMN=2]="COLUMN",RANGE_TYPE2[RANGE_TYPE2.ALL=3]="ALL",RANGE_TYPE2))(RANGE_TYPE||{}),AbsoluteRefType=(AbsoluteRefType2=>(AbsoluteRefType2[AbsoluteRefType2.NONE=0]="NONE",AbsoluteRefType2[AbsoluteRefType2.ROW=1]="ROW",AbsoluteRefType2[AbsoluteRefType2.COLUMN=2]="COLUMN",AbsoluteRefType2[AbsoluteRefType2.ALL=3]="ALL",AbsoluteRefType2))(AbsoluteRefType||{});function selectionToArray(range){return[range.startRow,range.startColumn,range.endRow,range.endColumn]}__name(selectionToArray,"selectionToArray");function getCellInfoInMergeData(row,column,mergeData){let isMerged=!1,isMergedMainCell=!1,newEndRow=row,newEndColumn=column,mergeRow=row,mergeColumn=column;if(mergeData==null)return{actualRow:row,actualColumn:column,isMergedMainCell,isMerged,endRow:newEndRow,endColumn:newEndColumn,startRow:mergeRow,startColumn:mergeColumn};for(let i=0;i<mergeData.length;i++){const{startRow:startRowMarge,endRow:endRowMarge,startColumn:startColumnMarge,endColumn:endColumnMarge}=mergeData[i];if(row===startRowMarge&&column===startColumnMarge){newEndRow=endRowMarge,newEndColumn=endColumnMarge,mergeRow=startRowMarge,mergeColumn=startColumnMarge,isMergedMainCell=!0;break}if(row>=startRowMarge&&row<=endRowMarge&&column>=startColumnMarge&&column<=endColumnMarge){newEndRow=endRowMarge,newEndColumn=endColumnMarge,mergeRow=startRowMarge,mergeColumn=startColumnMarge,isMerged=!0;break}}return{actualRow:row,actualColumn:column,isMergedMainCell,isMerged,endRow:newEndRow,endColumn:newEndColumn,startRow:mergeRow,startColumn:mergeColumn}}__name(getCellInfoInMergeData,"getCellInfoInMergeData");var PageType=(PageType2=>(PageType2[PageType2.SLIDE=0]="SLIDE",PageType2[PageType2.MASTER=1]="MASTER",PageType2[PageType2.LAYOUT=2]="LAYOUT",PageType2[PageType2.HANDOUT_MASTER=3]="HANDOUT_MASTER",PageType2[PageType2.NOTES_MASTER=4]="NOTES_MASTER",PageType2))(PageType||{}),PageElementType=(PageElementType2=>(PageElementType2[PageElementType2.SHAPE=0]="SHAPE",PageElementType2[PageElementType2.IMAGE=1]="IMAGE",PageElementType2[PageElementType2.TEXT=2]="TEXT",PageElementType2[PageElementType2.SPREADSHEET=3]="SPREADSHEET",PageElementType2[PageElementType2.DOCUMENT=4]="DOCUMENT",PageElementType2[PageElementType2.SLIDE=5]="SLIDE",PageElementType2))(PageElementType||{}),RelativeSlideLink=(RelativeSlideLink2=>(RelativeSlideLink2[RelativeSlideLink2.RELATIVE_SLIDE_LINK_UNSPECIFIED=0]="RELATIVE_SLIDE_LINK_UNSPECIFIED",RelativeSlideLink2[RelativeSlideLink2.NEXT_SLIDE=1]="NEXT_SLIDE",RelativeSlideLink2[RelativeSlideLink2.PREVIOUS_SLIDE=2]="PREVIOUS_SLIDE",RelativeSlideLink2[RelativeSlideLink2.FIRST_SLIDE=3]="FIRST_SLIDE",RelativeSlideLink2[RelativeSlideLink2.LAST_SLIDE=4]="LAST_SLIDE",RelativeSlideLink2))(RelativeSlideLink||{});const urlAlphabet="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";let random=__name(bytes=>crypto.getRandomValues(new Uint8Array(bytes)),"random"),customRandom=__name((alphabet,defaultSize,getRandom)=>{let mask=(2<<Math.log(alphabet.length-1)/Math.LN2)-1,step=-~(1.6*mask*defaultSize/alphabet.length);return(size=defaultSize)=>{let id="";for(;;){let bytes=getRandom(step),j=step;for(;j--;)if(id+=alphabet[bytes[j]&mask]||"",id.length===size)return id}}},"customRandom"),customAlphabet=__name((alphabet,size=21)=>customRandom(alphabet,size,random),"customAlphabet"),nanoid=__name((size=21)=>{let id="",bytes=crypto.getRandomValues(new Uint8Array(size));for(;size--;)id+=urlAlphabet[bytes[size]&63];return id},"nanoid");var commonjsGlobal=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function getDefaultExportFromCjs(x){return x&&x.__esModule&&Object.prototype.hasOwnProperty.call(x,"default")?x.default:x}__name(getDefaultExportFromCjs,"getDefaultExportFromCjs");var lodash_mergewith={exports:{}};lodash_mergewith.exports,function(module2,exports3){var LARGE_ARRAY_SIZE=200,HASH_UNDEFINED="__lodash_hash_undefined__",HOT_COUNT=800,HOT_SPAN=16,MAX_SAFE_INTEGER=9007199254740991,argsTag="[object Arguments]",arrayTag="[object Array]",asyncTag="[object AsyncFunction]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",genTag="[object GeneratorFunction]",mapTag="[object Map]",numberTag="[object Number]",nullTag="[object Null]",objectTag="[object Object]",proxyTag="[object Proxy]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",undefinedTag="[object Undefined]",weakMapTag="[object WeakMap]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",float32Tag="[object Float32Array]",float64Tag="[object Float64Array]",int8Tag="[object Int8Array]",int16Tag="[object Int16Array]",int32Tag="[object Int32Array]",uint8Tag="[object Uint8Array]",uint8ClampedTag="[object Uint8ClampedArray]",uint16Tag="[object Uint16Array]",uint32Tag="[object Uint32Array]",reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,reIsUint=/^(?:0|[1-9]\d*)$/,typedArrayTags={};typedArrayTags[float32Tag]=typedArrayTags[float64Tag]=typedArrayTags[int8Tag]=typedArrayTags[int16Tag]=typedArrayTags[int32Tag]=typedArrayTags[uint8Tag]=typedArrayTags[uint8ClampedTag]=typedArrayTags[uint16Tag]=typedArrayTags[uint32Tag]=!0,typedArrayTags[argsTag]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag]=typedArrayTags[boolTag]=typedArrayTags[dataViewTag]=typedArrayTags[dateTag]=typedArrayTags[errorTag]=typedArrayTags[funcTag]=typedArrayTags[mapTag]=typedArrayTags[numberTag]=typedArrayTags[objectTag]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;var freeGlobal=typeof commonjsGlobal=="object"&&commonjsGlobal&&commonjsGlobal.Object===Object&&commonjsGlobal,freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),freeExports=exports3&&!exports3.nodeType&&exports3,freeModule=freeExports&&!0&&module2&&!module2.nodeType&&module2,moduleExports=freeModule&&freeModule.exports===freeExports,freeProcess=moduleExports&&freeGlobal.process,nodeUtil=function(){try{var types2=freeModule&&freeModule.require&&freeModule.require("util").types;return types2||freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch{}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray;function apply(func,thisArg,args){switch(args.length){case 0:return func.call(thisArg);case 1:return func.call(thisArg,args[0]);case 2:return func.call(thisArg,args[0],args[1]);case 3:return func.call(thisArg,args[0],args[1],args[2])}return func.apply(thisArg,args)}__name(apply,"apply");function baseTimes(n,iteratee){for(var index2=-1,result=Array(n);++index2<n;)result[index2]=iteratee(index2);return result}__name(baseTimes,"baseTimes");function baseUnary(func){return function(value){return func(value)}}__name(baseUnary,"baseUnary");function getValue(object,key){return object==null?void 0:object[key]}__name(getValue,"getValue");function overArg(func,transform){return function(arg){return func(transform(arg))}}__name(overArg,"overArg");var arrayProto=Array.prototype,funcProto=Function.prototype,objectProto=Object.prototype,coreJsData=root["__core-js_shared__"],funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,maskSrcKey=function(){var uid=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return uid?"Symbol(src)_1."+uid:""}(),nativeObjectToString=objectProto.toString,objectCtorString=funcToString.call(Object),reIsNative=RegExp("^"+funcToString.call(hasOwnProperty).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),Buffer2=moduleExports?root.Buffer:void 0,Symbol2=root.Symbol,Uint8Array2=root.Uint8Array;Buffer2&&Buffer2.allocUnsafe;var getPrototype=overArg(Object.getPrototypeOf,Object),objectCreate=Object.create,propertyIsEnumerable=objectProto.propertyIsEnumerable,splice=arrayProto.splice,symToStringTag=Symbol2?Symbol2.toStringTag:void 0,defineProperty=function(){try{var func=getNative(Object,"defineProperty");return func({},"",{}),func}catch{}}(),nativeIsBuffer=Buffer2?Buffer2.isBuffer:void 0,nativeMax=Math.max,nativeNow=Date.now,Map2=getNative(root,"Map"),nativeCreate=getNative(Object,"create"),baseCreate=function(){function object(){}return __name(object,"object"),function(proto){if(!isObject2(proto))return{};if(objectCreate)return objectCreate(proto);object.prototype=proto;var result=new object;return object.prototype=void 0,result}}();function Hash(entries){var index2=-1,length=entries==null?0:entries.length;for(this.clear();++index2<length;){var entry=entries[index2];this.set(entry[0],entry[1])}}__name(Hash,"Hash");function hashClear(){this.__data__=nativeCreate?nativeCreate(null):{},this.size=0}__name(hashClear,"hashClear");function hashDelete(key){var result=this.has(key)&&delete this.__data__[key];return this.size-=result?1:0,result}__name(hashDelete,"hashDelete");function hashGet(key){var data=this.__data__;if(nativeCreate){var result=data[key];return result===HASH_UNDEFINED?void 0:result}return hasOwnProperty.call(data,key)?data[key]:void 0}__name(hashGet,"hashGet");function hashHas(key){var data=this.__data__;return nativeCreate?data[key]!==void 0:hasOwnProperty.call(data,key)}__name(hashHas,"hashHas");function hashSet(key,value){var data=this.__data__;return this.size+=this.has(key)?0:1,data[key]=nativeCreate&&value===void 0?HASH_UNDEFINED:value,this}__name(hashSet,"hashSet"),Hash.prototype.clear=hashClear,Hash.prototype.delete=hashDelete,Hash.prototype.get=hashGet,Hash.prototype.has=hashHas,Hash.prototype.set=hashSet;function ListCache(entries){var index2=-1,length=entries==null?0:entries.length;for(this.clear();++index2<length;){var entry=entries[index2];this.set(entry[0],entry[1])}}__name(ListCache,"ListCache");function listCacheClear(){this.__data__=[],this.size=0}__name(listCacheClear,"listCacheClear");function listCacheDelete(key){var data=this.__data__,index2=assocIndexOf(data,key);if(index2<0)return!1;var lastIndex=data.length-1;return index2==lastIndex?data.pop():splice.call(data,index2,1),--this.size,!0}__name(listCacheDelete,"listCacheDelete");function listCacheGet(key){var data=this.__data__,index2=assocIndexOf(data,key);return index2<0?void 0:data[index2][1]}__name(listCacheGet,"listCacheGet");function listCacheHas(key){return assocIndexOf(this.__data__,key)>-1}__name(listCacheHas,"listCacheHas");function listCacheSet(key,value){var data=this.__data__,index2=assocIndexOf(data,key);return index2<0?(++this.size,data.push([key,value])):data[index2][1]=value,this}__name(listCacheSet,"listCacheSet"),ListCache.prototype.clear=listCacheClear,ListCache.prototype.delete=listCacheDelete,ListCache.prototype.get=listCacheGet,ListCache.prototype.has=listCacheHas,ListCache.prototype.set=listCacheSet;function MapCache(entries){var index2=-1,length=entries==null?0:entries.length;for(this.clear();++index2<length;){var entry=entries[index2];this.set(entry[0],entry[1])}}__name(MapCache,"MapCache");function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(Map2||ListCache),string:new Hash}}__name(mapCacheClear,"mapCacheClear");function mapCacheDelete(key){var result=getMapData(this,key).delete(key);return this.size-=result?1:0,result}__name(mapCacheDelete,"mapCacheDelete");function mapCacheGet(key){return getMapData(this,key).get(key)}__name(mapCacheGet,"mapCacheGet");function mapCacheHas(key){return getMapData(this,key).has(key)}__name(mapCacheHas,"mapCacheHas");function mapCacheSet(key,value){var data=getMapData(this,key),size=data.size;return data.set(key,value),this.size+=data.size==size?0:1,this}__name(mapCacheSet,"mapCacheSet"),MapCache.prototype.clear=mapCacheClear,MapCache.prototype.delete=mapCacheDelete,MapCache.prototype.get=mapCacheGet,MapCache.prototype.has=mapCacheHas,MapCache.prototype.set=mapCacheSet;function Stack(entries){var data=this.__data__=new ListCache(entries);this.size=data.size}__name(Stack,"Stack");function stackClear(){this.__data__=new ListCache,this.size=0}__name(stackClear,"stackClear");function stackDelete(key){var data=this.__data__,result=data.delete(key);return this.size=data.size,result}__name(stackDelete,"stackDelete");function stackGet(key){return this.__data__.get(key)}__name(stackGet,"stackGet");function stackHas(key){return this.__data__.has(key)}__name(stackHas,"stackHas");function stackSet(key,value){var data=this.__data__;if(data instanceof ListCache){var pairs=data.__data__;if(!Map2||pairs.length<LARGE_ARRAY_SIZE-1)return pairs.push([key,value]),this.size=++data.size,this;data=this.__data__=new MapCache(pairs)}return data.set(key,value),this.size=data.size,this}__name(stackSet,"stackSet"),Stack.prototype.clear=stackClear,Stack.prototype.delete=stackDelete,Stack.prototype.get=stackGet,Stack.prototype.has=stackHas,Stack.prototype.set=stackSet;function arrayLikeKeys(value,inherited){var isArr=isArray(value),isArg=!isArr&&isArguments(value),isBuff=!isArr&&!isArg&&isBuffer(value),isType=!isArr&&!isArg&&!isBuff&&isTypedArray(value),skipIndexes=isArr||isArg||isBuff||isType,result=skipIndexes?baseTimes(value.length,String):[],length=result.length;for(var key in value)skipIndexes&&(key=="length"||isBuff&&(key=="offset"||key=="parent")||isType&&(key=="buffer"||key=="byteLength"||key=="byteOffset")||isIndex(key,length))||result.push(key);return result}__name(arrayLikeKeys,"arrayLikeKeys");function assignMergeValue(object,key,value){(value!==void 0&&!eq(object[key],value)||value===void 0&&!(key in object))&&baseAssignValue(object,key,value)}__name(assignMergeValue,"assignMergeValue");function assignValue(object,key,value){var objValue=object[key];(!(hasOwnProperty.call(object,key)&&eq(objValue,value))||value===void 0&&!(key in object))&&baseAssignValue(object,key,value)}__name(assignValue,"assignValue");function assocIndexOf(array,key){for(var length=array.length;length--;)if(eq(array[length][0],key))return length;return-1}__name(assocIndexOf,"assocIndexOf");function baseAssignValue(object,key,value){key=="__proto__"&&defineProperty?defineProperty(object,key,{configurable:!0,enumerable:!0,value,writable:!0}):object[key]=value}__name(baseAssignValue,"baseAssignValue");var baseFor=createBaseFor();function baseGetTag(value){return value==null?value===void 0?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(value)?getRawTag(value):objectToString(value)}__name(baseGetTag,"baseGetTag");function baseIsArguments(value){return isObjectLike(value)&&baseGetTag(value)==argsTag}__name(baseIsArguments,"baseIsArguments");function baseIsNative(value){if(!isObject2(value)||isMasked(value))return!1;var pattern=isFunction2(value)?reIsNative:reIsHostCtor;return pattern.test(toSource(value))}__name(baseIsNative,"baseIsNative");function baseIsTypedArray(value){return isObjectLike(value)&&isLength(value.length)&&!!typedArrayTags[baseGetTag(value)]}__name(baseIsTypedArray,"baseIsTypedArray");function baseKeysIn(object){if(!isObject2(object))return nativeKeysIn(object);var isProto=isPrototype(object),result=[];for(var key in object)key=="constructor"&&(isProto||!hasOwnProperty.call(object,key))||result.push(key);return result}__name(baseKeysIn,"baseKeysIn");function baseMerge(object,source,srcIndex,customizer,stack){object!==source&&baseFor(source,function(srcValue,key){if(stack||(stack=new Stack),isObject2(srcValue))baseMergeDeep(object,source,key,srcIndex,baseMerge,customizer,stack);else{var newValue=customizer?customizer(safeGet(object,key),srcValue,key+"",object,source,stack):void 0;newValue===void 0&&(newValue=srcValue),assignMergeValue(object,key,newValue)}},keysIn)}__name(baseMerge,"baseMerge");function baseMergeDeep(object,source,key,srcIndex,mergeFunc,customizer,stack){var objValue=safeGet(object,key),srcValue=safeGet(source,key),stacked=stack.get(srcValue);if(stacked){assignMergeValue(object,key,stacked);return}var newValue=customizer?customizer(objValue,srcValue,key+"",object,source,stack):void 0,isCommon=newValue===void 0;if(isCommon){var isArr=isArray(srcValue),isBuff=!isArr&&isBuffer(srcValue),isTyped=!isArr&&!isBuff&&isTypedArray(srcValue);newValue=srcValue,isArr||isBuff||isTyped?isArray(objValue)?newValue=objValue:isArrayLikeObject(objValue)?newValue=copyArray(objValue):isBuff?(isCommon=!1,newValue=cloneBuffer(srcValue)):isTyped?(isCommon=!1,newValue=cloneTypedArray(srcValue)):newValue=[]:isPlainObject(srcValue)||isArguments(srcValue)?(newValue=objValue,isArguments(objValue)?newValue=toPlainObject(objValue):(!isObject2(objValue)||isFunction2(objValue))&&(newValue=initCloneObject(srcValue))):isCommon=!1}isCommon&&(stack.set(srcValue,newValue),mergeFunc(newValue,srcValue,srcIndex,customizer,stack),stack.delete(srcValue)),assignMergeValue(object,key,newValue)}__name(baseMergeDeep,"baseMergeDeep");function baseRest(func,start){return setToString(overRest(func,start,identity),func+"")}__name(baseRest,"baseRest");var baseSetToString=defineProperty?function(func,string){return defineProperty(func,"toString",{configurable:!0,enumerable:!1,value:constant(string),writable:!0})}:identity;function cloneBuffer(buffer,isDeep){return buffer.slice()}__name(cloneBuffer,"cloneBuffer");function cloneArrayBuffer(arrayBuffer){var result=new arrayBuffer.constructor(arrayBuffer.byteLength);return new Uint8Array2(result).set(new Uint8Array2(arrayBuffer)),result}__name(cloneArrayBuffer,"cloneArrayBuffer");function cloneTypedArray(typedArray,isDeep){var buffer=cloneArrayBuffer(typedArray.buffer);return new typedArray.constructor(buffer,typedArray.byteOffset,typedArray.length)}__name(cloneTypedArray,"cloneTypedArray");function copyArray(source,array){var index2=-1,length=source.length;for(array||(array=Array(length));++index2<length;)array[index2]=source[index2];return array}__name(copyArray,"copyArray");function copyObject(source,props,object,customizer){var isNew=!object;object||(object={});for(var index2=-1,length=props.length;++index2<length;){var key=props[index2],newValue=void 0;newValue===void 0&&(newValue=source[key]),isNew?baseAssignValue(object,key,newValue):assignValue(object,key,newValue)}return object}__name(copyObject,"copyObject");function createAssigner(assigner){return baseRest(function(object,sources){var index2=-1,length=sources.length,customizer=length>1?sources[length-1]:void 0,guard=length>2?sources[2]:void 0;for(customizer=assigner.length>3&&typeof customizer=="function"?(length--,customizer):void 0,guard&&isIterateeCall(sources[0],sources[1],guard)&&(customizer=length<3?void 0:customizer,length=1),object=Object(object);++index2<length;){var source=sources[index2];source&&assigner(object,source,index2,customizer)}return object})}__name(createAssigner,"createAssigner");function createBaseFor(fromRight){return function(object,iteratee,keysFunc){for(var index2=-1,iterable=Object(object),props=keysFunc(object),length=props.length;length--;){var key=props[++index2];if(iteratee(iterable[key],key,iterable)===!1)break}return object}}__name(createBaseFor,"createBaseFor");function getMapData(map,key){var data=map.__data__;return isKeyable(key)?data[typeof key=="string"?"string":"hash"]:data.map}__name(getMapData,"getMapData");function getNative(object,key){var value=getValue(object,key);return baseIsNative(value)?value:void 0}__name(getNative,"getNative");function getRawTag(value){var isOwn=hasOwnProperty.call(value,symToStringTag),tag=value[symToStringTag];try{value[symToStringTag]=void 0;var unmasked=!0}catch{}var result=nativeObjectToString.call(value);return unmasked&&(isOwn?value[symToStringTag]=tag:delete value[symToStringTag]),result}__name(getRawTag,"getRawTag");function initCloneObject(object){return typeof object.constructor=="function"&&!isPrototype(object)?baseCreate(getPrototype(object)):{}}__name(initCloneObject,"initCloneObject");function isIndex(value,length){var type2=typeof value;return length=length==null?MAX_SAFE_INTEGER:length,!!length&&(type2=="number"||type2!="symbol"&&reIsUint.test(value))&&value>-1&&value%1==0&&value<length}__name(isIndex,"isIndex");function isIterateeCall(value,index2,object){if(!isObject2(object))return!1;var type2=typeof index2;return(type2=="number"?isArrayLike(object)&&isIndex(index2,object.length):type2=="string"&&index2 in object)?eq(object[index2],value):!1}__name(isIterateeCall,"isIterateeCall");function isKeyable(value){var type2=typeof value;return type2=="string"||type2=="number"||type2=="symbol"||type2=="boolean"?value!=="__proto__":value===null}__name(isKeyable,"isKeyable");function isMasked(func){return!!maskSrcKey&&maskSrcKey in func}__name(isMasked,"isMasked");function isPrototype(value){var Ctor=value&&value.constructor,proto=typeof Ctor=="function"&&Ctor.prototype||objectProto;return value===proto}__name(isPrototype,"isPrototype");function nativeKeysIn(object){var result=[];if(object!=null)for(var key in Object(object))result.push(key);return result}__name(nativeKeysIn,"nativeKeysIn");function objectToString(value){return nativeObjectToString.call(value)}__name(objectToString,"objectToString");function overRest(func,start,transform){return start=nativeMax(start===void 0?func.length-1:start,0),function(){for(var args=arguments,index2=-1,length=nativeMax(args.length-start,0),array=Array(length);++index2<length;)array[index2]=args[start+index2];index2=-1;for(var otherArgs=Array(start+1);++index2<start;)otherArgs[index2]=args[index2];return otherArgs[start]=transform(array),apply(func,this,otherArgs)}}__name(overRest,"overRest");function safeGet(object,key){if(!(key==="constructor"&&typeof object[key]=="function")&&key!="__proto__")return object[key]}__name(safeGet,"safeGet");var setToString=shortOut(baseSetToString);function shortOut(func){var count=0,lastCalled=0;return function(){var stamp=nativeNow(),remaining=HOT_SPAN-(stamp-lastCalled);if(lastCalled=stamp,remaining>0){if(++count>=HOT_COUNT)return arguments[0]}else count=0;return func.apply(void 0,arguments)}}__name(shortOut,"shortOut");function toSource(func){if(func!=null){try{return funcToString.call(func)}catch{}try{return func+""}catch{}}return""}__name(toSource,"toSource");function eq(value,other){return value===other||value!==value&&other!==other}__name(eq,"eq");var isArguments=baseIsArguments(function(){return arguments}())?baseIsArguments:function(value){return isObjectLike(value)&&hasOwnProperty.call(value,"callee")&&!propertyIsEnumerable.call(value,"callee")},isArray=Array.isArray;function isArrayLike(value){return value!=null&&isLength(value.length)&&!isFunction2(value)}__name(isArrayLike,"isArrayLike");function isArrayLikeObject(value){return isObjectLike(value)&&isArrayLike(value)}__name(isArrayLikeObject,"isArrayLikeObject");var isBuffer=nativeIsBuffer||stubFalse;function isFunction2(value){if(!isObject2(value))return!1;var tag=baseGetTag(value);return tag==funcTag||tag==genTag||tag==asyncTag||tag==proxyTag}__name(isFunction2,"isFunction");function isLength(value){return typeof value=="number"&&value>-1&&value%1==0&&value<=MAX_SAFE_INTEGER}__name(isLength,"isLength");function isObject2(value){var type2=typeof value;return value!=null&&(type2=="object"||type2=="function")}__name(isObject2,"isObject");function isObjectLike(value){return value!=null&&typeof value=="object"}__name(isObjectLike,"isObjectLike");function isPlainObject(value){if(!isObjectLike(value)||baseGetTag(value)!=objectTag)return!1;var proto=getPrototype(value);if(proto===null)return!0;var Ctor=hasOwnProperty.call(proto,"constructor")&&proto.constructor;return typeof Ctor=="function"&&Ctor instanceof Ctor&&funcToString.call(Ctor)==objectCtorString}__name(isPlainObject,"isPlainObject");var isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray;function toPlainObject(value){return copyObject(value,keysIn(value))}__name(toPlainObject,"toPlainObject");function keysIn(object){return isArrayLike(object)?arrayLikeKeys(object):baseKeysIn(object)}__name(keysIn,"keysIn");var mergeWith2=createAssigner(function(object,source,srcIndex,customizer){baseMerge(object,source,srcIndex,customizer)});function constant(value){return function(){return value}}__name(constant,"constant");function identity(value){return value}__name(identity,"identity");function stubFalse(){return!1}__name(stubFalse,"stubFalse"),module2.exports=mergeWith2}(lodash_mergewith,lodash_mergewith.exports);var lodash_mergewithExports=lodash_mergewith.exports;const mergeWith=getDefaultExportFromCjs(lodash_mergewithExports),topLevelDomainSet=new Set(["ac","ad","ae","aero","af","ag","ai","al","am","ao","aq","ar","arpa","as","asia","at","au","aw","ax","az","ba","bb","bd","be","bf","bg","bh","bi","biz","bj","bm","bn","bo","br","bs","bt","bv","bw","by","bz","ca","cat","cc","cd","cf","cg","ch","ci","ck","cl","cm","cn","co","com","coop","cr","cu","cv","cw","cx","cy","cz","de","dj","dk","dm","do","dz","ec","edu","ee","eg","er","es","et","eu","fi","fj","fk","fm","fo","fr","ga","gb","gd","ge","gf","gg","gh","gi","gl","gm","gn","gov","gp","gq","gr","gs","gt","gu","gw","gy","hk","hm","hn","hr","ht","hu","id","ie","il","im","in","info","int","io","iq","ir","is","it","je","jm","jo","jobs","jp","ke","kg","kh","ki","km","kn","kp","kr","kw","ky","kz","la","lb","lc","li","lk","lr","ls","lt","lu","lv","ly","ma","mc","md","me","mg","mh","mil","mk","ml","mm","mn","mo","mobi","mp","mq","mr","ms","mt","mu","museum","mv","mw","mx","my","mz","na","name","nc","ne","net","nf","ng","ni","nl","no","np","nr","nu","nz","om","onion","org","pa","pe","pf","pg","ph","pk","pl","pm","pn","post","pr","pro","ps","pt","pw","py","qa","re","ro","rs","ru","rw","sa","sb","sc","sd","se","sg","sh","si","sj","sk","sl","sm","sn","so","sr","ss","st","su","sv","sx","sy","sz","tc","td","tel","tf","tg","th","tj","tk","tl","tm","tn","to","tr","tt","tv","tw","tz","ua","ug","uk","us","uy","uz","va","vc","ve","vg","vi","vn","vu","wf","ws","yt","za","zm","zw"]),re_weburl=new RegExp("^(?:(?:(?:https?|ftp):)?\\/\\/)?(?:\\S+(?::\\S*)?@)?(?:(?!(?:10|127)(?:\\.\\d{1,3}){3})(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z0-9\\u00a1-\\uffff][a-z0-9\\u00a1-\\uffff_-]{0,62})?[a-z0-9\\u00a1-\\uffff]\\.)+(?:[a-z\\u00a1-\\uffff]{2,}\\.?))(?::\\d{2,5})?(?:[/?#]\\S*)?$","i");function isLegalUrl(url){if(!Number.isNaN(+url))return!1;if(url.startsWith("http://localhost:3002")||url.startsWith("localhost:3002"))return!0;if(re_weburl.test(url)){if(hasProtocol(url))return!0;try{const topLevelDomain=new URL(normalizeUrl(url)).hostname.split(".").pop();if(topLevelDomain&&topLevelDomainSet.has(topLevelDomain))return!0}catch{return!1}}return!1}__name(isLegalUrl,"isLegalUrl");function hasProtocol(urlString){return/^[a-zA-Z]+:\/\//.test(urlString)}__name(hasProtocol,"hasProtocol");function isEmail(url){return/^[\w-\.]+@([\w-]+\.)+[\w-]{2,4}$/.test(url)}__name(isEmail,"isEmail");function normalizeUrl(urlStr){return hasProtocol(urlStr)?urlStr:isEmail(urlStr)?`mailto://${urlStr}`:`https://${urlStr}`}__name(normalizeUrl,"normalizeUrl");const rmsPrefix=/^-ms-/,rDashAlpha=/-([a-z])/g,alphabets=["A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z"],_Tools=class _Tools{static stringAt(index2){let str="",idx=index2;for(;idx>=alphabets.length;)idx/=alphabets.length,idx-=1,str+=alphabets[idx%alphabets.length];const last=index2%alphabets.length;return str+=alphabets[last],str}static indexAt(code){let ret=0;for(let i=0;i<code.length-1;i+=1){const idx=code.charCodeAt(i)-65,expoNet=code.length-1-i;ret+=alphabets.length**expoNet+alphabets.length*idx}return ret+=code.charCodeAt(code.length-1)-65,ret}static deleteBlank(value){return _Tools.isString(value)?value.replace(/\s/g,""):value}static getSystemType(){const sUserAgent=navigator.userAgent,isWin=navigator.platform==="Win32"||navigator.platform==="Windows",isMac=navigator.platform==="Mac68K"||navigator.platform==="MacPPC"||navigator.platform==="Macintosh"||navigator.platform==="MacIntel";if(isMac)return"Mac";if(navigator.platform==="X11"&&!isWin&&!isMac)return"Unix";if(String(navigator.platform).indexOf("Linux")>-1)return"Linux";if(isWin){if(sUserAgent.indexOf("Windows NT 5.0")>-1||sUserAgent.indexOf("Windows 2000")>-1)return"Windows 2000";if(sUserAgent.indexOf("Windows NT 5.1")>-1||sUserAgent.indexOf("Windows XP")>-1)return"Windows XP";if(sUserAgent.indexOf("Windows NT 5.2")>-1||sUserAgent.indexOf("Windows 2003")>-1)return"Windows 2003";if(sUserAgent.indexOf("Windows NT 6.0")>-1||sUserAgent.indexOf("Windows Vista")>-1)return"Windows Vista";if(sUserAgent.indexOf("Windows NT 6.1")>-1||sUserAgent.indexOf("Windows 7")>-1)return"Windows 7";if(sUserAgent.indexOf("Windows NT 10")>-1||sUserAgent.indexOf("Windows 10")>-1)return"Windows 10";if(sUserAgent.indexOf("Windows NT 11")>-1||sUserAgent.indexOf("Windows 11")>-1)return"Windows 11"}return"Unknown system"}static getBrowserType(){const userAgent=navigator.userAgent,isOpera=userAgent.indexOf("Opera")>-1,isIE=userAgent.indexOf("compatible")>-1&&userAgent.indexOf("MSIE")>-1&&!isOpera,isIE11=userAgent.indexOf("Trident")>-1&&userAgent.indexOf("rv:11.0")>-1,isEdge=userAgent.indexOf("Edge")>-1,isFF=userAgent.indexOf("Firefox")>-1,isSafari=userAgent.indexOf("Safari")>-1&&userAgent.indexOf("Chrome")===-1,isChrome=userAgent.indexOf("Chrome")>-1&&userAgent.indexOf("Safari")>-1;if(isIE){new RegExp("MSIE (\\d+\\.\\d+);").test(userAgent);const fIEVersion=Number.parseFloat(RegExp.$1);return fIEVersion===7?"IE7":fIEVersion===8?"IE8":fIEVersion===9?"IE9":fIEVersion===10?"IE10":"0"}return isFF?"FF":isOpera?"Opera":isSafari?"Safari":isChrome?"Chrome":isEdge?"Edge":isIE11?"IE11":"Unknown browser"}static generateRandomId(n=21,alphabet){return generateRandomId(n,alphabet)}static getClassName(instance){return instance.constructor.name}static deepMerge(target,...sources){sources.forEach(item=>item&&deepItem(item));function deepArray(array,to){array.forEach((value,key)=>{var _a2,_b2;if(_Tools.isArray(value)){const origin=(_a2=to[key])!=null?_a2:[];to[key]=origin,deepArray(value,origin);return}if(_Tools.isObject(value)){const origin=(_b2=to[key])!=null?_b2:{};to[key]=origin,deepObject(value,origin);return}to[key]=value})}__name(deepArray,"deepArray");function deepObject(object,to){Object.keys(object).forEach(key=>{var _a2,_b2;const value=object[key];if(_Tools.isObject(value)){const origin=(_a2=to[key])!=null?_a2:{};to[key]=origin,deepObject(value,origin);return}if(_Tools.isArray(value)){const origin=(_b2=to[key])!=null?_b2:[];to[key]=origin,deepArray(value,origin);return}to[key]=value})}__name(deepObject,"deepObject");function deepItem(item){Object.keys(item).forEach(key=>{var _a2,_b2;const value=item[key];if(_Tools.isArray(value)){const origin=(_a2=target[key])!=null?_a2:[];target[key]=origin,deepArray(value,origin);return}if(_Tools.isObject(value)){const origin=(_b2=target[key])!=null?_b2:{};target[key]=origin,deepObject(value,origin);return}target[key]=value})}return __name(deepItem,"deepItem"),target}static numberFixed(value,digit){return Number(Number(value).toFixed(digit))}static diffValue(one,tow){function diffValue(oneValue,towValue){const oneType=_Tools.getValueType(oneValue),towType=_Tools.getValueType(towValue);return oneType!==towType?!1:_Tools.isArray(oneValue)?diffArrays(oneValue,towValue):_Tools.isObject(oneValue)?diffObject(oneValue,towValue):_Tools.isDate(oneValue)?oneValue.getTime()===towValue.getTime():_Tools.isRegExp(oneValue)?oneValue.toString()===towValue.toString():oneValue===towValue}__name(diffValue,"diffValue");function diffArrays(oneArray,towArray){if(one.length!==tow.length)return!1;for(let i=0,len=oneArray.length;i<len;i++){const oneValue=oneArray[i],towValue=towArray[i];if(!diffValue(oneValue,towValue))return!1}return!0}__name(diffArrays,"diffArrays");function diffObject(oneObject,towObject){const oneKeys=Object.keys(oneObject),towKeys=Object.keys(towObject);if(oneKeys.length!==towKeys.length)return!1;for(const key of oneKeys){if(!towKeys.includes(key))return!1;const oneValue=oneObject[key],towValue=towObject[key];if(!diffValue(oneValue,towValue))return!1}return!0}return __name(diffObject,"diffObject"),diffValue(one,tow)}static deepClone(value){if(!this.isDefine(value))return value;if(this.isRegExp(value))return new RegExp(value);if(this.isDate(value))return new Date(value);if(this.isArray(value)){const clone=[];return value.forEach((item,index2)=>{clone[index2]=_Tools.deepClone(item)}),clone}if(this.isObject(value)){const clone={};return Object.keys(value).forEach(key=>{const item=value[key];clone[key]=_Tools.deepClone(item)}),Object.setPrototypeOf(clone,Object.getPrototypeOf(value)),clone}return value}static getLanguage(){const defaultValue="en-US";return globalThis.navigator&&(navigator.languages&&navigator.languages[0]||navigator.language)||defaultValue}static getValueType(value){return Object.prototype.toString.apply(value)}static isDefine(value){return value!=null}static isBlank(value){return this.isDefine(value)?this.isString(value)?value.trim()==="":!1:!0}static isAssignableFrom(object,clazz){return object instanceof clazz}static isBoolean(value){return this.getValueType(value)==="[object Boolean]"}static isPlainObject(value){return this.isDefine(value)?Object.getPrototypeOf(value)===Object.getPrototypeOf({}):!1}static isFunction(value){return this.getValueType(value)==="[object Function]"}static isDate(value){return this.getValueType(value)==="[object Date]"}static isRegExp(value){return this.getValueType(value)==="[object RegExp]"}static isArray(value){return this.getValueType(value)==="[object Array]"}static isString(value){return this.getValueType(value)==="[object String]"}static isNumber(value){return this.getValueType(value)==="[object Number]"}static isStringNumber(value){return!isNaN(Number.parseFloat(value))&&isFinite(value)}static isObject(value){return this.getValueType(value)==="[object Object]"}static isEmptyObject(value){for(const _key in value)return!1;return!0}static isMobile(){let clientWidth=0,clientHeight=0;return document.body.clientWidth&&(clientWidth=document.body.clientWidth),document.body.clientHeight&&(clientHeight=document.body.clientHeight),this.isAndroid()||this.isIPhone()||this.isTablet()||clientWidth<350&&clientHeight<500}static isTablet(){return/ipad|android|android 3.0|xoom|sch-i800|playbook|tablet|kindle/i.test(navigator.userAgent.toLowerCase())}static isWeChat(){const userAgent=navigator.userAgent.toLowerCase();return String(userAgent.match(/MicroMessenger/i))==="micromessenger"}static isAndroid(){const userAgent=navigator.userAgent;return userAgent.indexOf("Android")>-1||userAgent.indexOf("Linux")>-1}static isIPhone(){return/iPhone/i.test(navigator.userAgent)}static isLegalUrl(url){return isLegalUrl(url)}static normalizeUrl(url){return normalizeUrl(url)}static itCount(count){return callback=>{for(let i=0;i<count;i++)callback&&callback()}}static hasLength(target,length){return _Tools.isDefine(target)?_Tools.isDefine(length)?target.length===length:target.length>0:!1}static capitalize(str){return str.charAt(0).toUpperCase()+str.slice(1)}static fCamelCase(_all,letter){return letter.toUpperCase()}static camelCase(str){return str.replace(rmsPrefix,"ms-").replace(rDashAlpha,this.fCamelCase)}static removeNull(value){return this.isObject(value)&&Object.keys(value).forEach(key=>{const item=value[key];item==null?delete value[key]:_Tools.removeNull(item)}),value}static fillTwoDimensionalArray(rows,columns,value){return new Array(rows).fill(value).map(item=>new Array(columns).fill(value))}static numToWord(x){let s="";for(;x>0;){let m=x%26;m=m===0?m=26:m,s=String.fromCharCode(96+m)+s,x=(x-m)/26}return s.toLocaleUpperCase()}static ABCatNum(a){if(a==null||a.length===0)return Number.NaN;const str=a.toLowerCase().split(""),al=str.length;let numOut=0,charnum=0;for(let i=0;i<al;i++)charnum=str[i].charCodeAt(0)-96,numOut+=charnum*26**(al-i-1);return numOut===0?Number.NaN:numOut-1}static chatAtABC(n){let s="";for(;n>=0;)s=String.fromCharCode(n%26+97)+s,n=Math.floor(n/26)-1;return s.toUpperCase()}static randSort(arr){for(let i=0,len=arr.length;i<len;i++){const rand=Number.parseInt((Math.random()*len).toString()),temp=arr[rand];arr[rand]=arr[i],arr[i]=temp}return arr}static commonExtend(originJson,extendJson){const resultJsonObject={};for(const attr in originJson)resultJsonObject[attr]=originJson[attr];for(const attr in extendJson)extendJson[attr]!=null&&(resultJsonObject[attr]=extendJson[attr]);return resultJsonObject}static commonExtend1(originJson,extendJson){for(const attr in originJson)extendJson[attr]==null&&(extendJson[attr]=originJson[attr]);return extendJson}static arrayToObject(array){const obj={};return array.forEach((row,i)=>{obj[i]={},row.forEach((column,j)=>{obj[i][j]=column})}),obj}static hasIntersectionBetweenTwoRanges(range1Start,range1End,range2Start,range2End){return range1End>=range2Start&&range2End>=range1Start}static isStartValidPosition(name){return/^[A-Za-z_]/.test(name)}static isValidParameter(name){const containsInvalidChars=/[~!@#$%^&*()+=\-{}\[\]\|:;"'<>,?\/ ]+/.test(name),isValidLength=name.length<=255;return!containsInvalidChars&&isValidLength}static set(data,propertyPath,value){const paths=propertyPath.split("."),key=paths.pop();paths.forEach(prop=>{data[prop]||(data[prop]={}),data=data[prop]}),key&&(data[key]=value)}static clamp(value,min,max){return Math.max(min,Math.min(max,value))}static mergeWith(object,source,customizer){return mergeWith(object,source,customizer)}};__name(_Tools,"Tools");let Tools=_Tools;function generateRandomId(n=21,alphabet){return alphabet?customAlphabet(alphabet,n)():nanoid(n)}__name(generateRandomId,"generateRandomId");function makeCellToSelection(cellInfo){const{actualRow,actualColumn,isMerged,isMergedMainCell,mergeInfo}=cellInfo;let{startY,endY,startX,endX}=cellInfo,startRow=actualRow,startColumn=actualColumn,endRow=actualRow,endColumn=actualColumn;if(isMerged&&mergeInfo){const{startRow:mergeStartRow,startColumn:mergeStartColumn,endRow:mergeEndRow,endColumn:mergeEndColumn,startY:mergeStartY,endY:mergeEndY,startX:mergeStartX,endX:mergeEndX}=mergeInfo;startRow=mergeStartRow,startColumn=mergeStartColumn,endRow=mergeEndRow,endColumn=mergeEndColumn,startY=mergeStartY,endY=mergeEndY,startX=mergeStartX,endX=mergeEndX}return isMergedMainCell&&(startY=mergeInfo.startY,endY=mergeInfo.endY,startX=mergeInfo.startX,endX=mergeInfo.endX,endRow=mergeInfo.endRow,endColumn=mergeInfo.endColumn),{startRow,startColumn,endRow,endColumn,startY,endY,startX,endX}}__name(makeCellToSelection,"makeCellToSelection");function makeCellRangeToRangeData(cellInfo){if(!cellInfo)return;const{actualRow,actualColumn,isMerged,isMergedMainCell,startRow:mergeStartRow,startColumn:mergeStartColumn,endRow:mergeEndRow,endColumn:mergeEndColumn}=cellInfo;let startRow=actualRow,startColumn=actualColumn,endRow=actualRow,endColumn=actualColumn;return(isMerged||isMergedMainCell)&&(startRow=mergeStartRow,startColumn=mergeStartColumn,endRow=mergeEndRow,endColumn=mergeEndColumn),{startRow,startColumn,endRow,endColumn}}__name(makeCellRangeToRangeData,"makeCellRangeToRangeData");function isEmptyCell(cell){var _a2;return!cell||(((_a2=cell==null?void 0:cell.v)==null?void 0:_a2.toString())||"").length===0&&!cell.p}__name(isEmptyCell,"isEmptyCell");function isCellCoverable(cell){return isEmptyCell(cell)&&(cell==null?void 0:cell.coverable)!==!1}__name(isCellCoverable,"isCellCoverable");function getColorStyle(color){if(color){if(color.rgb)return color.rgb;if(color.th)return new ColorBuilder().setThemeColor(color.th).asThemeColor().asRgbColor().getCssString()}return null}__name(getColorStyle,"getColorStyle");function isFormulaString(value){return Tools.isString(value)&&value.substring(0,1)==="="&&value.length>1}__name(isFormulaString,"isFormulaString");function isFormulaId(value){return Tools.isString(value)&&value.length>0}__name(isFormulaId,"isFormulaId");function handleStyleToString(style,isCell=!1){var _a2;let str="";const styleMap=new Map([["ff",()=>{style.ff&&(str+=`font-family: ${style.ff}; `)}],["fs",()=>{if(style.fs){let fs=style.fs;style.va&&(fs/=2),str+=`font-size: ${fs}pt; `}}],["it",()=>{style.it&&(str+="font-style: italic; ")}],["bl",()=>{style.bl&&(str+="font-weight: bold; ")}],["ul",()=>{var _a3;(_a3=style.ul)!=null&&_a3.s&&(str.indexOf("text-decoration-line")>-1?str=str.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(_,p1)=>`${p1} underline`):str+="text-decoration: underline; ",style.ul.cl&&str.indexOf("text-decoration-color")===-1&&(str+=`text-decoration-color: ${getColorStyle(style.ul.cl)}; `),style.ul.t&&str.indexOf("text-decoration-style")===-1&&(str+=`text-decoration-style: ${style.ul.t} `))}],["st",()=>{var _a3;(_a3=style.st)!=null&&_a3.s&&(str.indexOf("text-decoration-line")>-1?str=str.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(_,p1)=>`${p1} line-through`):str+="text-decoration-line: line-through; ",style.st.cl&&str.indexOf("text-decoration-color")===-1&&(str+=`text-decoration-color: ${getColorStyle(style.st.cl)}; `),style.st.t&&str.indexOf("text-decoration-style")===-1&&(str+=`text-decoration-style: ${style.st.t} `))}],["ol",()=>{var _a3;(_a3=style.ol)!=null&&_a3.s&&(str.indexOf("text-decoration-line")>-1?str=str.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(_,p1)=>`${p1} overline`):str+="text-decoration-line: overline; ",style.ol.cl&&str.indexOf("text-decoration-color")===-1&&(str+=`text-decoration-color: ${getColorStyle(style.ol.cl)}; `),style.ol.t&&str.indexOf("text-decoration-style")===-1&&(str+=`text-decoration-style: ${style.ol.t} `))}],["bg",()=>{style.bg&&(str+=`background: ${getColorStyle(style.bg)}; `)}],["bd",()=>{var _a3,_b2,_c2,_d2,_e2,_f2,_g2,_h2,_i2,_j2,_k2,_l2;(_a3=style.bd)!=null&&_a3.b&&(str+=`border-bottom: ${getBorderStyle((_b2=style.bd)==null?void 0:_b2.b.s)} ${(_c2=getColorStyle(style.bd.b.cl))!=null?_c2:""}; `),(_d2=style.bd)!=null&&_d2.t&&(str+=`border-top: ${getBorderStyle((_e2=style.bd)==null?void 0:_e2.t.s)} ${(_f2=getColorStyle(style.bd.t.cl))!=null?_f2:""}; `),(_g2=style.bd)!=null&&_g2.r&&(str+=`border-right: ${getBorderStyle((_h2=style.bd)==null?void 0:_h2.r.s)} ${(_i2=getColorStyle(style.bd.r.cl))!=null?_i2:""}; `),(_j2=style.bd)!=null&&_j2.l&&(str+=`border-left: ${getBorderStyle((_k2=style.bd)==null?void 0:_k2.l.s)} ${(_l2=getColorStyle(style.bd.l.cl))!=null?_l2:""}; `)}],["cl",()=>{style.cl&&(str+=`color: ${getColorStyle(style.cl)}; `)}],["va",()=>{style.va===BaselineOffset.SUBSCRIPT?str+="vertical-align: sub; ":style.va===BaselineOffset.SUPERSCRIPT&&(str+="vertical-align: super; ")}],["td",()=>{style.td===TextDirection.LEFT_TO_RIGHT?str+="direction: ltr; ":style.td===TextDirection.RIGHT_TO_LEFT&&(str+="direction: rtl; ")}],["tr",()=>{var _a3,_b2,_c2;style.tr&&(str+=`--data-rotate: (${(_a3=style.tr)==null?void 0:_a3.a}deg${(_b2=style.tr)!=null&&_b2.v?` ,${(_c2=style.tr)==null?void 0:_c2.v}`:""});`)}],["ht",()=>{style.ht===HorizontalAlign.LEFT?str+="text-align: left; ":style.ht===HorizontalAlign.RIGHT?str+="text-align: right; ":style.ht===HorizontalAlign.CENTER?str+="text-align: center; ":style.ht===HorizontalAlign.JUSTIFIED&&(str+="text-align: justify; ")}],["vt",()=>{style.vt===VerticalAlign.BOTTOM?str+="vertical-align: bottom; ":style.vt===VerticalAlign.TOP?str+="vertical-align: top; ":style.vt===VerticalAlign.MIDDLE&&(str+="vertical-align: middle; ")}],["tb",()=>{style.tb===WrapStrategy.CLIP?str+="white-space: nowrap; overflow-x: hidden; ":style.tb===WrapStrategy.WRAP&&(str+="white-space: normal;")}],["pd",()=>{var _a3,_b2,_c2,_d2,_e2,_f2,_g2,_h2;const b=`${(_a3=style.pd)==null?void 0:_a3.b}pt`,t=`${(_b2=style.pd)==null?void 0:_b2.t}pt`,l2=`${(_c2=style.pd)==null?void 0:_c2.l}pt`,r=`${(_d2=style.pd)==null?void 0:_d2.r}pt`;(_e2=style.pd)!=null&&_e2.b&&(str+=`padding-bottom: ${b}; `),(_f2=style.pd)!=null&&_f2.t&&(str+=`padding-top: ${t}; `),(_g2=style.pd)!=null&&_g2.l&&(str+=`padding-left: ${l2}; `),(_h2=style.pd)!=null&&_h2.r&&(str+=`padding-right: ${r}; `)}]]),cellSkip=["bd","tr","tb"];for(const k in style)isCell&&cellSkip.includes(k)||(_a2=styleMap.get(k))==null||_a2();return str}__name(handleStyleToString,"handleStyleToString");function getBorderStyle(type2){let str="";return type2===BorderStyleTypes.NONE?str="none":type2===BorderStyleTypes.THIN?str="0.5pt solid":type2===BorderStyleTypes.HAIR?str="0.5pt double":type2===BorderStyleTypes.DOTTED?str="0.5pt dotted":type2===BorderStyleTypes.DASHED||type2===BorderStyleTypes.DASH_DOT?str="0.5pt dashed":type2===BorderStyleTypes.DASH_DOT_DOT?str="0.5pt dotted":type2===BorderStyleTypes.DOUBLE?str="0.5pt double":type2===BorderStyleTypes.MEDIUM?str="1pt solid":type2===BorderStyleTypes.MEDIUM_DASHED||type2===BorderStyleTypes.MEDIUM_DASH_DOT?str="1pt dashed":type2===BorderStyleTypes.MEDIUM_DASH_DOT_DOT?str="1pt dotted":type2===BorderStyleTypes.SLANT_DASH_DOT?str="0.5pt dashed":type2===BorderStyleTypes.THICK&&(str="1.5pt solid"),str}__name(getBorderStyle,"getBorderStyle");function getBorderStyleType(type2){let str=0;if(type2=type2.trim(),type2==="none")str=BorderStyleTypes.NONE;else if(type2==="0.5pt solid")str=BorderStyleTypes.THIN;else if(type2==="0.5pt double")str=BorderStyleTypes.HAIR;else if(type2==="0.5pt dotted")str=BorderStyleTypes.DOTTED;else if(type2==="0.5pt dashed")str=BorderStyleTypes.DASHED;else if(type2==="1pt solid")str=BorderStyleTypes.MEDIUM;else if(type2==="1pt dashed")str=BorderStyleTypes.MEDIUM_DASHED;else if(type2==="1pt dotted")str=BorderStyleTypes.MEDIUM_DASH_DOT_DOT;else if(type2==="1.5pt solid")str=BorderStyleTypes.THICK;else if(!type2.includes("none"))str=BorderStyleTypes.THIN;else return BorderStyleTypes.NONE;return str}__name(getBorderStyleType,"getBorderStyleType");function getDocsUpdateBody(model,segmentId){let body=model.body;if(segmentId){const{headers,footers}=model;headers!=null&&headers[segmentId]?body=headers[segmentId].body:footers!=null&&footers[segmentId]&&(body=footers[segmentId].body)}return body}__name(getDocsUpdateBody,"getDocsUpdateBody");function isValidRange(range){const{startRow,endRow,startColumn,endColumn,rangeType}=range;return!(startRow<0||startColumn<0||endRow<0||endColumn<0||!(Number.isNaN(startRow)&&Number.isNaN(endRow))&&rangeType===RANGE_TYPE.COLUMN||!(Number.isNaN(startColumn)&&Number.isNaN(endColumn))&&rangeType===RANGE_TYPE.ROW||rangeType!==RANGE_TYPE.ROW&&rangeType!==RANGE_TYPE.COLUMN&&(Number.isNaN(startColumn)||Number.isNaN(startRow)||Number.isNaN(endColumn)||Number.isNaN(endRow)))}__name(isValidRange,"isValidRange");function cellToRange(row,col){return{startRow:row,endRow:row,startColumn:col,endColumn:col}}__name(cellToRange,"cellToRange");function deepCompare(arg1,arg2){return Object.prototype.toString.call(arg1)===Object.prototype.toString.call(arg2)?Object.prototype.toString.call(arg1)==="[object Object]"||Object.prototype.toString.call(arg1)==="[object Array]"?Object.keys(arg1).length!==Object.keys(arg2).length?!1:Object.keys(arg1).every(key=>deepCompare(arg1[key],arg2[key])):arg1===arg2:!1}__name(deepCompare,"deepCompare");function isSameStyleTextRun(tr1,tr2){const ts1=tr1.ts||{},ts2=tr2.ts||{};return tr1.sId!==tr2.sId?!1:deepCompare(ts1,ts2)}__name(isSameStyleTextRun,"isSameStyleTextRun");function checkForSubstrings(searchString,substrings){return substrings.some(substring=>searchString.indexOf(substring)>-1)}__name(checkForSubstrings,"checkForSubstrings");function horizontalLineSegmentsSubtraction(A1,A2,B1,B2){if(A1>A2&&([A1,A2]=[A2,A1]),B1>B2&&([B1,B2]=[B2,B1]),A2<B1||B2<A1)return[A1,A2];B1<A1&&(B1=A1),B2>A2&&(B2=A2);const subLength=B2-B1+1;let result=[];return A1===B1?result=[B2+1-subLength,A2-subLength]:A2===B2?result=[A1,B1-1]:result=[A1,A2-subLength],result}__name(horizontalLineSegmentsSubtraction,"horizontalLineSegmentsSubtraction");function checkParagraphHasBullet(paragraph){if(paragraph==null)return!1;const bullet=paragraph.bullet;return(bullet==null?void 0:bullet.listId)!=null}__name(checkParagraphHasBullet,"checkParagraphHasBullet");function checkParagraphHasIndent(paragraph){if(paragraph==null)return!1;const paragraphStyle=paragraph.paragraphStyle;return checkParagraphHasIndentByStyle(paragraphStyle)}__name(checkParagraphHasIndent,"checkParagraphHasIndent");function checkParagraphHasIndentByStyle(paragraphStyle){var _a2;return!(paragraphStyle==null||(paragraphStyle.indentStart==null||paragraphStyle.indentStart.v===0)&&paragraphStyle.hanging==null||((_a2=paragraphStyle.hanging)==null?void 0:_a2.v)===0)}__name(checkParagraphHasIndentByStyle,"checkParagraphHasIndentByStyle");function insertTextToContent(content,start,text){return content.slice(0,start)+text+content.slice(start)}__name(insertTextToContent,"insertTextToContent");function deleteContent(content,start,end){return start>end?content:content.slice(0,start)+content.slice(end)}__name(deleteContent,"deleteContent");function isRealNum(val){return val===null||val.toString().replace(/\s/g,"")===""||typeof val=="boolean"?!1:!isNaN(val)}__name(isRealNum,"isRealNum");function hashAlgorithm(str){let hash=0;for(let i=0;i<str.length;i++)hash=str.charCodeAt(i)+(hash<<6)+(hash<<16)-hash;return hash>>>0}__name(hashAlgorithm,"hashAlgorithm");function __values(o){var s=typeof Symbol=="function"&&Symbol.iterator,m=s&&o[s],i=0;if(m)return m.call(o);if(o&&typeof o.length=="number")return{next:__name(function(){return o&&i>=o.length&&(o=void 0),{value:o&&o[i++],done:!o}},"next")};throw new TypeError(s?"Object is not iterable.":"Symbol.iterator is not defined.")}__name(__values,"__values");function __read(o,n){var m=typeof Symbol=="function"&&o[Symbol.iterator];if(!m)return o;var i=m.call(o),r,ar=[],e;try{for(;(n===void 0||n-- >0)&&!(r=i.next()).done;)ar.push(r.value)}catch(error){e={error}}finally{try{r&&!r.done&&(m=i.return)&&m.call(i)}finally{if(e)throw e.error}}return ar}__name(__read,"__read");function __spreadArray$2(to,from,pack){if(pack||arguments.length===2)for(var i=0,l2=from.length,ar;i<l2;i++)(ar||!(i in from))&&(ar||(ar=Array.prototype.slice.call(from,0,i)),ar[i]=from[i]);return to.concat(ar||Array.prototype.slice.call(from))}__name(__spreadArray$2,"__spreadArray$2"),typeof SuppressedError=="function"&&SuppressedError;function isFunction(value){return typeof value=="function"}__name(isFunction,"isFunction");function createErrorClass(createImpl){var _super=__name(function(instance){Error.call(instance),instance.stack=new Error().stack},"_super"),ctorFunc=createImpl(_super);return ctorFunc.prototype=Object.create(Error.prototype),ctorFunc.prototype.constructor=ctorFunc,ctorFunc}__name(createErrorClass,"createErrorClass");var UnsubscriptionError=createErrorClass(function(_super){return __name(function(errors){_super(this),this.message=errors?errors.length+` errors occurred during unsubscription:
2
+ `+errors.map(function(err,i){return i+1+") "+err.toString()}).join(`
3
+ `):"",this.name="UnsubscriptionError",this.errors=errors},"UnsubscriptionErrorImpl")});function arrRemove(arr,item){if(arr){var index2=arr.indexOf(item);0<=index2&&arr.splice(index2,1)}}__name(arrRemove,"arrRemove");var Subscription=function(){function Subscription2(initialTeardown){this.initialTeardown=initialTeardown,this.closed=!1,this._parentage=null,this._finalizers=null}return __name(Subscription2,"Subscription"),Subscription2.prototype.unsubscribe=function(){var e_1,_a2,e_2,_b2,errors;if(!this.closed){this.closed=!0;var _parentage=this._parentage;if(_parentage)if(this._parentage=null,Array.isArray(_parentage))try{for(var _parentage_1=__values(_parentage),_parentage_1_1=_parentage_1.next();!_parentage_1_1.done;_parentage_1_1=_parentage_1.next()){var parent_1=_parentage_1_1.value;parent_1.remove(this)}}catch(e_1_1){e_1={error:e_1_1}}finally{try{_parentage_1_1&&!_parentage_1_1.done&&(_a2=_parentage_1.return)&&_a2.call(_parentage_1)}finally{if(e_1)throw e_1.error}}else _parentage.remove(this);var initialFinalizer=this.initialTeardown;if(isFunction(initialFinalizer))try{initialFinalizer()}catch(e){errors=e instanceof UnsubscriptionError?e.errors:[e]}var _finalizers=this._finalizers;if(_finalizers){this._finalizers=null;try{for(var _finalizers_1=__values(_finalizers),_finalizers_1_1=_finalizers_1.next();!_finalizers_1_1.done;_finalizers_1_1=_finalizers_1.next()){var finalizer=_finalizers_1_1.value;try{execFinalizer(finalizer)}catch(err){errors=errors!=null?errors:[],err instanceof UnsubscriptionError?errors=__spreadArray$2(__spreadArray$2([],__read(errors)),__read(err.errors)):errors.push(err)}}}catch(e_2_1){e_2={error:e_2_1}}finally{try{_finalizers_1_1&&!_finalizers_1_1.done&&(_b2=_finalizers_1.return)&&_b2.call(_finalizers_1)}finally{if(e_2)throw e_2.error}}}if(errors)throw new UnsubscriptionError(errors)}},Subscription2.prototype.add=function(teardown){var _a2;if(teardown&&teardown!==this)if(this.closed)execFinalizer(teardown);else{if(teardown instanceof Subscription2){if(teardown.closed||teardown._hasParent(this))return;teardown._addParent(this)}(this._finalizers=(_a2=this._finalizers)!==null&&_a2!==void 0?_a2:[]).push(teardown)}},Subscription2.prototype._hasParent=function(parent){var _parentage=this._parentage;return _parentage===parent||Array.isArray(_parentage)&&_parentage.includes(parent)},Subscription2.prototype._addParent=function(parent){var _parentage=this._parentage;this._parentage=Array.isArray(_parentage)?(_parentage.push(parent),_parentage):_parentage?[_parentage,parent]:parent},Subscription2.prototype._removeParent=function(parent){var _parentage=this._parentage;_parentage===parent?this._parentage=null:Array.isArray(_parentage)&&arrRemove(_parentage,parent)},Subscription2.prototype.remove=function(teardown){var _finalizers=this._finalizers;_finalizers&&arrRemove(_finalizers,teardown),teardown instanceof Subscription2&&teardown._removeParent(this)},Subscription2.EMPTY=function(){var empty=new Subscription2;return empty.closed=!0,empty}(),Subscription2}();Subscription.EMPTY;function isSubscription(value){return value instanceof Subscription||value&&"closed"in value&&isFunction(value.remove)&&isFunction(value.add)&&isFunction(value.unsubscribe)}__name(isSubscription,"isSubscription");function execFinalizer(finalizer){isFunction(finalizer)?finalizer():finalizer.unsubscribe()}__name(execFinalizer,"execFinalizer");function toDisposable(v){let disposed=!1;return v?isSubscription(v)?{dispose:__name(()=>v.unsubscribe(),"dispose")}:typeof v=="function"?{dispose:__name(()=>{disposed||(disposed=!0,v())},"dispose")}:v:toDisposable(()=>{})}__name(toDisposable,"toDisposable");function fromObservable(subscription){return toDisposable(()=>{subscription.unsubscribe()})}__name(fromObservable,"fromObservable");const _DisposableCollection=class _DisposableCollection{constructor(){__publicField(this,"_disposables",new Set)}add(disposable){const d=toDisposable(disposable);return this._disposables.add(d),{dispose:__name(()=>{d.dispose(),this._disposables.delete(d)},"dispose")}}dispose(){this._disposables.forEach(item=>{item.dispose()}),this._disposables.clear()}};__name(_DisposableCollection,"DisposableCollection");let DisposableCollection=_DisposableCollection;const _Disposable=class _Disposable{constructor(){__publicField(this,"_disposed",!1);__publicField(this,"_collection",new DisposableCollection)}disposeWithMe(disposable){return this._collection.add(disposable)}ensureNotDisposed(){if(this._disposed)throw new Error("[Disposable]: object is disposed!")}dispose(){this._disposed||(this._disposed=!0,this._collection.dispose())}};__name(_Disposable,"Disposable");let Disposable=_Disposable;const _RxDisposable=class _RxDisposable extends Disposable{constructor(){super(...arguments);__publicField(this,"dispose$",new rxjs.Subject)}dispose(){super.dispose(),this.dispose$.next(),this.dispose$.complete()}};__name(_RxDisposable,"RxDisposable");let RxDisposable=_RxDisposable;const _RCDisposable=class _RCDisposable extends Disposable{constructor(_rootDisposable){super();__publicField(this,"_ref",0);this._rootDisposable=_rootDisposable}inc(){if(this._disposed)throw new Error("[RCDisposable]: should not ref to a disposed.");this._ref+=1}dec(){this._ref-=1,this._ref===0&&(this._rootDisposable.dispose(),this.dispose())}};__name(_RCDisposable,"RCDisposable");let RCDisposable=_RCDisposable;const _LRUHelper=class _LRUHelper{static hasLength(array,size){return array.length===size}static getValueType(value){return Object.prototype.toString.apply(value)}static isObject(value){return this.getValueType(value)==="[object Object]"}static isIterable(value){return value[Symbol.iterator]!=null}static isNumber(value){return this.getValueType(value)==="[object Number]"}};__name(_LRUHelper,"LRUHelper");let LRUHelper=_LRUHelper;function remove(arr,item){const index2=arr.indexOf(item);return index2>-1?(arr.splice(index2,1),!0):!1}__name(remove,"remove");function dedupe(arr){const deduplicated=new Set,result=[];for(const element of arr)deduplicated.has(element)||(deduplicated.add(element),result.push(element));return result}__name(dedupe,"dedupe");function findLast(arr,callback){for(let i=arr.length-1;i>-1;i--){const item=arr[i];if(callback(item,i))return item}return null}__name(findLast,"findLast");function rotate(arr,steps){if(arr.length===0)return arr;const offset=steps%arr.length;return arr.slice(offset).concat(arr.slice(0,offset))}__name(rotate,"rotate");function groupBy(arr,keyFn){const groups=new Map;return arr.forEach(element=>{const key=keyFn(element);let group=groups.get(key);groups.has(key)||(group=[],groups.set(key,group)),group.push(element)}),groups}__name(groupBy,"groupBy");function makeArray(thing){return Array.isArray(thing)?thing:[thing]}__name(makeArray,"makeArray");const NEWER=Symbol("newer"),OLDER=Symbol("older"),_KeyIterator=class _KeyIterator{constructor(oldestEntry){__publicField(this,"entry");this.entry=oldestEntry}[Symbol.iterator](){return this}next(){const ent=this.entry;return ent?(this.entry=ent[NEWER],{done:!1,value:ent.key}):{done:!0,value:void 0}}};__name(_KeyIterator,"KeyIterator");let KeyIterator=_KeyIterator;const _ValueIterator=class _ValueIterator{constructor(oldestEntry){__publicField(this,"entry");this.entry=oldestEntry}[Symbol.iterator](){return this}next(){const ent=this.entry;return ent?(this.entry=ent[NEWER],{done:!1,value:ent.value}):{done:!0,value:void 0}}};__name(_ValueIterator,"ValueIterator");let ValueIterator=_ValueIterator;const _EntryIterator=class _EntryIterator{constructor(oldestEntry){__publicField(this,"entry");this.entry=oldestEntry}[Symbol.iterator](){return this}next(){const ent=this.entry;return ent?(this.entry=ent[NEWER],{done:!1,value:[ent.key,ent.value]}):{done:!0,value:void 0}}};__name(_EntryIterator,"EntryIterator");let EntryIterator=_EntryIterator;_b=NEWER,_a=OLDER;const _Entry=class _Entry{constructor(key,value){__publicField(this,"key");__publicField(this,"value");__publicField(this,_b);__publicField(this,_a);this.key=key,this.value=value,this[NEWER]=void 0,this[OLDER]=void 0}toJSON(){return{key:this.key,value:this.value}}};__name(_Entry,"Entry");let Entry=_Entry;const _LRUMap=class _LRUMap{constructor(...parameter){__publicField(this,"_keymap");__publicField(this,"size",0);__publicField(this,"limit");__publicField(this,"oldest");__publicField(this,"newest");__publicField(this,"_onShiftListeners",[]);if(LRUHelper.hasLength(parameter,1)){if(LRUHelper.isNumber(parameter[0])){const limit=parameter[0];this._initialize(limit,void 0);return}if(LRUHelper.isIterable(parameter[0])){const entries=parameter[0];this._initialize(0,entries);return}return}if(LRUHelper.hasLength(parameter,2)){const limit=parameter[0],entries=parameter[1];this._initialize(limit,entries)}}onShift(callback){if(this._onShiftListeners.indexOf(callback)===-1)return this._onShiftListeners.push(callback),toDisposable(()=>remove(this._onShiftListeners,callback));throw new Error("[LRUMap]: the listener has been registered!")}_initialize(limit,entries){this.oldest=void 0,this.newest=void 0,this.size=0,this.limit=limit,this._keymap=new Map,entries&&(this.assign(entries),limit<1&&(this.limit=this.size))}_markEntryAsUsed(entry){entry!==this.newest&&(entry[NEWER]&&(entry===this.oldest&&(this.oldest=entry[NEWER]),entry[NEWER][OLDER]=entry[OLDER]),entry[OLDER]&&(entry[OLDER][NEWER]=entry[NEWER]),entry[NEWER]=void 0,entry[OLDER]=this.newest,this.newest&&(this.newest[NEWER]=entry),this.newest=entry)}assign(entries){let entry,limit=this.limit||Number.MAX_VALUE;this._keymap.clear();const it=entries[Symbol.iterator]();for(let itv=it.next();!itv.done;itv=it.next()){const e=new Entry(itv.value[0],itv.value[1]);if(this._keymap.set(e.key,e),entry?(entry[NEWER]=e,e[OLDER]=entry):this.oldest=e,entry=e,limit--===0)throw new Error("overflow")}this.newest=entry,this.size=this._keymap.size}set(key,value){let entry=this._keymap.get(key);return entry?(entry.value=value,this._markEntryAsUsed(entry),this):(this._keymap.set(key,entry=new Entry(key,value)),this.newest?(this.newest[NEWER]=entry,entry[OLDER]=this.newest):this.oldest=entry,this.newest=entry,++this.size,this.size>this.limit&&this.shift(),this)}shift(){const entry=this.oldest;if(entry)return this.oldest&&this.oldest[NEWER]?(this.oldest=this.oldest[NEWER],this.oldest[OLDER]=void 0):(this.oldest=void 0,this.newest=void 0),entry[NEWER]=entry[OLDER]=void 0,this._keymap.delete(entry.key),--this.size,this._onShiftListeners.forEach(callback=>callback(entry)),[entry.key,entry.value]}get(key){const entry=this._keymap.get(key);if(entry)return this._markEntryAsUsed(entry),entry.value}has(key){return this._keymap.has(key)}find(key){const e=this._keymap.get(key);return e?e.value:void 0}delete(key){const entry=this._keymap.get(key);if(entry)return this._keymap.delete(entry.key),entry[NEWER]&&entry[OLDER]?(entry[OLDER][NEWER]=entry[NEWER],entry[NEWER][OLDER]=entry[OLDER]):entry[NEWER]?(entry[NEWER][OLDER]=void 0,this.oldest=entry[NEWER]):entry[OLDER]?(entry[OLDER][NEWER]=void 0,this.newest=entry[OLDER]):this.oldest=this.newest=void 0,this.size--,entry.value}clear(){this.oldest=void 0,this.newest=void 0,this.size=0,this._keymap.clear()}keys(){return new KeyIterator(this.oldest)}values(){return new ValueIterator(this.oldest)}entries(){return this[Symbol.iterator]()}[Symbol.iterator](){return new EntryIterator(this.oldest)}forEach(fun,thisObj){typeof thisObj!="object"&&(thisObj=this);let entry=this.oldest;for(;entry;)fun.call(thisObj,entry.value,entry.key,this),entry=entry[NEWER]}toJSON(){const s=new Array(this.size);let i=0,entry=this.oldest;for(;entry;)s[i++]={key:entry.key,value:entry.value},entry=entry[NEWER];return s}toString(){let s="",entry=this.oldest;for(;entry;)s+=`${String(entry.key)}:${entry.value}`,entry=entry[NEWER],entry&&(s+=" < ");return s}};__name(_LRUMap,"LRUMap");let LRUMap=_LRUMap;function getArrayLength(o){let maxIndex=0;const keys=Object.keys(o);for(const key of keys){const rowIndex=Number(key);maxIndex=Math.max(maxIndex,rowIndex)}return maxIndex+1}__name(getArrayLength,"getArrayLength");function insertMatrixArray(index2,value,o){const length=getArrayLength(o),array=o;for(let i=length-1;i>=index2;i--)array[i+1]=array[i];array[index2]=value}__name(insertMatrixArray,"insertMatrixArray");function spliceArray(start,count,o){const length=Object.keys(o).reduce((max,key)=>Math.max(max,Number.parseInt(key)),0)+1;for(let i=start;i<length;i++)i<start+count?delete o[i]:o[i]!==void 0&&(o[i-count]=o[i],delete o[i])}__name(spliceArray,"spliceArray");function concatMatrixArray(source,target){const srcArray=source,srcKeys=Object.keys(srcArray),srcLength=srcKeys.length,targetArray=target,targetKeys=Object.keys(targetArray),targetLength=targetKeys.length,containerArray={};let master=0;for(let i=0;i<srcLength;i++,master++){const key=srcKeys[i];containerArray[master]=srcArray[key]}for(let i=0;i<targetLength;i++,master++){const key=targetKeys[i];containerArray[master]=targetArray[key]}return containerArray}__name(concatMatrixArray,"concatMatrixArray");function sliceMatrixArray(start,end,matrixArray){const array=matrixArray;if(getArrayLength(matrixArray)>0){const fragment={};let effective=0;for(let i=start;i<=end;i++)array[i]&&(fragment[effective]=array[i],effective++);return fragment}return{}}__name(sliceMatrixArray,"sliceMatrixArray");function moveMatrixArray(fromIndex,count,toIndex,o){const moveBackward=fromIndex>toIndex;if(!moveBackward&&fromIndex+count>toIndex)throw new Error("Invalid move operation");moveBackward?_moveBackward(fromIndex,count,toIndex,o):_moveForward(fromIndex,count,toIndex,o)}__name(moveMatrixArray,"moveMatrixArray");function _moveBackward(fromIndex,count,toIndex,o){const array=o,toMove=[];for(let i=fromIndex;i<fromIndex+count;i++)toMove.push(array[i]);for(let i=fromIndex-1;i>=toIndex;i--){const item=array[i];array[i+count]=item,item===void 0&&delete array[i+count]}toMove.forEach((item,index2)=>{array[toIndex+index2]=item,item===void 0&&delete array[toIndex+index2]})}__name(_moveBackward,"_moveBackward");function _moveForward(fromIndex,count,toIndex,o){const array=o,toMove=[];for(let i=fromIndex;i<fromIndex+count;i++)toMove.push(array[i]);for(let i=fromIndex+count;i<toIndex;i++){const item=array[i];array[i-count]=item,item===void 0&&delete array[i-count]}toMove.forEach((item,index2)=>{array[toIndex+index2-count]=item,item===void 0&&delete array[toIndex+index2-count]})}__name(_moveForward,"_moveForward");const _ObjectMatrix=class _ObjectMatrix{constructor(matrix={}){__publicField(this,"_matrix");this._setOriginValue(matrix)}static MakeObjectMatrixSize(size){return new _ObjectMatrix({[size-1]:{}})}getMatrix(){return this._matrix}forEach(callback){const matrix=this._matrix,matrixRow=Object.keys(matrix);for(const row of matrixRow){const rowNumber=Number(row),columns=matrix[rowNumber];if(callback(rowNumber,columns)===!1)return this}return this}forRow(callback){const matrix=this._matrix,matrixRow=Object.keys(matrix);for(const row of matrixRow){const rowNumber=Number(row),columns=matrix[rowNumber];if(callback(rowNumber,Object.keys(columns).map(col=>Number(col)))===!1)return this}return this}forValue(callback){const matrix=this._matrix,matrixRow=Object.keys(matrix);for(const row of matrixRow){const rowNumber=Number(row),columns=matrix[rowNumber];if(!columns)continue;const columnKeys=Object.keys(columns);for(const column of columnKeys){const colNumber=Number(column),value=columns[Number(column)];if(callback(rowNumber,colNumber,value)===!1)return this}}return this}swapRow(src,target){const srcRow=this._matrix[src],targetRow=this._matrix[target];this._matrix[src]=targetRow,this._matrix[target]=srcRow}getRow(rowIndex){return this._matrix[rowIndex]}getRowOrCreate(rowIndex){let row=this.getRow(rowIndex);return row==null&&(row={},this._matrix[rowIndex]=row),row}reset(){this._setOriginValue({})}hasValue(){const matrix=this._matrix,matrixRow=Object.keys(matrix);if(matrixRow.length===0)return!1;for(const row of matrixRow){const rowNumber=Number(row),columns=matrix[rowNumber];if(Object.keys(columns).length>0)return!0}return!1}getValue(row,column){var _a2,_b2;return(_b2=(_a2=this._matrix)==null?void 0:_a2[row])==null?void 0:_b2[column]}setValue(row,column,value){const objectArray=this.getRowOrCreate(row);objectArray[column]=value}deleteValue(row,column){var _a2,_b2;(_b2=(_a2=this._matrix)==null?void 0:_a2[row])==null||delete _b2[column]}realDeleteValue(row,column){var _a2,_b2,_c2;if((_b2=(_a2=this._matrix)==null?void 0:_a2[row])==null||delete _b2[column],this.getRow(row)){const objectArray=this.getRow(row);if(objectArray==null)return;Object.keys(objectArray).length===0&&((_c2=this._matrix)==null||delete _c2[row])}}setRow(rowNumber,row){this._matrix[rowNumber]=row}moveRows(start,count,target){moveMatrixArray(start,count,target,this._matrix)}moveColumns(start,count,target){this.forEach((row,value)=>{moveMatrixArray(start,count,target,value)})}insertRows(start,count){for(let r=start;r<start+count;r++)insertMatrixArray(r,{},this._matrix)}insertColumns(start,count){for(let c=start;c<start+count;c++)this.forEach((row,data)=>{data&&insertMatrixArray(c,void 0,data)})}removeRows(start,count){spliceArray(start,count,this._matrix)}removeColumns(start,count){this.forEach((row,value)=>{value&&spliceArray(start,count,value)})}getFragment(startRow,endRow,startColumn,endColumn){const objectMatrix=new _ObjectMatrix;let insertRow=0;for(let r=startRow;r<=endRow;r++){const row={};let insertColumn=0;for(let c=startColumn;c<=endColumn;c++){const value=this.getValue(r,c);row[insertColumn]=value,insertColumn++}objectMatrix.setRow(insertRow,row),insertRow++}return objectMatrix}getSlice(startRow,endRow,startColumn,endColumn){const objectMatrix=new _ObjectMatrix;for(let r=startRow;r<=endRow;r++)for(let c=startColumn;c<=endColumn;c++){const value=this.getValue(r,c);value&&objectMatrix.setValue(r,c,Tools.deepClone(value))}return objectMatrix}getSizeOf(){return Object.keys(this._matrix).length}getLength(){return getArrayLength(this._matrix)}getRange(){const endRow=this.getLength()-1;let endColumn=0;const length=this.getLength();for(let i=0;i<length;i++){const row=this.getRow(i);if(row){const columnLength=getArrayLength(row)-1;endColumn=columnLength>endColumn?columnLength:endColumn}}return{startRow:0,startColumn:0,endRow,endColumn}}toNativeArray(){const native=new Array;return this.forValue((row,col,value)=>{native.push(value)}),native}toArray(){const array=[];return this.forRow((row,cols)=>{array[row]==null&&(array[row]=[]),cols.forEach(column=>{array[row][column]=this.getValue(row,column)})}),array}toFullArray(){const range=this.getRange(),{endColumn,endRow}=range,array=[];for(let i=0;i<=endRow;i++){const subArr=Array(endColumn+1).fill(void 0);array.push(subArr)}return this.forValue((row,col,value)=>{array[row][col]=value}),array}toJSON(){return this._matrix}clone(){const json=JSON.stringify(this._matrix);return JSON.parse(json)}getData(){const json=JSON.stringify(this._matrix);return JSON.parse(json)}getArrayData(){let startRow=0,startColumn=0,initRow=!1,initColumn=!1;const objectMatrix=new _ObjectMatrix;return this.forEach((rowIndex,rowObject)=>{initRow||(initRow=!0,startRow=rowIndex),Object.keys(rowObject).forEach(column=>{const columnIndex=Number(column);initColumn?columnIndex<startColumn&&(startColumn=columnIndex):(initColumn=!0,startColumn=columnIndex);const value=this.getValue(rowIndex,columnIndex);objectMatrix.setValue(rowIndex-startRow,columnIndex-startColumn,value)})}),objectMatrix.getData()}getDataRange(){let startRow=0,startColumn=0,endColumn=0,endRow=-1,initRow=!1,initColumn=!1;return this.forEach((rowIndex,row)=>{if(initRow||(initRow=!0,startRow=rowIndex),row==null)return;const rowSize=getArrayLength(row)-1;rowSize>endColumn&&(endColumn=rowSize),Object.keys(row).forEach(column=>{const columnIndex=Number(column);initColumn?columnIndex<startColumn&&(startColumn=columnIndex):(initColumn=!0,startColumn=columnIndex)}),rowIndex>endRow&&(endRow=rowIndex)}),{startRow,startColumn,endRow,endColumn}}getDiscreteRanges(){const ranges=[];return this.forEach((r,row)=>{Object.keys(row).forEach(col=>{const c=Number(col);let merged=!1;for(const range of ranges)if(r>=range.startRow&&r<=range.endRow+1&&c>=range.startColumn&&c<=range.endColumn+1){range.endRow=Math.max(r,range.endRow),range.endColumn=Math.max(c,range.endColumn),merged=!0;break}merged||ranges.push({startRow:r,endRow:r,startColumn:c,endColumn:c})})}),ranges}merge(newObject){this.forValue((row,column)=>{const cellValue=newObject.getValue(row,column);cellValue!=null&&this.setValue(row,column,cellValue)})}_setOriginValue(matrix={}){this._matrix=matrix}};__name(_ObjectMatrix,"ObjectMatrix");let ObjectMatrix=_ObjectMatrix;const _Rectangle=class _Rectangle{static clone(src){return src.rangeType!==void 0?{startRow:src.startRow,startColumn:src.startColumn,endRow:src.endRow,endColumn:src.endColumn,rangeType:src.rangeType}:{startRow:src.startRow,startColumn:src.startColumn,endRow:src.endRow,endColumn:src.endColumn}}static equals(src,target){return src==null||target==null?!1:src.endRow===target.endRow&&src.endColumn===target.endColumn&&src.startRow===target.startRow&&src.startColumn===target.startColumn&&(src.rangeType===target.rangeType||src.rangeType===void 0&&target.rangeType===RANGE_TYPE.NORMAL||target.rangeType===void 0&&src.rangeType===RANGE_TYPE.NORMAL)}static intersects(src,target){if(src.rangeType===RANGE_TYPE.ROW&&target.rangeType===RANGE_TYPE.COLUMN||src.rangeType===RANGE_TYPE.COLUMN&&target.rangeType===RANGE_TYPE.ROW)return!0;if(src.rangeType===RANGE_TYPE.ROW&&target.rangeType===RANGE_TYPE.ROW)return src.startRow<=target.endRow&&src.endRow>=target.startRow;if(src.rangeType===RANGE_TYPE.COLUMN&&target.rangeType===RANGE_TYPE.COLUMN)return src.startColumn<=target.endColumn&&src.endColumn>=target.startColumn;const MAX=Math.floor(Number.MAX_SAFE_INTEGER/10),currentStartRow=Number.isNaN(src.startRow)?0:src.startRow,currentEndRow=Number.isNaN(src.endRow)?MAX:src.endRow,currentStartColumn=Number.isNaN(src.startColumn)?0:src.startColumn,currentEndColumn=Number.isNaN(src.endColumn)?MAX:src.endColumn,incomingStartRow=Number.isNaN(target.startRow)?0:target.startRow,incomingEndRow=Number.isNaN(target.endRow)?MAX:target.endRow,incomingStartColumn=Number.isNaN(target.startColumn)?0:target.startColumn,incomingEndColumn=Number.isNaN(target.endColumn)?MAX:target.endColumn,zx=Math.abs(currentStartColumn+currentEndColumn-incomingStartColumn-incomingEndColumn),x=Math.abs(currentStartColumn-currentEndColumn)+Math.abs(incomingStartColumn-incomingEndColumn),zy=Math.abs(currentStartRow+currentEndRow-incomingStartRow-incomingEndRow),y=Math.abs(currentStartRow-currentEndRow)+Math.abs(incomingStartRow-incomingEndRow);return zx<=x&&zy<=y}static getIntersects(src,target){const currentStartRow=src.startRow,currentEndRow=src.endRow,currentStartColumn=src.startColumn,currentEndColumn=src.endColumn,incomingStartRow=target.startRow,incomingEndRow=target.endRow,incomingStartColumn=target.startColumn,incomingEndColumn=target.endColumn;let startColumn,startRow,endColumn,endRow;if(incomingStartRow<=currentEndRow)incomingStartRow>=currentStartRow?startRow=incomingStartRow:startRow=currentStartRow;else return null;if(incomingEndRow>=currentStartRow)incomingEndRow>=currentEndRow?endRow=currentEndRow:endRow=incomingEndRow;else return null;if(incomingStartColumn<=currentEndColumn)incomingStartColumn>currentStartColumn?startColumn=incomingStartColumn:startColumn=currentStartColumn;else return null;if(incomingEndColumn>=currentStartColumn)incomingEndColumn>=currentEndColumn?endColumn=currentEndColumn:endColumn=incomingEndColumn;else return null;return{startRow,endRow,startColumn,endColumn,rangeType:RANGE_TYPE.NORMAL}}static contains(src,target){return src.startRow<=target.startRow&&src.endRow>=target.endRow&&src.startColumn<=target.startColumn&&src.endColumn>=target.endColumn}static realContain(src,target){return _Rectangle.contains(src,target)&&(src.startRow<target.startRow||src.endRow>target.endRow||src.startColumn<target.startColumn||src.endColumn>target.endColumn)}static union(...ranges){return ranges.reduce((acc,current)=>({startRow:Math.min(acc.startRow,current.startRow),startColumn:Math.min(acc.startColumn,current.startColumn),endRow:Math.max(acc.endRow,current.endRow),endColumn:Math.max(acc.endColumn,current.endColumn),rangeType:RANGE_TYPE.NORMAL}),ranges[0])}static realUnion(...ranges){const hasColRange=ranges.some(range=>range.rangeType===RANGE_TYPE.COLUMN),hasRowRange=ranges.some(range=>range.rangeType===RANGE_TYPE.ROW),res=_Rectangle.union(...ranges);return{startColumn:hasRowRange?Number.NaN:res.startColumn,endColumn:hasRowRange?Number.NaN:res.endColumn,startRow:hasColRange?Number.NaN:res.startRow,endRow:hasColRange?Number.NaN:res.endRow,rangeType:hasRowRange?RANGE_TYPE.ROW:hasColRange?RANGE_TYPE.COLUMN:RANGE_TYPE.NORMAL}}static subtract(range1,range2){if(range2.startRow>range1.endRow||range2.endRow<range1.startRow||range2.startColumn>range1.endColumn||range2.endColumn<range1.startColumn)return[range1];const ranges=[];range2.startRow>=range1.startRow&&ranges.push({startRow:range1.startRow,startColumn:range1.startColumn,endRow:range2.startRow-1,endColumn:range1.endColumn}),range2.endRow<=range1.endRow&&ranges.push({startRow:range2.endRow+1,startColumn:range1.startColumn,endRow:range1.endRow,endColumn:range1.endColumn});const topBoundary=Math.max(range1.startRow,range2.startRow),bottomBoundary=Math.min(range1.endRow,range2.endRow);return range2.startColumn>=range1.startColumn&&ranges.push({startRow:topBoundary,startColumn:range1.startColumn,endRow:bottomBoundary,endColumn:range2.startColumn-1}),range2.endColumn<=range1.endColumn&&ranges.push({startRow:topBoundary,startColumn:range2.endColumn+1,endRow:bottomBoundary,endColumn:range1.endColumn}),ranges.filter(range=>range.startRow<=range.endRow&&range.startColumn<=range.endColumn)}static hasIntersectionBetweenTwoRect(rect1,rect2){return!(rect1.left>rect2.right||rect1.right<rect2.left||rect1.top>rect2.bottom||rect1.bottom<rect2.top)}static getIntersectionBetweenTwoRect(rect1,rect2){const left=Math.max(rect1.left,rect2.left),right=Math.min(rect1.right,rect2.right),top=Math.max(rect1.top,rect2.top),bottom=Math.min(rect1.bottom,rect2.bottom);return right<=left||bottom<=top?null:{left,right,top,bottom,width:right-left,height:bottom-top}}};__name(_Rectangle,"Rectangle"),__publicField(_Rectangle,"getRelativeRange",__name((range,originRange)=>({startRow:range.startRow-originRange.startRow,endRow:range.endRow-range.startRow,startColumn:range.startColumn-originRange.startColumn,endColumn:range.endColumn-range.startColumn}),"getRelativeRange")),__publicField(_Rectangle,"getPositionRange",__name((relativeRange,originRange,absoluteRange)=>({...absoluteRange||{},startRow:absoluteRange&&[AbsoluteRefType.ROW,AbsoluteRefType.ALL].includes(absoluteRange.startAbsoluteRefType||0)?absoluteRange.startRow:relativeRange.startRow+originRange.startRow,endRow:absoluteRange&&[AbsoluteRefType.ROW,AbsoluteRefType.ALL].includes(absoluteRange.endAbsoluteRefType||0)?absoluteRange.endRow:relativeRange.endRow+relativeRange.startRow+originRange.startRow,startColumn:absoluteRange&&[AbsoluteRefType.COLUMN,AbsoluteRefType.ALL].includes(absoluteRange.startAbsoluteRefType||0)?absoluteRange.startColumn:relativeRange.startColumn+originRange.startColumn,endColumn:absoluteRange&&[AbsoluteRefType.COLUMN,AbsoluteRefType.ALL].includes(absoluteRange.endAbsoluteRefType||0)?absoluteRange.endColumn:relativeRange.endColumn+relativeRange.startColumn+originRange.startColumn}),"getPositionRange")),__publicField(_Rectangle,"moveHorizontal",__name((range,step=0,length=0)=>({...range,startColumn:range.startColumn+step,endColumn:range.endColumn+step+length}),"moveHorizontal")),__publicField(_Rectangle,"moveVertical",__name((range,step=0,length=0)=>({...range,startRow:range.startRow+step,endRow:range.endRow+step+length}),"moveVertical")),__publicField(_Rectangle,"moveOffset",__name((range,offsetX,offsetY)=>({...range,startRow:range.startRow+offsetY,endRow:range.endRow+offsetY,startColumn:range.startColumn+offsetX,endColumn:range.endColumn+offsetX}),"moveOffset"));let Rectangle=_Rectangle;const _RefAlias=class _RefAlias{constructor(values,keys){__publicField(this,"_values",[]);__publicField(this,"_keys",[]);__publicField(this,"_keyMaps",new Map);this._values=values,this._keys=keys,values.forEach(item=>{this._initKeyMap(item)})}_initKeyMap(item){this._keys.forEach(key=>{const value=item[key],keyMap=this._keyMaps.get(key)||new Map;keyMap.set(value,item),this._keyMaps.set(key,keyMap)})}getValue(key,keyGroup){const keys=keyGroup||this._keys;for(let index2=0;index2<keys.length;index2++){const keyMap=this._keyMaps.get(keys[index2]);if(keyMap!=null&&keyMap.has(key))return keyMap.get(key)}return null}hasValue(key){for(let index2=0;index2<this._keys.length;index2++){const keyMap=this._keyMaps.get(this._keys[index2]);if(keyMap!=null&&keyMap.has(key))return!0}return!1}addValue(item){this._values.push(item),this._initKeyMap(item)}setValue(key,attr,value){const item=this.getValue(key);item&&Object.keys(item).includes(attr)&&(item[attr]=value)}deleteValue(key){const value=this.getValue(key);if(value){this._keys.forEach(keyItem=>{const keyMap=this._keyMaps.get(keyItem),_key=value[keyItem];keyMap==null||keyMap.delete(_key)});const index2=this._values.findIndex(item=>item===value);this._values.splice(index2,1)}}getValues(){return this._values}getKeyMap(key){var _a2;return[...((_a2=this._keyMaps.get(key))==null?void 0:_a2.keys())||[]]}clear(){this._values=[],this._keys=[],this._keyMaps.clear()}};__name(_RefAlias,"RefAlias");let RefAlias=_RefAlias;function createRowColIter(rowStart,rowEnd,colStart,colEnd){return{forEach(cb){for(let r=rowStart;r<=rowEnd;r++)for(let c=colStart;c<=colEnd;c++)cb(r,c)}}}__name(createRowColIter,"createRowColIter");function ABCToNumber(a){if(a==null||a.length===0)return Number.NaN;const str=a.toLowerCase().split(""),al=str.length,getCharNumber=__name(charX=>charX.charCodeAt(0)-96,"getCharNumber");let numOut=0,charnum=0;for(let i=0;i<al;i++)charnum=getCharNumber(str[i]),numOut+=charnum*26**(al-i-1);return numOut===0?Number.NaN:numOut-1}__name(ABCToNumber,"ABCToNumber");const orderA=65,orderZ=90,order_a=97;function numberToABC(n){const len=orderZ-orderA+1;let s="";for(;n>=0;)s=String.fromCharCode(n%len+orderA)+s,n=Math.floor(n/len)-1;return s}__name(numberToABC,"numberToABC");function repeatStringNumTimes(string,times){let repeatedString="";for(;times>0;)repeatedString+=string,times--;return repeatedString}__name(repeatStringNumTimes,"repeatStringNumTimes");function numberToListABC(n,uppercase=!1){const len=orderZ-orderA+1;let order=order_a;uppercase&&(order=orderA);const abc=String.fromCharCode(n%len+order),times=Math.floor(n/len)+1;return repeatStringNumTimes(abc,times)}__name(numberToListABC,"numberToListABC");function sortRules(oa,ob){return oa.zIndex>ob.zIndex?1:oa.zIndex===ob.zIndex?0:-1}__name(sortRules,"sortRules");function sortRulesByDesc(oa,ob){return oa.zIndex>ob.zIndex?-1:oa.zIndex===ob.zIndex?0:1}__name(sortRulesByDesc,"sortRulesByDesc");function sortRulesFactory(key="index",ruler=1){return(oa,ob)=>oa[key]>ob[key]?ruler:oa[key]===ob[key]?0:-ruler}__name(sortRulesFactory,"sortRulesFactory");function debounce(func,wait){let timeout;function run(...args){const context=this,later=__name(function(){timeout=null,func.apply(context,args)},"later");clearTimeout(timeout),timeout=setTimeout(later,wait)}return __name(run,"run"),Object.defineProperty(run,"cancel",{value:__name(()=>{clearTimeout(timeout)},"value"),enumerable:!1,writable:!1}),run}__name(debounce,"debounce");function getBodySliceHtml(body,startIndex,endIndex){const{dataStream,textRuns=[]}=body;let cursorIndex=startIndex;const spanList=[];for(const textRun of textRuns){const{st,ed}=textRun;Tools.hasIntersectionBetweenTwoRanges(startIndex,endIndex,st,ed)&&(st>cursorIndex?(spanList.push(dataStream.slice(cursorIndex,st)),spanList.push(covertTextRunToHtml(dataStream,{...textRun,ed:Math.min(ed,endIndex)}))):spanList.push(covertTextRunToHtml(dataStream,{...textRun,st:cursorIndex,ed:Math.min(ed,endIndex)}))),cursorIndex=Math.max(startIndex,Math.min(ed,endIndex))}return cursorIndex!==endIndex&&spanList.push(dataStream.slice(cursorIndex,endIndex)),spanList.join("")}__name(getBodySliceHtml,"getBodySliceHtml");function convertBodyToHtml(body,withParagraphInfo=!0){var _a2;if(withParagraphInfo&&((_a2=body.paragraphs)!=null&&_a2.length)){const{dataStream,paragraphs=[]}=body;let result="",cursorIndex=-1;for(const paragraph of paragraphs){const{startIndex,paragraphStyle={}}=paragraph,{spaceAbove,spaceBelow,lineSpacing}=paragraphStyle,style=[];spaceAbove!=null&&(typeof spaceAbove=="number"?style.push(`margin-top: ${spaceAbove}px`):style.push(`margin-top: ${spaceAbove.v}px`)),spaceBelow!=null&&(typeof spaceBelow=="number"?style.push(`margin-bottom: ${spaceBelow}px`):style.push(`margin-bottom: ${spaceBelow.v}px`)),lineSpacing!=null&&style.push(`line-height: ${lineSpacing}`),startIndex>cursorIndex+1?result+=`<p class="UniverNormal" ${style.length?`style="${style.join("; ")};"`:""}>${getBodySliceHtml(body,cursorIndex+1,startIndex)}</p>`:result+=`<p class="UniverNormal" ${style.length?`style="${style.join("; ")};"`:""}></p>`,cursorIndex=startIndex}return cursorIndex!==dataStream.length&&(result+=getBodySliceHtml(body,cursorIndex,dataStream.length)),result}else return getBodySliceHtml(body,0,body.dataStream.length)}__name(convertBodyToHtml,"convertBodyToHtml");function covertTextRunToHtml(dataStream,textRun){const{st:start,ed,ts={}}=textRun,{ff,fs,it,bl,ul,st,ol,bg,cl,va}=ts;let html=dataStream.slice(start,ed);const style=[];return it===BooleanNumber.TRUE&&(html=`<i>${html}</i>`),va===BaselineOffset.SUPERSCRIPT?html=`<sup>${html}</sup>`:va===BaselineOffset.SUBSCRIPT&&(html=`<sub>${html}</sub>`),(ul==null?void 0:ul.s)===BooleanNumber.TRUE&&(html=`<u>${html}</u>`),(st==null?void 0:st.s)===BooleanNumber.TRUE&&(html=`<s>${html}</s>`),bl===BooleanNumber.TRUE&&(html=`<strong>${html}</strong>`),ff&&style.push(`font-family: ${ff}`),cl&&style.push(`color: ${cl.rgb}`),fs&&style.push(`font-size: ${fs}pt`),ol&&style.push("text-decoration: overline"),bg&&style.push(`background: ${bg.rgb}`),style.length?`<span style="${style.join("; ")};">${html}</span>`:html}__name(covertTextRunToHtml,"covertTextRunToHtml");const DEFAULT_RANGE_ARRAY={sheetId:"",range:{startRow:-1,endRow:-1,startColumn:-1,endColumn:-1}},DEFAULT_RANGE={startRow:-1,startColumn:-1,endRow:-1,endColumn:-1},DEFAULT_SELECTION={startRow:0,startColumn:0,endRow:0,endColumn:0},DEFAULT_CELL={row:0,column:0},DEFAULT_STYLES={ff:"Arial",fs:11,it:BooleanNumber.FALSE,bl:BooleanNumber.FALSE,ul:{s:BooleanNumber.FALSE},st:{s:BooleanNumber.FALSE},ol:{s:BooleanNumber.FALSE},tr:{a:0,v:BooleanNumber.FALSE},td:TextDirection.UNSPECIFIED,cl:{rgb:"#000"},bg:{rgb:"#fff"},ht:HorizontalAlign.UNSPECIFIED,vt:VerticalAlign.UNSPECIFIED,tb:WrapStrategy.UNSPECIFIED,pd:{t:0,r:0,b:0,l:0}},DEFAULT_SLIDE={id:"default_slide",title:"defaultSlide",pageSize:{width:300,height:300}};var EXTENSION_NAMES=(EXTENSION_NAMES2=>(EXTENSION_NAMES2.ARRAY_CONVERTOR="ARRAY_CONVERTOR",EXTENSION_NAMES2.MATRIX_CONVERTOR="MATRIX_CONVERTOR",EXTENSION_NAMES2))(EXTENSION_NAMES||{});function isAllFormatInTextRuns(key,body){const{textRuns=[]}=body;let len=0;for(const textRun of textRuns){const{ts={},st,ed}=textRun;if(ts[key]==null)return BooleanNumber.FALSE;switch(key){case"bl":case"it":{if(ts[key]===BooleanNumber.FALSE)return BooleanNumber.FALSE;break}case"ul":case"st":{if(ts[key].s===BooleanNumber.FALSE)return BooleanNumber.FALSE;break}default:throw new Error(`unknown style key: ${key} in IStyleBase`)}len+=ed-st}return body.dataStream.indexOf(`\r
4
+ `)===len?BooleanNumber.TRUE:BooleanNumber.FALSE}__name(isAllFormatInTextRuns,"isAllFormatInTextRuns");const _Range=class _Range{constructor(workSheet,range,_deps){__publicField(this,"_range");__publicField(this,"_worksheet");this._deps=_deps,this._range=range,this._worksheet=workSheet}static foreach(range,action){const{startRow,startColumn,endRow,endColumn}=range;for(let i=startRow;i<=endRow;i++)for(let j=startColumn;j<=endColumn;j++)action(i,j)}getRangeData(){return this._range}getValue(){return this.getValues()[0][0]}getValues(){const{startRow,endRow,startColumn,endColumn}=this._range,range=[];for(let r=startRow;r<=endRow;r++){const row=[];for(let c=startColumn;c<=endColumn;c++)row.push(this.getMatrix().getValue(r,c)||null);range.push(row)}return range}getMatrix(){const{startRow,endRow,startColumn,endColumn}=this._range,sheetMatrix=this._worksheet.getCellMatrix(),rangeMatrix=new ObjectMatrix;for(let r=startRow;r<=endRow;r++)for(let c=startColumn;c<=endColumn;c++)rangeMatrix.setValue(r,c,sheetMatrix.getValue(r,c)||null);return rangeMatrix}getMatrixObject(){const{startRow,endRow,startColumn,endColumn}=this._range,sheetMatrix=this._worksheet.getCellMatrix(),rangeMatrix=new ObjectMatrix;for(let r=startRow;r<=endRow;r++)for(let c=startColumn;c<=endColumn;c++)rangeMatrix.setValue(r-startRow,c-startColumn,sheetMatrix.getValue(r,c)||{});return rangeMatrix}getA1Notation(){const{startRow,endRow,startColumn,endColumn}=this._range;let start,end;return startColumn<endColumn?(start=Tools.numToWord(startColumn+1)+(startRow+1),end=Tools.numToWord(endColumn+1)+(endRow+1)):(start=Tools.numToWord(endColumn+1)+(endRow+1),end=Tools.numToWord(startColumn+1)+(startRow+1)),start===end?`${start}`:`${start}:${end}`}getBackground(){return this.getBackgrounds()[0][0]}getBackgrounds(){const styles=this._deps.getStyles();return this.getValues().map(row=>row.map(cell=>{var _a2;const rgbColor=styles.getStyleByCell(cell);return((_a2=rgbColor==null?void 0:rgbColor.bg)==null?void 0:_a2.rgb)||DEFAULT_STYLES.bg.rgb}))}getCell(row,column){const{startRow,endRow,startColumn,endColumn}=this._range,cell={startRow:startRow+row,endRow:startRow+row,startColumn:startColumn+column,endColumn:startColumn+column};return new _Range(this._worksheet,cell,this._deps)}getColumn(){return this._range.startColumn}getObjectValue(options={}){return this.getObjectValues(options)[0][0]}getObjectValues(options={}){var _a2;const{startRow,endRow,startColumn,endColumn}=this._range,values=this._worksheet.getCellMatrix().getFragment(startRow,endRow,startColumn,endColumn).getData();if(options.isIncludeStyle){const style=this._deps.getStyles();for(let r=0;r<=endRow-startRow;r++)for(let c=0;c<=endColumn-startColumn;c++){if(values==null||((_a2=values==null?void 0:values[r])==null?void 0:_a2[c])==null)continue;const s=values[r][c].s;s&&(values[r][c].s=style.get(s))}}return values}getFontColor(){return this.getFontColors()[0][0]}getFontColors(){const styles=this._deps.getStyles();return this.getValues().map(row=>row.map(cell=>{var _a2;const cellStyle=styles.getStyleByCell(cell);return((_a2=cellStyle==null?void 0:cellStyle.cl)==null?void 0:_a2.rgb)||DEFAULT_STYLES.cl.rgb}))}getFontFamilies(){return this._getStyles("ff")}getFontFamily(){return this.getFontFamilies()[0][0]}getUnderlines(){return this._getStyles("ul")}getUnderline(){var _a2,_b2;const{p}=(_a2=this.getValue())!=null?_a2:{};return p&&Array.isArray((_b2=p.body)==null?void 0:_b2.textRuns)&&p.body.textRuns.length>0?isAllFormatInTextRuns("ul",p.body)===BooleanNumber.TRUE?{s:BooleanNumber.TRUE}:{s:BooleanNumber.FALSE}:this.getUnderlines()[0][0]}getOverlines(){return this._getStyles("ol")}getOverline(){return this.getOverlines()[0][0]}getStrikeThrough(){var _a2,_b2;const{p}=(_a2=this.getValue())!=null?_a2:{};return p&&Array.isArray((_b2=p.body)==null?void 0:_b2.textRuns)&&p.body.textRuns.length>0?isAllFormatInTextRuns("st",p.body)===BooleanNumber.TRUE?{s:BooleanNumber.TRUE}:{s:BooleanNumber.FALSE}:this.getStrikeThroughs()[0][0]}getStrikeThroughs(){return this._getStyles("st")}getFontSize(){var _a2,_b2;const p=((_a2=this.getValue())==null?void 0:_a2.p)||{};return p&&Array.isArray((_b2=p.body)==null?void 0:_b2.textRuns)&&p.body.textRuns.length>0?p.body.textRuns.some(textRun=>{var _a3;return((_a3=textRun==null?void 0:textRun.ts)==null?void 0:_a3.fs)!=null})?Math.max(...p.body.textRuns.map(textRun=>{var _a3;return((_a3=textRun==null?void 0:textRun.ts)==null?void 0:_a3.fs)||0})):this.getFontSizes()[0][0]:this.getFontSizes()[0][0]}getFontSizes(){return this._getStyles("fs")}getBorder(){return this.getBorders()[0][0]}getBorders(){return this._getStyles("bd")}getFontStyle(){var _a2,_b2;const{p}=(_a2=this.getValue())!=null?_a2:{};return p&&Array.isArray((_b2=p.body)==null?void 0:_b2.textRuns)&&p.body.textRuns.length>0?isAllFormatInTextRuns("it",p.body)===BooleanNumber.TRUE?FontItalic.ITALIC:FontItalic.NORMAL:this._getFontStyles()[0][0]}_getFontStyles(){return this._getStyles("it")}getFontWeight(){var _a2,_b2;const{p}=(_a2=this.getValue())!=null?_a2:{};return p&&Array.isArray((_b2=p.body)==null?void 0:_b2.textRuns)&&p.body.textRuns.length>0?isAllFormatInTextRuns("bl",p.body)===BooleanNumber.TRUE?FontWeight.BOLD:FontWeight.NORMAL:this._getFontWeights()[0][0]}_getFontWeights(){return this._getStyles("bl")}getGridId(){return this._worksheet.getSheetId()}getHeight(){const{_range:_rangeData,_worksheet}=this,{startRow,endRow}=_rangeData;let h=0;for(let i=0;i<=endRow-startRow;i++){const hh=_worksheet.getRowHeight(i);h+=hh}return h}getHorizontalAlignment(){return this.getHorizontalAlignments()[0][0]}getHorizontalAlignments(){return this._getStyles("ht")}getLastColumn(){return this._range.endColumn}getLastRow(){return this._range.endRow}getNumColumns(){const{startColumn,endColumn}=this._range;return endColumn-startColumn+1}getNumRows(){const{startRow,endRow}=this._range;return endRow-startRow+1}getRichTextValue(){return this.getRichTextValues()[0][0]}getRichTextValues(){return this.getValues().map(row=>row.map(cell=>(cell==null?void 0:cell.p)||""))}getRowIndex(){return this._range.startRow}getSheet(){return this._worksheet}getTextDirection(){return this.getTextDirections()[0][0]}getTextDirections(){return this._getStyles("td")}getTextRotation(){return this.getTextRotations()[0][0]}getTextRotations(){return this._getStyles("tr")}getTextStyle(){return this.getTextStyles()[0][0]}getTextStyles(){const styles=this._deps.getStyles();return this.getValues().map(row=>row.map(cell=>styles.getStyleByCell(cell)))}getVerticalAlignment(){return this.getVerticalAlignments()[0][0]}getVerticalAlignments(){return this._getStyles("vt")}getWidth(){const{_range:_rangeData,_worksheet}=this,{startColumn,endColumn}=_rangeData;let w=0;for(let i=0;i<=endColumn-startColumn;i++)w+=_worksheet.getColumnWidth(i);return w}getWrap(){return this.getWrapStrategy()===WrapStrategy.WRAP?BooleanNumber.TRUE:BooleanNumber.FALSE}getWrapStrategies(){return this._getStyles("tb")}getWrapStrategy(){return this.getWrapStrategies()[0][0]}forEach(action){_Range.foreach(this._range,action)}_getStyles(styleKey){const styles=this._deps.getStyles();return this.getValues().map(row=>row.map(cell=>{const style=styles&&styles.getStyleByCell(cell);return style&&style[styleKey]||DEFAULT_STYLES[styleKey]}))}};__name(_Range,"Range"),__publicField(_Range,"transformRange",__name((range,worksheet)=>range.rangeType===RANGE_TYPE.ALL?{startColumn:0,startRow:0,endColumn:worksheet.getMaxColumns()-1,endRow:worksheet.getMaxRows()-1}:range.rangeType===RANGE_TYPE.COLUMN?{startRow:0,endRow:worksheet.getMaxRows()-1,startColumn:range.startColumn,endColumn:range.endColumn}:range.rangeType===RANGE_TYPE.ROW?{startColumn:0,endColumn:worksheet.getMaxColumns()-1,startRow:range.startRow,endRow:range.endRow}:range,"transformRange"));let Range=_Range;function maximalRectangle(matrix,match){if(matrix.length===0||matrix[0].length===0)return null;const heights=new Array(matrix[0].length).fill(0);let maxArea=0,maxRect=null;for(let row=0;row<matrix.length;row++){for(let col=0;col<matrix[0].length;col++)heights[col]=match(matrix[row][col])?heights[col]+1:0;const areaWithRect=largestRectangleArea(heights);areaWithRect.area>maxArea&&(maxArea=areaWithRect.area,maxRect={startColumn:areaWithRect.start,startRow:row-areaWithRect.height+1,endColumn:areaWithRect.end,endRow:row})}return maxRect}__name(maximalRectangle,"maximalRectangle");function largestRectangleArea(heights){const stack=[];let maxArea=0,maxRect={area:0,height:0,start:0,end:0},index2=0;for(;index2<heights.length;)if(stack.length===0||heights[index2]>=heights[stack[stack.length-1]])stack.push(index2++);else{const height=heights[stack.pop()],width=stack.length===0?index2:index2-stack[stack.length-1]-1;height*width>maxArea&&(maxArea=height*width,maxRect={area:maxArea,height,start:stack.length===0?0:stack[stack.length-1]+1,end:index2-1})}for(;stack.length>0;){const height=heights[stack.pop()],width=stack.length===0?index2:index2-stack[stack.length-1]-1;height*width>maxArea&&(maxArea=height*width,maxRect={area:maxArea,height,start:stack.length===0?0:stack[stack.length-1]+1,end:index2-1})}return maxRect}__name(largestRectangleArea,"largestRectangleArea");function resetMatrix(matrix,range){Range.foreach(range,(row,col)=>{matrix[row][col]=void 0})}__name(resetMatrix,"resetMatrix");function queryObjectMatrix(matrix,match){const arrayMatrix=matrix.toFullArray(),results=[];for(;;){const rectangle=maximalRectangle(arrayMatrix,match);if(!rectangle)break;results.push(rectangle),resetMatrix(arrayMatrix,rectangle)}return results}__name(queryObjectMatrix,"queryObjectMatrix");function moveRangeByOffset(range,refOffsetX,refOffsetY,ignoreAbsolute=!1){let newRange={...range};const startAbsoluteRefType=newRange.startAbsoluteRefType||AbsoluteRefType.NONE,endAbsoluteRefType=newRange.endAbsoluteRefType||AbsoluteRefType.NONE;return!ignoreAbsolute&&startAbsoluteRefType===AbsoluteRefType.ALL&&endAbsoluteRefType===AbsoluteRefType.ALL?newRange:ignoreAbsolute||startAbsoluteRefType===AbsoluteRefType.NONE&&endAbsoluteRefType===AbsoluteRefType.NONE?Rectangle.moveOffset(newRange,refOffsetX,refOffsetY):(startAbsoluteRefType===AbsoluteRefType.NONE?newRange={...newRange,startRow:newRange.startRow+refOffsetY,startColumn:newRange.startColumn+refOffsetX}:startAbsoluteRefType===AbsoluteRefType.COLUMN?newRange={...newRange,startRow:newRange.startRow+refOffsetY}:startAbsoluteRefType===AbsoluteRefType.ROW&&(newRange={...newRange,startColumn:newRange.startColumn+refOffsetX}),endAbsoluteRefType===AbsoluteRefType.NONE?newRange={...newRange,endRow:newRange.endRow+refOffsetY,endColumn:newRange.endColumn+refOffsetX}:endAbsoluteRefType===AbsoluteRefType.COLUMN?newRange={...newRange,endRow:newRange.endRow+refOffsetY}:endAbsoluteRefType===AbsoluteRefType.ROW&&(newRange={...newRange,endColumn:newRange.endColumn+refOffsetX}),newRange)}__name(moveRangeByOffset,"moveRangeByOffset");var IdentifierDecoratorSymbol=Symbol("$$IDENTIFIER_DECORATOR");function isIdentifierDecorator(thing){return thing&&thing[IdentifierDecoratorSymbol]===!0}__name(isIdentifierDecorator,"isIdentifierDecorator");function isCtor(thing){return typeof thing=="function"}__name(isCtor,"isCtor");function isClassDependencyItem(thing){return!!(thing&&typeof thing.useClass<"u")}__name(isClassDependencyItem,"isClassDependencyItem");function isFactoryDependencyItem(thing){return!!(thing&&typeof thing.useFactory<"u")}__name(isFactoryDependencyItem,"isFactoryDependencyItem");function isValueDependencyItem(thing){return!!(thing&&typeof thing.useValue<"u")}__name(isValueDependencyItem,"isValueDependencyItem");function isExistingDependencyItem(thing){return!!(thing&&typeof thing.useExisting<"u")}__name(isExistingDependencyItem,"isExistingDependencyItem");function isAsyncDependencyItem(thing){return!!(thing&&typeof thing.useAsync<"u")}__name(isAsyncDependencyItem,"isAsyncDependencyItem");var AsyncHookSymbol=Symbol("AsyncHook");function isAsyncHook(thing){return!!(thing&&thing.__symbol===AsyncHookSymbol)}__name(isAsyncHook,"isAsyncHook");function prettyPrintIdentifier(id){return typeof id>"u"?"undefined":isCtor(id)&&!id[IdentifierDecoratorSymbol]?id.name:id.toString()}__name(prettyPrintIdentifier,"prettyPrintIdentifier"),exports2.Quantity=void 0,function(Quantity){Quantity.MANY="many",Quantity.OPTIONAL="optional",Quantity.REQUIRED="required"}(exports2.Quantity||(exports2.Quantity={})),exports2.LookUp=void 0,function(LookUp){LookUp.SELF="self",LookUp.SKIP_SELF="skipSelf"}(exports2.LookUp||(exports2.LookUp={}));var __extends$4=function(){var extendStatics=__name(function(d,b){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d2,b2){d2.__proto__=b2}||function(d2,b2){for(var p in b2)Object.prototype.hasOwnProperty.call(b2,p)&&(d2[p]=b2[p])},extendStatics(d,b)},"extendStatics");return function(d,b){if(typeof b!="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}__name(__,"__"),d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}(),RediError=function(_super){__extends$4(RediError2,_super);function RediError2(message){return _super.call(this,"[redi]: ".concat(message))||this}return __name(RediError2,"RediError"),RediError2}(Error),__extends$3=function(){var extendStatics=__name(function(d,b){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d2,b2){d2.__proto__=b2}||function(d2,b2){for(var p in b2)Object.prototype.hasOwnProperty.call(b2,p)&&(d2[p]=b2[p])},extendStatics(d,b)},"extendStatics");return function(d,b){if(typeof b!="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}__name(__,"__"),d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}(),TARGET=Symbol("$$TARGET"),DEPENDENCIES=Symbol("$$DEPENDENCIES"),DependencyDescriptorNotFoundError=function(_super){__extends$3(DependencyDescriptorNotFoundError2,_super);function DependencyDescriptorNotFoundError2(index2,target){var msg="Could not find dependency registered on the ".concat(index2,' (indexed) parameter of the constructor of "').concat(prettyPrintIdentifier(target),'".');return _super.call(this,msg)||this}return __name(DependencyDescriptorNotFoundError2,"DependencyDescriptorNotFoundError"),DependencyDescriptorNotFoundError2}(RediError),IdentifierUndefinedError=function(_super){__extends$3(IdentifierUndefinedError2,_super);function IdentifierUndefinedError2(target,index2){var msg='It seems that you register "undefined" as dependency on the '.concat(index2+1,' parameter of "').concat(prettyPrintIdentifier(target),'". Please make sure that there is not cyclic dependency among your TypeScript files, or consider using "forwardRef". For more info please visit our website https://redi.wendell.fun/docs/debug#could-not-find-dependency-registered-on');return _super.call(this,msg)||this}return __name(IdentifierUndefinedError2,"IdentifierUndefinedError"),IdentifierUndefinedError2}(RediError);function getDependencies(registerTarget){var target=registerTarget;return target[DEPENDENCIES]||[]}__name(getDependencies,"getDependencies");function getDependencyByIndex(registerTarget,index2){var allDependencies=getDependencies(registerTarget),dep=allDependencies.find(function(descriptor){return descriptor.paramIndex===index2});if(!dep)throw new DependencyDescriptorNotFoundError(index2,registerTarget);return dep}__name(getDependencyByIndex,"getDependencyByIndex");function setDependency(registerTarget,identifier,paramIndex,quantity,lookUp){quantity===void 0&&(quantity=exports2.Quantity.REQUIRED);var descriptor={paramIndex,identifier,quantity,lookUp,withNew:!1};if(typeof identifier>"u")throw new IdentifierUndefinedError(registerTarget,paramIndex);var target=registerTarget;target[TARGET]===target?target[DEPENDENCIES].push(descriptor):(target[DEPENDENCIES]=[descriptor],target[TARGET]=target)}__name(setDependency,"setDependency");var knownIdentifiers=new Set;function createIdentifier(id){if(knownIdentifiers.has(id))throw new RediError('Identifier "'.concat(id,'" already exists.'));knownIdentifiers.add(id);var decorator=__name(function(registerTarget,_key,index2){setDependency(registerTarget,decorator,index2)},"decorator");return decorator.toString=function(){return id},decorator[IdentifierDecoratorSymbol]=!0,decorator}__name(createIdentifier,"createIdentifier");var __extends$2=function(){var extendStatics=__name(function(d,b){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d2,b2){d2.__proto__=b2}||function(d2,b2){for(var p in b2)Object.prototype.hasOwnProperty.call(b2,p)&&(d2[p]=b2[p])},extendStatics(d,b)},"extendStatics");return function(d,b){if(typeof b!="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}__name(__,"__"),d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}(),QuantityCheckError=function(_super){__extends$2(QuantityCheckError2,_super);function QuantityCheckError2(id,quantity,actual){var msg='Expect "'.concat(quantity,'" dependency items for id "').concat(prettyPrintIdentifier(id),'" but get ').concat(actual,".");return _super.call(this,msg)||this}return __name(QuantityCheckError2,"QuantityCheckError"),QuantityCheckError2}(RediError);function checkQuantity(id,quantity,length){if(quantity===exports2.Quantity.OPTIONAL&&length>1||quantity===exports2.Quantity.REQUIRED&&length!==1)throw new QuantityCheckError(id,quantity,length)}__name(checkQuantity,"checkQuantity");function retrieveQuantity(quantity,arr){return quantity===exports2.Quantity.MANY?arr:arr[0]}__name(retrieveQuantity,"retrieveQuantity");function changeQuantity(target,index2,quantity){var descriptor=getDependencyByIndex(target,index2);descriptor.quantity=quantity}__name(changeQuantity,"changeQuantity");function quantifyDecoratorFactoryProducer(quantity){return __name(function decoratorFactory(id){return this instanceof decoratorFactory?this:function(registerTarget,_key,index2){if(id)setDependency(registerTarget,id,index2,quantity);else{if(quantity===exports2.Quantity.REQUIRED)throw new IdentifierUndefinedError(registerTarget,index2);changeQuantity(registerTarget,index2,quantity)}}},"decoratorFactory")}__name(quantifyDecoratorFactoryProducer,"quantifyDecoratorFactoryProducer");var Many=quantifyDecoratorFactoryProducer(exports2.Quantity.MANY),Optional=quantifyDecoratorFactoryProducer(exports2.Quantity.OPTIONAL),Inject=quantifyDecoratorFactoryProducer(exports2.Quantity.REQUIRED);function forwardRef(wrapper){return{unwrap:wrapper}}__name(forwardRef,"forwardRef");function isForwardRef(thing){return!!thing&&typeof thing.unwrap=="function"}__name(isForwardRef,"isForwardRef");function normalizeForwardRef(id){return isForwardRef(id)?id.unwrap():id}__name(normalizeForwardRef,"normalizeForwardRef");function isDisposable(thing){return!!thing&&typeof thing.dispose=="function"}__name(isDisposable,"isDisposable");var __extends$1$1=function(){var extendStatics=__name(function(d,b){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d2,b2){d2.__proto__=b2}||function(d2,b2){for(var p in b2)Object.prototype.hasOwnProperty.call(b2,p)&&(d2[p]=b2[p])},extendStatics(d,b)},"extendStatics");return function(d,b){if(typeof b!="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}__name(__,"__"),d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}();function isBareClassDependency(thing){return thing.length===1}__name(isBareClassDependency,"isBareClassDependency");var ResolvingStack=[];function pushResolvingStack(id){ResolvingStack.push(id)}__name(pushResolvingStack,"pushResolvingStack");function popupResolvingStack(){ResolvingStack.pop()}__name(popupResolvingStack,"popupResolvingStack");function clearResolvingStack(){ResolvingStack.length=0}__name(clearResolvingStack,"clearResolvingStack");var DependencyNotFoundForModuleError=function(_super){__extends$1$1(DependencyNotFoundForModuleError2,_super);function DependencyNotFoundForModuleError2(toInstantiate,id,index2){var msg='Cannot find "'.concat(prettyPrintIdentifier(id),'" registered by any injector. It is the ').concat(index2,'th param of "').concat(isIdentifierDecorator(toInstantiate)?prettyPrintIdentifier(toInstantiate):toInstantiate.name,'".');return _super.call(this,msg)||this}return __name(DependencyNotFoundForModuleError2,"DependencyNotFoundForModuleError"),DependencyNotFoundForModuleError2}(RediError),DependencyNotFoundError=function(_super){__extends$1$1(DependencyNotFoundError2,_super);function DependencyNotFoundError2(id){var _this=this,msg='Cannot find "'.concat(prettyPrintIdentifier(id),'" registered by any injector. The stack of dependencies is: "').concat(ResolvingStack.map(function(id2){return prettyPrintIdentifier(id2)}).join(" -> "),'".');return _this=_super.call(this,msg)||this,clearResolvingStack(),_this}return __name(DependencyNotFoundError2,"DependencyNotFoundError"),DependencyNotFoundError2}(RediError),DependencyCollection=function(){function DependencyCollection2(dependencies){var _this=this;this.dependencyMap=new Map,this.normalizeDependencies(dependencies).map(function(pair){return _this.add(pair[0],pair[1])})}return __name(DependencyCollection2,"DependencyCollection"),DependencyCollection2.prototype.add=function(ctorOrId,val){typeof val>"u"&&(val={useClass:ctorOrId,lazy:!1});var arr=this.dependencyMap.get(ctorOrId);typeof arr>"u"&&(arr=[],this.dependencyMap.set(ctorOrId,arr)),arr.push(val)},DependencyCollection2.prototype.delete=function(id){this.dependencyMap.delete(id)},DependencyCollection2.prototype.get=function(id,quantity){quantity===void 0&&(quantity=exports2.Quantity.REQUIRED);var ret=this.dependencyMap.get(id);return checkQuantity(id,quantity,ret.length),retrieveQuantity(quantity,ret)},DependencyCollection2.prototype.has=function(id){return this.dependencyMap.has(id)},DependencyCollection2.prototype.append=function(dependencies){var _this=this;this.normalizeDependencies(dependencies).forEach(function(pair){return _this.add(pair[0],pair[1])})},DependencyCollection2.prototype.dispose=function(){this.dependencyMap.clear()},DependencyCollection2.prototype.normalizeDependencies=function(dependencies){return dependencies.map(function(dependency){var id=dependency[0],val;return isBareClassDependency(dependency)?val={useClass:dependency[0],lazy:!1}:val=dependency[1],[id,val]})},DependencyCollection2}(),ResolvedDependencyCollection=function(){function ResolvedDependencyCollection2(){this.resolvedDependencies=new Map}return __name(ResolvedDependencyCollection2,"ResolvedDependencyCollection"),ResolvedDependencyCollection2.prototype.add=function(id,val){var arr=this.resolvedDependencies.get(id);typeof arr>"u"&&(arr=[],this.resolvedDependencies.set(id,arr)),arr.push(val)},ResolvedDependencyCollection2.prototype.has=function(id){return this.resolvedDependencies.has(id)},ResolvedDependencyCollection2.prototype.delete=function(id){if(this.resolvedDependencies.has(id)){var things=this.resolvedDependencies.get(id);things.forEach(function(t){return isDisposable(t)?t.dispose():void 0}),this.resolvedDependencies.delete(id)}},ResolvedDependencyCollection2.prototype.get=function(id,quantity){quantity===void 0&&(quantity=exports2.Quantity.REQUIRED);var ret=this.resolvedDependencies.get(id);if(!ret)throw new DependencyNotFoundError(id);return checkQuantity(id,quantity,ret.length),quantity===exports2.Quantity.MANY?ret:ret[0]},ResolvedDependencyCollection2.prototype.dispose=function(){Array.from(this.resolvedDependencies.values()).forEach(function(items){items.forEach(function(item){return isDisposable(item)?item.dispose():void 0})}),this.resolvedDependencies.clear()},ResolvedDependencyCollection2}();function changeLookup(target,index2,lookUp){var descriptor=getDependencyByIndex(target,index2);descriptor.lookUp=lookUp}__name(changeLookup,"changeLookup");function lookupDecoratorFactoryProducer(lookUp){return __name(function DecoratorFactory(){return this instanceof DecoratorFactory?this:function(target,_key,index2){changeLookup(target,index2,lookUp)}},"DecoratorFactory")}__name(lookupDecoratorFactoryProducer,"lookupDecoratorFactoryProducer");var SkipSelf=lookupDecoratorFactoryProducer(exports2.LookUp.SKIP_SELF),Self=lookupDecoratorFactoryProducer(exports2.LookUp.SELF);function changeToSelf(target,index2,withNew){var descriptor=getDependencyByIndex(target,index2);descriptor.withNew=withNew}__name(changeToSelf,"changeToSelf");function withNewDecoratorFactoryProducer(withNew){return __name(function DecoratorFactory(){return this instanceof DecoratorFactory?this:function(target,_key,index2){changeToSelf(target,index2,withNew)}},"DecoratorFactory")}__name(withNewDecoratorFactoryProducer,"withNewDecoratorFactoryProducer");var WithNew=withNewDecoratorFactoryProducer(!0);function normalizeFactoryDeps(deps,startIndex){return startIndex===void 0&&(startIndex=0),deps?deps.map(function(dep,index2){if(index2+=startIndex,!Array.isArray(dep))return{paramIndex:index2,identifier:dep,quantity:exports2.Quantity.REQUIRED,withNew:!1};var modifiers=dep.slice(0,dep.length-1),identifier=dep[dep.length-1],lookUp=void 0,quantity=exports2.Quantity.REQUIRED,withNew=!1;return modifiers.forEach(function(modifier){if(modifier instanceof Self)lookUp=exports2.LookUp.SELF;else if(modifier instanceof SkipSelf)lookUp=exports2.LookUp.SKIP_SELF;else if(modifier instanceof Optional)quantity=exports2.Quantity.OPTIONAL;else if(modifier instanceof Many)quantity=exports2.Quantity.MANY;else if(modifier instanceof WithNew)withNew=!0;else throw new RediError("unknown dep modifier ".concat(modifier,"."))}),{paramIndex:index2,identifier,quantity,lookUp,withNew}}):[]}__name(normalizeFactoryDeps,"normalizeFactoryDeps");var runWhenIdle;(function(){if(typeof requestIdleCallback<"u"&&typeof cancelIdleCallback<"u")runWhenIdle=__name(function(runner,timeout){var handle=requestIdleCallback(runner,typeof timeout=="number"?{timeout}:void 0),disposed=!1;return function(){disposed||(disposed=!0,cancelIdleCallback(handle))}},"runWhenIdle");else{var dummyIdle_1=Object.freeze({didTimeout:!0,timeRemaining:__name(function(){return 15},"timeRemaining")});runWhenIdle=__name(function(runner){var handle=setTimeout(function(){return runner(dummyIdle_1)}),disposed=!1;return function(){disposed||(disposed=!0,clearTimeout(handle))}},"runWhenIdle")}})();var IdleValue=function(){function IdleValue2(executor){var _this=this;this.didRun=!1,this.selfExecutor=function(){try{_this.value=executor()}catch(err){_this.error=err}finally{_this.didRun=!0}},this.disposeCallback=runWhenIdle(function(){return _this.selfExecutor()})}return __name(IdleValue2,"IdleValue"),IdleValue2.prototype.hasRun=function(){return this.didRun},IdleValue2.prototype.dispose=function(){this.disposeCallback()},IdleValue2.prototype.getValue=function(){if(this.didRun||(this.dispose(),this.selfExecutor()),this.error)throw this.error;return this.value},IdleValue2}(),__extends$5=function(){var extendStatics=__name(function(d,b){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d2,b2){d2.__proto__=b2}||function(d2,b2){for(var p in b2)Object.prototype.hasOwnProperty.call(b2,p)&&(d2[p]=b2[p])},extendStatics(d,b)},"extendStatics");return function(d,b){if(typeof b!="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}__name(__,"__"),d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}(),__assign$1=__name(function(){return __assign$1=Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++){s=arguments[i];for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&(t[p]=s[p])}return t},__assign$1.apply(this,arguments)},"__assign$1"),__spreadArray$1=__name(function(to,from,pack){if(pack||arguments.length===2)for(var i=0,l2=from.length,ar;i<l2;i++)(ar||!(i in from))&&(ar||(ar=Array.prototype.slice.call(from,0,i)),ar[i]=from[i]);return to.concat(ar||Array.prototype.slice.call(from))},"__spreadArray$1"),MAX_RESOLUTIONS_QUEUED=300,NotInstantiatedSymbol=Symbol("$$NOT_INSTANTIATED_SYMBOL"),CircularDependencyError=function(_super){__extends$5(CircularDependencyError2,_super);function CircularDependencyError2(id){return _super.call(this,'Detecting cyclic dependency. The last identifier is "'.concat(prettyPrintIdentifier(id),'".'))||this}return __name(CircularDependencyError2,"CircularDependencyError"),CircularDependencyError2}(RediError),InjectorAlreadyDisposedError=function(_super){__extends$5(InjectorAlreadyDisposedError2,_super);function InjectorAlreadyDisposedError2(){return _super.call(this,"Injector cannot be accessed after it was disposed.")||this}return __name(InjectorAlreadyDisposedError2,"InjectorAlreadyDisposedError"),InjectorAlreadyDisposedError2}(RediError),AsyncItemReturnAsyncItemError=function(_super){__extends$5(AsyncItemReturnAsyncItemError2,_super);function AsyncItemReturnAsyncItemError2(id){return _super.call(this,'Async item "'.concat(prettyPrintIdentifier(id),'" returns another async item.'))||this}return __name(AsyncItemReturnAsyncItemError2,"AsyncItemReturnAsyncItemError"),AsyncItemReturnAsyncItemError2}(RediError),GetAsyncItemFromSyncApiError=function(_super){__extends$5(GetAsyncItemFromSyncApiError2,_super);function GetAsyncItemFromSyncApiError2(id){return _super.call(this,'Cannot get async item "'.concat(prettyPrintIdentifier(id),'" from sync api.'))||this}return __name(GetAsyncItemFromSyncApiError2,"GetAsyncItemFromSyncApiError"),GetAsyncItemFromSyncApiError2}(RediError),AddDependencyAfterResolutionError=function(_super){__extends$5(AddDependencyAfterResolutionError2,_super);function AddDependencyAfterResolutionError2(id){return _super.call(this,'Cannot add dependency "'.concat(prettyPrintIdentifier(id),'" after it is already resolved.'))||this}return __name(AddDependencyAfterResolutionError2,"AddDependencyAfterResolutionError"),AddDependencyAfterResolutionError2}(RediError),DeleteDependencyAfterResolutionError=function(_super){__extends$5(DeleteDependencyAfterResolutionError2,_super);function DeleteDependencyAfterResolutionError2(id){return _super.call(this,'Cannot dependency dependency "'.concat(prettyPrintIdentifier(id),'" after it is already resolved.'))||this}return __name(DeleteDependencyAfterResolutionError2,"DeleteDependencyAfterResolutionError"),DeleteDependencyAfterResolutionError2}(RediError),Injector=function(){function Injector2(dependencies,parent){parent===void 0&&(parent=null),this.parent=parent,this.children=[],this.resolutionOngoing=0,this.disposed=!1,this.dependencyCollection=new DependencyCollection(dependencies||[]),this.resolvedDependencyCollection=new ResolvedDependencyCollection,parent&&parent.children.push(this)}return __name(Injector2,"Injector"),Injector2.prototype.createChild=function(dependencies){return this._ensureInjectorNotDisposed(),new Injector2(dependencies,this)},Injector2.prototype.dispose=function(){this.children.forEach(function(c){return c.dispose()}),this.children.length=0,this.dependencyCollection.dispose(),this.resolvedDependencyCollection.dispose(),this.deleteSelfFromParent(),this.disposed=!0},Injector2.prototype.deleteSelfFromParent=function(){if(this.parent){var index2=this.parent.children.indexOf(this);index2>-1&&this.parent.children.splice(index2,1)}},Injector2.prototype.add=function(dependency){this._ensureInjectorNotDisposed();var identifierOrCtor=dependency[0],item=dependency[1];if(this.resolvedDependencyCollection.has(identifierOrCtor))throw new AddDependencyAfterResolutionError(identifierOrCtor);typeof item>"u"?this.dependencyCollection.add(identifierOrCtor):isAsyncDependencyItem(item)||isClassDependencyItem(item)||isValueDependencyItem(item)||isFactoryDependencyItem(item)?this.dependencyCollection.add(identifierOrCtor,item):this.resolvedDependencyCollection.add(identifierOrCtor,item)},Injector2.prototype.replace=function(dependency){this._ensureInjectorNotDisposed();var identifier=dependency[0];if(this.resolvedDependencyCollection.has(identifier))throw new AddDependencyAfterResolutionError(identifier);this.dependencyCollection.delete(identifier),dependency.length===1?this.dependencyCollection.add(identifier):this.dependencyCollection.add(identifier,dependency[1])},Injector2.prototype.delete=function(identifier){if(this._ensureInjectorNotDisposed(),this.resolvedDependencyCollection.has(identifier))throw new DeleteDependencyAfterResolutionError(identifier);this.dependencyCollection.delete(identifier)},Injector2.prototype.invoke=function(cb){for(var _this=this,args=[],_i2=1;_i2<arguments.length;_i2++)args[_i2-1]=arguments[_i2];this._ensureInjectorNotDisposed();var accessor={get:__name(function(id,quantityOrLookup,lookUp){return _this._get(id,quantityOrLookup,lookUp)},"get")};return cb.apply(void 0,__spreadArray$1([accessor],args,!1))},Injector2.prototype.has=function(id){var _a2;return this.dependencyCollection.has(id)||((_a2=this.parent)===null||_a2===void 0?void 0:_a2.has(id))||!1},Injector2.prototype.get=function(id,quantityOrLookup,lookUp){this._ensureInjectorNotDisposed();var newResult=this._get(id,quantityOrLookup,lookUp);if(Array.isArray(newResult)&&newResult.some(function(r){return isAsyncHook(r)})||isAsyncHook(newResult))throw new GetAsyncItemFromSyncApiError(id);return newResult},Injector2.prototype._get=function(id,quantityOrLookup,lookUp,toSelf){var quantity=exports2.Quantity.REQUIRED;if(quantityOrLookup===exports2.Quantity.REQUIRED||quantityOrLookup===exports2.Quantity.OPTIONAL||quantityOrLookup===exports2.Quantity.MANY?quantity=quantityOrLookup:lookUp=quantityOrLookup,!toSelf){var cachedResult=this.getValue(id,quantity,lookUp);if(cachedResult!==NotInstantiatedSymbol)return cachedResult}return this.createDependency(id,quantity,lookUp,!toSelf)},Injector2.prototype.getAsync=function(id){this._ensureInjectorNotDisposed();var cachedResult=this.getValue(id,exports2.Quantity.REQUIRED);if(cachedResult!==NotInstantiatedSymbol)return Promise.resolve(cachedResult);var newResult=this.createDependency(id,exports2.Quantity.REQUIRED);return isAsyncHook(newResult)?newResult.whenReady():Promise.resolve(newResult)},Injector2.prototype.createInstance=function(ctor){for(var customArgs=[],_i2=1;_i2<arguments.length;_i2++)customArgs[_i2-1]=arguments[_i2];return this._ensureInjectorNotDisposed(),this._resolveClassImpl.apply(this,__spreadArray$1([{useClass:ctor}],customArgs,!1))},Injector2.prototype._resolveDependency=function(id,item,shouldCache){shouldCache===void 0&&(shouldCache=!0);var result;pushResolvingStack(id);try{isValueDependencyItem(item)?result=this._resolveValueDependency(id,item):isFactoryDependencyItem(item)?result=this._resolveFactory(id,item,shouldCache):isClassDependencyItem(item)?result=this._resolveClass(id,item,shouldCache):isExistingDependencyItem(item)?result=this._resolveExisting(id,item):result=this._resolveAsync(id,item),popupResolvingStack()}catch(e){throw popupResolvingStack(),e}return result},Injector2.prototype._resolveExisting=function(id,item){var thing=this.get(item.useExisting);return this.resolvedDependencyCollection.add(id,thing),thing},Injector2.prototype._resolveValueDependency=function(id,item){var thing=item.useValue;return this.resolvedDependencyCollection.add(id,thing),thing},Injector2.prototype._resolveClass=function(id,item,shouldCache){var _this=this;shouldCache===void 0&&(shouldCache=!0),item.useClass;var thing;if(item.lazy){var idle_1=new IdleValue(function(){return _this._ensureInjectorNotDisposed(),_this._resolveClassImpl(item)});thing=new Proxy(Object.create(null),{get:__name(function(target,key){if(key in target)return target[key];if(key!=="whenReady"){var thing2=idle_1.getValue(),property=thing2[key];return typeof property!="function"||(property=property.bind(thing2),target[key]=property),property}},"get"),set:__name(function(_target,key,value){return idle_1.getValue()[key]=value,!0},"set")})}else thing=this._resolveClassImpl(item);return id&&shouldCache&&this.resolvedDependencyCollection.add(id,thing),thing},Injector2.prototype._resolveClassImpl=function(item){for(var _a2,extraParams=[],_i2=1;_i2<arguments.length;_i2++)extraParams[_i2-1]=arguments[_i2];var ctor=item.useClass;this.markNewResolution(ctor);for(var declaredDependencies=getDependencies(ctor).sort(function(a,b){return a.paramIndex-b.paramIndex}).map(function(descriptor){return __assign$1(__assign$1({},descriptor),{identifier:normalizeForwardRef(descriptor.identifier)})}),resolvedArgs=[],_b2=0,declaredDependencies_1=declaredDependencies;_b2<declaredDependencies_1.length;_b2++){var dep=declaredDependencies_1[_b2];try{var thing_1=this._get(dep.identifier,dep.quantity,dep.lookUp,dep.withNew);resolvedArgs.push(thing_1)}catch(error){throw error instanceof DependencyNotFoundError?new DependencyNotFoundForModuleError(ctor,dep.identifier,dep.paramIndex):error}}var args=__spreadArray$1([],extraParams,!0),firstDependencyArgIndex=declaredDependencies.length>0?declaredDependencies[0].paramIndex:args.length;if(args.length!==firstDependencyArgIndex){console.warn("[redi]: Expect ".concat(firstDependencyArgIndex," custom parameter(s) of ").concat(prettyPrintIdentifier(ctor)," but get ").concat(args.length,"."));var delta=firstDependencyArgIndex-args.length;delta>0?args=__spreadArray$1(__spreadArray$1([],args,!0),new Array(delta).fill(void 0),!0):args=args.slice(0,firstDependencyArgIndex)}var thing=new(ctor.bind.apply(ctor,__spreadArray$1(__spreadArray$1([void 0],args,!1),resolvedArgs,!1)));return(_a2=item==null?void 0:item.onInstantiation)===null||_a2===void 0||_a2.call(item,thing),this.markResolutionCompleted(),thing},Injector2.prototype._resolveFactory=function(id,item,shouldCache){var _a2;this.markNewResolution(id);for(var declaredDependencies=normalizeFactoryDeps(item.deps),resolvedArgs=[],_i2=0,declaredDependencies_2=declaredDependencies;_i2<declaredDependencies_2.length;_i2++){var dep=declaredDependencies_2[_i2];try{var thing_2=this._get(dep.identifier,dep.quantity,dep.lookUp,dep.withNew);resolvedArgs.push(thing_2)}catch(error){throw error instanceof DependencyNotFoundError?new DependencyNotFoundForModuleError(id,dep.identifier,dep.paramIndex):error}}var thing=item.useFactory.apply(null,resolvedArgs);return shouldCache&&this.resolvedDependencyCollection.add(id,thing),this.markResolutionCompleted(),(_a2=item==null?void 0:item.onInstantiation)===null||_a2===void 0||_a2.call(item,thing),thing},Injector2.prototype._resolveAsync=function(id,item){var _this=this,asyncLoader={__symbol:AsyncHookSymbol,whenReady:__name(function(){return _this._resolveAsyncImpl(id,item)},"whenReady")};return asyncLoader},Injector2.prototype._resolveAsyncImpl=function(id,item){var _this=this;return item.useAsync().then(function(thing){var resolvedCheck=_this.getValue(id);if(resolvedCheck!==NotInstantiatedSymbol)return resolvedCheck;var ret;if(Array.isArray(thing)){var item_1=thing[1];if(isAsyncDependencyItem(item_1))throw new AsyncItemReturnAsyncItemError(id);ret=_this._resolveDependency(id,item_1)}else isCtor(thing)?ret=_this._resolveClassImpl({useClass:thing,onInstantiation:item.onInstantiation}):ret=thing;return _this.resolvedDependencyCollection.add(id,ret),ret})},Injector2.prototype.getValue=function(id,quantity,lookUp){var _this=this;quantity===void 0&&(quantity=exports2.Quantity.REQUIRED);var onSelf=__name(function(){return _this.dependencyCollection.has(id)&&!_this.resolvedDependencyCollection.has(id)?NotInstantiatedSymbol:_this.resolvedDependencyCollection.get(id,quantity)},"onSelf"),onParent=__name(function(){return _this.parent?_this.parent.getValue(id,quantity):NotInstantiatedSymbol},"onParent");return lookUp===exports2.LookUp.SKIP_SELF?onParent():lookUp===exports2.LookUp.SELF||this.resolvedDependencyCollection.has(id)||this.dependencyCollection.has(id)?onSelf():onParent()},Injector2.prototype.createDependency=function(id,quantity,lookUp,shouldCache){var _this=this;quantity===void 0&&(quantity=exports2.Quantity.REQUIRED),shouldCache===void 0&&(shouldCache=!0);var onSelf=__name(function(){var registrations=_this.dependencyCollection.get(id,quantity),ret=null;return Array.isArray(registrations)?ret=registrations.map(function(dependencyItem){return _this._resolveDependency(id,dependencyItem,shouldCache)}):registrations&&(ret=_this._resolveDependency(id,registrations,shouldCache)),ret},"onSelf"),onParent=__name(function(){if(_this.parent)return _this.parent.createDependency(id,quantity,void 0,shouldCache);if(quantity===exports2.Quantity.OPTIONAL)return null;throw pushResolvingStack(id),new DependencyNotFoundError(id)},"onParent");return lookUp===exports2.LookUp.SKIP_SELF?onParent():id===Injector2?this:this.dependencyCollection.has(id)?onSelf():onParent()},Injector2.prototype.markNewResolution=function(id){if(this.resolutionOngoing+=1,this.resolutionOngoing>=MAX_RESOLUTIONS_QUEUED)throw new CircularDependencyError(id)},Injector2.prototype.markResolutionCompleted=function(){this.resolutionOngoing-=1},Injector2.prototype._ensureInjectorNotDisposed=function(){if(this.disposed)throw new InjectorAlreadyDisposedError},Injector2}();function setDependencies(registerTarget,deps,startIndex){startIndex===void 0&&(startIndex=0);var normalizedDescriptors=normalizeFactoryDeps(deps,startIndex);normalizedDescriptors.forEach(function(descriptor){setDependency(registerTarget,descriptor.identifier,descriptor.paramIndex,descriptor.quantity,descriptor.lookUp)})}__name(setDependencies,"setDependencies");var globalObject$1=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||typeof global<"u"&&global,__REDI_GLOBAL_LOCK__="REDI_GLOBAL_LOCK",isNode$1=typeof process<"u"&&process.versions!=null&&process.versions.node!=null;globalObject$1[__REDI_GLOBAL_LOCK__]?isNode$1||console.error(`[redi]: You are loading scripts of redi more than once! This may cause undesired behavior in your application.
5
5
  Maybe your dependencies added redi as its dependency and bundled redi to its dist files. Or you import different versions of redi.
6
- For more info please visit our website: https://redi.wendell.fun/en-US/docs/debug#import-scripts-of-redi-more-than-once`):xi[Ki]=!0;var zi="REDI_CONTEXT_LOCK",Bu=typeof process<"u"&&process.versions!=null&&process.versions.node!=null,Yi=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||typeof global<"u"&&global;Yi[zi]?Bu||console.error(`[redi]: "RediContext" is already created. You may import "RediContext" from different paths. Use "import { RediContext } from '@wendellhu/redi/react-bindings'; instead."`):Yi[zi]=!0;var nn=et.createContext({injector:null});nn.displayName="RediContext";var Or=nn.Provider,Xi=nn.Consumer,ju=function(){var e=function(n,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(r[i]=s[i])},e(n,t)};return function(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(n,t);function r(){this.constructor=n}n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}(),Gu=function(e){ju(n,e);function n(){return e.call(this,"Using dependency injection outside of a RediContext.")||this}return n}(Le);function Qi(){var e=et.useContext(nn);if(!e.injector)throw new Gu;return e.injector}function Vu(e,n,t){var r=Qi();return et.useMemo(function(){return r.get(e,n,t)},[e,n,t])}var kn=function(){return kn=Object.assign||function(e){for(var n,t=1,r=arguments.length;t<r;t++){n=arguments[t];for(var s in n)Object.prototype.hasOwnProperty.call(n,s)&&(e[s]=n[s])}return e},kn.apply(this,arguments)};function xu(e){var n=e.children,t=e.dependencies,r=et.useRef(null);return et.useEffect(function(){return function(){var s;return(s=r.current)===null||s===void 0?void 0:s.dispose()}},[]),et.createElement(Xi,null,function(s){var i;return r.current?i=r.current:(i=s.injector?s.injector.createChild(t):new dt(t),r.current=i),et.createElement(Or,{value:{injector:i}},n)})}function Ku(e,n){return function(r){return et.createElement(Or,{value:{injector:n}},et.createElement(e,kn({},r)))}}function zu(e,n){return function(r){return et.createElement(xu,{dependencies:n},et.createElement(e,kn({},r)))}}var Yu=function(){var e=function(n,t){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,s){r.__proto__=s}||function(r,s){for(var i in s)Object.prototype.hasOwnProperty.call(s,i)&&(r[i]=s[i])},e(n,t)};return function(n,t){if(typeof t!="function"&&t!==null)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");e(n,t);function r(){this.constructor=n}n.prototype=t===null?Object.create(t):(r.prototype=t.prototype,new r)}}(),Xu=function(e){Yu(n,e);function n(t){return e.call(this,'You should make "RediContext" as '.concat(t.constructor.name,"'s default context type. ")+"If you want to use multiple context, please check this on React doc site. https://reactjs.org/docs/context.html#classcontexttype")||this}return n}(Le);function Qu(e,n,t){return function(){return{get:function(){var r=this,s=r.context;if(!s||!s.injector)throw new Xu(r);var i=s.injector,o=i.get(e,n||u.Quantity.REQUIRED,t);return o}}}}var qu=function(e,n,t){if(t||arguments.length===2)for(var r=0,s=n.length,i;r<s;r++)(i||!(r in n))&&(i||(i=Array.prototype.slice.call(n,0,r)),i[r]=n[r]);return e.concat(i||Array.prototype.slice.call(n))};function qi(e,n){var t=e instanceof W.BehaviorSubject&&typeof n>"u"?e.getValue():n,r=ke.useState(t),s=r[0],i=r[1];return ke.useEffect(function(){var o=e.subscribe(function(a){return i(a)});return function(){return o.unsubscribe()}},[e]),s}function Zi(e){return typeof e=="function"?e():e}function Zu(e,n,t,r){if(typeof e=="function"&&!r)throw new Le("Expected deps to be provided when observable is a function!");var s=ke.useRef(null),i=ke.useRef(!1),o=ke.useMemo(function(){return e},qu([],typeof r<"u"?r:[e],!0)),a=ke.useState(0);a[0];var l=a[1],d=ke.useRef(function(){var h;if(o){var c=Zi(o).subscribe(function(f){i.current=!0,h=f});c.unsubscribe()}return h!=null?h:n}());if(ke.useEffect(function(){var h=null;return o&&(s.current=Zi(o),h=s.current.subscribe(function(c){d.current=c,l(function(f){return f+1})})),function(){return h==null?void 0:h.unsubscribe()}},[o]),t&&!i.current)throw new Error("Expect `shouldHaveSyncValue` but not getting a sync value!");return d.current}function Ju(e){var n=ke.useState(0),t=n[1];ke.useEffect(function(){var r=e.subscribe(function(){return t(function(s){return s+1})});return function(){return r.unsubscribe()}},[])}var Sr=new WeakMap;function ec(e,n){var t=ke.useRef(void 0),r=qi(e,n),s=ke.useMemo(function(){return ke.createContext(r)},[e]),i=ke.useCallback(function(o){return ke.createElement(s.Provider,{value:r},o.children)},[e,r]);return t.current!==e&&(t.current&&Sr.delete(t.current),t.current=e,Sr.set(e,s)),{Provider:i,value:r}}function tc(e){var n=Sr.get(e);if(!n)throw new Le("try to read context value but no ancestor component subscribed it.");return ke.useContext(n)}async function Ji(e){for(const[n,t]of e.entries())try{if(!await t())return{index:n,result:!1}}catch(r){return{index:n,result:!1,error:r}}return{result:!0,index:-1}}function eo(e){for(const[n,t]of e.entries())try{if(!t())return{index:n,result:!1}}catch(r){return{index:n,result:!1,error:r}}return{result:!0,index:-1}}const rn=xe("univer.context-service");class to extends Te{constructor(){super(...arguments);g(this,"_contextChanged$",new W.Subject);g(this,"contextChanged$",this._contextChanged$.asObservable());g(this,"_contextMap",new Map)}dispose(){super.dispose(),this._contextChanged$.complete()}getContextValue(t){var r;return(r=this._contextMap.get(t))!=null?r:!1}setContextValue(t,r){this._contextMap.set(t,r),this._contextChanged$.next({[t]:r})}subscribeContextValue$(t){return new W.Observable(r=>{const s=this._contextChanged$.pipe(W.filter(i=>typeof i[t]<"u")).subscribe(i=>r.next(i[t]));return this._contextMap.has(t)&&r.next(this._contextMap.get(t)),()=>s.unsubscribe()})}}var no=(e=>(e[e.SILENT=0]="SILENT",e[e.ERROR=1]="ERROR",e[e.WARN=2]="WARN",e[e.INFO=3]="INFO",e[e.VERBOSE=4]="VERBOSE",e))(no||{});const Ot=xe("univer.log");class ro extends Te{constructor(){super(...arguments);g(this,"_logLevel",3)}debug(...t){this._logLevel>=4&&this._log(console.debug,...t)}log(...t){this._logLevel>=3&&this._log(console.log,...t)}warn(...t){this._logLevel>=2&&this._log(console.warn,...t)}error(...t){this._logLevel>=1&&this._log(console.error,...t)}setLogLevel(t){this._logLevel=t}_log(t,...r){const s=r[0];/^\[(.*?)\]/g.test(s)?t(`\x1B[97;104m${s}\x1B[0m`,...r.slice(1)):t(...r)}}var nc=Object.defineProperty,rc=Object.getOwnPropertyDescriptor,sc=(e,n,t,r)=>{for(var s=r>1?void 0:r?rc(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&nc(n,t,s),s},so=(e,n)=>(t,r)=>n(t,r,e),sn=(e=>(e[e.COMMAND=0]="COMMAND",e[e.OPERATION=1]="OPERATION",e[e.MUTATION=2]="MUTATION",e))(sn||{});const on=xe("anywhere.command-service");class ic{constructor(){g(this,"_commands",new Map);g(this,"_commandTypes",new Map)}registerCommand(n){if(this._commands.has(n.id))throw new Error(`[CommandRegistry]: command "${n.id}" has been registered before.`);return this._commands.set(n.id,n),this._commandTypes.set(n.id,n.type),Se(()=>{var t;this._commands.delete(n.id),this._commandTypes.delete(n.id),(t=n.onDispose)==null||t.call(n)})}hasCommand(n){return this._commands.has(n)}getCommand(n){return this._commands.has(n)?[this._commands.get(n)]:null}getCommandType(n){return this._commandTypes.get(n)}}const io={id:"nil",type:0,handler:()=>!0};u.CommandService=class extends Te{constructor(t,r){super();g(this,"_commandRegistry");g(this,"_beforeCommandExecutionListeners",[]);g(this,"_commandExecutedListeners",[]);g(this,"_multiCommandDisposables",new Map);g(this,"_commandExecutingLevel",0);g(this,"_commandExecutionStack",[]);this._injector=t,this._logService=r,this._commandRegistry=new ic,this._registerCommand(io)}dispose(){super.dispose(),this._commandExecutedListeners.length=0,this._beforeCommandExecutionListeners.length=0}hasCommand(t){return this._commandRegistry.hasCommand(t)}registerCommand(t){return this._registerCommand(t)}registerMultipleCommand(t){return this._registerMultiCommand(t)}beforeCommandExecuted(t){if(this._beforeCommandExecutionListeners.indexOf(t)===-1)return this._beforeCommandExecutionListeners.push(t),Se(()=>{const r=this._beforeCommandExecutionListeners.indexOf(t);this._beforeCommandExecutionListeners.splice(r,1)});throw new Error("[CommandService]: could not add a listener twice.")}onCommandExecuted(t){if(this._commandExecutedListeners.indexOf(t)===-1)return this._commandExecutedListeners.push(t),Se(()=>{const r=this._commandExecutedListeners.indexOf(t);this._commandExecutedListeners.splice(r,1)});throw new Error("[CommandService]: could not add a listener twice.")}async executeCommand(t,r,s){try{const i=this._commandRegistry.getCommand(t);if(i){const[o]=i,a={id:o.id,type:o.type,params:r},l=this._pushCommandExecutionStack(a);this._beforeCommandExecutionListeners.forEach(h=>h(a,s));const d=await this._execute(o,r,s);return this._commandExecutedListeners.forEach(h=>h(a,s)),l.dispose(),d}throw new Error(`[CommandService]: command "${t}" is not registered.`)}catch(i){throw this._logService.error(i),i}}syncExecuteCommand(t,r,s){var o;const i=this._commandRegistry.getCommand(t);if(i){const[a]=i,l={id:a.id,type:a.type,params:r};if(a.type===2){const c=jl(this._commandExecutionStack,f=>f.type===0);c&&(l.params=(o=l.params)!=null?o:{},l.params.trigger=c.id)}const d=this._pushCommandExecutionStack(l);this._beforeCommandExecutionListeners.forEach(c=>c(l,s));const h=this._syncExecute(a,r,s);return this._commandExecutedListeners.forEach(c=>c(l,s)),d.dispose(),h}throw new Error(`[CommandService]: command "${t}" is not registered.`)}_pushCommandExecutionStack(t){return this._commandExecutionStack.push(t),Se(()=>bn(this._commandExecutionStack,t))}_registerCommand(t){return this._commandRegistry.registerCommand(t)}_registerMultiCommand(t){const r=this._commandRegistry.getCommand(t.id);let s;if(r){if(r[0].multi!==!0)throw new Error("Command has registered as a single command.");s=r[0]}else{const o=new sr;s=new oc(t.id),o.add(this._commandRegistry.registerCommand(s)),o.add(Se(()=>{this._multiCommandDisposables.delete(t.id)})),this._multiCommandDisposables.set(t.id,o)}const i=s.registerImplementation(t);return Se(()=>{var o;i.dispose(),s.hasImplementations()||(o=this._multiCommandDisposables.get(t.id))==null||o.dispose()})}async _execute(t,r,s){this._logService.debug("[CommandService]",`${"|-".repeat(Math.max(this._commandExecutingLevel,0))}executing command "${t.id}"`),this._commandExecutingLevel++;let i;try{i=await this._injector.invoke(t.handler,r,s),this._commandExecutingLevel--}catch(o){throw i=!1,this._commandExecutingLevel=0,o}return i}_syncExecute(t,r,s){this._logService.debug("[CommandService]",`${"|-".repeat(Math.max(0,this._commandExecutingLevel))}executing command "${t.id}".`),this._commandExecutingLevel++;let i;try{if(i=this._injector.invoke(t.handler,r,s),i instanceof Promise)throw new TypeError("[CommandService]: Command handler should not return a promise.");this._commandExecutingLevel--}catch(o){throw i=!1,this._commandExecutingLevel=0,o}return i}},u.CommandService=sc([so(0,rt(dt)),so(1,Ot)],u.CommandService);class oc{constructor(n){g(this,"name");g(this,"multi",!0);g(this,"type",0);g(this,"priority",0);g(this,"_implementations",[]);g(this,"handler",async(n,t)=>{if(!this._implementations.length)return!1;const r=n.get(Ot),s=n.get(rn),i=n.get(dt);for(const o of this._implementations){const a=o.command.preconditions;if((!a||a&&a(s))&&(r.debug("[MultiCommand]",`executing implementation "${o.command.name}".`),await i.invoke(o.command.handler,t)))return!0}return!1});this.id=n,this.name=n}registerImplementation(n){const t={command:n};return this._implementations.push(t),this._implementations.sort((r,s)=>s.command.priority-r.command.priority),Se(()=>{var s;const r=this._implementations.indexOf(t);this._implementations.splice(r,1),(s=n.onDispose)==null||s.call(n)})}hasImplementations(){return this._implementations.length>0}}function Nr(e,n,t){const r=e.map(s=>()=>n.syncExecuteCommand(s.id,s.params,t));return eo(r)}function ac(e,n,t){const r=e.map(s=>()=>n.executeCommand(s.id,s.params,t));return Ji(r)}function oo(e){return new W.Observable(n=>{const t=e((...r)=>n.next(r));return()=>t==null?void 0:t.dispose()})}function ao(e){return function(t){return new W.Observable(r=>(t.subscribe({next:s=>{r.next(s),e(s)&&r.complete()},complete:()=>r.complete(),error:s=>r.error(s)}),()=>r.unsubscribe()))}}const lc=e=>new Promise(n=>{W.merge(oo(e.onCommandExecuted.bind(e)).pipe(ht.filter(([t])=>t.type===sn.MUTATION)),W.timer(300)).pipe(ht.debounceTime(16),ht.first()).subscribe(()=>{n()})});var Ye=(e=>(e[e.UNDEFINED=0]="UNDEFINED",e[e.OK=1]="OK",e[e.INTERNAL_ERROR=2]="INTERNAL_ERROR",e[e.PERMISSION_DENIED=3]="PERMISSION_DENIED",e[e.NOT_FOUND=4]="NOT_FOUND",e[e.UNAUTHENTICATED=5]="UNAUTHENTICATED",e[e.ALREADY_EXISTS=6]="ALREADY_EXISTS",e[e.INVALID_ARGUMENT=7]="INVALID_ARGUMENT",e[e.TOO_MANY_REQUESTS=8]="TOO_MANY_REQUESTS",e[e.COMPLETION_FINISHED=9]="COMPLETION_FINISHED",e[e.CHANGESET_REVISION_CONFILICT=5001]="CHANGESET_REVISION_CONFILICT",e[e.SNAPSHOT_INVALID_SNAPSHOT=6001]="SNAPSHOT_INVALID_SNAPSHOT",e[e.SNAPSHOT_HAS_BEEN_REMOVED=6002]="SNAPSHOT_HAS_BEEN_REMOVED",e[e.APPLY_REJECT=7001]="APPLY_REJECT",e[e.APPLY_NON_SEQUENTIAL_REVISION=7002]="APPLY_NON_SEQUENTIAL_REVISION",e[e.APPLY_REVISION_CONFILICT=7003]="APPLY_REVISION_CONFILICT",e[e.APPLY_PERMISSION_DENIED=7004]="APPLY_PERMISSION_DENIED",e[e.CONNECTOR_DATA_TOO_LARGE=8001]="CONNECTOR_DATA_TOO_LARGE",e[e.LICENSE_MAX_UNITS_EXCEEDED=9001]="LICENSE_MAX_UNITS_EXCEEDED",e[e.LICENSE_MAX_MEMBERS_PER_UNIT_EXCEEDED=9002]="LICENSE_MAX_MEMBERS_PER_UNIT_EXCEEDED",e[e.LICENSE_IMPORT_SIZE_EXCEEDED=9003]="LICENSE_IMPORT_SIZE_EXCEEDED",e[e.LICENSE_EXPORT_SIZE_EXCEEDED=9004]="LICENSE_EXPORT_SIZE_EXCEEDED",e[e.LICENSE_DISTRO_REJECTED=9005]="LICENSE_DISTRO_REJECTED",e[e.YUUMI_UNABLE_LOAD_URL=10001]="YUUMI_UNABLE_LOAD_URL",e[e.YUUMI_URL_COL_OUT_OF_RANGE=10002]="YUUMI_URL_COL_OUT_OF_RANGE",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(Ye||{});function lo(e){return!!(e&&e.code&&e.code!==Ye.OK&&e.code!=="OK")}var J=(e=>(e[e.UNIVER_UNKNOWN=0]="UNIVER_UNKNOWN",e[e.UNIVER_DOC=1]="UNIVER_DOC",e[e.UNIVER_SHEET=2]="UNIVER_SHEET",e[e.UNIVER_SLIDE=3]="UNIVER_SLIDE",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(J||{}),uo=(e=>(e[e.SomeCollaborator=0]="SomeCollaborator",e[e.AllCollaborator=1]="AllCollaborator",e[e.OneSelf=2]="OneSelf",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(uo||{}),Be=(e=>(e[e.Reader=0]="Reader",e[e.Editor=1]="Editor",e[e.Owner=2]="Owner",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(Be||{}),Fn=(e=>(e[e.Unkonwn=0]="Unkonwn",e[e.Workbook=1]="Workbook",e[e.Worksheet=2]="Worksheet",e[e.SelectRange=3]="SelectRange",e[e.Document=4]="Document",e[e.Slide=5]="Slide",e[e.UNRECOGNIZED=-1]="UNRECOGNIZED",e))(Fn||{});class Hn extends Te{}class wr{constructor(){g(this,"_data",[])}static create(){return new wr}add(n){this._data.indexOf(n)>-1||this._data.push(n)}delete(n){const t=this._data.indexOf(n);this._data.splice(t,1)}getData(){return this._data}}class br{constructor(){g(this,"_data",new Map)}static create(){return new br}add(n,t){this._data.has(n)||this._data.set(n,t)}delete(n){this._data.delete(n)}getData(){return this._data}}var co=(e=>(e[e.PARAGRAPH=0]="PARAGRAPH",e[e.SECTION_BREAK=1]="SECTION_BREAK",e[e.TABLE=2]="TABLE",e[e.TABLE_ROW=3]="TABLE_ROW",e[e.TABLE_CELL=4]="TABLE_CELL",e[e.CUSTOM_BLOCK=5]="CUSTOM_BLOCK",e))(co||{}),ft=(e=>(e.PARAGRAPH="\r",e.SECTION_BREAK=`
7
- `,e.TABLE_START="",e.TABLE_ROW_START="\x1B",e.TABLE_CELL_START="",e.TABLE_CELL_END="",e.TABLE_ROW_END="",e.TABLE_END="",e.CUSTOM_RANGE_START="",e.CUSTOM_RANGE_END="",e.COLUMN_BREAK="\v",e.PAGE_BREAK="\f",e.DOCS_END="\0",e.TAB=" ",e.CUSTOM_BLOCK="\b",e.LETTER="",e.SPACE=" ",e))(ft||{}),$n=(e=>(e.BULLET_LIST="BULLET_LIST",e.ORDER_LIST="ORDER_LIST",e))($n||{});const uc={BULLET_LIST:{listType:"BULLET_LIST",nestingLevel:[{bulletAlignment:Rt.START,glyphFormat:" %0",textStyle:{fs:12},startNumber:0,glyphSymbol:"●",hanging:{v:21},indentStart:{v:21}},{bulletAlignment:Rt.START,glyphFormat:" %1",textStyle:{fs:12},startNumber:0,glyphSymbol:"■",hanging:{v:21},indentStart:{v:42}},{bulletAlignment:Rt.START,glyphFormat:" %1",textStyle:{fs:12},startNumber:0,glyphSymbol:"◆",hanging:{v:21},indentStart:{v:63}}]},ORDER_LIST:{listType:"ORDER_LIST",nestingLevel:[{bulletAlignment:Rt.START,glyphFormat:" %1.",textStyle:{fs:12},startNumber:0,glyphType:Zt.DECIMAL,hanging:{v:21},indentStart:{v:21}},{bulletAlignment:Rt.START,glyphFormat:" %1.%2)",textStyle:{fs:12},startNumber:0,glyphType:Zt.DECIMAL,hanging:{v:21},indentStart:{v:42}},{bulletAlignment:Rt.START,glyphFormat:" %1.%2.%3.",textStyle:{fs:12},startNumber:0,glyphType:Zt.DECIMAL,hanging:{v:21},indentStart:{v:63}}]}};function Ar(e){const n=[];for(const t of e){const{ed:r,ts:s}=t;if(t.sId===void 0&&delete t.sId,k.isEmptyObject(s)&&t.sId==null)continue;if(n.length===0){n.push(t);continue}const i=n.pop();li(t,i)&&k.hasIntersectionBetweenTwoRanges(i.st,i.ed,t.st,t.ed)?n.push({...t,st:i.st,ed:r}):n.push(i,t)}return n}function ho(e,n,t,r){var d;const{textRuns:s}=e;if(s==null)return;const i=[],o=s.length;let a=!1;const l=(d=n.textRuns)!=null?d:[];if(l.length)for(const h of l)h.st+=r,h.ed+=r;for(let h=0;h<o;h++){const c=s[h],f=s[h+1],{st:_,ed:E}=c;if(E<r)i.push(c);else if(r>=_&&r<=E){if(f&&f.st===f.ed&&r===f.st){i.push(c);continue}if(a)c.st+=t,c.ed+=t,i.push(c);else{a=!0,c.ed+=t;const p=[];if(l.length){const N={...c,st:_,ed:l[0].st};N.ed>N.st&&p.push(N),p.push(...l);const D=l[l.length-1],te={...c,st:D.ed,ed:E+t};te.ed>te.st&&p.push(te)}else p.push(c);i.push(...p)}}else c.st+=t,c.ed+=t,a||(a=!0,i.push(...l)),i.push(c)}a||(a=!0,i.push(...l)),e.textRuns=Ar(i)}function Tr(e,n,t,r){const{paragraphs:s}=e;if(s==null)return;const{paragraphs:i,dataStream:o}=n,a=[];let l=-1;for(let h=0,c=s.length;h<c;h++){const f=s[h],{startIndex:_}=f;_>=r&&(f.startIndex+=t),l===-1&&_>=r&&(l=h),a.push(f.startIndex)}let d=-1;if(i){for(let h=0,c=i.length;h<c;h++){const f=i[h];f.startIndex+=r;const _=f.startIndex;d=a.indexOf(_)}if(o===ft.PARAGRAPH&&i.length===1){const h=s[l],c=i[0],f=h.paragraphStyle,_=h.bullet;h.paragraphStyle=c.paragraphStyle,h.bullet=c.bullet,c.paragraphStyle=f,c.bullet=_}d!==-1&&s.splice(d,1),s.push(...i),s.sort(Dt("startIndex"))}}function cc(e,n,t,r){const{sectionBreaks:s}=e;if(s==null)return;for(let o=0,a=s.length;o<a;o++){const l=s[o],{startIndex:d}=l;d>=r&&(l.startIndex+=t)}const i=n.sectionBreaks;if(i){for(let o=0,a=i.length;o<a;o++){const l=i[o];l.startIndex+=r}s.push(...i),s.sort(Dt("startIndex"))}}function fo(e,n,t,r){const{customBlocks:s}=e;if(s==null)return;for(let o=0,a=s.length;o<a;o++){const l=s[o],{startIndex:d}=l;d>=r&&(l.startIndex+=t)}const i=n.customBlocks;if(i){for(let o=0,a=i.length;o<a;o++){const l=i[o];l.startIndex+=r}s.push(...i),s.sort(Dt("startIndex"))}}function _o(e,n,t,r){const{tables:s}=e;if(s==null)return;for(let o=0,a=s.length;o<a;o++){const l=s[o],{startIndex:d,endIndex:h}=l;d>r?(l.startIndex+=t,l.endIndex+=t):h>=r-1&&(l.endIndex+=t)}const i=n.tables;if(i){for(let o=0,a=i.length;o<a;o++){const l=i[o];l.startIndex+=r,l.endIndex+=r}s.push(...i),s.sort(Dt("startIndex"))}}function go(e,n,t,r){e.customRanges||(e.customRanges=[]);const{customRanges:s}=e,i={};for(let l=0,d=s.length;l<d;l++){const h=s[l];i[h.rangeId]=h;const{startIndex:c,endIndex:f}=h;c>=r?(h.startIndex+=t,h.endIndex+=t):f>r-1&&(h.endIndex+=t)}if(s.find(l=>l.startIndex>r&&l.endIndex<r))return;const a=[];if(n.customRanges){for(let l=0,d=n.customRanges.length;l<d;l++){const h=n.customRanges[l],c=i[h.rangeId];if(h.startIndex+=r,h.endIndex+=r,c){if(c.startIndex<=h.startIndex&&c.endIndex>=h.endIndex||e.dataStream[c.startIndex]===ft.CUSTOM_RANGE_START&&e.dataStream[c.endIndex]===ft.CUSTOM_RANGE_END)continue;if(e.dataStream[c.startIndex]===ft.CUSTOM_RANGE_START){c.endIndex=h.endIndex;continue}if(e.dataStream[c.endIndex]===ft.CUSTOM_RANGE_END){c.startIndex=h.startIndex;continue}}a.push(h)}s.push(...a),s.sort(Dt("startIndex"))}}function hc(e){e.sort((r,s)=>r.startIndex-s.startIndex);const n=[];let t=e[0];for(let r=1;r<e.length;r++)t.endIndex+1>=e[r].startIndex?t.endIndex=Math.max(t.endIndex,e[r].endIndex):(n.push(t),t=e[r]);return n.push(t),n}function dc(e){const n={};for(let t=0,r=e.length;t<r;t++){const s=e[t],i=n[s.id];n[s.id]=[...i!=null?i:[],s]}return Object.keys(n).forEach(t=>{const r=n[t],s=hc(r);n[t]=s}),Object.values(n).flat()}function mo(e,n,t,r){e.customDecorations||(e.customDecorations=[]);const{customDecorations:s}=e;if(t>0)for(let i=0,o=s.length;i<o;i++){const a=s[i],{startIndex:l,endIndex:d}=a;l>=r?(a.startIndex+=t,a.endIndex+=t):d>r-1&&(a.endIndex+=t)}if(n.customDecorations){const i=[];for(let o=0,a=n.customDecorations.length;o<a;o++){const l=n.customDecorations[o];i.push(l),l.startIndex+=r,l.endIndex+=r}s.push(...i),e.customDecorations=dc(s),e.customDecorations.sort(Dt("startIndex"))}}function Eo(e,n,t){var a;const{textRuns:r}=e,s=t,i=t+n,o=[];if(s===i&&(r!=null&&r.find(l=>l.st===t&&l.ed===t))){const l=r.find(d=>d.st===t&&d.ed===t);return o.push({...l,st:l.st-t,ed:l.ed-t}),e.textRuns=(a=e.textRuns)==null?void 0:a.filter(d=>d!==l),o}if(r){const l=[];for(let d=0,h=r.length;d<h;d++){const c=r[d],{st:f,ed:_}=c;if(s<=f&&i>=_){o.push({...c,st:f-s,ed:_-s});continue}else f<=s&&_>=i?(o.push({...c,st:s-s,ed:i-s}),c.ed-=n):s>=f&&s<_?(o.push({...c,st:s-s,ed:_-s}),c.ed=s):i>f&&i<=_?(o.push({...c,st:f-s,ed:i-s}),c.st=i-n,c.ed-=n):f>=i&&(c.st-=n,c.ed-=n);l.push(c)}e.textRuns=l}return o.length===0&&o.push({st:0,ed:n,ts:{}}),o}function po(e,n,t){const{paragraphs:r}=e,s=t,i=t+n,o=[];if(r){const a=[];for(let l=0,d=r.length;l<d;l++){const h=r[l],{startIndex:c}=h;if(c>=s&&c<i){o.push({...h,startIndex:c-t});continue}else c>=i&&(h.startIndex-=n);a.push(h)}e.paragraphs=a}return o}function Ro(e,n,t){const{sectionBreaks:r}=e,s=t,i=t+n-1,o=[];if(r){const a=[];for(let l=0,d=r.length;l<d;l++){const h=r[l],{startIndex:c}=h;if(c>=s&&c<=i){o.push({...h,startIndex:c-t});continue}else c>i&&(h.startIndex-=n);a.push(h)}e.sectionBreaks=a}return o}function Co(e,n,t){const{customBlocks:r}=e,s=t,i=t+n-1,o=[];if(r){const a=[];for(let l=0,d=r.length;l<d;l++){const h=r[l],{startIndex:c}=h;if(c>=s&&c<=i){o.push({...h,startIndex:c-t});continue}else c>i&&(h.startIndex-=n);a.push(h)}e.customBlocks=a}return o}function Io(e,n,t){const{tables:r}=e,s=t,i=t+n-1,o=[];if(r){const a=[];for(let l=0,d=r.length;l<d;l++){const h=r[l],{startIndex:c,endIndex:f}=h;if(s<=c&&i>=f){o.push({...h,startIndex:c-t,endIndex:f-t});continue}else if(c<=s&&f>=i){const _=wn(c,f,s,i);h.startIndex=_[0],h.endIndex=_[1]}else i<c&&(h.startIndex-=n,h.endIndex-=n);a.push(h)}e.tables=a}return o}function vo(e,n,t){const{customRanges:r}=e,s=t,i=t+n-1,o=[];if(r){const a=[];for(let l=0,d=r.length;l<d;l++){const h=r[l],{startIndex:c,endIndex:f}=h;if(s<=c&&i>=c){o.push({...h,startIndex:c-t,endIndex:f-t});continue}else if(c<=s&&f>=i){const _=wn(c,f,s,i);h.startIndex=_[0],h.endIndex=_[1]}else i<c&&(h.startIndex-=n,h.endIndex-=n);a.push(h)}e.customRanges=a}return o}function Oo(e,n,t,r=!0){const{customDecorations:s}=e,i=t,o=t+n-1,a=[];if(s){const l=[];for(let d=0,h=s.length;d<h;d++){const c=s[d],{startIndex:f,endIndex:_}=c;if(f>=i&&_<=o){a.push(c);continue}else if(Math.max(i,f)<=Math.min(o,_)){const E=wn(f,_,i,o);c.startIndex=E[0],c.endIndex=E[1]}else o<f&&r&&(c.startIndex-=n,c.endIndex-=n);l.push(c)}e.customDecorations=l}return a}function fc(e,n,t,r,s){const i=_c(e,n,t,r,s),o=gc(e,n,t,r,s),a=mc(e,n,t,r,s),l=Ec(e,n,t,r,s),d=pc(e,n,t,r,s),h=Rc(e,n,t,r,s),c=Cc(e,n,t,r,s);return{dataStream:"",textRuns:i,paragraphs:o,sectionBreaks:a,customBlocks:l,tables:d,customRanges:h,customDecorations:c}}function _c(e,n,t,r,s){const{textRuns:i}=e,{textRuns:o}=n;if(i==null||o==null)return;const a=Eo(e,t,r);if(s!==Fe.REPLACE){const l=So(o,a,s);n.textRuns=l}return ho(e,n,t,r),a}function So(e,n,t){if(n.length===0)return e;e=k.deepClone(e),n=k.deepClone(n);const r=[],s=e.length,i=n.length;let o=0,a=0,l=null;function d(){return l?(r.push(l),l=null,!0):!1}for(;o<s&&a<i;){const{st:_,ed:E,ts:p}=e[o],{st:N,ed:D,ts:te,sId:me}=n[a];let fe;if(t===Fe.COVER?fe={...te,...p}:fe={...p,...te},E<N)d()||r.push(e[o]),o++;else if(D<_)d()||r.push(n[a]),a++;else{const R={st:Math.min(_,N),ed:Math.max(_,N),ts:_<N?{...p}:{...te},sId:_<N?void 0:me};R.ed>R.st&&r.push(R),r.push({st:Math.max(_,N),ed:Math.min(E,D),ts:fe,sId:me}),E<D?(o++,n[a].st=E,n[a].st===n[a].ed&&a++):(a++,e[o].st=D,e[o].st===e[o].ed&&o++);const O={st:Math.min(E,D),ed:Math.max(E,D),ts:E<D?{...te}:{...p},sId:E<D?me:void 0};l=O.ed>O.st?O:null}}d();const h=r[r.length-1],c=e[s-1],f=n[i-1];return h.ed!==Math.max(c.ed,f.ed)&&(c.ed>f.ed?r.push(c):r.push(f)),Ar(r)}function gc(e,n,t,r,s){const{paragraphs:i}=e,{paragraphs:o}=n;if(i==null||o==null)return;const a=po(e,t,r);if(s!==Fe.REPLACE){const l=[];for(const d of o){const{startIndex:h,paragraphStyle:c,bullet:f}=d;let _=[];for(const E of a){const{startIndex:p,paragraphStyle:N,bullet:D}=E;let te,me;if(s===Fe.COVER?(te={...N,...c},me={listId:"",listType:$n.BULLET_LIST,nestingLevel:0,textStyle:{},...D,...f}):(te={...c,...N},me={listId:"",listType:$n.BULLET_LIST,nestingLevel:0,textStyle:{},...f,...D}),h===p){_.push({startIndex:h,paragraphStyle:te,bullet:me});break}}l.push(..._),_=[]}n.paragraphs=l}return Tr(e,n,t,r),a}function mc(e,n,t,r,s){const{sectionBreaks:i}=e,{sectionBreaks:o}=n;if(i==null||o==null)return;const a=Ro(e,t,r);if(s!==Fe.REPLACE){const l=[];for(const d of o){const{startIndex:h}=d;let c=[];for(const f of a){const{startIndex:_}=f;if(h===_){s===Fe.COVER?c.push({...f,...d}):c.push({...d,...f});break}}l.push(...c),c=[]}n.sectionBreaks=l}return Tr(e,n,t,r),a}function Ec(e,n,t,r,s){const{customBlocks:i}=e,{customBlocks:o}=n;if(i==null||o==null)return;const a=Co(e,t,r);if(s!==Fe.REPLACE){const l=[];for(const d of o){const{startIndex:h}=d;let c=[];for(const f of a){const{startIndex:_}=f;if(h===_){s===Fe.COVER?c.push({...f,...d}):c.push({...d,...f});break}}l.push(...c),c=[]}n.customBlocks=l}return fo(e,n,t,r),a}function pc(e,n,t,r,s){const{tables:i}=e,{tables:o}=n;if(i==null||o==null)return;const a=Io(e,t,r);if(s!==Fe.REPLACE){const l=[];for(const d of o){const{startIndex:h,endIndex:c}=d;let f=[];for(const _ of a){const{startIndex:E,endIndex:p}=_;if(E>=h&&p<=c){s===Fe.COVER?f.push({..._,...d}):f.push({...d,..._});break}}l.push(...f),f=[]}n.tables=l}return _o(e,n,t,r),a}function Rc(e,n,t,r,s){e.customRanges||(e.customRanges=[]);const{customRanges:i}=e,{customRanges:o}=n;if(i==null||o==null)return;let a=[];return s===Fe.REPLACE&&(a=vo(e,t,r)),go(e,n,0,r),a}function Cc(e,n,t,r,s){e.customDecorations||(e.customDecorations=[]);let i=[];return s===Fe.REPLACE&&(i=Oo(e,t,r,!1)),mo(e,n,0,r),i}var yr=(e=>(e[e.copy=0]="copy",e[e.cut=1]="cut",e))(yr||{});function an(e,n,t,r=!1,s=1){const{dataStream:i,textRuns:o=[],paragraphs:a=[],customBlocks:l=[]}=e,d={dataStream:i.slice(n,t)},h=[];for(const E of o){const p=k.deepClone(E),{st:N,ed:D}=p;k.hasIntersectionBetweenTwoRanges(N,D,n,t)&&(n>=N&&n<=D?h.push({...p,st:n,ed:Math.min(t,D)}):t>=N&&t<=D?h.push({...p,st:Math.max(n,N),ed:t}):h.push(p))}h.length?d.textRuns=h.map(E=>{const{st:p,ed:N}=E;return{...E,st:p-n,ed:N-n}}):r&&(d.textRuns=[{st:0,ed:t-n,ts:{}}]);const c=[];for(const E of a){const{startIndex:p}=E;p>=n&&p<=t&&c.push(k.deepClone(E))}c.length&&(d.paragraphs=c.map(E=>({...E,startIndex:E.startIndex-n}))),s===1&&(d.customDecorations=wo(e,n,t));const{customRanges:f}=No(e,n,t);d.customRanges=f;const _=[];for(const E of l){const{startIndex:p}=E;p>=n&&p<=t&&_.push(k.deepClone(E))}return _.length&&(d.customBlocks=_.map(E=>({...E,startIndex:E.startIndex-n}))),d}function Ic(e){const{dataStream:n,textRuns:t,paragraphs:r,customRanges:s,customDecorations:i}=e;let o=0,a=0;s==null||s.forEach(d=>{d.startIndex<0&&(o=Math.max(o,-d.startIndex)),d.endIndex>n.length-1&&(a=Math.max(a,d.endIndex-n.length+1))});const l=`${ft.CUSTOM_RANGE_START.repeat(o)}${n}${ft.CUSTOM_RANGE_END.repeat(a)}`;return t&&(t[0]&&(t[0].st=t[0].st-o),t[t.length-1]&&(t[t.length-1].ed=t[t.length-1].ed+a)),t==null||t.forEach(d=>{d.st+=o,d.ed+=o}),r==null||r.forEach(d=>{d.startIndex+=o}),s==null||s.forEach(d=>{d.startIndex+=o,d.endIndex+=o}),i==null||i.forEach(d=>{d.startIndex+=o,d.endIndex+=a}),{...e,dataStream:l,textRuns:t,paragraphs:r,customRanges:s,customDecorations:i}}function No(e,n,t){const{customRanges:r=[]}=e;let s=0,i=0;const o=r.filter(a=>Math.max(a.startIndex,n)<=Math.min(a.endIndex,t-1)).map(a=>({...a,startIndex:a.startIndex,endIndex:a.endIndex}));if(o.length){o.forEach(a=>{a.startIndex<n&&(s+=1),a.endIndex>t-1&&(i+=1)});for(let a=0;a<s;a++){const l=o[a];l.startIndex=n-s+a}if(i){const a=[...o].sort((l,d)=>d.endIndex-l.endIndex);for(let l=0;l<i;l++){const d=a[l];d.endIndex=t+i-l-1}}}return{customRanges:o.map(a=>({...a,startIndex:a.startIndex-n,endIndex:a.endIndex-n})),leftOffset:s,rightOffset:i}}function wo(e,n,t){const{customDecorations:r=[]}=e,s=[];return r.forEach(i=>{if(Math.max(i.startIndex,n)<=Math.min(i.endIndex,t-1)){const o=k.deepClone(i);s.push({...o,startIndex:Math.max(o.startIndex-n,0),endIndex:Math.min(o.endIndex,t)-n})}}),s}function Dr(e,n,t=Fe.COVER){if(n.dataStream!=="")throw new Error("Cannot compose other body with non-empty dataStream");const r={dataStream:e.dataStream},{textRuns:s=[],paragraphs:i=[]}=e,{textRuns:o=[],paragraphs:a=[]}=n,l=So(o,s,t);l.length&&(r.textRuns=l);const d=[];let h=0,c=0;for(;h<i.length&&c<a.length;){const f=i[h],_=a[c],{startIndex:E}=f,{startIndex:p}=_;E===p?(d.push(k.deepMerge(f,_)),h++,c++):E<p?(d.push(k.deepClone(f)),h++):(d.push(k.deepClone(_)),c++)}return h<i.length&&d.push(...i.slice(h)),c<a.length&&d.push(...a.slice(c)),d.length&&(r.paragraphs=d),r}function vc(e){const{body:n}=e;if(n==null)return!0;const{textRuns:t=[],paragraphs:r=[]}=n;return t.length===0&&r.length===0}function Oc(e=k.generateRandomId(6),n=bt.EN_US,t=""){return{id:e,locale:n,title:t,body:{dataStream:`\r
8
- `,textRuns:[],paragraphs:[{startIndex:0,paragraphStyle:{spaceAbove:{v:5},lineSpacing:1,spaceBelow:{v:0}}}],sectionBreaks:[{startIndex:1}]},documentStyle:{pageSize:{width:793.3333333333334,height:1122.6666666666667},marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}},settings:{}}}var je=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Sc(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Ge={},bo={},Mr={};Object.defineProperty(Mr,"__esModule",{value:!0});function Nc(e,n){if(Array.isArray(n))return!1;for(let t in e)if(!Ur(e[t],n[t]))return!1;for(let t in n)if(e[t]===void 0)return!1;return!0}function wc(e,n){if(!Array.isArray(n)||e.length!==n.length)return!1;for(let t=0;t<e.length;t++)if(!Ur(e[t],n[t]))return!1;return!0}function Ur(e,n){return e===n?!0:e===null||n===null||typeof e!="object"||typeof n!="object"?!1:Array.isArray(e)?wc(e,n):Nc(e,n)}Mr.default=Ur;var Lr={};Object.defineProperty(Lr,"__esModule",{value:!0});function Pr(e){if(e===null)return null;if(Array.isArray(e))return e.map(Pr);if(typeof e=="object"){const n={};for(let t in e)n[t]=Pr(e[t]);return n}else return e}Lr.default=Pr;var kr={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.eachChildOf=e.advancer=e.readCursor=e.writeCursor=e.WriteCursor=e.ReadCursor=e.isValidPathItem=void 0;function n(h,c){if(!h)throw new Error(c)}const t=h=>h!=null&&typeof h=="object"&&!Array.isArray(h),r=(h,c)=>typeof h==typeof c?h>c:typeof h=="string"&&typeof c=="number";function s(h,c){for(let f in h){const _=f;c.write(_,h[_])}}e.isValidPathItem=h=>typeof h=="number"||typeof h=="string"&&h!=="__proto__";class i{constructor(c=null){this.parents=[],this.indexes=[],this.lcIdx=-1,this.idx=-1,this.container=c}ascend(){n(this.parents.length===this.indexes.length/2),this.idx===0?this.parents.length?(this.lcIdx=this.indexes.pop(),this.container=this.parents.pop(),this.idx=this.indexes.pop()):(this.lcIdx=0,this.idx=-1):(n(this.idx>0),this.idx--,t(this.container[this.idx])&&this.idx--)}getPath(){const c=[];let f=this.container,_=this.parents.length-1,E=this.idx;for(;E>=0;)c.unshift(f[E]),E===0?(E=this.indexes[_*2],f=this.parents[_--]):E-=t(f[E-1])?2:1;return c}}class o extends i{get(){return this.container?this.container.slice(this.idx+1):null}getKey(){return n(this.container!=null,"Invalid call to getKey before cursor descended"),this.container[this.idx]}getComponent(){let c;return this.container&&this.container.length>this.idx+1&&t(c=this.container[this.idx+1])?c:null}descendFirst(){let c=this.idx+1;if(!this.container||c>=this.container.length||t(this.container[c])&&c+1>=this.container.length)return!1;t(this.container[c])&&c++;const f=this.container[c];return Array.isArray(f)?(this.indexes.push(this.idx),this.parents.push(this.container),this.indexes.push(c),this.idx=0,this.container=f):this.idx=c,!0}nextSibling(){if(n(this.parents.length===this.indexes.length/2),this.idx>0||this.parents.length===0)return!1;const c=this.indexes[this.indexes.length-1]+1,f=this.parents[this.parents.length-1];return c>=f.length?!1:(n(!isNaN(c)),this.indexes[this.indexes.length-1]=c,this.container=f[c],!0)}_init(c,f,_,E){this.container=c,this.idx=f,this.parents=_.slice(),this.indexes=E.slice()}clone(){const c=new o;return c._init(this.container,this.idx,this.parents,this.indexes),c}*[Symbol.iterator](){if(this.descendFirst()){do yield this.getKey();while(this.nextSibling());this.ascend()}}traverse(c,f){const _=this.getComponent();_&&f(_,c);for(const E of this)c&&c.descend(E),this.traverse(c,f),c&&c.ascend()}eachPick(c,f){this.traverse(c,(_,E)=>{_.p!=null&&f(_.p,E)})}eachDrop(c,f){this.traverse(c,(_,E)=>{_.d!=null&&f(_.d,E)})}}e.ReadCursor=o;class a extends i{constructor(c=null){super(c),this.pendingDescent=[],this._op=c}flushDescent(){n(this.parents.length===this.indexes.length/2),this.container===null&&(this._op=this.container=[]);for(let c=0;c<this.pendingDescent.length;c++){const f=this.pendingDescent[c];let _=this.idx+1;if(_<this.container.length&&t(this.container[_])&&_++,n(_===this.container.length||!t(this.container[_])),_===this.container.length)this.container.push(f),this.idx=_;else if(this.container[_]===f)this.idx=_;else{if(!Array.isArray(this.container[_])){const E=this.container.splice(_,this.container.length-_);this.container.push(E),this.lcIdx>-1&&(this.lcIdx=_)}for(this.indexes.push(this.idx),this.parents.push(this.container),this.lcIdx!==-1&&(n(r(f,this.container[this.lcIdx][0])),_=this.lcIdx+1,this.lcIdx=-1);_<this.container.length&&r(f,this.container[_][0]);)_++;if(this.indexes.push(_),this.idx=0,_<this.container.length&&this.container[_][0]===f)this.container=this.container[_];else{const E=[f];this.container.splice(_,0,E),this.container=E}}}this.pendingDescent.length=0}reset(){this.lcIdx=-1}getComponent(){this.flushDescent();const c=this.idx+1;if(c<this.container.length&&t(this.container[c]))return this.container[c];{const f={};return this.container.splice(c,0,f),f}}write(c,f){const _=this.getComponent();n(_[c]==null||_[c]===f,"Internal consistency error: Overwritten component. File a bug"),_[c]=f}get(){return this._op}descend(c){if(!e.isValidPathItem(c))throw Error("Invalid JSON key");this.pendingDescent.push(c)}descendPath(c){return this.pendingDescent.push(...c),this}ascend(){this.pendingDescent.length?this.pendingDescent.pop():super.ascend()}mergeTree(c,f=s){if(c===null)return;if(n(Array.isArray(c)),c===this._op)throw Error("Cannot merge into my own tree");const _=this.lcIdx,E=this.parents.length;let p=0;for(let N=0;N<c.length;N++){const D=c[N];typeof D=="string"||typeof D=="number"?(p++,this.descend(D)):Array.isArray(D)?this.mergeTree(D,f):typeof D=="object"&&f(D,this)}for(;p--;)this.ascend();this.lcIdx=this.parents.length===E?_:-1}at(c,f){this.descendPath(c),f(this);for(let _=0;_<c.length;_++)this.ascend();return this}writeAtPath(c,f,_){return this.at(c,()=>this.write(f,_)),this.reset(),this}writeMove(c,f,_=0){return this.writeAtPath(c,"p",_).writeAtPath(f,"d",_)}getPath(){const c=super.getPath();return c.push(...this.pendingDescent),c}}e.WriteCursor=a,e.writeCursor=()=>new a,e.readCursor=h=>new o(h);function l(h,c,f){let _,E;E=_=h?h.descendFirst():!1;function p(N){let D;for(;E;){const te=D=h.getKey();if(N!=null){let me=!1;if(c&&typeof te=="number"&&(D=c(te,h.getComponent()),D<0&&(D=~D,me=!0)),r(D,N))return null;if(D===N&&!me)return h}f&&typeof D=="number"&&f(D,h.getComponent()),E=h.nextSibling()}return null}return p.end=()=>{_&&h.ascend()},p}e.advancer=l;function d(h,c,f){let _,E,p,N;for(_=E=h&&h.descendFirst(),p=N=c&&c.descendFirst();_||p;){let D=_?h.getKey():null,te=p?c.getKey():null;D!==null&&te!==null&&(r(te,D)?te=null:D!==te&&(D=null)),f(D==null?te:D,D!=null?h:null,te!=null?c:null),D!=null&&_&&(_=h.nextSibling()),te!=null&&p&&(p=c.nextSibling())}E&&h.ascend(),N&&c.ascend()}e.eachChildOf=d})(kr);var Fr={};(function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.ConflictType=void 0,function(n){n[n.RM_UNEXPECTED_CONTENT=1]="RM_UNEXPECTED_CONTENT",n[n.DROP_COLLISION=2]="DROP_COLLISION",n[n.BLACKHOLE=3]="BLACKHOLE"}(e.ConflictType||(e.ConflictType={}))})(Fr);var Hr={},Ut={},Ao;function $r(){return Ao||(Ao=1,Object.defineProperty(Ut,"__esModule",{value:!0}),Ut.uniToStrPos=Ut.strPosToUni=void 0,Ut.strPosToUni=(e,n=e.length)=>{let t=0,r=0;for(;r<n;r++){const s=e.charCodeAt(r);s>=55296&&s<=57343&&(t++,r++)}if(r!==n)throw Error("Invalid offset - splits unicode bytes");return r-t},Ut.uniToStrPos=(e,n)=>{let t=0;for(;n>0;n--){const r=e.charCodeAt(t);t+=r>=55296&&r<=57343?2:1}return t}),Ut}var Wr={},To;function Br(){return To||(To=1,function(e){Object.defineProperty(e,"__esModule",{value:!0}),e.uniSlice=e.dlen=e.eachOp=void 0;const n=$r(),t=R=>{if(!Array.isArray(R))throw Error("Op must be an array of components");let O=null;for(let T=0;T<R.length;T++){const Q=R[T];switch(typeof Q){case"object":if(typeof Q.d!="number"&&typeof Q.d!="string")throw Error("Delete must be number or string");if(e.dlen(Q.d)<=0)throw Error("Deletes must not be empty");break;case"string":if(!(Q.length>0))throw Error("Inserts cannot be empty");break;case"number":if(!(Q>0))throw Error("Skip components must be >0");if(typeof O=="number")throw Error("Adjacent skip components should be combined");break}O=Q}if(typeof O=="number")throw Error("Op has a trailing skip")};function r(R,O){let T=0,Q=0;for(let re=0;re<R.length;re++){const q=R[re];switch(O(q,T,Q),typeof q){case"object":T+=e.dlen(q.d);break;case"string":Q+=n.strPosToUni(q);break;case"number":T+=q,Q+=q;break}}}e.eachOp=r;function s(R,O){const T=[],Q=a(T);return r(R,(re,q,Qe)=>{Q(O(re,q,Qe))}),c(T)}const i=R=>R,o=R=>s(R,i);e.dlen=R=>typeof R=="number"?R:n.strPosToUni(R);const a=R=>O=>{if(!(!O||O.d===0||O.d===""))if(R.length===0)R.push(O);else if(typeof O==typeof R[R.length-1])if(typeof O=="object"){const T=R[R.length-1];T.d=typeof T.d=="string"&&typeof O.d=="string"?T.d+O.d:e.dlen(T.d)+e.dlen(O.d)}else R[R.length-1]+=O;else R.push(O)},l=R=>typeof R=="number"?R:typeof R=="string"?n.strPosToUni(R):typeof R.d=="number"?R.d:n.strPosToUni(R.d);e.uniSlice=(R,O,T)=>{const Q=n.uniToStrPos(R,O),re=T==null?1/0:n.uniToStrPos(R,T);return R.slice(Q,re)};const d=(R,O,T)=>typeof R=="number"?T==null?R-O:Math.min(R,T)-O:e.uniSlice(R,O,T),h=R=>{let O=0,T=0;return{take:(q,Qe)=>{if(O===R.length)return q===-1?null:q;const Ne=R[O];let _e;if(typeof Ne=="number")return q===-1||Ne-T<=q?(_e=Ne-T,++O,T=0,_e):(T+=q,q);if(typeof Ne=="string"){if(q===-1||Qe==="i"||n.strPosToUni(Ne.slice(T))<=q)return _e=Ne.slice(T),++O,T=0,_e;{const Ie=T+n.uniToStrPos(Ne.slice(T),q);return _e=Ne.slice(T,Ie),T=Ie,_e}}else{if(q===-1||Qe==="d"||e.dlen(Ne.d)-T<=q)return _e={d:d(Ne.d,T)},++O,T=0,_e;{let Ie=d(Ne.d,T,T+q);return T+=q,{d:Ie}}}},peek:()=>R[O]}},c=R=>(R.length>0&&typeof R[R.length-1]=="number"&&R.pop(),R);function f(R,O,T){if(T!=="left"&&T!=="right")throw Error("side ("+T+") must be 'left' or 'right'");t(R),t(O);const Q=[],re=a(Q),{take:q,peek:Qe}=h(R);for(let _e=0;_e<O.length;_e++){const Ie=O[_e];let De,qe;switch(typeof Ie){case"number":for(De=Ie;De>0;)qe=q(De,"i"),re(qe),typeof qe!="string"&&(De-=l(qe));break;case"string":T==="left"&&typeof Qe()=="string"&&re(q(-1)),re(n.strPosToUni(Ie));break;case"object":for(De=e.dlen(Ie.d);De>0;)switch(qe=q(De,"i"),typeof qe){case"number":De-=qe;break;case"string":re(qe);break;case"object":De-=e.dlen(qe.d)}break}}let Ne;for(;Ne=q(-1);)re(Ne);return c(Q)}function _(R,O){t(R),t(O);const T=[],Q=a(T),{take:re}=h(R);for(let Qe=0;Qe<O.length;Qe++){const Ne=O[Qe];let _e,Ie;switch(typeof Ne){case"number":for(_e=Ne;_e>0;)Ie=re(_e,"d"),Q(Ie),typeof Ie!="object"&&(_e-=l(Ie));break;case"string":Q(Ne);break;case"object":_e=e.dlen(Ne.d);let De=0;for(;De<_e;)switch(Ie=re(_e-De,"d"),typeof Ie){case"number":Q({d:d(Ne.d,De,De+Ie)}),De+=Ie;break;case"string":De+=n.strPosToUni(Ie);break;case"object":Q(Ie)}break}}let q;for(;q=re(-1);)Q(q);return c(T)}const E=(R,O)=>{let T=0;for(let Q=0;Q<O.length&&R>T;Q++){const re=O[Q];switch(typeof re){case"number":{T+=re;break}case"string":const q=n.strPosToUni(re);T+=q,R+=q;break;case"object":R-=Math.min(e.dlen(re.d),R-T);break}}return R},p=(R,O)=>typeof R=="number"?E(R,O):R.map(T=>E(T,O));function N(R,O,T){return s(R,(Q,re)=>typeof Q=="object"&&typeof Q.d=="number"?{d:T.slice(O,re,re+Q.d)}:Q)}function D(R){return s(R,O=>{switch(typeof O){case"object":if(typeof O.d=="number")throw Error("Cannot invert text op: Deleted characters missing from operation. makeInvertible must be called first.");return O.d;case"string":return{d:O};case"number":return O}})}function te(R){return s(R,O=>typeof O=="object"&&typeof O.d=="string"?{d:n.strPosToUni(O.d)}:O)}function me(R){let O=!0;return r(R,T=>{typeof T=="object"&&typeof T.d=="number"&&(O=!1)}),O}function fe(R){return{name:"text-unicode",uri:"http://sharejs.org/types/text-unicode",trim:c,normalize:o,checkOp:t,create(O=""){if(typeof O!="string")throw Error("Initial data must be a string");return R.create(O)},apply(O,T){t(T);const Q=R.builder(O);for(let re=0;re<T.length;re++){const q=T[re];switch(typeof q){case"number":Q.skip(q);break;case"string":Q.append(q);break;case"object":Q.del(e.dlen(q.d));break}}return Q.build()},transform:f,compose:_,transformPosition:E,transformSelection:p,isInvertible:me,makeInvertible(O,T){return N(O,T,R)},stripInvertible:te,invert:D,invertWithDoc(O,T){return D(N(O,T,R))},isNoop:O=>O.length===0}}e.default=fe}(Wr)),Wr}var Wn={},yo;function bc(){if(yo)return Wn;yo=1,Object.defineProperty(Wn,"__esModule",{value:!0});const e=Br(),n=$r();function t(r,s){return{get:r,getLength(){return r().length},insert(i,o,a){const l=n.strPosToUni(r(),i);return s([l,o],a)},remove(i,o,a){const l=n.strPosToUni(r(),i);return s([l,{d:o}],a)},_onOp(i){e.eachOp(i,(o,a,l)=>{switch(typeof o){case"string":this.onInsert&&this.onInsert(l,o);break;case"object":const d=e.dlen(o.d);this.onRemove&&this.onRemove(l,d)}})},onInsert:null,onRemove:null}}return Wn.default=t,t.provides={text:!0},Wn}var Do;function Ac(){return Do||(Do=1,function(e){var n=je&&je.__createBinding||(Object.create?function(f,_,E,p){p===void 0&&(p=E),Object.defineProperty(f,p,{enumerable:!0,get:function(){return _[E]}})}:function(f,_,E,p){p===void 0&&(p=E),f[p]=_[E]}),t=je&&je.__setModuleDefault||(Object.create?function(f,_){Object.defineProperty(f,"default",{enumerable:!0,value:_})}:function(f,_){f.default=_}),r=je&&je.__importStar||function(f){if(f&&f.__esModule)return f;var _={};if(f!=null)for(var E in f)Object.hasOwnProperty.call(f,E)&&n(_,f,E);return t(_,f),_},s=je&&je.__importDefault||function(f){return f&&f.__esModule?f:{default:f}};Object.defineProperty(e,"__esModule",{value:!0}),e.type=e.remove=e.insert=void 0;const i=$r(),o=r(Br()),a=s(bc()),l={create(f){return f},toString(f){return f},builder(f){if(typeof f!="string")throw Error("Invalid document snapshot: "+f);const _=[];return{skip(E){let p=i.uniToStrPos(f,E);if(p>f.length)throw Error("The op is too long for this document");_.push(f.slice(0,p)),f=f.slice(p)},append(E){_.push(E)},del(E){f=f.slice(i.uniToStrPos(f,E))},build(){return _.join("")+f}}},slice:o.uniSlice},d=o.default(l),h=Object.assign(Object.assign({},d),{api:a.default});e.type=h,e.insert=(f,_)=>_.length===0?[]:f===0?[_]:[f,_],e.remove=(f,_)=>o.dlen(_)===0?[]:f===0?[{d:_}]:[f,{d:_}];var c=Br();Object.defineProperty(e,"makeType",{enumerable:!0,get:function(){return c.default}})}(Hr)),Hr}(function(e){var n=je&&je.__importDefault||function(m){return m&&m.__esModule?m:{default:m}};Object.defineProperty(e,"__esModule",{value:!0}),e.editOp=e.replaceOp=e.insertOp=e.moveOp=e.removeOp=e.type=void 0;const t=n(Mr),r=n(Lr),s=kr,i=Fr;function o(m,C){if(!m)throw new Error(C)}e.type={name:"json1",uri:"http://sharejs.org/types/JSONv1",readCursor:s.readCursor,writeCursor:s.writeCursor,create:m=>m,isNoop:m=>m==null,setDebug(m){},registerSubtype:D,checkValidOp:re,normalize:q,apply:Qe,transformPosition:Ne,compose:_e,tryTransform:rs,transform:cd,makeInvertible:qe,invert:Ie,invertWithDoc:ud,RM_UNEXPECTED_CONTENT:i.ConflictType.RM_UNEXPECTED_CONTENT,DROP_COLLISION:i.ConflictType.DROP_COLLISION,BLACKHOLE:i.ConflictType.BLACKHOLE,transformNoConflict:(m,C,w)=>Ma(()=>!0,m,C,w),typeAllowingConflictsPred:m=>Object.assign(Object.assign({},e.type),{transform:(C,w,U)=>Ma(m,C,w,U)})};const a=m=>m?m.getComponent():null;function l(m){return m&&typeof m=="object"&&!Array.isArray(m)}const d=m=>Array.isArray(m)?m.slice():m!==null&&typeof m=="object"?Object.assign({},m):m,h=m=>m&&(m.p!=null||m.r!==void 0),c=m=>m&&(m.d!=null||m.i!==void 0);function f(m,C){return o(m!=null),typeof C=="number"?(o(Array.isArray(m),"Invalid key - child is not an array"),(m=m.slice()).splice(C,1)):(o(l(m),"Invalid key - child is not an object"),delete(m=Object.assign({},m))[C]),m}function _(m,C,w){return typeof C=="number"?(o(m!=null,"Container is missing for key"),o(Array.isArray(m),"Cannot use numerical key for object container"),o(m.length>=C,"Cannot insert into out of bounds index"),m.splice(C,0,w)):(o(l(m),"Cannot insert into missing item"),o(m[C]===void 0,"Trying to overwrite value at key. Your op needs to remove it first"),m[C]=w),w}e.removeOp=(m,C=!0)=>s.writeCursor().writeAtPath(m,"r",C).get(),e.moveOp=(m,C)=>s.writeCursor().writeMove(m,C).get(),e.insertOp=(m,C)=>s.writeCursor().writeAtPath(m,"i",C).get(),e.replaceOp=(m,C,w)=>s.writeCursor().at(m,U=>{U.write("r",C),U.write("i",w)}).get(),e.editOp=(m,C,w,U=!1)=>s.writeCursor().at(m,b=>O(b,C,w,U)).get();const E=(m,C)=>m!=null&&(typeof C=="number"?Array.isArray(m):typeof m=="object"),p=(m,C)=>E(m,C)?m[C]:void 0,N={};function D(m){let C=m.type?m.type:m;C.name&&(N[C.name]=C),C.uri&&(N[C.uri]=C)}const te=m=>{const C=N[m];if(C)return C;throw Error("Missing type: "+m)};D(Ac());const me=(m,C)=>m+C;D({name:"number",apply:me,compose:me,invert:m=>-m,transform:m=>m});const fe=m=>m==null?null:m.et?te(m.et):m.es?N["text-unicode"]:m.ena!=null?N.number:null,R=m=>m.es?m.es:m.ena!=null?m.ena:m.e,O=(m,C,w,U=!1)=>{const[b,M]=typeof C=="string"?[te(C),C]:[C,C.name];!U&&b.isNoop&&b.isNoop(w)||(M==="number"?m.write("ena",w):M==="text-unicode"?m.write("es",w):(m.write("et",M),m.write("e",w)))};function T(m){o(typeof m=="number"),o(m>=0),o(m===(0|m))}function Q(m){typeof m=="number"?T(m):o(typeof m=="string")}function re(m){if(m===null)return;const C=new Set,w=new Set,U=M=>{let x=!0,G=!1;for(let I in M){const S=M[I];if(x=!1,o(I==="p"||I==="r"||I==="d"||I==="i"||I==="e"||I==="es"||I==="ena"||I==="et","Invalid component item '"+I+"'"),I==="p")T(S),o(!C.has(S)),C.add(S),o(M.r===void 0);else if(I==="d")T(S),o(!w.has(S)),w.add(S),o(M.i===void 0);else if(I==="e"||I==="es"||I==="ena"){o(!G),G=!0;const A=fe(M);o(A,"Missing type in edit"),A.checkValidOp&&A.checkValidOp(R(M))}}o(!x)},b=(M,x,G)=>{if(!Array.isArray(M))throw Error("Op must be null or a list");if(M.length===0)throw Error("Empty descent");x||Q(M[0]);let I=1,S=0,A=0;for(let y=0;y<M.length;y++){const V=M[y];if(o(V!=null),Array.isArray(V)){const K=b(V,!1);if(S){const v=typeof A,$=typeof K;v===$?o(A<K,"descent keys are not in order"):o(v==="number"&&$==="string")}A=K,S++,I=3}else typeof V=="object"?(o(I===1,`Prev not scalar - instead ${I}`),U(V),I=2):(o(I!==3),Q(V),o(s.isValidPathItem(V),"Invalid path key"),I=1)}return o(S!==1,"Operation makes multiple descents. Remove some []"),o(I===2||I===3),M[0]};b(m,!0),o(C.size===w.size,"Mismatched picks and drops in op");for(let M=0;M<C.size;M++)o(C.has(M)),o(w.has(M))}function q(m){let C=0,w=[];const U=s.writeCursor();return U.mergeTree(m,(b,M)=>{const x=fe(b);if(x){const I=R(b);O(M,x,x.normalize?x.normalize(I):I)}for(const I of["r","p","i","d"])if(b[I]!==void 0){const S=I==="p"||I==="d"?(G=b[I],w[G]==null&&(w[G]=C++),w[G]):b[I];M.write(I,S)}var G}),U.get()}function Qe(m,C){if(re(C),C===null)return m;const w=[];return function U(b,M){let x=b,G=0,I={root:b},S=0,A=I,y="root";function V(){for(;S<G;S++){let K=M[S];typeof K!="object"&&(o(E(A,y)),A=A[y]=d(A[y]),y=K)}}for(;G<M.length;G++){const K=M[G];if(Array.isArray(K)){const v=U(x,K);v!==x&&v!==void 0&&(V(),x=A[y]=v)}else if(typeof K=="object"){K.d!=null?(V(),x=_(A,y,w[K.d])):K.i!==void 0&&(V(),x=_(A,y,K.i));const v=fe(K);if(v)V(),x=A[y]=v.apply(x,R(K));else if(K.e!==void 0)throw Error("Subtype "+K.et+" undefined")}else x=p(x,K)}return I.root}(m=function U(b,M){const x=[];let G=0;for(;G<M.length;G++){const y=M[G];if(Array.isArray(y))break;typeof y!="object"&&(x.push(b),b=p(b,y))}for(let y=M.length-1;y>=G;y--)b=U(b,M[y]);for(--G;G>=0;G--){const y=M[G];if(typeof y!="object"){const V=x.pop();b=b===p(V,y)?V:b===void 0?f(V,y):(S=y,A=b,(I=d(I=V))[S]=A,I)}else h(y)&&(o(b!==void 0,"Cannot pick up or remove undefined"),y.p!=null&&(w[y.p]=b),b=void 0)}var I,S,A;return b}(m,C),C)}function Ne(m,C){m=m.slice(),re(C);const w=s.readCursor(C);let U,b,M=!1;const x=[];for(let I=0;;I++){const S=m[I],A=w.getComponent();if(A&&(A.r!==void 0?M=!0:A.p!=null&&(M=!1,U=A.p,b=I)),I>=m.length)break;let y=0;const V=s.advancer(w,void 0,(v,$)=>{h($)&&y++});x.unshift(V);const K=V(S);if(typeof S=="number"&&(m[I]-=y),!K)break}if(x.forEach(I=>I.end()),M)return null;const G=()=>{let I=0;if(U!=null){const S=w.getPath();I=S.length,m=S.concat(m.slice(b))}for(;I<m.length;I++){const S=m[I],A=a(w),y=fe(A);if(y){const v=R(A);y.transformPosition&&(m[I]=y.transformPosition(m[I],v));break}let V=0;const K=s.advancer(w,(v,$)=>c($)?~(v-V):v-V,(v,$)=>{c($)&&V++})(S);if(typeof S=="number"&&(m[I]+=V),!K)break}};return U!=null?w.eachDrop(null,I=>{I===U&&G()}):G(),m}function _e(m,C){if(re(m),re(C),m==null)return C;if(C==null)return m;let w=0;const U=s.readCursor(m),b=s.readCursor(C),M=s.writeCursor(),x=[],G=[],I=[],S=[],A=[],y=[],V=new Set;U.traverse(null,v=>{v.p!=null&&(I[v.p]=U.clone())}),b.traverse(null,v=>{v.d!=null&&(S[v.d]=b.clone())});const K=s.writeCursor();return function v($,ge,ue,Z,pe,gt,He,Me){o(ge||ue);const Re=a(ge),Ze=a(ue),st=!!Ze&&Ze.r!==void 0,kt=!!Re&&Re.i!==void 0,Je=Re?Re.d:null,Ke=Ze?Ze.p:null,mt=(gt||st)&&Ke==null;if(Ke!=null)Z=S[Ke],He=G[Ke]=new s.WriteCursor;else if(Ze&&Ze.r!==void 0)Z=null;else{const P=a(Z);P&&P.d!=null&&(Z=null)}const ae=a(Z);if(Je!=null)if($=I[Je],Me=x[Je]=new s.WriteCursor,mt)gt&&!st&&Me.write("r",!0);else{const P=A[Je]=w++;He.write("d",P)}else if(Re&&Re.i!==void 0)$=null;else{const P=a($);P&&P.p!=null&&($=null)}let F;kt?(o(pe===void 0),F=Re.i):F=pe;const Y=(Ke==null?!kt||gt||st:F===void 0)?null:He.getComponent();if(Ke!=null){if(!(pe!==void 0||kt)){const P=Je!=null?A[Je]:w++;y[Ke]=P,Me.write("p",P)}}else st&&(kt||pe!==void 0||(Ze.r,Me.write("r",Ze.r)));const H=mt?null:fe(Re),L=fe(ae);if((H||L)&&(H&&H.name,L&&L.name),H&&L){o(H===L);const P=R(Re),X=R(ae),Ae=H.compose(P,X);O(He,H,Ae),V.add(ae)}else H?O(He,H,R(Re)):L&&(O(He,L,R(ae)),V.add(ae));const B=typeof F=="object"&&F!=null;let se=!1,ie=0,le=0,be=0,we=0,Ce=0;const Pe=s.advancer(Z,(P,X)=>c(X)?we-P-1:P-we,(P,X)=>{c(X)&&we++}),ne=s.advancer($,(P,X)=>h(X)?ie-P-1:P-ie,(P,X)=>{h(X)&&ie++});if(s.eachChildOf(ge,ue,(P,X,Ae)=>{let $e,Et,Ft=P,it=P,gn=P;if(typeof P=="number"){let Ue=P+be;Et=Pe(Ue),it=Ue+we;let ve=P+le;$e=ne(ve),c(a(Et))&&($e=null),Ft=ve+ie,gn=P+Ce,o(Ft>=0,"p1PickKey is negative"),o(it>=0,"p2DropKey is negative");const ot=c(a(X)),pt=h(a(Ae));(ot||pt&&!mt)&&Ce--,ot&&le--,pt&&be--}else $e=ne(P),Et=Pe(P);Me.descend(Ft),He.descend(it);const Yt=B&&!c(a(X))?F[gn]:void 0,ut=v($e,X,Ae,Et,Yt,mt,He,Me);var ct,j,Ee;B&&!mt?Yt!==ut&&(se||(F=Array.isArray(F)?F.slice():Object.assign({},F),se=!0),ct=F,Ee=ut,typeof(j=gn)=="number"?(o(Array.isArray(ct)),o(j<ct.length)):(o(!Array.isArray(ct)),o(ct[j]!==void 0)),Ee===void 0?typeof j=="number"?ct.splice(j,1):delete ct[j]:ct[j]=Ee):o(ut===void 0),He.ascend(),Me.ascend()}),ne.end(),Pe.end(),Y!=null)Y.i=F;else if(!gt&&!st&&Ke==null)return F}(U,U.clone(),b,b.clone(),void 0,!1,M,K),M.reset(),M.mergeTree(K.get()),M.reset(),M.get(),x.map(v=>v.get()),G.map(v=>v.get()),U.traverse(M,(v,$)=>{const ge=v.p;if(ge!=null){const ue=A[ge];ue!=null&&$.write("p",ue);const Z=x[ge];Z&&Z.get(),Z&&$.mergeTree(Z.get())}else v.r!==void 0&&$.write("r",v.r)}),M.reset(),M.get(),b.traverse(M,(v,$)=>{const ge=v.d;if(ge!=null){const Z=y[ge];Z!=null&&$.write("d",Z);const pe=G[ge];pe&&$.mergeTree(pe.get())}else v.i!==void 0&&$.write("i",v.i);const ue=fe(v);ue&&!V.has(v)&&O($,ue,R(v))}),M.get()}function Ie(m){if(m==null)return null;const C=new s.ReadCursor(m),w=new s.WriteCursor;let U;const b=[],M=[];return function x(G,I,S){const A=G.getComponent();let y,V=!1;if(A){A.p!=null&&(I.write("d",A.p),b[A.p]=G.clone()),A.r!==void 0&&I.write("i",A.r),A.d!=null&&(I.write("p",A.d),S=void 0),A.i!==void 0&&(S=y=A.i);const v=fe(A);v&&(S===void 0?(U||(U=new Set),U.add(A)):(R(A),S=v.apply(S,R(A)),V=!0))}let K=0;for(const v of G){I.descend(v);const $=typeof v=="number"?v-K:v,ge=p(S,$);c(G.getComponent())&&K++;const ue=x(G,I,ge);if(S!==void 0&&ue!==void 0){if(V||(V=!0,S=d(S)),!E(S,$))throw Error("Cannot modify child - invalid operation");S[$]=ue}I.ascend()}if(y===void 0)return V?S:void 0;I.write("r",S)}(C,w,void 0),U&&(w.reset(),function x(G,I,S){const A=I.getComponent();if(A){const v=A.d;if(v!=null&&(G=b[v],S=M[v]=s.writeCursor()),U.has(A)){const $=fe(A);if(!$.invert)throw Error(`Cannot invert subtype ${$.name}`);O(S,$,$.invert(R(A)))}}let y=0,V=0;const K=s.advancer(G,(v,$)=>h($)?y-v-1:v-y,(v,$)=>{h($)&&y++});for(const v of I)if(typeof v=="number"){const $=v-V,ge=K($),ue=$+y;S.descend(ue),x(ge,I,S),c(I.getComponent())&&V++,S.ascend()}else S.descend(v),x(K(v),I,S),S.ascend();K.end()}(C.clone(),C,w),M.length&&(w.reset(),C.traverse(w,(x,G)=>{const I=x.p;if(I!=null){const S=M[I];S&&S.get(),S&&G.mergeTree(S.get())}}))),w.get()}const De=(m,C)=>m.some(w=>typeof w=="object"&&(Array.isArray(w)?De(w,C):C(w)));function qe(m,C){if(m==null||!De(m,I=>{var S;return I.r!==void 0||((S=fe(I))===null||S===void 0?void 0:S.makeInvertible)!=null}))return m;const w=new s.ReadCursor(m),U=new s.WriteCursor;let b=!1;const M=[],x=[],G=(I,S,A)=>{const y=I.getComponent();let V=!1;if(y){y.d!=null&&S.write("d",y.d),y.i!==void 0&&S.write("i",y.i);const v=y.p;if(v!=null&&(M[v]=I.clone(),o(A!==void 0,"Operation picks up at an invalid key"),x[v]=A,S.write("p",y.p)),y.r!==void 0&&A===void 0)throw Error("Invalid doc / op in makeInvertible: removed item missing from doc");const $=fe(y);$&&($.makeInvertible?b=!0:O(S,$,R(y),!0))}let K=0;for(const v of I){S.descend(v);const $=typeof v=="number"?v-K:v,ge=p(A,$),ue=G(I,S,ge);ge!==ue&&(V||(V=!0,A=d(A)),ue===void 0?(A=f(A,$),typeof v=="number"&&K++):A[$]=ue),S.ascend()}return y&&(y.r!==void 0?(S.write("r",r.default(A)),A=void 0):y.p!=null&&(A=void 0)),A};return G(w,U,C),U.get(),b&&(U.reset(),function I(S,A,y,V,K){const v=A.getComponent();if(v){v.i!==void 0?(V=v.i,K=!0):v.d!=null&&(V=x[v.d],S=M[v.d],K=!1,v.d);let Z=fe(v);if(Z&&Z.makeInvertible){const pe=R(v);O(y,Z,Z.makeInvertible(pe,V),!0)}}let $=0,ge=0;const ue=s.advancer(S,(Z,pe)=>h(pe)?$-Z-1:Z-$,(Z,pe)=>{h(pe)&&$++});for(const Z of A)if(typeof Z=="number"){const pe=Z-ge,gt=ue(pe),He=pe+$,Me=p(V,K?pe:He);y.descend(Z),I(gt,A,y,Me,K),c(A.getComponent())&&ge++,y.ascend()}else{const pe=p(V,Z);y.descend(Z),I(ue(Z),A,y,pe,K),y.ascend()}ue.end()}(w.clone(),w,U,C,!1)),U.get()}function ud(m,C){return Ie(qe(m,C))}const ns=m=>{if(m==null)return null;const C=m.slice();for(let w=0;w<m.length;w++){const U=C[w];Array.isArray(U)&&(C[w]=ns(U))}return C};function rs(m,C,w){o(w==="left"||w==="right","Direction must be left or right");const U=w==="left"?0:1;if(C==null)return{ok:!0,result:m};re(m),re(C);let b=null;const M=[],x=[],G=[],I=[],S=[],A=[],y=[],V=[],K=[],v=[],$=[],ge=[],ue=[],Z=[],pe=[];let gt=0;const He=s.readCursor(m),Me=s.readCursor(C),Re=s.writeCursor();if(function ae(F,Y=null,H){const L=a(Y);L&&(L.r!==void 0?H=Y.clone():L.p!=null&&(H=null,A[L.p]=F.clone()));const B=F.getComponent();let se;B&&(se=B.p)!=null&&(S[se]=Y?Y.clone():null,G[se]=F.clone(),H&&(v[se]=!0,K[se]=H),L&&L.p!=null&&(Z[se]=L.p));const ie=s.advancer(Y);for(const le of F)ae(F,ie(le),H);ie.end()}(Me,He,null),function ae(F,Y,H,L,B){const se=H.getComponent();let ie,le=!1;se&&((ie=se.d)!=null?(I[ie]=H.clone(),L!=null&&(pe[L]==null&&(pe[L]=[]),pe[L].push(ie)),F=S[ie]||null,Y=G[ie]||null,v[ie]?(B&&($[ie]=!0),B=K[ie]||null):!B||U!==1&&Z[ie]!=null||b==null&&(b={type:i.ConflictType.RM_UNEXPECTED_CONTENT,op1:e.removeOp(B.getPath()),op2:e.moveOp(Y.getPath(),H.getPath())}),le=!0):se.i!==void 0&&(F=Y=null,le=!0,B&&b==null&&(b={type:i.ConflictType.RM_UNEXPECTED_CONTENT,op1:e.removeOp(B.getPath()),op2:e.insertOp(H.getPath(),se.i)})));const be=a(F);be&&(be.r!==void 0?B=F.clone():be.p!=null&&(be.p,L=be.p,B=null));const we=fe(se);we&&B&&b==null&&(b={type:i.ConflictType.RM_UNEXPECTED_CONTENT,op1:e.removeOp(B.getPath()),op2:e.editOp(H.getPath(),we,R(se),!0)});let Ce=0,Pe=0;const ne=s.advancer(Y,(X,Ae)=>h(Ae)?Ce-X-1:X-Ce,(X,Ae)=>{h(Ae)&&Ce++}),P=s.advancer(F);for(const X of H)if(typeof X=="number"){const Ae=X-Pe,$e=ne(Ae);Pe+=+ae(P(Ae+Ce),$e,H,L,B)}else{const Ae=ne(X);ae(P(X),Ae,H,L,B)}return ne.end(),P.end(),le}(He,Me,Me.clone(),null,null),I.map(ae=>ae&&ae.get()),b)return{ok:!1,conflict:b};$.map(ae=>!!ae);const Ze=[];let st=null;(function ae(F,Y,H,L,B){let se=!1;const ie=a(Y);if(h(ie)){const ne=ie.p;ne!=null?(H=I[ne],L=ge[ne]=s.writeCursor(),se=!0,B=null):(H=null,B=Y.clone())}else c(a(H))&&(H=null);const le=F.getComponent();if(le){const ne=le.p;ne!=null?(B&&(V[ne]=B),Ze[ne]=B||U===1&&se?null:L.getComponent(),M[ne]=F.clone(),H&&(y[ne]=H.clone())):le.r!==void 0&&(B||L.write("r",!0),(B||se)&&(st==null&&(st=new Set),st.add(le)))}let be=0,we=0;const Ce=s.advancer(Y,void 0,(ne,P)=>{h(P)&&be++}),Pe=s.advancer(H,(ne,P)=>c(P)?~(ne-we):ne-we,(ne,P)=>{c(P)&&we++});if(F)for(const ne of F)if(typeof ne=="string"){const P=Ce(ne),X=Pe(ne);L.descend(ne),ae(F,P,X,L,B),L.ascend()}else{const P=Ce(ne),X=ne-be,Ae=h(a(P))?null:Pe(X),$e=X+we;o($e>=0),L.descend($e),ae(F,P,Ae,L,B),L.ascend()}Ce.end(),Pe.end()})(He,Me,Me.clone(),Re,null),Re.reset();let kt=[];if(function ae(F,Y,H,L,B,se){o(Y);const ie=Y.getComponent();let le=a(L),be=!1;const we=(j,Ee,Ue)=>j?e.moveOp(j.getPath(),Ee.getPath()):e.insertOp(Ee.getPath(),Ue.i);if(c(ie)){const j=ie.d;j!=null&&(x[j]=Y.clone());const Ee=j!=null?Ze[j]:null;let Ue=!1;if(ie.i!==void 0||j!=null&&Ee){let ve;le&&(le.i!==void 0||(ve=le.d)!=null&&!v[ve])&&(Ue=ve!=null?j!=null&&j===Z[ve]:t.default(le.i,ie.i),Ue||ve!=null&&U!==1&&Z[ve]!=null||b==null&&(b={type:i.ConflictType.DROP_COLLISION,op1:we(j!=null?M[j]:null,Y,ie),op2:we(ve!=null?G[ve]:null,L,le)})),Ue||(se?b==null&&(b={type:i.ConflictType.RM_UNEXPECTED_CONTENT,op1:we(j!=null?M[j]:null,Y,ie),op2:e.removeOp(se.getPath())}):(j!=null?(kt[gt]=j,B.write("d",Ee.p=gt++)):B.write("i",r.default(ie.i)),be=!0))}else if(j!=null&&!Ee){const ve=V[j];ve&&(se=ve.clone())}j!=null?(F=M[j],H=A[j],L=y[j]):ie.i!==void 0&&(F=H=null,Ue||(L=null))}else h(a(F))&&(F=H=L=null);const Ce=a(F),Pe=a(H);if(h(Pe)){const j=Pe.p;Pe.r!==void 0&&(!Ce||Ce.r===void 0)||v[j]?(L=null,se=H.clone()):j!=null&&(L=I[j],U!==1&&Z[j]!=null||((B=ue[j])||(B=ue[j]=s.writeCursor()),B.reset(),se=null))}else!c(ie)&&c(le)&&(L=null);le=L!=null?L.getComponent():null;const ne=fe(ie);if(ne){const j=R(ie);if(se)b==null&&(b={type:i.ConflictType.RM_UNEXPECTED_CONTENT,op1:e.editOp(Y.getPath(),ne,j,!0),op2:e.removeOp(se.getPath())});else{const Ee=fe(le);let Ue;if(Ee){if(ne!==Ee)throw Error("Transforming incompatible types");const ve=R(le);Ue=ne.transform(j,ve,w)}else Ue=r.default(j);O(B,ne,Ue)}}let P=0,X=0,Ae=0,$e=0,Et=0,Ft=0,it=F!=null&&F.descendFirst(),gn=it;const Yt=s.advancer(H,void 0,(j,Ee)=>{h(Ee)&&Ae++});let ut=L!=null&&L.descendFirst(),ct=ut;for(const j of Y)if(typeof j=="number"){let Ee;const Ue=c(Y.getComponent()),ve=j-X;{let wt;for(;it&&typeof(wt=F.getKey())=="number";){wt+=P;const at=F.getComponent(),Xt=h(at);if(wt>ve||wt===ve&&(!Xt||U===0&&Ue))break;if(Xt){P--;const Ht=at.p;Z.includes(Ht),at.d,a(ue[at.d]),h(a(ue[at.d])),(at.r===void 0||st&&st.has(at))&&(Ht==null||!Ze[Ht]||U!==1&&Z.includes(Ht))||Et--}it=F.nextSibling()}Ee=it&&wt===ve?F:null}const ot=ve-P;let pt=Yt(ot);const ss=ot-Ae;let qn=null;{let wt,at;for(;ut&&typeof(wt=L.getKey())=="number";){at=wt-$e;const Xt=L.getComponent(),Ht=c(Xt);if(at>ss)break;if(at===ss){if(!Ht){qn=L;break}{if(U===0&&Ue){qn=L;break}const $t=pt&&h(pt.getComponent());if(U===0&&$t)break}}if(Ht){const $t=Xt.d;Z[$t],Xt.i===void 0&&(v[$t]||Z[$t]!=null&&U!==1)?(v[$t]||Z[$t]!=null&&U===0)&&($e++,Ft--):$e++}ut=L.nextSibling()}}const Ua=ss+$e+Et+Ft;o(Ua>=0,"trying to descend to a negative index"),B.descend(Ua),Ue&&(Ee=pt=qn=null,X++),ae(Ee,Y,pt,qn,B,se)&&Ft++,B.ascend()}else{let Ee;for(;it&&(Ee=F.getKey(),typeof Ee!="string"||!(Ee>j||Ee===j));)it=F.nextSibling();const Ue=it&&Ee===j?F:null,ve=Yt(j);let ot;for(;ut&&(ot=L.getKey(),typeof ot!="string"||!(ot>j||ot===j));)ut=L.nextSibling();const pt=ut&&ot===j?L:null;B.descend(j),ae(Ue,Y,ve,pt,B,se),B.ascend()}return Yt.end(),gn&&F.ascend(),ct&&L.ascend(),be}(He,He.clone(),Me,Me.clone(),Re,null),b)return{ok:!1,conflict:b};Re.reset();const Je=(ae,F,Y)=>ae.traverse(F,(H,L)=>{H.d!=null&&Y(H.d,ae,L)});(v.length||ge.length)&&(Je(Me,Re,(ae,F,Y)=>{v[ae]&&!$[ae]&&Y.write("r",!0),ge[ae]&&Y.mergeTree(ge[ae].get())}),Re.reset());const Ke=[],mt=[];if((ue.length||v.length)&&!b){const ae=s.readCursor(ns(Re.get()));if(Je(ae,null,(F,Y)=>{Ke[F]=Y.clone()}),ue.forEach(F=>{F&&Je(s.readCursor(F.get()),null,(Y,H)=>{Ke[Y]=H.clone()})}),function F(Y,H,L,B,se,ie){const le=a(H);if(le&&h(le))if(le.p!=null){const P=le.p;Ke[P].getPath(),L=Ke[P],B=mt[P]=s.writeCursor()}else le.r!==void 0&&(L=null);else c(a(L))&&(L=null);const be=Y.getComponent();if(be){let P;if((P=be.d)!=null){const X=ue[P];X&&(X.get(),B.mergeTree(X.get()),L=s.readCursor(X.get()))}}let we=0,Ce=0;const Pe=s.advancer(H,void 0,(P,X)=>{h(X)&&we--}),ne=s.advancer(L,(P,X)=>c(X)?-(P-Ce)-1:P-Ce,(P,X)=>{c(X)&&Ce++});for(const P of Y)if(typeof P=="number"){const X=Pe(P),Ae=P+we,$e=ne(Ae),Et=Ae+Ce;B.descend(Et),F(Y,X,$e,B),B.ascend()}else B.descend(P),F(Y,Pe(P),ne(P),B),B.ascend();Pe.end(),ne.end()}(Me,ae,ae.clone(),Re),Re.reset(),b)return{ok:!1,conflict:b};if(Re.get(),mt.length){const F=mt.map(H=>H?H.get():null),Y=s.readCursor(ns(Re.get()));if(Je(Y,Re,(H,L,B)=>{const se=F[H];se&&(B.mergeTree(se),F[H]=null)}),F.find(H=>H)){const H=s.writeCursor(),L=s.writeCursor();let B=0,se=0;F.forEach(ie=>{ie!=null&&Je(s.readCursor(ie),null,le=>{const be=kt[le];H.writeMove(M[be].getPath(),x[be].getPath(),B++);const we=pe[be];we&&we.forEach(Ce=>{v[Ce]||U!==1&&Z[Ce]!=null||L.writeMove(G[Ce].getPath(),I[Ce].getPath(),se++)})})}),b={type:i.ConflictType.BLACKHOLE,op1:H.get(),op2:L.get()}}}}return b?{ok:!1,conflict:b}:{ok:!0,result:Re.get()}}const Da=m=>{const C=new Error("Transform detected write conflict");throw C.conflict=m,C.type=C.name="writeConflict",C};function cd(m,C,w){const U=rs(m,C,w);if(U.ok)return U.result;Da(U.conflict)}const zt=m=>{const C=s.writeCursor();return s.readCursor(m).traverse(C,(w,U)=>{(c(w)||fe(w))&&U.write("r",!0)}),C.get()},hd=(m,C)=>{const{type:w,op1:U,op2:b}=m;switch(w){case i.ConflictType.DROP_COLLISION:return C==="left"?[null,zt(b)]:[zt(U),null];case i.ConflictType.RM_UNEXPECTED_CONTENT:let M=!1;return s.readCursor(U).traverse(null,x=>{x.r!==void 0&&(M=!0)}),M?[null,zt(b)]:[zt(U),null];case i.ConflictType.BLACKHOLE:return[zt(U),zt(b)];default:throw Error("Unrecognised conflict: "+w)}};function Ma(m,C,w,U){let b=null;for(;;){const M=rs(C,w,U);if(M.ok)return _e(b,M.result);{const{conflict:x}=M;m(x)||Da(x);const[G,I]=hd(x,U);C=_e(q(C),G),w=_e(q(w),I),b=_e(b,I)}}}})(bo),function(e){var n=je&&je.__createBinding||(Object.create?function(i,o,a,l){l===void 0&&(l=a),Object.defineProperty(i,l,{enumerable:!0,get:function(){return o[a]}})}:function(i,o,a,l){l===void 0&&(l=a),i[l]=o[a]}),t=je&&je.__exportStar||function(i,o){for(var a in i)a!=="default"&&!o.hasOwnProperty(a)&&n(o,i,a)};Object.defineProperty(e,"__esModule",{value:!0}),t(bo,e);var r=kr;Object.defineProperty(e,"ReadCursor",{enumerable:!0,get:function(){return r.ReadCursor}}),Object.defineProperty(e,"WriteCursor",{enumerable:!0,get:function(){return r.WriteCursor}});var s=Fr;Object.defineProperty(e,"ConflictType",{enumerable:!0,get:function(){return s.ConflictType}})}(Ge);const Tc=Pa({__proto__:null,default:Sc(Ge)},[Ge]);var ee=(e=>(e.RETAIN="r",e.INSERT="i",e.DELETE="d",e))(ee||{});class jr{constructor(n){g(this,"_index",0);g(this,"_offset",0);this._actions=n}hasNext(){return this.peekLength()<Number.POSITIVE_INFINITY}next(n){n||(n=Number.POSITIVE_INFINITY);const t=this._actions[this._index];if(t){const r=this._offset,s=t.len;return n>=s-r?(n=s-r,this._index+=1,this._offset=0):this._offset+=n,t.t===ee.DELETE||t.t===ee.RETAIN&&t.body==null?k.deepClone({...t,len:n}):k.deepClone({...t,len:n,body:an(t.body,r,r+n)})}else return{t:ee.RETAIN,len:Number.POSITIVE_INFINITY}}peek(){return this._actions[this._index]}peekLength(){return this._actions[this._index]?this._actions[this._index].len-this._offset:Number.POSITIVE_INFINITY}peekType(){const n=this._actions[this._index];return n?n.t:ee.RETAIN}rest(){if(this.hasNext()){if(this._offset===0)return this._actions.slice(this._index);{const n=this._offset,t=this._index,r=this.next(),s=this._actions.slice(this._index);return this._offset=n,this._index=t,[r].concat(s)}}else return[]}}class Mo{constructor(){g(this,"cursor",0)}reset(){return this.cursor=0,this}moveCursor(n){this.cursor+=n}moveCursorTo(n){this.cursor=n}}function Uo(e,n,t){const{dataStream:r}=e,s=t,i=t+n,o=Eo(e,n,t),a=po(e,n,t),l=Ro(e,n,t),d=Co(e,n,t),h=Io(e,n,t),c=vo(e,n,t),f=Oo(e,n,t);let _="";return r&&(e.dataStream=hi(r,s,i),_=r.slice(s,i)),{dataStream:_,textRuns:o,paragraphs:a,sectionBreaks:l,customBlocks:d,tables:h,customRanges:c,customDecorations:f}}function Lo(e,n,t,r){e.dataStream=ci(e.dataStream,r,n.dataStream),ho(e,n,t,r),Tr(e,n,t,r),cc(e,n,t,r),fo(e,n,t,r),_o(e,n,t,r),go(e,n,t,r),mo(e,n,t,r)}function yc(e,n,t,r,s=Fe.COVER){return fc(e,n,t,r,s)}function Dc(e,n,t){return n<=0?{dataStream:""}:Uo(e,n,t)}function Mc(e,n,t,r){t!==0&&Lo(e,n,t,r)}function Uc(e,n){const t=new Mo;return t.reset(),n.forEach(r=>{switch(r=k.deepClone(r),r.t){case ee.RETAIN:{const{coverType:s,body:i,len:o}=r;i!=null&&yc(e,i,o,t.cursor,s),t.moveCursor(o);break}case ee.INSERT:{const{body:s,len:i}=r;Mc(e,s,i,t.cursor),t.moveCursor(i);break}case ee.DELETE:{const{len:s}=r;Dc(e,s,t.cursor);break}default:throw new Error(`Unknown action type for action: ${r}.`)}}),e}function Po(e){return Object.keys(e).length===1}const _n=class _n{constructor(){g(this,"_actions",[])}static apply(n,t){return Uc(n,t)}static compose(n,t){const r=new jr(n),s=new jr(t),i=new _n;for(;r.hasNext()||s.hasNext();)if(s.peekType()===ee.INSERT)i.push(s.next());else if(r.peekType()===ee.DELETE)i.push(r.next());else{const o=Math.min(r.peekLength(),s.peekLength()),a=r.next(o),l=s.next(o);a.t===ee.INSERT&&l.t===ee.RETAIN?l.body==null?i.push(a):i.push({...a,body:Dr(a.body,l.body,l.coverType)}):a.t===ee.RETAIN&&l.t===ee.RETAIN?a.body==null&&l.body==null?i.push(a.len!==Number.POSITIVE_INFINITY?a:l):a.body&&l.body?i.push({...a,body:Dr(a.body,l.body,l.coverType)}):i.push(a.body?a:l):a.t===ee.RETAIN&&l.t===ee.DELETE?i.push(l):a.t===ee.INSERT&&(l.t,ee.DELETE)}return i.trimEndUselessRetainAction(),i.serialize()}static transform(n,t,r){throw new Error("transform is not implemented in TextX")}static isNoop(n){return n.length===0}static invert(n){const t=[];for(const r of n)if(r.t===ee.INSERT)t.push({t:ee.DELETE,len:r.len,line:0,body:r.body,segmentId:r.segmentId});else if(r.t===ee.DELETE){if(r.body==null)throw new Error("Can not invert DELETE action without body property, makeInvertible must be called first.");t.push({t:ee.INSERT,body:r.body,len:r.len,line:0,segmentId:r.segmentId})}else if(r.body!=null){if(r.oldBody==null)throw new Error("Can not invert RETAIN action without oldBody property, makeInvertible must be called first.");t.push({t:ee.RETAIN,body:r.oldBody,oldBody:r.body,len:r.len,coverType:Fe.REPLACE,segmentId:r.segmentId})}else t.push(r);return t}static makeInvertible(n,t){const r=[];let s=0;for(const i of n){if(i.t===ee.DELETE&&i.body==null){const o=an(t,s,s+i.len,!1);i.len=o.dataStream.length,i.body=o}if(i.t===ee.RETAIN&&i.body!=null){const o=an(t,s,s+i.len,!0);i.oldBody={...o,dataStream:""},i.len=o.dataStream.length}r.push(i),i.t!==ee.INSERT&&(s+=i.len)}return r}insert(n,t,r=""){const s={t:ee.INSERT,body:t,len:n,line:0,segmentId:r};return this.push(s),this}retain(n,t="",r,s){const i={t:ee.RETAIN,len:n,segmentId:t};return r!=null&&(i.body=r),s!=null&&(i.coverType=s),this.push(i),this}delete(n,t=""){const r={t:ee.DELETE,len:n,line:0,segmentId:t};return this.push(r),this}empty(){return this._actions=[],this}serialize(){return this._actions}push(...n){if(n.length>1){for(const i of n)this.push(i);return this}let t=this._actions.length,r=this._actions[t-1];const s=k.deepClone(n[0]);if(s.t===ee.RETAIN&&s.len===0&&s.body==null)return this;if(typeof r=="object"){if(r.t===ee.DELETE&&s.t===ee.DELETE)return r.len+=s.len,this;if(r.t===ee.DELETE&&s.t===ee.INSERT&&(t-=1,r=this._actions[t-1],r==null))return this._actions.unshift(s),this;if(r.t===ee.RETAIN&&s.t===ee.RETAIN&&r.body==null&&s.body==null)return r.len+=s.len,this;if(r.t===ee.INSERT&&Po(r.body)&&s.t===ee.INSERT&&Po(s.body))return r.len+=s.len,r.body.dataStream+=s.body.dataStream,this}return t===this._actions.length?this._actions.push(s):this._actions.splice(t,0,s),this}trimEndUselessRetainAction(){let n=this._actions[this._actions.length-1];for(;n&&n.t===ee.RETAIN&&vc(n);)this._actions.pop(),n=this._actions[this._actions.length-1];return this}};g(_n,"id","text-x"),g(_n,"uri","https://github.com/dream-num/univer#text-x");let St=_n;Object.defineProperty(St,"name",{value:"text-x"});const Kt=class Kt{static registerSubtype(n){var t;this._subTypes.has(n.name)&&((t=this._subTypes.get(n.name))==null?void 0:t.id)!==St.id||(this._subTypes.set(n.name,n),Ge.type.registerSubtype(n))}static apply(n,t){if(!Ge.type.isNoop(t))return Ge.type.apply(n,t)}static compose(n,t){return Ge.type.compose(n,t)}static transform(n,t,r){throw new Error("transform is not implemented in JsonX")}static invertWithDoc(n,t){return Ge.type.invertWithDoc(n,t)}static isNoop(n){return Ge.type.isNoop(n)}static getInstance(){return this._instance==null&&(this._instance=new Kt),this._instance}removeOp(n,t){return Ge.removeOp(n,t)}moveOp(n,t){return Ge.moveOp(n,t)}insertOp(n,t){return Ge.insertOp(n,t)}replaceOp(n,t,r){return Ge.replaceOp(n,t,r)}editOp(n,t=["body"]){return Ge.editOp(t,St.name,n)}};g(Kt,"uri","https://github.com/dream-num/univer#json-x"),g(Kt,"_subTypes",new Map),g(Kt,"_instance",null);let Lt=Kt;Lt.registerSubtype(St);const Gr={id:"default_doc",documentStyle:{}};class Lc extends Hn{constructor(t){super();g(this,"type",J.UNIVER_DOC);g(this,"snapshot");this.snapshot={...Gr,...t}}getUnitId(){throw new Error("Method not implemented.")}get drawings(){return this.snapshot.drawings}get documentStyle(){return this.snapshot.documentStyle}get lists(){return this.snapshot.lists}get zoomRatio(){var t;return((t=this.snapshot.settings)==null?void 0:t.zoomRatio)||1}resetDrawing(t,r){this.snapshot.drawings=t,this.snapshot.drawingsOrder=r}getBody(){return this.snapshot.body}getShouldRenderLoopImmediately(){return this.snapshot.shouldStartRenderingImmediately!==!1}getContainer(){return this.snapshot.container}getSnapshot(){return this.snapshot}updateDocumentId(t){this.snapshot.id=t}updateDocumentRenderConfig(t){const{documentStyle:r}=this.snapshot;r.renderConfig==null?r.renderConfig=t:r.renderConfig={...r.renderConfig,...t}}updateDocumentStyle(t){this.snapshot.documentStyle==null?this.snapshot.documentStyle=t:this.snapshot.documentStyle={...this.snapshot.documentStyle,...t}}updateDocumentDataMargin(t){const{t:r,l:s,b:i,r:o}=t,{documentStyle:a}=this.snapshot;r!=null&&(a.marginTop=r),s!=null&&(a.marginLeft=s),i!=null&&(a.marginBottom=i),o!=null&&(a.marginRight=o)}updateDocumentDataPageSize(t,r){const{documentStyle:s}=this.snapshot;if(!s.pageSize){t=t!=null?t:Number.POSITIVE_INFINITY,r=r!=null?r:Number.POSITIVE_INFINITY,s.pageSize={width:t,height:r};return}t!==void 0&&(s.pageSize.width=t),r!==void 0&&(s.pageSize.height=r)}updateDrawing(t,r){const{drawings:s}=this,{width:i,height:o,left:a,top:l}=r,d=s==null?void 0:s[t];if(!d)return;const h=d.docTransform;h.size.width=i,h.size.height=o,h.positionH.posOffset=a,h.positionV.posOffset=l}setZoomRatio(t=1){this.snapshot.settings==null?this.snapshot.settings={zoomRatio:t}:this.snapshot.settings.zoomRatio=1}}class Pt extends Lc{constructor(t){var s;super(k.isEmptyObject(t)?Oc():t);g(this,"_unitId");g(this,"headerModelMap",new Map);g(this,"footerModelMap",new Map);const r=6;this._unitId=(s=this.snapshot.id)!=null?s:k.generateRandomId(r),this._initializeHeaderFooterModel()}dispose(){this.headerModelMap.forEach(t=>{t.dispose()}),this.footerModelMap.forEach(t=>{t.dispose()})}getDrawings(){return this.snapshot.drawings}getDrawingsOrder(){return this.snapshot.drawingsOrder}getCustomRanges(){var t;return(t=this.snapshot.body)==null?void 0:t.customRanges}getCustomDecorations(){var t;return(t=this.snapshot.body)==null?void 0:t.customDecorations}getRev(){var t;return(t=this.snapshot.rev)!=null?t:1}incrementRev(){this.snapshot.rev=this.getRev()+1}getSettings(){return this.snapshot.settings}reset(t){if(t.id&&t.id!==this._unitId)throw new Error("Cannot reset a document model with a different unit id!");this.snapshot={...Gr,...t},this._initializeHeaderFooterModel()}getSelfOrHeaderFooterModel(t){if(t!=null){if(this.headerModelMap.has(t))return this.headerModelMap.get(t);if(this.footerModelMap.has(t))return this.footerModelMap.get(t)}return this}getUnitId(){return this._unitId}apply(t){if(!Lt.isNoop(t))return this.snapshot=Lt.apply(this.snapshot,t),t!=null&&t.some(r=>Array.isArray(r)&&((r==null?void 0:r[0])==="headers"||(r==null?void 0:r[0])==="footers"))&&(this.headerModelMap.clear(),this.footerModelMap.clear(),this._initializeHeaderFooterModel()),this.snapshot}sliceBody(t,r,s=yr.copy){const i=this.getBody();if(i!=null)return an(i,t,r,!1,s)}_initializeHeaderFooterModel(){const{headers:t,footers:r}=this.getSnapshot();if(t)for(const s in t){const i=t[s];this.headerModelMap.set(s,new Pt(i))}if(r)for(const s in r){const i=r[s];this.footerModelMap.set(s,new Pt(i))}}updateDocumentId(t){super.updateDocumentId(t),this._unitId=t}}const ko=xe("univer.config-service");class Fo{constructor(){g(this,"_config",new Map)}getConfig(n){return this._config.get(n)}setConfig(n,t){this._config.set(n,t)}deleteConfig(n){this._config.delete(n)}}class Ho extends Te{constructor(){super(...arguments);g(this,"_error$",new W.Subject);g(this,"error$",this._error$.asObservable())}dispose(){this._error$.complete()}emit(t){this._error$.next({errorKey:t})}}class $o{constructor(n={}){g(this,"_styles");g(this,"_cacheMap",new Ii(1e5));this._styles=n,this._generateCacheMap()}each(n){return Object.entries(this._styles).forEach(n),this}search(n,t){if(this._cacheMap.has(t))return this._cacheMap.get(t);const r=this._getExistingStyleId(n);return r||"-1"}get(n){return typeof n!="string"?n:(n=String(n),this._styles[n])}add(n,t){const r=k.generateRandomId(6);return this._styles[r]=n,this._cacheMap.set(t,r),r}setValue(n){if(n==null)return;const t=JSON.stringify(n),r=this.search(n,t);return r!=="-1"?r:this.add(n,t)}toJSON(){return this._styles}getStyleByCell(n){let t;n&&k.isObject(n.s)?t=n.s:t=(n==null?void 0:n.s)&&this.get(n.s);const r=n==null?void 0:n.interceptorStyle;return r?{...t,...r}:t}_generateCacheMap(){const{_styles:n,_cacheMap:t}=this;for(const r in n){const s=JSON.stringify(n[r]);t.set(s,r)}}_getExistingStyleId(n){const{_styles:t}=this;for(const r in t)if(k.diffValue(t[r],n))return r;return null}}class Pc{constructor(n,t){g(this,"_columnData",{});this._config=n,this._columnData=t}getColumnData(){return this._columnData}getColVisible(n){const{_columnData:t}=this,r=t[n];return r?r.hd!==z.TRUE:!0}getHiddenCols(n=0,t=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=n;o<=t;o++){const a=this.getColVisible(o);s&&a?(s=!1,r.push({rangeType:oe.COLUMN,startColumn:i,endColumn:o-1,startRow:0,endRow:0})):!s&&!a&&(s=!0,i=o)}return s&&r.push({startRow:0,endRow:0,startColumn:i,endColumn:t,rangeType:oe.COLUMN}),r}getVisibleCols(n=0,t=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=n;o<=t;o++){const a=this.getColVisible(o);s&&!a?(s=!1,r.push({rangeType:oe.COLUMN,startColumn:i,endColumn:o-1,startRow:0,endRow:0})):!s&&a&&(s=!0,i=o)}return s&&r.push({startRow:0,endRow:0,startColumn:i,endColumn:t,rangeType:oe.COLUMN}),r}getColumnDatas(n,t){const r={};let s=0;for(let i=n;i<n+t;i++){const o=this.getColumnOrCreate(i);r[s]=o,s++}return r}getSize(){return It(this._columnData)}getColumnWidth(n){const{_columnData:t}=this,r=this._config;let s=0;return s=(t[n]||{hd:z.FALSE,w:r.defaultColumnWidth}).w||r.defaultColumnWidth,s}getColumn(n){const t=this._columnData[n];if(t)return t}getColumnOrCreate(n){const{_columnData:t}=this,r=this._config,s=t[n];if(s)return s;const i={w:r.defaultColumnWidth,hd:z.FALSE};return this._columnData[n]=i,i}}class kc{constructor(n,t,r){g(this,"_rowData");this._config=n,this._viewModel=t,this._rowData=r}getRowData(){return this._rowData}getRowDatas(n,t){const r={};let s=0;for(let i=n;i<n+t;i++){const o=this.getRowOrCreate(i);r[s]=o,s++}return r}getRowHeight(n,t=1){const{_rowData:r}=this,s=this._config;let i=0;for(let o=0;o<t;o++){const a=r[o+n]||{hd:z.FALSE,h:s.defaultRowHeight},{ia:l,ah:d,h=s.defaultRowHeight}=a;i+=(l==null||l===z.TRUE)&&typeof d=="number"?d:h}return i}getRow(n){return this._rowData[n]}getRowOrCreate(n){const{_rowData:t}=this,r=t[n];if(r)return r;const s=this._config,i={hd:z.FALSE,h:s.defaultRowHeight};return t[n]=i,i}getHiddenRows(n=0,t=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=n;o<=t;o++){const a=this.getRowRawVisible(o);s&&a?(s=!1,r.push({startRow:i,endRow:o-1,startColumn:0,endColumn:0,rangeType:oe.ROW})):!s&&!a&&(s=!0,i=o)}return s&&r.push({startRow:i,endRow:t,startColumn:0,endColumn:0,rangeType:oe.ROW}),r}getVisibleRows(n=0,t=this.getSize()-1){const r=[];let s=!1,i=-1;for(let o=n;o<=t;o++){const a=this.getRowRawVisible(o);s&&!a?(s=!1,r.push({startRow:i,endRow:o-1,startColumn:0,endColumn:0,rangeType:oe.ROW})):!s&&a&&(s=!0,i=o)}return s&&r.push({startRow:i,endRow:t,startColumn:0,endColumn:0,rangeType:oe.ROW}),r}getRowRawVisible(n){const t=this.getRow(n);return t?t.hd!==z.TRUE:!0}getSize(){return It(this._rowData)}}const Fc="DEFAULT_WORKSHEET_ROW_COUNT",Wo=1e3,Hc="DEFAULT_WORKSHEET_COLUMN_COUNT",Bo=20,$c="DEFAULT_WORKSHEET_ROW_HEIGHT",jo=24,Wc="DEFAULT_WORKSHEET_COLUMN_WIDTH",Go=88,Bc="DEFAULT_WORKSHEET_ROW_TITLE_WIDTH",Vo=46,jc="DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT",xo=20;function Ko(e){const n={name:"Sheet1",id:"sheet-01",tabColor:"",hidden:z.FALSE,rowCount:Wo,columnCount:Bo,zoomRatio:1,freeze:{xSplit:0,ySplit:0,startRow:-1,startColumn:-1},scrollTop:0,scrollLeft:0,defaultColumnWidth:Go,defaultRowHeight:jo,mergeData:[],cellData:{},rowData:{},columnData:{},showGridlines:z.TRUE,rowHeader:{width:Vo,hidden:z.FALSE},columnHeader:{height:xo,hidden:z.FALSE},selections:["A1"],rightToLeft:z.FALSE};return Object.keys(n).forEach(t=>{const r=t;typeof e[r]>"u"&&(e[r]=n[r])}),e}class zo extends Te{constructor(t){super();g(this,"_cellContentInterceptor",null);g(this,"_rowFilteredInterceptor",null);this.getRawCell=t}dispose(){super.dispose(),this._cellContentInterceptor=null,this._rowFilteredInterceptor=null}getCell(t,r){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(t,r):this.getRawCell(t,r)}getRowFiltered(t){var r,s;return(s=(r=this._rowFilteredInterceptor)==null?void 0:r.getRowFiltered(t))!=null?s:!1}registerCellContentInterceptor(t){if(this._cellContentInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._cellContentInterceptor=t,Se(()=>this._cellContentInterceptor=null)}registerRowFilteredInterceptor(t){if(this._rowFilteredInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._rowFilteredInterceptor=t,Se(()=>this._rowFilteredInterceptor=null)}}class ln{constructor(n,t,r){g(this,"_sheetId");g(this,"_snapshot");g(this,"_cellData");g(this,"_rowManager");g(this,"_columnManager");g(this,"_viewModel");var a;this.unitId=n,this._styles=r,this._snapshot=Ko(t);const{columnData:s,rowData:i,cellData:o}=this._snapshot;this._sheetId=(a=this._snapshot.id)!=null?a:k.generateRandomId(6),this._cellData=new nt(o),this._viewModel=new zo((l,d)=>this.getCellRaw(l,d)),this._rowManager=new kc(this._snapshot,this._viewModel,i),this._columnManager=new Pc(this._snapshot,s)}__interceptViewModel(n){n(this._viewModel)}getSnapshot(){return this._snapshot}getCellMatrix(){return this._cellData}getCellMatrixPrintRange(){const n=this.getCellMatrix(),t=this.getMergeData();let r=-1,s=-1,i=-1,o=-1,a=!1,l=!1;return n.forEach((d,h)=>{Object.keys(h).forEach(c=>{const f=+c,_=n.getValue(d,f),E=_!=null&&_.s?this._styles.get(_.s):null,p=(E==null?void 0:E.bd)&&(E.bd.b||E.bd.l||E.bd.r||E.bd.t||E.bd.bc_tr||E.bd.bl_tr||E.bd.ml_tr||E.bd.tl_bc||E.bd.tl_br||E.bd.tl_mr);(_&&(_.v||_.p)||E!=null&&E.bg||p)&&(a?r=Math.min(r,d):(r=d,a=!0),s=Math.max(s,d),l?i=Math.min(i,f):(l=!0,i=f),o=Math.max(o,f))})}),t.forEach(d=>{a?r=Math.min(r,d.startRow):(r=d.startRow,a=!0),s=Math.max(s,d.endRow),l?i=Math.min(i,d.startColumn):(i=d.startColumn,a=!0),o=Math.max(o,d.endColumn)}),!a||!l?null:{startColumn:i,startRow:r,endColumn:o,endRow:s}}getRowManager(){return this._rowManager}getUnitId(){return this.unitId}getSheetId(){return this._sheetId}getColumnManager(){return this._columnManager}getName(){return this._snapshot.name}clone(){const{_snapshot:n}=this,t=k.deepClone(n);return new ln(this.unitId,t,this._styles)}getMergeData(){return this._snapshot.mergeData}getMergedCell(n,t){const r=this._snapshot.mergeData;for(let s=0;s<r.length;s++){const i=r[s];if(vt.intersects({startRow:n,startColumn:t,endRow:n,endColumn:t},i))return i}return null}getCell(n,t){return n<0||t<0?null:this._viewModel.getCell(n,t)}getCellRaw(n,t){return this.getCellMatrix().getValue(n,t)}getRowFiltered(n){return this._viewModel.getRowFiltered(n)}getMatrixWithMergedCells(n,t,r,s,i=!1){const o=this.getCellMatrix(),a=this._snapshot.mergeData.filter(d=>vt.intersects({startRow:n,startColumn:t,endRow:r,endColumn:s},d)),l=new nt;return ur(n,r,t,s).forEach((d,h)=>{const c=i?this.getCellRaw(d,h):this.getCell(d,h);c&&l.setValue(d,h,c)}),a.forEach(d=>{const{startColumn:h,startRow:c,endColumn:f,endRow:_}=d;ur(c,_,h,f).forEach((E,p)=>{E===c&&p===h&&l.setValue(E,p,{...o.getValue(E,p),rowSpan:_-c+1,colSpan:f-h+1}),(E!==c||p!==h)&&l.realDeleteValue(E,p)})}),l}getRange(n,t,r,s){return typeof n=="object"?new Gt(this,n,{getStyles:()=>this._styles}):new Gt(this,{startRow:n,startColumn:t,endColumn:s||t,endRow:r||n},{getStyles:()=>this._styles})}getScrollLeftTopFromSnapshot(){return{scrollLeft:this._snapshot.scrollLeft,scrollTop:this._snapshot.scrollTop}}getZoomRatio(){return this._snapshot.zoomRatio||1}getConfig(){return this._snapshot}getFreeze(){return this._snapshot.freeze}getMaxColumns(){const{_snapshot:n}=this,{columnCount:t}=n;return t}getMaxRows(){const{_snapshot:n}=this,{rowCount:t}=n;return t}getRowCount(){return this._snapshot.rowCount}setRowCount(n){this._snapshot.rowCount=n}getColumnCount(){return this._snapshot.columnCount}setColumnCount(n){this._snapshot.columnCount=n}isSheetHidden(){return this._snapshot.hidden}hasHiddenGridlines(){const{_snapshot:n}=this,{showGridlines:t}=n;return t===0}getTabColor(){const{_snapshot:n}=this,{tabColor:t}=n;return t}getColumnWidth(n){return this.getColumnManager().getColumnWidth(n)}getRowHeight(n){return this._viewModel.getRowFiltered(n)?0:this.getRowManager().getRowHeight(n)}getRowVisible(n){return this._viewModel.getRowFiltered(n)?!1:this.getRowRawVisible(n)}getRowRawVisible(n){return this.getRowManager().getRowRawVisible(n)}getHiddenRows(n,t){const r=this.getMaxColumns()-1,s=this._rowManager.getHiddenRows(n,t);return s.forEach(i=>i.endColumn=r),s}getColVisible(n){return this._columnManager.getColVisible(n)}getHiddenCols(n,t){const r=this.getMaxRows()-1,s=this._columnManager.getHiddenCols(n,t);return s.forEach(i=>i.endRow=r),s}getVisibleRows(){const n=this.getRowCount();return this._rowManager.getVisibleRows(0,n-1)}getVisibleCols(){const n=this.getColumnCount();return this._columnManager.getVisibleCols(0,n-1)}isRightToLeft(){const{_snapshot:n}=this,{rightToLeft:t}=n;return t}getLastRowWithContent(){return this._cellData.getLength()-1}getLastColumnWithContent(){return this._cellData.getRange().endColumn}cellHasValue(n){return n&&(n.v!==void 0||n.f!==void 0||n.p!==void 0)}iterateByRow(n,t=!0){const{startRow:r,startColumn:s,endRow:i,endColumn:o}=n,a=this;return{[Symbol.iterator]:()=>{let l=r,d=s;return{next(){for(;;){if(d>o&&(l+=1,d=s),l>i)return{done:!0,value:void 0};const h=a.getCell(l,d),c=!h,f=a.getMergedCell(l,d);if(f){if(l!==f.startRow||d!==f.startColumn){d=f.endColumn+1;continue}if(c&&t){d=f.endColumn+1;continue}const E={row:l,col:d,value:h};return E.colSpan=f.endColumn-f.startColumn+1,E.rowSpan=f.endRow-f.startRow+1,d=f.endColumn+1,{done:!1,value:E}}if(c&&t)d+=1;else{const _={row:l,col:d,value:h};return d+=1,{done:!1,value:_}}}}}}}}iterateByColumn(n,t=!0,r=!0){const{startRow:s,startColumn:i,endRow:o,endColumn:a}=n,l=this;return{[Symbol.iterator]:()=>{let d=s,h=i;return{next(){for(;;){if(d>o&&(h+=1,d=s),h>a)return{done:!0,value:void 0};const c=l.getMergedCell(d,h);if(c){const E=d!==c.startRow,p=E||h!==c.startColumn;if(r&&p||!r&&E){d=c.endRow+1;continue}const N=l.getCell(c.startRow,c.startColumn);if(!N&&t){d=c.endRow+1;continue}const te={row:d,col:c.startColumn,value:N};return te.colSpan=c.endColumn-c.startColumn+1,te.rowSpan=c.endRow-c.startRow+1,d=c.endRow+1,{done:!1,value:te}}const f=l.getCell(d,h);if(!f&&t)d+=1;else{const E={row:d,col:h,value:f};return d+=1,{done:!1,value:E}}}}}}}}}function Gc(e){var r,s;if(!e)return"";const n=(s=(r=e.p)==null?void 0:r.body)==null?void 0:s.dataStream;if(n)return n;const t=e.v;return typeof t=="string"?e.t===Tt.BOOLEAN?t.toUpperCase():t.replace(/[\r\n]/g,""):typeof t=="number"?e.t===Tt.BOOLEAN?t?"TRUE":"FALSE":t.toString():typeof t=="boolean"?t?"TRUE":"FALSE":""}const Vc="0.2.5";function xc(e="",n=bt.ZH_CN,t=""){return{id:e,sheetOrder:[],name:t,appVersion:Vc,locale:n,styles:{},sheets:{},resources:[]}}var Kc=Object.defineProperty,zc=Object.getOwnPropertyDescriptor,Yc=(e,n,t,r)=>{for(var s=r>1?void 0:r?zc(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&Kc(n,t,s),s},Xc=(e,n)=>(t,r)=>n(t,r,e);function Qc(e,n){return`${e.getUnitId()}|${n.getSheetId()}`}u.Workbook=class extends Hn{constructor(t={},r){super();g(this,"type",J.UNIVER_SHEET);g(this,"_sheetCreated$",new W.Subject);g(this,"sheetCreated$",this._sheetCreated$.asObservable());g(this,"_sheetDisposed$",new W.Subject);g(this,"sheetDisposed$",this._sheetDisposed$.asObservable());g(this,"_activeSheet$",new W.BehaviorSubject(null));g(this,"activeSheet$",this._activeSheet$.asObservable());g(this,"_worksheets");g(this,"_styles");g(this,"_snapshot");g(this,"_unitId");g(this,"_count");g(this,"_name$");g(this,"name$");this._logService=r;const s=xc();k.isEmptyObject(t)?this._snapshot=s:this._snapshot=k.commonExtend(s,t);const{styles:i}=this._snapshot;(this._snapshot.id==null||this._snapshot.id.length===0)&&(this._snapshot.id=k.generateRandomId(6)),this._unitId=this._snapshot.id,this._styles=new $o(i),this._count=1,this._worksheets=new Map,this._name$=new W.BehaviorSubject(t.name||""),this.name$=this._name$.asObservable(),this._parseWorksheetSnapshots()}get _activeSheet(){return this._activeSheet$.getValue()}get name(){return this._name$.getValue()}dispose(){super.dispose(),this._sheetCreated$.complete(),this._sheetDisposed$.complete(),this._activeSheet$.complete(),this._name$.complete()}save(){return k.deepClone(this._snapshot)}static isIRangeType(t){return typeof t=="string"||"startRow"in t||"row"in t}getSnapshot(){return this._snapshot}getName(){return this._snapshot.name}setName(t){this._name$.next(t),this._snapshot.name=t}getUnitId(){return this._unitId}getRev(){var t;return(t=this._snapshot.rev)!=null?t:1}incrementRev(){this._snapshot.rev=this.getRev()+1}getShouldRenderLoopImmediately(){return this._snapshot.shouldStartRenderingImmediately!==!1}getContainer(){return this._snapshot.container}addWorksheet(t,r,s){const{sheets:i,sheetOrder:o}=this._snapshot;if(i[t])return!1;i[t]=s,o.splice(r,0,t);const a=new ln(this._unitId,s,this._styles);return this._worksheets.set(t,a),this._sheetCreated$.next(a),!0}getSheetOrders(){return this._snapshot.sheetOrder}getWorksheets(){return this._worksheets}getActiveSpreadsheet(){return this}getStyles(){return this._styles}getConfig(){return this._snapshot}getIndexBySheetId(t){const{sheetOrder:r}=this._snapshot;return r.findIndex(s=>s===t)}getActiveSheet(t){if(!this._activeSheet&&typeof t>"u")throw new Error(`[Workbook]: no active Worksheet on Workbook ${this._unitId}!`);return this._activeSheet}ensureActiveSheet(){const t=this._activeSheet;if(t)return t;const r=this._snapshot.sheetOrder;for(let i=0,o=r.length;i<o;i++){const a=this._worksheets.get(r[i]);if(a&&a.isSheetHidden()!==z.TRUE)return this.setActiveSheet(a),a}const s=this._worksheets.get(r[0]);return this.setActiveSheet(s),s}setActiveSheet(t){this._activeSheet$.next(t)}removeSheet(t){const r=this._worksheets.get(t);return r?(this._worksheets.delete(t),this._snapshot.sheetOrder.splice(this._snapshot.sheetOrder.indexOf(t),1),delete this._snapshot.sheets[t],this._sheetDisposed$.next(r),!0):!1}getActiveSheetIndex(){const{sheetOrder:t}=this._snapshot;return t.findIndex(r=>this._worksheets.get(r)===this._activeSheet)}getSheetSize(){return this._snapshot.sheetOrder.length}getSheets(){const{sheetOrder:t}=this._snapshot;return t.map(r=>this._worksheets.get(r))}getSheetsName(){const{sheetOrder:t}=this._snapshot,r=[];return t.forEach(s=>{const i=this._worksheets.get(s);i&&r.push(i.getName())}),r}getSheetIndex(t){const{sheetOrder:r}=this._snapshot;return r.findIndex(s=>t.getSheetId()===s)}getSheetBySheetName(t){const{sheetOrder:r}=this._snapshot,s=r.find(i=>this._worksheets.get(i).getName()===t);return this._worksheets.get(s)}getSheetBySheetId(t){return this._worksheets.get(t)}getSheetByIndex(t){const{sheetOrder:r}=this._snapshot;return this._worksheets.get(r[t])}getHiddenWorksheets(){return this.getSheets().filter(t=>t.getConfig().hidden===z.TRUE).map(t=>t.getConfig().id)}getUnhiddenWorksheets(){return this.getSheets().filter(t=>t.getConfig().hidden!==z.TRUE).map(t=>t.getConfig().id)}load(t){this._snapshot=t}checkSheetName(t){return this.getSheetsName().includes(t)}uniqueSheetName(t="Sheet1"){let r=t;for(;this.checkSheetName(r);)r=t+this._count,this._count++;return r}generateNewSheetName(t){let r=t+this._count;for(;this.checkSheetName(r);)r=t+this._count,this._count++;return r}_parseWorksheetSnapshots(){const{_snapshot:t,_worksheets:r}=this,{sheets:s,sheetOrder:i}=t;if(k.isEmptyObject(s)){const o=k.generateRandomId();s[o]={id:o}}for(const o in s){const a=s[o],{name:l}=a;a.name=this.uniqueSheetName(l),a.name!==l&&this._logService.debug("[Workbook]",`The worksheet name ${l} is duplicated, we changed it to ${a.name}. Please fix the problem in your snapshot.`);const d=new ln(this._unitId,a,this._styles);r.set(o,d),i.includes(o)||i.push(o)}this.ensureActiveSheet()}},u.Workbook=Yc([Xc(1,Ot)],u.Workbook);class Vr extends Hn{constructor(t){var r;super();g(this,"type",J.UNIVER_SLIDE);g(this,"_snapshot");g(this,"_unitId");this._snapshot={...Si,...t},this._unitId=(r=this._snapshot.id)!=null?r:k.generateRandomId(6)}getContainer(){return this._snapshot.container}getSnapshot(){return this._snapshot}getUnitId(){return this._unitId}getPages(){var t;return(t=this._snapshot.body)==null?void 0:t.pages}getPageOrder(){var t;return(t=this._snapshot.body)==null?void 0:t.pageOrder}getPage(t){const r=this.getPages();return r==null?void 0:r[t]}getElementsByPage(t){var r;return(r=this.getPage(t))==null?void 0:r.pageElements}getElement(t,r){var s;return(s=this.getElementsByPage(t))==null?void 0:s[r]}getPageSize(){return this._snapshot.pageSize}addPage(){return{id:"cover_1",pageType:tr.SLIDE,zIndex:1,title:"cover",description:"this is first page, cover",pageBackgroundFill:{rgb:"rgb(255,255,255)"},pageElements:{}}}}const un="FOCUSING_SHEET",Bn="FOCUSING_DOC",jn="FOCUSING_SLIDE",qc="FOCUSING_EDITOR_BUT_HIDDEN",Yo="EDITOR_ACTIVATED",Zc="FOCUSING_EDITOR_INPUT_FORMULA",Xo="FOCUSING_FORMULA_EDITOR",Jc="FOCUSING_UNIVER_EDITOR",eh="FOCUSING_EDITOR_INPUT_FORMULA",th="FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE",nh="FOCUSING_COMMON_DRAWINGS";var rh=Object.defineProperty,sh=Object.getOwnPropertyDescriptor,ih=(e,n,t,r)=>{for(var s=r>1?void 0:r?sh(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&rh(n,t,s),s},Qo=(e,n)=>(t,r)=>n(t,r,e);const xt=xe("univer.current");u.UniverInstanceService=class extends Te{constructor(t,r){super();g(this,"_unitsByType",new Map);g(this,"_createHandler");g(this,"_ctorByType",new Map);g(this,"_currentUnits",new Map);g(this,"_currentUnits$",new W.BehaviorSubject(this._currentUnits));g(this,"currentUnits$",this._currentUnits$.asObservable());g(this,"_unitAdded$",new W.Subject);g(this,"unitAdded$",this._unitAdded$.asObservable());g(this,"_unitDisposed$",new W.Subject);g(this,"unitDisposed$",this._unitDisposed$.asObservable());g(this,"_focused$",new W.BehaviorSubject(null));g(this,"focused$",this._focused$.asObservable());this._injector=t,this._contextService=r}dispose(){super.dispose(),this._focused$.complete()}__setCreateHandler(t){this._createHandler=t}createUnit(t,r){return this._createHandler(t,r,this._ctorByType.get(t))}registerCtorForType(t,r){return this._ctorByType.set(t,r),{dispose:()=>{this._ctorByType.delete(t)}}}getCurrentTypeOfUnit$(t){return this.currentUnits$.pipe(W.map(r=>{var s;return(s=r.get(t))!=null?s:null}),W.distinctUntilChanged())}getCurrentUnitForType(t){return this._currentUnits.get(t)}setCurrentUnitForType(t){const r=this._getUnitById(t);if(!r)throw new Error(`[UniverInstanceService]: no document with unitId ${t}!`);this._currentUnits.set(r[1],r[0]),this._currentUnits$.next(this._currentUnits)}_removeCurrentUnitForType(t){this._currentUnits.set(t,null),this._currentUnits$.next(this._currentUnits)}getTypeOfUnitAdded$(t){return this._unitAdded$.pipe(W.filter(r=>r.type===t))}__addUnit(t){const r=t.type;this._unitsByType.has(r)||this._unitsByType.set(r,[]),this._unitsByType.get(r).push(t),this._unitAdded$.next(t),this.setCurrentUnitForType(t.getUnitId())}getTypeOfUnitDisposed$(t){return this.unitDisposed$.pipe(W.filter(r=>r.type===t))}getUnit(t,r){var i;const s=(i=this._getUnitById(t))==null?void 0:i[0];return r&&(s==null?void 0:s.type)!==r?null:s}getCurrentUniverDocInstance(){return this.getCurrentUnitForType(J.UNIVER_DOC)}getUniverDocInstance(t){return this.getUnit(t,J.UNIVER_DOC)}getUniverSheetInstance(t){return this.getUnit(t,J.UNIVER_SHEET)}getAllUnitsForType(t){var r;return(r=this._unitsByType.get(t))!=null?r:[]}changeDoc(t,r){const s=this.getAllUnitsForType(J.UNIVER_DOC),i=s.find(o=>o.getUnitId()===t);if(i!=null){const o=s.indexOf(i);s.splice(o,1)}this.__addUnit(r)}get focused(){var r;const t=this._focused$.getValue();return t?(r=this._getUnitById(t))==null?void 0:r[0]:null}focusUnit(t){this._focused$.next(t),this.focused instanceof u.Workbook?(this._contextService.setContextValue(Bn,!1),this._contextService.setContextValue(un,!0),this._contextService.setContextValue(jn,!1)):this.focused instanceof Pt?(this._contextService.setContextValue(Bn,!0),this._contextService.setContextValue(un,!1),this._contextService.setContextValue(jn,!1)):this.focused instanceof Vr&&(this._contextService.setContextValue(Bn,!1),this._contextService.setContextValue(un,!1),this._contextService.setContextValue(jn,!0))}getFocusedUnit(){return this.focused}getUnitType(t){const r=this._getUnitById(t);if(!r)throw new Error(`[UniverInstanceService]: No document with unitId ${t}`);return r[1]}disposeUnit(t){const r=this._getUnitById(t);if(!r)return!1;const[s,i]=r,o=this._unitsByType.get(i),a=o.indexOf(s);return o.splice(a,1),this._removeCurrentUnitForType(i),this._focused$.next(null),this._unitDisposed$.next(s),!0}_getUnitById(t){for(const[r,s]of this._unitsByType){const i=s.find(o=>o.getUnitId()===t);if(i)return[i,r]}}},u.UniverInstanceService=ih([Qo(0,rt(dt)),Qo(1,rn)],u.UniverInstanceService);var de=(e=>(e[e.Starting=0]="Starting",e[e.Ready=1]="Ready",e[e.Rendered=2]="Rendered",e[e.Steady=3]="Steady",e))(de||{});const oh={0:"Starting",1:"Ready",2:"Rendered",3:"Steady"},Gn=new Map;function qo(e,n){return function(s){Vn(e,n)}}function Vn(e,n){Gn.has(e)||Gn.set(e,[]),Gn.get(e).push(n)}var ah=Object.defineProperty,lh=Object.getOwnPropertyDescriptor,Zo=(e,n,t,r)=>{for(var s=r>1?void 0:r?lh(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&ah(n,t,s),s},Jo=(e,n)=>(t,r)=>n(t,r,e);u.LifecycleService=class extends Te{constructor(t){super();g(this,"_lifecycle$",new W.BehaviorSubject(de.Starting));g(this,"lifecycle$",this._lifecycle$.asObservable());g(this,"_lock",!1);this._logService=t,this._reportProgress(de.Starting)}get stage(){return this._lifecycle$.getValue()}set stage(t){if(t<this.stage)throw new Error("[LifecycleService]: lifecycle stage cannot go backward!");if(t!==this.stage){if(this._lock)throw new Error("[LifecycleService]: cannot set new stage when related logic is all handled!");this._lock=!0,this._reportProgress(t),this._lifecycle$.next(t),this._lock=!1}}dispose(){this._lifecycle$.complete(),super.dispose()}subscribeWithPrevious(){return W.merge(ea(this.stage),this._lifecycle$.pipe(W.skip(1))).pipe(ao(t=>t===de.Steady))}_reportProgress(t){this._logService.debug("[LifecycleService]",`lifecycle progressed to "${oh[t]}".`)}},u.LifecycleService=Zo([Jo(0,Ot)],u.LifecycleService),u.LifecycleInitializerService=class extends Te{constructor(t){super();g(this,"_seenTokens",new Set);this._injector=t}initModulesOnStage(t){var r;(r=Gn.get(t))==null||r.forEach(s=>{this._injector.has(s)&&!this._seenTokens.has(s)&&(this._injector.get(s),this._seenTokens.add(s))})}},u.LifecycleInitializerService=Zo([Jo(0,rt(dt))],u.LifecycleInitializerService);function ea(e){switch(e){case de.Starting:return W.of(de.Starting);case de.Ready:return W.of(de.Starting,de.Ready);case de.Rendered:return W.of(de.Starting,de.Ready,de.Rendered);default:return W.of(de.Starting,de.Ready,de.Rendered,de.Steady)}}class cn extends Te{constructor(){super();g(this,"_currentLocale$",new W.BehaviorSubject(bt.ZH_CN));g(this,"currentLocale$",this._currentLocale$.asObservable());g(this,"_locales",null);g(this,"localeChanged$",new W.Subject);g(this,"t",(t,...r)=>{if(!this._locales)throw new Error("[LocaleService]: Locale not initialized");const s=t.split("."),i=this.resolveKeyPath(this._locales[this._currentLocale],s);if(typeof i=="string"){let o=i;return r.forEach((a,l)=>{o=o.replace(`{${l}}`,a)}),o}else return t});this.disposeWithMe(Se(()=>this.localeChanged$.complete()))}get _currentLocale(){return this._currentLocale$.value}load(t){var r;this._locales=k.deepMerge((r=this._locales)!=null?r:{},t)}setLocale(t){this._currentLocale$.next(t),this.localeChanged$.next()}getLocales(){var t;return(t=this._locales)==null?void 0:t[this._currentLocale]}getCurrentLocale(){return this._currentLocale}resolveKeyPath(t,r){const s=r.shift();if(s&&t&&s in t){const i=t[s];return r.length>0&&(typeof i=="object"||Array.isArray(i))?this.resolveKeyPath(i,r):i}return null}}var xr=(e=>(e.INIT="init",e.FETCHING="fetching",e.DONE="done",e))(xr||{});const Kr=xe("univer.permission-service");Vn(de.Starting,Kr);class ta extends Te{constructor(){super(...arguments);g(this,"_permissionPointMap",new Map);g(this,"_permissionPointUpdate$",new W.Subject);g(this,"permissionPointUpdate$",this._permissionPointUpdate$.asObservable())}deletePermissionPoint(t){const r=this._permissionPointMap.get(t);r&&(r.complete(),this._permissionPointMap.delete(t))}addPermissionPoint(t){const r=t instanceof W.BehaviorSubject,s=r?t.getValue():t;if(!s.id)return!1;if(this._permissionPointMap.get(s.id))throw new Error(`${s.id} PermissionPoint already exists`);return this._permissionPointMap.set(s.id,r?t:new W.BehaviorSubject(s)),this._permissionPointUpdate$.next(s),!0}updatePermissionPoint(t,r){const s=this._permissionPointMap.get(t);if(!s)return;const i=s.getValue();i.value=r,i.status=xr.DONE,s.next({...i}),this._permissionPointUpdate$.next(i)}clearPermissionMap(){this._permissionPointMap.clear()}getPermissionPoint(t){const r=this._permissionPointMap.get(t);if(r)return r.getValue()}getPermissionPoint$(t){const r=this._permissionPointMap.get(t);if(r)return r}composePermission$(t){const r=t.map(s=>{var o;const i=(o=this._permissionPointMap)==null?void 0:o.get(s);if(!i)throw new Error(`[PermissionService]: ${s} permissionPoint does not exist!`);return i.asObservable()});return W.combineLatest(r).pipe(ht.map(s=>s))}composePermission(t){return t.map(s=>{var o;const i=(o=this._permissionPointMap)==null?void 0:o.get(s);if(!i)throw new Error(`[PermissionService]: ${s} permissionPoint does not exist!`);return i.getValue()})}getAllPermissionPoint(){const t=new Map;return this._permissionPointMap.forEach((r,s)=>{t.set(s,r)}),t}}class na extends Te{constructor(){super(...arguments);g(this,"_resourceMap",new Map);g(this,"_register$",new W.Subject);g(this,"register$",this._register$.asObservable())}getAllResourceHooks(){return[...this._resourceMap.values()]}getResources(t){return this.getAllResourceHooks().map(i=>{const o=i.toJson(t);return{name:i.pluginName,data:o}})}getResourcesByType(t,r){return this.getAllResourceHooks().filter(o=>o.businesses.includes(r)).map(o=>{const a=o.toJson(t);return{name:o.pluginName,data:a}})}registerPluginResource(t){const r=t.pluginName;if(this._resourceMap.has(r))throw new Error(`the pluginName is registered {${r}}`);return this._resourceMap.set(r,t),this._register$.next(t),Se(()=>this._resourceMap.delete(r))}disposePluginResource(t){this._resourceMap.delete(t)}loadResources(t,r){this.getAllResourceHooks().forEach(s=>{var o;const i=(o=r==null?void 0:r.find(a=>a.name===s.pluginName))==null?void 0:o.data;if(i)try{const a=s.parseJson(i);s.onLoad(t,a)}catch{console.error("LoadResources Error!")}})}unloadResources(t){this.getAllResourceHooks().forEach(r=>{r.onUnLoad(t)})}dispose(){this._register$.complete(),this._resourceMap.clear()}}const xn=xe("resource-manager-service");var uh=Object.defineProperty,ch=Object.getOwnPropertyDescriptor,hh=(e,n,t,r)=>{for(var s=r>1?void 0:r?ch(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&uh(n,t,s),s},ra=(e,n)=>(t,r)=>n(t,r,e);let zr=class extends Te{constructor(n,t){super();g(this,"saveWorkbook",n=>{const t=n.getUnitId(),r=this._resourceManagerService.getResources(t)||[],s=n.getSnapshot();return s.resources=r,s});this._resourceManagerService=n,this._univerInstanceService=t,this._init()}_init(){const n=r=>{r.businesses.forEach(s=>{switch(s){case J.UNRECOGNIZED:case J.UNIVER_UNKNOWN:case J.UNIVER_SLIDE:case J.UNIVER_DOC:{this._univerInstanceService.getAllUnitsForType(J.UNIVER_DOC).forEach(i=>{const a=(i.getSnapshot().resources||[]).find(l=>l.name===r.pluginName);if(a)try{const l=r.parseJson(a.data);r.onLoad(i.getUnitId(),l)}catch{console.error(`Load Document{${i.getUnitId()}} Resources{${r.pluginName}} Data Error.`)}});break}case J.UNIVER_SHEET:this._univerInstanceService.getAllUnitsForType(J.UNIVER_SHEET).forEach(i=>{const a=(i.getSnapshot().resources||[]).find(l=>l.name===r.pluginName);if(a)try{const l=r.parseJson(a.data);r.onLoad(i.getUnitId(),l)}catch{console.error(`Load Workbook{${i.getUnitId()}} Resources{${r.pluginName}} Data Error.`)}})}})};this._resourceManagerService.getAllResourceHooks().forEach(r=>{n(r)}),this.disposeWithMe(this._resourceManagerService.register$.subscribe(r=>{n(r)})),this.disposeWithMe(Se(this._univerInstanceService.getTypeOfUnitAdded$(J.UNIVER_SHEET).subscribe(r=>{this._resourceManagerService.loadResources(r.getUnitId(),r.getSnapshot().resources)}))),this.disposeWithMe(Se(this._univerInstanceService.getTypeOfUnitDisposed$(J.UNIVER_SHEET).subscribe(r=>{this._resourceManagerService.unloadResources(r.getUnitId())})))}saveDoc(n){const t=n.getUnitId(),r=this._resourceManagerService.getResourcesByType(t,J.UNIVER_DOC)||[],s=n.getSnapshot();return s.resources=r,s}};zr=hh([ra(0,rt(xn)),ra(1,rt(xt))],zr);const Yr=xe("resource-loader-service");Vn(de.Ready,Yr);class Xr extends Te{constructor(){super();g(this,"_currentTheme");g(this,"_currentTheme$",new W.BehaviorSubject({}));g(this,"currentTheme$",this._currentTheme$.asObservable());this.disposeWithMe(Se(()=>this._currentTheme$.complete()))}getCurrentTheme(){if(!this._currentTheme)throw new Error("[ThemeService]: current theme is not set!");return this._currentTheme}setTheme(t){this._currentTheme=t,this._currentTheme$.next(t)}}const Kn="__INTERNAL_EDITOR__",sa=`${Kn}DOCS_NORMAL`,ia=`${Kn}DOCS_FORMULA_BAR`,dh="__defaultDocumentZenEditorSpecialUnitId_20231218__",fh=`\r
9
- `;function _h(e){return`${Kn}${e}`}function gh(e){return e.startsWith(Kn)}var mh=Object.defineProperty,Eh=Object.getOwnPropertyDescriptor,ph=(e,n,t,r)=>{for(var s=r>1?void 0:r?Eh(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&mh(n,t,s),s},Qr=(e,n)=>(t,r)=>n(t,r,e);const zn=xe("univer.undo-redo.service"),Rh=20;class oa{dispose(){}async dispatchToHandlers(){return!1}}const aa="univer.command.redo",la="univer.command.undo",ua=new class extends oa{constructor(){super(...arguments);g(this,"type",sn.COMMAND);g(this,"id",la)}async handler(n){const t=n.get(zn),r=t.pitchTopUndoElement();if(!r)return!1;const s=n.get(on);return Nr(r.undoMutations,s)?(t.popUndoToRedo(),!0):!1}},ca=new class extends oa{constructor(){super(...arguments);g(this,"type",sn.COMMAND);g(this,"id",aa)}async handler(n){const t=n.get(zn),r=t.pitchTopRedoElement();if(!r)return!1;const s=n.get(on);return Nr(r.redoMutations,s)?(t.popRedoToUndo(),!0):!1}};u.LocalUndoRedoService=class extends Te{constructor(t,r,s){super();g(this,"undoRedoStatus$");g(this,"_undoRedoStatus$",new W.BehaviorSubject({undos:0,redos:0}));g(this,"_undoStacks",new Map);g(this,"_redoStacks",new Map);g(this,"_batchingStatus",new Map);this._univerInstanceService=t,this._commandService=r,this._contextService=s,this.undoRedoStatus$=this._undoRedoStatus$.asObservable(),this.disposeWithMe(this._commandService.registerCommand(ua)),this.disposeWithMe(this._commandService.registerCommand(ca)),this.disposeWithMe(Se(()=>this._undoRedoStatus$.complete())),this.disposeWithMe(Se(this._univerInstanceService.focused$.subscribe(()=>this._updateStatus())))}pushUndoRedo(t){const{unitID:r}=t,s=this._getRedoStack(r,!0),i=this._getUndoStack(r,!0);if(s.length=0,this._batchingStatus.has(t.unitID)){const a=this._batchingStatus.get(t.unitID),l=this._pitchUndoElement(t.unitID);a===0||!l?(o(t),this._batchingStatus.set(t.unitID,1)):this._tryBatchingElements(l,t)}else o(t);function o(a){i.push(a),i.length>Rh&&i.splice(0,1)}this._updateStatus()}clearUndoRedo(t){const r=this._getRedoStack(t);r&&(r.length=0);const s=this._getUndoStack(t);s&&(s.length=0),this._updateStatus()}pitchTopUndoElement(){const t=this._getFocusedUnitId();return this._pitchUndoElement(t)}pitchTopRedoElement(){const t=this._getFocusedUnitId();return this._pitchRedoElement(t)}_pitchUndoElement(t){const r=this._getUndoStack(t);return r!=null&&r.length?r[r.length-1]:null}_pitchRedoElement(t){const r=this._getRedoStack(t);return r!=null&&r.length?r[r.length-1]:null}popUndoToRedo(){const r=this._getUndoStackForFocused().pop();r&&(this._getRedoStackForFocused().push(r),this._updateStatus())}popRedoToUndo(){const r=this._getRedoStackForFocused().pop();r&&(this._getUndoStackForFocused().push(r),this._updateStatus())}__tempBatchingUndoRedo(t){if(this._batchingStatus.has(t))throw new Error("[LocalUndoRedoService]: cannot batching undo redo twice at the same time!");return this._batchingStatus.set(t,0),Se(()=>this._batchingStatus.delete(t))}_updateStatus(){var i,o;const t=this._getFocusedUnitId(),r=t&&((i=this._undoStacks.get(t))==null?void 0:i.length)||0,s=t&&((o=this._redoStacks.get(t))==null?void 0:o.length)||0;this._undoRedoStatus$.next({undos:r,redos:s})}_getUndoStack(t,r=!1){let s=this._undoStacks.get(t);return!s&&r&&(s=[],this._undoStacks.set(t,s)),s||null}_getRedoStack(t,r=!1){let s=this._redoStacks.get(t);return!s&&r&&(s=[],this._redoStacks.set(t,s)),s||null}_getUndoStackForFocused(){const t=this._getFocusedUnitId();if(!t)throw new Error("No focused univer instance!");return this._getUndoStack(t,!0)}_getRedoStackForFocused(){const t=this._getFocusedUnitId();if(!t)throw new Error("No focused univer instance!");return this._getRedoStack(t,!0)}_tryBatchingElements(t,r){t.redoMutations.push(...r.redoMutations),t.undoMutations.push(...r.undoMutations)}_getFocusedUnitId(){var o,a,l,d;let t="";const r=this._contextService.getContextValue(un),s=this._contextService.getContextValue(Xo),i=this._contextService.getContextValue(Yo);return r?s?t=ia:i?t=sa:t=(a=(o=this._univerInstanceService.getFocusedUnit())==null?void 0:o.getUnitId())!=null?a:"":t=(d=(l=this._univerInstanceService.getFocusedUnit())==null?void 0:l.getUnitId())!=null?d:"",t}},u.LocalUndoRedoService=ph([Qr(0,xt),Qr(1,on),Qr(2,rn)],u.LocalUndoRedoService);const ha=Symbol("DependentOn");class qr extends Te{onStarting(n){}onReady(){}onRendered(){}onSteady(){}getUniverInstanceType(){return this.constructor.type}getPluginName(){return this.constructor.pluginName}}g(qr,"pluginName"),g(qr,"type",J.UNIVER_UNKNOWN);class Ch{constructor(){g(this,"_plugins",[])}addPlugin(n){this._plugins.push(n)}removePlugins(){const n=this._plugins.slice();return this._plugins.length=0,n}forEachPlugin(n){this._plugins.forEach(n)}}class Ih{constructor(){g(this,"_pluginsRegistered",[])}registerPlugin(n,t){this._pluginsRegistered.push({plugin:n,options:t})}getRegisterPlugins(){return this._pluginsRegistered.slice()}removePlugins(){this._pluginsRegistered=[]}}var vh=Object.defineProperty,Oh=Object.getOwnPropertyDescriptor,da=(e,n,t,r)=>{for(var s=r>1?void 0:r?Oh(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&vh(n,t,s),s},hn=(e,n)=>(t,r)=>n(t,r,e);const Sh=4;function Nh(...e){return function(n){n[ha]=e}}u.PluginService=class{constructor(n){g(this,"_pluginHolderForUniver");g(this,"_pluginHoldersForTypes",new Map);g(this,"_seenPlugins",new Set);g(this,"_flushTimer");this._injector=n,this._pluginHolderForUniver=this._injector.createInstance(Yn,this._checkPluginSeen.bind(this),this._immediateInitPlugin.bind(this)),this._pluginHolderForUniver.start()}dispose(){this._clearFlushTimer();for(const n of this._pluginHoldersForTypes.values())n.dispose();this._pluginHolderForUniver.dispose()}registerPlugin(n,t){this._assertPluginValid(n),this._scheduleInitPlugin();const{type:r}=n;r===J.UNIVER_UNKNOWN?(this._pluginHolderForUniver.register(n,t),this._pluginHolderForUniver.flush()):this._ensurePluginHolderForType(r).register(n,t)}startPluginForType(n){this._ensurePluginHolderForType(n).start()}_ensurePluginHolderForType(n){if(!this._pluginHoldersForTypes.has(n)){const t=this._injector.createInstance(Yn,this._checkPluginSeen.bind(this),this._immediateInitPlugin.bind(this));return this._pluginHoldersForTypes.set(n,t),t}return this._pluginHoldersForTypes.get(n)}_immediateInitPlugin(n){this._seenPlugins.add(n.pluginName),this._ensurePluginHolderForType(n.type).immediateInitPlugin(n)}_checkPluginSeen(n){return this._seenPlugins.has(n.pluginName)}_assertPluginValid(n){const{type:t,pluginName:r}=n;if(t===J.UNRECOGNIZED)throw new Error(`[PluginService]: invalid plugin type for ${n}. Please assign a "type" to your plugin.`);if(r==="")throw new Error(`[PluginService]: no plugin name for ${n}. Please assign a "pluginName" to your plugin.`);if(this._seenPlugins.has(r))throw new Error(`[PluginService]: duplicated plugin name for "${r}". Maybe a plugin that dependents on "${r} has already registered it. In that case please register "${r}" before the that plugin.`);this._seenPlugins.add(n.pluginName)}_scheduleInitPlugin(){this._flushTimer===void 0&&(this._flushTimer=setTimeout(()=>{this._pluginHolderForUniver.started||this._pluginHolderForUniver.start(),this._flushPlugins(),this._clearFlushTimer()},Sh))}_clearFlushTimer(){this._flushTimer&&(clearTimeout(this._flushTimer),this._flushTimer=void 0)}_flushPlugins(){this._pluginHolderForUniver.flush();for(const[n,t]of this._pluginHoldersForTypes)t.started&&t.flush()}},u.PluginService=da([hn(0,rt(dt))],u.PluginService);let Yn=class extends Te{constructor(n,t,r,s,i,o){super();g(this,"_started",!1);g(this,"_pluginRegistry",new Ih);g(this,"_pluginStore",new Ch);g(this,"_awaitingPlugins",[]);this._checkPluginRegistered=n,this._registerPlugin=t,this._logService=r,this._injector=s,this._lifecycleService=i,this._lifecycleInitializerService=o,this.disposeWithMe(this._lifecycleService.lifecycle$.pipe(W.skip(1)).subscribe(a=>{this._awaitingPlugins.forEach(l=>this._runStage(l,a))}))}get started(){return this._started}dispose(){super.dispose(),this._pluginStore.forEachPlugin(n=>n.dispose()),this._pluginStore.removePlugins(),this._pluginRegistry.removePlugins(),this._awaitingPlugins.length=0}register(n,t){this._pluginRegistry.registerPlugin(n,t)}immediateInitPlugin(n){const t=this._initPlugin(n,void 0);this._pluginsRunLifecycle([t])}start(){this._started||(this._started=!0,this.flush())}flush(){if(!this._started)return;const n=this._pluginRegistry.getRegisterPlugins().map(({plugin:t,options:r})=>this._initPlugin(t,r));n.length&&(this._pluginsRunLifecycle(n),this._pluginRegistry.removePlugins())}_initPlugin(n,t){const r=n[ha];if(r){const i=()=>{const o=r.find(a=>!this._checkPluginRegistered(a));return o?(this._logService.warn("[PluginService]",`plugin "${n.pluginName}" depends on "${o.pluginName}" which is not registered. Univer will automatically register it with default configuration.`),this._registerPlugin(o,void 0),!0):!1};for(;i(););}const s=this._injector.createInstance(n,t);return this._pluginStore.addPlugin(s),s}_pluginsRunLifecycle(n){ea(this._lifecycleService.stage).subscribe(t=>this._runStage(n,t)),this._awaitingPlugins.push(n)}_runStage(n,t){n.forEach(r=>{switch(t){case de.Starting:r.onStarting(this._injector);break;case de.Ready:r.onReady();break;case de.Rendered:r.onRendered();break;case de.Steady:r.onSteady();break}}),this._lifecycleInitializerService.initModulesOnStage(t)}};Yn=da([hn(2,Ot),hn(3,rt(dt)),hn(4,rt(u.LifecycleService)),hn(5,rt(u.LifecycleInitializerService))],Yn);function fa(e,n){if(!n)return e;const t=[];for(const r of e){const s=n.find(([i])=>i===r[0]);if(s){if(s[1]===null)continue;t.push([r[0],s[1]])}else t.push(r)}return t}const Zr={[Be.Editor]:"Editor",[Be.Owner]:"Owner",[Be.Reader]:"Reader",[Be.UNRECOGNIZED]:"UNRECOGNIZED"},Xn=e=>e?{userID:`${Zr[e]}_${k.generateRandomId(8)}`,name:Zr[e],avatar:""}:{userID:"",name:"",avatar:"",anonymous:!0,canBindAnonymous:!1},Jr=(e,n)=>e.startsWith(Zr[n]);var wh=Object.defineProperty,bh=Object.getOwnPropertyDescriptor,Ah=(e,n,t,r)=>{for(var s=r>1?void 0:r?bh(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&wh(n,t,s),s};u.UserManagerService=class{constructor(){g(this,"_model",new Map);g(this,"_userChange$",new W.Subject);g(this,"userChange$",this._userChange$.asObservable());g(this,"_currentUser$",new W.BehaviorSubject(Xn()));g(this,"currentUser$",this._currentUser$.asObservable())}getCurrentUser(){return this._currentUser$.getValue()}setCurrentUser(n){this.addUser(n),this._currentUser$.next(n)}addUser(n){this._model.set(n.userID,n),this._userChange$.next({type:"add",user:n})}getUser(n,t){const r=this._model.get(n);if(r)return r;t&&t()}delete(n){const t=this.getUser(n);this._model.delete(n),t&&this._userChange$.next({type:"delete",user:t})}clear(){this._model.clear(),this._userChange$.next({type:"clear"})}list(){return Array.from(this._model.values())}},u.UserManagerService=Ah([qo(de.Starting,u.UserManagerService)],u.UserManagerService);var Th=Object.defineProperty,yh=Object.getOwnPropertyDescriptor,Dh=(e,n,t,r)=>{for(var s=r>1?void 0:r?yh(n,t):n,i=e.length-1,o;i>=0;i--)(o=e[i])&&(s=(r?o(n,t,s):o(s))||s);return r&&s&&Th(n,t,s),s},_a=(e,n)=>(t,r)=>n(t,r,e);u.AuthzIoLocalService=class{constructor(n,t){g(this,"_permissionMap",new Map([]));this._resourceManagerService=n,this._userManagerService=t,this._initSnapshot(),this._initDefaultUser()}_initDefaultUser(){const n=this._userManagerService.getCurrentUser();n&&n.userID||this._userManagerService.setCurrentUser(Xn(Be.Owner))}_getRole(n){const t=this._userManagerService.getCurrentUser();return t?Jr(t.userID,n):!1}_initSnapshot(){this._resourceManagerService.registerPluginResource({toJson:n=>{const t=[...this._permissionMap.keys()].reduce((r,s)=>{const i=this._permissionMap.get(s);return r[s]=i,r},{});return JSON.stringify(t)},parseJson:n=>JSON.parse(n),pluginName:"SHEET_AuthzIoMockService_PLUGIN",businesses:[J.UNIVER_SHEET,J.UNIVER_DOC,J.UNIVER_SLIDE],onLoad:(n,t)=>{for(const r in t)this._permissionMap.set(r,t[r])},onUnLoad:()=>{this._permissionMap.clear()}})}async create(n){const t=k.generateRandomId(8);switch(n.objectType){case Fn.SelectRange:{const r=n.selectRangeObject;this._permissionMap.set(t,{...r,objectType:n.objectType});break}case Fn.Worksheet:{const r=n.worksheetObject;this._permissionMap.set(t,{...r,objectType:n.objectType,readScope:uo.SomeCollaborator})}}return t}async allowed(n){var t;if(this._permissionMap.has(n.objectID)){const r=this._permissionMap.get(n.objectID);if(r&&r.objectType===Fn.Worksheet)return(t=r==null?void 0:r.strategies)==null?void 0:t.map(s=>({action:s.action,allowed:s.role===Be.Editor}))}return n.actions.map(r=>({action:r,allowed:this._getRole(Be.Owner)||this._getRole(Be.Editor)}))}async batchAllowed(n){const t=this._userManagerService.getCurrentUser(),r=n.map(s=>({unitID:s.unitID,objectID:s.objectID,actions:s.actions.map(i=>({action:i,allowed:!1}))}));return t&&(Jr(t.userID,Be.Owner)||Jr(t.userID,Be.Editor))?n.map(s=>({unitID:s.unitID,objectID:s.objectID,actions:s.actions.map(i=>({action:i,allowed:!0}))})):r}async list(n){const t=[];return n.objectIDs.forEach(r=>{const s=this._permissionMap.get(r);if(s){const i={objectID:r,unitID:n.unitID,objectType:s.objectType,name:s.name,shareOn:!1,shareRole:Be.Owner,shareScope:-1,creator:Xn(Be.Owner),strategies:[],actions:n.actions.map(o=>({action:o,allowed:this._getRole(Be.Owner)||this._getRole(Be.Editor)}))};t.push(i)}}),t}async listCollaborators(){return[]}async listRoles(){return{roles:[],actions:[]}}async deleteCollaborator(){}async update(n){}async updateCollaborator(){}async createCollaborator(){}async putCollaborators(n){}},u.AuthzIoLocalService=Dh([_a(0,xn),_a(1,rt(u.UserManagerService))],u.AuthzIoLocalService);const ga=xe("IAuthzIoIoService");class Mh{constructor(n={},t){g(this,"_startedTypes",new Set);g(this,"_injector");const r=this._injector=Uh(t,n==null?void 0:n.override),{theme:s,locale:i,locales:o,logLevel:a}=n;s&&this._injector.get(Xr).setTheme(s),o&&this._injector.get(cn).load(o),i&&this._injector.get(cn).setLocale(i),a&&this._injector.get(Ot).setLogLevel(a),this._init(r)}get _univerInstanceService(){return this._injector.get(xt)}get _pluginService(){return this._injector.get(u.PluginService)}__getInjector(){return this._injector}dispose(){this._injector.dispose()}setLocale(n){this._injector.get(cn).setLocale(n)}createUnit(n,t){return this._univerInstanceService.createUnit(n,t)}createUniverSheet(n){return this._univerInstanceService.createUnit(J.UNIVER_SHEET,n)}createUniverDoc(n){return this._univerInstanceService.createUnit(J.UNIVER_DOC,n)}createUniverSlide(n){return this._univerInstanceService.createUnit(J.UNIVER_SLIDE,n)}_init(n){this._univerInstanceService.registerCtorForType(J.UNIVER_SHEET,u.Workbook),this._univerInstanceService.registerCtorForType(J.UNIVER_DOC,Pt),this._univerInstanceService.registerCtorForType(J.UNIVER_SLIDE,Vr);const t=n.get(xt);t.__setCreateHandler((r,s,i)=>{if(!this._startedTypes.has(r)){this._pluginService.startPluginForType(r),this._startedTypes.add(r);const a=n.createInstance(i,s);return t.__addUnit(a),this._tryProgressToReady(),a}const o=n.createInstance(i,s);return t.__addUnit(o),o})}_tryProgressToReady(){this._injector.get(u.LifecycleService).stage<de.Ready&&(this._injector.get(u.LifecycleService).stage=de.Ready)}registerPlugin(n,t){this._pluginService.registerPlugin(n,t)}}function Uh(e,n){const t=fa([[Ho],[cn],[Xr],[u.LifecycleService],[u.LifecycleInitializerService],[u.PluginService],[u.UserManagerService],[xt,{useClass:u.UniverInstanceService}],[Kr,{useClass:ta}],[Ot,{useClass:ro,lazy:!0}],[on,{useClass:u.CommandService}],[zn,{useClass:u.LocalUndoRedoService,lazy:!0}],[ko,{useClass:Fo}],[rn,{useClass:to}],[xn,{useClass:na,lazy:!0}],[Yr,{useClass:zr,lazy:!0}],[ga,{useClass:u.AuthzIoLocalService,lazy:!0}]],n);return e?e.createChild(t):new dt(t)}const Lh=(e,n)=>n.length===e.length&&!e.some(t=>n.some(r=>!vt.equals(r,t))),Ph=(e,n)=>n.length===e.length&&e.every((t,r)=>{const s=n[r];return s.unitId===t.unitId&&s.sheetId===t.sheetId&&vt.equals(t.range,s.range)});function kh(e,n){if(Object.is(e,n))return!0;if(typeof e!="object"||!e||typeof n!="object"||!n)return!1;const t=Object.keys(e),r=Object.keys(n);if(t.length!==r.length)return!1;const s=Object.prototype.hasOwnProperty.bind(n);for(let i=0;i<t.length;i++){const o=t[i];if(!s(o))return!1;const a=e[o],l=n[o];if(a!==l)return!1}return!0}function ma(e){return/^-?\d+(\.\d+)?$/.test(e)}function Fh(e){return ma(e)?Number(e)<=Number.MAX_SAFE_INTEGER:!1}function Hh(e){return["true","false"].includes(e.toLowerCase())}function $h(e,n){return n.forEach(t=>e.add(t)),e}function Wh(e,n=16){let t=0,r=null;return function(...i){const o=Date.now();o-t<n?(r&&clearTimeout(r),r=setTimeout(()=>{t=o,e.apply(this,i)},n)):(t=o,e.apply(this,i))}}function Bh(e){const n=new MessageChannel;let t=!1;const r=()=>{t||e()};return n.port1.onmessage=r,n.port2.postMessage(null),()=>{t=!0,n.port1.close(),n.port2.close()}}var Ea=(e=>(e[e.TEXT=0]="TEXT",e[e.ARROW=1]="ARROW",e[e.CUSTOM=2]="CUSTOM",e))(Ea||{});function jh(e,n,t){if(n==="")return e;const r={id:"mock-id",body:e,documentStyle:{}},s=new Pt(r),i=n.length;let o;for(;(o=s.getBody().dataStream.indexOf(n))>=0;){const l=new St,d=Lt.getInstance();if(o>0&&l.retain(o),t.length>0){const h=s.sliceBody(o,o+i),c={dataStream:t};Array.isArray(h==null?void 0:h.textRuns)&&h.textRuns.length&&(c.textRuns=[{...h.textRuns[0],st:0,ed:t.length}]),l.insert(t.length,c)}l.delete(i),s.apply(d.editOp(l.serialize()))}const a=s.getBody();return s.dispose(),a}class pa{constructor(){g(this,"skipNextObservers",!1);g(this,"lastReturnValue");g(this,"isStopPropagation",!1)}stopPropagation(){this.isStopPropagation=!0}}class Gh extends W.Subject{constructor(){super(...arguments);g(this,"_sortedObservers",[])}subscribe(){throw new Error("[EventSubject]: please use `subscribeEvent` instead of `subscribe` method for `EventSubject`.")}next(){throw new Error("[EventSubject]: please use `emitEvent` instead of `next` method for `EventSubject`.")}unsubscribe(){super.unsubscribe(),this._sortedObservers.length=0}complete(){super.complete(),this._sortedObservers.length=0}subscribeEvent(t){let r;typeof t=="function"?r={next:([i,o])=>t(i,o)}:r=t;const s=super.subscribe(r);return this._sortedObservers.push(r),this._sortedObservers.sort((i,o)=>{var a,l;return((a=i.priority)!=null?a:0)-((l=o.priority)!=null?l:0)}),s.add(()=>this._sortedObservers=this._sortedObservers.filter(i=>i!==r)),s}clearObservers(){this._sortedObservers.forEach(t=>{var r;return(r=t.complete)==null?void 0:r.call(t)}),this._sortedObservers.length=0}emitEvent(t){var r;if(!this.closed){const s=new pa;s.lastReturnValue=t;for(const i of this._sortedObservers){const o=(r=i.next)==null?void 0:r.call(i,[t,s]);if(s.lastReturnValue=o,s.skipNextObservers)return{handled:!0,lastReturnValue:s.lastReturnValue,stopPropagation:s.isStopPropagation}}return{handled:this._sortedObservers.length>0,lastReturnValue:s.lastReturnValue,stopPropagation:s.isStopPropagation}}throw new Error("[EventSubject]: cannot emit event on a closed subject.")}}function Vh(e){return new W.Observable(n=>{const t=e.subscribeEvent(r=>{n.next(r)});return()=>t.unsubscribe()})}const xh=xe("ILocalStorageService");function Kh(e){return`sheet_interceptor_${e}`}const Ra=e=>function(n,t){let r=-1;function s(i,o){if(i<=r)throw new Error("[SheetInterceptorService]: next() called multiple times!");return r=i,i===e.length?o:e[i].handler(o,t,s.bind(null,i+1))}return s(0,n)};class zh{constructor(n){g(this,"_interceptorsByName",new Map);g(this,"_interceptorPoints");this._interceptorPoints=n}fetchThroughInterceptors(n){const t=n,r=this._interceptorsByName.get(t);return Ra(r||[])}intercept(n,t){const r=n;this._interceptorsByName.has(r)||this._interceptorsByName.set(r,[]);const s=this._interceptorsByName.get(r);return s.push(t),this._interceptorsByName.set(r,s.sort((i,o)=>{var a,l;return((a=o.priority)!=null?a:0)-((l=i.priority)!=null?l:0)})),()=>bn(this._interceptorsByName.get(r),t)}getInterceptPoints(){return this._interceptorPoints}}const Yh=xe("univer.snapshot-server-service");class Xh{constructor(){g(this,"_sheetBlockCache",new Map)}getUnitOnRev(n,t){return Promise.resolve({snapshot:{unitID:"",type:J.UNIVER_SHEET,rev:0,workbook:void 0,doc:void 0},changesets:[],error:{code:Ye.OK,message:""}})}getSheetBlock(n,t){const r=this._sheetBlockCache.get(t.blockID);return Promise.resolve({block:r,error:{code:Ye.OK,message:""}})}fetchMissingChangesets(n,t){return Promise.resolve({changesets:[],error:{code:Ye.OK,message:""}})}getResourcesRequest(n,t){return Promise.resolve({resources:{},error:{code:Ye.OK,message:""}})}saveSnapshot(n,t){return Promise.resolve({error:{code:Ye.OK,message:""}})}saveSheetBlock(n,t){const{block:r}=t;return r?(this._sheetBlockCache.set(r.id,r),Promise.resolve({error:{code:Ye.OK,message:""},blockID:r.id})):Promise.resolve({error:{code:Ye.UNDEFINED,message:"block is required"},blockID:""})}saveChangeset(n,t){return Promise.resolve({error:{code:Ye.OK,message:""},concurrent:[]})}}function Qh(e){return btoa(encodeURIComponent(e).replace(/%([0-9A-F]{2})/g,(n,t)=>String.fromCharCode(Number.parseInt(t,16))))}function es(e){return decodeURIComponent(Array.prototype.map.call(atob(e),n=>`%${`00${n.charCodeAt(0).toString(16)}`.slice(-2)}`).join(""))}const dn=new TextEncoder,Qn=new TextDecoder;function Ca(e){const n=k.deepClone(e);return delete n.id,delete n.name,delete n.rowCount,delete n.columnCount,delete n.cellData,dn.encode(JSON.stringify(n))}function Ia(e){const n=k.deepClone(e);return delete n.id,delete n.rev,delete n.name,delete n.sheetOrder,delete n.sheets,dn.encode(JSON.stringify(n))}function qh(e){const n=k.deepClone(e);return delete n.id,delete n.rev,delete n.title,delete n.resources,dn.encode(JSON.stringify(n))}function va(e){return JSON.parse(Qn.decode(e))}function Zh(e){return JSON.parse(typeof e=="string"?es(e):Qn.decode(e))}function Jh(e){return JSON.parse(typeof e=="string"?es(e):Qn.decode(e))}const ts=256*20;function Oa(e,n){const t=new nt(e),r=t.getLength(),s=[];let i=0;for(;i<r;){const o=Math.min(i+ts,r-1),a=t.getSlice(i,Math.min(i+ts,r-1),0,n),l=ed(a);s.push({id:k.generateRandomId(19,"0123456789"),startRow:i,endRow:o,data:l}),i+=ts}return s}function ed(e){const n=e.getData();return dn.encode(JSON.stringify(n))}async function td(e,n,t,r,s){const i={},o={};if(!await Promise.all(Object.entries(n.sheets).map(async([c,f])=>{const _={id:f.id,type:En.GRID,name:f.name,rowCount:f.rowCount,columnCount:f.columnCount,originalMeta:Ca(f)};if(o[c]=_,f.cellData){const E=Oa(f.cellData,f.rowCount),p=await Promise.all(E.map(N=>s.saveSheetBlock(e,{unitID:t,type:J.UNIVER_SHEET,block:N})));if(p.some(N=>{var D;return((D=N.error)==null?void 0:D.code)!==Ye.OK}))return!1;i[c]={sheetID:c,blocks:p.map(N=>N.blockID)}}return!0})))throw new Error("[transformWorkbookDataToSnapshot()]: Failed to save sheet blocks.");const l=Ia(n),d={unitID:n.id,rev:r,creator:"",name:n.name,sheetOrder:n.sheetOrder,sheets:o,blockMeta:i,resources:n.resources||[],originalMeta:l};return{snapshotRes:{unitID:t,rev:d.rev,type:J.UNIVER_SHEET,workbook:d,doc:void 0}}}async function nd(e,n,t,r,s){var f,_;const i={},o={};if(!await Promise.all(Object.entries(n.sheets).map(async([E,p])=>{const N={id:p.id,type:En.GRID,name:p.name,rowCount:p.rowCount,columnCount:p.columnCount,originalMeta:Ca(p)};if(o[E]=N,p.cellData){const D=Oa(p.cellData,p.rowCount),te=await Promise.all(D.map(me=>s.saveSheetBlock(e,{unitID:t,type:J.UNIVER_SHEET,block:me})));if(te.some(me=>{var fe;return((fe=me.error)==null?void 0:fe.code)!==Ye.OK}))return!1;i[E]={sheetID:E,blocks:te.map(me=>me.blockID)}}return!0})))throw new Error("[transformWorkbookDataToSnapshot()]: Failed to save sheet blocks.");const l=Ia(n),d={unitID:n.id,rev:r,creator:"",name:n.name,sheetOrder:n.sheetOrder,sheets:o,blockMeta:i,resources:n.resources||[],originalMeta:l},h={unitID:t,rev:d.rev,type:J.UNIVER_SHEET,workbook:d,doc:void 0},c=await s.saveSnapshot(e,{unitID:t,type:J.UNIVER_SHEET,snapshot:h});if(lo(c.error))throw new Error(`transformWorkbookDataToSnapshot(): Failed to save snapshot.
10
- ErrorCode: ${(f=c.error)==null?void 0:f.code}:${(_=c.error)==null?void 0:_.message}`);return{snapshot:h}}function rd(e,n,t){const r=e.workbook;if(!r)throw new Error("");const s={};Object.entries(r.sheets).forEach(([l,d])=>{const h=va(d.originalMeta);s[l]={id:d.id,name:d.name,rowCount:d.rowCount,columnCount:d.columnCount,...h}});const i=new Map;n.forEach(l=>{i.set(l.id,l)}),r.blockMeta&&Object.entries(r.blockMeta).forEach(([l,d])=>{var f;const h=s[l];h.cellData={};const c=[];(f=d.blocks)==null||f.forEach(_=>{const E=i.get(_);if(E)c.push(E);else throw new Error("")}),c.forEach(_=>{const E=Zh(_.data);Object.entries(E).forEach(([p,N])=>{const D=h.cellData[+p]={};Object.entries(N).forEach(([te,me])=>{D[+te]=me})})})});const o=va(r.originalMeta);return{id:e.unitID,rev:r.rev,name:r.name,sheetOrder:r.sheetOrder,appVersion:"",locale:bt.EN_US,sheets:s,styles:{},resources:r.resources||[],...o}}function sd(e){const n=e.doc;if(n==null)throw new Error("transformSnapshotToDocumentData(): snapshot.doc is undefined.");const{unitID:t,rev:r,name:s,originalMeta:i,resources:o=[]}=n,{body:a,documentStyle:l={},settings:d={},drawings:h={},drawingsOrder:c=[]}=Jh(i);return{id:t,rev:r,locale:bt.EN_US,title:s,body:a,documentStyle:l,settings:d,drawings:h,drawingsOrder:c,resources:o}}async function id(e,n,t,r,s){var l,d,h;const i={unitID:n.id,rev:r,creator:"",name:(l=n.title)!=null?l:"",resources:n.resources||[],originalMeta:qh(n)},o={unitID:t,rev:i.rev,type:J.UNIVER_DOC,workbook:void 0,doc:i},a=await s.saveSnapshot(e,{unitID:t,type:J.UNIVER_DOC,snapshot:o});if(lo(a.error))throw new Error(`transformDocumentDataToSnapshot(): Failed to save snapshot.
11
- ErrorCode: ${(d=a.error)==null?void 0:d.code}:${(h=a.error)==null?void 0:h.message}`);return{snapshot:o}}async function od(e,n){const t=e.workbook;if(!t)throw new Error("Workbook metadata is not available");const r=[],s=[];return Object.entries(t.blockMeta).forEach(([i,o])=>{const a=o.blocks.map(async l=>{const d={unitID:t.unitID,type:J.UNIVER_SHEET,blockID:l},{block:h}=await n.getSheetBlock({},d);if(h)r.push(h);else throw new Error("Block not found")});s.push(...a)}),await Promise.all(s),r}var Sa=(e=>(e[e.INFO=0]="INFO",e[e.STOP=1]="STOP",e[e.WARNING=2]="WARNING",e))(Sa||{}),Na=(e=>(e[e.DISABLED=0]="DISABLED",e[e.FULL_ALPHA=1]="FULL_ALPHA",e[e.FULL_HANGUL=2]="FULL_HANGUL",e[e.FULL_KATAKANA=3]="FULL_KATAKANA",e[e.HALF_ALPHA=4]="HALF_ALPHA",e[e.HALF_HANGUL=5]="HALF_HANGUL",e[e.HALF_KATAKANA=6]="HALF_KATAKANA",e[e.HIRAGANA=7]="HIRAGANA",e[e.NO_CONTROL=8]="NO_CONTROL",e[e.OFF=9]="OFF",e[e.ON=10]="ON",e))(Na||{}),wa=(e=>(e.BETWEEN="between",e.EQUAL="equal",e.GREATER_THAN="greaterThan",e.GREATER_THAN_OR_EQUAL="greaterThanOrEqual",e.LESS_THAN="lessThan",e.LESS_THAN_OR_EQUAL="lessThanOrEqual",e.NOT_BETWEEN="notBetween",e.NOT_EQUAL="notEqual",e))(wa||{}),ba=(e=>(e.CUSTOM="custom",e.LIST="list",e.LIST_MULTIPLE="listMultiple",e.NONE="none",e.TEXT_LENGTH="textLength",e.DATE="date",e.TIME="time",e.WHOLE="whole",e.DECIMAL="decimal",e.CHECKBOX="checkbox",e))(ba||{}),Aa=(e=>(e.VALID="valid",e.INVALID="invalid",e.VALIDATING="validating",e))(Aa||{});const ad=["script","style","meta","comment","link"];function ld(e){return!(e.length===0||e.length>31||e.startsWith("'")||e.endsWith("'")||/[:\\\/\?\*\[\]]/.test(e))}ka(),u.ABCToNumber=ql,u.AbsoluteRefType=Oe,u.ActionIterator=jr,u.AlignTypeH=Qs,u.AlignTypeV=qs,u.ArrangeTypeEnum=ei,u.ArrowsAndMarkersShapes=Is,u.AutoFillSeries=ls,u.BaselineOffset=jt,u.BasicShapes=Cs,u.BlockType=Ds,u.BooleanNumber=z,u.BorderStyleTypes=he,u.BorderType=us,u.BulletAlignment=Rt,u.COLORS=Zn,u.CellValueType=Tt,u.ClientSnapshotServerService=Xh,u.Color=yt,u.ColorBuilder=In,u.ColorKit=tt,u.ColorType=ze,u.ColumnSeparatorType=Ps,u.CommandType=sn,u.CommonHideTypes=cs,u.ConfigService=Fo,u.ContentAlignment=xs,u.ContextService=to,u.CopyPasteType=hs,u.CustomDecorationType=ys,u.CustomRangeType=Ts,u.DEFAULT_CELL=lu,u.DEFAULT_DOC=Gr,u.DEFAULT_DOCUMENT_SUB_COMPONENT_ID=Ha,u.DEFAULT_EMPTY_DOCUMENT_VALUE=fh,u.DEFAULT_RANGE=ou,u.DEFAULT_RANGE_ARRAY=iu,u.DEFAULT_SELECTION=au,u.DEFAULT_SLIDE=Si,u.DEFAULT_STYLES=yn,u.DEFAULT_WORKSHEET_COLUMN_COUNT=Bo,u.DEFAULT_WORKSHEET_COLUMN_COUNT_KEY=Hc,u.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT=xo,u.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY=jc,u.DEFAULT_WORKSHEET_COLUMN_WIDTH=Go,u.DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY=Wc,u.DEFAULT_WORKSHEET_ROW_COUNT=Wo,u.DEFAULT_WORKSHEET_ROW_COUNT_KEY=Fc,u.DEFAULT_WORKSHEET_ROW_HEIGHT=jo,u.DEFAULT_WORKSHEET_ROW_HEIGHT_KEY=$c,u.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH=Vo,u.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY=Bc,u.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY=ia,u.DOCS_NORMAL_EDITOR_UNIT_ID_KEY=sa,u.DOCS_ZEN_EDITOR_UNIT_ID_KEY=dh,u.DashStyleType=js,u.DataStreamTreeNodeType=co,u.DataStreamTreeTokenType=ft,u.DataValidationErrorStyle=Sa,u.DataValidationImeMode=Na,u.DataValidationOperator=wa,u.DataValidationRenderMode=Ea,u.DataValidationStatus=Aa,u.DataValidationType=ba,u.DependentOn=Nh,u.DesktopLogService=ro,u.DeveloperMetadataVisibility=ds,u.Dimension=fs,u.Direction=_s,u.Disposable=Te,u.DisposableCollection=sr,u.DocStyleType=bs,u.DocumentDataModel=Pt,u.DocumentFlavor=Ms,u.DrawingTypeEnum=ti,u.EDITOR_ACTIVATED=Yo,u.EXTENSION_NAMES=Ni,u.Entry=ir,u.EntryIterator=Ci,u.ErrorService=Ho,u.EventState=pa,u.EventSubject=Gh,u.FOCUSING_COMMON_DRAWINGS=nh,u.FOCUSING_DOC=Bn,u.FOCUSING_EDITOR_BUT_HIDDEN=qc,u.FOCUSING_EDITOR_INPUT_FORMULA=Zc,u.FOCUSING_EDITOR_STANDALONE=eh,u.FOCUSING_FORMULA_EDITOR=Xo,u.FOCUSING_SHEET=un,u.FOCUSING_SLIDE=jn,u.FOCUSING_UNIVER_EDITOR=Jc,u.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE=th,u.FollowNumberWithType=As,u.FontItalic=pn,u.FontStyleType=Ks,u.FontWeight=Rn,u.FormatType=gs,u.GlyphType=Zt,u.GridType=Us,u.HLSColor=Ns,u.HorizontalAlign=At,u.IAuthzIoService=ga,u.ICommandService=on,u.IConfigService=ko,u.IContextService=rn,u.ILocalStorageService=xh,u.ILogService=Ot,u.IPermissionService=Kr,u.IResourceLoaderService=Yr,u.IResourceManagerService=xn,u.ISnapshotServerService=Yh,u.IUndoRedoService=zn,u.IUniverInstanceService=xt,u.Inject=rt,u.Injector=dt,u.InterceptorManager=zh,u.InterpolationPointType=ms,u.JSON1=Tc,u.JSONX=Lt,u.KeyIterator=pi,u.LRUHelper=en,u.LRUMap=Ii,u.LifecycleStages=de,u.LocaleService=cn,u.LocaleType=bt,u.LogLevel=no,u.MOVE_BUFFER_VALUE=Qt,u.Many=Ui,u.MemoryCursor=Mo,u.NamedStyleType=Ws,u.NilCommand=io,u.NumberUnitType=Xs,u.ObjectMatrix=nt,u.ObjectRelativeFromH=zs,u.ObjectRelativeFromV=Ys,u.OnLifecycle=qo,u.Optional=Li,u.OtherShapes=vs,u.PRESET_LIST_TYPE=uc,u.PageElementType=ni,u.PageOrientType=Js,u.PageType=tr,u.ParagraphElementType=Fs,u.PermissionService=ta,u.PermissionStatus=xr,u.Plugin=qr,u.PositionedObjectLayoutType=$s,u.PresetListType=$n,u.ProtectionType=Es,u.RANGE_TYPE=oe,u.RCDisposable=Wl,u.RGBA_PAREN=Va,u.RGB_PAREN=Ga,u.ROTATE_BUFFER_VALUE=is,u.Range=Gt,u.Rectangle=vt,u.RediConsumer=Xi,u.RediContext=nn,u.RediError=Le,u.RediProvider=Or,u.RedoCommand=ca,u.RedoCommandId=aa,u.RefAlias=Ql,u.Registry=wr,u.RegistryAsMap=br,u.RelativeDate=ps,u.RelativeSlideLink=ri,u.ResourceManagerService=na,u.RgbColor=vn,u.RxDisposable=$l,u.SectionType=Ls,u.Self=Bi,u.SheetTypes=En,u.SheetViewModel=zo,u.SkipSelf=Wi,u.SliceBodyType=yr,u.SlideDataModel=Vr,u.SpacingRule=Bs,u.SpecialShapes=Os,u.Styles=$o,u.THEME_COLORS=Ss,u.TabStopAlignment=Gs,u.TextDecoration=Rs,u.TextDirection=qt,u.TextDirectionType=ks,u.TextX=St,u.TextXActionType=ee,u.ThemeColor=On,u.ThemeColorType=We,u.ThemeColors=Cn,u.ThemeService=Xr,u.Tools=k,u.UndoCommand=ua,u.UndoCommandId=la,u.UnitModel=Hn,u.Univer=Mh,u.UniverInstanceType=J,u.UpdateDocsAttributeType=Fe,u.ValueIterator=Ri,u.VerticalAlign=Wt,u.WidthType=Vs,u.WithDependency=Qu,u.WithNew=ji,u.Worksheet=ln,u.WrapStrategy=Bt,u.WrapTextType=Hs,u.afterInitApply=lc,u.b64DecodeUnicode=es,u.b64EncodeUnicode=Qh,u.binarySearchArray=os,u.cellToRange=yl,u.characterSpacingControlType=Zs,u.checkForSubstrings=Dl,u.checkIfMove=$a,u.checkParagraphHasBullet=Ml,u.checkParagraphHasIndent=Ul,u.checkParagraphHasIndentByStyle=ui,u.codeToBlob=Ba,u.composeBody=Dr,u.composeInterceptors=Ra,u.concatMatrixArray=Kl,u.connectDependencies=zu,u.connectInjector=Ku,u.convertBodyToHtml=su,u.covertTextRunToHtml=cr,u.createDefaultUser=Xn,u.createIdentifier=xe,u.createInterceptorKey=Kh,u.createInternalEditorID=_h,u.createRowColIter=ur,u.debounce=ru,u.dedupe=Bl,u.deepCompare=nr,u.deleteContent=hi,u.extractPureTextFromCell=Gc,u.forwardRef=vu,u.fromCallback=oo,u.fromEventSubject=Vh,u.fromObservable=Hl,u.generateRandomId=oi,u.generateTemporarySnap=td,u.getArrayLength=It,u.getBodySlice=an,u.getBodySliceHtml=Tn,u.getBorderStyleType=bl,u.getCellInfoInMergeData=ul,u.getCellValueType=il,u.getColorStyle=lt,u.getCustomDecorationSlice=wo,u.getCustomRangeSlice=No,u.getDocsUpdateBody=Al,u.getReverseDirection=ja,u.getSheetBlocksFromSnapshot=od,u.getWorksheetUID=Qc,u.groupBy=Vl,u.handleStyleToString=wl,u.hashAlgorithm=Pl,u.horizontalLineSegmentsSubtraction=wn,u.insertMatrixArray=or,u.insertTextToContent=ci,u.isAsyncDependencyItem=mr,u.isAsyncHook=Mn,u.isBlackColor=nl,u.isBooleanString=Hh,u.isCellCoverable=Ol,u.isCellV=al,u.isClassDependencyItem=fr,u.isCtor=dr,u.isDisposable=Ir,u.isEmptyCell=ai,u.isFactoryDependencyItem=_r,u.isFormulaId=Nl,u.isFormulaString=Sl,u.isICellData=sl,u.isInternalEditorID=gh,u.isNullCell=ol,u.isNumeric=ma,u.isRangesEqual=Lh,u.isRealNum=Ll,u.isSafeNumeric=Fh,u.isSameStyleTextRun=li,u.isUnitRangesEqual=Ph,u.isValidRange=Tl,u.isValueDependencyItem=gr,u.isWhiteColor=rl,u.makeArray=xl,u.makeCellRangeToRangeData=vl,u.makeCellToSelection=Il,u.mergeOverrideWithDependencies=fa,u.mergeSets=$h,u.mergeWorksheetSnapshotWithDefault=Ko,u.moveMatrixArray=lr,u.moveRangeByOffset=fu,u.nameCharacterCheck=ld,u.normalizeBody=Ic,u.normalizeTextRuns=Ar,u.numberToABC=Jl,u.numberToListABC=eu,u.orderSearchArray=as,u.queryObjectMatrix=du,u.remove=bn,u.repeatStringNumTimes=Oi,u.replaceInDocumentBody=jh,u.requestImmediateMacroTask=Bh,u.rotate=Gl,u.runOnLifecycle=Vn,u.searchArray=Wa,u.selectionToArray=ll,u.sequence=eo,u.sequenceAsync=Ji,u.sequenceExecute=Nr,u.sequenceExecuteAsync=ac,u.setDependencies=$u,u.shallowEqual=kh,u.skipParseTagNames=ad,u.sliceMatrixArray=zl,u.sortRules=tu,u.sortRulesByDesc=nu,u.sortRulesFactory=Dt,u.spliceArray=ar,u.takeAfter=ao,u.textDecoder=Qn,u.textEncoder=dn,u.throttle=Wh,u.toDisposable=Se,u.transformDocumentDataToSnapshot=id,u.transformSnapshotToDocumentData=sd,u.transformSnapshotToWorkbookData=rd,u.transformWorkbookDataToSnapshot=nd,u.updateAttributeByDelete=Uo,u.updateAttributeByInsert=Lo,u.useDependency=Vu,u.useDependencyContext=ec,u.useDependencyContextValue=tc,u.useDependencyValue=qi,u.useInjector=Qi,u.useObservable=Zu,u.useUpdateBinder=Ju,Object.defineProperty(u,Symbol.toStringTag,{value:"Module"})});
6
+ For more info please visit our website: https://redi.wendell.fun/en-US/docs/debug#import-scripts-of-redi-more-than-once`):globalObject$1[__REDI_GLOBAL_LOCK__]=!0;var __REDI_CONTEXT_LOCK__="REDI_CONTEXT_LOCK",isNode=typeof process<"u"&&process.versions!=null&&process.versions.node!=null,globalObject=typeof globalThis<"u"&&globalThis||typeof window<"u"&&window||typeof global<"u"&&global;globalObject[__REDI_CONTEXT_LOCK__]?isNode||console.error(`[redi]: "RediContext" is already created. You may import "RediContext" from different paths. Use "import { RediContext } from '@wendellhu/redi/react-bindings'; instead."`):globalObject[__REDI_CONTEXT_LOCK__]=!0;var RediContext=React__namespace.createContext({injector:null});RediContext.displayName="RediContext";var RediProvider=RediContext.Provider,RediConsumer=RediContext.Consumer,__extends$1=function(){var extendStatics=__name(function(d,b){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d2,b2){d2.__proto__=b2}||function(d2,b2){for(var p in b2)Object.prototype.hasOwnProperty.call(b2,p)&&(d2[p]=b2[p])},extendStatics(d,b)},"extendStatics");return function(d,b){if(typeof b!="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}__name(__,"__"),d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}(),HooksNotInRediContextError=function(_super){__extends$1(HooksNotInRediContextError2,_super);function HooksNotInRediContextError2(){return _super.call(this,"Using dependency injection outside of a RediContext.")||this}return __name(HooksNotInRediContextError2,"HooksNotInRediContextError"),HooksNotInRediContextError2}(RediError);function useInjector(){var injectionContext=React__namespace.useContext(RediContext);if(!injectionContext.injector)throw new HooksNotInRediContextError;return injectionContext.injector}__name(useInjector,"useInjector");function useDependency(id,quantityOrLookUp,lookUp){var injector=useInjector();return React__namespace.useMemo(function(){return injector.get(id,quantityOrLookUp,lookUp)},[id,quantityOrLookUp,lookUp])}__name(useDependency,"useDependency");var __assign=__name(function(){return __assign=Object.assign||function(t){for(var s,i=1,n=arguments.length;i<n;i++){s=arguments[i];for(var p in s)Object.prototype.hasOwnProperty.call(s,p)&&(t[p]=s[p])}return t},__assign.apply(this,arguments)},"__assign");function RediInjector(props){var children=props.children,dependencies=props.dependencies,childInjectorRef=React__namespace.useRef(null);return React__namespace.useEffect(function(){return function(){var _a2;return(_a2=childInjectorRef.current)===null||_a2===void 0?void 0:_a2.dispose()}},[]),React__namespace.createElement(RediConsumer,null,function(context){var childInjector;return childInjectorRef.current?childInjector=childInjectorRef.current:(childInjector=context.injector?context.injector.createChild(dependencies):new Injector(dependencies),childInjectorRef.current=childInjector),React__namespace.createElement(RediProvider,{value:{injector:childInjector}},children)})}__name(RediInjector,"RediInjector");function connectInjector(Comp,injector){return __name(function(props){return React__namespace.createElement(RediProvider,{value:{injector}},React__namespace.createElement(Comp,__assign({},props)))},"ComponentWithInjector")}__name(connectInjector,"connectInjector");function connectDependencies(Comp,dependencies){return __name(function(props){return React__namespace.createElement(RediInjector,{dependencies},React__namespace.createElement(Comp,__assign({},props)))},"ComponentWithInjector")}__name(connectDependencies,"connectDependencies");var __extends=function(){var extendStatics=__name(function(d,b){return extendStatics=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(d2,b2){d2.__proto__=b2}||function(d2,b2){for(var p in b2)Object.prototype.hasOwnProperty.call(b2,p)&&(d2[p]=b2[p])},extendStatics(d,b)},"extendStatics");return function(d,b){if(typeof b!="function"&&b!==null)throw new TypeError("Class extends value "+String(b)+" is not a constructor or null");extendStatics(d,b);function __(){this.constructor=d}__name(__,"__"),d.prototype=b===null?Object.create(b):(__.prototype=b.prototype,new __)}}(),ClassComponentNotInRediContextError=function(_super){__extends(ClassComponentNotInRediContextError2,_super);function ClassComponentNotInRediContextError2(component){return _super.call(this,'You should make "RediContext" as '.concat(component.constructor.name,"'s default context type. ")+"If you want to use multiple context, please check this on React doc site. https://reactjs.org/docs/context.html#classcontexttype")||this}return __name(ClassComponentNotInRediContextError2,"ClassComponentNotInRediContextError"),ClassComponentNotInRediContextError2}(RediError);function WithDependency(id,quantity,lookUp){return function(){return{get:__name(function(){var thisComponent=this,context=thisComponent.context;if(!context||!context.injector)throw new ClassComponentNotInRediContextError(thisComponent);var injector=context.injector,thing=injector.get(id,quantity||exports2.Quantity.REQUIRED,lookUp);return thing},"get")}}}__name(WithDependency,"WithDependency");var __spreadArray=__name(function(to,from,pack){if(pack||arguments.length===2)for(var i=0,l2=from.length,ar;i<l2;i++)(ar||!(i in from))&&(ar||(ar=Array.prototype.slice.call(from,0,i)),ar[i]=from[i]);return to.concat(ar||Array.prototype.slice.call(from))},"__spreadArray");function useDependencyValue(depValue$,defaultValue){var firstValue=depValue$ instanceof rxjs.BehaviorSubject&&typeof defaultValue>"u"?depValue$.getValue():defaultValue,_a2=React.useState(firstValue),value=_a2[0],setValue=_a2[1];return React.useEffect(function(){var subscription=depValue$.subscribe(function(val){return setValue(val)});return function(){return subscription.unsubscribe()}},[depValue$]),value}__name(useDependencyValue,"useDependencyValue");function unwrap(o){return typeof o=="function"?o():o}__name(unwrap,"unwrap");function useObservable(observable,defaultValue,shouldHaveSyncValue,deps){if(typeof observable=="function"&&!deps)throw new RediError("Expected deps to be provided when observable is a function!");var observableRef=React.useRef(null),initializedRef=React.useRef(!1),destObservable=React.useMemo(function(){return observable},__spreadArray([],typeof deps<"u"?deps:[observable],!0)),_a2=React.useState(0);_a2[0];var setRenderCounter=_a2[1],valueRef=React.useRef(function(){var innerDefaultValue;if(destObservable){var sub=unwrap(destObservable).subscribe(function(value){initializedRef.current=!0,innerDefaultValue=value});sub.unsubscribe()}return innerDefaultValue!=null?innerDefaultValue:defaultValue}());if(React.useEffect(function(){var subscription=null;return destObservable&&(observableRef.current=unwrap(destObservable),subscription=observableRef.current.subscribe(function(value){valueRef.current=value,setRenderCounter(function(prev){return prev+1})})),function(){return subscription==null?void 0:subscription.unsubscribe()}},[destObservable]),shouldHaveSyncValue&&!initializedRef.current)throw new Error("Expect `shouldHaveSyncValue` but not getting a sync value!");return valueRef.current}__name(useObservable,"useObservable");function useUpdateBinder(update$){var _a2=React.useState(0),dumpSet=_a2[1];React.useEffect(function(){var subscription=update$.subscribe(function(){return dumpSet(function(prev){return prev+1})});return function(){return subscription.unsubscribe()}},[])}__name(useUpdateBinder,"useUpdateBinder");var DepValueMapProvider=new WeakMap;function useDependencyContext(depValue$,defaultValue){var depRef=React.useRef(void 0),value=useDependencyValue(depValue$,defaultValue),Context=React.useMemo(function(){return React.createContext(value)},[depValue$]),Provider=React.useCallback(function(props){return React.createElement(Context.Provider,{value},props.children)},[depValue$,value]);return depRef.current!==depValue$&&(depRef.current&&DepValueMapProvider.delete(depRef.current),depRef.current=depValue$,DepValueMapProvider.set(depValue$,Context)),{Provider,value}}__name(useDependencyContext,"useDependencyContext");function useDependencyContextValue(depValue$){var context=DepValueMapProvider.get(depValue$);if(!context)throw new RediError("try to read context value but no ancestor component subscribed it.");return React.useContext(context)}__name(useDependencyContextValue,"useDependencyContextValue");async function sequenceAsync(tasks){for(const[index2,task]of tasks.entries())try{if(!await task())return{index:index2,result:!1}}catch(e){return{index:index2,result:!1,error:e}}return{result:!0,index:-1}}__name(sequenceAsync,"sequenceAsync");function sequence(tasks){for(const[index2,task]of tasks.entries())try{if(!task())return{index:index2,result:!1}}catch(e){return{index:index2,result:!1,error:e}}return{result:!0,index:-1}}__name(sequence,"sequence");const IContextService=createIdentifier("univer.context-service"),_ContextService=class _ContextService extends Disposable{constructor(){super(...arguments);__publicField(this,"_contextChanged$",new rxjs.Subject);__publicField(this,"contextChanged$",this._contextChanged$.asObservable());__publicField(this,"_contextMap",new Map)}dispose(){super.dispose(),this._contextChanged$.complete()}getContextValue(key){var _a2;return(_a2=this._contextMap.get(key))!=null?_a2:!1}setContextValue(key,value){this._contextMap.set(key,value),this._contextChanged$.next({[key]:value})}subscribeContextValue$(key){return new rxjs.Observable(observer=>{const contextChangeSubscription=this._contextChanged$.pipe(rxjs.filter(event=>typeof event[key]<"u")).subscribe(event=>observer.next(event[key]));return this._contextMap.has(key)&&observer.next(this._contextMap.get(key)),()=>contextChangeSubscription.unsubscribe()})}};__name(_ContextService,"ContextService");let ContextService=_ContextService;var LogLevel=(LogLevel2=>(LogLevel2[LogLevel2.SILENT=0]="SILENT",LogLevel2[LogLevel2.ERROR=1]="ERROR",LogLevel2[LogLevel2.WARN=2]="WARN",LogLevel2[LogLevel2.INFO=3]="INFO",LogLevel2[LogLevel2.VERBOSE=4]="VERBOSE",LogLevel2))(LogLevel||{});const ILogService=createIdentifier("univer.log"),_DesktopLogService=class _DesktopLogService extends Disposable{constructor(){super(...arguments);__publicField(this,"_logLevel",3)}debug(...args){this._logLevel>=4&&this._log(console.debug,...args)}log(...args){this._logLevel>=3&&this._log(console.log,...args)}warn(...args){this._logLevel>=2&&this._log(console.warn,...args)}error(...args){this._logLevel>=1&&this._log(console.error,...args)}setLogLevel(logLevel){this._logLevel=logLevel}_log(method,...args){const firstArg=args[0];/^\[(.*?)\]/g.test(firstArg)?method(`\x1B[97;104m${firstArg}\x1B[0m`,...args.slice(1)):method(...args)}};__name(_DesktopLogService,"DesktopLogService");let DesktopLogService=_DesktopLogService;const _CustomCommandExecutionError=class _CustomCommandExecutionError extends Error{constructor(message){super(message),this.name="CustomCommandExecutionError"}};__name(_CustomCommandExecutionError,"CustomCommandExecutionError");let CustomCommandExecutionError=_CustomCommandExecutionError;var __defProp$8=Object.defineProperty,__getOwnPropDesc$8=Object.getOwnPropertyDescriptor,__decorateClass$8=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$8(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$8(target,key,result),result},"__decorateClass$8"),__decorateParam$7=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$7"),CommandType=(CommandType2=>(CommandType2[CommandType2.COMMAND=0]="COMMAND",CommandType2[CommandType2.OPERATION=1]="OPERATION",CommandType2[CommandType2.MUTATION=2]="MUTATION",CommandType2))(CommandType||{});const ICommandService=createIdentifier("anywhere.command-service"),_CommandRegistry=class _CommandRegistry{constructor(){__publicField(this,"_commands",new Map);__publicField(this,"_commandTypes",new Map)}registerCommand(command){if(this._commands.has(command.id))throw new Error(`[CommandRegistry]: command "${command.id}" has been registered before.`);return this._commands.set(command.id,command),this._commandTypes.set(command.id,command.type),toDisposable(()=>{var _a2;this._commands.delete(command.id),this._commandTypes.delete(command.id),(_a2=command.onDispose)==null||_a2.call(command)})}hasCommand(id){return this._commands.has(id)}getCommand(id){return this._commands.has(id)?[this._commands.get(id)]:null}getCommandType(id){return this._commandTypes.get(id)}};__name(_CommandRegistry,"CommandRegistry");let CommandRegistry=_CommandRegistry;const NilCommand={id:"nil",type:0,handler:__name(()=>!0,"handler")};exports2.CommandService=(_c=class extends Disposable{constructor(_injector,_logService){super();__publicField(this,"_commandRegistry");__publicField(this,"_beforeCommandExecutionListeners",[]);__publicField(this,"_commandExecutedListeners",[]);__publicField(this,"_multiCommandDisposables",new Map);__publicField(this,"_commandExecutingLevel",0);__publicField(this,"_commandExecutionStack",[]);this._injector=_injector,this._logService=_logService,this._commandRegistry=new CommandRegistry,this._registerCommand(NilCommand)}dispose(){super.dispose(),this._commandExecutedListeners.length=0,this._beforeCommandExecutionListeners.length=0}hasCommand(commandId){return this._commandRegistry.hasCommand(commandId)}registerCommand(command){return this._registerCommand(command)}registerMultipleCommand(command){return this._registerMultiCommand(command)}beforeCommandExecuted(listener){if(this._beforeCommandExecutionListeners.indexOf(listener)===-1)return this._beforeCommandExecutionListeners.push(listener),toDisposable(()=>{const index2=this._beforeCommandExecutionListeners.indexOf(listener);this._beforeCommandExecutionListeners.splice(index2,1)});throw new Error("[CommandService]: could not add a listener twice.")}onCommandExecuted(listener){if(this._commandExecutedListeners.indexOf(listener)===-1)return this._commandExecutedListeners.push(listener),toDisposable(()=>{const index2=this._commandExecutedListeners.indexOf(listener);this._commandExecutedListeners.splice(index2,1)});throw new Error("[CommandService]: could not add a listener twice.")}async executeCommand(id,params,options){try{const item=this._commandRegistry.getCommand(id);if(item){const[command]=item,commandInfo={id:command.id,type:command.type,params},stackItemDisposable=this._pushCommandExecutionStack(commandInfo);this._beforeCommandExecutionListeners.forEach(listener=>listener(commandInfo,options));const result=await this._execute(command,params,options);return this._commandExecutedListeners.forEach(listener=>listener(commandInfo,options)),stackItemDisposable.dispose(),result}throw new Error(`[CommandService]: command "${id}" is not registered.`)}catch(error){if(error instanceof CustomCommandExecutionError)return!1;throw this._logService.error(error),error}}syncExecuteCommand(id,params,options){var _a2;try{const item=this._commandRegistry.getCommand(id);if(item){const[command]=item,commandInfo={id:command.id,type:command.type,params};if(command.type===2){const triggerCommand=findLast(this._commandExecutionStack,item2=>item2.type===0);triggerCommand&&(commandInfo.params=(_a2=commandInfo.params)!=null?_a2:{},commandInfo.params.trigger=triggerCommand.id)}const stackItemDisposable=this._pushCommandExecutionStack(commandInfo);this._beforeCommandExecutionListeners.forEach(listener=>listener(commandInfo,options));const result=this._syncExecute(command,params,options);return this._commandExecutedListeners.forEach(listener=>listener(commandInfo,options)),stackItemDisposable.dispose(),result}throw new Error(`[CommandService]: command "${id}" is not registered.`)}catch(error){throw this._logService.error(error),error}}_pushCommandExecutionStack(stackItem){return this._commandExecutionStack.push(stackItem),toDisposable(()=>remove(this._commandExecutionStack,stackItem))}_registerCommand(command){return this._commandRegistry.registerCommand(command)}_registerMultiCommand(command){const registry=this._commandRegistry.getCommand(command.id);let multiCommand;if(registry){if(registry[0].multi!==!0)throw new Error("Command has registered as a single command.");multiCommand=registry[0]}else{const disposableCollection=new DisposableCollection;multiCommand=new MultiCommand(command.id),disposableCollection.add(this._commandRegistry.registerCommand(multiCommand)),disposableCollection.add(toDisposable(()=>{this._multiCommandDisposables.delete(command.id)})),this._multiCommandDisposables.set(command.id,disposableCollection)}const implementationDisposable=multiCommand.registerImplementation(command);return toDisposable(()=>{var _a2;implementationDisposable.dispose(),multiCommand.hasImplementations()||(_a2=this._multiCommandDisposables.get(command.id))==null||_a2.dispose()})}async _execute(command,params,options){this._logService.debug("[CommandService]",`${"|-".repeat(Math.max(this._commandExecutingLevel,0))}executing command "${command.id}"`),this._commandExecutingLevel++;let result;try{result=await this._injector.invoke(command.handler,params,options),this._commandExecutingLevel--}catch(e){throw result=!1,this._commandExecutingLevel=0,e}return result}_syncExecute(command,params,options){this._logService.debug("[CommandService]",`${"|-".repeat(Math.max(0,this._commandExecutingLevel))}executing command "${command.id}".`),this._commandExecutingLevel++;let result;try{if(result=this._injector.invoke(command.handler,params,options),result instanceof Promise)throw new TypeError("[CommandService]: Command handler should not return a promise.");this._commandExecutingLevel--}catch(e){throw result=!1,this._commandExecutingLevel=0,e}return result}},__name(_c,"CommandService"),_c),exports2.CommandService=__decorateClass$8([__decorateParam$7(0,Inject(Injector)),__decorateParam$7(1,ILogService)],exports2.CommandService);const _MultiCommand=class _MultiCommand{constructor(id){__publicField(this,"name");__publicField(this,"multi",!0);__publicField(this,"type",0);__publicField(this,"priority",0);__publicField(this,"_implementations",[]);__publicField(this,"handler",__name(async(accessor,params)=>{if(!this._implementations.length)return!1;const logService=accessor.get(ILogService),contextService=accessor.get(IContextService),injector=accessor.get(Injector);for(const item of this._implementations){const preconditions=item.command.preconditions;if((!preconditions||preconditions&&preconditions(contextService))&&(logService.debug("[MultiCommand]",`executing implementation "${item.command.name}".`),await injector.invoke(item.command.handler,params)))return!0}return!1},"handler"));this.id=id,this.name=id}registerImplementation(implementation){const registry={command:implementation};return this._implementations.push(registry),this._implementations.sort((a,b)=>b.command.priority-a.command.priority),toDisposable(()=>{var _a2;const index2=this._implementations.indexOf(registry);this._implementations.splice(index2,1),(_a2=implementation.onDispose)==null||_a2.call(implementation)})}hasImplementations(){return this._implementations.length>0}};__name(_MultiCommand,"MultiCommand");let MultiCommand=_MultiCommand;function sequenceExecute(tasks,commandService,options){const taskFns=tasks.map(task=>()=>commandService.syncExecuteCommand(task.id,task.params,options));return sequence(taskFns)}__name(sequenceExecute,"sequenceExecute");function sequenceExecuteAsync(tasks,commandService,options){const promises=tasks.map(task=>()=>commandService.executeCommand(task.id,task.params,options));return sequenceAsync(promises)}__name(sequenceExecuteAsync,"sequenceExecuteAsync");function fromCallback(callback){return new rxjs.Observable(subscriber=>{const disposable=callback((...args)=>subscriber.next(args));return()=>disposable==null?void 0:disposable.dispose()})}__name(fromCallback,"fromCallback");function takeAfter(callback){return __name(function(source){return new rxjs.Observable(subscriber=>(source.subscribe({next:__name(v=>{subscriber.next(v),callback(v)&&subscriber.complete()},"next"),complete:__name(()=>subscriber.complete(),"complete"),error:__name(error=>subscriber.error(error),"error")}),()=>subscriber.unsubscribe()))},"complateAfter")}__name(takeAfter,"takeAfter");const afterInitApply=__name(commandService=>new Promise(res=>{rxjs.merge(fromCallback(commandService.onCommandExecuted.bind(commandService)).pipe(operators.filter(([info])=>info.type===CommandType.MUTATION)),rxjs.timer(300)).pipe(operators.debounceTime(16),operators.first()).subscribe(()=>{res()})}),"afterInitApply");var N=(E=>(E[E.UNDEFINED=0]="UNDEFINED",E[E.OK=1]="OK",E[E.INTERNAL_ERROR=2]="INTERNAL_ERROR",E[E.PERMISSION_DENIED=3]="PERMISSION_DENIED",E[E.NOT_FOUND=4]="NOT_FOUND",E[E.UNAUTHENTICATED=5]="UNAUTHENTICATED",E[E.ALREADY_EXISTS=6]="ALREADY_EXISTS",E[E.INVALID_ARGUMENT=7]="INVALID_ARGUMENT",E[E.TOO_MANY_REQUESTS=8]="TOO_MANY_REQUESTS",E[E.COMPLETION_FINISHED=9]="COMPLETION_FINISHED",E[E.CHANGESET_REVISION_CONFILICT=5001]="CHANGESET_REVISION_CONFILICT",E[E.SNAPSHOT_INVALID_SNAPSHOT=6001]="SNAPSHOT_INVALID_SNAPSHOT",E[E.SNAPSHOT_HAS_BEEN_REMOVED=6002]="SNAPSHOT_HAS_BEEN_REMOVED",E[E.APPLY_REJECT=7001]="APPLY_REJECT",E[E.APPLY_NON_SEQUENTIAL_REVISION=7002]="APPLY_NON_SEQUENTIAL_REVISION",E[E.APPLY_REVISION_CONFILICT=7003]="APPLY_REVISION_CONFILICT",E[E.APPLY_PERMISSION_DENIED=7004]="APPLY_PERMISSION_DENIED",E[E.CONNECTOR_DATA_TOO_LARGE=8001]="CONNECTOR_DATA_TOO_LARGE",E[E.LICENSE_MAX_UNITS_EXCEEDED=9001]="LICENSE_MAX_UNITS_EXCEEDED",E[E.LICENSE_MAX_MEMBERS_PER_UNIT_EXCEEDED=9002]="LICENSE_MAX_MEMBERS_PER_UNIT_EXCEEDED",E[E.LICENSE_IMPORT_SIZE_EXCEEDED=9003]="LICENSE_IMPORT_SIZE_EXCEEDED",E[E.LICENSE_EXPORT_SIZE_EXCEEDED=9004]="LICENSE_EXPORT_SIZE_EXCEEDED",E[E.LICENSE_DISTRO_REJECTED=9005]="LICENSE_DISTRO_REJECTED",E[E.YUUMI_UNABLE_LOAD_URL=10001]="YUUMI_UNABLE_LOAD_URL",E[E.YUUMI_URL_COL_OUT_OF_RANGE=10002]="YUUMI_URL_COL_OUT_OF_RANGE",E[E.YUUMI_RATE_OVER_LIMIT=10003]="YUUMI_RATE_OVER_LIMIT",E[E.YUUMI_SUBSCRIPTION_NOT_FOUND=10004]="YUUMI_SUBSCRIPTION_NOT_FOUND",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(N||{});function H(E){return!!(E&&E.code&&E.code!==N.OK&&E.code!=="OK")}__name(H,"H");var I=(E=>(E[E.UNIVER_UNKNOWN=0]="UNIVER_UNKNOWN",E[E.UNIVER_DOC=1]="UNIVER_DOC",E[E.UNIVER_SHEET=2]="UNIVER_SHEET",E[E.UNIVER_SLIDE=3]="UNIVER_SLIDE",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(I||{}),L=(E=>(E[E.SomeCollaborator=0]="SomeCollaborator",E[E.AllCollaborator=1]="AllCollaborator",E[E.OneSelf=2]="OneSelf",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(L||{}),M=(E=>(E[E.Reader=0]="Reader",E[E.Editor=1]="Editor",E[E.Owner=2]="Owner",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(M||{}),l=(E=>(E[E.Unkonwn=0]="Unkonwn",E[E.Workbook=1]="Workbook",E[E.Worksheet=2]="Worksheet",E[E.SelectRange=3]="SelectRange",E[E.Document=4]="Document",E[E.Slide=5]="Slide",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(l||{});const _UnitModel=class _UnitModel extends Disposable{};__name(_UnitModel,"UnitModel");let UnitModel=_UnitModel;const _Registry=class _Registry{constructor(){__publicField(this,"_data",[])}static create(){return new _Registry}add(dataInstance){this._data.indexOf(dataInstance)>-1||this._data.push(dataInstance)}delete(dataInstance){const index2=this._data.indexOf(dataInstance);this._data.splice(index2,1)}getData(){return this._data}};__name(_Registry,"Registry");let Registry=_Registry;const _RegistryAsMap=class _RegistryAsMap{constructor(){__publicField(this,"_data",new Map)}static create(){return new _RegistryAsMap}add(id,dataInstance){this._data.has(id)||this._data.set(id,dataInstance)}delete(id){this._data.delete(id)}getData(){return this._data}};__name(_RegistryAsMap,"RegistryAsMap");let RegistryAsMap=_RegistryAsMap;var DataStreamTreeNodeType=(DataStreamTreeNodeType2=>(DataStreamTreeNodeType2.PARAGRAPH="PARAGRAPH",DataStreamTreeNodeType2.SECTION_BREAK="SECTION_BREAK",DataStreamTreeNodeType2.TABLE="TABLE",DataStreamTreeNodeType2.TABLE_ROW="TABLE_ROW",DataStreamTreeNodeType2.TABLE_CELL="TABLE_CELL",DataStreamTreeNodeType2.CUSTOM_BLOCK="CUSTOM_BLOCK",DataStreamTreeNodeType2))(DataStreamTreeNodeType||{}),DataStreamTreeTokenType=(DataStreamTreeTokenType2=>(DataStreamTreeTokenType2.PARAGRAPH="\r",DataStreamTreeTokenType2.SECTION_BREAK=`
7
+ `,DataStreamTreeTokenType2.TABLE_START="",DataStreamTreeTokenType2.TABLE_ROW_START="\x1B",DataStreamTreeTokenType2.TABLE_CELL_START="",DataStreamTreeTokenType2.TABLE_CELL_END="",DataStreamTreeTokenType2.TABLE_ROW_END="",DataStreamTreeTokenType2.TABLE_END="",DataStreamTreeTokenType2.CUSTOM_RANGE_START="",DataStreamTreeTokenType2.CUSTOM_RANGE_END="",DataStreamTreeTokenType2.COLUMN_BREAK="\v",DataStreamTreeTokenType2.PAGE_BREAK="\f",DataStreamTreeTokenType2.DOCS_END="\0",DataStreamTreeTokenType2.TAB=" ",DataStreamTreeTokenType2.CUSTOM_BLOCK="\b",DataStreamTreeTokenType2.LETTER="",DataStreamTreeTokenType2.SPACE=" ",DataStreamTreeTokenType2))(DataStreamTreeTokenType||{});function makeCustomRangeStream(stream){return`${stream}`}__name(makeCustomRangeStream,"makeCustomRangeStream");var QuickListType=(QuickListType2=>(QuickListType2.ORDER_LIST_QUICK_1="1.",QuickListType2.ORDER_LIST_QUICK_2="a)",QuickListType2.ORDER_LIST_QUICK_3="a.",QuickListType2.ORDER_LIST_QUICK_4="i.",QuickListType2.ORDER_LIST_QUICK_5="A.",QuickListType2.ORDER_LIST_QUICK_6="I.",QuickListType2.ORDER_LIST_QUICK_7="01.",QuickListType2))(QuickListType||{}),PresetListType=(PresetListType2=>(PresetListType2.BULLET_LIST="BULLET_LIST",PresetListType2.BULLET_LIST_1="BULLET_LIST_1",PresetListType2.BULLET_LIST_2="BULLET_LIST_2",PresetListType2.BULLET_LIST_3="BULLET_LIST_3",PresetListType2.BULLET_LIST_4="BULLET_LIST_4",PresetListType2.BULLET_LIST_5="BULLET_LIST_5",PresetListType2.ORDER_LIST="ORDER_LIST",PresetListType2.ORDER_LIST_1="ORDER_LIST_1",PresetListType2.ORDER_LIST_2="ORDER_LIST_2",PresetListType2.ORDER_LIST_3="ORDER_LIST_3",PresetListType2.ORDER_LIST_4="ORDER_LIST_4",PresetListType2.ORDER_LIST_5="ORDER_LIST_5",PresetListType2.ORDER_LIST_QUICK_2="ORDER_LIST_QUICK_2",PresetListType2.ORDER_LIST_QUICK_3="ORDER_LIST_QUICK_3",PresetListType2.ORDER_LIST_QUICK_4="ORDER_LIST_QUICK_4",PresetListType2.ORDER_LIST_QUICK_5="ORDER_LIST_QUICK_5",PresetListType2.ORDER_LIST_QUICK_6="ORDER_LIST_QUICK_6",PresetListType2.CHECK_LIST="CHECK_LIST",PresetListType2.CHECK_LIST_CHECKED="CHECK_LIST_CHECKED",PresetListType2))(PresetListType||{});const orderListSymbolMap={"a)":{glyphFormat:" %1)",glyphType:GlyphType.DECIMAL},"1.":{glyphFormat:" %1.",glyphType:GlyphType.DECIMAL},"a.":{glyphFormat:" %1.",glyphType:GlyphType.LOWER_LETTER},"A.":{glyphFormat:" %1.",glyphType:GlyphType.UPPER_LETTER},"i.":{glyphFormat:" %1.",glyphType:GlyphType.LOWER_ROMAN},"I.":{glyphFormat:" %1.",glyphType:GlyphType.UPPER_LETTER}},bulletListFactory=__name(symbols=>[...symbols,...symbols,...symbols].map((templateSymbol,i)=>({glyphFormat:` %${i+1}`,glyphSymbol:templateSymbol,bulletAlignment:BulletAlignment.START,textStyle:{fs:12},startNumber:0,paragraphProperties:{hanging:{v:21},indentStart:{v:21*(i+1)}}})),"bulletListFactory"),orderListFactory=__name(options=>options.map((format,i)=>({...format,bulletAlignment:BulletAlignment.START,textStyle:{fs:12},startNumber:0,paragraphProperties:{hanging:{v:21},indentStart:{v:21*(i+1)}}})),"orderListFactory"),checkListFactory=__name((symbol,textStyle)=>Array(9).fill(0).map((_,i)=>({glyphFormat:` %${i+1}`,glyphSymbol:symbol,bulletAlignment:BulletAlignment.START,textStyle:{fs:16},startNumber:0,paragraphProperties:{hanging:{v:21},indentStart:{v:21*(i+1)},textStyle}})),"checkListFactory"),PRESET_LIST_TYPE={BULLET_LIST:{listType:"BULLET_LIST",nestingLevel:bulletListFactory(["●","○","■"])},BULLET_LIST_1:{listType:"BULLET_LIST",nestingLevel:bulletListFactory(["❖","➢","■"])},BULLET_LIST_2:{listType:"BULLET_LIST",nestingLevel:bulletListFactory(["✔","●","◆"])},BULLET_LIST_3:{listType:"BULLET_LIST",nestingLevel:bulletListFactory(["■","◆","○"])},BULLET_LIST_4:{listType:"BULLET_LIST",nestingLevel:bulletListFactory(["✧","○","■"])},BULLET_LIST_5:{listType:"BULLET_LIST",nestingLevel:bulletListFactory(["➢","○","◆"])},ORDER_LIST:{listType:"ORDER_LIST",nestingLevel:orderListFactory([{glyphFormat:" %1.",glyphType:GlyphType.DECIMAL},{glyphFormat:" %2.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %3.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %4.",glyphType:GlyphType.DECIMAL},{glyphFormat:" %5.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %6.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %7.",glyphType:GlyphType.DECIMAL},{glyphFormat:" %8.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %9.",glyphType:GlyphType.LOWER_ROMAN}])},ORDER_LIST_1:{listType:"ORDER_LIST",nestingLevel:orderListFactory([{glyphFormat:" %1)",glyphType:GlyphType.DECIMAL},{glyphFormat:" %2)",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %3)",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %4)",glyphType:GlyphType.DECIMAL},{glyphFormat:" %5)",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %6)",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %7)",glyphType:GlyphType.DECIMAL},{glyphFormat:" %8)",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %9)",glyphType:GlyphType.LOWER_ROMAN}])},ORDER_LIST_2:{listType:"ORDER_LIST",nestingLevel:orderListFactory([" %1."," %1.%2."," %1.%2.%3."," %1.%2.%3.%4."," %1.%2.%3.%4.%5."," %1.%2.%3.%4.%5.%6."," %1.%2.%3.%4.%5.%6.%7."].map(format=>({glyphFormat:format,glyphType:GlyphType.DECIMAL})))},ORDER_LIST_3:{listType:"ORDER_LIST",nestingLevel:orderListFactory([{glyphFormat:" %1.",glyphType:GlyphType.UPPER_LETTER},{glyphFormat:" %2.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %3.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %4.",glyphType:GlyphType.UPPER_LETTER},{glyphFormat:" %5.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %6.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %7.",glyphType:GlyphType.UPPER_LETTER},{glyphFormat:" %8.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %9.",glyphType:GlyphType.LOWER_ROMAN}])},ORDER_LIST_4:{listType:"ORDER_LIST",nestingLevel:orderListFactory([{glyphFormat:" %1.",glyphType:GlyphType.UPPER_LETTER},{glyphFormat:" %2.",glyphType:GlyphType.DECIMAL},{glyphFormat:" %3.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %4.",glyphType:GlyphType.UPPER_LETTER},{glyphFormat:" %5.",glyphType:GlyphType.DECIMAL},{glyphFormat:" %6.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %7.",glyphType:GlyphType.UPPER_LETTER},{glyphFormat:" %8.",glyphType:GlyphType.DECIMAL},{glyphFormat:" %9.",glyphType:GlyphType.LOWER_ROMAN}])},ORDER_LIST_5:{listType:"ORDER_LIST",nestingLevel:orderListFactory([{glyphFormat:" %1.",glyphType:GlyphType.DECIMAL_ZERO},{glyphFormat:" %2.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %3.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %4.",glyphType:GlyphType.DECIMAL_ZERO},{glyphFormat:" %5.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %6.",glyphType:GlyphType.LOWER_ROMAN},{glyphFormat:" %7.",glyphType:GlyphType.DECIMAL_ZERO},{glyphFormat:" %8.",glyphType:GlyphType.LOWER_LETTER},{glyphFormat:" %9.",glyphType:GlyphType.LOWER_ROMAN}])},CHECK_LIST:{listType:"CHECK_LIST",nestingLevel:checkListFactory("☐",{st:{s:BooleanNumber.FALSE}})},CHECK_LIST_CHECKED:{listType:"CHECK_LIST_CHECKED",nestingLevel:checkListFactory("☑",{st:{s:BooleanNumber.TRUE}})}},generateOrderList=__name(opt=>{const{glyphFormat,glyphType}=opt,data=Tools.deepClone(PRESET_LIST_TYPE.ORDER_LIST);return data.nestingLevel[0].glyphFormat=glyphFormat,data.nestingLevel[0].glyphType=glyphType,data},"generateOrderList"),QUICK_LIST_TYPE={ORDER_LIST_QUICK_2:generateOrderList(orderListSymbolMap["a)"]),ORDER_LIST_QUICK_3:generateOrderList(orderListSymbolMap["a."]),ORDER_LIST_QUICK_4:generateOrderList(orderListSymbolMap["i."]),ORDER_LIST_QUICK_6:generateOrderList(orderListSymbolMap["I."])};Object.assign(PRESET_LIST_TYPE,QUICK_LIST_TYPE);const QuickListTypeMap={"1.":"ORDER_LIST","a)":"ORDER_LIST_QUICK_2","a.":"ORDER_LIST_QUICK_3","i.":"ORDER_LIST_QUICK_4","A.":"ORDER_LIST_3","I.":"ORDER_LIST_QUICK_6","01.":"ORDER_LIST_5"};function normalizeTextRuns(textRuns){const results=[];for(const textRun of textRuns){const{ed,ts}=textRun;if(textRun.sId===void 0&&delete textRun.sId,Tools.isEmptyObject(ts)&&textRun.sId==null)continue;if(results.length===0){results.push(textRun);continue}const peak=results.pop();isSameStyleTextRun(textRun,peak)&&Tools.hasIntersectionBetweenTwoRanges(peak.st,peak.ed,textRun.st,textRun.ed)?results.push({...textRun,st:peak.st,ed}):results.push(peak,textRun)}return results}__name(normalizeTextRuns,"normalizeTextRuns");function insertTextRuns(body,insertBody,textLength,currentIndex){var _a2;const{textRuns}=body;if(textRuns==null)return;const newTextRuns=[],len=textRuns.length;let hasInserted=!1;const insertTextRuns2=(_a2=insertBody.textRuns)!=null?_a2:[];if(insertTextRuns2.length)for(const insertTextRun of insertTextRuns2)insertTextRun.st+=currentIndex,insertTextRun.ed+=currentIndex;for(let i=0;i<len;i++){const textRun=textRuns[i],nextRun=textRuns[i+1],{st,ed}=textRun;if(ed<currentIndex)newTextRuns.push(textRun);else if(currentIndex>=st&&currentIndex<=ed){if(nextRun&&nextRun.st===nextRun.ed&&currentIndex===nextRun.st){newTextRuns.push(textRun);continue}if(hasInserted)textRun.st+=textLength,textRun.ed+=textLength,newTextRuns.push(textRun);else{hasInserted=!0,textRun.ed+=textLength;const pendingTextRuns=[];if(insertTextRuns2.length){const startSplitTextRun={...textRun,st,ed:insertTextRuns2[0].st};startSplitTextRun.ed>startSplitTextRun.st&&pendingTextRuns.push(startSplitTextRun),pendingTextRuns.push(...insertTextRuns2);const lastInsertTextRuns=insertTextRuns2[insertTextRuns2.length-1],endSplitTextRun={...textRun,st:lastInsertTextRuns.ed,ed:ed+textLength};endSplitTextRun.ed>endSplitTextRun.st&&pendingTextRuns.push(endSplitTextRun)}else pendingTextRuns.push(textRun);newTextRuns.push(...pendingTextRuns)}}else textRun.st+=textLength,textRun.ed+=textLength,hasInserted||(hasInserted=!0,newTextRuns.push(...insertTextRuns2)),newTextRuns.push(textRun)}hasInserted||(hasInserted=!0,newTextRuns.push(...insertTextRuns2)),body.textRuns=normalizeTextRuns(newTextRuns)}__name(insertTextRuns,"insertTextRuns");function insertParagraphs(body,insertBody,textLength,currentIndex){const{paragraphs}=body;if(paragraphs==null)return;const{paragraphs:insertParagraphs2,dataStream:insertDataStream}=insertBody,paragraphIndexList=[];let firstInsertParagraphNextIndex=-1;for(let i=0,len=paragraphs.length;i<len;i++){const paragraph=paragraphs[i],{startIndex}=paragraph;startIndex>=currentIndex&&(paragraph.startIndex+=textLength),firstInsertParagraphNextIndex===-1&&startIndex>=currentIndex&&(firstInsertParagraphNextIndex=i),paragraphIndexList.push(paragraph.startIndex)}let deleteReptIndex=-1;if(insertParagraphs2){for(let i=0,len=insertParagraphs2.length;i<len;i++){const insertParagraph=insertParagraphs2[i];insertParagraph.startIndex+=currentIndex;const insertIndex=insertParagraph.startIndex;deleteReptIndex=paragraphIndexList.indexOf(insertIndex)}if(insertDataStream===DataStreamTreeTokenType.PARAGRAPH&&insertParagraphs2.length===1){const nextParagraph=paragraphs[firstInsertParagraphNextIndex],insertParagraph=insertParagraphs2[0],nextParagraphStyle=nextParagraph.paragraphStyle,nextBullet=nextParagraph.bullet;nextParagraph.paragraphStyle=insertParagraph.paragraphStyle,nextParagraph.bullet=insertParagraph.bullet,insertParagraph.paragraphStyle=nextParagraphStyle,insertParagraph.bullet=nextBullet}deleteReptIndex!==-1&&paragraphs.splice(deleteReptIndex,1),paragraphs.push(...insertParagraphs2),paragraphs.sort(sortRulesFactory("startIndex"))}}__name(insertParagraphs,"insertParagraphs");function insertSectionBreaks(body,insertBody,textLength,currentIndex){const{sectionBreaks}=body;if(sectionBreaks==null)return;for(let i=0,len=sectionBreaks.length;i<len;i++){const sectionBreak=sectionBreaks[i],{startIndex}=sectionBreak;startIndex>=currentIndex&&(sectionBreak.startIndex+=textLength)}const insertSectionBreaks2=insertBody.sectionBreaks;if(insertSectionBreaks2){for(let i=0,len=insertSectionBreaks2.length;i<len;i++){const sectionBreak=insertSectionBreaks2[i];sectionBreak.startIndex+=currentIndex}sectionBreaks.push(...insertSectionBreaks2),sectionBreaks.sort(sortRulesFactory("startIndex"))}}__name(insertSectionBreaks,"insertSectionBreaks");function insertCustomBlocks(body,insertBody,textLength,currentIndex){const{customBlocks}=body;if(customBlocks==null)return;for(let i=0,len=customBlocks.length;i<len;i++){const customBlock=customBlocks[i],{startIndex}=customBlock;startIndex>=currentIndex&&(customBlock.startIndex+=textLength)}const insertCustomBlocks2=insertBody.customBlocks;if(insertCustomBlocks2){for(let i=0,len=insertCustomBlocks2.length;i<len;i++){const customBlock=insertCustomBlocks2[i];customBlock.startIndex+=currentIndex}customBlocks.push(...insertCustomBlocks2),customBlocks.sort(sortRulesFactory("startIndex"))}}__name(insertCustomBlocks,"insertCustomBlocks");function insertTables(body,insertBody,textLength,currentIndex){const{tables}=body;if(tables==null)return;for(let i=0,len=tables.length;i<len;i++){const table=tables[i],{startIndex,endIndex}=table;startIndex>currentIndex?(table.startIndex+=textLength,table.endIndex+=textLength):endIndex>currentIndex&&(table.endIndex+=textLength)}const insertTables2=insertBody.tables;if(insertTables2){for(let i=0,len=insertTables2.length;i<len;i++){const table=insertTables2[i];table.startIndex+=currentIndex,table.endIndex+=currentIndex}tables.push(...insertTables2),tables.sort(sortRulesFactory("startIndex"))}}__name(insertTables,"insertTables");function insertCustomRanges(body,insertBody,textLength,currentIndex){body.customRanges||(body.customRanges=[]);const{customRanges}=body,customRangeMap={};for(let i=0,len=customRanges.length;i<len;i++){const customRange=customRanges[i];customRangeMap[customRange.rangeId]=customRange;const{startIndex,endIndex}=customRange;startIndex>=currentIndex?(customRange.startIndex+=textLength,customRange.endIndex+=textLength):endIndex>currentIndex-1&&(customRange.endIndex+=textLength)}if(customRanges.find(range=>range.startIndex>currentIndex&&range.endIndex<currentIndex))return;const insertCustomRanges2=[];if(insertBody.customRanges){for(let i=0,len=insertBody.customRanges.length;i<len;i++){const customRange=insertBody.customRanges[i],oldCustomRange=customRangeMap[customRange.rangeId];if(customRange.startIndex+=currentIndex,customRange.endIndex+=currentIndex,oldCustomRange){if(oldCustomRange.startIndex<=customRange.startIndex&&oldCustomRange.endIndex>=customRange.endIndex)continue;if(body.dataStream[oldCustomRange.startIndex]===DataStreamTreeTokenType.CUSTOM_RANGE_START&&body.dataStream[oldCustomRange.endIndex]===DataStreamTreeTokenType.CUSTOM_RANGE_END){insertCustomRanges2.push(customRange);continue}if(body.dataStream[oldCustomRange.startIndex]===DataStreamTreeTokenType.CUSTOM_RANGE_START){oldCustomRange.endIndex=customRange.endIndex;continue}if(body.dataStream[oldCustomRange.endIndex]===DataStreamTreeTokenType.CUSTOM_RANGE_END){oldCustomRange.startIndex=customRange.startIndex;continue}}insertCustomRanges2.push(customRange)}customRanges.push(...insertCustomRanges2),customRanges.sort(sortRulesFactory("startIndex"))}}__name(insertCustomRanges,"insertCustomRanges");function mergeRanges(lineSegments){lineSegments.sort((a,b)=>a.startIndex-b.startIndex);const mergedSegments=[];let currentSegment=lineSegments[0];for(let i=1;i<lineSegments.length;i++)currentSegment.endIndex+1>=lineSegments[i].startIndex?currentSegment.endIndex=Math.max(currentSegment.endIndex,lineSegments[i].endIndex):(mergedSegments.push(currentSegment),currentSegment=lineSegments[i]);return mergedSegments.push(currentSegment),mergedSegments}__name(mergeRanges,"mergeRanges");function mergeDecorations(customDecorations){const customDecorationMap={};for(let i=0,len=customDecorations.length;i<len;i++){const customDecoration=customDecorations[i],currentDecorations=customDecorationMap[customDecoration.id];customDecorationMap[customDecoration.id]=[...currentDecorations!=null?currentDecorations:[],customDecoration]}return Object.keys(customDecorationMap).forEach(id=>{const decorations=customDecorationMap[id],newRanges=mergeRanges(decorations);customDecorationMap[id]=newRanges}),Object.values(customDecorationMap).flat()}__name(mergeDecorations,"mergeDecorations");function insertCustomDecorations(body,insertBody,textLength,currentIndex){body.customDecorations||(body.customDecorations=[]);const{customDecorations}=body;if(textLength>0)for(let i=0,len=customDecorations.length;i<len;i++){const customDecoration=customDecorations[i],{startIndex,endIndex}=customDecoration;startIndex>=currentIndex?(customDecoration.startIndex+=textLength,customDecoration.endIndex+=textLength):endIndex>currentIndex-1&&(customDecoration.endIndex+=textLength)}if(insertBody.customDecorations){const insertCustomDecorations2=[];for(let i=0,len=insertBody.customDecorations.length;i<len;i++){const customDecoration=insertBody.customDecorations[i];insertCustomDecorations2.push(customDecoration),customDecoration.startIndex+=currentIndex,customDecoration.endIndex+=currentIndex}customDecorations.push(...insertCustomDecorations2),body.customDecorations=mergeDecorations(customDecorations),body.customDecorations.sort(sortRulesFactory("startIndex"))}}__name(insertCustomDecorations,"insertCustomDecorations");function deleteTextRuns(body,textLength,currentIndex){var _a2;const{textRuns}=body,startIndex=currentIndex,endIndex=currentIndex+textLength,removeTextRuns=[];if(startIndex===endIndex&&(textRuns!=null&&textRuns.find(t=>t.st===currentIndex&&t.ed===currentIndex))){const textRun=textRuns.find(t=>t.st===currentIndex&&t.ed===currentIndex);return removeTextRuns.push({...textRun,st:textRun.st-currentIndex,ed:textRun.ed-currentIndex}),body.textRuns=(_a2=body.textRuns)==null?void 0:_a2.filter(t=>t!==textRun),removeTextRuns}if(textRuns){const newTextRuns=[];for(let i=0,len=textRuns.length;i<len;i++){const textRun=textRuns[i],{st,ed}=textRun;if(startIndex<=st&&endIndex>=ed){removeTextRuns.push({...textRun,st:st-startIndex,ed:ed-startIndex});continue}else st<=startIndex&&ed>=endIndex?(removeTextRuns.push({...textRun,st:startIndex-startIndex,ed:endIndex-startIndex}),textRun.ed-=textLength):startIndex>=st&&startIndex<ed?(removeTextRuns.push({...textRun,st:startIndex-startIndex,ed:ed-startIndex}),textRun.ed=startIndex):endIndex>st&&endIndex<=ed?(removeTextRuns.push({...textRun,st:st-startIndex,ed:endIndex-startIndex}),textRun.st=endIndex-textLength,textRun.ed-=textLength):st>=endIndex&&(textRun.st-=textLength,textRun.ed-=textLength);newTextRuns.push(textRun)}body.textRuns=newTextRuns}return removeTextRuns.length===0&&removeTextRuns.push({st:0,ed:textLength,ts:{}}),removeTextRuns}__name(deleteTextRuns,"deleteTextRuns");function deleteParagraphs(body,textLength,currentIndex){const{paragraphs}=body,startIndex=currentIndex,endIndex=currentIndex+textLength,removeParagraphs=[];if(paragraphs){const newParagraphs=[];for(let i=0,len=paragraphs.length;i<len;i++){const paragraph=paragraphs[i],{startIndex:index2}=paragraph;if(index2>=startIndex&&index2<endIndex){removeParagraphs.push({...paragraph,startIndex:index2-currentIndex});continue}else index2>=endIndex&&(paragraph.startIndex-=textLength);newParagraphs.push(paragraph)}body.paragraphs=newParagraphs}return removeParagraphs}__name(deleteParagraphs,"deleteParagraphs");function deleteSectionBreaks(body,textLength,currentIndex){const{sectionBreaks}=body,startIndex=currentIndex,endIndex=currentIndex+textLength-1,removeSectionBreaks=[];if(sectionBreaks){const newSectionBreaks=[];for(let i=0,len=sectionBreaks.length;i<len;i++){const sectionBreak=sectionBreaks[i],{startIndex:index2}=sectionBreak;if(index2>=startIndex&&index2<=endIndex){removeSectionBreaks.push({...sectionBreak,startIndex:index2-currentIndex});continue}else index2>endIndex&&(sectionBreak.startIndex-=textLength);newSectionBreaks.push(sectionBreak)}body.sectionBreaks=newSectionBreaks}return removeSectionBreaks}__name(deleteSectionBreaks,"deleteSectionBreaks");function deleteCustomBlocks(body,textLength,currentIndex){const{customBlocks}=body,startIndex=currentIndex,endIndex=currentIndex+textLength-1,removeCustomBlocks=[];if(customBlocks){const newCustomBlocks=[];for(let i=0,len=customBlocks.length;i<len;i++){const customBlock=customBlocks[i],{startIndex:index2}=customBlock;if(index2>=startIndex&&index2<=endIndex){removeCustomBlocks.push({...customBlock,startIndex:index2-currentIndex});continue}else index2>endIndex&&(customBlock.startIndex-=textLength);newCustomBlocks.push(customBlock)}body.customBlocks=newCustomBlocks}return removeCustomBlocks}__name(deleteCustomBlocks,"deleteCustomBlocks");function deleteTables(body,textLength,currentIndex){const{tables}=body,startIndex=currentIndex,endIndex=currentIndex+textLength-1,removeTables=[];if(tables){const newTables=[];for(let i=0,len=tables.length;i<len;i++){const table=tables[i],{startIndex:st,endIndex:ed}=table;if(startIndex<=st&&endIndex>=ed){removeTables.push({...table,startIndex:st-currentIndex,endIndex:ed-currentIndex});continue}else if(st<=startIndex&&ed>=endIndex){const segments=horizontalLineSegmentsSubtraction(st,ed,startIndex,endIndex);if(table.startIndex=segments[0],table.endIndex=segments[1],table.startIndex===table.endIndex)continue}else endIndex<st&&(table.startIndex-=textLength,table.endIndex-=textLength);newTables.push(table)}body.tables=newTables}return removeTables}__name(deleteTables,"deleteTables");function deleteCustomRanges(body,textLength,currentIndex){const{customRanges}=body,startIndex=currentIndex,endIndex=currentIndex+textLength-1,removeCustomRanges=[];if(customRanges){const newCustomRanges=[];for(let i=0,len=customRanges.length;i<len;i++){const customRange=customRanges[i],{startIndex:st,endIndex:ed}=customRange;if(startIndex<=st&&endIndex>=st){removeCustomRanges.push({...customRange,startIndex:st-currentIndex,endIndex:ed-currentIndex});continue}else if(st<=startIndex&&ed>=endIndex){const segments=horizontalLineSegmentsSubtraction(st,ed,startIndex,endIndex);customRange.startIndex=segments[0],customRange.endIndex=segments[1]}else endIndex<st&&(customRange.startIndex-=textLength,customRange.endIndex-=textLength);newCustomRanges.push(customRange)}body.customRanges=newCustomRanges}return removeCustomRanges}__name(deleteCustomRanges,"deleteCustomRanges");function deleteCustomDecorations(body,textLength,currentIndex,needOffset=!0){const{customDecorations}=body,startIndex=currentIndex,endIndex=currentIndex+textLength-1,removeCustomDecorations=[];if(customDecorations){const newCustomDecorations=[];for(let i=0,len=customDecorations.length;i<len;i++){const customDecoration=customDecorations[i],{startIndex:st,endIndex:ed}=customDecoration;if(st>=startIndex&&ed<=endIndex){removeCustomDecorations.push(customDecoration);continue}else if(Math.max(startIndex,st)<=Math.min(endIndex,ed)){const segments=horizontalLineSegmentsSubtraction(st,ed,startIndex,endIndex);customDecoration.startIndex=segments[0],customDecoration.endIndex=segments[1]}else endIndex<st&&needOffset&&(customDecoration.startIndex-=textLength,customDecoration.endIndex-=textLength);newCustomDecorations.push(customDecoration)}body.customDecorations=newCustomDecorations}return removeCustomDecorations}__name(deleteCustomDecorations,"deleteCustomDecorations");function updateAttribute(body,updateBody,textLength,currentIndex,coverType){const removeTextRuns=updateTextRuns(body,updateBody,textLength,currentIndex,coverType),removeParagraphs=updateParagraphs(body,updateBody,textLength,currentIndex,coverType),removeSectionBreaks=updateSectionBreaks(body,updateBody,textLength,currentIndex,coverType),removeCustomBlocks=updateCustomBlocks(body,updateBody,textLength,currentIndex,coverType),removeTables=updateTables(body,updateBody,textLength,currentIndex,coverType),removeCustomRanges=updateCustomRanges(body,updateBody,textLength,currentIndex,coverType),removeCustomDecorations=updateCustomDecorations(body,updateBody,textLength,currentIndex,coverType);return{dataStream:"",textRuns:removeTextRuns,paragraphs:removeParagraphs,sectionBreaks:removeSectionBreaks,customBlocks:removeCustomBlocks,tables:removeTables,customRanges:removeCustomRanges,customDecorations:removeCustomDecorations}}__name(updateAttribute,"updateAttribute");function updateTextRuns(body,updateBody,textLength,currentIndex,coverType){const{textRuns}=body,{textRuns:updateTextRuns2}=updateBody;if(textRuns==null||updateTextRuns2==null)return;const removeTextRuns=deleteTextRuns(body,textLength,currentIndex);if(coverType!==UpdateDocsAttributeType.REPLACE){const newUpdateTextRun=coverTextRuns(updateTextRuns2,removeTextRuns,coverType);updateBody.textRuns=newUpdateTextRun}return insertTextRuns(body,updateBody,textLength,currentIndex),removeTextRuns}__name(updateTextRuns,"updateTextRuns");function coverTextRuns(updateDataTextRuns,removeTextRuns,coverType){if(removeTextRuns.length===0)return updateDataTextRuns;updateDataTextRuns=Tools.deepClone(updateDataTextRuns),removeTextRuns=Tools.deepClone(removeTextRuns);const newUpdateTextRuns=[],updateLength=updateDataTextRuns.length,removeLength=removeTextRuns.length;let updateIndex=0,removeIndex=0,pending=null;function pushPendingAndReturnStatus(){return pending?(newUpdateTextRuns.push(pending),pending=null,!0):!1}for(__name(pushPendingAndReturnStatus,"pushPendingAndReturnStatus");updateIndex<updateLength&&removeIndex<removeLength;){const{st:updateSt,ed:updateEd,ts:updateStyle}=updateDataTextRuns[updateIndex],{st:removeSt,ed:removeEd,ts:removeStyle,sId}=removeTextRuns[removeIndex];let newTs;if(coverType===UpdateDocsAttributeType.COVER?newTs={...removeStyle,...updateStyle}:newTs={...updateStyle,...removeStyle},updateEd<removeSt)pushPendingAndReturnStatus()||newUpdateTextRuns.push(updateDataTextRuns[updateIndex]),updateIndex++;else if(removeEd<updateSt)pushPendingAndReturnStatus()||newUpdateTextRuns.push(removeTextRuns[removeIndex]),removeIndex++;else{const newTextRun={st:Math.min(updateSt,removeSt),ed:Math.max(updateSt,removeSt),ts:updateSt<removeSt?{...updateStyle}:{...removeStyle},sId:updateSt<removeSt?void 0:sId};newTextRun.ed>newTextRun.st&&newUpdateTextRuns.push(newTextRun),newUpdateTextRuns.push({st:Math.max(updateSt,removeSt),ed:Math.min(updateEd,removeEd),ts:newTs,sId}),updateEd<removeEd?(updateIndex++,removeTextRuns[removeIndex].st=updateEd,removeTextRuns[removeIndex].st===removeTextRuns[removeIndex].ed&&removeIndex++):(removeIndex++,updateDataTextRuns[updateIndex].st=removeEd,updateDataTextRuns[updateIndex].st===updateDataTextRuns[updateIndex].ed&&updateIndex++);const pendingTextRun={st:Math.min(updateEd,removeEd),ed:Math.max(updateEd,removeEd),ts:updateEd<removeEd?{...removeStyle}:{...updateStyle},sId:updateEd<removeEd?sId:void 0};pending=pendingTextRun.ed>pendingTextRun.st?pendingTextRun:null}}pushPendingAndReturnStatus();const tempTopTextRun=newUpdateTextRuns[newUpdateTextRuns.length-1],updateLastTextRun=updateDataTextRuns[updateLength-1],removeLastTextRun=removeTextRuns[removeLength-1];return tempTopTextRun.ed!==Math.max(updateLastTextRun.ed,removeLastTextRun.ed)&&(updateLastTextRun.ed>removeLastTextRun.ed?newUpdateTextRuns.push(updateLastTextRun):newUpdateTextRuns.push(removeLastTextRun)),normalizeTextRuns(newUpdateTextRuns)}__name(coverTextRuns,"coverTextRuns");function updateParagraphs(body,updateBody,textLength,currentIndex,coverType){const{paragraphs}=body,{paragraphs:updateDataParagraphs}=updateBody;if(paragraphs==null||updateDataParagraphs==null)return;const removeParagraphs=deleteParagraphs(body,textLength,currentIndex);if(coverType!==UpdateDocsAttributeType.REPLACE){const newUpdateParagraphs=[];for(const updateParagraph of updateDataParagraphs){const{startIndex:updateStartIndex,paragraphStyle:updateParagraphStyle,bullet:updateBullet}=updateParagraph;let splitUpdateParagraphs=[];for(const removeParagraph of removeParagraphs){const{startIndex:removeStartIndex,paragraphStyle:removeParagraphStyle,bullet:removeBullet}=removeParagraph;let newParagraphStyle,newBullet;if(coverType===UpdateDocsAttributeType.COVER?(newParagraphStyle={...removeParagraphStyle,...updateParagraphStyle},newBullet={listId:"",listType:PresetListType.BULLET_LIST,nestingLevel:0,textStyle:{},...removeBullet,...updateBullet}):(newParagraphStyle={...updateParagraphStyle,...removeParagraphStyle},newBullet={listId:"",listType:PresetListType.BULLET_LIST,nestingLevel:0,textStyle:{},...updateBullet,...removeBullet}),updateStartIndex===removeStartIndex){splitUpdateParagraphs.push({startIndex:updateStartIndex,paragraphStyle:newParagraphStyle,bullet:newBullet});break}}newUpdateParagraphs.push(...splitUpdateParagraphs),splitUpdateParagraphs=[]}updateBody.paragraphs=newUpdateParagraphs}return insertParagraphs(body,updateBody,textLength,currentIndex),removeParagraphs}__name(updateParagraphs,"updateParagraphs");function updateSectionBreaks(body,updateBody,textLength,currentIndex,coverType){const{sectionBreaks}=body,{sectionBreaks:updateDataSectionBreaks}=updateBody;if(sectionBreaks==null||updateDataSectionBreaks==null)return;const removeSectionBreaks=deleteSectionBreaks(body,textLength,currentIndex);if(coverType!==UpdateDocsAttributeType.REPLACE){const newUpdateSectionBreaks=[];for(const updateSectionBreak of updateDataSectionBreaks){const{startIndex:updateStartIndex}=updateSectionBreak;let splitUpdateSectionBreaks=[];for(const removeSectionBreak of removeSectionBreaks){const{startIndex:removeStartIndex}=removeSectionBreak;if(updateStartIndex===removeStartIndex){coverType===UpdateDocsAttributeType.COVER?splitUpdateSectionBreaks.push({...removeSectionBreak,...updateSectionBreak}):splitUpdateSectionBreaks.push({...updateSectionBreak,...removeSectionBreak});break}}newUpdateSectionBreaks.push(...splitUpdateSectionBreaks),splitUpdateSectionBreaks=[]}updateBody.sectionBreaks=newUpdateSectionBreaks}return insertParagraphs(body,updateBody,textLength,currentIndex),removeSectionBreaks}__name(updateSectionBreaks,"updateSectionBreaks");function updateCustomBlocks(body,updateBody,textLength,currentIndex,coverType){const{customBlocks}=body,{customBlocks:updateDataCustomBlocks}=updateBody;if(customBlocks==null||updateDataCustomBlocks==null)return;const removeCustomBlocks=deleteCustomBlocks(body,textLength,currentIndex);if(coverType!==UpdateDocsAttributeType.REPLACE){const newUpdateCustomBlocks=[];for(const updateCustomBlock of updateDataCustomBlocks){const{startIndex:updateStartIndex}=updateCustomBlock;let splitUpdateCustomBlocks=[];for(const removeCustomBlock of removeCustomBlocks){const{startIndex:removeStartIndex}=removeCustomBlock;if(updateStartIndex===removeStartIndex){coverType===UpdateDocsAttributeType.COVER?splitUpdateCustomBlocks.push({...removeCustomBlock,...updateCustomBlock}):splitUpdateCustomBlocks.push({...updateCustomBlock,...removeCustomBlock});break}}newUpdateCustomBlocks.push(...splitUpdateCustomBlocks),splitUpdateCustomBlocks=[]}updateBody.customBlocks=newUpdateCustomBlocks}return insertCustomBlocks(body,updateBody,textLength,currentIndex),removeCustomBlocks}__name(updateCustomBlocks,"updateCustomBlocks");function updateTables(body,updateBody,textLength,currentIndex,coverType){const{tables}=body,{tables:updateDataTables}=updateBody;if(tables==null||updateDataTables==null)return;const removeTables=deleteTables(body,textLength,currentIndex);if(coverType!==UpdateDocsAttributeType.REPLACE){const newUpdateTables=[];for(const updateTable of updateDataTables){const{startIndex:updateStartIndex,endIndex:updateEndIndex}=updateTable;let splitUpdateTables=[];for(const removeTable of removeTables){const{startIndex:removeStartIndex,endIndex:removeEndIndex}=removeTable;if(removeStartIndex>=updateStartIndex&&removeEndIndex<=updateEndIndex){coverType===UpdateDocsAttributeType.COVER?splitUpdateTables.push({...removeTable,...updateTable}):splitUpdateTables.push({...updateTable,...removeTable});break}}newUpdateTables.push(...splitUpdateTables),splitUpdateTables=[]}updateBody.tables=newUpdateTables}return insertTables(body,updateBody,textLength,currentIndex),removeTables}__name(updateTables,"updateTables");function updateCustomRanges(body,updateBody,textLength,currentIndex,coverType){body.customRanges||(body.customRanges=[]);const{customRanges}=body,{customRanges:updateDataCustomRanges}=updateBody;if(customRanges==null||updateDataCustomRanges==null)return;let removeCustomRanges=[];return coverType===UpdateDocsAttributeType.REPLACE&&(removeCustomRanges=deleteCustomRanges(body,textLength,currentIndex)),insertCustomRanges(body,updateBody,0,currentIndex),removeCustomRanges}__name(updateCustomRanges,"updateCustomRanges");function updateCustomDecorations(body,updateBody,textLength,currentIndex,coverType){body.customDecorations||(body.customDecorations=[]);let removeCustomDecorations=[];return coverType===UpdateDocsAttributeType.REPLACE&&(removeCustomDecorations=deleteCustomDecorations(body,textLength,currentIndex,!1)),insertCustomDecorations(body,updateBody,0,currentIndex),removeCustomDecorations}__name(updateCustomDecorations,"updateCustomDecorations");var SliceBodyType=(SliceBodyType2=>(SliceBodyType2[SliceBodyType2.copy=0]="copy",SliceBodyType2[SliceBodyType2.cut=1]="cut",SliceBodyType2))(SliceBodyType||{});function getBodySlice(body,startOffset,endOffset,returnEmptyTextRun=!1,type2=1){const{dataStream,textRuns=[],paragraphs=[],customBlocks=[],tables=[]}=body,docBody={dataStream:dataStream.slice(startOffset,endOffset)},newTextRuns=[];for(const textRun of textRuns){const clonedTextRun=Tools.deepClone(textRun),{st,ed}=clonedTextRun;Tools.hasIntersectionBetweenTwoRanges(st,ed,startOffset,endOffset)&&(startOffset>=st&&startOffset<=ed?newTextRuns.push({...clonedTextRun,st:startOffset,ed:Math.min(endOffset,ed)}):endOffset>=st&&endOffset<=ed?newTextRuns.push({...clonedTextRun,st:Math.max(startOffset,st),ed:endOffset}):newTextRuns.push(clonedTextRun))}newTextRuns.length?docBody.textRuns=newTextRuns.map(tr=>{const{st,ed}=tr;return{...tr,st:st-startOffset,ed:ed-startOffset}}):returnEmptyTextRun&&(docBody.textRuns=[{st:0,ed:endOffset-startOffset,ts:{}}]);const newTables=[];for(const table of tables){const clonedTable=Tools.deepClone(table),{startIndex,endIndex}=clonedTable;startIndex>=startOffset&&endIndex<=endOffset&&newTables.push({...clonedTable,startIndex:startIndex-startOffset,endIndex:endIndex-startOffset})}newTables.length&&(docBody.tables=newTables);const newParagraphs=[];for(const paragraph of paragraphs){const{startIndex}=paragraph;startIndex>=startOffset&&startIndex<=endOffset&&newParagraphs.push(Tools.deepClone(paragraph))}newParagraphs.length&&(docBody.paragraphs=newParagraphs.map(p=>({...p,startIndex:p.startIndex-startOffset}))),type2===1&&(docBody.customDecorations=getCustomDecorationSlice(body,startOffset,endOffset));const{customRanges}=getCustomRangeSlice(body,startOffset,endOffset);docBody.customRanges=customRanges;const newCustomBlocks=[];for(const block of customBlocks){const{startIndex}=block;startIndex>=startOffset&&startIndex<=endOffset&&newCustomBlocks.push(Tools.deepClone(block))}return newCustomBlocks.length&&(docBody.customBlocks=newCustomBlocks.map(b=>({...b,startIndex:b.startIndex-startOffset}))),docBody}__name(getBodySlice,"getBodySlice");function normalizeBody(body){const{dataStream,textRuns,paragraphs,customRanges,customDecorations,tables}=body;let leftOffset=0,rightOffset=0;customRanges==null||customRanges.forEach(range=>{range.startIndex<0&&(leftOffset=Math.max(leftOffset,-range.startIndex)),range.endIndex>dataStream.length-1&&(rightOffset=Math.max(rightOffset,range.endIndex-dataStream.length+1))});const newData=`${DataStreamTreeTokenType.CUSTOM_RANGE_START.repeat(leftOffset)}${dataStream}${DataStreamTreeTokenType.CUSTOM_RANGE_END.repeat(rightOffset)}`;return textRuns&&(textRuns[0]&&(textRuns[0].st=textRuns[0].st-leftOffset),textRuns[textRuns.length-1]&&(textRuns[textRuns.length-1].ed=textRuns[textRuns.length-1].ed+rightOffset)),textRuns==null||textRuns.forEach(textRun=>{textRun.st+=leftOffset,textRun.ed+=leftOffset}),paragraphs==null||paragraphs.forEach(p=>{p.startIndex+=leftOffset}),customRanges==null||customRanges.forEach(range=>{range.startIndex+=leftOffset,range.endIndex+=leftOffset}),customDecorations==null||customDecorations.forEach(d=>{d.startIndex+=leftOffset,d.endIndex+=rightOffset}),tables==null||tables.forEach(table=>{table.startIndex+=leftOffset,table.endIndex+=rightOffset}),{...body,dataStream:newData,textRuns,paragraphs,customRanges,customDecorations,tables}}__name(normalizeBody,"normalizeBody");function getCustomRangeSlice(body,startOffset,endOffset){const{customRanges=[]}=body;let leftOffset=0,rightOffset=0;const relativeCustomRanges=customRanges.filter(customRange=>Math.max(customRange.startIndex,startOffset)<=Math.min(customRange.endIndex,endOffset-1)).map(range=>({...range,startIndex:range.startIndex,endIndex:range.endIndex}));if(relativeCustomRanges.length){relativeCustomRanges.forEach(customRange=>{customRange.startIndex<startOffset&&(leftOffset+=1),customRange.endIndex>endOffset-1&&(rightOffset+=1)});for(let i=0;i<leftOffset;i++){const range=relativeCustomRanges[i];range.startIndex=startOffset-leftOffset+i}if(rightOffset){const sorted=[...relativeCustomRanges].sort((pre,aft)=>aft.endIndex-pre.endIndex);for(let i=0;i<rightOffset;i++){const range=sorted[i];range.endIndex=endOffset+rightOffset-i-1}}}return{customRanges:relativeCustomRanges.map(range=>({...range,startIndex:range.startIndex-startOffset,endIndex:range.endIndex-startOffset})),leftOffset,rightOffset}}__name(getCustomRangeSlice,"getCustomRangeSlice");function getCustomDecorationSlice(body,startOffset,endOffset){const{customDecorations=[]}=body,customDecorationSlice=[];return customDecorations.forEach(range=>{if(Math.max(range.startIndex,startOffset)<=Math.min(range.endIndex,endOffset-1)){const copy=Tools.deepClone(range);customDecorationSlice.push({...copy,startIndex:Math.max(copy.startIndex-startOffset,0),endIndex:Math.min(copy.endIndex,endOffset)-startOffset})}}),customDecorationSlice}__name(getCustomDecorationSlice,"getCustomDecorationSlice");function composeBody(thisBody,otherBody,coverType=UpdateDocsAttributeType.COVER){if(otherBody.dataStream!=="")throw new Error("Cannot compose other body with non-empty dataStream");const retBody={dataStream:thisBody.dataStream},{textRuns:thisTextRuns=[],paragraphs:thisParagraphs=[]}=thisBody,{textRuns:otherTextRuns=[],paragraphs:otherParagraphs=[]}=otherBody,textRuns=coverTextRuns(otherTextRuns,thisTextRuns,coverType);textRuns.length&&(retBody.textRuns=textRuns);const paragraphs=[];let thisIndex=0,otherIndex=0;for(;thisIndex<thisParagraphs.length&&otherIndex<otherParagraphs.length;){const thisParagraph=thisParagraphs[thisIndex],otherParagraph=otherParagraphs[otherIndex],{startIndex:thisStart}=thisParagraph,{startIndex:otherStart}=otherParagraph;thisStart===otherStart?(paragraphs.push(Tools.deepMerge(thisParagraph,otherParagraph)),thisIndex++,otherIndex++):thisStart<otherStart?(paragraphs.push(Tools.deepClone(thisParagraph)),thisIndex++):(paragraphs.push(Tools.deepClone(otherParagraph)),otherIndex++)}return thisIndex<thisParagraphs.length&&paragraphs.push(...thisParagraphs.slice(thisIndex)),otherIndex<otherParagraphs.length&&paragraphs.push(...otherParagraphs.slice(otherIndex)),paragraphs.length&&(retBody.paragraphs=paragraphs),retBody}__name(composeBody,"composeBody");function isUselessRetainAction(action){const{body}=action;if(body==null)return!0;const{textRuns=[],paragraphs=[]}=body;return textRuns.length===0&&paragraphs.length===0}__name(isUselessRetainAction,"isUselessRetainAction");function getEmptySnapshot$1(unitID=Tools.generateRandomId(6),locale=LocaleType.EN_US,title=""){return{id:unitID,locale,title,body:{dataStream:`\r
8
+ `,textRuns:[],paragraphs:[{startIndex:0,paragraphStyle:{spaceAbove:{v:5},lineSpacing:1,spaceBelow:{v:0}}}],sectionBreaks:[{startIndex:1}]},documentStyle:{pageSize:{width:793.3333333333334,height:1122.6666666666667},marginTop:50,marginBottom:50,marginRight:40,marginLeft:40,renderConfig:{vertexAngle:0,centerAngle:0}},settings:{}}}__name(getEmptySnapshot$1,"getEmptySnapshot$1");var dist$1={},json1_release={},deepEqual$1={};Object.defineProperty(deepEqual$1,"__esModule",{value:!0});function eqObj(a,b){if(Array.isArray(b))return!1;for(let k in a)if(!deepEqual(a[k],b[k]))return!1;for(let k in b)if(a[k]===void 0)return!1;return!0}__name(eqObj,"eqObj");function eqArr(a,b){if(!Array.isArray(b)||a.length!==b.length)return!1;for(let i=0;i<a.length;i++)if(!deepEqual(a[i],b[i]))return!1;return!0}__name(eqArr,"eqArr");function deepEqual(a,b){return a===b?!0:a===null||b===null||typeof a!="object"||typeof b!="object"?!1:Array.isArray(a)?eqArr(a,b):eqObj(a,b)}__name(deepEqual,"deepEqual"),deepEqual$1.default=deepEqual;var deepClone$1={};Object.defineProperty(deepClone$1,"__esModule",{value:!0});function deepClone(old){if(old===null)return null;if(Array.isArray(old))return old.map(deepClone);if(typeof old=="object"){const o={};for(let k in old)o[k]=deepClone(old[k]);return o}else return old}__name(deepClone,"deepClone"),deepClone$1.default=deepClone;var cursor={};(function(exports3){Object.defineProperty(exports3,"__esModule",{value:!0}),exports3.eachChildOf=exports3.advancer=exports3.readCursor=exports3.writeCursor=exports3.WriteCursor=exports3.ReadCursor=exports3.isValidPathItem=void 0;function assert(pred,msg){if(!pred)throw new Error(msg)}__name(assert,"assert");const isObject2=__name(o=>o!=null&&typeof o=="object"&&!Array.isArray(o),"isObject"),isGreaterKey=__name((a,b)=>typeof a==typeof b?a>b:typeof a=="string"&&typeof b=="number","isGreaterKey");function copyAll(c,w){for(let _k2 in c){const k=_k2;w.write(k,c[k])}}__name(copyAll,"copyAll"),exports3.isValidPathItem=k=>typeof k=="number"||typeof k=="string"&&k!=="__proto__";const _Cursor=class _Cursor{constructor(op=null){this.parents=[],this.indexes=[],this.lcIdx=-1,this.idx=-1,this.container=op}ascend(){assert(this.parents.length===this.indexes.length/2),this.idx===0?this.parents.length?(this.lcIdx=this.indexes.pop(),this.container=this.parents.pop(),this.idx=this.indexes.pop()):(this.lcIdx=0,this.idx=-1):(assert(this.idx>0),this.idx--,isObject2(this.container[this.idx])&&this.idx--)}getPath(){const path=[];let c=this.container,p=this.parents.length-1,i=this.idx;for(;i>=0;)path.unshift(c[i]),i===0?(i=this.indexes[p*2],c=this.parents[p--]):i-=isObject2(c[i-1])?2:1;return path}};__name(_Cursor,"Cursor");let Cursor=_Cursor;const _ReadCursor=class _ReadCursor extends Cursor{get(){return this.container?this.container.slice(this.idx+1):null}getKey(){return assert(this.container!=null,"Invalid call to getKey before cursor descended"),this.container[this.idx]}getComponent(){let c;return this.container&&this.container.length>this.idx+1&&isObject2(c=this.container[this.idx+1])?c:null}descendFirst(){let i=this.idx+1;if(!this.container||i>=this.container.length||isObject2(this.container[i])&&i+1>=this.container.length)return!1;isObject2(this.container[i])&&i++;const firstChild=this.container[i];return Array.isArray(firstChild)?(this.indexes.push(this.idx),this.parents.push(this.container),this.indexes.push(i),this.idx=0,this.container=firstChild):this.idx=i,!0}nextSibling(){if(assert(this.parents.length===this.indexes.length/2),this.idx>0||this.parents.length===0)return!1;const i=this.indexes[this.indexes.length-1]+1,c=this.parents[this.parents.length-1];return i>=c.length?!1:(assert(!isNaN(i)),this.indexes[this.indexes.length-1]=i,this.container=c[i],!0)}_init(_container,_idx,_parents,_indexes){this.container=_container,this.idx=_idx,this.parents=_parents.slice(),this.indexes=_indexes.slice()}clone(){const c=new _ReadCursor;return c._init(this.container,this.idx,this.parents,this.indexes),c}*[Symbol.iterator](){if(this.descendFirst()){do yield this.getKey();while(this.nextSibling());this.ascend()}}traverse(w,fn){const c=this.getComponent();c&&fn(c,w);for(const key of this)w&&w.descend(key),this.traverse(w,fn),w&&w.ascend()}eachPick(w,fn){this.traverse(w,(c,w2)=>{c.p!=null&&fn(c.p,w2)})}eachDrop(w,fn){this.traverse(w,(c,w2)=>{c.d!=null&&fn(c.d,w2)})}};__name(_ReadCursor,"ReadCursor");let ReadCursor=_ReadCursor;exports3.ReadCursor=ReadCursor;const _WriteCursor=class _WriteCursor extends Cursor{constructor(op=null){super(op),this.pendingDescent=[],this._op=op}flushDescent(){assert(this.parents.length===this.indexes.length/2),this.container===null&&(this._op=this.container=[]);for(let j=0;j<this.pendingDescent.length;j++){const k=this.pendingDescent[j];let i=this.idx+1;if(i<this.container.length&&isObject2(this.container[i])&&i++,assert(i===this.container.length||!isObject2(this.container[i])),i===this.container.length)this.container.push(k),this.idx=i;else if(this.container[i]===k)this.idx=i;else{if(!Array.isArray(this.container[i])){const oldChild=this.container.splice(i,this.container.length-i);this.container.push(oldChild),this.lcIdx>-1&&(this.lcIdx=i)}for(this.indexes.push(this.idx),this.parents.push(this.container),this.lcIdx!==-1&&(assert(isGreaterKey(k,this.container[this.lcIdx][0])),i=this.lcIdx+1,this.lcIdx=-1);i<this.container.length&&isGreaterKey(k,this.container[i][0]);)i++;if(this.indexes.push(i),this.idx=0,i<this.container.length&&this.container[i][0]===k)this.container=this.container[i];else{const child=[k];this.container.splice(i,0,child),this.container=child}}}this.pendingDescent.length=0}reset(){this.lcIdx=-1}getComponent(){this.flushDescent();const i=this.idx+1;if(i<this.container.length&&isObject2(this.container[i]))return this.container[i];{const component={};return this.container.splice(i,0,component),component}}write(key,value){const component=this.getComponent();assert(component[key]==null||component[key]===value,"Internal consistency error: Overwritten component. File a bug"),component[key]=value}get(){return this._op}descend(key){if(!exports3.isValidPathItem(key))throw Error("Invalid JSON key");this.pendingDescent.push(key)}descendPath(path){return this.pendingDescent.push(...path),this}ascend(){this.pendingDescent.length?this.pendingDescent.pop():super.ascend()}mergeTree(data,mergeFn=copyAll){if(data===null)return;if(assert(Array.isArray(data)),data===this._op)throw Error("Cannot merge into my own tree");const _lcIdx=this.lcIdx,oldDepth=this.parents.length;let depth=0;for(let i=0;i<data.length;i++){const c=data[i];typeof c=="string"||typeof c=="number"?(depth++,this.descend(c)):Array.isArray(c)?this.mergeTree(c,mergeFn):typeof c=="object"&&mergeFn(c,this)}for(;depth--;)this.ascend();this.lcIdx=this.parents.length===oldDepth?_lcIdx:-1}at(path,fn){this.descendPath(path),fn(this);for(let i=0;i<path.length;i++)this.ascend();return this}writeAtPath(path,key,value){return this.at(path,()=>this.write(key,value)),this.reset(),this}writeMove(path1,path2,slot=0){return this.writeAtPath(path1,"p",slot).writeAtPath(path2,"d",slot)}getPath(){const path=super.getPath();return path.push(...this.pendingDescent),path}};__name(_WriteCursor,"WriteCursor");let WriteCursor=_WriteCursor;exports3.WriteCursor=WriteCursor,exports3.writeCursor=()=>new WriteCursor,exports3.readCursor=op=>new ReadCursor(op);function advancer(r,listMap,listAdv){let didDescend,valid;valid=didDescend=r?r.descendFirst():!1;function adv(ktarget){let k2_;for(;valid;){const k2=k2_=r.getKey();if(ktarget!=null){let skip=!1;if(listMap&&typeof k2=="number"&&(k2_=listMap(k2,r.getComponent()),k2_<0&&(k2_=~k2_,skip=!0)),isGreaterKey(k2_,ktarget))return null;if(k2_===ktarget&&!skip)return r}listAdv&&typeof k2_=="number"&&listAdv(k2_,r.getComponent()),valid=r.nextSibling()}return null}return __name(adv,"adv"),adv.end=()=>{didDescend&&r.ascend()},adv}__name(advancer,"advancer"),exports3.advancer=advancer;function eachChildOf(r1,r2,fn){let hasChild1,descended1,hasChild2,descended2;for(hasChild1=descended1=r1&&r1.descendFirst(),hasChild2=descended2=r2&&r2.descendFirst();hasChild1||hasChild2;){let k1=hasChild1?r1.getKey():null,k2=hasChild2?r2.getKey():null;k1!==null&&k2!==null&&(isGreaterKey(k2,k1)?k2=null:k1!==k2&&(k1=null)),fn(k1==null?k2:k1,k1!=null?r1:null,k2!=null?r2:null),k1!=null&&hasChild1&&(hasChild1=r1.nextSibling()),k2!=null&&hasChild2&&(hasChild2=r2.nextSibling())}descended1&&r1.ascend(),descended2&&r2.ascend()}__name(eachChildOf,"eachChildOf"),exports3.eachChildOf=eachChildOf})(cursor);var types={};(function(exports3){Object.defineProperty(exports3,"__esModule",{value:!0}),exports3.ConflictType=void 0,function(ConflictType){ConflictType[ConflictType.RM_UNEXPECTED_CONTENT=1]="RM_UNEXPECTED_CONTENT",ConflictType[ConflictType.DROP_COLLISION=2]="DROP_COLLISION",ConflictType[ConflictType.BLACKHOLE=3]="BLACKHOLE"}(exports3.ConflictType||(exports3.ConflictType={}))})(types);var dist={},unicount={},hasRequiredUnicount;function requireUnicount(){return hasRequiredUnicount||(hasRequiredUnicount=1,Object.defineProperty(unicount,"__esModule",{value:!0}),unicount.uniToStrPos=unicount.strPosToUni=void 0,unicount.strPosToUni=(s,strOffset=s.length)=>{let pairs=0,i=0;for(;i<strOffset;i++){const code=s.charCodeAt(i);code>=55296&&code<=57343&&(pairs++,i++)}if(i!==strOffset)throw Error("Invalid offset - splits unicode bytes");return i-pairs},unicount.uniToStrPos=(s,uniOffset)=>{let pos=0;for(;uniOffset>0;uniOffset--){const code=s.charCodeAt(pos);pos+=code>=55296&&code<=57343?2:1}return pos}),unicount}__name(requireUnicount,"requireUnicount");var type={},hasRequiredType;function requireType(){return hasRequiredType||(hasRequiredType=1,function(exports3){Object.defineProperty(exports3,"__esModule",{value:!0}),exports3.uniSlice=exports3.dlen=exports3.eachOp=void 0;const unicount_1=requireUnicount(),checkOp=__name(op=>{if(!Array.isArray(op))throw Error("Op must be an array of components");let last=null;for(let i=0;i<op.length;i++){const c=op[i];switch(typeof c){case"object":if(typeof c.d!="number"&&typeof c.d!="string")throw Error("Delete must be number or string");if(exports3.dlen(c.d)<=0)throw Error("Deletes must not be empty");break;case"string":if(!(c.length>0))throw Error("Inserts cannot be empty");break;case"number":if(!(c>0))throw Error("Skip components must be >0");if(typeof last=="number")throw Error("Adjacent skip components should be combined");break}last=c}if(typeof last=="number")throw Error("Op has a trailing skip")},"checkOp");function eachOp(op,fn){let prePos=0,postPos=0;for(let i=0;i<op.length;i++){const c=op[i];switch(fn(c,prePos,postPos),typeof c){case"object":prePos+=exports3.dlen(c.d);break;case"string":postPos+=unicount_1.strPosToUni(c);break;case"number":prePos+=c,postPos+=c;break}}}__name(eachOp,"eachOp"),exports3.eachOp=eachOp;function mapOp(op,fn){const newOp=[],append=makeAppend(newOp);return eachOp(op,(c,prePos,postPos)=>{append(fn(c,prePos,postPos))}),trim(newOp)}__name(mapOp,"mapOp");const id=__name(x=>x,"id"),normalize=__name(op=>mapOp(op,id),"normalize");exports3.dlen=d=>typeof d=="number"?d:unicount_1.strPosToUni(d);const makeAppend=__name(op=>component=>{if(!(!component||component.d===0||component.d===""))if(op.length===0)op.push(component);else if(typeof component==typeof op[op.length-1])if(typeof component=="object"){const last=op[op.length-1];last.d=typeof last.d=="string"&&typeof component.d=="string"?last.d+component.d:exports3.dlen(last.d)+exports3.dlen(component.d)}else op[op.length-1]+=component;else op.push(component)},"makeAppend"),componentLength=__name(c=>typeof c=="number"?c:typeof c=="string"?unicount_1.strPosToUni(c):typeof c.d=="number"?c.d:unicount_1.strPosToUni(c.d),"componentLength");exports3.uniSlice=(s,startUni,endUni)=>{const start=unicount_1.uniToStrPos(s,startUni),end=endUni==null?1/0:unicount_1.uniToStrPos(s,endUni);return s.slice(start,end)};const dslice=__name((d,start,end)=>typeof d=="number"?end==null?d-start:Math.min(d,end)-start:exports3.uniSlice(d,start,end),"dslice"),makeTake=__name(op=>{let idx=0,offset=0;return{take:__name((n,indivisableField)=>{if(idx===op.length)return n===-1?null:n;const c=op[idx];let part;if(typeof c=="number")return n===-1||c-offset<=n?(part=c-offset,++idx,offset=0,part):(offset+=n,n);if(typeof c=="string"){if(n===-1||indivisableField==="i"||unicount_1.strPosToUni(c.slice(offset))<=n)return part=c.slice(offset),++idx,offset=0,part;{const offset2=offset+unicount_1.uniToStrPos(c.slice(offset),n);return part=c.slice(offset,offset2),offset=offset2,part}}else{if(n===-1||indivisableField==="d"||exports3.dlen(c.d)-offset<=n)return part={d:dslice(c.d,offset)},++idx,offset=0,part;{let result=dslice(c.d,offset,offset+n);return offset+=n,{d:result}}}},"take"),peek:__name(()=>op[idx],"peek")}},"makeTake"),trim=__name(op=>(op.length>0&&typeof op[op.length-1]=="number"&&op.pop(),op),"trim");function transform(op1,op2,side){if(side!=="left"&&side!=="right")throw Error("side ("+side+") must be 'left' or 'right'");checkOp(op1),checkOp(op2);const newOp=[],append=makeAppend(newOp),{take,peek}=makeTake(op1);for(let i=0;i<op2.length;i++){const c2=op2[i];let length,c1;switch(typeof c2){case"number":for(length=c2;length>0;)c1=take(length,"i"),append(c1),typeof c1!="string"&&(length-=componentLength(c1));break;case"string":side==="left"&&typeof peek()=="string"&&append(take(-1)),append(unicount_1.strPosToUni(c2));break;case"object":for(length=exports3.dlen(c2.d);length>0;)switch(c1=take(length,"i"),typeof c1){case"number":length-=c1;break;case"string":append(c1);break;case"object":length-=exports3.dlen(c1.d)}break}}let c;for(;c=take(-1);)append(c);return trim(newOp)}__name(transform,"transform");function compose(op1,op2){checkOp(op1),checkOp(op2);const result=[],append=makeAppend(result),{take}=makeTake(op1);for(let i=0;i<op2.length;i++){const component=op2[i];let length,chunk;switch(typeof component){case"number":for(length=component;length>0;)chunk=take(length,"d"),append(chunk),typeof chunk!="object"&&(length-=componentLength(chunk));break;case"string":append(component);break;case"object":length=exports3.dlen(component.d);let offset=0;for(;offset<length;)switch(chunk=take(length-offset,"d"),typeof chunk){case"number":append({d:dslice(component.d,offset,offset+chunk)}),offset+=chunk;break;case"string":offset+=unicount_1.strPosToUni(chunk);break;case"object":append(chunk)}break}}let c;for(;c=take(-1);)append(c);return trim(result)}__name(compose,"compose");const transformPosition=__name((cursor2,op)=>{let pos=0;for(let i=0;i<op.length&&cursor2>pos;i++){const c=op[i];switch(typeof c){case"number":{pos+=c;break}case"string":const offset=unicount_1.strPosToUni(c);pos+=offset,cursor2+=offset;break;case"object":cursor2-=Math.min(exports3.dlen(c.d),cursor2-pos);break}}return cursor2},"transformPosition"),transformSelection=__name((selection,op)=>typeof selection=="number"?transformPosition(selection,op):selection.map(s=>transformPosition(s,op)),"transformSelection");function makeInvertible(op,doc,ropeImpl){return mapOp(op,(c,prePos)=>typeof c=="object"&&typeof c.d=="number"?{d:ropeImpl.slice(doc,prePos,prePos+c.d)}:c)}__name(makeInvertible,"makeInvertible");function invert(op){return mapOp(op,c=>{switch(typeof c){case"object":if(typeof c.d=="number")throw Error("Cannot invert text op: Deleted characters missing from operation. makeInvertible must be called first.");return c.d;case"string":return{d:c};case"number":return c}})}__name(invert,"invert");function stripInvertible(op){return mapOp(op,c=>typeof c=="object"&&typeof c.d=="string"?{d:unicount_1.strPosToUni(c.d)}:c)}__name(stripInvertible,"stripInvertible");function isInvertible(op){let invertible=!0;return eachOp(op,c=>{typeof c=="object"&&typeof c.d=="number"&&(invertible=!1)}),invertible}__name(isInvertible,"isInvertible");function makeType(ropeImpl){return{name:"text-unicode",uri:"http://sharejs.org/types/text-unicode",trim,normalize,checkOp,create(initial=""){if(typeof initial!="string")throw Error("Initial data must be a string");return ropeImpl.create(initial)},apply(str,op){checkOp(op);const builder=ropeImpl.builder(str);for(let i=0;i<op.length;i++){const component=op[i];switch(typeof component){case"number":builder.skip(component);break;case"string":builder.append(component);break;case"object":builder.del(exports3.dlen(component.d));break}}return builder.build()},transform,compose,transformPosition,transformSelection,isInvertible,makeInvertible(op,doc){return makeInvertible(op,doc,ropeImpl)},stripInvertible,invert,invertWithDoc(op,doc){return invert(makeInvertible(op,doc,ropeImpl))},isNoop:__name(op=>op.length===0,"isNoop")}}__name(makeType,"makeType"),exports3.default=makeType}(type)),type}__name(requireType,"requireType");var api={},hasRequiredApi;function requireApi(){if(hasRequiredApi)return api;hasRequiredApi=1,Object.defineProperty(api,"__esModule",{value:!0});const type_1=requireType(),unicount_1=requireUnicount();function api$1(getSnapshot,submitOp){return{get:getSnapshot,getLength(){return getSnapshot().length},insert(pos,text,callback){const uniPos=unicount_1.strPosToUni(getSnapshot(),pos);return submitOp([uniPos,text],callback)},remove(pos,lengthOrContent,callback){const uniPos=unicount_1.strPosToUni(getSnapshot(),pos);return submitOp([uniPos,{d:lengthOrContent}],callback)},_onOp(op){type_1.eachOp(op,(component,prePos,postPos)=>{switch(typeof component){case"string":this.onInsert&&this.onInsert(postPos,component);break;case"object":const dl=type_1.dlen(component.d);this.onRemove&&this.onRemove(postPos,dl)}})},onInsert:null,onRemove:null}}return __name(api$1,"api$1"),api.default=api$1,api$1.provides={text:!0},api}__name(requireApi,"requireApi");var hasRequiredDist;function requireDist(){return hasRequiredDist||(hasRequiredDist=1,function(exports3){var __createBinding=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k),Object.defineProperty(o,k2,{enumerable:!0,get:__name(function(){return m[k]},"get")})}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__setModuleDefault=commonjsGlobal&&commonjsGlobal.__setModuleDefault||(Object.create?function(o,v){Object.defineProperty(o,"default",{enumerable:!0,value:v})}:function(o,v){o.default=v}),__importStar=commonjsGlobal&&commonjsGlobal.__importStar||function(mod){if(mod&&mod.__esModule)return mod;var result={};if(mod!=null)for(var k in mod)Object.hasOwnProperty.call(mod,k)&&__createBinding(result,mod,k);return __setModuleDefault(result,mod),result},__importDefault=commonjsGlobal&&commonjsGlobal.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports3,"__esModule",{value:!0}),exports3.type=exports3.remove=exports3.insert=void 0;const unicount_1=requireUnicount(),type_1=__importStar(requireType()),api_1=__importDefault(requireApi()),ropeImplUnicodeString={create(s){return s},toString(s){return s},builder(oldDoc){if(typeof oldDoc!="string")throw Error("Invalid document snapshot: "+oldDoc);const newDoc=[];return{skip(n){let offset=unicount_1.uniToStrPos(oldDoc,n);if(offset>oldDoc.length)throw Error("The op is too long for this document");newDoc.push(oldDoc.slice(0,offset)),oldDoc=oldDoc.slice(offset)},append(s){newDoc.push(s)},del(n){oldDoc=oldDoc.slice(unicount_1.uniToStrPos(oldDoc,n))},build(){return newDoc.join("")+oldDoc}}},slice:type_1.uniSlice},textString=type_1.default(ropeImplUnicodeString),type2=Object.assign(Object.assign({},textString),{api:api_1.default});exports3.type=type2,exports3.insert=(pos,text)=>text.length===0?[]:pos===0?[text]:[pos,text],exports3.remove=(pos,textOrLen)=>type_1.dlen(textOrLen)===0?[]:pos===0?[{d:textOrLen}]:[pos,{d:textOrLen}];var type_2=requireType();Object.defineProperty(exports3,"makeType",{enumerable:!0,get:__name(function(){return type_2.default},"get")})}(dist)),dist}__name(requireDist,"requireDist"),function(exports3){var __importDefault=commonjsGlobal&&commonjsGlobal.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports3,"__esModule",{value:!0}),exports3.editOp=exports3.replaceOp=exports3.insertOp=exports3.moveOp=exports3.removeOp=exports3.type=void 0;const deepEqual_js_1=__importDefault(deepEqual$1),deepClone_js_1=__importDefault(deepClone$1),cursor_js_1=cursor,types_js_1=types;function assert(pred,msg){if(!pred)throw new Error(msg)}__name(assert,"assert"),exports3.type={name:"json1",uri:"http://sharejs.org/types/JSONv1",readCursor:cursor_js_1.readCursor,writeCursor:cursor_js_1.writeCursor,create:__name(data=>data,"create"),isNoop:__name(op=>op==null,"isNoop"),setDebug(val){},registerSubtype,checkValidOp,normalize,apply,transformPosition,compose,tryTransform,transform,makeInvertible,invert,invertWithDoc,RM_UNEXPECTED_CONTENT:types_js_1.ConflictType.RM_UNEXPECTED_CONTENT,DROP_COLLISION:types_js_1.ConflictType.DROP_COLLISION,BLACKHOLE:types_js_1.ConflictType.BLACKHOLE,transformNoConflict:__name((op1,op2,side)=>transformWithConflictsPred(()=>!0,op1,op2,side),"transformNoConflict"),typeAllowingConflictsPred:__name(allowConflict=>Object.assign(Object.assign({},exports3.type),{transform:__name((op1,op2,side)=>transformWithConflictsPred(allowConflict,op1,op2,side),"transform")}),"typeAllowingConflictsPred")};const getComponent=__name(r=>r?r.getComponent():null,"getComponent");function isObject2(o){return o&&typeof o=="object"&&!Array.isArray(o)}__name(isObject2,"isObject");const shallowClone=__name(obj=>Array.isArray(obj)?obj.slice():obj!==null&&typeof obj=="object"?Object.assign({},obj):obj,"shallowClone"),hasPick=__name(c=>c&&(c.p!=null||c.r!==void 0),"hasPick"),hasDrop=__name(c=>c&&(c.d!=null||c.i!==void 0),"hasDrop");function removeChild(container,key){return assert(container!=null),typeof key=="number"?(assert(Array.isArray(container),"Invalid key - child is not an array"),(container=container.slice()).splice(key,1)):(assert(isObject2(container),"Invalid key - child is not an object"),delete(container=Object.assign({},container))[key]),container}__name(removeChild,"removeChild");function insertChildMut(container,key,value){return typeof key=="number"?(assert(container!=null,"Container is missing for key"),assert(Array.isArray(container),"Cannot use numerical key for object container"),assert(container.length>=key,"Cannot insert into out of bounds index"),container.splice(key,0,value)):(assert(isObject2(container),"Cannot insert into missing item"),assert(container[key]===void 0,"Trying to overwrite value at key. Your op needs to remove it first"),container[key]=value),value}__name(insertChildMut,"insertChildMut"),exports3.removeOp=(path,value=!0)=>cursor_js_1.writeCursor().writeAtPath(path,"r",value).get(),exports3.moveOp=(from,to)=>cursor_js_1.writeCursor().writeMove(from,to).get(),exports3.insertOp=(path,value)=>cursor_js_1.writeCursor().writeAtPath(path,"i",value).get(),exports3.replaceOp=(path,oldVal,newVal)=>cursor_js_1.writeCursor().at(path,w=>{w.write("r",oldVal),w.write("i",newVal)}).get(),exports3.editOp=(path,type2,subOp,preserveNoop=!1)=>cursor_js_1.writeCursor().at(path,w=>writeEdit(w,type2,subOp,preserveNoop)).get();const isValidKey=__name((container,key)=>container!=null&&(typeof key=="number"?Array.isArray(container):typeof container=="object"),"isValidKey"),maybeGetChild=__name((container,key)=>isValidKey(container,key)?container[key]:void 0,"maybeGetChild"),subtypes={};function registerSubtype(subtype){let _subtype=subtype.type?subtype.type:subtype;_subtype.name&&(subtypes[_subtype.name]=_subtype),_subtype.uri&&(subtypes[_subtype.uri]=_subtype)}__name(registerSubtype,"registerSubtype");const typeOrThrow=__name(name=>{const type2=subtypes[name];if(type2)return type2;throw Error("Missing type: "+name)},"typeOrThrow");registerSubtype(requireDist());const add=__name((a,b)=>a+b,"add");registerSubtype({name:"number",apply:add,compose:add,invert:__name(n=>-n,"invert"),transform:__name(a=>a,"transform")});const getEditType=__name(c=>c==null?null:c.et?typeOrThrow(c.et):c.es?subtypes["text-unicode"]:c.ena!=null?subtypes.number:null,"getEditType"),getEdit=__name(c=>c.es?c.es:c.ena!=null?c.ena:c.e,"getEdit"),writeEdit=__name((w,typeOrName,edit,preserveNoop=!1)=>{const[type2,name]=typeof typeOrName=="string"?[typeOrThrow(typeOrName),typeOrName]:[typeOrName,typeOrName.name];!preserveNoop&&type2.isNoop&&type2.isNoop(edit)||(name==="number"?w.write("ena",edit):name==="text-unicode"?w.write("es",edit):(w.write("et",name),w.write("e",edit)))},"writeEdit");function checkNonNegInteger(n){assert(typeof n=="number"),assert(n>=0),assert(n===(0|n))}__name(checkNonNegInteger,"checkNonNegInteger");function checkScalar(s){typeof s=="number"?checkNonNegInteger(s):assert(typeof s=="string")}__name(checkScalar,"checkScalar");function checkValidOp(op){if(op===null)return;const pickedSlots=new Set,droppedSlots=new Set,checkComponent=__name(e=>{let empty=!0,hasEdit=!1;for(let k in e){const v=e[k];if(empty=!1,assert(k==="p"||k==="r"||k==="d"||k==="i"||k==="e"||k==="es"||k==="ena"||k==="et","Invalid component item '"+k+"'"),k==="p")checkNonNegInteger(v),assert(!pickedSlots.has(v)),pickedSlots.add(v),assert(e.r===void 0);else if(k==="d")checkNonNegInteger(v),assert(!droppedSlots.has(v)),droppedSlots.add(v),assert(e.i===void 0);else if(k==="e"||k==="es"||k==="ena"){assert(!hasEdit),hasEdit=!0;const t=getEditType(e);assert(t,"Missing type in edit"),t.checkValidOp&&t.checkValidOp(getEdit(e))}}assert(!empty)},"checkComponent"),checkDescent=__name((descent,isRoot,removed)=>{if(!Array.isArray(descent))throw Error("Op must be null or a list");if(descent.length===0)throw Error("Empty descent");isRoot||checkScalar(descent[0]);let last=1,numDescents=0,lastKey=0;for(let i=0;i<descent.length;i++){const d=descent[i];if(assert(d!=null),Array.isArray(d)){const key=checkDescent(d,!1);if(numDescents){const t1=typeof lastKey,t2=typeof key;t1===t2?assert(lastKey<key,"descent keys are not in order"):assert(t1==="number"&&t2==="string")}lastKey=key,numDescents++,last=3}else typeof d=="object"?(assert(last===1,`Prev not scalar - instead ${last}`),checkComponent(d),last=2):(assert(last!==3),checkScalar(d),assert(cursor_js_1.isValidPathItem(d),"Invalid path key"),last=1)}return assert(numDescents!==1,"Operation makes multiple descents. Remove some []"),assert(last===2||last===3),descent[0]},"checkDescent");checkDescent(op,!0),assert(pickedSlots.size===droppedSlots.size,"Mismatched picks and drops in op");for(let i=0;i<pickedSlots.size;i++)assert(pickedSlots.has(i)),assert(droppedSlots.has(i))}__name(checkValidOp,"checkValidOp");function normalize(op){let nextSlot=0,slotMap=[];const w=cursor_js_1.writeCursor();return w.mergeTree(op,(c,w2)=>{const t=getEditType(c);if(t){const op2=getEdit(c);writeEdit(w2,t,t.normalize?t.normalize(op2):op2)}for(const k of["r","p","i","d"])if(c[k]!==void 0){const r=k==="p"||k==="d"?(inSlot=c[k],slotMap[inSlot]==null&&(slotMap[inSlot]=nextSlot++),slotMap[inSlot]):c[k];w2.write(k,r)}var inSlot}),w.get()}__name(normalize,"normalize");function apply(snapshot,op){if(checkValidOp(op),op===null)return snapshot;const held=[];return __name(function drop(root,descent){let subDoc=root,i=0,rootContainer={root},m=0,container=rootContainer,key="root";function mut(){for(;m<i;m++){let d=descent[m];typeof d!="object"&&(assert(isValidKey(container,key)),container=container[key]=shallowClone(container[key]),key=d)}}for(__name(mut,"mut");i<descent.length;i++){const d=descent[i];if(Array.isArray(d)){const child=drop(subDoc,d);child!==subDoc&&child!==void 0&&(mut(),subDoc=container[key]=child)}else if(typeof d=="object"){d.d!=null?(mut(),subDoc=insertChildMut(container,key,held[d.d])):d.i!==void 0&&(mut(),subDoc=insertChildMut(container,key,d.i));const t=getEditType(d);if(t)mut(),subDoc=container[key]=t.apply(subDoc,getEdit(d));else if(d.e!==void 0)throw Error("Subtype "+d.et+" undefined")}else subDoc=maybeGetChild(subDoc,d)}return rootContainer.root},"drop")(snapshot=__name(function pick(subDoc,descent){const stack=[];let i=0;for(;i<descent.length;i++){const d=descent[i];if(Array.isArray(d))break;typeof d!="object"&&(stack.push(subDoc),subDoc=maybeGetChild(subDoc,d))}for(let j=descent.length-1;j>=i;j--)subDoc=pick(subDoc,descent[j]);for(--i;i>=0;i--){const d=descent[i];if(typeof d!="object"){const container=stack.pop();subDoc=subDoc===maybeGetChild(container,d)?container:subDoc===void 0?removeChild(container,d):(k=d,v=subDoc,(obj=shallowClone(obj=container))[k]=v,obj)}else hasPick(d)&&(assert(subDoc!==void 0,"Cannot pick up or remove undefined"),d.p!=null&&(held[d.p]=subDoc),subDoc=void 0)}var obj,k,v;return subDoc},"pick")(snapshot,op),op)}__name(apply,"apply");function transformPosition(path,op){path=path.slice(),checkValidOp(op);const r=cursor_js_1.readCursor(op);let pickedAtSlot,pickIndex,removed=!1;const advStack=[];for(let i=0;;i++){const k=path[i],c=r.getComponent();if(c&&(c.r!==void 0?removed=!0:c.p!=null&&(removed=!1,pickedAtSlot=c.p,pickIndex=i)),i>=path.length)break;let pickOffset=0;const pickAdv=cursor_js_1.advancer(r,void 0,(k2,c2)=>{hasPick(c2)&&pickOffset++});advStack.unshift(pickAdv);const hasNext=pickAdv(k);if(typeof k=="number"&&(path[i]-=pickOffset),!hasNext)break}if(advStack.forEach(pickAdv=>pickAdv.end()),removed)return null;const handleDrop=__name(()=>{let i=0;if(pickedAtSlot!=null){const rPath=r.getPath();i=rPath.length,path=rPath.concat(path.slice(pickIndex))}for(;i<path.length;i++){const k=path[i],c=getComponent(r),et=getEditType(c);if(et){const e=getEdit(c);et.transformPosition&&(path[i]=et.transformPosition(path[i],e));break}let dropOffset=0;const hasNext=cursor_js_1.advancer(r,(k2,c2)=>hasDrop(c2)?~(k2-dropOffset):k2-dropOffset,(k2,c2)=>{hasDrop(c2)&&dropOffset++})(k);if(typeof k=="number"&&(path[i]+=dropOffset),!hasNext)break}},"handleDrop");return pickedAtSlot!=null?r.eachDrop(null,slot=>{slot===pickedAtSlot&&handleDrop()}):handleDrop(),path}__name(transformPosition,"transformPosition");function compose(op1,op2){if(checkValidOp(op1),checkValidOp(op2),op1==null)return op2;if(op2==null)return op1;let nextSlot=0;const r1=cursor_js_1.readCursor(op1),r2=cursor_js_1.readCursor(op2),w=cursor_js_1.writeCursor(),heldPickWrites=[],heldDropWrites=[],held1Pick=[],held2Drop=[],p1SlotMap=[],p2SlotMap=[],visitedOp2EditCs=new Set;r1.traverse(null,c=>{c.p!=null&&(held1Pick[c.p]=r1.clone())}),r2.traverse(null,c=>{c.d!=null&&(held2Drop[c.d]=r2.clone())});const w2=cursor_js_1.writeCursor();return __name(function xfBoundary(r1Pick,r1Drop,r2Pick,r2Drop,litIn,rmParent,wd,wp){assert(r1Drop||r2Pick);const c1d=getComponent(r1Drop),c2p=getComponent(r2Pick),rmHere=!!c2p&&c2p.r!==void 0,insHere=!!c1d&&c1d.i!==void 0,drop1Slot=c1d?c1d.d:null,pick2Slot=c2p?c2p.p:null,rmChildren=(rmParent||rmHere)&&pick2Slot==null;if(pick2Slot!=null)r2Drop=held2Drop[pick2Slot],wd=heldDropWrites[pick2Slot]=new cursor_js_1.WriteCursor;else if(c2p&&c2p.r!==void 0)r2Drop=null;else{const c2d2=getComponent(r2Drop);c2d2&&c2d2.d!=null&&(r2Drop=null)}const c2d=getComponent(r2Drop);if(drop1Slot!=null)if(r1Pick=held1Pick[drop1Slot],wp=heldPickWrites[drop1Slot]=new cursor_js_1.WriteCursor,rmChildren)rmParent&&!rmHere&&wp.write("r",!0);else{const slot=p1SlotMap[drop1Slot]=nextSlot++;wd.write("d",slot)}else if(c1d&&c1d.i!==void 0)r1Pick=null;else{const c1p=getComponent(r1Pick);c1p&&c1p.p!=null&&(r1Pick=null)}let litOut;insHere?(assert(litIn===void 0),litOut=c1d.i):litOut=litIn;const insComponent=(pick2Slot==null?!insHere||rmParent||rmHere:litOut===void 0)?null:wd.getComponent();if(pick2Slot!=null){if(!(litIn!==void 0||insHere)){const slot=drop1Slot!=null?p1SlotMap[drop1Slot]:nextSlot++;p2SlotMap[pick2Slot]=slot,wp.write("p",slot)}}else rmHere&&(insHere||litIn!==void 0||(c2p.r,wp.write("r",c2p.r)));const type1=rmChildren?null:getEditType(c1d),type2=getEditType(c2d);if((type1||type2)&&(type1&&type1.name,type2&&type2.name),type1&&type2){assert(type1===type2);const e1=getEdit(c1d),e2=getEdit(c2d),r=type1.compose(e1,e2);writeEdit(wd,type1,r),visitedOp2EditCs.add(c2d)}else type1?writeEdit(wd,type1,getEdit(c1d)):type2&&(writeEdit(wd,type2,getEdit(c2d)),visitedOp2EditCs.add(c2d));const hasContainerLiteral=typeof litOut=="object"&&litOut!=null;let isCloned=!1,p1PickOff=0,p1DropOff=0,p2PickOff=0,p2DropOff=0,litOff=0;const p2DropAdv=cursor_js_1.advancer(r2Drop,(k,c)=>hasDrop(c)?p2DropOff-k-1:k-p2DropOff,(k,c)=>{hasDrop(c)&&p2DropOff++}),p1PickAdv=cursor_js_1.advancer(r1Pick,(k,c)=>hasPick(c)?p1PickOff-k-1:k-p1PickOff,(k,c)=>{hasPick(c)&&p1PickOff++});if(cursor_js_1.eachChildOf(r1Drop,r2Pick,(inKey,_p1Drop,_p2Pick)=>{let _p1Pick,_p2Drop,p1PickKey=inKey,p2DropKey=inKey,litKey=inKey;if(typeof inKey=="number"){let p2Mid=inKey+p2PickOff;_p2Drop=p2DropAdv(p2Mid),p2DropKey=p2Mid+p2DropOff;let p1Mid=inKey+p1DropOff;_p1Pick=p1PickAdv(p1Mid),hasDrop(getComponent(_p2Drop))&&(_p1Pick=null),p1PickKey=p1Mid+p1PickOff,litKey=inKey+litOff,assert(p1PickKey>=0,"p1PickKey is negative"),assert(p2DropKey>=0,"p2DropKey is negative");const hd1=hasDrop(getComponent(_p1Drop)),hp2=hasPick(getComponent(_p2Pick));(hd1||hp2&&!rmChildren)&&litOff--,hd1&&p1DropOff--,hp2&&p2PickOff--}else _p1Pick=p1PickAdv(inKey),_p2Drop=p2DropAdv(inKey);wp.descend(p1PickKey),wd.descend(p2DropKey);const _lit=hasContainerLiteral&&!hasDrop(getComponent(_p1Drop))?litOut[litKey]:void 0,_litResult=xfBoundary(_p1Pick,_p1Drop,_p2Pick,_p2Drop,_lit,rmChildren,wd,wp);var container,key,child;hasContainerLiteral&&!rmChildren?_lit!==_litResult&&(isCloned||(litOut=Array.isArray(litOut)?litOut.slice():Object.assign({},litOut),isCloned=!0),container=litOut,child=_litResult,typeof(key=litKey)=="number"?(assert(Array.isArray(container)),assert(key<container.length)):(assert(!Array.isArray(container)),assert(container[key]!==void 0)),child===void 0?typeof key=="number"?container.splice(key,1):delete container[key]:container[key]=child):assert(_litResult===void 0),wd.ascend(),wp.ascend()}),p1PickAdv.end(),p2DropAdv.end(),insComponent!=null)insComponent.i=litOut;else if(!rmParent&&!rmHere&&pick2Slot==null)return litOut},"xfBoundary")(r1,r1.clone(),r2,r2.clone(),void 0,!1,w,w2),w.reset(),w.mergeTree(w2.get()),w.reset(),w.get(),heldPickWrites.map(w3=>w3.get()),heldDropWrites.map(w3=>w3.get()),r1.traverse(w,(c,w3)=>{const slot1=c.p;if(slot1!=null){const slot=p1SlotMap[slot1];slot!=null&&w3.write("p",slot);const _w=heldPickWrites[slot1];_w&&_w.get(),_w&&w3.mergeTree(_w.get())}else c.r!==void 0&&w3.write("r",c.r)}),w.reset(),w.get(),r2.traverse(w,(c,w3)=>{const slot2=c.d;if(slot2!=null){const slot=p2SlotMap[slot2];slot!=null&&w3.write("d",slot);const _w=heldDropWrites[slot2];_w&&w3.mergeTree(_w.get())}else c.i!==void 0&&w3.write("i",c.i);const t=getEditType(c);t&&!visitedOp2EditCs.has(c)&&writeEdit(w3,t,getEdit(c))}),w.get()}__name(compose,"compose");function invert(op){if(op==null)return null;const r=new cursor_js_1.ReadCursor(op),w=new cursor_js_1.WriteCursor;let editsToTransform;const heldPick=[],heldWrites=[];return __name(function invertSimple(r2,w2,subDoc){const c=r2.getComponent();let insertHere,subdocModified=!1;if(c){c.p!=null&&(w2.write("d",c.p),heldPick[c.p]=r2.clone()),c.r!==void 0&&w2.write("i",c.r),c.d!=null&&(w2.write("p",c.d),subDoc=void 0),c.i!==void 0&&(subDoc=insertHere=c.i);const t=getEditType(c);t&&(subDoc===void 0?(editsToTransform||(editsToTransform=new Set),editsToTransform.add(c)):(getEdit(c),subDoc=t.apply(subDoc,getEdit(c)),subdocModified=!0))}let dropOff=0;for(const key of r2){w2.descend(key);const raw=typeof key=="number"?key-dropOff:key,childIn=maybeGetChild(subDoc,raw);hasDrop(r2.getComponent())&&dropOff++;const childOut=invertSimple(r2,w2,childIn);if(subDoc!==void 0&&childOut!==void 0){if(subdocModified||(subdocModified=!0,subDoc=shallowClone(subDoc)),!isValidKey(subDoc,raw))throw Error("Cannot modify child - invalid operation");subDoc[raw]=childOut}w2.ascend()}if(insertHere===void 0)return subdocModified?subDoc:void 0;w2.write("r",subDoc)},"invertSimple")(r,w,void 0),editsToTransform&&(w.reset(),__name(function transformEdits(rPick,rDrop,w2){const cd=rDrop.getComponent();if(cd){const dropSlot=cd.d;if(dropSlot!=null&&(rPick=heldPick[dropSlot],w2=heldWrites[dropSlot]=cursor_js_1.writeCursor()),editsToTransform.has(cd)){const t=getEditType(cd);if(!t.invert)throw Error(`Cannot invert subtype ${t.name}`);writeEdit(w2,t,t.invert(getEdit(cd)))}}let pickOff=0,dropOff=0;const ap=cursor_js_1.advancer(rPick,(k,c)=>hasPick(c)?pickOff-k-1:k-pickOff,(k,c)=>{hasPick(c)&&pickOff++});for(const key of rDrop)if(typeof key=="number"){const mid=key-dropOff,_rPick=ap(mid),raw=mid+pickOff;w2.descend(raw),transformEdits(_rPick,rDrop,w2),hasDrop(rDrop.getComponent())&&dropOff++,w2.ascend()}else w2.descend(key),transformEdits(ap(key),rDrop,w2),w2.ascend();ap.end()},"transformEdits")(r.clone(),r,w),heldWrites.length&&(w.reset(),r.traverse(w,(c,w2)=>{const slot=c.p;if(slot!=null){const _w=heldWrites[slot];_w&&_w.get(),_w&&w2.mergeTree(_w.get())}}))),w.get()}__name(invert,"invert");const anyComponent=__name((op,fn)=>op.some(c=>typeof c=="object"&&(Array.isArray(c)?anyComponent(c,fn):fn(c))),"anyComponent");function makeInvertible(op,doc){if(op==null||!anyComponent(op,c=>{var _a2;return c.r!==void 0||((_a2=getEditType(c))===null||_a2===void 0?void 0:_a2.makeInvertible)!=null}))return op;const r=new cursor_js_1.ReadCursor(op),w=new cursor_js_1.WriteCursor;let hasEdits=!1;const heldPick=[],heldDoc=[],traversePick=__name((r2,w2,subDoc)=>{const c=r2.getComponent();let modified=!1;if(c){c.d!=null&&w2.write("d",c.d),c.i!==void 0&&w2.write("i",c.i);const pickSlot=c.p;if(pickSlot!=null&&(heldPick[pickSlot]=r2.clone(),assert(subDoc!==void 0,"Operation picks up at an invalid key"),heldDoc[pickSlot]=subDoc,w2.write("p",c.p)),c.r!==void 0&&subDoc===void 0)throw Error("Invalid doc / op in makeInvertible: removed item missing from doc");const t=getEditType(c);t&&(t.makeInvertible?hasEdits=!0:writeEdit(w2,t,getEdit(c),!0))}let listOff=0;for(const key of r2){w2.descend(key);const keyRaw=typeof key=="number"?key-listOff:key,childIn=maybeGetChild(subDoc,keyRaw),childOut=traversePick(r2,w2,childIn);childIn!==childOut&&(modified||(modified=!0,subDoc=shallowClone(subDoc)),childOut===void 0?(subDoc=removeChild(subDoc,keyRaw),typeof key=="number"&&listOff++):subDoc[keyRaw]=childOut),w2.ascend()}return c&&(c.r!==void 0?(w2.write("r",deepClone_js_1.default(subDoc)),subDoc=void 0):c.p!=null&&(subDoc=void 0)),subDoc},"traversePick");return traversePick(r,w,doc),w.get(),hasEdits&&(w.reset(),__name(function traverseDrop(rPick,rDrop,w2,subDoc,isLiteral){const c=rDrop.getComponent();if(c){c.i!==void 0?(subDoc=c.i,isLiteral=!0):c.d!=null&&(subDoc=heldDoc[c.d],rPick=heldPick[c.d],isLiteral=!1,c.d);let t=getEditType(c);if(t&&t.makeInvertible){const edit=getEdit(c);writeEdit(w2,t,t.makeInvertible(edit,subDoc),!0)}}let pickOff=0,dropOff=0;const ap=cursor_js_1.advancer(rPick,(k,c2)=>hasPick(c2)?pickOff-k-1:k-pickOff,(k,c2)=>{hasPick(c2)&&pickOff++});for(const key of rDrop)if(typeof key=="number"){const mid=key-dropOff,_rPick=ap(mid),raw=mid+pickOff,child=maybeGetChild(subDoc,isLiteral?mid:raw);w2.descend(key),traverseDrop(_rPick,rDrop,w2,child,isLiteral),hasDrop(rDrop.getComponent())&&dropOff++,w2.ascend()}else{const child=maybeGetChild(subDoc,key);w2.descend(key),traverseDrop(ap(key),rDrop,w2,child,isLiteral),w2.ascend()}ap.end()},"traverseDrop")(r.clone(),r,w,doc,!1)),w.get()}__name(makeInvertible,"makeInvertible");function invertWithDoc(op,doc){return invert(makeInvertible(op,doc))}__name(invertWithDoc,"invertWithDoc");const shallowCloneOp=__name(op=>{if(op==null)return null;const result=op.slice();for(let i=0;i<op.length;i++){const c=result[i];Array.isArray(c)&&(result[i]=shallowCloneOp(c))}return result},"shallowCloneOp");function tryTransform(op1,op2,direction){assert(direction==="left"||direction==="right","Direction must be left or right");const side=direction==="left"?0:1;if(op2==null)return{ok:!0,result:op1};checkValidOp(op1),checkValidOp(op2);let conflict=null;const heldOp1PickByOp1=[],heldOp1DropByOp1=[],heldOp2PickByOp2=[],heldOp2DropByOp2=[],heldOp1PickByOp2=[],heldOp2PickByOp1=[],heldOp2DropByOp1=[],heldOp2RmForOp1=[],heldOp1RmForOp2=[],cancelledOp2=[],discardedOp2Drop=[],heldPickWrites=[],heldDropWrites=[],op1PickAtOp2Pick=[],op1PicksOp2DropSlots=[];let nextSlot=0;const r1=cursor_js_1.readCursor(op1),r2=cursor_js_1.readCursor(op2),w=cursor_js_1.writeCursor();if(__name(function scanOp2Pick(r2Pick,r1Pick=null,removed1){const c1=getComponent(r1Pick);c1&&(c1.r!==void 0?removed1=r1Pick.clone():c1.p!=null&&(removed1=null,heldOp2PickByOp1[c1.p]=r2Pick.clone()));const c2=r2Pick.getComponent();let slot2;c2&&(slot2=c2.p)!=null&&(heldOp1PickByOp2[slot2]=r1Pick?r1Pick.clone():null,heldOp2PickByOp2[slot2]=r2Pick.clone(),removed1&&(cancelledOp2[slot2]=!0,heldOp1RmForOp2[slot2]=removed1),c1&&c1.p!=null&&(op1PickAtOp2Pick[slot2]=c1.p));const ap1=cursor_js_1.advancer(r1Pick);for(const key of r2Pick)scanOp2Pick(r2Pick,ap1(key),removed1);ap1.end()},"scanOp2Pick")(r2,r1,null),__name(function scanOp2Drop(r1Pick,r2Pick,r2Drop,pickSlot1,removed1){const c2d=r2Drop.getComponent();let slot2,droppedHere=!1;c2d&&((slot2=c2d.d)!=null?(heldOp2DropByOp2[slot2]=r2Drop.clone(),pickSlot1!=null&&(op1PicksOp2DropSlots[pickSlot1]==null&&(op1PicksOp2DropSlots[pickSlot1]=[]),op1PicksOp2DropSlots[pickSlot1].push(slot2)),r1Pick=heldOp1PickByOp2[slot2]||null,r2Pick=heldOp2PickByOp2[slot2]||null,cancelledOp2[slot2]?(removed1&&(discardedOp2Drop[slot2]=!0),removed1=heldOp1RmForOp2[slot2]||null):!removed1||side!==1&&op1PickAtOp2Pick[slot2]!=null||conflict==null&&(conflict={type:types_js_1.ConflictType.RM_UNEXPECTED_CONTENT,op1:exports3.removeOp(removed1.getPath()),op2:exports3.moveOp(r2Pick.getPath(),r2Drop.getPath())}),droppedHere=!0):c2d.i!==void 0&&(r1Pick=r2Pick=null,droppedHere=!0,removed1&&conflict==null&&(conflict={type:types_js_1.ConflictType.RM_UNEXPECTED_CONTENT,op1:exports3.removeOp(removed1.getPath()),op2:exports3.insertOp(r2Drop.getPath(),c2d.i)})));const c1p=getComponent(r1Pick);c1p&&(c1p.r!==void 0?removed1=r1Pick.clone():c1p.p!=null&&(c1p.p,pickSlot1=c1p.p,removed1=null));const t2=getEditType(c2d);t2&&removed1&&conflict==null&&(conflict={type:types_js_1.ConflictType.RM_UNEXPECTED_CONTENT,op1:exports3.removeOp(removed1.getPath()),op2:exports3.editOp(r2Drop.getPath(),t2,getEdit(c2d),!0)});let p2PickOff=0,p2DropOff=0;const ap2=cursor_js_1.advancer(r2Pick,(k,c)=>hasPick(c)?p2PickOff-k-1:k-p2PickOff,(k,c)=>{hasPick(c)&&p2PickOff++}),ap1=cursor_js_1.advancer(r1Pick);for(const key of r2Drop)if(typeof key=="number"){const p2Mid=key-p2DropOff,_p2Pick=ap2(p2Mid);p2DropOff+=+scanOp2Drop(ap1(p2Mid+p2PickOff),_p2Pick,r2Drop,pickSlot1,removed1)}else{const _p2Pick=ap2(key);scanOp2Drop(ap1(key),_p2Pick,r2Drop,pickSlot1,removed1)}return ap2.end(),ap1.end(),droppedHere},"scanOp2Drop")(r1,r2,r2.clone(),null,null),heldOp2DropByOp2.map(x=>x&&x.get()),conflict)return{ok:!1,conflict};discardedOp2Drop.map(x=>!!x);const pickComponents=[];let cancelledRemoves=null;__name(function writeOp1Pick(r1Pick,r2Pick,r2Drop,w2,removed2){let iAmMoved=!1;const c2p=getComponent(r2Pick);if(hasPick(c2p)){const slot2=c2p.p;slot2!=null?(r2Drop=heldOp2DropByOp2[slot2],w2=heldPickWrites[slot2]=cursor_js_1.writeCursor(),iAmMoved=!0,removed2=null):(r2Drop=null,removed2=r2Pick.clone())}else hasDrop(getComponent(r2Drop))&&(r2Drop=null);const c1=r1Pick.getComponent();if(c1){const slot1=c1.p;slot1!=null?(removed2&&(heldOp2RmForOp1[slot1]=removed2),pickComponents[slot1]=removed2||side===1&&iAmMoved?null:w2.getComponent(),heldOp1PickByOp1[slot1]=r1Pick.clone(),r2Drop&&(heldOp2DropByOp1[slot1]=r2Drop.clone())):c1.r!==void 0&&(removed2||w2.write("r",!0),(removed2||iAmMoved)&&(cancelledRemoves==null&&(cancelledRemoves=new Set),cancelledRemoves.add(c1)))}let p2PickOff=0,p2DropOff=0;const ap2Pick=cursor_js_1.advancer(r2Pick,void 0,(k,c)=>{hasPick(c)&&p2PickOff++}),ap2Drop=cursor_js_1.advancer(r2Drop,(k,c)=>hasDrop(c)?~(k-p2DropOff):k-p2DropOff,(k,c)=>{hasDrop(c)&&p2DropOff++});if(r1Pick)for(const key of r1Pick)if(typeof key=="string"){const p2Pick_=ap2Pick(key),p2Drop_=ap2Drop(key);w2.descend(key),writeOp1Pick(r1Pick,p2Pick_,p2Drop_,w2,removed2),w2.ascend()}else{const p2Pick_=ap2Pick(key),p2Mid=key-p2PickOff,p2Drop_=hasPick(getComponent(p2Pick_))?null:ap2Drop(p2Mid),finalKey=p2Mid+p2DropOff;assert(finalKey>=0),w2.descend(finalKey),writeOp1Pick(r1Pick,p2Pick_,p2Drop_,w2,removed2),w2.ascend()}ap2Pick.end(),ap2Drop.end()},"writeOp1Pick")(r1,r2,r2.clone(),w,null),w.reset();let outputSlotMap=[];if(__name(function writeOp1Drop(p1Pick,p1Drop,p2Pick,p2Drop,w2,removed2){assert(p1Drop);const c1d=p1Drop.getComponent();let c2d=getComponent(p2Drop),droppedHere=!1;const insOrMv=__name((r12,r22,c)=>r12?exports3.moveOp(r12.getPath(),r22.getPath()):exports3.insertOp(r22.getPath(),c.i),"insOrMv");if(hasDrop(c1d)){const slot1=c1d.d;slot1!=null&&(heldOp1DropByOp1[slot1]=p1Drop.clone());const pc=slot1!=null?pickComponents[slot1]:null;let identical=!1;if(c1d.i!==void 0||slot1!=null&&pc){let slot2;c2d&&(c2d.i!==void 0||(slot2=c2d.d)!=null&&!cancelledOp2[slot2])&&(identical=slot2!=null?slot1!=null&&slot1===op1PickAtOp2Pick[slot2]:deepEqual_js_1.default(c2d.i,c1d.i),identical||slot2!=null&&side!==1&&op1PickAtOp2Pick[slot2]!=null||conflict==null&&(conflict={type:types_js_1.ConflictType.DROP_COLLISION,op1:insOrMv(slot1!=null?heldOp1PickByOp1[slot1]:null,p1Drop,c1d),op2:insOrMv(slot2!=null?heldOp2PickByOp2[slot2]:null,p2Drop,c2d)})),identical||(removed2?conflict==null&&(conflict={type:types_js_1.ConflictType.RM_UNEXPECTED_CONTENT,op1:insOrMv(slot1!=null?heldOp1PickByOp1[slot1]:null,p1Drop,c1d),op2:exports3.removeOp(removed2.getPath())}):(slot1!=null?(outputSlotMap[nextSlot]=slot1,w2.write("d",pc.p=nextSlot++)):w2.write("i",deepClone_js_1.default(c1d.i)),droppedHere=!0))}else if(slot1!=null&&!pc){const h=heldOp2RmForOp1[slot1];h&&(removed2=h.clone())}slot1!=null?(p1Pick=heldOp1PickByOp1[slot1],p2Pick=heldOp2PickByOp1[slot1],p2Drop=heldOp2DropByOp1[slot1]):c1d.i!==void 0&&(p1Pick=p2Pick=null,identical||(p2Drop=null))}else hasPick(getComponent(p1Pick))&&(p1Pick=p2Pick=p2Drop=null);const c1p=getComponent(p1Pick),c2p=getComponent(p2Pick);if(hasPick(c2p)){const slot2=c2p.p;c2p.r!==void 0&&(!c1p||c1p.r===void 0)||cancelledOp2[slot2]?(p2Drop=null,removed2=p2Pick.clone()):slot2!=null&&(p2Drop=heldOp2DropByOp2[slot2],side!==1&&op1PickAtOp2Pick[slot2]!=null||((w2=heldDropWrites[slot2])||(w2=heldDropWrites[slot2]=cursor_js_1.writeCursor()),w2.reset(),removed2=null))}else!hasDrop(c1d)&&hasDrop(c2d)&&(p2Drop=null);c2d=p2Drop!=null?p2Drop.getComponent():null;const t1=getEditType(c1d);if(t1){const e1=getEdit(c1d);if(removed2)conflict==null&&(conflict={type:types_js_1.ConflictType.RM_UNEXPECTED_CONTENT,op1:exports3.editOp(p1Drop.getPath(),t1,e1,!0),op2:exports3.removeOp(removed2.getPath())});else{const t2=getEditType(c2d);let e;if(t2){if(t1!==t2)throw Error("Transforming incompatible types");const e2=getEdit(c2d);e=t1.transform(e1,e2,direction)}else e=deepClone_js_1.default(e1);writeEdit(w2,t1,e)}}let p1PickOff=0,p1DropOff=0,p2PickOff=0,p2DropOff=0,outPickOff=0,outDropOff=0,p1pValid=p1Pick!=null&&p1Pick.descendFirst(),p1pDidDescend=p1pValid;const ap2p=cursor_js_1.advancer(p2Pick,void 0,(k,c)=>{hasPick(c)&&p2PickOff++});let p2dValid=p2Drop!=null&&p2Drop.descendFirst(),p2dDidDescend=p2dValid;for(const key of p1Drop)if(typeof key=="number"){let _p1Pick;const hd1=hasDrop(p1Drop.getComponent()),k1Mid=key-p1DropOff;{let p1k;for(;p1pValid&&typeof(p1k=p1Pick.getKey())=="number";){p1k+=p1PickOff;const c=p1Pick.getComponent(),hp=hasPick(c);if(p1k>k1Mid||p1k===k1Mid&&(!hp||side===0&&hd1))break;if(hp){p1PickOff--;const slot1=c.p;op1PickAtOp2Pick.includes(slot1),c.d,getComponent(heldDropWrites[c.d]),hasPick(getComponent(heldDropWrites[c.d])),(c.r===void 0||cancelledRemoves&&cancelledRemoves.has(c))&&(slot1==null||!pickComponents[slot1]||side!==1&&op1PickAtOp2Pick.includes(slot1))||outPickOff--}p1pValid=p1Pick.nextSibling()}_p1Pick=p1pValid&&p1k===k1Mid?p1Pick:null}const raw=k1Mid-p1PickOff;let _p2Pick=ap2p(raw);const k2Mid=raw-p2PickOff;let _p2Drop=null;{let p2dk,op2Mid;for(;p2dValid&&typeof(p2dk=p2Drop.getKey())=="number";){op2Mid=p2dk-p2DropOff;const c=p2Drop.getComponent(),hd2=hasDrop(c);if(op2Mid>k2Mid)break;if(op2Mid===k2Mid){if(!hd2){_p2Drop=p2Drop;break}{if(side===0&&hd1){_p2Drop=p2Drop;break}const hp2=_p2Pick&&hasPick(_p2Pick.getComponent());if(side===0&&hp2)break}}if(hd2){const slot2=c.d;op1PickAtOp2Pick[slot2],c.i===void 0&&(cancelledOp2[slot2]||op1PickAtOp2Pick[slot2]!=null&&side!==1)?(cancelledOp2[slot2]||op1PickAtOp2Pick[slot2]!=null&&side===0)&&(p2DropOff++,outDropOff--):p2DropOff++}p2dValid=p2Drop.nextSibling()}}const descend=k2Mid+p2DropOff+outPickOff+outDropOff;assert(descend>=0,"trying to descend to a negative index"),w2.descend(descend),hd1&&(_p1Pick=_p2Pick=_p2Drop=null,p1DropOff++),writeOp1Drop(_p1Pick,p1Drop,_p2Pick,_p2Drop,w2,removed2)&&outDropOff++,w2.ascend()}else{let p1k;for(;p1pValid&&(p1k=p1Pick.getKey(),typeof p1k!="string"||!(p1k>key||p1k===key));)p1pValid=p1Pick.nextSibling();const _p1Pick=p1pValid&&p1k===key?p1Pick:null,_p2Pick=ap2p(key);let p2dk;for(;p2dValid&&(p2dk=p2Drop.getKey(),typeof p2dk!="string"||!(p2dk>key||p2dk===key));)p2dValid=p2Drop.nextSibling();const _p2Drop=p2dValid&&p2dk===key?p2Drop:null;w2.descend(key),writeOp1Drop(_p1Pick,p1Drop,_p2Pick,_p2Drop,w2,removed2),w2.ascend()}return ap2p.end(),p1pDidDescend&&p1Pick.ascend(),p2dDidDescend&&p2Drop.ascend(),droppedHere},"writeOp1Drop")(r1,r1.clone(),r2,r2.clone(),w,null),conflict)return{ok:!1,conflict};w.reset();const eachDrop=__name((r,w2,fn)=>r.traverse(w2,(c,w3)=>{c.d!=null&&fn(c.d,r,w3)}),"eachDrop");(cancelledOp2.length||heldPickWrites.length)&&(eachDrop(r2,w,(slot2,r,w2)=>{cancelledOp2[slot2]&&!discardedOp2Drop[slot2]&&w2.write("r",!0),heldPickWrites[slot2]&&w2.mergeTree(heldPickWrites[slot2].get())}),w.reset());const heldOutDropRead=[],heldOutDropWrites=[];if((heldDropWrites.length||cancelledOp2.length)&&!conflict){const rOut=cursor_js_1.readCursor(shallowCloneOp(w.get()));if(eachDrop(rOut,null,(slotOut,r)=>{heldOutDropRead[slotOut]=r.clone()}),heldDropWrites.forEach(hdw=>{hdw&&eachDrop(cursor_js_1.readCursor(hdw.get()),null,(slotOut,r)=>{heldOutDropRead[slotOut]=r.clone()})}),__name(function writeHeldOp2Drop(p2Drop,outPick,outDrop,w2,parentC,removedOut){const coutp=getComponent(outPick);if(coutp&&hasPick(coutp))if(coutp.p!=null){const slot=coutp.p;heldOutDropRead[slot].getPath(),outDrop=heldOutDropRead[slot],w2=heldOutDropWrites[slot]=cursor_js_1.writeCursor()}else coutp.r!==void 0&&(outDrop=null);else hasDrop(getComponent(outDrop))&&(outDrop=null);const c2=p2Drop.getComponent();if(c2){let slot2;if((slot2=c2.d)!=null){const _w=heldDropWrites[slot2];_w&&(_w.get(),w2.mergeTree(_w.get()),outDrop=cursor_js_1.readCursor(_w.get()))}}let outPickOff=0,outDropOff=0;const oPickAdv=cursor_js_1.advancer(outPick,void 0,(k,c)=>{hasPick(c)&&outPickOff--}),oDropAdv=cursor_js_1.advancer(outDrop,(k,c)=>hasDrop(c)?-(k-outDropOff)-1:k-outDropOff,(k,c)=>{hasDrop(c)&&outDropOff++});for(const o2dk of p2Drop)if(typeof o2dk=="number"){const _outPick=oPickAdv(o2dk),rmid=o2dk+outPickOff,_outDrop=oDropAdv(rmid),rfinal=rmid+outDropOff;w2.descend(rfinal),writeHeldOp2Drop(p2Drop,_outPick,_outDrop,w2),w2.ascend()}else w2.descend(o2dk),writeHeldOp2Drop(p2Drop,oPickAdv(o2dk),oDropAdv(o2dk),w2),w2.ascend();oPickAdv.end(),oDropAdv.end()},"writeHeldOp2Drop")(r2,rOut,rOut.clone(),w),w.reset(),conflict)return{ok:!1,conflict};if(w.get(),heldOutDropWrites.length){const heldOutDropContent=heldOutDropWrites.map(w2=>w2?w2.get():null),rOut2=cursor_js_1.readCursor(shallowCloneOp(w.get()));if(eachDrop(rOut2,w,(slotOut,r,w2)=>{const data=heldOutDropContent[slotOut];data&&(w2.mergeTree(data),heldOutDropContent[slotOut]=null)}),heldOutDropContent.find(x=>x)){const w1=cursor_js_1.writeCursor(),w2=cursor_js_1.writeCursor();let nextSlot1=0,nextSlot2=0;heldOutDropContent.forEach(data=>{data!=null&&eachDrop(cursor_js_1.readCursor(data),null,c=>{const slot1=outputSlotMap[c];w1.writeMove(heldOp1PickByOp1[slot1].getPath(),heldOp1DropByOp1[slot1].getPath(),nextSlot1++);const slot2s=op1PicksOp2DropSlots[slot1];slot2s&&slot2s.forEach(slot2=>{cancelledOp2[slot2]||side!==1&&op1PickAtOp2Pick[slot2]!=null||w2.writeMove(heldOp2PickByOp2[slot2].getPath(),heldOp2DropByOp2[slot2].getPath(),nextSlot2++)})})}),conflict={type:types_js_1.ConflictType.BLACKHOLE,op1:w1.get(),op2:w2.get()}}}}return conflict?{ok:!1,conflict}:{ok:!0,result:w.get()}}__name(tryTransform,"tryTransform");const throwConflictErr=__name(conflict=>{const err=new Error("Transform detected write conflict");throw err.conflict=conflict,err.type=err.name="writeConflict",err},"throwConflictErr");function transform(op1,op2,side){const res=tryTransform(op1,op2,side);if(res.ok)return res.result;throwConflictErr(res.conflict)}__name(transform,"transform");const opThatRemovesDE=__name(op=>{const w=cursor_js_1.writeCursor();return cursor_js_1.readCursor(op).traverse(w,(c,w2)=>{(hasDrop(c)||getEditType(c))&&w2.write("r",!0)}),w.get()},"opThatRemovesDE"),resolveConflict=__name((conflict,side)=>{const{type:type2,op1,op2}=conflict;switch(type2){case types_js_1.ConflictType.DROP_COLLISION:return side==="left"?[null,opThatRemovesDE(op2)]:[opThatRemovesDE(op1),null];case types_js_1.ConflictType.RM_UNEXPECTED_CONTENT:let op1HasRemove=!1;return cursor_js_1.readCursor(op1).traverse(null,c=>{c.r!==void 0&&(op1HasRemove=!0)}),op1HasRemove?[null,opThatRemovesDE(op2)]:[opThatRemovesDE(op1),null];case types_js_1.ConflictType.BLACKHOLE:return[opThatRemovesDE(op1),opThatRemovesDE(op2)];default:throw Error("Unrecognised conflict: "+type2)}},"resolveConflict");function transformWithConflictsPred(allowConflict,op1,op2,side){let r2Aggregate=null;for(;;){const res=tryTransform(op1,op2,side);if(res.ok)return compose(r2Aggregate,res.result);{const{conflict}=res;allowConflict(conflict)||throwConflictErr(conflict);const[r1,r2]=resolveConflict(conflict,side);op1=compose(normalize(op1),r1),op2=compose(normalize(op2),r2),r2Aggregate=compose(r2Aggregate,r2)}}}__name(transformWithConflictsPred,"transformWithConflictsPred")}(json1_release),function(exports3){var __createBinding=commonjsGlobal&&commonjsGlobal.__createBinding||(Object.create?function(o,m,k,k2){k2===void 0&&(k2=k),Object.defineProperty(o,k2,{enumerable:!0,get:__name(function(){return m[k]},"get")})}:function(o,m,k,k2){k2===void 0&&(k2=k),o[k2]=m[k]}),__exportStar=commonjsGlobal&&commonjsGlobal.__exportStar||function(m,exports4){for(var p in m)p!=="default"&&!exports4.hasOwnProperty(p)&&__createBinding(exports4,m,p)};Object.defineProperty(exports3,"__esModule",{value:!0}),__exportStar(json1_release,exports3);var cursor_js_1=cursor;Object.defineProperty(exports3,"ReadCursor",{enumerable:!0,get:__name(function(){return cursor_js_1.ReadCursor},"get")}),Object.defineProperty(exports3,"WriteCursor",{enumerable:!0,get:__name(function(){return cursor_js_1.WriteCursor},"get")});var types_1=types;Object.defineProperty(exports3,"ConflictType",{enumerable:!0,get:__name(function(){return types_1.ConflictType},"get")})}(dist$1);const index$1=_mergeNamespaces({__proto__:null,default:getDefaultExportFromCjs(dist$1)},[dist$1]);var TextXActionType=(TextXActionType2=>(TextXActionType2.RETAIN="r",TextXActionType2.INSERT="i",TextXActionType2.DELETE="d",TextXActionType2))(TextXActionType||{});const _ActionIterator=class _ActionIterator{constructor(_actions){__publicField(this,"_index",0);__publicField(this,"_offset",0);this._actions=_actions}hasNext(){return this.peekLength()<Number.POSITIVE_INFINITY}next(length){length||(length=Number.POSITIVE_INFINITY);const nextAction=this._actions[this._index];if(nextAction){const offset=this._offset,actionLength=nextAction.len;return length>=actionLength-offset?(length=actionLength-offset,this._index+=1,this._offset=0):this._offset+=length,nextAction.t===TextXActionType.DELETE||nextAction.t===TextXActionType.RETAIN&&nextAction.body==null?Tools.deepClone({...nextAction,len:length}):Tools.deepClone({...nextAction,len:length,body:getBodySlice(nextAction.body,offset,offset+length)})}else return{t:TextXActionType.RETAIN,len:Number.POSITIVE_INFINITY}}peek(){return this._actions[this._index]}peekLength(){return this._actions[this._index]?this._actions[this._index].len-this._offset:Number.POSITIVE_INFINITY}peekType(){const action=this._actions[this._index];return action?action.t:TextXActionType.RETAIN}rest(){if(this.hasNext()){if(this._offset===0)return this._actions.slice(this._index);{const offset=this._offset,index2=this._index,next=this.next(),restActions=this._actions.slice(this._index);return this._offset=offset,this._index=index2,[next].concat(restActions)}}else return[]}};__name(_ActionIterator,"ActionIterator");let ActionIterator=_ActionIterator;const _MemoryCursor=class _MemoryCursor{constructor(){__publicField(this,"cursor",0)}reset(){return this.cursor=0,this}moveCursor(pos){this.cursor+=pos}moveCursorTo(pos){this.cursor=pos}};__name(_MemoryCursor,"MemoryCursor");let MemoryCursor=_MemoryCursor;function updateAttributeByDelete(body,textLength,currentIndex){const{dataStream}=body,startIndex=currentIndex,endIndex=currentIndex+textLength,removeTextRuns=deleteTextRuns(body,textLength,currentIndex),removeParagraphs=deleteParagraphs(body,textLength,currentIndex),removeSectionBreaks=deleteSectionBreaks(body,textLength,currentIndex),removeCustomBlocks=deleteCustomBlocks(body,textLength,currentIndex),removeTables=deleteTables(body,textLength,currentIndex),removeCustomRanges=deleteCustomRanges(body,textLength,currentIndex),removeCustomDecorations=deleteCustomDecorations(body,textLength,currentIndex);let removeDataStream="";return dataStream&&(body.dataStream=deleteContent(dataStream,startIndex,endIndex),removeDataStream=dataStream.slice(startIndex,endIndex)),{dataStream:removeDataStream,textRuns:removeTextRuns,paragraphs:removeParagraphs,sectionBreaks:removeSectionBreaks,customBlocks:removeCustomBlocks,tables:removeTables,customRanges:removeCustomRanges,customDecorations:removeCustomDecorations}}__name(updateAttributeByDelete,"updateAttributeByDelete");function updateAttributeByInsert(body,insertBody,textLength,currentIndex){body.dataStream=insertTextToContent(body.dataStream,currentIndex,insertBody.dataStream),insertTextRuns(body,insertBody,textLength,currentIndex),insertParagraphs(body,insertBody,textLength,currentIndex),insertSectionBreaks(body,insertBody,textLength,currentIndex),insertCustomBlocks(body,insertBody,textLength,currentIndex),insertTables(body,insertBody,textLength,currentIndex),insertCustomRanges(body,insertBody,textLength,currentIndex),insertCustomDecorations(body,insertBody,textLength,currentIndex)}__name(updateAttributeByInsert,"updateAttributeByInsert");function updateApply(doc,updateBody,textLength,currentIndex,coverType=UpdateDocsAttributeType.COVER){return updateAttribute(doc,updateBody,textLength,currentIndex,coverType)}__name(updateApply,"updateApply");function deleteApply(doc,textLength,currentIndex){return textLength<=0?{dataStream:""}:updateAttributeByDelete(doc,textLength,currentIndex)}__name(deleteApply,"deleteApply");function insertApply(doc,insertBody,textLength,currentIndex){textLength!==0&&updateAttributeByInsert(doc,insertBody,textLength,currentIndex)}__name(insertApply,"insertApply");function textXApply(doc,actions){const memoryCursor=new MemoryCursor;return memoryCursor.reset(),actions.forEach(action=>{const clonedAction=Tools.deepClone(action);switch(clonedAction.t){case TextXActionType.RETAIN:{const{coverType,body,len}=clonedAction;body!=null&&updateApply(doc,body,len,memoryCursor.cursor,coverType),memoryCursor.moveCursor(len);break}case TextXActionType.INSERT:{const{body,len}=clonedAction;insertApply(doc,body,len,memoryCursor.cursor),memoryCursor.moveCursor(len);break}case TextXActionType.DELETE:{const{len}=clonedAction;deleteApply(doc,len,memoryCursor.cursor);break}default:throw new Error(`Unknown action type for action: ${clonedAction}.`)}}),doc}__name(textXApply,"textXApply");function transformTextRuns(originTextRuns,targetTextRuns,transformType){if(originTextRuns.length===0)return targetTextRuns;targetTextRuns=core.Tools.deepClone(targetTextRuns),originTextRuns=core.Tools.deepClone(originTextRuns);const newUpdateTextRuns=[],updateLength=targetTextRuns.length,removeLength=originTextRuns.length;let updateIndex=0,removeIndex=0,pending=null;function pushPendingAndReturnStatus(){return pending?(newUpdateTextRuns.push(pending),pending=null,!0):!1}for(__name(pushPendingAndReturnStatus,"pushPendingAndReturnStatus");updateIndex<updateLength&&removeIndex<removeLength;){const{st:updateSt,ed:updateEd,ts:targetStyle}=targetTextRuns[updateIndex],{st:removeSt,ed:removeEd,ts:originStyle,sId}=originTextRuns[removeIndex];let newTs={};if(transformType===0)newTs={...targetStyle};else if(newTs={...targetStyle},originStyle){const keys=Object.keys(originStyle);for(const key of keys)newTs[key]&&delete newTs[key]}if(updateEd<removeSt)pushPendingAndReturnStatus()||newUpdateTextRuns.push(targetTextRuns[updateIndex]),updateIndex++;else if(removeEd<updateSt)pushPendingAndReturnStatus()||newUpdateTextRuns.push(originTextRuns[removeIndex]),removeIndex++;else{const newTextRun={st:Math.min(updateSt,removeSt),ed:Math.max(updateSt,removeSt),ts:updateSt<removeSt?{...targetStyle}:{...originStyle},sId:updateSt<removeSt?void 0:sId};newTextRun.ed>newTextRun.st&&newUpdateTextRuns.push(),newUpdateTextRuns.push({st:Math.max(updateSt,removeSt),ed:Math.min(updateEd,removeEd),ts:newTs,sId}),updateEd<removeEd?(updateIndex++,originTextRuns[removeIndex].st=updateEd,originTextRuns[removeIndex].st===originTextRuns[removeIndex].ed&&removeIndex++):(removeIndex++,targetTextRuns[updateIndex].st=removeEd,targetTextRuns[updateIndex].st===targetTextRuns[updateIndex].ed&&updateIndex++);const pendingTextRun={st:Math.min(updateEd,removeEd),ed:Math.max(updateEd,removeEd),ts:updateEd<removeEd?{...originStyle}:{...targetStyle},sId:updateEd<removeEd?sId:void 0};pending=pendingTextRun.ed>pendingTextRun.st?pendingTextRun:null}}pushPendingAndReturnStatus();const tempTopTextRun=newUpdateTextRuns[newUpdateTextRuns.length-1],updateLastTextRun=targetTextRuns[updateLength-1],removeLastTextRun=originTextRuns[removeLength-1];return tempTopTextRun.ed!==Math.max(updateLastTextRun.ed,removeLastTextRun.ed)&&(updateLastTextRun.ed>removeLastTextRun.ed?newUpdateTextRuns.push(updateLastTextRun):newUpdateTextRuns.push(removeLastTextRun)),core.normalizeTextRuns(newUpdateTextRuns)}__name(transformTextRuns,"transformTextRuns");function transformParagraph(originParagraph,targetParagraph,transformType){const paragraph={startIndex:targetParagraph.startIndex};if(targetParagraph.paragraphStyle){if(originParagraph.paragraphStyle==null)paragraph.paragraphStyle={...targetParagraph.paragraphStyle};else if(paragraph.paragraphStyle={...targetParagraph.paragraphStyle},transformType===1){const keys=Object.keys(originParagraph.paragraphStyle);for(const key of keys)paragraph.paragraphStyle[key]&&delete paragraph.paragraphStyle[key]}}return targetParagraph.bullet&&(originParagraph.bullet==null||transformType===0)&&(paragraph.bullet={...targetParagraph.bullet}),paragraph}__name(transformParagraph,"transformParagraph");function transformBody(thisAction,otherAction,priority=!1){const{body:thisBody}=thisAction,{body:otherBody}=otherAction;if(thisBody==null||thisBody.dataStream!==""||otherBody==null||otherBody.dataStream!=="")throw new Error("Data stream is not supported in transform.");const retBody={dataStream:""},{textRuns:thisTextRuns=[],paragraphs:thisParagraphs=[]}=thisBody,{textRuns:otherTextRuns=[],paragraphs:otherParagraphs=[]}=otherBody;let textRuns=[];priority?textRuns=transformTextRuns(thisTextRuns,otherTextRuns,1):textRuns=transformTextRuns(thisTextRuns,otherTextRuns,0),textRuns.length&&(retBody.textRuns=textRuns);const paragraphs=[];let thisIndex=0,otherIndex=0;for(;thisIndex<thisParagraphs.length&&otherIndex<otherParagraphs.length;){const thisParagraph=thisParagraphs[thisIndex],otherParagraph=otherParagraphs[otherIndex],{startIndex:thisStart}=thisParagraph,{startIndex:otherStart}=otherParagraph;if(thisStart===otherStart){let paragraph={startIndex:thisStart};priority?paragraph=transformParagraph(thisParagraph,otherParagraph,1):paragraph=transformParagraph(thisParagraph,otherParagraph,0),paragraphs.push(paragraph),thisIndex++,otherIndex++}else thisStart<otherStart?thisIndex++:(paragraphs.push(core.Tools.deepClone(otherParagraph)),otherIndex++)}return otherIndex<otherParagraphs.length&&paragraphs.push(...otherParagraphs.slice(otherIndex)),paragraphs.length&&(retBody.paragraphs=paragraphs),retBody}__name(transformBody,"transformBody");function onlyHasDataStream(body){return Object.keys(body).length===1}__name(onlyHasDataStream,"onlyHasDataStream");const _TextX=class _TextX{constructor(){__publicField(this,"_actions",[])}static apply(doc,actions){return textXApply(doc,actions)}static compose(thisActions,otherActions){const thisIter=new ActionIterator(thisActions),otherIter=new ActionIterator(otherActions),textX=new _TextX;for(;thisIter.hasNext()||otherIter.hasNext();)if(otherIter.peekType()===TextXActionType.INSERT)textX.push(otherIter.next());else if(thisIter.peekType()===TextXActionType.DELETE)textX.push(thisIter.next());else{const length=Math.min(thisIter.peekLength(),otherIter.peekLength()),thisAction=thisIter.next(length),otherAction=otherIter.next(length);thisAction.t===TextXActionType.INSERT&&otherAction.t===TextXActionType.RETAIN?otherAction.body==null?textX.push(thisAction):textX.push({...thisAction,body:composeBody(thisAction.body,otherAction.body,otherAction.coverType)}):thisAction.t===TextXActionType.RETAIN&&otherAction.t===TextXActionType.RETAIN?thisAction.body==null&&otherAction.body==null?textX.push(thisAction.len!==Number.POSITIVE_INFINITY?thisAction:otherAction):thisAction.body&&otherAction.body?textX.push({...thisAction,body:composeBody(thisAction.body,otherAction.body,otherAction.coverType)}):textX.push(thisAction.body?thisAction:otherAction):thisAction.t===TextXActionType.RETAIN&&otherAction.t===TextXActionType.DELETE?textX.push(otherAction):thisAction.t===TextXActionType.INSERT&&(otherAction.t,TextXActionType.DELETE)}return textX.trimEndUselessRetainAction(),textX.serialize()}static transform(thisActions,otherActions,priority="right"){return this._transform(otherActions,thisActions,priority==="left"?"right":"left")}static _transform(thisActions,otherActions,priority="right"){var _a2;const thisIter=new ActionIterator(thisActions),otherIter=new ActionIterator(otherActions),textX=new _TextX;for(;thisIter.hasNext()||otherIter.hasNext();)if(thisIter.peekType()===TextXActionType.INSERT&&(priority==="left"||otherIter.peekType()!==TextXActionType.INSERT)){const thisAction=thisIter.next();textX.retain(thisAction.len,(_a2=thisAction.segmentId)!=null?_a2:"")}else if(otherIter.peekType()===TextXActionType.INSERT)textX.push(otherIter.next());else{const length=Math.min(thisIter.peekLength(),otherIter.peekLength()),thisAction=thisIter.next(length),otherAction=otherIter.next(length);if(thisAction.t===TextXActionType.DELETE)continue;if(otherAction.t===TextXActionType.DELETE){textX.push(otherAction);continue}thisAction.body==null||otherAction.body==null?textX.push(otherAction):textX.push({...otherAction,body:transformBody(thisAction,otherAction,priority==="left")})}return textX.trimEndUselessRetainAction(),textX.serialize()}static transformPosition(thisActions,index2,priority=!1){const thisIter=new ActionIterator(thisActions);let offset=0;for(;thisIter.hasNext()&&offset<=index2;){const length=thisIter.peekLength(),nextType=thisIter.peekType();if(thisIter.next(),nextType===TextXActionType.DELETE){index2-=Math.min(length,index2-offset);continue}else nextType===TextXActionType.INSERT&&(offset<index2||!priority)&&(index2+=length);offset+=length}return index2}static isNoop(actions){return actions.length===0}static invert(actions){const invertedActions=[];for(const action of actions)if(action.t===TextXActionType.INSERT)invertedActions.push({t:TextXActionType.DELETE,len:action.len,line:0,body:action.body,segmentId:action.segmentId});else if(action.t===TextXActionType.DELETE){if(action.body==null)throw new Error("Can not invert DELETE action without body property, makeInvertible must be called first.");invertedActions.push({t:TextXActionType.INSERT,body:action.body,len:action.len,line:0,segmentId:action.segmentId})}else if(action.body!=null){if(action.oldBody==null)throw new Error("Can not invert RETAIN action without oldBody property, makeInvertible must be called first.");invertedActions.push({t:TextXActionType.RETAIN,body:action.oldBody,oldBody:action.body,len:action.len,coverType:UpdateDocsAttributeType.REPLACE,segmentId:action.segmentId})}else invertedActions.push(action);return invertedActions}static makeInvertible(actions,doc){const invertibleActions=[];let index2=0;for(const action of actions){if(action.t===TextXActionType.DELETE&&action.body==null){const body=getBodySlice(doc,index2,index2+action.len,!1);action.len=body.dataStream.length,action.body=body}if(action.t===TextXActionType.RETAIN&&action.body!=null){const body=getBodySlice(doc,index2,index2+action.len,!0);action.oldBody={...body,dataStream:""},action.len=body.dataStream.length}invertibleActions.push(action),action.t!==TextXActionType.INSERT&&(index2+=action.len)}return invertibleActions}insert(len,body,segmentId=""){const insertAction={t:TextXActionType.INSERT,body,len,line:0,segmentId};return this.push(insertAction),this}retain(len,segmentId="",body,coverType){const retainAction={t:TextXActionType.RETAIN,len,segmentId};return body!=null&&(retainAction.body=body),coverType!=null&&(retainAction.coverType=coverType),this.push(retainAction),this}delete(len,segmentId=""){const deleteAction={t:TextXActionType.DELETE,len,line:0,segmentId};return this.push(deleteAction),this}empty(){return this._actions=[],this}serialize(){return this._actions}push(...args){if(args.length>1){for(const ac of args)this.push(ac);return this}let index2=this._actions.length,lastAction=this._actions[index2-1];const newAction=Tools.deepClone(args[0]);if(newAction.t===TextXActionType.RETAIN&&newAction.len===0&&newAction.body==null)return this;if(typeof lastAction=="object"){if(lastAction.t===TextXActionType.DELETE&&newAction.t===TextXActionType.DELETE)return lastAction.len+=newAction.len,this;if(lastAction.t===TextXActionType.DELETE&&newAction.t===TextXActionType.INSERT&&(index2-=1,lastAction=this._actions[index2-1],lastAction==null))return this._actions.unshift(newAction),this;if(lastAction.t===TextXActionType.RETAIN&&newAction.t===TextXActionType.RETAIN&&lastAction.body==null&&newAction.body==null)return lastAction.len+=newAction.len,this;if(lastAction.t===TextXActionType.INSERT&&onlyHasDataStream(lastAction.body)&&newAction.t===TextXActionType.INSERT&&onlyHasDataStream(newAction.body))return lastAction.len+=newAction.len,lastAction.body.dataStream+=newAction.body.dataStream,this}return index2===this._actions.length?this._actions.push(newAction):this._actions.splice(index2,0,newAction),this}trimEndUselessRetainAction(){let lastAction=this._actions[this._actions.length-1];for(;lastAction&&lastAction.t===TextXActionType.RETAIN&&isUselessRetainAction(lastAction);)this._actions.pop(),lastAction=this._actions[this._actions.length-1];return this}};__name(_TextX,"TextX"),__publicField(_TextX,"id","text-x"),__publicField(_TextX,"uri","https://github.com/dream-num/univer#text-x");let TextX=_TextX;Object.defineProperty(TextX,"name",{value:"text-x"});const _JSONX=class _JSONX{static registerSubtype(subType){var _a2;subType==null||this._subTypes.has(subType.name)&&((_a2=this._subTypes.get(subType.name))==null?void 0:_a2.id)!==TextX.id||(this._subTypes.set(subType.name,subType),dist$1.type.registerSubtype(subType))}static apply(doc,actions){if(!dist$1.type.isNoop(actions))return dist$1.type.apply(doc,actions)}static compose(thisActions,otherActions){return dist$1.type.compose(thisActions,otherActions)}static transform(thisActions,otherActions,priority){return dist$1.type.transform(thisActions,otherActions,priority)}static transformPosition(thisActions,index2,priority="right"){return thisActions&&thisActions.length===2&&thisActions[0]==="body"&&thisActions[1].et===TextX.name?TextX.transformPosition(thisActions[1].e,index2,priority==="left"):index2}static invertWithDoc(actions,doc){return dist$1.type.invertWithDoc(actions,doc)}static isNoop(actions){return dist$1.type.isNoop(actions)}static getInstance(){return this._instance==null&&(this._instance=new _JSONX),this._instance}removeOp(path,value){return dist$1.removeOp(path,value)}moveOp(from,to){return dist$1.moveOp(from,to)}insertOp(path,value){return dist$1.insertOp(path,value)}replaceOp(path,oldVal,newVal){return dist$1.replaceOp(path,oldVal,newVal)}editOp(subOp,path=["body"]){return dist$1.editOp(path,TextX.name,subOp)}};__name(_JSONX,"JSONX"),__publicField(_JSONX,"uri","https://github.com/dream-num/univer#json-x"),__publicField(_JSONX,"_subTypes",new Map),__publicField(_JSONX,"_instance",null);let JSONX=_JSONX;JSONX.registerSubtype(TextX);const DEFAULT_DOC={id:"default_doc",documentStyle:{}},_DocumentDataModelSimple=class _DocumentDataModelSimple extends UnitModel{constructor(snapshot){var _a2;super();__publicField(this,"type",I.UNIVER_DOC);__publicField(this,"_name$",new rxjs.BehaviorSubject(""));__publicField(this,"name$",this._name$.asObservable());__publicField(this,"snapshot");this.snapshot={...DEFAULT_DOC,...snapshot},this._name$.next((_a2=this.snapshot.title)!=null?_a2:"No Title")}getUnitId(){throw new Error("Method not implemented.")}setName(name){this.snapshot.title=name,this._name$.next(name)}get drawings(){return this.snapshot.drawings}get documentStyle(){return this.snapshot.documentStyle}get lists(){return this.snapshot.lists}get zoomRatio(){var _a2;return((_a2=this.snapshot.settings)==null?void 0:_a2.zoomRatio)||1}resetDrawing(drawings,drawingsOrder){this.snapshot.drawings=drawings,this.snapshot.drawingsOrder=drawingsOrder}getBody(){return this.snapshot.body}getShouldRenderLoopImmediately(){return this.snapshot.shouldStartRenderingImmediately!==!1}getContainer(){return this.snapshot.container}getSnapshot(){return this.snapshot}updateDocumentId(unitId){this.snapshot.id=unitId}updateDocumentRenderConfig(config){const{documentStyle}=this.snapshot;documentStyle.renderConfig==null?documentStyle.renderConfig=config:documentStyle.renderConfig={...documentStyle.renderConfig,...config}}updateDocumentStyle(config){this.snapshot.documentStyle==null?this.snapshot.documentStyle=config:this.snapshot.documentStyle={...this.snapshot.documentStyle,...config}}updateDocumentDataMargin(data){const{t,l:l2,b,r}=data,{documentStyle}=this.snapshot;t!=null&&(documentStyle.marginTop=t),l2!=null&&(documentStyle.marginLeft=l2),b!=null&&(documentStyle.marginBottom=b),r!=null&&(documentStyle.marginRight=r)}updateDocumentDataPageSize(width,height){const{documentStyle}=this.snapshot;if(!documentStyle.pageSize){width=width!=null?width:Number.POSITIVE_INFINITY,height=height!=null?height:Number.POSITIVE_INFINITY,documentStyle.pageSize={width,height};return}width!==void 0&&(documentStyle.pageSize.width=width),height!==void 0&&(documentStyle.pageSize.height=height)}updateDrawing(id,config){const{drawings}=this,{width,height,left,top}=config,drawing=drawings==null?void 0:drawings[id];if(!drawing)return;const objectTransform=drawing.docTransform;objectTransform.size.width=width,objectTransform.size.height=height,objectTransform.positionH.posOffset=left,objectTransform.positionV.posOffset=top}setZoomRatio(zoomRatio=1){this.snapshot.settings==null?this.snapshot.settings={zoomRatio}:this.snapshot.settings.zoomRatio=1}};__name(_DocumentDataModelSimple,"DocumentDataModelSimple");let DocumentDataModelSimple=_DocumentDataModelSimple;const _DocumentDataModel=class _DocumentDataModel extends DocumentDataModelSimple{constructor(snapshot){var _a2,_b2;super(Tools.isEmptyObject(snapshot)?getEmptySnapshot$1():snapshot);__publicField(this,"_unitId");__publicField(this,"headerModelMap",new Map);__publicField(this,"footerModelMap",new Map);const UNIT_ID_LENGTH=6;this._unitId=(_a2=this.snapshot.id)!=null?_a2:Tools.generateRandomId(UNIT_ID_LENGTH),this._initializeHeaderFooterModel(),this._name$.next((_b2=this.snapshot.title)!=null?_b2:"")}dispose(){super.dispose(),this.headerModelMap.forEach(header=>{header.dispose()}),this.footerModelMap.forEach(footer=>{footer.dispose()}),this._name$.complete()}getDrawings(){return this.snapshot.drawings}getDrawingsOrder(){return this.snapshot.drawingsOrder}getCustomRanges(){var _a2;return(_a2=this.snapshot.body)==null?void 0:_a2.customRanges}getCustomDecorations(){var _a2;return(_a2=this.snapshot.body)==null?void 0:_a2.customDecorations}getRev(){var _a2;return(_a2=this.snapshot.rev)!=null?_a2:1}incrementRev(){this.snapshot.rev=this.getRev()+1}getSettings(){return this.snapshot.settings}reset(snapshot){if(snapshot.id&&snapshot.id!==this._unitId)throw new Error("Cannot reset a document model with a different unit id!");this.snapshot={...DEFAULT_DOC,...snapshot},this._initializeHeaderFooterModel()}getSelfOrHeaderFooterModel(segmentId){if(segmentId!=null){if(this.headerModelMap.has(segmentId))return this.headerModelMap.get(segmentId);if(this.footerModelMap.has(segmentId))return this.footerModelMap.get(segmentId)}return this}getUnitId(){return this._unitId}apply(actions){if(!JSONX.isNoop(actions))return this.snapshot=JSONX.apply(this.snapshot,actions),actions!=null&&actions.some(a=>Array.isArray(a)&&((a==null?void 0:a[0])==="headers"||(a==null?void 0:a[0])==="footers"))&&(this.headerModelMap.clear(),this.footerModelMap.clear(),this._initializeHeaderFooterModel()),this.snapshot}sliceBody(startOffset,endOffset,type2=SliceBodyType.copy){const body=this.getBody();if(body!=null)return getBodySlice(body,startOffset,endOffset,!1,type2)}_initializeHeaderFooterModel(){const{headers,footers}=this.getSnapshot();if(headers)for(const headerId in headers){const header=headers[headerId];this.headerModelMap.set(headerId,new _DocumentDataModel(header))}if(footers)for(const footerId in footers){const footer=footers[footerId];this.footerModelMap.set(footerId,new _DocumentDataModel(footer))}}updateDocumentId(unitId){super.updateDocumentId(unitId),this._unitId=unitId}};__name(_DocumentDataModel,"DocumentDataModel");let DocumentDataModel=_DocumentDataModel;const IConfigService=createIdentifier("univer.config-service"),_ConfigService=class _ConfigService{constructor(){__publicField(this,"_config",new Map)}getConfig(id){return this._config.get(id)}setConfig(id,value){this._config.set(id,value)}deleteConfig(id){this._config.delete(id)}};__name(_ConfigService,"ConfigService");let ConfigService=_ConfigService;const _ErrorService=class _ErrorService extends Disposable{constructor(){super(...arguments);__publicField(this,"_error$",new rxjs.Subject);__publicField(this,"error$",this._error$.asObservable())}dispose(){this._error$.complete()}emit(key){this._error$.next({errorKey:key})}};__name(_ErrorService,"ErrorService");let ErrorService=_ErrorService;const _Styles=class _Styles{constructor(styles={}){__publicField(this,"_styles");__publicField(this,"_cacheMap",new LRUMap(1e5));this._styles=styles,this._generateCacheMap()}each(callback){return Object.entries(this._styles).forEach(callback),this}search(data,styleObject){if(this._cacheMap.has(styleObject))return this._cacheMap.get(styleObject);const existingId=this._getExistingStyleId(data);return existingId||"-1"}get(id){return typeof id!="string"?id:(id=String(id),this._styles[id])}add(data,styleObject){const id=Tools.generateRandomId(6);return this._styles[id]=data,this._cacheMap.set(styleObject,id),id}setValue(data){if(data==null)return;const styleObject=JSON.stringify(data),result=this.search(data,styleObject);return result!=="-1"?result:this.add(data,styleObject)}toJSON(){return this._styles}getStyleByCell(cell){let style;cell&&Tools.isObject(cell.s)?style=cell.s:style=(cell==null?void 0:cell.s)&&this.get(cell.s);const interceptStyle=cell==null?void 0:cell.interceptorStyle;return interceptStyle?{...style,...interceptStyle}:style}_generateCacheMap(){const{_styles,_cacheMap}=this;for(const id in _styles){const styleObject=JSON.stringify(_styles[id]);_cacheMap.set(styleObject,id)}}_getExistingStyleId(data){const{_styles}=this;for(const id in _styles)if(Tools.diffValue(_styles[id],data))return id;return null}};__name(_Styles,"Styles");let Styles=_Styles;const _ColumnManager=class _ColumnManager{constructor(_config,data){__publicField(this,"_columnData",{});this._config=_config,this._columnData=data}getColumnData(){return this._columnData}getColVisible(colPos){const{_columnData}=this,col=_columnData[colPos];return col?col.hd!==BooleanNumber.TRUE:!0}getHiddenCols(start=0,end=this.getSize()-1){const hiddenCols=[];let inHiddenRange=!1,startColumn=-1;for(let i=start;i<=end;i++){const visible=this.getColVisible(i);inHiddenRange&&visible?(inHiddenRange=!1,hiddenCols.push({rangeType:RANGE_TYPE.COLUMN,startColumn,endColumn:i-1,startRow:0,endRow:0})):!inHiddenRange&&!visible&&(inHiddenRange=!0,startColumn=i)}return inHiddenRange&&hiddenCols.push({startRow:0,endRow:0,startColumn,endColumn:end,rangeType:RANGE_TYPE.COLUMN}),hiddenCols}getVisibleCols(start=0,end=this.getSize()-1){const visibleCols=[];let inVisibleRange=!1,startColumn=-1;for(let i=start;i<=end;i++){const visible=this.getColVisible(i);inVisibleRange&&!visible?(inVisibleRange=!1,visibleCols.push({rangeType:RANGE_TYPE.COLUMN,startColumn,endColumn:i-1,startRow:0,endRow:0})):!inVisibleRange&&visible&&(inVisibleRange=!0,startColumn=i)}return inVisibleRange&&visibleCols.push({startRow:0,endRow:0,startColumn,endColumn:end,rangeType:RANGE_TYPE.COLUMN}),visibleCols}getColumnDatas(columnPos,numColumns){const columnData={};let index2=0;for(let i=columnPos;i<columnPos+numColumns;i++){const data=this.getColumnOrCreate(i);columnData[index2]=data,index2++}return columnData}getSize(){return getArrayLength(this._columnData)}getColumnWidth(columnPos){const{_columnData}=this,config=this._config;let width=0;return width=(_columnData[columnPos]||{hd:BooleanNumber.FALSE,w:config.defaultColumnWidth}).w||config.defaultColumnWidth,width}getColumn(columnPos){const column=this._columnData[columnPos];if(column)return column}getColumnOrCreate(columnPos){const{_columnData}=this,config=this._config,column=_columnData[columnPos];if(column)return column;const create={w:config.defaultColumnWidth,hd:BooleanNumber.FALSE};return this._columnData[columnPos]=create,create}};__name(_ColumnManager,"ColumnManager");let ColumnManager=_ColumnManager;const _RowManager=class _RowManager{constructor(_config,_viewModel,data){__publicField(this,"_rowData");this._config=_config,this._viewModel=_viewModel,this._rowData=data}getRowData(){return this._rowData}getRowDatas(rowPos,numRows){const rowData={};let index2=0;for(let i=rowPos;i<rowPos+numRows;i++){const data=this.getRowOrCreate(i);rowData[index2]=data,index2++}return rowData}getRowHeight(rowPos,count=1){const{_rowData}=this,config=this._config;let height=0;for(let i=0;i<count;i++){const row=_rowData[i+rowPos]||{hd:BooleanNumber.FALSE,h:config.defaultRowHeight},{ia,ah,h=config.defaultRowHeight}=row;height+=(ia==null||ia===BooleanNumber.TRUE)&&typeof ah=="number"?ah:h}return height}getRow(rowPos){return this._rowData[rowPos]}getRowOrCreate(rowPos){const{_rowData}=this,row=_rowData[rowPos];if(row)return row;const config=this._config,create={hd:BooleanNumber.FALSE,h:config.defaultRowHeight};return _rowData[rowPos]=create,create}getHiddenRows(start=0,end=this.getSize()-1){const hiddenRows=[];let inHiddenRange=!1,startRow=-1;for(let i=start;i<=end;i++){const visible=this.getRowRawVisible(i);inHiddenRange&&visible?(inHiddenRange=!1,hiddenRows.push({startRow,endRow:i-1,startColumn:0,endColumn:0,rangeType:RANGE_TYPE.ROW})):!inHiddenRange&&!visible&&(inHiddenRange=!0,startRow=i)}return inHiddenRange&&hiddenRows.push({startRow,endRow:end,startColumn:0,endColumn:0,rangeType:RANGE_TYPE.ROW}),hiddenRows}getVisibleRows(start=0,end=this.getSize()-1){const visibleRows=[];let inVisibleRange=!1,startRow=-1;for(let i=start;i<=end;i++){const visible=this.getRowRawVisible(i);inVisibleRange&&!visible?(inVisibleRange=!1,visibleRows.push({startRow,endRow:i-1,startColumn:0,endColumn:0,rangeType:RANGE_TYPE.ROW})):!inVisibleRange&&visible&&(inVisibleRange=!0,startRow=i)}return inVisibleRange&&visibleRows.push({startRow,endRow:end,startColumn:0,endColumn:0,rangeType:RANGE_TYPE.ROW}),visibleRows}getRowRawVisible(row){const rowData=this.getRow(row);return rowData?rowData.hd!==BooleanNumber.TRUE:!0}getSize(){return getArrayLength(this._rowData)}};__name(_RowManager,"RowManager");let RowManager=_RowManager;const DEFAULT_WORKSHEET_ROW_COUNT_KEY="DEFAULT_WORKSHEET_ROW_COUNT",DEFAULT_WORKSHEET_ROW_COUNT=1e3,DEFAULT_WORKSHEET_COLUMN_COUNT_KEY="DEFAULT_WORKSHEET_COLUMN_COUNT",DEFAULT_WORKSHEET_COLUMN_COUNT=20,DEFAULT_WORKSHEET_ROW_HEIGHT_KEY="DEFAULT_WORKSHEET_ROW_HEIGHT",DEFAULT_WORKSHEET_ROW_HEIGHT=24,DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY="DEFAULT_WORKSHEET_COLUMN_WIDTH",DEFAULT_WORKSHEET_COLUMN_WIDTH=88,DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY="DEFAULT_WORKSHEET_ROW_TITLE_WIDTH",DEFAULT_WORKSHEET_ROW_TITLE_WIDTH=46,DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY="DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT",DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT=20;function mergeWorksheetSnapshotWithDefault(snapshot){const defaultSnapshot={name:"Sheet1",id:"sheet-01",tabColor:"",hidden:BooleanNumber.FALSE,rowCount:DEFAULT_WORKSHEET_ROW_COUNT,columnCount:DEFAULT_WORKSHEET_COLUMN_COUNT,zoomRatio:1,freeze:{xSplit:0,ySplit:0,startRow:-1,startColumn:-1},scrollTop:0,scrollLeft:0,defaultColumnWidth:DEFAULT_WORKSHEET_COLUMN_WIDTH,defaultRowHeight:DEFAULT_WORKSHEET_ROW_HEIGHT,mergeData:[],cellData:{},rowData:{},columnData:{},showGridlines:BooleanNumber.TRUE,rowHeader:{width:DEFAULT_WORKSHEET_ROW_TITLE_WIDTH,hidden:BooleanNumber.FALSE},columnHeader:{height:DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT,hidden:BooleanNumber.FALSE},selections:["A1"],rightToLeft:BooleanNumber.FALSE};return Object.keys(defaultSnapshot).forEach(_key=>{const key=_key;typeof snapshot[key]>"u"&&(snapshot[key]=defaultSnapshot[key])}),snapshot}__name(mergeWorksheetSnapshotWithDefault,"mergeWorksheetSnapshotWithDefault");const _SheetViewModel=class _SheetViewModel extends Disposable{constructor(getRawCell){super();__publicField(this,"_cellContentInterceptor",null);__publicField(this,"_rowFilteredInterceptor",null);this.getRawCell=getRawCell}dispose(){super.dispose(),this._cellContentInterceptor=null,this._rowFilteredInterceptor=null}getCell(row,col){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(row,col):this.getRawCell(row,col)}getRowFiltered(row){var _a2,_b2;return(_b2=(_a2=this._rowFilteredInterceptor)==null?void 0:_a2.getRowFiltered(row))!=null?_b2:!1}registerCellContentInterceptor(interceptor){if(this._cellContentInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._cellContentInterceptor=interceptor,toDisposable(()=>this._cellContentInterceptor=null)}registerRowFilteredInterceptor(interceptor){if(this._rowFilteredInterceptor)throw new Error("[SheetViewModel]: Interceptor already registered.");return this._rowFilteredInterceptor=interceptor,toDisposable(()=>this._rowFilteredInterceptor=null)}};__name(_SheetViewModel,"SheetViewModel");let SheetViewModel=_SheetViewModel;const _Worksheet=class _Worksheet{constructor(unitId,snapshot,_styles){__publicField(this,"_sheetId");__publicField(this,"_snapshot");__publicField(this,"_cellData");__publicField(this,"_rowManager");__publicField(this,"_columnManager");__publicField(this,"_viewModel");var _a2;this.unitId=unitId,this._styles=_styles,this._snapshot=mergeWorksheetSnapshotWithDefault(snapshot);const{columnData,rowData,cellData}=this._snapshot;this._sheetId=(_a2=this._snapshot.id)!=null?_a2:Tools.generateRandomId(6),this._cellData=new ObjectMatrix(cellData),this._viewModel=new SheetViewModel((row,col)=>this.getCellRaw(row,col)),this._rowManager=new RowManager(this._snapshot,this._viewModel,rowData),this._columnManager=new ColumnManager(this._snapshot,columnData)}__interceptViewModel(callback){callback(this._viewModel)}getSnapshot(){return this._snapshot}getCellMatrix(){return this._cellData}getCellMatrixPrintRange(){const matrix=this.getCellMatrix(),mergedCells=this.getMergeData();let startRow=-1,endRow=-1,startColumn=-1,endColumn=-1,rowInitd=!1,columnInitd=!1;return matrix.forEach((rowIndex,row)=>{Object.keys(row).forEach(colIndexStr=>{const colIndex=+colIndexStr,cellValue=matrix.getValue(rowIndex,colIndex),style=cellValue!=null&&cellValue.s?this._styles.get(cellValue.s):null,isLegalBorder=(style==null?void 0:style.bd)&&(style.bd.b||style.bd.l||style.bd.r||style.bd.t||style.bd.bc_tr||style.bd.bl_tr||style.bd.ml_tr||style.bd.tl_bc||style.bd.tl_br||style.bd.tl_mr);(cellValue&&(cellValue.v||cellValue.p)||style!=null&&style.bg||isLegalBorder)&&(rowInitd?startRow=Math.min(startRow,rowIndex):(startRow=rowIndex,rowInitd=!0),endRow=Math.max(endRow,rowIndex),columnInitd?startColumn=Math.min(startColumn,colIndex):(columnInitd=!0,startColumn=colIndex),endColumn=Math.max(endColumn,colIndex))})}),mergedCells.forEach(mergedCell=>{rowInitd?startRow=Math.min(startRow,mergedCell.startRow):(startRow=mergedCell.startRow,rowInitd=!0),endRow=Math.max(endRow,mergedCell.endRow),columnInitd?startColumn=Math.min(startColumn,mergedCell.startColumn):(startColumn=mergedCell.startColumn,rowInitd=!0),endColumn=Math.max(endColumn,mergedCell.endColumn)}),!rowInitd||!columnInitd?null:{startColumn,startRow,endColumn,endRow}}getRowManager(){return this._rowManager}getUnitId(){return this.unitId}getSheetId(){return this._sheetId}getColumnManager(){return this._columnManager}getName(){return this._snapshot.name}clone(){const{_snapshot:_config}=this,copy=Tools.deepClone(_config);return new _Worksheet(this.unitId,copy,this._styles)}getMergeData(){return this._snapshot.mergeData}getMergedCell(row,col){const rectangleList=this._snapshot.mergeData;for(let i=0;i<rectangleList.length;i++){const range=rectangleList[i];if(Rectangle.intersects({startRow:row,startColumn:col,endRow:row,endColumn:col},range))return range}return null}getCell(row,col){return row<0||col<0?null:this._viewModel.getCell(row,col)}getCellRaw(row,col){return this.getCellMatrix().getValue(row,col)}getRowFiltered(row){return this._viewModel.getRowFiltered(row)}getMatrixWithMergedCells(row,col,endRow,endCol,isRaw=!1){const matrix=this.getCellMatrix(),mergedCellsInRange=this._snapshot.mergeData.filter(rect=>Rectangle.intersects({startRow:row,startColumn:col,endRow,endColumn:endCol},rect)),returnCellMatrix=new ObjectMatrix;return createRowColIter(row,endRow,col,endCol).forEach((row2,col2)=>{const v=isRaw?this.getCellRaw(row2,col2):this.getCell(row2,col2);v&&returnCellMatrix.setValue(row2,col2,v)}),mergedCellsInRange.forEach(mergedCell=>{const{startColumn,startRow,endColumn,endRow:endRow2}=mergedCell;createRowColIter(startRow,endRow2,startColumn,endColumn).forEach((row2,col2)=>{row2===startRow&&col2===startColumn&&returnCellMatrix.setValue(row2,col2,{...matrix.getValue(row2,col2),rowSpan:endRow2-startRow+1,colSpan:endColumn-startColumn+1}),(row2!==startRow||col2!==startColumn)&&returnCellMatrix.realDeleteValue(row2,col2)})}),returnCellMatrix}getRange(startRowOrRange,startColumn,endRow,endColumn){return typeof startRowOrRange=="object"?new Range(this,startRowOrRange,{getStyles:__name(()=>this._styles,"getStyles")}):new Range(this,{startRow:startRowOrRange,startColumn,endColumn:endColumn||startColumn,endRow:endRow||startRowOrRange},{getStyles:__name(()=>this._styles,"getStyles")})}getScrollLeftTopFromSnapshot(){return{scrollLeft:this._snapshot.scrollLeft,scrollTop:this._snapshot.scrollTop}}getZoomRatio(){return this._snapshot.zoomRatio||1}getConfig(){return this._snapshot}getFreeze(){return this._snapshot.freeze}getMaxColumns(){const{_snapshot:_config}=this,{columnCount}=_config;return columnCount}getMaxRows(){const{_snapshot:_config}=this,{rowCount}=_config;return rowCount}getRowCount(){return this._snapshot.rowCount}setRowCount(count){this._snapshot.rowCount=count}getColumnCount(){return this._snapshot.columnCount}setColumnCount(count){this._snapshot.columnCount=count}isSheetHidden(){return this._snapshot.hidden}hasHiddenGridlines(){const{_snapshot:_config}=this,{showGridlines}=_config;return showGridlines===0}getTabColor(){const{_snapshot:_config}=this,{tabColor}=_config;return tabColor}getColumnWidth(columnPosition){return this.getColumnManager().getColumnWidth(columnPosition)}getRowHeight(row){return this._viewModel.getRowFiltered(row)?0:this.getRowManager().getRowHeight(row)}getRowVisible(row){return this._viewModel.getRowFiltered(row)?!1:this.getRowRawVisible(row)}getRowRawVisible(row){return this.getRowManager().getRowRawVisible(row)}getHiddenRows(start,end){const lastColumn=this.getMaxColumns()-1,ranges=this._rowManager.getHiddenRows(start,end);return ranges.forEach(range=>range.endColumn=lastColumn),ranges}getColVisible(col){return this._columnManager.getColVisible(col)}getHiddenCols(start,end){const lastRow=this.getMaxRows()-1,ranges=this._columnManager.getHiddenCols(start,end);return ranges.forEach(range=>range.endRow=lastRow),ranges}getVisibleRows(){const rowCount=this.getRowCount();return this._rowManager.getVisibleRows(0,rowCount-1)}getVisibleCols(){const columnCount=this.getColumnCount();return this._columnManager.getVisibleCols(0,columnCount-1)}isRightToLeft(){const{_snapshot:_config}=this,{rightToLeft}=_config;return rightToLeft}getLastRowWithContent(){return this._cellData.getLength()-1}getLastColumnWithContent(){return this._cellData.getRange().endColumn}cellHasValue(value){return value&&(value.v!==void 0||value.f!==void 0||value.p!==void 0)}iterateByRow(range,skipEmpty=!0){const{startRow,startColumn,endRow,endColumn}=range,worksheet=this;return{[Symbol.iterator]:()=>{let rowIndex=startRow,columnIndex=startColumn;return{next(){for(;;){if(columnIndex>endColumn&&(rowIndex+=1,columnIndex=startColumn),rowIndex>endRow)return{done:!0,value:void 0};const cellValue=worksheet.getCell(rowIndex,columnIndex),isEmptyCell2=!cellValue,mergedCell=worksheet.getMergedCell(rowIndex,columnIndex);if(mergedCell){if(rowIndex!==mergedCell.startRow||columnIndex!==mergedCell.startColumn){columnIndex=mergedCell.endColumn+1;continue}if(isEmptyCell2&&skipEmpty){columnIndex=mergedCell.endColumn+1;continue}const value={row:rowIndex,col:columnIndex,value:cellValue};return value.colSpan=mergedCell.endColumn-mergedCell.startColumn+1,value.rowSpan=mergedCell.endRow-mergedCell.startRow+1,columnIndex=mergedCell.endColumn+1,{done:!1,value}}if(isEmptyCell2&&skipEmpty)columnIndex+=1;else{const value={row:rowIndex,col:columnIndex,value:cellValue};return columnIndex+=1,{done:!1,value}}}}}}}}iterateByColumn(range,skipEmpty=!0,skipNonTopLeft=!0){const{startRow,startColumn,endRow,endColumn}=range,worksheet=this;return{[Symbol.iterator]:()=>{let rowIndex=startRow,columnIndex=startColumn;return{next(){for(;;){if(rowIndex>endRow&&(columnIndex+=1,rowIndex=startRow),columnIndex>endColumn)return{done:!0,value:void 0};const mergedCell=worksheet.getMergedCell(rowIndex,columnIndex);if(mergedCell){const isNotTop=rowIndex!==mergedCell.startRow,isNotTopLeft=isNotTop||columnIndex!==mergedCell.startColumn;if(skipNonTopLeft&&isNotTopLeft||!skipNonTopLeft&&isNotTop){rowIndex=mergedCell.endRow+1;continue}const cellValue2=worksheet.getCell(mergedCell.startRow,mergedCell.startColumn);if(!cellValue2&&skipEmpty){rowIndex=mergedCell.endRow+1;continue}const value={row:rowIndex,col:mergedCell.startColumn,value:cellValue2};return value.colSpan=mergedCell.endColumn-mergedCell.startColumn+1,value.rowSpan=mergedCell.endRow-mergedCell.startRow+1,rowIndex=mergedCell.endRow+1,{done:!1,value}}const cellValue=worksheet.getCell(rowIndex,columnIndex);if(!cellValue&&skipEmpty)rowIndex+=1;else{const value={row:rowIndex,col:columnIndex,value:cellValue};return rowIndex+=1,{done:!1,value}}}}}}}}};__name(_Worksheet,"Worksheet");let Worksheet=_Worksheet;function extractPureTextFromCell(cell){var _a2,_b2;if(!cell)return"";const richTextValue=(_b2=(_a2=cell.p)==null?void 0:_a2.body)==null?void 0:_b2.dataStream;if(richTextValue)return richTextValue;const rawValue=cell.v;return typeof rawValue=="string"?cell.t===CellValueType.BOOLEAN?rawValue.toUpperCase():rawValue.replace(/[\r\n]/g,""):typeof rawValue=="number"?cell.t===CellValueType.BOOLEAN?rawValue?"TRUE":"FALSE":rawValue.toString():typeof rawValue=="boolean"?rawValue?"TRUE":"FALSE":""}__name(extractPureTextFromCell,"extractPureTextFromCell");const version="0.2.7";function getEmptySnapshot(unitID="",locale=LocaleType.ZH_CN,name=""){return{id:unitID,sheetOrder:[],name,appVersion:version,locale,styles:{},sheets:{},resources:[]}}__name(getEmptySnapshot,"getEmptySnapshot");var __defProp$7=Object.defineProperty,__getOwnPropDesc$7=Object.getOwnPropertyDescriptor,__decorateClass$7=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$7(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$7(target,key,result),result},"__decorateClass$7"),__decorateParam$6=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$6");function getWorksheetUID(workbook,worksheet){return`${workbook.getUnitId()}|${worksheet.getSheetId()}`}__name(getWorksheetUID,"getWorksheetUID"),exports2.Workbook=(_d=class extends UnitModel{constructor(workbookData={},_logService){super();__publicField(this,"type",I.UNIVER_SHEET);__publicField(this,"_sheetCreated$",new rxjs.Subject);__publicField(this,"sheetCreated$",this._sheetCreated$.asObservable());__publicField(this,"_sheetDisposed$",new rxjs.Subject);__publicField(this,"sheetDisposed$",this._sheetDisposed$.asObservable());__publicField(this,"_activeSheet$",new rxjs.BehaviorSubject(null));__publicField(this,"activeSheet$",this._activeSheet$.asObservable());__publicField(this,"_worksheets");__publicField(this,"_styles");__publicField(this,"_snapshot");__publicField(this,"_unitId");__publicField(this,"_count");__publicField(this,"_name$");__publicField(this,"name$");this._logService=_logService;const DEFAULT_WORKBOOK=getEmptySnapshot();Tools.isEmptyObject(workbookData)?this._snapshot=DEFAULT_WORKBOOK:this._snapshot=Tools.commonExtend(DEFAULT_WORKBOOK,workbookData);const{styles}=this._snapshot;(this._snapshot.id==null||this._snapshot.id.length===0)&&(this._snapshot.id=Tools.generateRandomId(6)),this._unitId=this._snapshot.id,this._styles=new Styles(styles),this._count=1,this._worksheets=new Map,this._name$=new rxjs.BehaviorSubject(workbookData.name||""),this.name$=this._name$.asObservable(),this._parseWorksheetSnapshots()}get _activeSheet(){return this._activeSheet$.getValue()}get name(){return this._name$.getValue()}dispose(){super.dispose(),this._sheetCreated$.complete(),this._sheetDisposed$.complete(),this._activeSheet$.complete(),this._name$.complete()}save(){return Tools.deepClone(this._snapshot)}static isIRangeType(range){return typeof range=="string"||"startRow"in range||"row"in range}getSnapshot(){return this._snapshot}getName(){return this._snapshot.name}setName(name){this._name$.next(name),this._snapshot.name=name}getUnitId(){return this._unitId}getRev(){var _a2;return(_a2=this._snapshot.rev)!=null?_a2:1}incrementRev(){this._snapshot.rev=this.getRev()+1}getShouldRenderLoopImmediately(){return this._snapshot.shouldStartRenderingImmediately!==!1}getContainer(){return this._snapshot.container}addWorksheet(id,index2,worksheetSnapshot){const{sheets,sheetOrder}=this._snapshot;if(sheets[id])return!1;sheets[id]=worksheetSnapshot,sheetOrder.splice(index2,0,id);const worksheet=new Worksheet(this._unitId,worksheetSnapshot,this._styles);return this._worksheets.set(id,worksheet),this._sheetCreated$.next(worksheet),!0}getSheetOrders(){return this._snapshot.sheetOrder}getWorksheets(){return this._worksheets}getActiveSpreadsheet(){return this}getStyles(){return this._styles}getConfig(){return this._snapshot}getIndexBySheetId(sheetId){const{sheetOrder}=this._snapshot;return sheetOrder.findIndex(id=>id===sheetId)}getActiveSheet(allowNull){if(!this._activeSheet&&typeof allowNull>"u")throw new Error(`[Workbook]: no active Worksheet on Workbook ${this._unitId}!`);return this._activeSheet}ensureActiveSheet(){const currentActive=this._activeSheet;if(currentActive)return currentActive;const sheetOrder=this._snapshot.sheetOrder;for(let i=0,len=sheetOrder.length;i<len;i++){const worksheet2=this._worksheets.get(sheetOrder[i]);if(worksheet2&&worksheet2.isSheetHidden()!==BooleanNumber.TRUE)return this.setActiveSheet(worksheet2),worksheet2}const worksheet=this._worksheets.get(sheetOrder[0]);return this.setActiveSheet(worksheet),worksheet}setActiveSheet(worksheet){this._activeSheet$.next(worksheet)}removeSheet(sheetId){const sheetToRemove=this._worksheets.get(sheetId);return sheetToRemove?(this._worksheets.delete(sheetId),this._snapshot.sheetOrder.splice(this._snapshot.sheetOrder.indexOf(sheetId),1),delete this._snapshot.sheets[sheetId],this._sheetDisposed$.next(sheetToRemove),!0):!1}getActiveSheetIndex(){const{sheetOrder}=this._snapshot;return sheetOrder.findIndex(sheetId=>this._worksheets.get(sheetId)===this._activeSheet)}getSheetSize(){return this._snapshot.sheetOrder.length}getSheets(){const{sheetOrder}=this._snapshot;return sheetOrder.map(sheetId=>this._worksheets.get(sheetId))}getSheetsName(){const{sheetOrder}=this._snapshot,names=[];return sheetOrder.forEach(sheetId=>{const worksheet=this._worksheets.get(sheetId);worksheet&&names.push(worksheet.getName())}),names}getSheetIndex(sheet){const{sheetOrder}=this._snapshot;return sheetOrder.findIndex(sheetId=>sheet.getSheetId()===sheetId)}getSheetBySheetName(name){const{sheetOrder}=this._snapshot,sheetId=sheetOrder.find(sheetId2=>this._worksheets.get(sheetId2).getName()===name);return this._worksheets.get(sheetId)}getSheetBySheetId(sheetId){return this._worksheets.get(sheetId)}getSheetByIndex(index2){const{sheetOrder}=this._snapshot;return this._worksheets.get(sheetOrder[index2])}getHiddenWorksheets(){return this.getSheets().filter(s=>s.getConfig().hidden===BooleanNumber.TRUE).map(s=>s.getConfig().id)}getUnhiddenWorksheets(){return this.getSheets().filter(s=>s.getConfig().hidden!==BooleanNumber.TRUE).map(s=>s.getConfig().id)}load(config){this._snapshot=config}checkSheetName(name){return this.getSheetsName().includes(name)}uniqueSheetName(name="Sheet1"){let output=name;for(;this.checkSheetName(output);)output=name+this._count,this._count++;return output}generateNewSheetName(name){let output=name+this._count;for(;this.checkSheetName(output);)output=name+this._count,this._count++;return output}_parseWorksheetSnapshots(){const{_snapshot,_worksheets}=this,{sheets,sheetOrder}=_snapshot;if(Tools.isEmptyObject(sheets)){const firstSheetId=Tools.generateRandomId();sheets[firstSheetId]={id:firstSheetId}}for(const sheetId in sheets){const worksheetSnapshot=sheets[sheetId],{name}=worksheetSnapshot;worksheetSnapshot.name=this.uniqueSheetName(name),worksheetSnapshot.name!==name&&this._logService.debug("[Workbook]",`The worksheet name ${name} is duplicated, we changed it to ${worksheetSnapshot.name}. Please fix the problem in your snapshot.`);const worksheet=new Worksheet(this._unitId,worksheetSnapshot,this._styles);_worksheets.set(sheetId,worksheet),sheetOrder.includes(sheetId)||sheetOrder.push(sheetId)}this.ensureActiveSheet()}},__name(_d,"Workbook"),_d),exports2.Workbook=__decorateClass$7([__decorateParam$6(1,ILogService)],exports2.Workbook);const _SlideDataModel=class _SlideDataModel extends UnitModel{constructor(snapshot){var _a2;super();__publicField(this,"type",I.UNIVER_SLIDE);__publicField(this,"_activePage$",new rxjs.BehaviorSubject(null));__publicField(this,"activePage$",this._activePage$.asObservable());__publicField(this,"_name$");__publicField(this,"name$");__publicField(this,"_snapshot");__publicField(this,"_unitId");this._snapshot={...DEFAULT_SLIDE,...snapshot},this._unitId=(_a2=this._snapshot.id)!=null?_a2:Tools.generateRandomId(6),this._name$=new rxjs.BehaviorSubject(this._snapshot.title),this.name$=this._name$.asObservable()}get _activePage(){var _a2,_b2;const activePage=this._activePage$.getValue();if(!activePage){const activePageId=(_a2=this.getPageOrder())==null?void 0:_a2[0];return activePageId?(_b2=this.getPages())==null?void 0:_b2[activePageId]:null}return activePage}setName(name){var _a2;this._snapshot.title=name,this._name$.next(name),this._unitId=(_a2=this._snapshot.id)!=null?_a2:generateRandomId(6)}getContainer(){return this._snapshot.container}getSnapshot(){return this._snapshot}getUnitId(){return this._unitId}getPages(){var _a2;return(_a2=this._snapshot.body)==null?void 0:_a2.pages}getPageOrder(){var _a2;return(_a2=this._snapshot.body)==null?void 0:_a2.pageOrder}getPage(pageId){const pages=this.getPages();return pages==null?void 0:pages[pageId]}getElementsByPage(pageId){var _a2;return(_a2=this.getPage(pageId))==null?void 0:_a2.pageElements}getElement(pageId,elementId){var _a2;return(_a2=this.getElementsByPage(pageId))==null?void 0:_a2[elementId]}getPageSize(){return this._snapshot.pageSize}getBlankPage(){const id=generateRandomId(6);return{id,pageType:PageType.SLIDE,zIndex:10,title:id,description:"",pageBackgroundFill:{rgb:"rgb(255,255,255)"},pageElements:{}}}setActivePage(page){this._activePage$.next(page)}getActivePage(){return this._activePage}updatePage(pageId,page){this._snapshot.body&&(this._snapshot.body.pages[pageId]=page)}appendPage(page){var _a2;if(!this._snapshot.body)return;this._snapshot.body.pages[page.id]=page;const activePage=this._activePage,index2=this._snapshot.body.pageOrder.indexOf((_a2=activePage==null?void 0:activePage.id)!=null?_a2:"");this._snapshot.body.pageOrder.splice(index2+1,0,page.id)}};__name(_SlideDataModel,"SlideDataModel");let SlideDataModel=_SlideDataModel;const FOCUSING_UNIT="FOCUSING_UNIT",FOCUSING_SHEET="FOCUSING_SHEET",FOCUSING_DOC="FOCUSING_DOC",FOCUSING_SLIDE="FOCUSING_SLIDE",FOCUSING_EDITOR_BUT_HIDDEN="FOCUSING_EDITOR_BUT_HIDDEN",EDITOR_ACTIVATED="EDITOR_ACTIVATED",FOCUSING_EDITOR_INPUT_FORMULA="FOCUSING_EDITOR_INPUT_FORMULA",FOCUSING_FX_BAR_EDITOR="FOCUSING_FX_BAR_EDITOR",FOCUSING_UNIVER_EDITOR="FOCUSING_UNIVER_EDITOR",FOCUSING_EDITOR_STANDALONE="FOCUSING_EDITOR_INPUT_FORMULA",FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE="FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE",FOCUSING_COMMON_DRAWINGS="FOCUSING_COMMON_DRAWINGS",FORMULA_EDITOR_ACTIVATED="FORMULA_EDITOR_ACTIVATED";var __defProp$6=Object.defineProperty,__getOwnPropDesc$6=Object.getOwnPropertyDescriptor,__decorateClass$6=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$6(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$6(target,key,result),result},"__decorateClass$6"),__decorateParam$5=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$5");const IUniverInstanceService=createIdentifier("univer.current");exports2.UniverInstanceService=(_e=class extends Disposable{constructor(_injector,_contextService){super();__publicField(this,"_unitsByType",new Map);__publicField(this,"_createHandler");__publicField(this,"_ctorByType",new Map);__publicField(this,"_currentUnits",new Map);__publicField(this,"_currentUnits$",new rxjs.BehaviorSubject(this._currentUnits));__publicField(this,"currentUnits$",this._currentUnits$.asObservable());__publicField(this,"_unitAdded$",new rxjs.Subject);__publicField(this,"unitAdded$",this._unitAdded$.asObservable());__publicField(this,"_unitDisposed$",new rxjs.Subject);__publicField(this,"unitDisposed$",this._unitDisposed$.asObservable());__publicField(this,"_focused$",new rxjs.BehaviorSubject(null));__publicField(this,"focused$",this._focused$.asObservable());this._injector=_injector,this._contextService=_contextService}dispose(){super.dispose(),this._focused$.complete()}__setCreateHandler(handler){this._createHandler=handler}createUnit(type2,data,options){return this._createHandler(type2,data,this._ctorByType.get(type2),options)}registerCtorForType(type2,ctor){return this._ctorByType.set(type2,ctor),{dispose:__name(()=>{this._ctorByType.delete(type2)},"dispose")}}getCurrentTypeOfUnit$(type2){return this.currentUnits$.pipe(rxjs.map(units=>{var _a2;return(_a2=units.get(type2))!=null?_a2:null}),rxjs.distinctUntilChanged())}getCurrentUnitForType(type2){return this._currentUnits.get(type2)}setCurrentUnitForType(unitId){const result=this._getUnitById(unitId);if(!result)throw new Error(`[UniverInstanceService]: no document with unitId ${unitId}!`);this._currentUnits.set(result[1],result[0]),this._currentUnits$.next(this._currentUnits)}getTypeOfUnitAdded$(type2){return this._unitAdded$.pipe(rxjs.filter(unit=>unit.type===type2))}__addUnit(unit,options){var _a2;const type2=unit.type;this._unitsByType.has(type2)||this._unitsByType.set(type2,[]);const units=this._unitsByType.get(type2),newUnitId=unit.getUnitId();if(units.findIndex(u=>u.getUnitId()===newUnitId)!==-1)throw new Error(`[UniverInstanceService]: cannot create a unit with the same unit id: ${newUnitId}.`);units.push(unit),this._unitAdded$.next(unit),((_a2=options==null?void 0:options.makeCurrent)==null||_a2)&&this.setCurrentUnitForType(unit.getUnitId())}getTypeOfUnitDisposed$(type2){return this.unitDisposed$.pipe(rxjs.filter(unit=>unit.type===type2))}getUnit(id,type2){var _a2;const unit=(_a2=this._getUnitById(id))==null?void 0:_a2[0];return type2&&(unit==null?void 0:unit.type)!==type2?null:unit}getCurrentUniverDocInstance(){return this.getCurrentUnitForType(I.UNIVER_DOC)}getUniverDocInstance(unitId){return this.getUnit(unitId,I.UNIVER_DOC)}getUniverSheetInstance(unitId){return this.getUnit(unitId,I.UNIVER_SHEET)}getAllUnitsForType(type2){var _a2;return(_a2=this._unitsByType.get(type2))!=null?_a2:[]}changeDoc(unitId,doc){const allDocs=this.getAllUnitsForType(I.UNIVER_DOC),oldDoc=allDocs.find(doc2=>doc2.getUnitId()===unitId);if(oldDoc!=null){const index2=allDocs.indexOf(oldDoc);allDocs.splice(index2,1)}this.__addUnit(doc)}get focused(){var _a2;const id=this._focused$.getValue();return id?(_a2=this._getUnitById(id))==null?void 0:_a2[0]:null}focusUnit(id){this._focused$.next(id),this.focused instanceof exports2.Workbook?(this._contextService.setContextValue(FOCUSING_UNIT,!0),this._contextService.setContextValue(FOCUSING_DOC,!1),this._contextService.setContextValue(FOCUSING_SHEET,!0),this._contextService.setContextValue(FOCUSING_SLIDE,!1),this.setCurrentUnitForType(id)):this.focused instanceof DocumentDataModel?(this._contextService.setContextValue(FOCUSING_UNIT,!0),this._contextService.setContextValue(FOCUSING_DOC,!0),this._contextService.setContextValue(FOCUSING_SHEET,!1),this._contextService.setContextValue(FOCUSING_SLIDE,!1),this.setCurrentUnitForType(id)):this.focused instanceof SlideDataModel?(this._contextService.setContextValue(FOCUSING_UNIT,!0),this._contextService.setContextValue(FOCUSING_DOC,!1),this._contextService.setContextValue(FOCUSING_SHEET,!1),this._contextService.setContextValue(FOCUSING_SLIDE,!0),this.setCurrentUnitForType(id)):(this._contextService.setContextValue(FOCUSING_UNIT,!1),this._contextService.setContextValue(FOCUSING_DOC,!1),this._contextService.setContextValue(FOCUSING_SHEET,!1),this._contextService.setContextValue(FOCUSING_SLIDE,!1))}getFocusedUnit(){return this.focused}getUnitType(unitId){const result=this._getUnitById(unitId);return result?result[1]:I.UNRECOGNIZED}disposeUnit(unitId){const result=this._getUnitById(unitId);if(!result)return!1;const[unit,type2]=result,units=this._unitsByType.get(type2),index2=units.indexOf(unit);return units.splice(index2,1),this._tryRemoveCurrentUnitForType(unitId,type2),this._tryBlurUnitOnRemoval(unitId),this._unitDisposed$.next(unit),!0}_tryRemoveCurrentUnitForType(unitId,type2){const current=this.getCurrentUnitForType(type2);(current==null?void 0:current.getUnitId())===unitId&&(this._currentUnits.set(type2,null),this._currentUnits$.next(this._currentUnits))}_tryBlurUnitOnRemoval(unitId){var _a2;((_a2=this.focused)==null?void 0:_a2.getUnitId())===unitId&&this._focused$.next(null)}_getUnitById(unitId){for(const[type2,units]of this._unitsByType){const unit=units.find(unit2=>unit2.getUnitId()===unitId);if(unit)return[unit,type2]}}},__name(_e,"UniverInstanceService"),_e),exports2.UniverInstanceService=__decorateClass$6([__decorateParam$5(0,Inject(Injector)),__decorateParam$5(1,IContextService)],exports2.UniverInstanceService);var LifecycleStages=(LifecycleStages2=>(LifecycleStages2[LifecycleStages2.Starting=0]="Starting",LifecycleStages2[LifecycleStages2.Ready=1]="Ready",LifecycleStages2[LifecycleStages2.Rendered=2]="Rendered",LifecycleStages2[LifecycleStages2.Steady=3]="Steady",LifecycleStages2))(LifecycleStages||{});const LifecycleNameMap={0:"Starting",1:"Ready",2:"Rendered",3:"Steady"},LifecycleToModules=new Map;function OnLifecycle(lifecycleStage,identifier){return __name(function(_){runOnLifecycle(lifecycleStage,identifier)},"decorator2")}__name(OnLifecycle,"OnLifecycle");function runOnLifecycle(lifecycleStage,identifier){LifecycleToModules.has(lifecycleStage)||LifecycleToModules.set(lifecycleStage,[]),LifecycleToModules.get(lifecycleStage).push(identifier)}__name(runOnLifecycle,"runOnLifecycle");var __defProp$5=Object.defineProperty,__getOwnPropDesc$5=Object.getOwnPropertyDescriptor,__decorateClass$5=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$5(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$5(target,key,result),result},"__decorateClass$5"),__decorateParam$4=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$4");exports2.LifecycleService=(_f=class extends Disposable{constructor(_logService){super();__publicField(this,"_lifecycle$",new rxjs.BehaviorSubject(LifecycleStages.Starting));__publicField(this,"lifecycle$",this._lifecycle$.asObservable());__publicField(this,"_lock",!1);this._logService=_logService,this._reportProgress(LifecycleStages.Starting)}get stage(){return this._lifecycle$.getValue()}set stage(stage){if(stage<this.stage)throw new Error("[LifecycleService]: lifecycle stage cannot go backward!");if(stage!==this.stage){if(this._lock)throw new Error("[LifecycleService]: cannot set new stage when related logic is all handled!");this._lock=!0,this._reportProgress(stage),this._lifecycle$.next(stage),this._lock=!1}}dispose(){this._lifecycle$.complete(),super.dispose()}subscribeWithPrevious(){return rxjs.merge(getLifecycleStagesAndBefore(this.stage),this._lifecycle$.pipe(rxjs.skip(1))).pipe(takeAfter(s=>s===LifecycleStages.Steady))}_reportProgress(stage){this._logService.debug("[LifecycleService]",`lifecycle progressed to "${LifecycleNameMap[stage]}".`)}},__name(_f,"LifecycleService"),_f),exports2.LifecycleService=__decorateClass$5([__decorateParam$4(0,ILogService)],exports2.LifecycleService),exports2.LifecycleInitializerService=(_g=class extends Disposable{constructor(_injector){super();__publicField(this,"_seenTokens",new Set);this._injector=_injector}initModulesOnStage(stage){var _a2;(_a2=LifecycleToModules.get(stage))==null||_a2.forEach(m=>{this._injector.has(m)&&!this._seenTokens.has(m)&&(this._injector.get(m),this._seenTokens.add(m))})}},__name(_g,"LifecycleInitializerService"),_g),exports2.LifecycleInitializerService=__decorateClass$5([__decorateParam$4(0,Inject(Injector))],exports2.LifecycleInitializerService);function getLifecycleStagesAndBefore(lifecycleStage){switch(lifecycleStage){case LifecycleStages.Starting:return rxjs.of(LifecycleStages.Starting);case LifecycleStages.Ready:return rxjs.of(LifecycleStages.Starting,LifecycleStages.Ready);case LifecycleStages.Rendered:return rxjs.of(LifecycleStages.Starting,LifecycleStages.Ready,LifecycleStages.Rendered);default:return rxjs.of(LifecycleStages.Starting,LifecycleStages.Ready,LifecycleStages.Rendered,LifecycleStages.Steady)}}__name(getLifecycleStagesAndBefore,"getLifecycleStagesAndBefore");const _LocaleService=class _LocaleService extends Disposable{constructor(){super();__publicField(this,"_currentLocale$",new rxjs.BehaviorSubject(LocaleType.ZH_CN));__publicField(this,"currentLocale$",this._currentLocale$.asObservable());__publicField(this,"_locales",null);__publicField(this,"localeChanged$",new rxjs.Subject);__publicField(this,"t",__name((key,...args)=>{if(!this._locales)throw new Error("[LocaleService]: Locale not initialized");const keys=key.split("."),resolvedValue=this.resolveKeyPath(this._locales[this._currentLocale],keys);if(typeof resolvedValue=="string"){let result=resolvedValue;return args.forEach((arg,index2)=>{result=result.replace(`{${index2}}`,arg)}),result}else return key},"t"));this.disposeWithMe(toDisposable(()=>this.localeChanged$.complete()))}get _currentLocale(){return this._currentLocale$.value}load(locales){var _a2;this._locales=Tools.deepMerge((_a2=this._locales)!=null?_a2:{},locales)}setLocale(locale){this._currentLocale$.next(locale),this.localeChanged$.next()}getLocales(){var _a2;return(_a2=this._locales)==null?void 0:_a2[this._currentLocale]}getCurrentLocale(){return this._currentLocale}resolveKeyPath(obj,keys){const currentKey=keys.shift();if(currentKey&&obj&&currentKey in obj){const nextObj=obj[currentKey];return keys.length>0&&(typeof nextObj=="object"||Array.isArray(nextObj))?this.resolveKeyPath(nextObj,keys):nextObj}return null}};__name(_LocaleService,"LocaleService");let LocaleService=_LocaleService;var PermissionStatus=(PermissionStatus2=>(PermissionStatus2.INIT="init",PermissionStatus2.FETCHING="fetching",PermissionStatus2.DONE="done",PermissionStatus2))(PermissionStatus||{});const IPermissionService=createIdentifier("univer.permission-service");runOnLifecycle(LifecycleStages.Starting,IPermissionService);const _PermissionService=class _PermissionService extends Disposable{constructor(){super(...arguments);__publicField(this,"_permissionPointMap",new Map);__publicField(this,"_permissionPointUpdate$",new rxjs.Subject);__publicField(this,"permissionPointUpdate$",this._permissionPointUpdate$.asObservable())}deletePermissionPoint(permissionId){const permissionPoint=this._permissionPointMap.get(permissionId);permissionPoint&&(permissionPoint.complete(),this._permissionPointMap.delete(permissionId))}addPermissionPoint(_item){const isSubject=_item instanceof rxjs.BehaviorSubject,item=isSubject?_item.getValue():_item;if(!item.id)return!1;if(this._permissionPointMap.get(item.id))throw new Error(`${item.id} PermissionPoint already exists`);return this._permissionPointMap.set(item.id,isSubject?_item:new rxjs.BehaviorSubject(item)),this._permissionPointUpdate$.next(item),!0}updatePermissionPoint(permissionId,value){const permissionPoint=this._permissionPointMap.get(permissionId);if(!permissionPoint)return;const subject=permissionPoint.getValue();subject.value=value,subject.status=PermissionStatus.DONE,permissionPoint.next({...subject}),this._permissionPointUpdate$.next(subject)}clearPermissionMap(){this._permissionPointMap.clear()}getPermissionPoint(permissionId){const permissionPoint=this._permissionPointMap.get(permissionId);if(permissionPoint)return permissionPoint.getValue()}getPermissionPoint$(permissionId){const permissionPoint=this._permissionPointMap.get(permissionId);if(permissionPoint)return permissionPoint}composePermission$(permissionIdList){const subjectList=permissionIdList.map(id=>{var _a2;const subject=(_a2=this._permissionPointMap)==null?void 0:_a2.get(id);if(!subject)throw new Error(`[PermissionService]: ${id} permissionPoint does not exist!`);return subject.asObservable()});return rxjs.combineLatest(subjectList).pipe(operators.map(list=>list))}composePermission(permissionIdList){return permissionIdList.map(id=>{var _a2;const subject=(_a2=this._permissionPointMap)==null?void 0:_a2.get(id);if(!subject)throw new Error(`[PermissionService]: ${id} permissionPoint does not exist!`);return subject.getValue()})}getAllPermissionPoint(){const cacheMap=new Map;return this._permissionPointMap.forEach((v,key)=>{cacheMap.set(key,v)}),cacheMap}};__name(_PermissionService,"PermissionService");let PermissionService=_PermissionService;const _ResourceManagerService=class _ResourceManagerService extends Disposable{constructor(){super(...arguments);__publicField(this,"_resourceMap",new Map);__publicField(this,"_register$",new rxjs.Subject);__publicField(this,"register$",this._register$.asObservable())}getAllResourceHooks(){return[...this._resourceMap.values()]}getResources(unitId,type2){return type2?this.getResourcesByType(unitId,type2):this.getAllResourceHooks().map(resourceHook=>{const data=resourceHook.toJson(unitId);return{name:resourceHook.pluginName,data}})}getResourcesByType(unitId,type2){return this.getAllResourceHooks().filter(hook=>hook.businesses.includes(type2)).map(resourceHook=>{const data=resourceHook.toJson(unitId);return{name:resourceHook.pluginName,data}})}registerPluginResource(hook){const resourceName=hook.pluginName;if(this._resourceMap.has(resourceName))throw new Error(`the pluginName is registered {${resourceName}}`);return this._resourceMap.set(resourceName,hook),this._register$.next(hook),toDisposable(()=>this._resourceMap.delete(resourceName))}disposePluginResource(pluginName){this._resourceMap.delete(pluginName)}loadResources(unitId,resources){this.getAllResourceHooks().forEach(hook=>{var _a2;const data=(_a2=resources==null?void 0:resources.find(resource=>resource.name===hook.pluginName))==null?void 0:_a2.data;if(data)try{const model=hook.parseJson(data);hook.onLoad(unitId,model)}catch{console.error("LoadResources Error!")}})}unloadResources(unitId){this.getAllResourceHooks().forEach(hook=>{hook.onUnLoad(unitId)})}dispose(){this._register$.complete(),this._resourceMap.clear()}};__name(_ResourceManagerService,"ResourceManagerService");let ResourceManagerService=_ResourceManagerService;const IResourceManagerService=createIdentifier("core.resource-manager.service"),PREFIX="__INTERNAL_EDITOR__",DOCS_NORMAL_EDITOR_UNIT_ID_KEY=`${PREFIX}DOCS_NORMAL`,DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY=`${PREFIX}DOCS_FORMULA_BAR`,DOCS_ZEN_EDITOR_UNIT_ID_KEY=`${PREFIX}ZEN_EDITOR`,DEFAULT_EMPTY_DOCUMENT_VALUE=`\r
9
+ `;function createInternalEditorID(id){return`${PREFIX}${id}`}__name(createInternalEditorID,"createInternalEditorID");function isInternalEditorID(id){return id.startsWith(PREFIX)}__name(isInternalEditorID,"isInternalEditorID");var __defProp$4=Object.defineProperty,__getOwnPropDesc$4=Object.getOwnPropertyDescriptor,__decorateClass$4=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$4(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$4(target,key,result),result},"__decorateClass$4"),__decorateParam$3=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$3");let ResourceLoaderService=(_h=class extends Disposable{constructor(_resourceManagerService,_univerInstanceService){super();__publicField(this,"saveWorkbook",__name(workbook=>{const unitId=workbook.getUnitId(),resources=this._resourceManagerService.getResources(unitId,I.UNIVER_SHEET),snapshot=workbook.getSnapshot();return snapshot.resources=resources,snapshot},"saveWorkbook"));this._resourceManagerService=_resourceManagerService,this._univerInstanceService=_univerInstanceService,this._init()}_init(){const handleHookAdd=__name(hook=>{hook.businesses.forEach(business=>{switch(business){case I.UNRECOGNIZED:case I.UNIVER_UNKNOWN:case I.UNIVER_SLIDE:case I.UNIVER_DOC:{this._univerInstanceService.getAllUnitsForType(I.UNIVER_DOC).forEach(doc=>{const plugin=(doc.getSnapshot().resources||[]).find(r=>r.name===hook.pluginName);if(plugin)try{const data=hook.parseJson(plugin.data);hook.onLoad(doc.getUnitId(),data)}catch{console.error(`Load Document{${doc.getUnitId()}} Resources{${hook.pluginName}} Data Error.`)}});break}case I.UNIVER_SHEET:this._univerInstanceService.getAllUnitsForType(I.UNIVER_SHEET).forEach(workbook=>{const plugin=(workbook.getSnapshot().resources||[]).find(r=>r.name===hook.pluginName);if(plugin)try{const data=hook.parseJson(plugin.data);hook.onLoad(workbook.getUnitId(),data)}catch{console.error(`Load Workbook{${workbook.getUnitId()}} Resources{${hook.pluginName}} Data Error.`)}})}})},"handleHookAdd");this._resourceManagerService.getAllResourceHooks().forEach(hook=>handleHookAdd(hook)),this.disposeWithMe(this._resourceManagerService.register$.subscribe(hook=>handleHookAdd(hook))),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(I.UNIVER_SHEET).subscribe(workbook=>{this._resourceManagerService.loadResources(workbook.getUnitId(),workbook.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(I.UNIVER_DOC).subscribe(doc=>{const unitId=doc.getUnitId();isInternalEditorID(unitId)||this._resourceManagerService.loadResources(doc.getUnitId(),doc.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(I.UNIVER_SHEET).subscribe(workbook=>{this._resourceManagerService.unloadResources(workbook.getUnitId())})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(I.UNIVER_DOC).subscribe(doc=>{this._resourceManagerService.unloadResources(doc.getUnitId())}))}saveDoc(doc){const unitId=doc.getUnitId(),resources=this._resourceManagerService.getResources(unitId,I.UNIVER_DOC),snapshot=doc.getSnapshot();return snapshot.resources=resources,snapshot}},__name(_h,"ResourceLoaderService"),_h);ResourceLoaderService=__decorateClass$4([__decorateParam$3(0,Inject(IResourceManagerService)),__decorateParam$3(1,Inject(IUniverInstanceService))],ResourceLoaderService);const IResourceLoaderService=createIdentifier("resource-loader-service");runOnLifecycle(LifecycleStages.Ready,IResourceLoaderService);const _ThemeService=class _ThemeService extends Disposable{constructor(){super();__publicField(this,"_currentTheme");__publicField(this,"_currentTheme$",new rxjs.BehaviorSubject({}));__publicField(this,"currentTheme$",this._currentTheme$.asObservable());this.disposeWithMe(toDisposable(()=>this._currentTheme$.complete()))}getCurrentTheme(){if(!this._currentTheme)throw new Error("[ThemeService]: current theme is not set!");return this._currentTheme}setTheme(theme){this._currentTheme=theme,this._currentTheme$.next(theme)}};__name(_ThemeService,"ThemeService");let ThemeService=_ThemeService;var __defProp$3=Object.defineProperty,__getOwnPropDesc$3=Object.getOwnPropertyDescriptor,__decorateClass$3=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$3(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$3(target,key,result),result},"__decorateClass$3"),__decorateParam$2=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$2");const IUndoRedoService=createIdentifier("univer.undo-redo.service"),STACK_CAPACITY=20,_MultiImplementationCommand=class _MultiImplementationCommand{dispose(){}async dispatchToHandlers(){return!1}};__name(_MultiImplementationCommand,"MultiImplementationCommand");let MultiImplementationCommand=_MultiImplementationCommand;const RedoCommandId="univer.command.redo",UndoCommandId="univer.command.undo",UndoCommand=new class extends MultiImplementationCommand{constructor(){super(...arguments);__publicField(this,"type",CommandType.COMMAND);__publicField(this,"id",UndoCommandId)}async handler(accessor){const undoRedoService=accessor.get(IUndoRedoService),element=undoRedoService.pitchTopUndoElement();if(!element)return!1;const commandService=accessor.get(ICommandService);return sequenceExecute(element.undoMutations,commandService)?(undoRedoService.popUndoToRedo(),!0):!1}},RedoCommand=new class extends MultiImplementationCommand{constructor(){super(...arguments);__publicField(this,"type",CommandType.COMMAND);__publicField(this,"id",RedoCommandId)}async handler(accessor){const undoRedoService=accessor.get(IUndoRedoService),element=undoRedoService.pitchTopRedoElement();if(!element)return!1;const commandService=accessor.get(ICommandService);return sequenceExecute(element.redoMutations,commandService)?(undoRedoService.popRedoToUndo(),!0):!1}};exports2.LocalUndoRedoService=(_i=class extends Disposable{constructor(_univerInstanceService,_commandService,_contextService){super();__publicField(this,"undoRedoStatus$");__publicField(this,"_undoRedoStatus$",new rxjs.BehaviorSubject({undos:0,redos:0}));__publicField(this,"_undoStacks",new Map);__publicField(this,"_redoStacks",new Map);__publicField(this,"_batchingStatus",new Map);this._univerInstanceService=_univerInstanceService,this._commandService=_commandService,this._contextService=_contextService,this.undoRedoStatus$=this._undoRedoStatus$.asObservable(),this.disposeWithMe(this._commandService.registerCommand(UndoCommand)),this.disposeWithMe(this._commandService.registerCommand(RedoCommand)),this.disposeWithMe(toDisposable(()=>this._undoRedoStatus$.complete())),this.disposeWithMe(toDisposable(this._univerInstanceService.focused$.subscribe(()=>this._updateStatus())))}pushUndoRedo(item){const{unitID}=item,redoStack=this._getRedoStack(unitID,!0),undoStack=this._getUndoStack(unitID,!0);if(redoStack.length=0,this._batchingStatus.has(item.unitID)){const batchingStatus=this._batchingStatus.get(item.unitID),lastItem=this._pitchUndoElement(item.unitID);batchingStatus===0||!lastItem?(appendNewItem(item),this._batchingStatus.set(item.unitID,1)):this._tryBatchingElements(lastItem,item)}else appendNewItem(item);function appendNewItem(item2){undoStack.push(item2),undoStack.length>STACK_CAPACITY&&undoStack.splice(0,1)}__name(appendNewItem,"appendNewItem"),this._updateStatus()}clearUndoRedo(unitID){const redoStack=this._getRedoStack(unitID);redoStack&&(redoStack.length=0);const undoStack=this._getUndoStack(unitID);undoStack&&(undoStack.length=0),this._updateStatus()}pitchTopUndoElement(){const unitID=this._getFocusedUnitId();return this._pitchUndoElement(unitID)}pitchTopRedoElement(){const unitID=this._getFocusedUnitId();return this._pitchRedoElement(unitID)}_pitchUndoElement(unitId){const stack=this._getUndoStack(unitId);return stack!=null&&stack.length?stack[stack.length-1]:null}_pitchRedoElement(unitId){const stack=this._getRedoStack(unitId);return stack!=null&&stack.length?stack[stack.length-1]:null}popUndoToRedo(){const element=this._getUndoStackForFocused().pop();element&&(this._getRedoStackForFocused().push(element),this._updateStatus())}popRedoToUndo(){const element=this._getRedoStackForFocused().pop();element&&(this._getUndoStackForFocused().push(element),this._updateStatus())}__tempBatchingUndoRedo(unitId){if(this._batchingStatus.has(unitId))throw new Error("[LocalUndoRedoService]: cannot batching undo redo twice at the same time!");return this._batchingStatus.set(unitId,0),toDisposable(()=>this._batchingStatus.delete(unitId))}_updateStatus(){var _a2,_b2;const unitID=this._getFocusedUnitId(),undos=unitID&&((_a2=this._undoStacks.get(unitID))==null?void 0:_a2.length)||0,redos=unitID&&((_b2=this._redoStacks.get(unitID))==null?void 0:_b2.length)||0;this._undoRedoStatus$.next({undos,redos})}_getUndoStack(unitId,createAsNeeded=!1){let stack=this._undoStacks.get(unitId);return!stack&&createAsNeeded&&(stack=[],this._undoStacks.set(unitId,stack)),stack||null}_getRedoStack(unitId,createAsNeeded=!1){let stack=this._redoStacks.get(unitId);return!stack&&createAsNeeded&&(stack=[],this._redoStacks.set(unitId,stack)),stack||null}_getUndoStackForFocused(){const unitID=this._getFocusedUnitId();if(!unitID)throw new Error("No focused univer instance!");return this._getUndoStack(unitID,!0)}_getRedoStackForFocused(){const unitID=this._getFocusedUnitId();if(!unitID)throw new Error("No focused univer instance!");return this._getRedoStack(unitID,!0)}_tryBatchingElements(item,newItem){item.redoMutations.push(...newItem.redoMutations),item.undoMutations.push(...newItem.undoMutations)}_getFocusedUnitId(){var _a2,_b2,_c2,_d2;let unitID="";const isFocusSheet=this._contextService.getContextValue(FOCUSING_SHEET),isFocusFormulaEditor=this._contextService.getContextValue(FOCUSING_FX_BAR_EDITOR),isFocusEditor=this._contextService.getContextValue(EDITOR_ACTIVATED);return isFocusSheet?isFocusFormulaEditor?unitID=DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY:isFocusEditor?unitID=DOCS_NORMAL_EDITOR_UNIT_ID_KEY:unitID=(_b2=(_a2=this._univerInstanceService.getFocusedUnit())==null?void 0:_a2.getUnitId())!=null?_b2:"":unitID=(_d2=(_c2=this._univerInstanceService.getFocusedUnit())==null?void 0:_c2.getUnitId())!=null?_d2:"",unitID}},__name(_i,"LocalUndoRedoService"),_i),exports2.LocalUndoRedoService=__decorateClass$3([__decorateParam$2(0,IUniverInstanceService),__decorateParam$2(1,ICommandService),__decorateParam$2(2,IContextService)],exports2.LocalUndoRedoService);const DependentOnSymbol=Symbol("DependentOn"),_Plugin=class _Plugin extends Disposable{onStarting(_injector){}onReady(){}onRendered(){}onSteady(){}getUniverInstanceType(){return this.constructor.type}getPluginName(){return this.constructor.pluginName}};__name(_Plugin,"Plugin"),__publicField(_Plugin,"pluginName"),__publicField(_Plugin,"type",I.UNIVER_UNKNOWN);let Plugin=_Plugin;const _PluginStore=class _PluginStore{constructor(){__publicField(this,"_plugins",[])}addPlugin(plugin){this._plugins.push(plugin)}removePlugins(){const plugins=this._plugins.slice();return this._plugins.length=0,plugins}forEachPlugin(callback){this._plugins.forEach(callback)}};__name(_PluginStore,"PluginStore");let PluginStore=_PluginStore;const _PluginRegistry=class _PluginRegistry{constructor(){__publicField(this,"_pluginsRegistered",[])}registerPlugin(pluginCtor,options){this._pluginsRegistered.push({plugin:pluginCtor,options})}getRegisterPlugins(){return this._pluginsRegistered.slice()}removePlugins(){this._pluginsRegistered=[]}};__name(_PluginRegistry,"PluginRegistry");let PluginRegistry=_PluginRegistry;var __defProp$2=Object.defineProperty,__getOwnPropDesc$2=Object.getOwnPropertyDescriptor,__decorateClass$2=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$2(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$2(target,key,result),result},"__decorateClass$2"),__decorateParam$1=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$1");const INIT_LAZY_PLUGINS_TIMEOUT=4;function DependentOn(...plugins){return function(target){target[DependentOnSymbol]=plugins}}__name(DependentOn,"DependentOn"),exports2.PluginService=(_j=class{constructor(_injector){__publicField(this,"_pluginHolderForUniver");__publicField(this,"_pluginHoldersForTypes",new Map);__publicField(this,"_seenPlugins",new Set);__publicField(this,"_flushTimer");this._injector=_injector,this._pluginHolderForUniver=this._injector.createInstance(PluginHolder,this._checkPluginSeen.bind(this),this._immediateInitPlugin.bind(this)),this._pluginHolderForUniver.start()}dispose(){this._clearFlushTimer();for(const holder of this._pluginHoldersForTypes.values())holder.dispose();this._pluginHolderForUniver.dispose()}registerPlugin(ctor,config){this._assertPluginValid(ctor),this._scheduleInitPlugin();const{type:type2}=ctor;type2===I.UNIVER_UNKNOWN?(this._pluginHolderForUniver.register(ctor,config),this._pluginHolderForUniver.flush()):this._ensurePluginHolderForType(type2).register(ctor,config)}startPluginForType(type2){this._ensurePluginHolderForType(type2).start()}_ensurePluginHolderForType(type2){if(!this._pluginHoldersForTypes.has(type2)){const pluginHolder=this._injector.createInstance(PluginHolder,this._checkPluginSeen.bind(this),this._immediateInitPlugin.bind(this));return this._pluginHoldersForTypes.set(type2,pluginHolder),pluginHolder}return this._pluginHoldersForTypes.get(type2)}_immediateInitPlugin(ctor){this._seenPlugins.add(ctor.pluginName),this._ensurePluginHolderForType(ctor.type).immediateInitPlugin(ctor)}_checkPluginSeen(ctor){return this._seenPlugins.has(ctor.pluginName)}_assertPluginValid(ctor){const{type:type2,pluginName}=ctor;if(type2===I.UNRECOGNIZED)throw new Error(`[PluginService]: invalid plugin type for ${ctor}. Please assign a "type" to your plugin.`);if(pluginName==="")throw new Error(`[PluginService]: no plugin name for ${ctor}. Please assign a "pluginName" to your plugin.`);if(this._seenPlugins.has(pluginName))throw new Error(`[PluginService]: duplicated plugin name for "${pluginName}". Maybe a plugin that dependents on "${pluginName} has already registered it. In that case please register "${pluginName}" before the that plugin.`);this._seenPlugins.add(ctor.pluginName)}_scheduleInitPlugin(){this._flushTimer===void 0&&(this._flushTimer=setTimeout(()=>{this._pluginHolderForUniver.started||this._pluginHolderForUniver.start(),this._flushPlugins(),this._clearFlushTimer()},INIT_LAZY_PLUGINS_TIMEOUT))}_clearFlushTimer(){this._flushTimer&&(clearTimeout(this._flushTimer),this._flushTimer=void 0)}_flushPlugins(){this._pluginHolderForUniver.flush();for(const[_,holder]of this._pluginHoldersForTypes)holder.started&&holder.flush()}},__name(_j,"PluginService"),_j),exports2.PluginService=__decorateClass$2([__decorateParam$1(0,Inject(Injector))],exports2.PluginService);let PluginHolder=(_k=class extends Disposable{constructor(_checkPluginRegistered,_registerPlugin,_logService,_injector,_lifecycleService,_lifecycleInitializerService){super();__publicField(this,"_started",!1);__publicField(this,"_warnedAboutOnStartingDeprecation",!1);__publicField(this,"_pluginRegistry",new PluginRegistry);__publicField(this,"_pluginStore",new PluginStore);__publicField(this,"_awaitingPlugins",[]);this._checkPluginRegistered=_checkPluginRegistered,this._registerPlugin=_registerPlugin,this._logService=_logService,this._injector=_injector,this._lifecycleService=_lifecycleService,this._lifecycleInitializerService=_lifecycleInitializerService,this.disposeWithMe(this._lifecycleService.lifecycle$.pipe(rxjs.skip(1)).subscribe(stage=>{this._awaitingPlugins.forEach(plugins=>this._runStage(plugins,stage))}))}get started(){return this._started}dispose(){super.dispose(),this._pluginStore.forEachPlugin(plugin=>plugin.dispose()),this._pluginStore.removePlugins(),this._pluginRegistry.removePlugins(),this._awaitingPlugins.length=0}register(pluginCtor,config){this._pluginRegistry.registerPlugin(pluginCtor,config)}immediateInitPlugin(plugin){const p=this._initPlugin(plugin,void 0);this._pluginsRunLifecycle([p])}start(){this._started||(this._started=!0,this.flush())}flush(){if(!this._started)return;const plugins=this._pluginRegistry.getRegisterPlugins().map(({plugin,options})=>this._initPlugin(plugin,options));plugins.length&&(this._pluginsRunLifecycle(plugins),this._pluginRegistry.removePlugins())}_initPlugin(plugin,options){const dependents=plugin[DependentOnSymbol];if(dependents){const exhaustUnregisteredDependents=__name(()=>{const NotRegistered=dependents.find(d=>!this._checkPluginRegistered(d));return NotRegistered?(this._logService.debug("[PluginService]",`plugin "${plugin.pluginName}" depends on "${NotRegistered.pluginName}" which is not registered. Univer will automatically register it with default configuration.`),this._registerPlugin(NotRegistered,void 0),!0):!1},"exhaustUnregisteredDependents");for(;exhaustUnregisteredDependents(););}const pluginInstance=this._injector.createInstance(plugin,options);return this._pluginStore.addPlugin(pluginInstance),pluginInstance}_pluginsRunLifecycle(plugins){getLifecycleStagesAndBefore(this._lifecycleService.stage).subscribe(stage=>this._runStage(plugins,stage)),this._awaitingPlugins.push(plugins)}_runStage(plugins,stage){plugins.forEach(p=>{switch(stage){case LifecycleStages.Starting:p.onStarting.length>0&&p.onStarting!==Plugin.prototype.onStarting&&!this._warnedAboutOnStartingDeprecation&&(this._logService.warn("[PluginService]",p.onStarting.length,`Plugin "${p.getPluginName()}" is using deprecated "onStarting" method with arguments. Please use "this._injector" instead.`),this._warnedAboutOnStartingDeprecation=!0),p.onStarting(this._injector);break;case LifecycleStages.Ready:p.onReady();break;case LifecycleStages.Rendered:p.onRendered();break;case LifecycleStages.Steady:p.onSteady();break}}),this._lifecycleInitializerService.initModulesOnStage(stage)}},__name(_k,"PluginHolder"),_k);PluginHolder=__decorateClass$2([__decorateParam$1(2,ILogService),__decorateParam$1(3,Inject(Injector)),__decorateParam$1(4,Inject(exports2.LifecycleService)),__decorateParam$1(5,Inject(exports2.LifecycleInitializerService))],PluginHolder);function mergeOverrideWithDependencies(dependencies,override){if(!override)return dependencies;const result=[];for(const dependency of dependencies){const overrideItem=override.find(([identifier])=>identifier===dependency[0]);if(overrideItem){if(overrideItem[1]===null)continue;result.push([dependency[0],overrideItem[1]])}else result.push(dependency)}return result}__name(mergeOverrideWithDependencies,"mergeOverrideWithDependencies");const nameMap={[M.Editor]:"Editor",[M.Owner]:"Owner",[M.Reader]:"Reader",[M.UNRECOGNIZED]:"UNRECOGNIZED"},createDefaultUser=__name(type2=>type2?{userID:`${nameMap[type2]}_${Tools.generateRandomId(8)}`,name:nameMap[type2],avatar:""}:{userID:"",name:"",avatar:"",anonymous:!0,canBindAnonymous:!1},"createDefaultUser"),isDevRole=__name((userId,type2)=>userId.startsWith(nameMap[type2]),"isDevRole");var __defProp$1=Object.defineProperty,__getOwnPropDesc$1=Object.getOwnPropertyDescriptor,__decorateClass$1=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc$1(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp$1(target,key,result),result},"__decorateClass$1");exports2.UserManagerService=(_l=class{constructor(){__publicField(this,"_model",new Map);__publicField(this,"_userChange$",new rxjs.Subject);__publicField(this,"userChange$",this._userChange$.asObservable());__publicField(this,"_currentUser$",new rxjs.BehaviorSubject(createDefaultUser()));__publicField(this,"currentUser$",this._currentUser$.asObservable())}getCurrentUser(){return this._currentUser$.getValue()}setCurrentUser(user){this.addUser(user),this._currentUser$.next(user)}addUser(user){this._model.set(user.userID,user),this._userChange$.next({type:"add",user})}getUser(userId,callBack){const user=this._model.get(userId);if(user)return user;callBack&&callBack()}delete(userId){const user=this.getUser(userId);this._model.delete(userId),user&&this._userChange$.next({type:"delete",user})}clear(){this._model.clear(),this._userChange$.next({type:"clear"})}list(){return Array.from(this._model.values())}},__name(_l,"UserManagerService"),_l),exports2.UserManagerService=__decorateClass$1([OnLifecycle(LifecycleStages.Starting,exports2.UserManagerService)],exports2.UserManagerService);var __defProp2=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__decorateClass=__name((decorators,target,key,kind)=>{for(var result=kind>1?void 0:kind?__getOwnPropDesc(target,key):target,i=decorators.length-1,decorator;i>=0;i--)(decorator=decorators[i])&&(result=(kind?decorator(target,key,result):decorator(result))||result);return kind&&result&&__defProp2(target,key,result),result},"__decorateClass"),__decorateParam=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam");exports2.AuthzIoLocalService=(_m=class{constructor(_resourceManagerService,_userManagerService){__publicField(this,"_permissionMap",new Map([]));this._resourceManagerService=_resourceManagerService,this._userManagerService=_userManagerService,this._initSnapshot(),this._initDefaultUser()}_initDefaultUser(){const currentUser=this._userManagerService.getCurrentUser();currentUser&&currentUser.userID||this._userManagerService.setCurrentUser(createDefaultUser(M.Owner))}_getRole(type2){const user=this._userManagerService.getCurrentUser();return user?isDevRole(user.userID,type2):!1}_initSnapshot(){this._resourceManagerService.registerPluginResource({toJson:__name(_unitId=>{const obj=[...this._permissionMap.keys()].reduce((r,k)=>{const v=this._permissionMap.get(k);return r[k]=v,r},{});return JSON.stringify(obj)},"toJson"),parseJson:__name(json=>JSON.parse(json),"parseJson"),pluginName:"SHEET_AuthzIoMockService_PLUGIN",businesses:[I.UNIVER_SHEET,I.UNIVER_DOC,I.UNIVER_SLIDE],onLoad:__name((_unitId,resource)=>{for(const key in resource)this._permissionMap.set(key,resource[key])},"onLoad"),onUnLoad:__name(()=>{this._permissionMap.clear()},"onUnLoad")})}async create(config){const id=Tools.generateRandomId(8);switch(config.objectType){case l.SelectRange:{const params=config.selectRangeObject;this._permissionMap.set(id,{...params,objectType:config.objectType});break}case l.Worksheet:{const params=config.worksheetObject;this._permissionMap.set(id,{...params,objectType:config.objectType,readScope:L.SomeCollaborator})}}return id}async allowed(config){var _a2;if(this._permissionMap.has(config.objectID)){const rule=this._permissionMap.get(config.objectID);if(rule&&rule.objectType===l.Worksheet)return(_a2=rule==null?void 0:rule.strategies)==null?void 0:_a2.map(s=>({action:s.action,allowed:s.role===M.Editor}))}return config.actions.map(a=>({action:a,allowed:this._getRole(M.Owner)||this._getRole(M.Editor)}))}async batchAllowed(config){const user=this._userManagerService.getCurrentUser(),defaultValue=config.map(item=>({unitID:item.unitID,objectID:item.objectID,actions:item.actions.map(action=>({action,allowed:!1}))}));return user&&(isDevRole(user.userID,M.Owner)||isDevRole(user.userID,M.Editor))?config.map(item=>({unitID:item.unitID,objectID:item.objectID,actions:item.actions.map(action=>({action,allowed:!0}))})):defaultValue}async list(config){const result=[];return config.objectIDs.forEach(objectID=>{const rule=this._permissionMap.get(objectID);if(rule){const item={objectID,unitID:config.unitID,objectType:rule.objectType,name:rule.name,shareOn:!1,shareRole:M.Owner,shareScope:-1,creator:createDefaultUser(M.Owner),strategies:[],actions:config.actions.map(a=>({action:a,allowed:this._getRole(M.Owner)||this._getRole(M.Editor)}))};result.push(item)}}),result}async listCollaborators(){return[]}async listRoles(){return{roles:[],actions:[]}}async deleteCollaborator(){}async update(config){}async updateCollaborator(){}async createCollaborator(){}async putCollaborators(config){}},__name(_m,"AuthzIoLocalService"),_m),exports2.AuthzIoLocalService=__decorateClass([__decorateParam(0,IResourceManagerService),__decorateParam(1,Inject(exports2.UserManagerService))],exports2.AuthzIoLocalService);const IAuthzIoService=createIdentifier("IAuthzIoIoService"),_Univer=class _Univer{constructor(config={},parentInjector){__publicField(this,"_startedTypes",new Set);__publicField(this,"_injector");const injector=this._injector=createUniverInjector(parentInjector,config==null?void 0:config.override),{theme,locale,locales,logLevel}=config;theme&&this._injector.get(ThemeService).setTheme(theme),locales&&this._injector.get(LocaleService).load(locales),locale&&this._injector.get(LocaleService).setLocale(locale),logLevel&&this._injector.get(ILogService).setLogLevel(logLevel),this._init(injector)}get _univerInstanceService(){return this._injector.get(IUniverInstanceService)}get _pluginService(){return this._injector.get(exports2.PluginService)}__getInjector(){return this._injector}dispose(){this._injector.dispose()}setLocale(locale){this._injector.get(LocaleService).setLocale(locale)}createUnit(type2,data){return this._univerInstanceService.createUnit(type2,data)}createUniverSheet(data){return this._univerInstanceService.createUnit(I.UNIVER_SHEET,data)}createUniverDoc(data){return this._univerInstanceService.createUnit(I.UNIVER_DOC,data)}createUniverSlide(data){return this._univerInstanceService.createUnit(I.UNIVER_SLIDE,data)}_init(injector){this._univerInstanceService.registerCtorForType(I.UNIVER_SHEET,exports2.Workbook),this._univerInstanceService.registerCtorForType(I.UNIVER_DOC,DocumentDataModel),this._univerInstanceService.registerCtorForType(I.UNIVER_SLIDE,SlideDataModel);const univerInstanceService=injector.get(IUniverInstanceService);univerInstanceService.__setCreateHandler((type2,data,ctor,options)=>{if(!this._startedTypes.has(type2)){this._pluginService.startPluginForType(type2),this._startedTypes.add(type2);const model2=injector.createInstance(ctor,data);return univerInstanceService.__addUnit(model2,options),this._tryProgressToReady(),model2}const model=injector.createInstance(ctor,data);return univerInstanceService.__addUnit(model,options),model})}_tryProgressToReady(){this._injector.get(exports2.LifecycleService).stage<LifecycleStages.Ready&&(this._injector.get(exports2.LifecycleService).stage=LifecycleStages.Ready)}registerPlugin(plugin,config){this._pluginService.registerPlugin(plugin,config)}};__name(_Univer,"Univer");let Univer=_Univer;function createUniverInjector(parentInjector,override){const dependencies=mergeOverrideWithDependencies([[ErrorService],[LocaleService],[ThemeService],[exports2.LifecycleService],[exports2.LifecycleInitializerService],[exports2.PluginService],[exports2.UserManagerService],[IUniverInstanceService,{useClass:exports2.UniverInstanceService}],[IPermissionService,{useClass:PermissionService}],[ILogService,{useClass:DesktopLogService,lazy:!0}],[ICommandService,{useClass:exports2.CommandService}],[IUndoRedoService,{useClass:exports2.LocalUndoRedoService,lazy:!0}],[IConfigService,{useClass:ConfigService}],[IContextService,{useClass:ContextService}],[IResourceManagerService,{useClass:ResourceManagerService,lazy:!0}],[IResourceLoaderService,{useClass:ResourceLoaderService,lazy:!0}],[IAuthzIoService,{useClass:exports2.AuthzIoLocalService,lazy:!0}]],override);return parentInjector?parentInjector.createChild(dependencies):new Injector(dependencies)}__name(createUniverInjector,"createUniverInjector");const isRangesEqual=__name((oldRanges,ranges)=>ranges.length===oldRanges.length&&!oldRanges.some(oldRange=>ranges.some(range=>!Rectangle.equals(range,oldRange))),"isRangesEqual"),isUnitRangesEqual=__name((oldRanges,ranges)=>ranges.length===oldRanges.length&&oldRanges.every((oldRange,i)=>{const current=ranges[i];return current.unitId===oldRange.unitId&&current.sheetId===oldRange.sheetId&&Rectangle.equals(oldRange.range,current.range)}),"isUnitRangesEqual");function shallowEqual(objA,objB){if(Object.is(objA,objB))return!0;if(typeof objA!="object"||!objA||typeof objB!="object"||!objB)return!1;const keysA=Object.keys(objA),keysB=Object.keys(objB);if(keysA.length!==keysB.length)return!1;const bHasOwnProperty=Object.prototype.hasOwnProperty.bind(objB);for(let idx=0;idx<keysA.length;idx++){const key=keysA[idx];if(!bHasOwnProperty(key))return!1;const valueA=objA[key],valueB=objB[key];if(valueA!==valueB)return!1}return!0}__name(shallowEqual,"shallowEqual");function isNumeric(str){return/^-?\d+(\.\d+)?$/.test(str)}__name(isNumeric,"isNumeric");function isSafeNumeric(str){return isNumeric(str)?Number(str)<=Number.MAX_SAFE_INTEGER:!1}__name(isSafeNumeric,"isSafeNumeric");function isBooleanString(str){return["true","false"].includes(str.toLowerCase())}__name(isBooleanString,"isBooleanString");function mergeSets(s1,s2){return s2.forEach(s=>s1.add(s)),s1}__name(mergeSets,"mergeSets");function throttle(fn,wait=16){let lastTime=0,timer=null;return __name(function(...args){const now=Date.now();now-lastTime<wait?(timer&&clearTimeout(timer),timer=setTimeout(()=>{lastTime=now,fn.apply(this,args)},wait)):(lastTime=now,fn.apply(this,args))},"throttled")}__name(throttle,"throttle");function requestImmediateMacroTask(callback){const channel=new MessageChannel;let cancelled=!1;const hanlder=__name(()=>{cancelled||callback()},"hanlder");return channel.port1.onmessage=hanlder,channel.port2.postMessage(null),()=>{cancelled=!0,channel.port1.close(),channel.port2.close()}}__name(requestImmediateMacroTask,"requestImmediateMacroTask");var DataValidationRenderMode=(DataValidationRenderMode2=>(DataValidationRenderMode2[DataValidationRenderMode2.TEXT=0]="TEXT",DataValidationRenderMode2[DataValidationRenderMode2.ARROW=1]="ARROW",DataValidationRenderMode2[DataValidationRenderMode2.CUSTOM=2]="CUSTOM",DataValidationRenderMode2))(DataValidationRenderMode||{});function replaceInDocumentBody(body,query,target){if(query==="")return body;const mockDocumentData={id:"mock-id",body,documentStyle:{}},documentDataModel=new DocumentDataModel(mockDocumentData),queryLen=query.length;let index2;for(;(index2=documentDataModel.getBody().dataStream.indexOf(query))>=0;){const textX=new TextX,jsonX=JSONX.getInstance();if(index2>0&&textX.retain(index2),target.length>0){const sliceBody=documentDataModel.sliceBody(index2,index2+queryLen),replaceBody={dataStream:target};Array.isArray(sliceBody==null?void 0:sliceBody.textRuns)&&sliceBody.textRuns.length&&(replaceBody.textRuns=[{...sliceBody.textRuns[0],st:0,ed:target.length}]),textX.insert(target.length,replaceBody)}textX.delete(queryLen),documentDataModel.apply(jsonX.editOp(textX.serialize()))}const newBody=documentDataModel.getBody();return documentDataModel.dispose(),newBody}__name(replaceInDocumentBody,"replaceInDocumentBody");const _EventState=class _EventState{constructor(){__publicField(this,"skipNextObservers",!1);__publicField(this,"lastReturnValue");__publicField(this,"isStopPropagation",!1)}stopPropagation(){this.isStopPropagation=!0}};__name(_EventState,"EventState");let EventState=_EventState;const _EventSubject=class _EventSubject extends rxjs.Subject{constructor(){super(...arguments);__publicField(this,"_sortedObservers",[])}subscribe(){throw new Error("[EventSubject]: please use `subscribeEvent` instead of `subscribe` method for `EventSubject`.")}next(){throw new Error("[EventSubject]: please use `emitEvent` instead of `next` method for `EventSubject`.")}unsubscribe(){super.unsubscribe(),this._sortedObservers.length=0}complete(){super.complete(),this._sortedObservers.length=0}subscribeEvent(observer){let ob;typeof observer=="function"?ob={next:__name(([evt,state])=>observer(evt,state),"next")}:ob=observer;const subscription=super.subscribe(ob);return this._sortedObservers.push(ob),this._sortedObservers.sort((a,b)=>{var _a2,_b2;return((_a2=a.priority)!=null?_a2:0)-((_b2=b.priority)!=null?_b2:0)}),subscription.add(()=>this._sortedObservers=this._sortedObservers.filter(o=>o!==ob)),subscription}clearObservers(){this._sortedObservers.forEach(observer=>{var _a2;return(_a2=observer.complete)==null?void 0:_a2.call(observer)}),this._sortedObservers.length=0}emitEvent(event){var _a2;if(!this.closed){const state=new EventState;state.lastReturnValue=event;for(const observer of this._sortedObservers){const value=(_a2=observer.next)==null?void 0:_a2.call(observer,[event,state]);if(state.lastReturnValue=value,state.skipNextObservers)return{handled:!0,lastReturnValue:state.lastReturnValue,stopPropagation:state.isStopPropagation}}return{handled:this._sortedObservers.length>0,lastReturnValue:state.lastReturnValue,stopPropagation:state.isStopPropagation}}throw new Error("[EventSubject]: cannot emit event on a closed subject.")}};__name(_EventSubject,"EventSubject");let EventSubject=_EventSubject;function fromEventSubject(subject$){return new rxjs.Observable(subscriber=>{const ob=subject$.subscribeEvent(evt=>{subscriber.next(evt)});return()=>ob.unsubscribe()})}__name(fromEventSubject,"fromEventSubject");const ILocalStorageService=createIdentifier("ILocalStorageService");function createInterceptorKey(key){return`sheet_interceptor_${key}`}__name(createInterceptorKey,"createInterceptorKey");const composeInterceptors=__name(interceptors=>function(initialValue,context){let index2=-1;function passThrough(i,v){if(i<=index2)throw new Error("[SheetInterceptorService]: next() called multiple times!");return index2=i,i===interceptors.length?v:interceptors[i].handler(v,context,passThrough.bind(null,i+1))}return __name(passThrough,"passThrough"),passThrough(0,initialValue)},"composeInterceptors"),_InterceptorManager=class _InterceptorManager{constructor(interceptorPoints){__publicField(this,"_interceptorsByName",new Map);__publicField(this,"_interceptorPoints");this._interceptorPoints=interceptorPoints}fetchThroughInterceptors(name){const key=name,interceptors=this._interceptorsByName.get(key);return composeInterceptors(interceptors||[])}intercept(name,interceptor){const key=name;this._interceptorsByName.has(key)||this._interceptorsByName.set(key,[]);const interceptors=this._interceptorsByName.get(key);return interceptors.push(interceptor),this._interceptorsByName.set(key,interceptors.sort((a,b)=>{var _a2,_b2;return((_a2=b.priority)!=null?_a2:0)-((_b2=a.priority)!=null?_b2:0)})),()=>remove(this._interceptorsByName.get(key),interceptor)}getInterceptPoints(){return this._interceptorPoints}};__name(_InterceptorManager,"InterceptorManager");let InterceptorManager=_InterceptorManager;const ISnapshotServerService=createIdentifier("univer.snapshot-server-service"),_ClientSnapshotServerService=class _ClientSnapshotServerService{constructor(){__publicField(this,"_sheetBlockCache",new Map)}getUnitOnRev(context,params){return Promise.resolve({snapshot:{unitID:"",type:I.UNIVER_SHEET,rev:0,workbook:void 0,doc:void 0},changesets:[],error:{code:N.OK,message:""}})}getSheetBlock(context,params){const block=this._sheetBlockCache.get(params.blockID);return Promise.resolve({block,error:{code:N.OK,message:""}})}fetchMissingChangesets(context,params){return Promise.resolve({changesets:[],error:{code:N.OK,message:""}})}getResourcesRequest(context,params){return Promise.resolve({resources:{},error:{code:N.OK,message:""}})}saveSnapshot(context,params){return Promise.resolve({error:{code:N.OK,message:""}})}saveSheetBlock(context,params){const{block}=params;return block?(this._sheetBlockCache.set(block.id,block),Promise.resolve({error:{code:N.OK,message:""},blockID:block.id})):Promise.resolve({error:{code:N.UNDEFINED,message:"block is required"},blockID:""})}saveChangeset(context,params){return Promise.resolve({error:{code:N.OK,message:""},concurrent:[]})}};__name(_ClientSnapshotServerService,"ClientSnapshotServerService");let ClientSnapshotServerService=_ClientSnapshotServerService;function b64EncodeUnicode(str){return btoa(encodeURIComponent(str).replace(/%([0-9A-F]{2})/g,(match,p1)=>String.fromCharCode(Number.parseInt(p1,16))))}__name(b64EncodeUnicode,"b64EncodeUnicode");function b64DecodeUnicode(str){return decodeURIComponent(Array.prototype.map.call(atob(str),c=>`%${`00${c.charCodeAt(0).toString(16)}`.slice(-2)}`).join(""))}__name(b64DecodeUnicode,"b64DecodeUnicode");const textEncoder=new TextEncoder,textDecoder=new TextDecoder;function encodeWorksheetOtherMetas(worksheet){const cloned=Tools.deepClone(worksheet);return delete cloned.id,delete cloned.name,delete cloned.rowCount,delete cloned.columnCount,delete cloned.cellData,textEncoder.encode(JSON.stringify(cloned))}__name(encodeWorksheetOtherMetas,"encodeWorksheetOtherMetas");function encodeWorkbookOtherMetas(workbook){const cloned=Tools.deepClone(workbook);return delete cloned.id,delete cloned.rev,delete cloned.name,delete cloned.sheetOrder,delete cloned.sheets,textEncoder.encode(JSON.stringify(cloned))}__name(encodeWorkbookOtherMetas,"encodeWorkbookOtherMetas");function encodeDocOriginalMeta(document2){const cloned=Tools.deepClone(document2);return delete cloned.id,delete cloned.rev,delete cloned.title,delete cloned.resources,textEncoder.encode(JSON.stringify(cloned))}__name(encodeDocOriginalMeta,"encodeDocOriginalMeta");function decodeWorksheetOtherMetas(buffer){return JSON.parse(typeof buffer=="string"?b64DecodeUnicode(buffer):textDecoder.decode(buffer))}__name(decodeWorksheetOtherMetas,"decodeWorksheetOtherMetas");function decodePartOfCellData(buffer){return JSON.parse(typeof buffer=="string"?b64DecodeUnicode(buffer):textDecoder.decode(buffer))}__name(decodePartOfCellData,"decodePartOfCellData");function decodeDocOriginalMeta(buffer){return JSON.parse(typeof buffer=="string"?b64DecodeUnicode(buffer):textDecoder.decode(buffer))}__name(decodeDocOriginalMeta,"decodeDocOriginalMeta");const FRAGMENT_ROW_COUNT=256*20;function splitCellDataToBlocks(cellData,maxColumn){const utilObjectMatrix=new ObjectMatrix(cellData),length=utilObjectMatrix.getLength(),blocks=[];let i=0;for(;i<length;){const endRow=Math.min(i+FRAGMENT_ROW_COUNT,length-1),slice=utilObjectMatrix.getSlice(i,Math.min(i+FRAGMENT_ROW_COUNT,length-1),0,maxColumn),data=serializeCellDataSlice(slice);blocks.push({id:Tools.generateRandomId(19,"0123456789"),startRow:i,endRow,data}),i+=FRAGMENT_ROW_COUNT}return blocks}__name(splitCellDataToBlocks,"splitCellDataToBlocks");function serializeCellDataSlice(slice){const data=slice.getData();return textEncoder.encode(JSON.stringify(data))}__name(serializeCellDataSlice,"serializeCellDataSlice");async function generateTempDocumentSnapshot(_context,document2,unitID,rev){var _a2;const documentMeta={unitID:document2.id,rev,creator:"",name:(_a2=document2.title)!=null?_a2:"",resources:document2.resources||[],originalMeta:encodeDocOriginalMeta(document2)};return{snapshot:{unitID,rev:documentMeta.rev,type:I.UNIVER_DOC,workbook:void 0,doc:documentMeta}}}__name(generateTempDocumentSnapshot,"generateTempDocumentSnapshot");async function generateTemporarySnap(context,workbook,unitID,rev,snapshotService){const blockMeta={},sheetMetas={};if(!await Promise.all(Object.entries(workbook.sheets).map(async([sheetID,worksheet])=>{const sheetMeta={id:worksheet.id,type:SheetTypes.GRID,name:worksheet.name,rowCount:worksheet.rowCount,columnCount:worksheet.columnCount,originalMeta:encodeWorksheetOtherMetas(worksheet)};if(sheetMetas[sheetID]=sheetMeta,worksheet.cellData){const sheetBlocks=splitCellDataToBlocks(worksheet.cellData,worksheet.rowCount),responses=await Promise.all(sheetBlocks.map(block=>snapshotService.saveSheetBlock(context,{unitID,type:I.UNIVER_SHEET,block})));if(responses.some(response=>{var _a2;return((_a2=response.error)==null?void 0:_a2.code)!==N.OK}))return!1;blockMeta[sheetID]={sheetID,blocks:responses.map(response=>response.blockID)}}return!0})))throw new Error("[transformWorkbookDataToSnapshot()]: Failed to save sheet blocks.");const originalMeta=encodeWorkbookOtherMetas(workbook),workbookMeta={unitID:workbook.id,rev,creator:"",name:workbook.name,sheetOrder:workbook.sheetOrder,sheets:sheetMetas,blockMeta,resources:workbook.resources||[],originalMeta};return{snapshotRes:{unitID,rev:workbookMeta.rev,type:I.UNIVER_SHEET,workbook:workbookMeta,doc:void 0}}}__name(generateTemporarySnap,"generateTemporarySnap");async function transformWorkbookDataToSnapshot(context,workbook,unitID,rev,snapshotService){var _a2,_b2;const blockMeta={},sheetMetas={};if(!await Promise.all(Object.entries(workbook.sheets).map(async([sheetID,worksheet])=>{const sheetMeta={id:worksheet.id,type:SheetTypes.GRID,name:worksheet.name,rowCount:worksheet.rowCount,columnCount:worksheet.columnCount,originalMeta:encodeWorksheetOtherMetas(worksheet)};if(sheetMetas[sheetID]=sheetMeta,worksheet.cellData){const sheetBlocks=splitCellDataToBlocks(worksheet.cellData,worksheet.rowCount),responses=await Promise.all(sheetBlocks.map(block=>snapshotService.saveSheetBlock(context,{unitID,type:I.UNIVER_SHEET,block})));if(responses.some(response=>{var _a3;return((_a3=response.error)==null?void 0:_a3.code)!==N.OK}))return!1;blockMeta[sheetID]={sheetID,blocks:responses.map(response=>response.blockID)}}return!0})))throw new Error("[transformWorkbookDataToSnapshot()]: Failed to save sheet blocks.");const originalMeta=encodeWorkbookOtherMetas(workbook),workbookMeta={unitID:workbook.id,rev,creator:"",name:workbook.name,sheetOrder:workbook.sheetOrder,sheets:sheetMetas,blockMeta,resources:workbook.resources||[],originalMeta},snapshot={unitID,rev:workbookMeta.rev,type:I.UNIVER_SHEET,workbook:workbookMeta,doc:void 0},saveResult=await snapshotService.saveSnapshot(context,{unitID,type:I.UNIVER_SHEET,snapshot});if(H(saveResult.error))throw new Error(`transformWorkbookDataToSnapshot(): Failed to save snapshot.
10
+ ErrorCode: ${(_a2=saveResult.error)==null?void 0:_a2.code}:${(_b2=saveResult.error)==null?void 0:_b2.message}`);return{snapshot}}__name(transformWorkbookDataToSnapshot,"transformWorkbookDataToSnapshot");function transformSnapshotToWorkbookData(snapshot,sheetBlocks,_context){const workbookMeta=snapshot.workbook;if(!workbookMeta)throw new Error("");const sheetMap={};Object.entries(workbookMeta.sheets).forEach(([sheetID,sheetMeta])=>{const otherMeta2=decodeWorksheetOtherMetas(sheetMeta.originalMeta);sheetMap[sheetID]={id:sheetMeta.id,name:sheetMeta.name,rowCount:sheetMeta.rowCount,columnCount:sheetMeta.columnCount,...otherMeta2}});const sheetBlocksMap=new Map;sheetBlocks.forEach(block=>{sheetBlocksMap.set(block.id,block)}),workbookMeta.blockMeta&&Object.entries(workbookMeta.blockMeta).forEach(([sheetID,blocksOfSheet])=>{var _a2;const worksheetConfig=sheetMap[sheetID];worksheetConfig.cellData={};const blocks=[];(_a2=blocksOfSheet.blocks)==null||_a2.forEach(blockID=>{const block=sheetBlocksMap.get(blockID);if(block)blocks.push(block);else throw new Error("")}),blocks.forEach(block=>{const partOfCellData=decodePartOfCellData(block.data);Object.entries(partOfCellData).forEach(([rowNumber,rowData])=>{const row=worksheetConfig.cellData[+rowNumber]={};Object.entries(rowData).forEach(([columnNumber,cellData])=>{row[+columnNumber]=cellData})})})});const otherMeta=decodeWorksheetOtherMetas(workbookMeta.originalMeta);return{id:snapshot.unitID||workbookMeta.unitID,rev:snapshot.rev||workbookMeta.rev,name:workbookMeta.name,sheetOrder:workbookMeta.sheetOrder,appVersion:"",locale:LocaleType.EN_US,sheets:sheetMap,styles:{},resources:workbookMeta.resources||[],...otherMeta}}__name(transformSnapshotToWorkbookData,"transformSnapshotToWorkbookData");function transformSnapshotToDocumentData(snapshot){const documentMeta=snapshot.doc;if(documentMeta==null)throw new Error("transformSnapshotToDocumentData(): snapshot.doc is undefined.");const{unitID,rev,name,originalMeta,resources=[]}=documentMeta,{body,documentStyle={},settings={},drawings={},drawingsOrder=[],tableSource={},headers={},footers={},lists={}}=decodeDocOriginalMeta(originalMeta);return{id:unitID,rev,locale:LocaleType.EN_US,title:name,body,documentStyle,settings,drawings,drawingsOrder,resources,tableSource,headers,footers,lists}}__name(transformSnapshotToDocumentData,"transformSnapshotToDocumentData");async function transformDocumentDataToSnapshot(context,document2,unitID,rev,snapshotService){var _a2,_b2,_c2;const documentMeta={unitID:document2.id,rev,creator:"",name:(_a2=document2.title)!=null?_a2:"",resources:document2.resources||[],originalMeta:encodeDocOriginalMeta(document2)},snapshot={unitID,rev:documentMeta.rev,type:I.UNIVER_DOC,workbook:void 0,doc:documentMeta},saveResult=await snapshotService.saveSnapshot(context,{unitID,type:I.UNIVER_DOC,snapshot});if(H(saveResult.error))throw new Error(`transformDocumentDataToSnapshot(): Failed to save snapshot.
11
+ ErrorCode: ${(_b2=saveResult.error)==null?void 0:_b2.code}:${(_c2=saveResult.error)==null?void 0:_c2.message}`);return{snapshot}}__name(transformDocumentDataToSnapshot,"transformDocumentDataToSnapshot");async function getSheetBlocksFromSnapshot(snapshot,snapshotService){const workbookMeta=snapshot.workbook;if(!workbookMeta)throw new Error("Workbook metadata is not available");const blocks=[],promises=[];return Object.entries(workbookMeta.blockMeta).forEach(([_,blocksOfSheet])=>{const blockPromises=blocksOfSheet.blocks.map(async blockID=>{const params={unitID:workbookMeta.unitID,type:I.UNIVER_SHEET,blockID},{block}=await snapshotService.getSheetBlock({},params);if(block)blocks.push(block);else throw new Error("Block not found")});promises.push(...blockPromises)}),await Promise.all(promises),blocks}__name(getSheetBlocksFromSnapshot,"getSheetBlocksFromSnapshot");var DataValidationErrorStyle=(DataValidationErrorStyle2=>(DataValidationErrorStyle2[DataValidationErrorStyle2.INFO=0]="INFO",DataValidationErrorStyle2[DataValidationErrorStyle2.STOP=1]="STOP",DataValidationErrorStyle2[DataValidationErrorStyle2.WARNING=2]="WARNING",DataValidationErrorStyle2))(DataValidationErrorStyle||{}),DataValidationImeMode=(DataValidationImeMode2=>(DataValidationImeMode2[DataValidationImeMode2.DISABLED=0]="DISABLED",DataValidationImeMode2[DataValidationImeMode2.FULL_ALPHA=1]="FULL_ALPHA",DataValidationImeMode2[DataValidationImeMode2.FULL_HANGUL=2]="FULL_HANGUL",DataValidationImeMode2[DataValidationImeMode2.FULL_KATAKANA=3]="FULL_KATAKANA",DataValidationImeMode2[DataValidationImeMode2.HALF_ALPHA=4]="HALF_ALPHA",DataValidationImeMode2[DataValidationImeMode2.HALF_HANGUL=5]="HALF_HANGUL",DataValidationImeMode2[DataValidationImeMode2.HALF_KATAKANA=6]="HALF_KATAKANA",DataValidationImeMode2[DataValidationImeMode2.HIRAGANA=7]="HIRAGANA",DataValidationImeMode2[DataValidationImeMode2.NO_CONTROL=8]="NO_CONTROL",DataValidationImeMode2[DataValidationImeMode2.OFF=9]="OFF",DataValidationImeMode2[DataValidationImeMode2.ON=10]="ON",DataValidationImeMode2))(DataValidationImeMode||{}),DataValidationOperator=(DataValidationOperator2=>(DataValidationOperator2.BETWEEN="between",DataValidationOperator2.EQUAL="equal",DataValidationOperator2.GREATER_THAN="greaterThan",DataValidationOperator2.GREATER_THAN_OR_EQUAL="greaterThanOrEqual",DataValidationOperator2.LESS_THAN="lessThan",DataValidationOperator2.LESS_THAN_OR_EQUAL="lessThanOrEqual",DataValidationOperator2.NOT_BETWEEN="notBetween",DataValidationOperator2.NOT_EQUAL="notEqual",DataValidationOperator2))(DataValidationOperator||{}),DataValidationType=(DataValidationType2=>(DataValidationType2.CUSTOM="custom",DataValidationType2.LIST="list",DataValidationType2.LIST_MULTIPLE="listMultiple",DataValidationType2.NONE="none",DataValidationType2.TEXT_LENGTH="textLength",DataValidationType2.DATE="date",DataValidationType2.TIME="time",DataValidationType2.WHOLE="whole",DataValidationType2.DECIMAL="decimal",DataValidationType2.CHECKBOX="checkbox",DataValidationType2))(DataValidationType||{}),DataValidationStatus=(DataValidationStatus2=>(DataValidationStatus2.VALID="valid",DataValidationStatus2.INVALID="invalid",DataValidationStatus2.VALIDATING="validating",DataValidationStatus2))(DataValidationStatus||{});const skipParseTagNames=["script","style","meta","comment","link"];function nameCharacterCheck(name){return!(name.length===0||name.length>31||name.startsWith("'")||name.endsWith("'")||/[:\\\/\?\*\[\]]/.test(name))}__name(nameCharacterCheck,"nameCharacterCheck"),installShims(),exports2.ABCToNumber=ABCToNumber,exports2.AbsoluteRefType=AbsoluteRefType,exports2.ActionIterator=ActionIterator,exports2.AlignTypeH=AlignTypeH,exports2.AlignTypeV=AlignTypeV,exports2.ArrangeTypeEnum=ArrangeTypeEnum,exports2.ArrowsAndMarkersShapes=ArrowsAndMarkersShapes,exports2.AutoFillSeries=AutoFillSeries,exports2.BaselineOffset=BaselineOffset,exports2.BasicShapes=BasicShapes,exports2.BlockType=BlockType,exports2.BooleanNumber=BooleanNumber,exports2.BorderStyleTypes=BorderStyleTypes,exports2.BorderType=BorderType,exports2.BulletAlignment=BulletAlignment,exports2.COLORS=COLORS,exports2.CellValueType=CellValueType,exports2.ClientSnapshotServerService=ClientSnapshotServerService,exports2.Color=Color,exports2.ColorBuilder=ColorBuilder,exports2.ColorKit=ColorKit,exports2.ColorType=ColorType,exports2.ColumnSeparatorType=ColumnSeparatorType,exports2.CommandType=CommandType,exports2.CommonHideTypes=CommonHideTypes,exports2.ConfigService=ConfigService,exports2.ContextService=ContextService,exports2.CopyPasteType=CopyPasteType,exports2.CustomCommandExecutionError=CustomCommandExecutionError,exports2.CustomDecorationType=CustomDecorationType,exports2.CustomRangeType=CustomRangeType,exports2.DEFAULT_CELL=DEFAULT_CELL,exports2.DEFAULT_DOC=DEFAULT_DOC,exports2.DEFAULT_DOCUMENT_SUB_COMPONENT_ID=DEFAULT_DOCUMENT_SUB_COMPONENT_ID,exports2.DEFAULT_EMPTY_DOCUMENT_VALUE=DEFAULT_EMPTY_DOCUMENT_VALUE,exports2.DEFAULT_RANGE=DEFAULT_RANGE,exports2.DEFAULT_RANGE_ARRAY=DEFAULT_RANGE_ARRAY,exports2.DEFAULT_SELECTION=DEFAULT_SELECTION,exports2.DEFAULT_SLIDE=DEFAULT_SLIDE,exports2.DEFAULT_STYLES=DEFAULT_STYLES,exports2.DEFAULT_WORKSHEET_COLUMN_COUNT=DEFAULT_WORKSHEET_COLUMN_COUNT,exports2.DEFAULT_WORKSHEET_COLUMN_COUNT_KEY=DEFAULT_WORKSHEET_COLUMN_COUNT_KEY,exports2.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT=DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT,exports2.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY=DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY,exports2.DEFAULT_WORKSHEET_COLUMN_WIDTH=DEFAULT_WORKSHEET_COLUMN_WIDTH,exports2.DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY=DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY,exports2.DEFAULT_WORKSHEET_ROW_COUNT=DEFAULT_WORKSHEET_ROW_COUNT,exports2.DEFAULT_WORKSHEET_ROW_COUNT_KEY=DEFAULT_WORKSHEET_ROW_COUNT_KEY,exports2.DEFAULT_WORKSHEET_ROW_HEIGHT=DEFAULT_WORKSHEET_ROW_HEIGHT,exports2.DEFAULT_WORKSHEET_ROW_HEIGHT_KEY=DEFAULT_WORKSHEET_ROW_HEIGHT_KEY,exports2.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH=DEFAULT_WORKSHEET_ROW_TITLE_WIDTH,exports2.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY=DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY,exports2.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY=DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY,exports2.DOCS_NORMAL_EDITOR_UNIT_ID_KEY=DOCS_NORMAL_EDITOR_UNIT_ID_KEY,exports2.DOCS_ZEN_EDITOR_UNIT_ID_KEY=DOCS_ZEN_EDITOR_UNIT_ID_KEY,exports2.DashStyleType=DashStyleType,exports2.DataStreamTreeNodeType=DataStreamTreeNodeType,exports2.DataStreamTreeTokenType=DataStreamTreeTokenType,exports2.DataValidationErrorStyle=DataValidationErrorStyle,exports2.DataValidationImeMode=DataValidationImeMode,exports2.DataValidationOperator=DataValidationOperator,exports2.DataValidationRenderMode=DataValidationRenderMode,exports2.DataValidationStatus=DataValidationStatus,exports2.DataValidationType=DataValidationType,exports2.DependentOn=DependentOn,exports2.DesktopLogService=DesktopLogService,exports2.DeveloperMetadataVisibility=DeveloperMetadataVisibility,exports2.Dimension=Dimension,exports2.Direction=Direction,exports2.Disposable=Disposable,exports2.DisposableCollection=DisposableCollection,exports2.DocStyleType=DocStyleType,exports2.DocumentDataModel=DocumentDataModel,exports2.DocumentFlavor=DocumentFlavor,exports2.DrawingTypeEnum=DrawingTypeEnum,exports2.EDITOR_ACTIVATED=EDITOR_ACTIVATED,exports2.EXTENSION_NAMES=EXTENSION_NAMES,exports2.Entry=Entry,exports2.EntryIterator=EntryIterator,exports2.ErrorService=ErrorService,exports2.EventState=EventState,exports2.EventSubject=EventSubject,exports2.FOCUSING_COMMON_DRAWINGS=FOCUSING_COMMON_DRAWINGS,exports2.FOCUSING_DOC=FOCUSING_DOC,exports2.FOCUSING_EDITOR_BUT_HIDDEN=FOCUSING_EDITOR_BUT_HIDDEN,exports2.FOCUSING_EDITOR_INPUT_FORMULA=FOCUSING_EDITOR_INPUT_FORMULA,exports2.FOCUSING_EDITOR_STANDALONE=FOCUSING_EDITOR_STANDALONE,exports2.FOCUSING_FX_BAR_EDITOR=FOCUSING_FX_BAR_EDITOR,exports2.FOCUSING_SHEET=FOCUSING_SHEET,exports2.FOCUSING_SLIDE=FOCUSING_SLIDE,exports2.FOCUSING_UNIT=FOCUSING_UNIT,exports2.FOCUSING_UNIVER_EDITOR=FOCUSING_UNIVER_EDITOR,exports2.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE=FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE,exports2.FORMULA_EDITOR_ACTIVATED=FORMULA_EDITOR_ACTIVATED,exports2.FollowNumberWithType=FollowNumberWithType,exports2.FontItalic=FontItalic,exports2.FontStyleType=FontStyleType,exports2.FontWeight=FontWeight,exports2.FormatType=FormatType,exports2.GlyphType=GlyphType,exports2.GridType=GridType,exports2.HLSColor=HLSColor,exports2.HorizontalAlign=HorizontalAlign,exports2.IAuthzIoService=IAuthzIoService,exports2.ICommandService=ICommandService,exports2.IConfigService=IConfigService,exports2.IContextService=IContextService,exports2.ILocalStorageService=ILocalStorageService,exports2.ILogService=ILogService,exports2.IPermissionService=IPermissionService,exports2.IResourceLoaderService=IResourceLoaderService,exports2.IResourceManagerService=IResourceManagerService,exports2.ISnapshotServerService=ISnapshotServerService,exports2.IUndoRedoService=IUndoRedoService,exports2.IUniverInstanceService=IUniverInstanceService,exports2.Inject=Inject,exports2.Injector=Injector,exports2.InterceptorManager=InterceptorManager,exports2.InterpolationPointType=InterpolationPointType,exports2.JSON1=index$1,exports2.JSONX=JSONX,exports2.KeyIterator=KeyIterator,exports2.LRUHelper=LRUHelper,exports2.LRUMap=LRUMap,exports2.LifecycleStages=LifecycleStages,exports2.LocaleService=LocaleService,exports2.LocaleType=LocaleType,exports2.LogLevel=LogLevel,exports2.MOVE_BUFFER_VALUE=MOVE_BUFFER_VALUE,exports2.Many=Many,exports2.MemoryCursor=MemoryCursor,exports2.NamedStyleType=NamedStyleType,exports2.NilCommand=NilCommand,exports2.NumberUnitType=NumberUnitType,exports2.ObjectMatrix=ObjectMatrix,exports2.ObjectRelativeFromH=ObjectRelativeFromH,exports2.ObjectRelativeFromV=ObjectRelativeFromV,exports2.OnLifecycle=OnLifecycle,exports2.Optional=Optional,exports2.OtherShapes=OtherShapes,exports2.PRESET_LIST_TYPE=PRESET_LIST_TYPE,exports2.PageElementType=PageElementType,exports2.PageOrientType=PageOrientType,exports2.PageType=PageType,exports2.ParagraphElementType=ParagraphElementType,exports2.PermissionService=PermissionService,exports2.PermissionStatus=PermissionStatus,exports2.Plugin=Plugin,exports2.PositionedObjectLayoutType=PositionedObjectLayoutType,exports2.PresetListType=PresetListType,exports2.ProtectionType=ProtectionType,exports2.QuickListType=QuickListType,exports2.QuickListTypeMap=QuickListTypeMap,exports2.RANGE_TYPE=RANGE_TYPE,exports2.RCDisposable=RCDisposable,exports2.RGBA_PAREN=RGBA_PAREN,exports2.RGB_PAREN=RGB_PAREN,exports2.ROTATE_BUFFER_VALUE=ROTATE_BUFFER_VALUE,exports2.Range=Range,exports2.Rectangle=Rectangle,exports2.RediConsumer=RediConsumer,exports2.RediContext=RediContext,exports2.RediError=RediError,exports2.RediProvider=RediProvider,exports2.RedoCommand=RedoCommand,exports2.RedoCommandId=RedoCommandId,exports2.RefAlias=RefAlias,exports2.Registry=Registry,exports2.RegistryAsMap=RegistryAsMap,exports2.RelativeDate=RelativeDate,exports2.RelativeSlideLink=RelativeSlideLink,exports2.ResourceManagerService=ResourceManagerService,exports2.RgbColor=RgbColor,exports2.RxDisposable=RxDisposable,exports2.SectionType=SectionType,exports2.Self=Self,exports2.SheetTypes=SheetTypes,exports2.SheetViewModel=SheetViewModel,exports2.SkipSelf=SkipSelf,exports2.SliceBodyType=SliceBodyType,exports2.SlideDataModel=SlideDataModel,exports2.SpacingRule=SpacingRule,exports2.SpecialShapes=SpecialShapes,exports2.Styles=Styles,exports2.THEME_COLORS=THEME_COLORS,exports2.TabStopAlignment=TabStopAlignment,exports2.TableAlignmentType=TableAlignmentType,exports2.TableCellHeightRule=TableCellHeightRule,exports2.TableLayoutType=TableLayoutType,exports2.TableSizeType=TableSizeType,exports2.TableTextWrapType=TableTextWrapType,exports2.TextDecoration=TextDecoration,exports2.TextDirection=TextDirection,exports2.TextDirectionType=TextDirectionType,exports2.TextX=TextX,exports2.TextXActionType=TextXActionType,exports2.ThemeColor=ThemeColor,exports2.ThemeColorType=ThemeColorType,exports2.ThemeColors=ThemeColors,exports2.ThemeService=ThemeService,exports2.Tools=Tools,exports2.UndoCommand=UndoCommand,exports2.UndoCommandId=UndoCommandId,exports2.UnitModel=UnitModel,exports2.Univer=Univer,exports2.UniverInstanceType=I,exports2.UpdateDocsAttributeType=UpdateDocsAttributeType,exports2.ValueIterator=ValueIterator,exports2.VerticalAlign=VerticalAlign,exports2.VerticalAlignmentType=VerticalAlignmentType,exports2.WithDependency=WithDependency,exports2.WithNew=WithNew,exports2.Worksheet=Worksheet,exports2.WrapStrategy=WrapStrategy,exports2.WrapTextType=WrapTextType,exports2.afterInitApply=afterInitApply,exports2.b64DecodeUnicode=b64DecodeUnicode,exports2.b64EncodeUnicode=b64EncodeUnicode,exports2.binarySearchArray=binarySearchArray,exports2.cellToRange=cellToRange,exports2.characterSpacingControlType=characterSpacingControlType,exports2.checkForSubstrings=checkForSubstrings,exports2.checkIfMove=checkIfMove,exports2.checkParagraphHasBullet=checkParagraphHasBullet,exports2.checkParagraphHasIndent=checkParagraphHasIndent,exports2.checkParagraphHasIndentByStyle=checkParagraphHasIndentByStyle,exports2.codeToBlob=codeToBlob,exports2.composeBody=composeBody,exports2.composeInterceptors=composeInterceptors,exports2.concatMatrixArray=concatMatrixArray,exports2.connectDependencies=connectDependencies,exports2.connectInjector=connectInjector,exports2.convertBodyToHtml=convertBodyToHtml,exports2.covertTextRunToHtml=covertTextRunToHtml,exports2.createDefaultUser=createDefaultUser,exports2.createIdentifier=createIdentifier,exports2.createInterceptorKey=createInterceptorKey,exports2.createInternalEditorID=createInternalEditorID,exports2.createRowColIter=createRowColIter,exports2.debounce=debounce,exports2.dedupe=dedupe,exports2.deepCompare=deepCompare,exports2.deleteContent=deleteContent,exports2.extractPureTextFromCell=extractPureTextFromCell,exports2.forwardRef=forwardRef,exports2.fromCallback=fromCallback,exports2.fromEventSubject=fromEventSubject,exports2.fromObservable=fromObservable,exports2.generateRandomId=generateRandomId,exports2.generateTempDocumentSnapshot=generateTempDocumentSnapshot,exports2.generateTemporarySnap=generateTemporarySnap,exports2.getArrayLength=getArrayLength,exports2.getBodySlice=getBodySlice,exports2.getBodySliceHtml=getBodySliceHtml,exports2.getBorderStyleType=getBorderStyleType,exports2.getCellInfoInMergeData=getCellInfoInMergeData,exports2.getCellValueType=getCellValueType,exports2.getColorStyle=getColorStyle,exports2.getCustomDecorationSlice=getCustomDecorationSlice,exports2.getCustomRangeSlice=getCustomRangeSlice,exports2.getDocsUpdateBody=getDocsUpdateBody,exports2.getReverseDirection=getReverseDirection,exports2.getSheetBlocksFromSnapshot=getSheetBlocksFromSnapshot,exports2.getWorksheetUID=getWorksheetUID,exports2.groupBy=groupBy,exports2.handleStyleToString=handleStyleToString,exports2.hashAlgorithm=hashAlgorithm,exports2.horizontalLineSegmentsSubtraction=horizontalLineSegmentsSubtraction,exports2.insertMatrixArray=insertMatrixArray,exports2.insertTextToContent=insertTextToContent,exports2.isAsyncDependencyItem=isAsyncDependencyItem,exports2.isAsyncHook=isAsyncHook,exports2.isBlackColor=isBlackColor,exports2.isBooleanString=isBooleanString,exports2.isCellCoverable=isCellCoverable,exports2.isCellV=isCellV,exports2.isClassDependencyItem=isClassDependencyItem,exports2.isCtor=isCtor,exports2.isDisposable=isDisposable,exports2.isEmptyCell=isEmptyCell,exports2.isFactoryDependencyItem=isFactoryDependencyItem,exports2.isFormulaId=isFormulaId,exports2.isFormulaString=isFormulaString,exports2.isICellData=isICellData,exports2.isInternalEditorID=isInternalEditorID,exports2.isNullCell=isNullCell,exports2.isNumeric=isNumeric,exports2.isRangesEqual=isRangesEqual,exports2.isRealNum=isRealNum,exports2.isSafeNumeric=isSafeNumeric,exports2.isSameStyleTextRun=isSameStyleTextRun,exports2.isUnitRangesEqual=isUnitRangesEqual,exports2.isValidRange=isValidRange,exports2.isValueDependencyItem=isValueDependencyItem,exports2.isWhiteColor=isWhiteColor,exports2.makeArray=makeArray,exports2.makeCellRangeToRangeData=makeCellRangeToRangeData,exports2.makeCellToSelection=makeCellToSelection,exports2.makeCustomRangeStream=makeCustomRangeStream,exports2.mergeOverrideWithDependencies=mergeOverrideWithDependencies,exports2.mergeSets=mergeSets,exports2.mergeWorksheetSnapshotWithDefault=mergeWorksheetSnapshotWithDefault,exports2.moveMatrixArray=moveMatrixArray,exports2.moveRangeByOffset=moveRangeByOffset,exports2.nameCharacterCheck=nameCharacterCheck,exports2.normalizeBody=normalizeBody,exports2.normalizeTextRuns=normalizeTextRuns,exports2.numberToABC=numberToABC,exports2.numberToListABC=numberToListABC,exports2.orderSearchArray=orderSearchArray,exports2.queryObjectMatrix=queryObjectMatrix,exports2.remove=remove,exports2.repeatStringNumTimes=repeatStringNumTimes,exports2.replaceInDocumentBody=replaceInDocumentBody,exports2.requestImmediateMacroTask=requestImmediateMacroTask,exports2.rotate=rotate,exports2.runOnLifecycle=runOnLifecycle,exports2.searchArray=searchArray,exports2.selectionToArray=selectionToArray,exports2.sequence=sequence,exports2.sequenceAsync=sequenceAsync,exports2.sequenceExecute=sequenceExecute,exports2.sequenceExecuteAsync=sequenceExecuteAsync,exports2.setDependencies=setDependencies,exports2.shallowEqual=shallowEqual,exports2.skipParseTagNames=skipParseTagNames,exports2.sliceMatrixArray=sliceMatrixArray,exports2.sortRules=sortRules,exports2.sortRulesByDesc=sortRulesByDesc,exports2.sortRulesFactory=sortRulesFactory,exports2.spliceArray=spliceArray,exports2.takeAfter=takeAfter,exports2.textDecoder=textDecoder,exports2.textEncoder=textEncoder,exports2.throttle=throttle,exports2.toDisposable=toDisposable,exports2.transformDocumentDataToSnapshot=transformDocumentDataToSnapshot,exports2.transformSnapshotToDocumentData=transformSnapshotToDocumentData,exports2.transformSnapshotToWorkbookData=transformSnapshotToWorkbookData,exports2.transformWorkbookDataToSnapshot=transformWorkbookDataToSnapshot,exports2.updateAttributeByDelete=updateAttributeByDelete,exports2.updateAttributeByInsert=updateAttributeByInsert,exports2.useDependency=useDependency,exports2.useDependencyContext=useDependencyContext,exports2.useDependencyContextValue=useDependencyContextValue,exports2.useDependencyValue=useDependencyValue,exports2.useInjector=useInjector,exports2.useObservable=useObservable,exports2.useUpdateBinder=useUpdateBinder,Object.defineProperty(exports2,Symbol.toStringTag,{value:"Module"})});