@univerjs/core 0.4.1 → 0.4.2
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.
- package/lib/cjs/index.js +5 -5
- package/lib/es/index.js +618 -278
- package/lib/types/common/const.d.ts +1 -0
- package/lib/types/docs/data-model/json-x/json-x.d.ts +2 -2
- package/lib/types/docs/data-model/text-x/__tests__/apply.spec.d.ts +16 -0
- package/lib/types/docs/data-model/text-x/action-types.d.ts +0 -5
- package/lib/types/docs/data-model/text-x/build-utils/custom-range.d.ts +9 -1
- package/lib/types/docs/data-model/text-x/build-utils/index.d.ts +3 -3
- package/lib/types/docs/data-model/text-x/text-x.d.ts +4 -4
- package/lib/types/index.d.ts +1 -1
- package/lib/types/services/config/config.service.d.ts +10 -1
- package/lib/types/services/permission/permission.service.d.ts +3 -0
- package/lib/types/services/permission/type.d.ts +2 -0
- package/lib/types/shared/__tests__/compose.spec.d.ts +16 -0
- package/lib/types/shared/lifecycle.d.ts +1 -1
- package/lib/types/shared/r-tree.d.ts +21 -4
- package/lib/types/shared/rectangle.d.ts +1 -0
- package/lib/types/shared/tools.d.ts +9 -2
- package/lib/types/sheets/column-manager.d.ts +19 -2
- package/lib/types/sheets/row-manager.d.ts +22 -4
- package/lib/types/sheets/typedef.d.ts +32 -2
- package/lib/types/sheets/view-model.d.ts +2 -2
- package/lib/types/sheets/worksheet.d.ts +47 -1
- package/lib/types/types/enum/data-validation-type.d.ts +2 -1
- package/lib/types/types/interfaces/i-document-data.d.ts +3 -2
- package/lib/umd/index.js +5 -5
- package/package.json +4 -3
package/lib/cjs/index.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
"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);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const rxjs=require("rxjs"),operators=require("rxjs/operators"),React=require("react");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");var freeGlobal=typeof global=="object"&&global&&global.Object===Object&&global,freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root=freeGlobal||freeSelf||Function("return this")(),Symbol$1=root.Symbol,objectProto$9=Object.prototype,hasOwnProperty$7=objectProto$9.hasOwnProperty,nativeObjectToString$1=objectProto$9.toString,symToStringTag$1=Symbol$1?Symbol$1.toStringTag:void 0;function getRawTag(value){var isOwn=hasOwnProperty$7.call(value,symToStringTag$1),tag=value[symToStringTag$1];try{value[symToStringTag$1]=void 0;var unmasked=!0}catch{}var result=nativeObjectToString$1.call(value);return unmasked&&(isOwn?value[symToStringTag$1]=tag:delete value[symToStringTag$1]),result}__name(getRawTag,"getRawTag");var objectProto$8=Object.prototype,nativeObjectToString=objectProto$8.toString;function objectToString(value){return nativeObjectToString.call(value)}__name(objectToString,"objectToString");var nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag=Symbol$1?Symbol$1.toStringTag:void 0;function baseGetTag(value){return value==null?value===void 0?undefinedTag:nullTag:symToStringTag&&symToStringTag in Object(value)?getRawTag(value):objectToString(value)}__name(baseGetTag,"baseGetTag");function isObjectLike(value){return value!=null&&typeof value=="object"}__name(isObjectLike,"isObjectLike");var symbolTag="[object Symbol]";function isSymbol(value){return typeof value=="symbol"||isObjectLike(value)&&baseGetTag(value)==symbolTag}__name(isSymbol,"isSymbol");function arrayMap(array,iteratee){for(var index2=-1,length=array==null?0:array.length,result=Array(length);++index2<length;)result[index2]=iteratee(array[index2],index2,array);return result}__name(arrayMap,"arrayMap");var isArray=Array.isArray,INFINITY$1=1/0,symbolProto=Symbol$1?Symbol$1.prototype:void 0,symbolToString=symbolProto?symbolProto.toString:void 0;function baseToString(value){if(typeof value=="string")return value;if(isArray(value))return arrayMap(value,baseToString)+"";if(isSymbol(value))return symbolToString?symbolToString.call(value):"";var result=value+"";return result=="0"&&1/value==-INFINITY$1?"-0":result}__name(baseToString,"baseToString");var reWhitespace=/\s/;function trimmedEndIndex(string){for(var index2=string.length;index2--&&reWhitespace.test(string.charAt(index2)););return index2}__name(trimmedEndIndex,"trimmedEndIndex");var reTrimStart=/^\s+/;function baseTrim(string){return string&&string.slice(0,trimmedEndIndex(string)+1).replace(reTrimStart,"")}__name(baseTrim,"baseTrim");function isObject$1(value){var type2=typeof value;return value!=null&&(type2=="object"||type2=="function")}__name(isObject$1,"isObject$1");var NAN=NaN,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;function toNumber(value){if(typeof value=="number")return value;if(isSymbol(value))return NAN;if(isObject$1(value)){var other=typeof value.valueOf=="function"?value.valueOf():value;value=isObject$1(other)?other+"":other}if(typeof value!="string")return value===0?value:+value;value=baseTrim(value);var isBinary=reIsBinary.test(value);return isBinary||reIsOctal.test(value)?freeParseInt(value.slice(2),isBinary?2:8):reIsBadHex.test(value)?NAN:+value}__name(toNumber,"toNumber");function identity(value){return value}__name(identity,"identity");var asyncTag="[object AsyncFunction]",funcTag$1="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";function isFunction$1(value){if(!isObject$1(value))return!1;var tag=baseGetTag(value);return tag==funcTag$1||tag==genTag||tag==asyncTag||tag==proxyTag}__name(isFunction$1,"isFunction$1");var coreJsData=root["__core-js_shared__"],maskSrcKey=function(){var uid=/[^.]+$/.exec(coreJsData&&coreJsData.keys&&coreJsData.keys.IE_PROTO||"");return uid?"Symbol(src)_1."+uid:""}();function isMasked(func){return!!maskSrcKey&&maskSrcKey in func}__name(isMasked,"isMasked");var funcProto$2=Function.prototype,funcToString$2=funcProto$2.toString;function toSource(func){if(func!=null){try{return funcToString$2.call(func)}catch{}try{return func+""}catch{}}return""}__name(toSource,"toSource");var reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto$1=Function.prototype,objectProto$7=Object.prototype,funcToString$1=funcProto$1.toString,hasOwnProperty$6=objectProto$7.hasOwnProperty,reIsNative=RegExp("^"+funcToString$1.call(hasOwnProperty$6).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function baseIsNative(value){if(!isObject$1(value)||isMasked(value))return!1;var pattern=isFunction$1(value)?reIsNative:reIsHostCtor;return pattern.test(toSource(value))}__name(baseIsNative,"baseIsNative");function getValue(object,key){return object==null?void 0:object[key]}__name(getValue,"getValue");function getNative(object,key){var value=getValue(object,key);return baseIsNative(value)?value:void 0}__name(getNative,"getNative");var objectCreate=Object.create,baseCreate=function(){function object(){}return __name(object,"object"),function(proto){if(!isObject$1(proto))return{};if(objectCreate)return objectCreate(proto);object.prototype=proto;var result=new object;return object.prototype=void 0,result}}();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 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");var HOT_COUNT=800,HOT_SPAN=16,nativeNow=Date.now;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 constant(value){return function(){return value}}__name(constant,"constant");var defineProperty=function(){try{var func=getNative(Object,"defineProperty");return func({},"",{}),func}catch{}}(),baseSetToString=defineProperty?function(func,string){return defineProperty(func,"toString",{configurable:!0,enumerable:!1,value:constant(string),writable:!0})}:identity,setToString=shortOut(baseSetToString),MAX_SAFE_INTEGER$1=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;function isIndex(value,length){var type2=typeof value;return length=length==null?MAX_SAFE_INTEGER$1:length,!!length&&(type2=="number"||type2!="symbol"&&reIsUint.test(value))&&value>-1&&value%1==0&&value<length}__name(isIndex,"isIndex");function baseAssignValue(object,key,value){key=="__proto__"&&defineProperty?defineProperty(object,key,{configurable:!0,enumerable:!0,value,writable:!0}):object[key]=value}__name(baseAssignValue,"baseAssignValue");function eq(value,other){return value===other||value!==value&&other!==other}__name(eq,"eq");var objectProto$6=Object.prototype,hasOwnProperty$5=objectProto$6.hasOwnProperty;function assignValue(object,key,value){var objValue=object[key];(!(hasOwnProperty$5.call(object,key)&&eq(objValue,value))||value===void 0&&!(key in object))&&baseAssignValue(object,key,value)}__name(assignValue,"assignValue");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");var nativeMax$1=Math.max;function overRest(func,start,transform){return start=nativeMax$1(start===void 0?func.length-1:start,0),function(){for(var args=arguments,index2=-1,length=nativeMax$1(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 baseRest(func,start){return setToString(overRest(func,start,identity),func+"")}__name(baseRest,"baseRest");var MAX_SAFE_INTEGER=9007199254740991;function isLength(value){return typeof value=="number"&&value>-1&&value%1==0&&value<=MAX_SAFE_INTEGER}__name(isLength,"isLength");function isArrayLike(value){return value!=null&&isLength(value.length)&&!isFunction$1(value)}__name(isArrayLike,"isArrayLike");function isIterateeCall(value,index2,object){if(!isObject$1(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 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");var objectProto$5=Object.prototype;function isPrototype(value){var Ctor=value&&value.constructor,proto=typeof Ctor=="function"&&Ctor.prototype||objectProto$5;return value===proto}__name(isPrototype,"isPrototype");function baseTimes(n,iteratee){for(var index2=-1,result=Array(n);++index2<n;)result[index2]=iteratee(index2);return result}__name(baseTimes,"baseTimes");var argsTag$1="[object Arguments]";function baseIsArguments(value){return isObjectLike(value)&&baseGetTag(value)==argsTag$1}__name(baseIsArguments,"baseIsArguments");var objectProto$4=Object.prototype,hasOwnProperty$4=objectProto$4.hasOwnProperty,propertyIsEnumerable=objectProto$4.propertyIsEnumerable,isArguments=baseIsArguments(function(){return arguments}())?baseIsArguments:function(value){return isObjectLike(value)&&hasOwnProperty$4.call(value,"callee")&&!propertyIsEnumerable.call(value,"callee")};function stubFalse(){return!1}__name(stubFalse,"stubFalse");var freeExports$2=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$2=freeExports$2&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$2=freeModule$2&&freeModule$2.exports===freeExports$2,Buffer$1=moduleExports$2?root.Buffer:void 0,nativeIsBuffer=Buffer$1?Buffer$1.isBuffer:void 0,isBuffer=nativeIsBuffer||stubFalse,argsTag="[object Arguments]",arrayTag="[object Array]",boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",funcTag="[object Function]",mapTag="[object Map]",numberTag="[object Number]",objectTag$1="[object Object]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",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]",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$1]=typedArrayTags[regexpTag]=typedArrayTags[setTag]=typedArrayTags[stringTag]=typedArrayTags[weakMapTag]=!1;function baseIsTypedArray(value){return isObjectLike(value)&&isLength(value.length)&&!!typedArrayTags[baseGetTag(value)]}__name(baseIsTypedArray,"baseIsTypedArray");function baseUnary(func){return function(value){return func(value)}}__name(baseUnary,"baseUnary");var freeExports$1=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule$1=freeExports$1&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports$1=freeModule$1&&freeModule$1.exports===freeExports$1,freeProcess=moduleExports$1&&freeGlobal.process,nodeUtil=function(){try{var types2=freeModule$1&&freeModule$1.require&&freeModule$1.require("util").types;return types2||freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch{}}(),nodeIsTypedArray=nodeUtil&&nodeUtil.isTypedArray,isTypedArray=nodeIsTypedArray?baseUnary(nodeIsTypedArray):baseIsTypedArray;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 overArg(func,transform){return function(arg){return func(transform(arg))}}__name(overArg,"overArg");function nativeKeysIn(object){var result=[];if(object!=null)for(var key in Object(object))result.push(key);return result}__name(nativeKeysIn,"nativeKeysIn");var objectProto$3=Object.prototype,hasOwnProperty$3=objectProto$3.hasOwnProperty;function baseKeysIn(object){if(!isObject$1(object))return nativeKeysIn(object);var isProto=isPrototype(object),result=[];for(var key in object)key=="constructor"&&(isProto||!hasOwnProperty$3.call(object,key))||result.push(key);return result}__name(baseKeysIn,"baseKeysIn");function keysIn(object){return isArrayLike(object)?arrayLikeKeys(object):baseKeysIn(object)}__name(keysIn,"keysIn");var reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/;function isKey(value,object){if(isArray(value))return!1;var type2=typeof value;return type2=="number"||type2=="symbol"||type2=="boolean"||value==null||isSymbol(value)?!0:reIsPlainProp.test(value)||!reIsDeepProp.test(value)||object!=null&&value in Object(object)}__name(isKey,"isKey");var nativeCreate=getNative(Object,"create");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");var HASH_UNDEFINED$1="__lodash_hash_undefined__",objectProto$2=Object.prototype,hasOwnProperty$2=objectProto$2.hasOwnProperty;function hashGet(key){var data=this.__data__;if(nativeCreate){var result=data[key];return result===HASH_UNDEFINED$1?void 0:result}return hasOwnProperty$2.call(data,key)?data[key]:void 0}__name(hashGet,"hashGet");var objectProto$1=Object.prototype,hasOwnProperty$1=objectProto$1.hasOwnProperty;function hashHas(key){var data=this.__data__;return nativeCreate?data[key]!==void 0:hasOwnProperty$1.call(data,key)}__name(hashHas,"hashHas");var HASH_UNDEFINED="__lodash_hash_undefined__";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");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");Hash.prototype.clear=hashClear;Hash.prototype.delete=hashDelete;Hash.prototype.get=hashGet;Hash.prototype.has=hashHas;Hash.prototype.set=hashSet;function listCacheClear(){this.__data__=[],this.size=0}__name(listCacheClear,"listCacheClear");function assocIndexOf(array,key){for(var length=array.length;length--;)if(eq(array[length][0],key))return length;return-1}__name(assocIndexOf,"assocIndexOf");var arrayProto=Array.prototype,splice=arrayProto.splice;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");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");ListCache.prototype.clear=listCacheClear;ListCache.prototype.delete=listCacheDelete;ListCache.prototype.get=listCacheGet;ListCache.prototype.has=listCacheHas;ListCache.prototype.set=listCacheSet;var Map$1=getNative(root,"Map");function mapCacheClear(){this.size=0,this.__data__={hash:new Hash,map:new(Map$1||ListCache),string:new Hash}}__name(mapCacheClear,"mapCacheClear");function isKeyable(value){var type2=typeof value;return type2=="string"||type2=="number"||type2=="symbol"||type2=="boolean"?value!=="__proto__":value===null}__name(isKeyable,"isKeyable");function getMapData(map,key){var data=map.__data__;return isKeyable(key)?data[typeof key=="string"?"string":"hash"]:data.map}__name(getMapData,"getMapData");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");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");MapCache.prototype.clear=mapCacheClear;MapCache.prototype.delete=mapCacheDelete;MapCache.prototype.get=mapCacheGet;MapCache.prototype.has=mapCacheHas;MapCache.prototype.set=mapCacheSet;var FUNC_ERROR_TEXT$1="Expected a function";function memoize(func,resolver){if(typeof func!="function"||resolver!=null&&typeof resolver!="function")throw new TypeError(FUNC_ERROR_TEXT$1);var memoized=__name(function(){var args=arguments,key=resolver?resolver.apply(this,args):args[0],cache=memoized.cache;if(cache.has(key))return cache.get(key);var result=func.apply(this,args);return memoized.cache=cache.set(key,result)||cache,result},"memoized");return memoized.cache=new(memoize.Cache||MapCache),memoized}__name(memoize,"memoize");memoize.Cache=MapCache;var MAX_MEMOIZE_SIZE=500;function memoizeCapped(func){var result=memoize(func,function(key){return cache.size===MAX_MEMOIZE_SIZE&&cache.clear(),key}),cache=result.cache;return result}__name(memoizeCapped,"memoizeCapped");var rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reEscapeChar=/\\(\\)?/g,stringToPath=memoizeCapped(function(string){var result=[];return string.charCodeAt(0)===46&&result.push(""),string.replace(rePropName,function(match,number,quote,subString){result.push(quote?subString.replace(reEscapeChar,"$1"):number||match)}),result});function toString(value){return value==null?"":baseToString(value)}__name(toString,"toString");function castPath(value,object){return isArray(value)?value:isKey(value,object)?[value]:stringToPath(toString(value))}__name(castPath,"castPath");var INFINITY=1/0;function toKey(value){if(typeof value=="string"||isSymbol(value))return value;var result=value+"";return result=="0"&&1/value==-INFINITY?"-0":result}__name(toKey,"toKey");function baseGet(object,path){path=castPath(path,object);for(var index2=0,length=path.length;object!=null&&index2<length;)object=object[toKey(path[index2++])];return index2&&index2==length?object:void 0}__name(baseGet,"baseGet");function get(object,path,defaultValue){var result=object==null?void 0:baseGet(object,path);return result===void 0?defaultValue:result}__name(get,"get");var getPrototype=overArg(Object.getPrototypeOf,Object),objectTag="[object Object]",funcProto=Function.prototype,objectProto=Object.prototype,funcToString=funcProto.toString,hasOwnProperty=objectProto.hasOwnProperty,objectCtorString=funcToString.call(Object);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");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");var LARGE_ARRAY_SIZE=200;function stackSet(key,value){var data=this.__data__;if(data instanceof ListCache){var pairs=data.__data__;if(!Map$1||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");function Stack(entries){var data=this.__data__=new ListCache(entries);this.size=data.size}__name(Stack,"Stack");Stack.prototype.clear=stackClear;Stack.prototype.delete=stackDelete;Stack.prototype.get=stackGet;Stack.prototype.has=stackHas;Stack.prototype.set=stackSet;var freeExports=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule=freeExports&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports=freeModule&&freeModule.exports===freeExports,Buffer2=moduleExports?root.Buffer:void 0;Buffer2&&Buffer2.allocUnsafe;function cloneBuffer(buffer,isDeep){return buffer.slice()}__name(cloneBuffer,"cloneBuffer");var Uint8Array$1=root.Uint8Array;function cloneArrayBuffer(arrayBuffer){var result=new arrayBuffer.constructor(arrayBuffer.byteLength);return new Uint8Array$1(result).set(new Uint8Array$1(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 initCloneObject(object){return typeof object.constructor=="function"&&!isPrototype(object)?baseCreate(getPrototype(object)):{}}__name(initCloneObject,"initCloneObject");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");var baseFor=createBaseFor(),now=__name(function(){return root.Date.now()},"now"),FUNC_ERROR_TEXT="Expected a function",nativeMax=Math.max,nativeMin=Math.min;function debounce(func,wait,options){var lastArgs,lastThis,maxWait,result,timerId,lastCallTime,lastInvokeTime=0,leading=!1,maxing=!1,trailing=!0;if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT);wait=toNumber(wait)||0,isObject$1(options)&&(leading=!!options.leading,maxing="maxWait"in options,maxWait=maxing?nativeMax(toNumber(options.maxWait)||0,wait):maxWait,trailing="trailing"in options?!!options.trailing:trailing);function invokeFunc(time){var args=lastArgs,thisArg=lastThis;return lastArgs=lastThis=void 0,lastInvokeTime=time,result=func.apply(thisArg,args),result}__name(invokeFunc,"invokeFunc");function leadingEdge(time){return lastInvokeTime=time,timerId=setTimeout(timerExpired,wait),leading?invokeFunc(time):result}__name(leadingEdge,"leadingEdge");function remainingWait(time){var timeSinceLastCall=time-lastCallTime,timeSinceLastInvoke=time-lastInvokeTime,timeWaiting=wait-timeSinceLastCall;return maxing?nativeMin(timeWaiting,maxWait-timeSinceLastInvoke):timeWaiting}__name(remainingWait,"remainingWait");function shouldInvoke(time){var timeSinceLastCall=time-lastCallTime,timeSinceLastInvoke=time-lastInvokeTime;return lastCallTime===void 0||timeSinceLastCall>=wait||timeSinceLastCall<0||maxing&&timeSinceLastInvoke>=maxWait}__name(shouldInvoke,"shouldInvoke");function timerExpired(){var time=now();if(shouldInvoke(time))return trailingEdge(time);timerId=setTimeout(timerExpired,remainingWait(time))}__name(timerExpired,"timerExpired");function trailingEdge(time){return timerId=void 0,trailing&&lastArgs?invokeFunc(time):(lastArgs=lastThis=void 0,result)}__name(trailingEdge,"trailingEdge");function cancel(){timerId!==void 0&&clearTimeout(timerId),lastInvokeTime=0,lastArgs=lastCallTime=lastThis=timerId=void 0}__name(cancel,"cancel");function flush(){return timerId===void 0?result:trailingEdge(now())}__name(flush,"flush");function debounced(){var time=now(),isInvoking=shouldInvoke(time);if(lastArgs=arguments,lastThis=this,lastCallTime=time,isInvoking){if(timerId===void 0)return leadingEdge(lastCallTime);if(maxing)return clearTimeout(timerId),timerId=setTimeout(timerExpired,wait),invokeFunc(lastCallTime)}return timerId===void 0&&(timerId=setTimeout(timerExpired,wait)),result}return __name(debounced,"debounced"),debounced.cancel=cancel,debounced.flush=flush,debounced}__name(debounce,"debounce");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 isArrayLikeObject(value){return isObjectLike(value)&&isArrayLike(value)}__name(isArrayLikeObject,"isArrayLikeObject");function safeGet(object,key){if(!(key==="constructor"&&typeof object[key]=="function")&&key!="__proto__")return object[key]}__name(safeGet,"safeGet");function toPlainObject(value){return copyObject(value,keysIn(value))}__name(toPlainObject,"toPlainObject");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):(!isObject$1(objValue)||isFunction$1(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 baseMerge(object,source,srcIndex,customizer,stack){object!==source&&baseFor(source,function(srcValue,key){if(stack||(stack=new Stack),isObject$1(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");var mergeWith=createAssigner(function(object,source,srcIndex,customizer){baseMerge(object,source,srcIndex,customizer)});const mergeWith$1=mergeWith;var merge=createAssigner(function(object,source,srcIndex){baseMerge(object,source,srcIndex)});const merge$1=merge;function baseSet(object,path,value,customizer){if(!isObject$1(object))return object;path=castPath(path,object);for(var index2=-1,length=path.length,lastIndex=length-1,nested=object;nested!=null&&++index2<length;){var key=toKey(path[index2]),newValue=value;if(key==="__proto__"||key==="constructor"||key==="prototype")return object;if(index2!=lastIndex){var objValue=nested[key];newValue=void 0,newValue===void 0&&(newValue=isObject$1(objValue)?objValue:isIndex(path[index2+1])?[]:{})}assignValue(nested,key,newValue),nested=nested[key]}return object}__name(baseSet,"baseSet");function set(object,path,value){return object==null?object:baseSet(object,path,value)}__name(set,"set");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");function isBooleanString(str){return["true","false"].includes(str.toLowerCase())}__name(isBooleanString,"isBooleanString");const 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
|
|
2
|
-
`;function createInternalEditorID(id){return`${PREFIX}${id}`}__name(createInternalEditorID,"createInternalEditorID");function isInternalEditorID(id){return id.startsWith(PREFIX)}__name(isInternalEditorID,"isInternalEditorID");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");exports.Quantity=void 0;(function(Quantity){Quantity.MANY="many",Quantity.OPTIONAL="optional",Quantity.REQUIRED="required"})(exports.Quantity||(exports.Quantity={}));exports.LookUp=void 0;(function(LookUp){LookUp.SELF="self",LookUp.SKIP_SELF="skipSelf"})(exports.LookUp||(exports.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=exports.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===exports.Quantity.OPTIONAL&&length>1||quantity===exports.Quantity.REQUIRED&&length!==1)throw new QuantityCheckError(id,quantity,length)}__name(checkQuantity,"checkQuantity");function retrieveQuantity(quantity,arr){return quantity===exports.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===exports.Quantity.REQUIRED)throw new IdentifierUndefinedError(registerTarget,index2);changeQuantity(registerTarget,index2,quantity)}}},"decoratorFactory")}__name(quantifyDecoratorFactoryProducer,"quantifyDecoratorFactoryProducer");var Many=quantifyDecoratorFactoryProducer(exports.Quantity.MANY),Optional=quantifyDecoratorFactoryProducer(exports.Quantity.OPTIONAL),Inject=quantifyDecoratorFactoryProducer(exports.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=exports.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=exports.Quantity.REQUIRED);var ret=this.resolvedDependencies.get(id);if(!ret)throw new DependencyNotFoundError(id);return checkQuantity(id,quantity,ret.length),quantity===exports.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(exports.LookUp.SKIP_SELF),Self=lookupDecoratorFactoryProducer(exports.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:exports.Quantity.REQUIRED,withNew:!1};var modifiers=dep.slice(0,dep.length-1),identifier=dep[dep.length-1],lookUp=void 0,quantity=exports.Quantity.REQUIRED,withNew=!1;return modifiers.forEach(function(modifier){if(modifier instanceof Self)lookUp=exports.LookUp.SELF;else if(modifier instanceof SkipSelf)lookUp=exports.LookUp.SKIP_SELF;else if(modifier instanceof Optional)quantity=exports.Quantity.OPTIONAL;else if(modifier instanceof Many)quantity=exports.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$2=__name(function(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;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$2"),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=[],_i=1;_i<arguments.length;_i++)args[_i-1]=arguments[_i];this._ensureInjectorNotDisposed();var accessor={get:__name(function(id,quantityOrLookup,lookUp){return _this._get(id,quantityOrLookup,lookUp)},"get"),has:__name(function(id){return _this.has(id)},"has")};return cb.apply(void 0,__spreadArray$2([accessor],args,!1))},Injector2.prototype.has=function(id){var _a11;return this.dependencyCollection.has(id)||((_a11=this.parent)===null||_a11===void 0?void 0:_a11.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=exports.Quantity.REQUIRED;if(quantityOrLookup===exports.Quantity.REQUIRED||quantityOrLookup===exports.Quantity.OPTIONAL||quantityOrLookup===exports.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,exports.Quantity.REQUIRED);if(cachedResult!==NotInstantiatedSymbol)return Promise.resolve(cachedResult);var newResult=this.createDependency(id,exports.Quantity.REQUIRED);return isAsyncHook(newResult)?newResult.whenReady():Promise.resolve(newResult)},Injector2.prototype.createInstance=function(ctor){for(var customArgs=[],_i=1;_i<arguments.length;_i++)customArgs[_i-1]=arguments[_i];return this._ensureInjectorNotDisposed(),this._resolveClassImpl.apply(this,__spreadArray$2([{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);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 _a11,extraParams=[],_i=1;_i<arguments.length;_i++)extraParams[_i-1]=arguments[_i];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$2([],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$2(__spreadArray$2([],args,!0),new Array(delta).fill(void 0),!0):args=args.slice(0,firstDependencyArgIndex)}var thing=new(ctor.bind.apply(ctor,__spreadArray$2(__spreadArray$2([void 0],args,!1),resolvedArgs,!1)));return(_a11=item==null?void 0:item.onInstantiation)===null||_a11===void 0||_a11.call(item,thing),this.markResolutionCompleted(),thing},Injector2.prototype._resolveFactory=function(id,item,shouldCache){var _a11;this.markNewResolution(id);for(var declaredDependencies=normalizeFactoryDeps(item.deps),resolvedArgs=[],_i=0,declaredDependencies_2=declaredDependencies;_i<declaredDependencies_2.length;_i++){var dep=declaredDependencies_2[_i];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(),(_a11=item==null?void 0:item.onInstantiation)===null||_a11===void 0||_a11.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=exports.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===exports.LookUp.SKIP_SELF?onParent():lookUp===exports.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=exports.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===exports.Quantity.OPTIONAL)return null;throw pushResolvingStack(id),new DependencyNotFoundError(id)},"onParent");return lookUp===exports.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.
|
|
2
|
+
`,IS_ROW_STYLE_PRECEDE_COLUMN_STYLE="isRowStylePrecedeColumnStyle";function createInternalEditorID(id){return`${PREFIX}${id}`}__name(createInternalEditorID,"createInternalEditorID");function isInternalEditorID(id){return id.startsWith(PREFIX)}__name(isInternalEditorID,"isInternalEditorID");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");exports.Quantity=void 0;(function(Quantity){Quantity.MANY="many",Quantity.OPTIONAL="optional",Quantity.REQUIRED="required"})(exports.Quantity||(exports.Quantity={}));exports.LookUp=void 0;(function(LookUp){LookUp.SELF="self",LookUp.SKIP_SELF="skipSelf"})(exports.LookUp||(exports.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=exports.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===exports.Quantity.OPTIONAL&&length>1||quantity===exports.Quantity.REQUIRED&&length!==1)throw new QuantityCheckError(id,quantity,length)}__name(checkQuantity,"checkQuantity");function retrieveQuantity(quantity,arr){return quantity===exports.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===exports.Quantity.REQUIRED)throw new IdentifierUndefinedError(registerTarget,index2);changeQuantity(registerTarget,index2,quantity)}}},"decoratorFactory")}__name(quantifyDecoratorFactoryProducer,"quantifyDecoratorFactoryProducer");var Many=quantifyDecoratorFactoryProducer(exports.Quantity.MANY),Optional=quantifyDecoratorFactoryProducer(exports.Quantity.OPTIONAL),Inject=quantifyDecoratorFactoryProducer(exports.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=exports.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=exports.Quantity.REQUIRED);var ret=this.resolvedDependencies.get(id);if(!ret)throw new DependencyNotFoundError(id);return checkQuantity(id,quantity,ret.length),quantity===exports.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(exports.LookUp.SKIP_SELF),Self=lookupDecoratorFactoryProducer(exports.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:exports.Quantity.REQUIRED,withNew:!1};var modifiers=dep.slice(0,dep.length-1),identifier=dep[dep.length-1],lookUp=void 0,quantity=exports.Quantity.REQUIRED,withNew=!1;return modifiers.forEach(function(modifier){if(modifier instanceof Self)lookUp=exports.LookUp.SELF;else if(modifier instanceof SkipSelf)lookUp=exports.LookUp.SKIP_SELF;else if(modifier instanceof Optional)quantity=exports.Quantity.OPTIONAL;else if(modifier instanceof Many)quantity=exports.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$2=__name(function(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;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$2"),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=[],_i=1;_i<arguments.length;_i++)args[_i-1]=arguments[_i];this._ensureInjectorNotDisposed();var accessor={get:__name(function(id,quantityOrLookup,lookUp){return _this._get(id,quantityOrLookup,lookUp)},"get"),has:__name(function(id){return _this.has(id)},"has")};return cb.apply(void 0,__spreadArray$2([accessor],args,!1))},Injector2.prototype.has=function(id){var _a11;return this.dependencyCollection.has(id)||((_a11=this.parent)===null||_a11===void 0?void 0:_a11.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=exports.Quantity.REQUIRED;if(quantityOrLookup===exports.Quantity.REQUIRED||quantityOrLookup===exports.Quantity.OPTIONAL||quantityOrLookup===exports.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,exports.Quantity.REQUIRED);if(cachedResult!==NotInstantiatedSymbol)return Promise.resolve(cachedResult);var newResult=this.createDependency(id,exports.Quantity.REQUIRED);return isAsyncHook(newResult)?newResult.whenReady():Promise.resolve(newResult)},Injector2.prototype.createInstance=function(ctor){for(var customArgs=[],_i=1;_i<arguments.length;_i++)customArgs[_i-1]=arguments[_i];return this._ensureInjectorNotDisposed(),this._resolveClassImpl.apply(this,__spreadArray$2([{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);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 _a11,extraParams=[],_i=1;_i<arguments.length;_i++)extraParams[_i-1]=arguments[_i];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$2([],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$2(__spreadArray$2([],args,!0),new Array(delta).fill(void 0),!0):args=args.slice(0,firstDependencyArgIndex)}var thing=new(ctor.bind.apply(ctor,__spreadArray$2(__spreadArray$2([void 0],args,!1),resolvedArgs,!1)));return(_a11=item==null?void 0:item.onInstantiation)===null||_a11===void 0||_a11.call(item,thing),this.markResolutionCompleted(),thing},Injector2.prototype._resolveFactory=function(id,item,shouldCache){var _a11;this.markNewResolution(id);for(var declaredDependencies=normalizeFactoryDeps(item.deps),resolvedArgs=[],_i=0,declaredDependencies_2=declaredDependencies;_i<declaredDependencies_2.length;_i++){var dep=declaredDependencies_2[_i];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(),(_a11=item==null?void 0:item.onInstantiation)===null||_a11===void 0||_a11.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=exports.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===exports.LookUp.SKIP_SELF?onParent():lookUp===exports.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=exports.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===exports.Quantity.OPTIONAL)return null;throw pushResolvingStack(id),new DependencyNotFoundError(id)},"onParent");return lookUp===exports.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.
|
|
3
3
|
Maybe your dependencies added redi as its dependency and bundled redi to its dist files. Or you import different versions of redi.
|
|
4
4
|
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 _a11;return(_a11=childInjectorRef.current)===null||_a11===void 0?void 0:_a11.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||exports.Quantity.REQUIRED,lookUp);return thing},"get")}}}__name(WithDependency,"WithDependency");var __spreadArray$1=__name(function(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;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");function useDependencyValue(depValue$,defaultValue){var firstValue=depValue$ instanceof rxjs.BehaviorSubject&&typeof defaultValue>"u"?depValue$.getValue():defaultValue,_a11=React.useState(firstValue),value=_a11[0],setValue=_a11[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$1([],typeof deps<"u"?deps:[observable],!0)),_a11=React.useState(0);_a11[0];var setRenderCounter=_a11[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 _a11=React.useState(0),dumpSet=_a11[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");function registerDependencies(injector,dependencies){dependencies.forEach(d=>injector.add(d))}__name(registerDependencies,"registerDependencies");function touchDependencies(injector,dependencies){dependencies.forEach(([d])=>{injector.has(d)&&injector.get(d)})}__name(touchDependencies,"touchDependencies");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");const _CustomCommandExecutionError=class _CustomCommandExecutionError extends Error{constructor(message){super(message),this.name="CustomCommandExecutionError"}};__name(_CustomCommandExecutionError,"CustomCommandExecutionError");let CustomCommandExecutionError=_CustomCommandExecutionError;function throttle(fn,wait=16){let lastTime=0,timer=null;return __name(function(...args){const now2=Date.now();now2-lastTime<wait?(timer&&clearTimeout(timer),timer=setTimeout(()=>{lastTime=now2,fn.apply(this,args)},wait)):(lastTime=now2,fn.apply(this,args))},"throttled")}__name(throttle,"throttle");var InterceptorEffectEnum=(InterceptorEffectEnum2=>(InterceptorEffectEnum2[InterceptorEffectEnum2.Style=1]="Style",InterceptorEffectEnum2[InterceptorEffectEnum2.Value=2]="Value",InterceptorEffectEnum2))(InterceptorEffectEnum||{});function createInterceptorKey(key){return`sheet_interceptor_${key}`}__name(createInterceptorKey,"createInterceptorKey");const composeInterceptors=__name(interceptors=>function(initialValue,context){let index2=-1,value=initialValue;for(let i=0;i<=interceptors.length;i++){if(i<=index2)throw new Error("[SheetInterceptorService]: next() called multiple times!");if(index2=i,i===interceptors.length)return value;const interceptor=interceptors[i];let nextCalled=!1;if(value=interceptor.handler(value,context,nextValue=>(nextCalled=!0,nextValue)),!nextCalled)break}return value},"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 _a11,_b2;return((_a11=b.priority)!=null?_a11:0)-((_b2=a.priority)!=null?_b2:0)})),()=>remove(this._interceptorsByName.get(key),interceptor)}getInterceptPoints(){return this._interceptorPoints}dispose(){this._interceptorsByName.clear()}};__name(_InterceptorManager,"InterceptorManager");let InterceptorManager=_InterceptorManager;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 mixinClass(targetClassPrototype,mixin){for(const key in mixin)mixin.hasOwnProperty(key)&&(targetClassPrototype[key]=mixin[key])}__name(mixinClass,"mixinClass");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");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;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");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");function mergeSets(s1,s2){return s2.forEach(s=>s1.add(s)),s1}__name(mergeSets,"mergeSets");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(to,from,pack){if(pack||arguments.length===2)for(var i=0,l=from.length,ar;i<l;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,"__spreadArray");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:
|
|
5
5
|
`+errors.map(function(err,i){return i+1+") "+err.toString()}).join(`
|
|
6
|
-
`):"",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,_a11,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&&(_a11=_parentage_1.return)&&_a11.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(__spreadArray([],__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 _a11;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=(_a11=this._finalizers)!==null&&_a11!==void 0?_a11:[]).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 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 _a11;return(_a11=this._contextMap.get(key))!=null?_a11:!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;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$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(()=>{this._commands.delete(command.id),this._commandTypes.delete(command.id)})}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")};var _a;exports.CommandService=(_a=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(this._logService.error(error),error instanceof CustomCommandExecutionError)return!1;throw error}}syncExecuteCommand(id,params,options){var _a11;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=(_a11=commandInfo.params)!=null?_a11:{},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){if(error instanceof CustomCommandExecutionError)return!1;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 _a11;implementationDisposable.dispose(),multiCommand.hasImplementations()||(_a11=this._multiCommandDisposables.get(command.id))==null||_a11.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(_a,"CommandService"),_a);exports.CommandService=__decorateClass$7([__decorateParam$7(0,Inject(Injector)),__decorateParam$7(1,ILogService)],exports.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(()=>{const index2=this._implementations.indexOf(registry);this._implementations.splice(index2,1)})}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");function bufferDebounceTime(time=0){return source=>{let bufferedValues=[];return source.pipe(rxjs.tap(value=>bufferedValues.push(value)),rxjs.debounceTime(time),rxjs.map(()=>bufferedValues),rxjs.tap(()=>bufferedValues=[]))}}__name(bufferDebounceTime,"bufferDebounceTime");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");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");const 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");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||{}),DeleteDirection=(DeleteDirection2=>(DeleteDirection2[DeleteDirection2.LEFT=0]="LEFT",DeleteDirection2[DeleteDirection2.RIGHT=1]="RIGHT",DeleteDirection2))(DeleteDirection||{}),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.FA_IR="faIR",LocaleType2))(LocaleType||{}),ProtectionType=(ProtectionType2=>(ProtectionType2[ProtectionType2.RANGE=0]="RANGE",ProtectionType2[ProtectionType2.SHEET=1]="SHEET",ProtectionType2))(ProtectionType||{}),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||{}),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||{});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");const 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 _a11,_b2;if(_Tools.isArray(value)){const origin=(_a11=to[key])!=null?_a11:[];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 _a11,_b2;const value=object[key];if(_Tools.isObject(value)){const origin=(_a11=to[key])!=null?_a11:{};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 _a11,_b2;const value=item[key];if(_Tools.isArray(value)){const origin=(_a11=target[key])!=null?_a11:[];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(oneArray.length!==towArray.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 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 clamp(value,min,max){return Math.max(min,Math.min(max,value))}static now(){return performance&&performance.now?performance.now():Date.now()}};__name(_Tools,"Tools");let Tools=_Tools;function generateRandomId(n=21,alphabet){return alphabet?customAlphabet(alphabet,n)():nanoid(n)}__name(generateRandomId,"generateRandomId");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 _a11;if(withParagraphInfo&&((_a11=body.paragraphs)!=null&&_a11.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 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 _a11,_b2;amount=Math.min(1,Math.max(0,amount));const rgb1=new _ColorKit(color1).toRgb(),rgb2=new _ColorKit(color2).toRgb(),alpha1=(_a11=rgb1.a)!=null?_a11: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 _a11;return(_a11=this._color.a)!=null?_a11: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}=color;h/=360,s/=100,l/=100;let r=0,g=0,b=0;if(s===0)r=g=b=l;else{const q=l<.5?l*(1+s):l+s-l*s,p=2*l-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),l=(max+min)/2;let h,s;if(max===min)h=s=0;else{const d=max-min;switch(s=l>.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(l*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||value.custom!==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 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");var RANGE_DIRECTION=(RANGE_DIRECTION2=>(RANGE_DIRECTION2.NONE="none",RANGE_DIRECTION2.BACKWARD="backward",RANGE_DIRECTION2.FORWARD="forward",RANGE_DIRECTION2))(RANGE_DIRECTION||{}),DOC_RANGE_TYPE=(DOC_RANGE_TYPE2=>(DOC_RANGE_TYPE2.RECT="RECT",DOC_RANGE_TYPE2.TEXT="TEXT",DOC_RANGE_TYPE2))(DOC_RANGE_TYPE||{});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");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 _a11;return!cell||(((_a11=cell==null?void 0:cell.v)==null?void 0:_a11.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 _a11;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 _a12;(_a12=style.ul)!=null&&_a12.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 _a12;(_a12=style.st)!=null&&_a12.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 _a12;(_a12=style.ol)!=null&&_a12.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 _a12,_b2,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l;(_a12=style.bd)!=null&&_a12.b&&(str+=`border-bottom: ${getBorderStyle((_b2=style.bd)==null?void 0:_b2.b.s)} ${(_c=getColorStyle(style.bd.b.cl))!=null?_c:""}; `),(_d=style.bd)!=null&&_d.t&&(str+=`border-top: ${getBorderStyle((_e=style.bd)==null?void 0:_e.t.s)} ${(_f=getColorStyle(style.bd.t.cl))!=null?_f:""}; `),(_g=style.bd)!=null&&_g.r&&(str+=`border-right: ${getBorderStyle((_h=style.bd)==null?void 0:_h.r.s)} ${(_i=getColorStyle(style.bd.r.cl))!=null?_i:""}; `),(_j=style.bd)!=null&&_j.l&&(str+=`border-left: ${getBorderStyle((_k=style.bd)==null?void 0:_k.l.s)} ${(_l=getColorStyle(style.bd.l.cl))!=null?_l:""}; `)}],["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 _a12,_b2,_c;style.tr&&(str+=`--data-rotate: (${(_a12=style.tr)==null?void 0:_a12.a}deg${(_b2=style.tr)!=null&&_b2.v?` ,${(_c=style.tr)==null?void 0:_c.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 _a12,_b2,_c,_d,_e,_f,_g,_h;const b=`${(_a12=style.pd)==null?void 0:_a12.b}pt`,t=`${(_b2=style.pd)==null?void 0:_b2.t}pt`,l=`${(_c=style.pd)==null?void 0:_c.l}pt`,r=`${(_d=style.pd)==null?void 0:_d.r}pt`;(_e=style.pd)!=null&&_e.b&&(str+=`padding-bottom: ${b}; `),(_f=style.pd)!=null&&_f.t&&(str+=`padding-top: ${t}; `),(_g=style.pd)!=null&&_g.l&&(str+=`padding-left: ${l}; `),(_h=style.pd)!=null&&_h.r&&(str+=`padding-right: ${r}; `)}]]),cellSkip=["bd","tr","tb"];for(const k in style)isCell&&cellSkip.includes(k)||(_a11=styleMap.get(k))==null||_a11();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,worksheet){const{startRow,endRow,startColumn,endColumn,rangeType}=range;if(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)))return!1;if(worksheet){const rowCount=worksheet.getRowCount(),colCount=worksheet.getColumnCount();if(endRow>=rowCount||endColumn>=colCount)return!1}return!0}__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 _a11;return!(paragraphStyle==null||(paragraphStyle.indentStart==null||paragraphStyle.indentStart.v===0)&¶graphStyle.hanging==null||((_a11=paragraphStyle.hanging)==null?void 0:_a11.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");const $blank=/\s/g;function isRealNum(val){return val===null||val.toString().replace($blank,"")===""||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");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;var _a2,_b;_b=NEWER,_a2=OLDER;const _Entry=class _Entry{constructor(key,value){__publicField(this,"key");__publicField(this,"value");__publicField(this,_b);__publicField(this,_a2);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;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;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 numfmt$2={exports:{}};(function(module2,exports2){(function(e,t){module2.exports=t()})(typeof self<"u"?self:commonjsGlobal,function(){return function(){var e={d:__name(function(t2,n2){for(var a2 in n2)e.o(n2,a2)&&!e.o(t2,a2)&&Object.defineProperty(t2,a2,{enumerable:!0,get:n2[a2]})},"d"),o:__name(function(e2,t2){return Object.prototype.hasOwnProperty.call(e2,t2)},"o")},t={};e.d(t,{default:__name(function(){return pe},"default")});var n={1078:"af",1052:"sq",1118:"am",5121:"ar_DZ",15361:"ar_BH",3073:"ar_EG",2049:"ar_IQ",11265:"ar_JO",13313:"ar_KW",12289:"ar_LB",4097:"ar_LY",6145:"ar_MA",8193:"ar_OM",16385:"ar_QA",1025:"ar_SA",10241:"ar_SY",7169:"ar_TN",14337:"ar_AE",9217:"ar_YE",1067:"hy",1101:"as",2092:"az_AZ",1068:"az_AZ",1069:"eu",1059:"be",2117:"bn",1093:"bn_IN",5146:"bs",1026:"bg",1109:"my",1027:"ca",2052:"zh_CN",3076:"zh_HK",5124:"zh_MO",4100:"zh_SG",1028:"zh_TW",1050:"hr",1029:"cs",1030:"da",1125:"dv",2067:"nl_BE",1043:"nl_NL",1126:"bin",3081:"en_AU",10249:"en_BZ",4105:"en_CA",9225:"en_CB",2057:"en_GB",16393:"en_IN",6153:"en_IE",8201:"en_JM",5129:"en_NZ",13321:"en_PH",7177:"en_ZA",11273:"en_TT",1033:"en_US",12297:"en_ZW",1061:"et",1071:"mk",1080:"fo",1065:"fa",1124:"fil",1035:"fi",2060:"fr_BE",11276:"fr_CM",3084:"fr_CA",9228:"fr_CG",12300:"fr_CI",1036:"fr_FR",5132:"fr_LU",13324:"fr_ML",6156:"fr_MC",14348:"fr_MA",10252:"fr_SN",4108:"fr_CH",7180:"fr",1122:"fy_NL",2108:"gd_IE",1084:"gd",1110:"gl",1079:"ka",3079:"de_AT",1031:"de_DE",5127:"de_LI",4103:"de_LU",2055:"de_CH",1032:"el",1140:"gn",1095:"gu",1279:"en",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig_NG",1057:"id",1040:"it_IT",2064:"it_CH",1041:"ja",1099:"kn",1120:"ks",1087:"kk",1107:"km",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1142:"la",1062:"lv",1063:"lt",2110:"ms_BN",1086:"ms_MY",1100:"ml",1082:"mt",1112:"mni",1153:"mi",1102:"mr",1104:"mn",2128:"mn",1121:"ne",1044:"no_NO",2068:"no_NO",1096:"or",1045:"pl",1046:"pt_BR",2070:"pt_PT",1094:"pa",1047:"rm",2072:"ro_MO",1048:"ro_RO",1049:"ru",2073:"ru_MO",1083:"se",1103:"sa",3098:"sr_SP",2074:"sr_SP",1072:"st",1074:"tn",1113:"sd",1115:"si",1051:"sk",1060:"sl",1143:"so",1070:"sb",11274:"es_AR",16394:"es_BO",13322:"es_CL",9226:"es_CO",5130:"es_CR",7178:"es_DO",12298:"es_EC",17418:"es_SV",4106:"es_GT",18442:"es_HN",2058:"es_MX",19466:"es_NI",6154:"es_PA",15370:"es_PY",10250:"es_PE",20490:"es_PR",1034:"es_ES",14346:"es_UY",8202:"es_VE",1089:"sw",2077:"sv_FI",1053:"sv_SE",1114:"syc",1064:"tg",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1073:"ts",1055:"tr",1090:"tk",1058:"uk",1056:"ur",2115:"uz_UZ",1091:"uz_UZ",1075:"ve",1066:"vi",1106:"cy",1076:"xh",1085:"yi",1077:"zu"};const a=/^([a-z\d]+)(?:[_-]([a-z\d]+))?(?:\.([a-z\d]+))?(?:@([a-z\d]+))?$/i,r={},i={group:" ",decimal:".",positive:"+",negative:"-",percent:"%",exponent:"E",nan:"NaN",infinity:"∞",ampm:["AM","PM"],mmmm6:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"],mmm6:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],mmmm:["January","February","March","April","May","June","July","August","September","October","November","December"],mmm:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dddd:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ddd:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]};function s(e2){const t2=a.exec(e2);if(!t2)throw new SyntaxError("Malformed locale: ".concat(e2));return{lang:t2[1]+(t2[2]?"_"+t2[2]:""),language:t2[1],territory:t2[2]||"",codeset:t2[3]||"",modifier:t2[4]||""}}__name(s,"s");function o(e2){if(typeof e2=="number")return n[65535&e2]||null;const t2=parseInt(e2,16);return isFinite(t2)&&n[65535&t2]?n[65535&t2]||null:a.test(e2)?e2:null}__name(o,"o");function l(e2){const t2=o(e2);let n2=null;if(t2){const e3=s(t2);n2=r[e3.lang]||r[e3.language]||null}return n2}__name(l,"l");function d(e2){return Object.assign({},i,e2)}__name(d,"d");function m(e2,t2){const n2=typeof t2=="object"?t2:s(t2);return r[n2.lang]=d(e2),n2.language===n2.lang||r[n2.language]||(r[n2.language]=d(e2)),r[n2.lang]}__name(m,"m");const u=d({group:","});function c(e2,t2){if(typeof e2!="number")return e2;if(e2<0)return-c(-e2,t2);if(t2){const n2=10**(t2||0)||1;return c(e2*n2,0)/n2}return Math.round(e2)}__name(c,"c"),u.isDefault=!0,m({group:",",ampm:["上午","下午"],mmmm:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],ddd:["周日","周一","周二","周三","周四","周五","周六"]},"zh_CN"),m({group:",",nan:"非數值",ampm:["上午","下午"],mmmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],ddd:["週日","週一","週二","週三","週四","週五","週六"]},"zh_TW"),m({group:",",ampm:["午前","午後"],mmmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],ddd:["日","月","火","水","木","金","土"]},"ja"),m({group:",",ampm:["오전","오후"],mmmm:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],mmm:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],dddd:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],ddd:["일","월","화","수","목","금","토"]},"ko"),m({group:",",ampm:["ก่อนเที่ยง","หลังเที่ยง"],mmmm:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],mmm:["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค."],dddd:["วันอาทิตย์","วันจันทร์","วันอังคาร","วันพุธ","วันพฤหัสบดี","วันศุกร์","วันเสาร์"],ddd:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."]},"th"),m({decimal:",",ampm:["dop.","odp."],mmmm:["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince"],mmm:["led","úno","bře","dub","kvě","čvn","čvc","srp","zář","říj","lis","pro"],dddd:["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],ddd:["ne","po","út","st","čt","pá","so"]},"cs"),m({group:".",decimal:",",mmmm:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],mmm:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],dddd:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],ddd:["søn.","man.","tir.","ons.","tor.","fre.","lør."]},"da"),m({group:".",decimal:",",ampm:["a.m.","p.m."],mmmm:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],mmm:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],dddd:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],ddd:["zo","ma","di","wo","do","vr","za"]},"nl"),m({group:","},"en"),m({decimal:",",nan:"epäluku",ampm:["ap.","ip."],mmmm:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kesäkuuta","heinäkuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],mmm:["tammik.","helmik.","maalisk.","huhtik.","toukok.","kesäk.","heinäk.","elok.","syysk.","lokak.","marrask.","jouluk."],dddd:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],ddd:["su","ma","ti","ke","to","pe","la"]},"fi"),m({group:" ",decimal:",",mmmm:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],mmm:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dddd:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],ddd:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."]},"fr"),m({group:".",decimal:",",mmmm:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],mmm:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sept.","Okt.","Nov.","Dez."],dddd:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],ddd:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."]},"de"),m({group:".",decimal:",",ampm:["π.μ.","μ.μ."],mmmm:["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου"],mmm:["Ιαν","Φεβ","Μαρ","Απρ","Μαΐ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ"],dddd:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],ddd:["Κυρ","Δευ","Τρί","Τετ","Πέμ","Παρ","Σάβ"]},"el"),m({decimal:",",ampm:["de.","du."],mmmm:["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december"],mmm:["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec."],dddd:["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],ddd:["V","H","K","Sze","Cs","P","Szo"]},"hu"),m({group:".",decimal:",",ampm:["f.h.","e.h."],mmmm:["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember"],mmm:["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des."],dddd:["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"],ddd:["sun.","mán.","þri.","mið.","fim.","fös.","lau."]},"is"),m({group:".",decimal:",",mmmm:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],mmm:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],dddd:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],ddd:["Min","Sen","Sel","Rab","Kam","Jum","Sab"]},"id"),m({group:".",decimal:",",mmmm:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],mmm:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],dddd:["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],ddd:["dom","lun","mar","mer","gio","ven","sab"]},"it"),m({decimal:",",ampm:["a.m.","p.m."],mmmm:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],mmm:["jan.","feb.","mar.","apr.","mai","jun.","jul.","aug.","sep.","okt.","nov.","des."],dddd:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],ddd:["søn.","man.","tir.","ons.","tor.","fre.","lør."]},"nb"),m({decimal:",",mmmm:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia"],mmm:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru"],dddd:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"],ddd:["niedz.","pon.","wt.","śr.","czw.","pt.","sob."]},"pl"),m({group:".",decimal:",",mmmm:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],mmm:["jan.","fev.","mar.","abr.","mai.","jun.","jul.","ago.","set.","out.","nov.","dez."],dddd:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],ddd:["dom.","seg.","ter.","qua.","qui.","sex.","sáb."]},"pt"),m({decimal:",",nan:"не число",mmmm:["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"],mmm:["янв.","февр.","мар.","апр.","мая","июн.","июл.","авг.","сент.","окт.","нояб.","дек."],dddd:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],ddd:["вс","пн","вт","ср","чт","пт","сб"]},"ru"),m({decimal:",",mmmm:["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra"],mmm:["jan","feb","mar","apr","máj","jún","júl","aug","sep","okt","nov","dec"],dddd:["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],ddd:["ne","po","ut","st","št","pi","so"]},"sk"),m({group:".",decimal:",",ampm:["a. m.","p. m."],mmmm:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],mmm:["ene.","feb.","mar.","abr.","may.","jun.","jul.","ago.","sept.","oct.","nov.","dic."],dddd:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],ddd:["dom.","lun.","mar.","mié.","jue.","vie.","sáb."]},"es"),m({decimal:",",ampm:["fm","em"],mmmm:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],mmm:["jan.","feb.","mars","apr.","maj","juni","juli","aug.","sep.","okt.","nov.","dec."],dddd:["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],ddd:["sön","mån","tis","ons","tors","fre","lör"]},"sv"),m({group:".",decimal:",",ampm:["ÖÖ","ÖS"],mmmm:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],mmm:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],dddd:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],ddd:["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"]},"tr");function p(e2,t2,n2){const a2=e2<0?-1:1,r2=10**(t2||2),i2=10**(n2||2);let s2,o2,l2=Math.abs(e2),d2=0,m2=0,u2=0,c2=1;if((e2=l2)%1==0)o2=[e2*a2,1];else if(e2<1e-19)o2=[a2,1e19];else if(e2>1e19)o2=[1e19*a2,1];else{do if(l2=1/(l2-Math.floor(l2)),s2=c2,c2=c2*Math.floor(l2)+d2,d2=s2,m2=u2,u2=Math.floor(e2*c2+.5),u2>=r2||c2>=i2)return[a2*m2,d2];while(Math.abs(e2-u2/c2)>=1e-10&&l2!==Math.floor(l2));o2=[a2*u2,c2]}return o2}__name(p,"p");const f={overflow:"######",dateErrorThrows:!1,dateErrorNumber:!0,dateSpanLarge:!0,leap1900:!0,nbsp:!0,throws:!0,invalid:"######",locale:"",ignoreTimezone:!1},g=Object.assign({},f);function h(e2){if(e2===null&&(e2=f),e2){for(const t2 in e2)if(t2 in f){const n2=e2[t2];g[t2]=n2==null?f[t2]:n2}}return{...g}}__name(h,"h");const y={"#":"",0:"0","?":" "},_={"@":"text","-":"minus","+":"plus"},b=["#000","#FFF","#F00","#0F0","#00F","#FF0","#F0F","#0FF","#000","#FFF","#F00","#0F0","#00F","#FF0","#F0F","#0FF","#800","#080","#008","#880","#808","#088","#CCC","#888","#99F","#936","#FFC","#CFF","#606","#F88","#06C","#CCF","#008","#F0F","#FF0","#0FF","#808","#800","#088","#00F","#0CF","#CFF","#CFC","#FF9","#9CF","#F9C","#C9F","#FC9","#36F","#3CC","#9C0","#FC0"],j=["¤","$","£","¥","֏","؋","৳","฿","៛","₡","₦","₩","₪","₫","€","₭","₮","₱","₲","₴","₸","₹","₺","₼","₽","₾","₿"],v=new RegExp("["+j.join("")+"]");function M(e2,t2,n2){return t2[n2+"_max"]=e2.length,t2[n2+"_min"]=e2.replace(/#/g,"").length,t2}__name(M,"M");const k={};function x(e2){if(!(e2 in k)){const t2=[],n2=e2.replace(/^[#,]+/,"").replace(/[1-9]\d*/g,e3=>"?".repeat(e3.length));for(let e3=0;e3<n2.length;e3++){const a2=n2.charAt(e3);t2[e3]=a2 in y?y[a2]:a2}k[e2]=t2.join("")}return k[e2]}__name(x,"x");function F(e2,t2){typeof e2=="string"&&(e2={type:"string",value:e2=e2.replace(/ /g,y["?"])}),t2.push(e2)}__name(F,"F");function z(e2){const t2=[],n2={scale:1,percent:!1,text:!1,date:0,date_eval:!1,date_system:1,sec_decimals:0,general:!1,clock:24,int_pattern:[],frac_pattern:[],man_pattern:[],den_pattern:[],num_pattern:[],tokens:t2};let a2=e2+"",r2="int",i2=!1,s2=null;const l2=[];let d2,m2,u2=!1;for(;a2&&!i2;){if(d2=/^General/i.exec(a2))n2.general=!0,F({type:"general"},t2);else if(r2==="int"&&(d2=/^[#?0]+(?:,[#?0]+)*/.exec(a2))||r2==="den"&&(d2=/^[#?\d]+/.exec(a2))||(d2=/^[#?0]+/.exec(a2)))n2[r2+"_pattern"].push(d2[0]),s2={type:r2,num:d2[0]},F(s2,t2);else if((d2=/^\//.exec(a2))&&n2[r2+"_pattern"].length){if(!s2)throw new SyntaxError("Missing a numerator in pattern ".concat(e2));n2.fractions=!0,n2.num_pattern.push(n2[r2+"_pattern"].pop()),s2.type="num",r2="den",F({type:"div"},t2)}else if(d2=/^,+/.exec(a2)){const e3=a2.charAt(1)in y;m2.slice(-1)in y&&(d2[0].length>1||!e3)?n2.scale=.001**d2[0].length:n2.dec_fractions||F(d2[0],t2)}else{if(d2=/^;/.exec(a2)){i2=!0;break}if(d2=/^[@+-]/.exec(a2))d2[0]==="@"&&(n2.text=!0),F({type:_[d2[0]]},t2);else if(d2=/^(?:\[(h+|m+|s+)\])/i.exec(a2)){const e3=d2[1].toLowerCase(),a3=e3[0],r3={type:"",size:0,date:1,raw:d2[0],pad:e3.length};a3==="h"?(r3.size=16,r3.type="hour-elap"):a3==="m"?(r3.size=32,r3.type="min-elap"):(r3.size=64,r3.type="sec-elap"),n2.date=n2.date|r3.size,l2.push(r3),F(r3,t2)}else if(d2=/^(?:B2)/i.exec(a2))u2||(n2.date_system=6);else if(d2=/^(?:B1)/i.exec(a2))u2||(n2.date_system=1);else if(d2=/^(?:([hHmMsSyYbBdDegG])\1*)/.exec(a2)){const e3={type:"",size:0,date:1,raw:d2[0]},a3=d2[0].toLowerCase(),r3=a3[0];if(a3==="y"||a3==="yy")e3.size=2,e3.type="year-short";else if(r3==="y"||r3==="e")e3.size=2,e3.type="year";else if(a3==="b"||a3==="bb")e3.size=2,e3.type="b-year-short";else if(r3==="b")e3.size=2,e3.type="b-year";else if(a3==="d"||a3==="dd")e3.size=8,e3.type="day",e3.pad=/dd/.test(a3);else if(a3==="ddd")e3.size=8,e3.type="weekday-short";else if(r3==="d")e3.size=8,e3.type="weekday";else if(r3==="h")e3.size=16,e3.type="hour",e3.pad=/hh/i.test(a3);else if(r3==="m"){a3.length===3?(e3.size=4,e3.type="monthname-short"):a3.length===5?(e3.size=4,e3.type="monthname-single"):a3.length>=4&&(e3.size=4,e3.type="monthname");const t3=l2[l2.length-1];!e3.type&&t3&&!t3.used&&80&t3.size&&(t3.used=!0,e3.size=32,e3.type="min",e3.pad=/mm/.test(a3)),e3.type||(e3.size=4,e3.type="month",e3.pad=/mm/.test(a3),e3.indeterminate=!0)}else if(r3==="s"){e3.size=64,e3.type="sec",e3.pad=/ss/.test(a3);const t3=l2[l2.length-1];t3&&32&t3.size?e3.used=!0:t3&&t3.indeterminate&&(delete t3.indeterminate,t3.size=32,t3.type="min",e3.used=!0)}n2.date=n2.date|e3.size,n2.date_eval=!0,l2.push(e3),F(e3,t2)}else if(d2=/^(?:AM\/PM|am\/pm|A\/P)/.exec(a2))n2.clock=12,n2.date=16|n2.date,n2.date_eval=!0,F({type:"am",short:d2[0]==="A/P"},t2);else if(n2.date&&(d2=/^\.0{1,3}/i.exec(a2))){const e3=d2[0].length-1,a3=[64,128,256,512][e3];n2.date=n2.date|a3,n2.date_eval=!0,n2.sec_decimals=Math.max(n2.sec_decimals,e3),F({type:"subsec",size:a3,decimals:e3,date:1,raw:d2[0]},t2)}else if((d2=/^\\(.)/.exec(a2))||(d2=/^"([^"]*?)"/.exec(a2)))F(d2[1],t2);else if(d2=/^\[(<[=>]?|>=?|=)\s*(-?[.\d]+)\]/.exec(a2))n2.condition=[d2[1],parseFloat(d2[2],10)];else if(d2=/^\[\$([^\]]+)\]/.exec(a2)){const e3=d2[1].split("-"),a3=e3.length<2?"":e3[e3.length-1],r3=e3[0];r3&&F(r3,t2);const i3=o(a3);i3&&(n2.locale=i3);const s3=parseInt(a3,16);isFinite(s3)&&16711680&s3&&(s3>>16&255)===6&&(n2.date_system=6),u2=!0}else if(d2=/^\[(black|blue|cyan|green|magenta|red|white|yellow|color\s*(\d+))\]/i.exec(a2))n2.color=d2[2]?b[parseInt(d2[2],10)]||"#000":d2[1].toLowerCase();else if(!(d2=/^\[(DBNum1|ENG|HIJ|JPN|TWN)\]/i.exec(a2))){if(d2=/^%/.exec(a2))n2.scale=100,n2.percent=!0,F("%",t2);else if(d2=/^_(\\.|.)/.exec(a2))F(" ",t2);else if(d2=/^\./.exec(a2))F({type:"point",value:d2[0]},t2),n2.dec_fractions=!0,r2="frac";else if(d2=/^[Ee]([+-]?|(?=[0#?]))/.exec(a2))n2.exponential=!0,n2.exp_plus=d2[1]==="+",r2="man",F({type:"exp",plus:d2[1]==="+"},t2);else if(!(d2=/^\*(\\.|.)/.exec(a2))){if(d2=/^[BENn[]/.exec(a2))throw new SyntaxError("Unexpected char ".concat(a2.charAt(0)," in pattern ").concat(e2));a2[0]==="("&&(n2.parens=!0),d2=[a2[0]],F(d2[0],t2)}}}m2=d2[0],a2=a2.slice(d2?d2[0].length:1)}if(n2.pattern=e2.slice(0,e2.length-a2.length),/^((?:\[[^\]]+\])+)(;|$)/.test(n2.pattern)&&!/^\[(?:h+|m+|s+)\]/.test(n2.pattern)&&F({type:"text"},t2),n2.fractions&&n2.dec_fractions||n2.fractions&&n2.exponential)throw new SyntaxError("Invalid pattern: ".concat(n2.pattern));const c2=n2.int_pattern.join("");if(n2.grouping=c2.indexOf(",")>=0,n2.grouping){const e3=c2.split(","),t3=e3.length;t3===2?(n2.group_pri=e3[1].length,n2.group_sec=n2.group_pri):t3>2&&(n2.group_pri=e3[t3-1].length,n2.group_sec=e3[t3-2].length)}else n2.group_pri=0,n2.group_sec=0;M(c2.replace(/[,]/g,""),n2,"int"),M(n2.frac_pattern.join(""),n2,"frac"),M(n2.man_pattern.join(""),n2,"man");let p2=n2.num_pattern.join(""),f2=n2.den_pattern.join("");const g2=/\?/.test(f2)||/\?/.test(p2);return f2=f2.replace(/\d/g,g2?"?":"#"),g2&&(f2=f2.replace(/#$/g,"?")),M(p2,n2,"num"),M(f2,n2,"den"),g2&&(p2=p2.replace(/#$/g,"?")),n2.int_padding=x(n2.int_pattern.join("")),n2.man_padding=x(n2.man_pattern.join("")),n2.num_padding=x(p2),n2.den_padding=x(f2),n2.den_pattern.length&&(n2.denominator=parseInt(n2.den_pattern.join("").replace(/\D/g,""),10)),n2.integer=!!n2.int_pattern.join("").length,n2.fractions&&t2.forEach((e3,n3)=>{const a3=t2[n3+1];e3.type==="string"&&a3&&(a3.type==="num"?e3.rule="num+int":a3.type==="div"?e3.rule="num":a3.type==="den"&&(e3.rule="den"))}),n2}__name(z,"z");const w=__name(e2=>{const t2=e2.condition;t2&&t2[1]<0&&(t2[0]==="<"||t2[0]==="<="||t2[0]==="=")||e2.tokens.unshift({type:"minus",volatile:!0})},"w");function D(e2){const t2=[];let n2,a2=!1,r2=null,i2=e2,s2=0,l2=!1,d2=0,m2=0;do{if(l2=z(i2),(l2.date||l2.general)&&(l2.int_pattern.length||l2.frac_pattern.length||l2.scale!==1||l2.text))throw new Error("Illegal format");if(l2.condition&&(m2++,a2=!0),l2.text){if(r2)throw new Error("Unexpected partition");r2=l2}l2.locale&&(n2=o(l2.locale)),t2.push(l2),s2=i2.charAt(l2.pattern.length)===";"?1:0,i2=i2.slice(l2.pattern.length+s2),d2++}while(s2&&d2<4&&m2<3);if(s2)throw new Error("Unexpected partition");if(m2>2)throw new Error("Unexpected condition");const u2=t2[3];if(u2&&(u2.int_pattern.length||u2.frac_pattern.length||u2.date))throw new Error("Unexpected partition");if(a2){const e3=t2.length;if(e3===1&&(t2[1]=z("General"),t2[1].generated=!0),e3<3){const e4=t2[0],n3=t2[1];if(w(e4),n3.condition)w(n3);else{const t3=e4.condition;(t3[0]==="="||t3[1]>=0&&(t3[0]===">"||t3[0]===">="))&&n3.tokens.unshift({type:"minus",volatile:!0})}}else t2.forEach(w)}else{if(t2.length<4&&r2)for(let e3=0,n3=t2.length;e3<n3;e3++)t2[e3]===r2&&t2.splice(e3,1);if(t2.length<1&&r2&&(t2[0]=z("General"),t2[0].generated=!0),t2.length<2){const e3=z(t2[0].pattern);e3.tokens.unshift({type:"minus",volatile:!0}),e3.generated=!0,t2.push(e3)}if(t2.length<3){const e3=z(t2[0].pattern);e3.generated=!0,t2.push(e3)}if(t2.length<4)if(r2)t2.push(r2);else{const e3=z("@");e3.generated=!0,t2.push(e3)}t2[0].condition=[">",0],t2[1].condition=["<",0],t2[2].condition=null}return{pattern:e2,partitions:t2,locale:n2}}__name(D,"D");const S2=Math.floor;function C(e2){if((!(arguments.length>1&&arguments[1]!==void 0)||arguments[1])&&e2>=0){if(e2===0)return[1900,1,0];if(e2===60)return[1900,2,29];if(e2<60)return[1900,e2<32?1:2,(e2-1)%31+1]}let n2=e2+68569+2415019;const a2=S2(4*n2/146097);n2-=S2((146097*a2+3)/4);const r2=S2(4e3*(n2+1)/1461001);n2=n2-S2(1461*r2/4)+31;const i2=S2(80*n2/2447),s2=n2-S2(2447*i2/80);n2=S2(i2/11);const o2=i2+2-12*n2;return[0|100*(a2-49)+r2+n2,0|o2,0|s2]}__name(C,"C");function E(e2){return C(e2+1462)}__name(E,"E");function A(e2){if(e2===60)throw new Error("#VALUE!");if(e2<=1)return[1317,8,29];if(e2<60)return[1317,e2<32?9:10,1+(e2-2)%30];const t2=10631/30,n2=.1335;let a2=e2+466935;const r2=S2(a2/10631);a2-=10631*r2;const i2=S2((a2-n2)/t2);a2-=S2(i2*t2+n2);const s2=S2((a2+28.5001)/29.5);return s2===13?[30*r2+i2,12,30]:[30*r2+i2,s2,a2-S2(29.5001*s2-29)]}__name(A,"A");function Y(e2){let t2=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n2=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];const a2=S2(e2);return t2===6?A(a2):t2===-1?E(a2):C(a2,n2)}__name(Y,"Y");const T2=Math.floor,N=86400;function P(e2,t2){let n2=null;if(Array.isArray(e2)){const[t3,a2,r2,i2,s2,o2]=e2;n2=Date.UTC(t3,a2==null?0:a2-1,r2!=null?r2:1,i2||0,s2||0,o2||0)}else if(e2 instanceof Date&&(n2=1*e2,!t2||!t2.ignoreTimezone)){const t3=new Date;t3.setUTCFullYear(e2.getFullYear(),e2.getMonth(),e2.getDate()),t3.setUTCHours(e2.getHours(),e2.getMinutes(),e2.getSeconds(),e2.getMilliseconds()),n2=1*t3}if(n2!=null&&isFinite(n2)){const e3=n2/864e5;return e3-(e3<=-25509?-25568:-25569)}return e2}__name(P,"P");function I(e2,t2){let n2=0|e2;const a2=N*(e2-n2);let r2=T2(a2);a2-r2>.9999&&(r2+=1,r2===N&&(r2=0,n2+=1));const i2=r2<0?N+r2:r2,[s2,o2,l2]=Y(e2,0,t2&&t2.leap1900),d2=T2(i2/60/60)%60,m2=T2(i2/60)%60,u2=T2(i2)%60;if(t2&&t2.nativeDate){const e3=new Date(0);return e3.setUTCFullYear(s2,o2-1,l2),e3.setUTCHours(d2,m2,u2),e3}return[s2,o2,l2,d2,m2,u2]}__name(I,"I");function O(e2){return!!(e2[0]&&e2[0].percent||e2[1]&&e2[1].percent||e2[2]&&e2[2].percent||e2[3]&&e2[3].percent)}__name(O,"O");function J(e2){return!!(e2[0]&&e2[0].date||e2[1]&&e2[1].date||e2[2]&&e2[2].date||e2[3]&&e2[3].date)}__name(J,"J");function L(e2){const[t2,n2,a2,r2]=e2;return!(t2&&!t2.generated||n2&&!n2.generated||a2&&!a2.generated||!r2||!r2.text||r2.generated)}__name(L,"L");const U={text:15,datetime:10.8,date:10.8,time:10.8,percent:10.6,currency:10.4,grouped:10.2,scientific:6,number:4,fraction:2,general:0,error:0},R2=[["DMY",1],["DM",2],["MY",3],["MDY",4],["MD",5],["hmsa",6],["hma",7],["hms",8],["hm",9]],G={total:1,sign:0,period:0,int:1,frac:0},H=__name((e2,t2)=>e2.replace(/\./,t2.decimal),"H");function B(e2,t2,n2,a2){const r2=0|n2;if(typeof n2=="string")e2.push(n2);else if(n2===r2)e2.push(Math.abs(r2));else{const t3=Math.abs(n2);let r3=t3?Math.floor(Math.log10(t3)):0,i2=r3<0?t3*10**-r3:t3/10**r3;i2===10&&(i2=1,r3++);const s2=function(e3){let t4=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];const n3=Math.abs(e3);if(!n3)return G;const a3=t4&&e3<0?1:0,r4=Math.floor(n3),i3=Math.floor(Math.log10(n3)+1);let s3=0,o3=0;if(r4!==n3){s3=1;const e4=String(c(i3<0?n3*10**-i3:n3/10**i3,15));let t5=e4.length,a4=!0,r5=0;for(;r5<=e4.length;){if(e4[r5]==="."){t5--;break}e4[r5]==="0"&&a4?t5--:a4=!1,r5++}o3=t5-i3,o3<0&&(o3=0,s3=0)}return{total:a3+Math.max(i3,1)+s3+o3,digits:Math.max(i3,0)+o3,sign:a3,period:s3,int:Math.max(i3,1),frac:o3}}(t3),o2=__name(()=>{const t4=Math.abs(r3);let n3;n3=i2===1?i2:c(i2,5),e2.push(H(n3+"",a2),a2.exponent,r3<0?a2.negative:a2.positive,t4<10?"0":"",t4)},"o");if(r3>=-4&&r3<=-1){const n3=t3.toPrecision(10+r3).replace(/\.?0+$/,"");e2.push(H(n3,a2))}else if(r3===10){const n3=t3.toFixed(10).slice(0,12).replace(/\.$/,"");e2.push(H(n3,a2))}else if(Math.abs(r3)<=9)if(s2.total<=11){const n3=c(t3,9).toFixed(s2.frac);e2.push(H(n3,a2))}else r3===9?e2.push(Math.floor(t3)):r3>=0&&r3<9?e2.push(c(t3,9-r3)):o2();else s2.total>=12?o2():Math.floor(t3)===t3?e2.push(Math.floor(t3)):e2.push(H(c(t3,9).toFixed(s2.frac),a2))}return e2}__name(B,"B");const $=86400,W={int:"integer",frac:"fraction",man:"mantissa",num:"numerator",den:"denominator"},Z=__name(function(e2){let t2=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;const n2=Math.floor(Math.log10(e2));return t2>1?Math.floor(n2/t2)*t2:n2},"Z");function K(e2,t2,n2,a2){let r2="",i2="",s2="",o2="",l2="",d2=0,m2=0|e2,f2=0,g2=0,h2=1,_2=0,b2=0,j2=0,v2=0,M2=0,k2=0;const x2=a2||u;if(!t2.text&&isFinite(t2.scale)&&t2.scale!==1&&(e2=function(e3){if(e3===0)return e3;const t3=Math.ceil(Math.log10(e3<0?-e3:e3)),n3=10**(16-Math.floor(t3));return Math.round(e3*n3)/n3}(e2*t2.scale)),t2.exponential){let n3=Math.abs(e2);if(n3){const e3=10**-Z(n3,t2.int_max),a3=c(n3*e3,t2.frac_max)/e3;d2=Z(a3,t2.int_max)}n3/=10**d2,e2=e2<0?-n3:n3,r2+=Math.abs(d2)}if(t2.integer){const n3=Math.abs(c(e2,t2.fractions?1:t2.frac_max));l2+=n3<1?"":Math.floor(n3)}if(t2.grouping){let e3="",n3=l2.length;for(n3>t2.group_pri&&(n3-=t2.group_pri,e3=x2.group+l2.slice(n3,n3+t2.group_pri)+e3);n3>t2.group_sec;)n3-=t2.group_sec,e3=x2.group+l2.slice(n3,n3+t2.group_sec)+e3;l2=n3?l2.slice(0,n3)+e3:e3}t2.dec_fractions&&(o2=String(c(e2,t2.frac_max)).split(".")[1]||"");let F2=!1;if(t2.fractions){const n3=Math.abs(t2.integer?e2%1:e2);if(n3)if(F2=!0,isFinite(t2.denominator))s2+=t2.denominator,i2+=c(n3*t2.denominator),i2==="0"&&(i2="",s2="",F2=!1,l2||(l2="0"));else{const e3=p(n3,t2.integer?t2.num_max:1/0,t2.den_max);i2+=e3[0],s2+=e3[1],t2.integer&&i2==="0"&&(l2||(l2="0"),i2="",s2="",F2=!1)}}if(t2.date){m2=Math.trunc(e2);const a3=$*(e2-m2);if(f2=Math.floor(a3),k2=a3-f2,Math.abs(k2)<1e-6?k2=0:k2>.9999&&(k2=0,f2+=1,f2===$&&(f2=0,m2+=1)),k2){const e3=512&t2.date||256&t2.date||128&t2.date;(e3===512&&k2>.9995||e3===256&&k2>.995||e3===128&&k2>.95||!e3&&k2>=.5)&&(f2++,k2=0)}if(m2||t2.date_system){const a4=Y(e2,t2.date_system,n2.leap1900);g2=a4[0],h2=a4[1],_2=a4[2]}if(f2){const e3=f2<0?$+f2:f2;M2=Math.floor(e3)%60,v2=Math.floor(e3/60)%60,j2=Math.floor(e3/60/60)%60}if(b2=(6+m2)%7,t2.date_eval&&(z2=e2,w2=m2+f2/$,n2.dateSpanLarge?z2<-694324||w2>=35830291:z2<0||w2>=2958466)){if(n2.dateErrorThrows)throw new Error("Date out of bounds");return n2.dateErrorNumber?B(e2<0?[x2.negative]:[],0,e2,x2).join(""):n2.overflow}}var z2,w2;if(t2.int_padding&&(l2=t2.int_padding.length===1?l2||t2.int_padding:t2.int_padding.substring(0,t2.int_padding.length-l2.length)+l2),t2.num_padding&&(i2=t2.num_padding.length===1?i2||t2.num_padding:t2.num_padding.substring(0,t2.num_padding.length-i2.length)+i2),t2.den_padding&&(s2=t2.den_padding.length===1?s2||t2.den_padding:s2+t2.den_padding.slice(s2.length)),t2.man_padding){const e3=t2.exp_plus?"+":"";r2=t2.man_padding.length===1?(d2<0?"-":e3)+(r2||t2.man_padding):(d2<0?"-":e3)+t2.man_padding.slice(0,t2.man_padding.length-r2.length)+r2}const D2=[];let S3=0;const C2={int:0,frac:0,man:0,num:0,den:0};for(let d3=0,u2=t2.tokens.length;d3<u2;d3++){const u3=t2.tokens[d3],c2=u3.num?u3.num.length:0;if(u3.type==="string")u3.rule?u3.rule==="num"?F2?D2.push(u3.value):(t2.num_min>0||t2.den_min>0)&&D2.push(u3.value.replace(/./g,y["?"])):u3.rule==="num+int"?F2&&l2?D2.push(u3.value):t2.den_min>0&&(l2||t2.num_min)&&D2.push(u3.value.replace(/./g,y["?"])):u3.rule==="den"&&(F2?D2.push(u3.value):(t2.den_min>0||t2.den_min>0)&&D2.push(u3.value.replace(/./g,y["?"]))):D2.push(u3.value);else if(u3.type==="error")D2.push(n2.invalid);else if(u3.type==="point")D2.push(t2.date?u3.value:x2.decimal);else if(u3.type==="general")B(D2,0,e2,x2);else if(u3.type==="exp")D2.push(x2.exponent);else if(u3.type==="minus")u3.volatile&&t2.date||u3.volatile&&(e2>=0||typeof e2!="number")||(u3.volatile&&!t2.fractions&&(t2.integer||t2.dec_fractions)?(e2<0&&l2&&l2!=="0"||o2)&&D2.push(x2.negative):D2.push(x2.negative));else if(u3.type==="plus")D2.push(x2.positive);else if(u3.type==="text")D2.push(e2);else if(u3.type==="div")F2?D2.push("/"):t2.num_min>0||t2.den_min>0?D2.push(y["?"]):D2.push(y["#"]);else if(u3.type==="int")if(t2.int_pattern.length===1)D2.push(l2);else{const e3=S3?t2.int_pattern.join("").length-C2.int:1/0,n3=S3===t2.int_pattern.length-1?0:t2.int_pattern.join("").length-(C2.int+u3.num.length);D2.push(l2.substring(l2.length-e3,l2.length-n3)),S3++,C2.int+=u3.num.length}else if(u3.type==="frac"){const e3=C2.frac;for(let t3=0;t3<c2;t3++)D2.push(o2[t3+e3]||y[u3.num[t3]]);C2.frac+=c2}else if(u3.type in W)t2[u3.type+"_pattern"].length===1?(u3.type==="int"&&D2.push(l2),u3.type==="frac"&&D2.push(o2),u3.type==="man"&&D2.push(r2),u3.type==="num"&&D2.push(i2),u3.type==="den"&&D2.push(s2)):(D2.push(W[u3.type].slice(C2[u3.type],C2[u3.type]+c2)),C2[u3.type]+=c2);else if(u3.type==="year")g2<0&&D2.push(x2.negative),D2.push(String(Math.abs(g2)).padStart(4,"0"));else if(u3.type==="year-short"){const e3=g2%100;D2.push(e3<10?"0":"",e3)}else if(u3.type==="month")D2.push(u3.pad&&h2<10?"0":"",h2);else if(u3.type==="monthname-single")t2.date_system===6?D2.push(x2.mmmm6[h2-1].charAt(0)):D2.push(x2.mmmm[h2-1].charAt(0));else if(u3.type==="monthname-short")t2.date_system===6?D2.push(x2.mmm6[h2-1]):D2.push(x2.mmm[h2-1]);else if(u3.type==="monthname")t2.date_system===6?D2.push(x2.mmmm6[h2-1]):D2.push(x2.mmmm[h2-1]);else if(u3.type==="weekday-short")D2.push(x2.ddd[b2]);else if(u3.type==="weekday")D2.push(x2.dddd[b2]);else if(u3.type==="day")D2.push(u3.pad&&_2<10?"0":"",_2);else if(u3.type==="hour"){const e3=j2%t2.clock||(t2.clock<24?t2.clock:0);D2.push(u3.pad&&e3<10?"0":"",e3)}else if(u3.type==="min")D2.push(u3.pad&&v2<10?"0":"",v2);else if(u3.type==="sec")D2.push(u3.pad&&M2<10?"0":"",M2);else if(u3.type==="subsec"){D2.push(x2.decimal);const e3=k2.toFixed(t2.sec_decimals);D2.push(e3.slice(2,2+u3.decimals))}else if(u3.type==="am"){const e3=j2<12?0:1;u3.short&&!a2?D2.push("AP"[e3]):D2.push(x2.ampm[e3])}else if(u3.type==="hour-elap"){e2<0&&D2.push(x2.negative);const t3=24*m2+Math.floor(Math.abs(f2)/3600);D2.push(String(Math.abs(t3)).padStart(u3.pad,"0"))}else if(u3.type==="min-elap"){e2<0&&D2.push(x2.negative);const t3=1440*m2+Math.floor(Math.abs(f2)/60);D2.push(String(Math.abs(t3)).padStart(u3.pad,"0"))}else if(u3.type==="sec-elap"){e2<0&&D2.push(x2.negative);const t3=m2*$+Math.abs(f2);D2.push(String(Math.abs(t3)).padStart(u3.pad,"0"))}else if(u3.type==="b-year")D2.push(g2+543);else if(u3.type==="b-year-short"){const e3=(g2+543)%100;D2.push(e3<10?"0":"",e3)}}return n2.nbsp?D2.join(""):D2.join("").replace(/\u00a0/g," ")}__name(K,"K");function q(e2,t2){for(let n2=0;n2<3;n2++){const a2=t2[n2];if(a2){let t3;if(a2.condition){const n3=a2.condition[0],r2=a2.condition[1];n3==="="?t3=e2===r2:n3===">"?t3=e2>r2:n3==="<"?t3=e2<r2:n3===">="?t3=e2>=r2:n3==="<="?t3=e2<=r2:n3==="<>"&&(t3=e2!==r2)}else t3=!0;if(t3)return a2}}}__name(q,"q");const V=z("@"),Q="black",X={};function ee(e2,t2){if(e2){const n2=e2[0];t2[n2]=t2[n2]||{},ee(e2.slice(1),t2[n2])}else t2.$=!0}__name(ee,"ee"),["d-F-y","d-F-Y","d-M-y","d-M-Y","F-d-y","F-d-Y","F-j-y","F-j-Y","j-F-y","j-F-Y","j-M-y","j-M-Y","M-d-y","M-d-Y","M-j-y","M-j-Y","m-d-y","m-d-Y","m-j-y","m-j-Y","n-d-y","n-d-Y","n-j-y","n-j-Y","y-F-d","y-F-j","y-M-d","y-M-j","Y-F-d","Y-F-j","Y-M-d","Y-m-d","Y-M-j","Y-m-j","Y-n-d","Y-n-j","j-F","j-M","d-F","d-M","n-d","n-j","n-Y","m-d","m-j","m-Y","M-Y","M-y","F-y","F-Y","Y-M","Y-n","Y-m","Y-F","Y-M"].forEach(e2=>{ee(e2,X),ee(e2+" x",X),ee(e2+" l",X),ee(e2+" l x",X),ee("l "+e2,X),ee("l "+e2+" x",X),ee(e2+" D",X),ee(e2+" D x",X),ee("D "+e2,X),ee("D "+e2+" x",X)});const te={jan:1,feb:2,mar:3,apr:4,may:5,jun:6,jul:7,aug:8,sep:9,oct:10,nov:11,dec:12},ne={january:1,february:2,march:3,april:4,june:6,july:7,august:8,september:9,october:10,november:11,december:12},ae={sunday:"l",monday:"l",tuesday:"l",wednesday:"l",thursday:"l",friday:"l",saturday:"l",sun:"D",mon:"D",tue:"D",wed:"D",thu:"D",fri:"D",sat:"D"},re=new Date().getUTCFullYear();function ie(e2){const t2=new RegExp("^([\\s+%"+j.join("")+"(-]*)(((?:(?:\\d[\\d,]*)(?:\\.\\d*)?|(?:\\.\\d+)))([eE][+-]?\\d+)?)([\\s%"+j.join("")+")]*)$").exec(e2);if(t2){const[,e3,n2,a2,r2,i2]=t2;let s2=1,o2="",l2=!1,d2=!1,m2=!1,u2=!1,c2=!1,p2=null,f2=!1,g2=parseFloat(n2.replace(/,/g,""));if(!isFinite(g2))return null;for(let t3=0;t3<e3.length;t3++){const n3=e3[t3];if(n3==="-"){if(l2||d2)return null;l2=!0,s2=-1}else if(v.test(n3)){if(c2)return null;c2=!0,p2=n3}else if(n3==="("){if(d2||l2)return null;d2=!0,s2=-1}else if(n3==="%"){if(u2)return null;u2=!0}}for(let e4=0;e4<i2.length;e4++){const t3=i2[e4];if(v.test(t3)){if(c2)return null;c2=!0,p2=t3,f2=!0}else if(t3===")"){if(m2||!d2)return null;m2=!0}else if(t3==="%"){if(u2)return null;u2=!0}}if(r2){if(u2||c2)return null;o2="0.00E+00"}else if(u2){if(c2)return null;o2=a2.includes(".")?"0.00%":"0%",g2*=.01}else if(c2){const e4=a2.includes(".")?"#,##0.00":"#,##0";o2=f2?e4+p2:p2+e4}else a2.includes(",")&&(o2=a2.includes(".")?"#,##0.00":"#,##0");const h2={v:g2*s2};return o2&&(h2.z=o2),h2}}__name(ie,"ie");const se=__name((e2,t2,n2)=>{const a2=n2.path||"",r2=Object.keys(t2);for(let i2=0;i2<r2.length;i2++){let s2;const o2=r2[i2];if(t2[o2]){if(o2==="$"||o2==="€")e2||(s2=n2);else if(o2==="-"){const r3=/^(\s*([./-]|,\s)\s*|\s+)/.exec(e2);if(r3){const i3=r3[1]==="-"||r3[1]==="/"||r3[1]==="."?r3[1]:" ";if(!n2.sep||n2.sep===i3){const l2=r3[0].replace(/\s+/g," ");s2=se(e2.slice(r3[0].length),t2[o2],{...n2,sep:i3,path:a2+l2})}}}else if(o2===" "){const r3=/^[,.]?\s+/.exec(e2);if(r3){const i3=r3[0].replace(/\s+/g," ");s2=se(e2.slice(r3[0].length),t2[o2],{...n2,path:a2+i3})}}else if(o2==="j"||o2==="d"){const r3=/^(0?[1-9]|1\d|2\d|3[01])\b/.exec(e2);r3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,day:r3[0],path:a2+o2}))}else if(o2==="n"||o2==="m"){const r3=/^(0?[1-9]|1[012])\b/.exec(e2);r3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,month:+r3[0],_mon:r3[0],path:a2+o2}))}else if(o2==="F"||o2==="M"){const r3=/^([a-z]{3,9})\b/i.exec(e2),i3=r3&&(o2==="F"?ne:te)[r3[0].toLowerCase()];i3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,month:i3,_mon:r3[0],path:a2+o2}))}else if(o2==="l"||o2==="D"){const r3=/^([a-z]{3,9})\b/i.exec(e2);(r3&&ae[r3[0].toLowerCase()])===o2&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,path:a2+o2}))}else if(o2==="y"){const r3=/^\d\d\b/.exec(e2);if(r3){const i3=+r3[0]>=30?+r3[0]+1900:+r3[0]+2e3;s2=se(e2.slice(r3[0].length),t2[o2],{...n2,year:i3,path:a2+o2})}}else if(o2==="Y"){const r3=/^\d\d\d\d\b/.exec(e2);r3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,year:+r3[0],path:a2+o2}))}else{if(o2!=="x")throw new Error('Unknown date token "'.concat(o2,'"'));{const r3=le(e2);r3&&(s2=se("",t2[o2],{...n2,time:r3.v,tf:r3.z,path:a2+o2}))}}if(s2)return s2}}},"se");function oe(e2,t2){const n2=se(e2.trim(),X,{path:""});if(n2){var a2;if(n2.sep==="."&&n2.path.length===3)return null;const e3=+((a2=n2.year)!==null&&a2!==void 0?a2:re);if(n2.day||(n2.day=1),!function(e4,t3,n3){if(n3<1||t3<1||t3>12)return!1;if(t3===2){if(n3>(e4%4==0&&e4%100!=0||e4%400==0||e4===1900?29:28))return!1}else if((t3===4||t3===6||t3===9||t3===11)&&n3>30||(t3===1||t3===3||t3===5||t3===7||t3===8||t3===10||t3===12)&&n3>31)return!1;return!0}(e3,n2.month,n2.day))return null;let r2=-1/0;if(e3<1900)return null;e3<=1900&&n2.month<=2?r2=25568:e3<1e4&&(r2=25569);const i2=Date.UTC(e3,n2.month-1,n2.day)/864e5+r2+(n2.time||0);if(i2>=0&&i2<=2958465){const e4=n2._mon[0]==="0"||n2.day[0]==="0"||n2._mon.length===2&&n2.day.length===2,a3=n2.path.replace(/[jdlDnmMFyYx-]/g,t3=>t3==="j"||t3==="d"?e4?"dd":"d":t3==="D"?"ddd":t3==="l"?"dddd":t3==="n"||t3==="m"?e4?"mm":"m":t3==="M"?"mmm":t3==="F"?"mmmm":t3==="y"?"yy":t3==="x"?n2.tf||"":t3==="Y"?"yyyy":t3);return t2&&t2.nativeDate?{v:I(i2,t2),z:a3}:{v:i2,z:a3}}}return null}__name(oe,"oe");function le(e2){const t2=/^\s*([10]?\d|2[0-4])(?::([0-5]\d|\d))?(?::([0-5]\d|\d))?(\.\d{1,10})?(?:\s*([AP])M?)?\s*$/i.exec(e2);if(t2){const[,e3,n2,a2,r2,i2]=t2;if(r2&&!a2||!i2&&!n2&&!a2)return null;let s2=1*(e3||0);if(i2){if(s2>=13)return null;i2[0]!=="p"&&i2[0]!=="P"||(s2+=12)}return{v:(60*s2*60+60*(1*(n2||0))+1*(a2||0)+1*(r2||0))/86400,z:(e3.length===2?"hh":"h")+":mm"+(a2?":ss":"")+(i2?" AM/PM":"")}}return null}__name(le,"le");function de(e2){return/^\s*true\s*$/i.test(e2)?{v:!0}:/^\s*false\s*$/i.test(e2)?{v:!1}:null}__name(de,"de");const me={};function ue(e2,t2){const{pattern:n2,partitions:a2,locale:r2}=e2,i2=__name(e3=>{const n3=Object.assign({},h(),t2,e3);return r2&&(n3.locale=r2),n3},"i"),s2=__name((e3,t3)=>{const n3=i2(t3);return function(e4,t4,n4){const a3=l(n4.locale),r3=t4[3]?t4[3]:V;if(typeof e4=="boolean"&&(e4=e4?"TRUE":"FALSE"),e4==null)return"";if(typeof e4!="number")return K(e4,r3,n4,a3);if(!isFinite(e4)){const t5=a3||u;return isNaN(e4)?t5.nan:(e4<0?t5.negative:"")+t5.infinity}const i3=q(e4,t4);return i3?K(e4,i3,n4,a3):n4.overflow}(P(e3,n3),a2,n3)},"s");s2.color=(e3,t3)=>function(e4,t4){if(typeof e4!="number"||!isFinite(e4))return(t4[3]?t4[3].color:V.color)||Q;const n3=q(e4,t4);return n3&&n3.color||Q}(P(e3,i2(t3)),a2);const o2=function(e3){var t3;let n3=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;const[a3,r3]=e3,i3=a3.frac_max,s3={type:"general",isDate:J(e3),isText:L(e3),isPercent:O(e3),maxDecimals:a3.general?9:i3,scale:(t3=a3.scale)!==null&&t3!==void 0?t3:1,color:0,parentheses:0,grouped:a3.grouping?1:0,_partitions:e3},o3=!s3.isDate&&!s3.isText&&!a3.error&&a3.tokens.some(e4=>e4.type==="string"&&(n3?e4.value===n3:v.test(e4.value)));let l2="G",d2=i3>=0?Math.min(15,i3):"",m2="",u2="";if(r3&&r3.color&&(u2="-",s3.color=1),a3.parens&&(m2="()",s3.parentheses=1),o3)l2="C",s3.type="currency";else if(a3.error)s3.type="error",s3.maxDecimals=0;else if(s3.isDate){let e4=0,t4=0,n4="";a3.tokens.forEach(a4=>{const r5=a4.type;/^(b-)?year/.test(r5)?(n4+="Y",t4++):r5.startsWith("month")?(n4+="M",t4++):/^(week)?day/.test(r5)?(n4+="D",t4++):r5!=="hour"&&r5!=="min"&&r5!=="sec"&&r5!=="am"||(n4+=r5[0],e4++)}),s3.type="date",t4&&e4?s3.type="datetime":!t4&&e4&&(s3.type="time");const r4=R2.find(e5=>n4.startsWith(e5[0]));l2=r4?"D":"G",d2=r4?r4[1]:""}else s3.isText?(l2="G",s3.type="text",d2="",s3.maxDecimals=0):a3.general?(l2="G",s3.type="general",d2=""):a3.fractions?(l2="G",s3.type="fraction",d2=""):a3.exponential?(l2="S",s3.type="scientific"):s3.isPercent?(l2="P",s3.type="percent"):a3.grouping?(l2=",",s3.type="grouped"):(a3.int_max||i3)&&(l2="F",s3.type="number");return s3.code=l2+d2+u2+m2,s3.level=U[s3.type],Object.freeze(s3)}(a2,(t2||{}).currency)||new SyntaxError;return s2.info=o2,s2.dateInfo=function(e3){const[t3]=e3;return{year:!!(2&t3.date),month:!!(4&t3.date),day:!!(8&t3.date),hours:!!(16&t3.date),minutes:!!(32&t3.date),seconds:!!(64&t3.date),clockType:t3.clock===12?12:24}}(a2),s2.isPercent=()=>!!o2.isPercent,s2.isDate=()=>!!o2.isDate,s2.isText=()=>!!o2.isText,s2.pattern=n2,e2.error&&(s2.error=e2.error),s2.options=i2,s2.locale=r2||t2&&t2.locale||"",Object.freeze(s2)}__name(ue,"ue");function ce(e2,t2){e2||(e2="General");let n2=null;return me[e2]?n2=me[e2]:(n2=Object.assign({},h(),t2).throws?D(e2):function(e3){try{return D(e3)}catch(t3){const n3={tokens:[{type:"error"}],error:t3.message};return{pattern:e3,partitions:[n3,n3,n3,n3],error:t3.message,locale:null}}}(e2),n2.error||(me[e2]=n2)),ue(n2,t2)}__name(ce,"ce"),ce.isDate=e2=>ce(e2,{throws:!1}).isDate(),ce.isPercent=e2=>ce(e2,{throws:!1}).isPercent(),ce.isText=e2=>ce(e2,{throws:!1}).isText(),ce.getInfo=(e2,t2)=>ce(e2,{...t2,throws:!1}).info,ce.getDateInfo=(e2,t2)=>ce(e2,{...t2,throws:!1}).dateInfo,ce.dateToSerial=P,ce.dateFromSerial=I,ce.options=h,ce.dec2frac=p,ce.round=c,ce.codeToLocale=n,ce.parseLocale=s,ce.getLocale=l,ce.addLocale=(e2,t2)=>{const n2=s(t2);return delete me[n2.lang],delete me[n2.language],m(e2,n2)},ce.format=function(e2,t2,n2){let a2=arguments.length>3&&arguments[3]!==void 0&&arguments[3];const r2=n2&&typeof n2=="object"?n2:{locale:n2,throws:!a2};return ce(e2,r2)(P(t2,r2),r2)},ce.is_date=ce.isDate,ce.parseNumber=ie,ce.parseDate=oe,ce.parseTime=le,ce.parseBool=de,ce.parseValue=function(e2,t2){var n2,a2,r2;return(n2=(a2=(r2=ie(e2))!==null&&r2!==void 0?r2:oe(e2,t2))!==null&&a2!==void 0?a2:le(e2))!==null&&n2!==void 0?n2:de(e2)};var pe=ce;return t=t.default}()})})(numfmt$2);var numfmtExports=numfmt$2.exports,numfmt$1=numfmtExports;const _numfmt=getDefaultExportFromCjs(numfmt$1),numfmt=_numfmt;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 _a11,_b2;return(_b2=(_a11=this._matrix)==null?void 0:_a11[row])==null?void 0:_b2[column]}setValue(row,column,value){const objectArray=this.getRowOrCreate(row);objectArray[column]=value}deleteValue(row,column){var _a11,_b2;(_b2=(_a11=this._matrix)==null?void 0:_a11[row])==null||delete _b2[column]}realDeleteValue(row,column){var _a11,_b2,_c;if((_b2=(_a11=this._matrix)==null?void 0:_a11[row])==null||delete _b2[column],this.getRow(row)){const objectArray=this.getRow(row);if(objectArray==null)return;Object.keys(objectArray).length===0&&((_c=this._matrix)==null||delete _c[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=new 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()}getStartEndScope(){let startRow=1/0,endRow=-1/0,startColumn=1/0,endColumn=-1/0;const rows=Object.keys(this._matrix);rows.length>0&&(startRow=+rows[0],endRow=+rows[rows.length-1]);for(const row of rows){const columns=Object.keys(this._matrix[row]);columns.length>0&&(startColumn=Math.min(startColumn,+columns[0]),endColumn=Math.max(endColumn,+columns[columns.length-1]))}return{startRow,endRow,startColumn,endColumn}}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 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},n:null},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
|
|
7
|
-
`)===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 _a11;const rgbColor=styles.getStyleByCell(cell);return((_a11=rgbColor==null?void 0:rgbColor.bg)==null?void 0:_a11.rgb)||DEFAULT_STYLES.bg.rgb}))}getCell(row,column){const{startRow,startColumn}=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 _a11;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||((_a11=values==null?void 0:values[r])==null?void 0:_a11[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 _a11;const cellStyle=styles.getStyleByCell(cell);return((_a11=cellStyle==null?void 0:cellStyle.cl)==null?void 0:_a11.rgb)||DEFAULT_STYLES.cl.rgb}))}getFontFamilies(){return this._getStyles("ff")}getFontFamily(){return this.getFontFamilies()[0][0]}getUnderlines(){return this._getStyles("ul")}getUnderline(){var _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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 _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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 _a11,_b2;const p=((_a11=this.getValue())==null?void 0:_a11.p)||{};return p&&Array.isArray((_b2=p.body)==null?void 0:_b2.textRuns)&&p.body.textRuns.length>0?p.body.textRuns.some(textRun=>{var _a12;return((_a12=textRun==null?void 0:textRun.ts)==null?void 0:_a12.fs)!=null})?Math.max(...p.body.textRuns.map(textRun=>{var _a12;return((_a12=textRun==null?void 0:textRun.ts)==null?void 0:_a12.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 _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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 _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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)=>{const maxColumns=worksheet.getMaxColumns()-1,maxRows=worksheet.getMaxRows()-1;return range.rangeType===RANGE_TYPE.ALL?{startColumn:0,startRow:0,endColumn:maxColumns,endRow:maxRows}:range.rangeType===RANGE_TYPE.COLUMN?{startRow:0,endRow:maxRows,startColumn:range.startColumn,endColumn:range.endColumn}:range.rangeType===RANGE_TYPE.ROW?{startColumn:0,endColumn:maxColumns,startRow:range.startRow,endRow:range.endRow}:{startColumn:range.startColumn,endColumn:Math.min(range.endColumn,maxColumns),startRow:range.startRow,endRow:Math.min(range.endRow,maxRows)}},"transformRange"));let Range=_Range;function moveRangeByOffset(range,refOffsetX,refOffsetY,ignoreAbsolute=!1){if(refOffsetX===0&&refOffsetY===0)return range;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");function splitIntoGrid(ranges){const columns=new Set,rows=new Set;for(const range of ranges)columns.add(range.startColumn),columns.add(range.endColumn+1),rows.add(range.startRow),rows.add(range.endRow+1);const sortedColumns=Array.from(columns).sort((a,b)=>a-b),sortedRows=Array.from(rows).sort((a,b)=>a-b);ranges.sort((a,b)=>a.startRow-b.startRow||a.startColumn-b.startColumn);const result=[];for(let i=0;i<sortedRows.length-1;i++)for(let j=0;j<sortedColumns.length-1;j++){const startColumn=sortedColumns[j],endColumn=sortedColumns[j+1]-1,startRow=sortedRows[i],endRow=sortedRows[i+1]-1;for(const range of ranges){if(range.startRow>endRow)break;if(range.startRow<=startRow&&range.endRow>=endRow&&range.startColumn<=startColumn&&range.endColumn>=endColumn){result.push({startColumn,endColumn,startRow,endRow});break}}}return result}__name(splitIntoGrid,"splitIntoGrid");function mergeHorizontalRanges(ranges){ranges.sort((a,b)=>a.startRow-b.startRow||a.startColumn-b.startColumn);const rowGroups={};for(const range of ranges)rowGroups[range.startRow]||(rowGroups[range.startRow]=[]),rowGroups[range.startRow].push(range);const mergedRanges=[];for(const row in rowGroups){const rangesInRow=rowGroups[+row];rangesInRow.sort((a,b)=>a.startColumn-b.startColumn);let currentRange=rangesInRow[0];for(let i=1;i<rangesInRow.length;i++){const nextRange=rangesInRow[i];nextRange.startColumn<=currentRange.endColumn+1&&nextRange.startRow===currentRange.startRow&&nextRange.endRow===currentRange.endRow?currentRange.endColumn=Math.max(currentRange.endColumn,nextRange.endColumn):(mergedRanges.push(currentRange),currentRange=nextRange)}mergedRanges.push(currentRange)}return mergedRanges}__name(mergeHorizontalRanges,"mergeHorizontalRanges");function mergeVerticalRanges(ranges){ranges.sort((a,b)=>a.startColumn-b.startColumn||a.startRow-b.startRow);const columnGroups={};for(const range of ranges)columnGroups[range.startColumn]||(columnGroups[range.startColumn]=[]),columnGroups[range.startColumn].push(range);const mergedRanges=[];for(const col in columnGroups){const rangesInCol=columnGroups[+col];rangesInCol.sort((a,b)=>a.startRow-b.startRow);let currentRange=rangesInCol[0];for(let i=1;i<rangesInCol.length;i++){const nextRange=rangesInCol[i];nextRange.startRow<=currentRange.endRow+1&&nextRange.startColumn===currentRange.startColumn&&nextRange.endColumn===currentRange.endColumn?currentRange.endRow=Math.max(currentRange.endRow,nextRange.endRow):(mergedRanges.push(currentRange),currentRange=nextRange)}mergedRanges.push(currentRange)}return mergedRanges}__name(mergeVerticalRanges,"mergeVerticalRanges");function mergeRanges$1(ranges){const split=splitIntoGrid(ranges),horizontalMerged=mergeHorizontalRanges(split);return mergeVerticalRanges(horizontalMerged)}__name(mergeRanges$1,"mergeRanges$1");function multiSubtractSingleRange(ranges,toDelete){const res=[];return ranges.forEach(range=>{res.push(...Rectangle.subtract(range,toDelete))}),Rectangle.mergeRanges(res)}__name(multiSubtractSingleRange,"multiSubtractSingleRange");function getIntersectRange(src,target){const rowOverlap=getOverlap1D(src.startRow,src.endRow,target.startRow,target.endRow),colOverlap=getOverlap1D(src.startColumn,src.endColumn,target.startColumn,target.endColumn);if(!rowOverlap||!colOverlap)return null;const[startRow,endRow]=rowOverlap,[startColumn,endColumn]=colOverlap,rangeType=determineRangeType(src.rangeType,target.rangeType,startRow,endRow,startColumn,endColumn);return{startRow,endRow,startColumn,endColumn,rangeType}}__name(getIntersectRange,"getIntersectRange");function getOverlap1D(start1,end1,start2,end2){const s1=isNaN(start1)?-1/0:start1,e1=isNaN(end1)?1/0:end1,s2=isNaN(start2)?-1/0:start2,e2=isNaN(end2)?1/0:end2,start=Math.max(s1,s2),end=Math.min(e1,e2);if(start<=end){const resultStart=start===-1/0?Number.NaN:start,resultEnd=end===1/0?Number.NaN:end;return[resultStart,resultEnd]}else return null}__name(getOverlap1D,"getOverlap1D");function determineRangeType(srcType,targetType,startRow,endRow,startColumn,endColumn){const resolvedSrcType=srcType!==void 0?srcType:inferRangeType(startRow,endRow,startColumn,endColumn),resolvedTargetType=targetType!==void 0?targetType:inferRangeType(startRow,endRow,startColumn,endColumn);return resolvedSrcType===RANGE_TYPE.ALL||resolvedTargetType===RANGE_TYPE.ALL?resolvedSrcType===resolvedTargetType?resolvedSrcType:resolvedSrcType===RANGE_TYPE.ALL?resolvedTargetType:resolvedSrcType:resolvedSrcType===resolvedTargetType?resolvedSrcType:(resolvedSrcType===RANGE_TYPE.NORMAL||resolvedTargetType===RANGE_TYPE.NORMAL,RANGE_TYPE.NORMAL)}__name(determineRangeType,"determineRangeType");function inferRangeType(startRow,endRow,startColumn,endColumn){const hasRow=!isNaN(startRow)&&!isNaN(endRow),hasColumn=!isNaN(startColumn)&&!isNaN(endColumn);return hasRow&&hasColumn?RANGE_TYPE.NORMAL:hasRow?RANGE_TYPE.ROW:hasColumn?RANGE_TYPE.COLUMN:RANGE_TYPE.ALL}__name(inferRangeType,"inferRangeType");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 simpleRangesIntersect(rangeA,rangeB){const{startRow:startRowA,endRow:endRowA,startColumn:startColumnA,endColumn:endColumnA}=rangeA,{startRow:startRowB,endRow:endRowB,startColumn:startColumnB,endColumn:endColumnB}=rangeB,rowsOverlap=startRowA<=endRowB&&endRowA>=startRowB,columnsOverlap=startColumnA<=endColumnB&&endColumnA>=startColumnB;return rowsOverlap&&columnsOverlap}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 mergeRanges(ranges){return mergeRanges$1(ranges)}static subtractMulti(ranges1,ranges2){if(!ranges2.length)return ranges1;let res=ranges1;return ranges2.forEach(range=>{res=multiSubtractSingleRange(res,range)}),res}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;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");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 _a11;return[...((_a11=this._keyMaps.get(key))==null?void 0:_a11.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");var R=(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.UNIVER_PROJECT=4]="UNIVER_PROJECT",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(R||{}),S=(E=>(E[E.Reader=0]="Reader",E[E.Editor=1]="Editor",E[E.Owner=2]="Owner",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(S||{}),T=(E=>(E[E.SomeCollaborator=0]="SomeCollaborator",E[E.AllCollaborator=1]="AllCollaborator",E[E.OneSelf=2]="OneSelf",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(T||{});const _UnitModel=class _UnitModel extends Disposable{};__name(_UnitModel,"UnitModel");let UnitModel=_UnitModel;function getEmptySnapshot$1(unitID=Tools.generateRandomId(6),locale=LocaleType.EN_US,title=""){return{id:unitID,locale,title,body:{dataStream:`\r
|
|
6
|
+
`):"",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,_a11,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&&(_a11=_parentage_1.return)&&_a11.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(__spreadArray([],__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 _a11;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=(_a11=this._finalizers)!==null&&_a11!==void 0?_a11:[]).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 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 _a11;return(_a11=this._contextMap.get(key))!=null?_a11:!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;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$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(()=>{this._commands.delete(command.id),this._commandTypes.delete(command.id)})}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")};var _a;exports.CommandService=(_a=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(this._logService.error(error),error instanceof CustomCommandExecutionError)return!1;throw error}}syncExecuteCommand(id,params,options){var _a11;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=(_a11=commandInfo.params)!=null?_a11:{},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){if(error instanceof CustomCommandExecutionError)return!1;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 _a11;implementationDisposable.dispose(),multiCommand.hasImplementations()||(_a11=this._multiCommandDisposables.get(command.id))==null||_a11.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(_a,"CommandService"),_a);exports.CommandService=__decorateClass$7([__decorateParam$7(0,Inject(Injector)),__decorateParam$7(1,ILogService)],exports.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(()=>{const index2=this._implementations.indexOf(registry);this._implementations.splice(index2,1)})}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");function bufferDebounceTime(time=0){return source=>{let bufferedValues=[];return source.pipe(rxjs.tap(value=>bufferedValues.push(value)),rxjs.debounceTime(time),rxjs.map(()=>bufferedValues),rxjs.tap(()=>bufferedValues=[]))}}__name(bufferDebounceTime,"bufferDebounceTime");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");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");const 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");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||{}),DeleteDirection=(DeleteDirection2=>(DeleteDirection2[DeleteDirection2.LEFT=0]="LEFT",DeleteDirection2[DeleteDirection2.RIGHT=1]="RIGHT",DeleteDirection2))(DeleteDirection||{}),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.FA_IR="faIR",LocaleType2))(LocaleType||{}),ProtectionType=(ProtectionType2=>(ProtectionType2[ProtectionType2.RANGE=0]="RANGE",ProtectionType2[ProtectionType2.SHEET=1]="SHEET",ProtectionType2))(ProtectionType||{}),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||{}),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||{});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");const 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"];function isValueEqual(oneValue,twoValue){const oneType=Tools.getValueType(oneValue),twoType=Tools.getValueType(twoValue);return oneType!==twoType?!1:Tools.isArray(oneValue)?diffArrays(oneValue,twoValue):Tools.isObject(oneValue)?diffObject(oneValue,twoValue):Tools.isDate(oneValue)?oneValue.getTime()===twoValue.getTime():Tools.isRegExp(oneValue)?oneValue.toString()===twoValue.toString():oneValue===twoValue}__name(isValueEqual,"isValueEqual");function diffArrays(oneArray,twoArray){if(oneArray.length!==twoArray.length)return!1;for(let i=0,len=oneArray.length;i<len;i++){const oneValue=oneArray[i],twoValue=twoArray[i];if(!isValueEqual(oneValue,twoValue))return!1}return!0}__name(diffArrays,"diffArrays");function diffObject(oneObject,twoObject){const oneKeys=Object.keys(oneObject),twoKeys=Object.keys(twoObject);if(oneKeys.length!==twoKeys.length)return!1;for(const key of oneKeys){if(!twoKeys.includes(key))return!1;const oneValue=oneObject[key],twoValue=twoObject[key];if(!isValueEqual(oneValue,twoValue))return!1}return!0}__name(diffObject,"diffObject");const _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 _a11,_b2;if(_Tools.isArray(value)){const origin=(_a11=to[key])!=null?_a11:[];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 _a11,_b2;const value=object[key];if(_Tools.isObject(value)){const origin=(_a11=to[key])!=null?_a11:{};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 _a11,_b2;const value=item[key];if(_Tools.isArray(value)){const origin=(_a11=target[key])!=null?_a11:[];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,two){return isValueEqual(one,two)}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 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 clamp(value,min,max){return Math.max(min,Math.min(max,value))}static now(){return performance&&performance.now?performance.now():Date.now()}};__name(_Tools,"Tools");let Tools=_Tools;function generateRandomId(n=21,alphabet){return alphabet?customAlphabet(alphabet,n)():nanoid(n)}__name(generateRandomId,"generateRandomId");function composeStyles(...styles){const result={},length=styles.length;for(let i=length-1;i>=0;i--){const style=styles[i];if(style){const keys=Object.keys(style);for(const key of keys)result[key]===void 0&&(result[key]=style[key])}}return result}__name(composeStyles,"composeStyles");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 _a11;if(withParagraphInfo&&((_a11=body.paragraphs)!=null&&_a11.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 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 _a11,_b2;amount=Math.min(1,Math.max(0,amount));const rgb1=new _ColorKit(color1).toRgb(),rgb2=new _ColorKit(color2).toRgb(),alpha1=(_a11=rgb1.a)!=null?_a11: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 _a11;return(_a11=this._color.a)!=null?_a11: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}=color;h/=360,s/=100,l/=100;let r=0,g=0,b=0;if(s===0)r=g=b=l;else{const q=l<.5?l*(1+s):l+s-l*s,p=2*l-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),l=(max+min)/2;let h,s;if(max===min)h=s=0;else{const d=max-min;switch(s=l>.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(l*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||value.custom!==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 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");var RANGE_DIRECTION=(RANGE_DIRECTION2=>(RANGE_DIRECTION2.NONE="none",RANGE_DIRECTION2.BACKWARD="backward",RANGE_DIRECTION2.FORWARD="forward",RANGE_DIRECTION2))(RANGE_DIRECTION||{}),DOC_RANGE_TYPE=(DOC_RANGE_TYPE2=>(DOC_RANGE_TYPE2.RECT="RECT",DOC_RANGE_TYPE2.TEXT="TEXT",DOC_RANGE_TYPE2))(DOC_RANGE_TYPE||{});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");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 _a11;return!cell||(((_a11=cell==null?void 0:cell.v)==null?void 0:_a11.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 _a11;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 _a12;(_a12=style.ul)!=null&&_a12.s&&(str.indexOf("text-decoration-line")>-1?str=str.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(_2,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 _a12;(_a12=style.st)!=null&&_a12.s&&(str.indexOf("text-decoration-line")>-1?str=str.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(_2,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 _a12;(_a12=style.ol)!=null&&_a12.s&&(str.indexOf("text-decoration-line")>-1?str=str.replace(/(text-decoration-line:\s*[^;]+)(?=;)/g,(_2,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 _a12,_b2,_c,_d,_e,_f,_g,_h,_i,_j,_k,_l;(_a12=style.bd)!=null&&_a12.b&&(str+=`border-bottom: ${getBorderStyle((_b2=style.bd)==null?void 0:_b2.b.s)} ${(_c=getColorStyle(style.bd.b.cl))!=null?_c:""}; `),(_d=style.bd)!=null&&_d.t&&(str+=`border-top: ${getBorderStyle((_e=style.bd)==null?void 0:_e.t.s)} ${(_f=getColorStyle(style.bd.t.cl))!=null?_f:""}; `),(_g=style.bd)!=null&&_g.r&&(str+=`border-right: ${getBorderStyle((_h=style.bd)==null?void 0:_h.r.s)} ${(_i=getColorStyle(style.bd.r.cl))!=null?_i:""}; `),(_j=style.bd)!=null&&_j.l&&(str+=`border-left: ${getBorderStyle((_k=style.bd)==null?void 0:_k.l.s)} ${(_l=getColorStyle(style.bd.l.cl))!=null?_l:""}; `)}],["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 _a12,_b2,_c;style.tr&&(str+=`--data-rotate: (${(_a12=style.tr)==null?void 0:_a12.a}deg${(_b2=style.tr)!=null&&_b2.v?` ,${(_c=style.tr)==null?void 0:_c.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 _a12,_b2,_c,_d,_e,_f,_g,_h;const b=`${(_a12=style.pd)==null?void 0:_a12.b}pt`,t=`${(_b2=style.pd)==null?void 0:_b2.t}pt`,l=`${(_c=style.pd)==null?void 0:_c.l}pt`,r=`${(_d=style.pd)==null?void 0:_d.r}pt`;(_e=style.pd)!=null&&_e.b&&(str+=`padding-bottom: ${b}; `),(_f=style.pd)!=null&&_f.t&&(str+=`padding-top: ${t}; `),(_g=style.pd)!=null&&_g.l&&(str+=`padding-left: ${l}; `),(_h=style.pd)!=null&&_h.r&&(str+=`padding-right: ${r}; `)}]]),cellSkip=["bd","tr","tb"];for(const k in style)isCell&&cellSkip.includes(k)||(_a11=styleMap.get(k))==null||_a11();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,worksheet){const{startRow,endRow,startColumn,endColumn,rangeType}=range;if(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)))return!1;if(worksheet){const rowCount=worksheet.getRowCount(),colCount=worksheet.getColumnCount();if(endRow>=rowCount||endColumn>=colCount)return!1}return!0}__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 _a11;return!(paragraphStyle==null||(paragraphStyle.indentStart==null||paragraphStyle.indentStart.v===0)&¶graphStyle.hanging==null||((_a11=paragraphStyle.hanging)==null?void 0:_a11.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");const $blank=/\s/g;function isRealNum(val){return val===null||val.toString().replace($blank,"")===""||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");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;var _a2,_b;_b=NEWER,_a2=OLDER;const _Entry=class _Entry{constructor(key,value){__publicField(this,"key");__publicField(this,"value");__publicField(this,_b);__publicField(this,_a2);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;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;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 numfmt$2={exports:{}};(function(module2,exports2){(function(e,t){module2.exports=t()})(typeof self<"u"?self:commonjsGlobal,function(){return function(){var e={d:__name(function(t2,n2){for(var a2 in n2)e.o(n2,a2)&&!e.o(t2,a2)&&Object.defineProperty(t2,a2,{enumerable:!0,get:n2[a2]})},"d"),o:__name(function(e2,t2){return Object.prototype.hasOwnProperty.call(e2,t2)},"o")},t={};e.d(t,{default:__name(function(){return pe},"default")});var n={1078:"af",1052:"sq",1118:"am",5121:"ar_DZ",15361:"ar_BH",3073:"ar_EG",2049:"ar_IQ",11265:"ar_JO",13313:"ar_KW",12289:"ar_LB",4097:"ar_LY",6145:"ar_MA",8193:"ar_OM",16385:"ar_QA",1025:"ar_SA",10241:"ar_SY",7169:"ar_TN",14337:"ar_AE",9217:"ar_YE",1067:"hy",1101:"as",2092:"az_AZ",1068:"az_AZ",1069:"eu",1059:"be",2117:"bn",1093:"bn_IN",5146:"bs",1026:"bg",1109:"my",1027:"ca",2052:"zh_CN",3076:"zh_HK",5124:"zh_MO",4100:"zh_SG",1028:"zh_TW",1050:"hr",1029:"cs",1030:"da",1125:"dv",2067:"nl_BE",1043:"nl_NL",1126:"bin",3081:"en_AU",10249:"en_BZ",4105:"en_CA",9225:"en_CB",2057:"en_GB",16393:"en_IN",6153:"en_IE",8201:"en_JM",5129:"en_NZ",13321:"en_PH",7177:"en_ZA",11273:"en_TT",1033:"en_US",12297:"en_ZW",1061:"et",1071:"mk",1080:"fo",1065:"fa",1124:"fil",1035:"fi",2060:"fr_BE",11276:"fr_CM",3084:"fr_CA",9228:"fr_CG",12300:"fr_CI",1036:"fr_FR",5132:"fr_LU",13324:"fr_ML",6156:"fr_MC",14348:"fr_MA",10252:"fr_SN",4108:"fr_CH",7180:"fr",1122:"fy_NL",2108:"gd_IE",1084:"gd",1110:"gl",1079:"ka",3079:"de_AT",1031:"de_DE",5127:"de_LI",4103:"de_LU",2055:"de_CH",1032:"el",1140:"gn",1095:"gu",1279:"en",1037:"he",1081:"hi",1038:"hu",1039:"is",1136:"ig_NG",1057:"id",1040:"it_IT",2064:"it_CH",1041:"ja",1099:"kn",1120:"ks",1087:"kk",1107:"km",1111:"kok",1042:"ko",1088:"ky",1108:"lo",1142:"la",1062:"lv",1063:"lt",2110:"ms_BN",1086:"ms_MY",1100:"ml",1082:"mt",1112:"mni",1153:"mi",1102:"mr",1104:"mn",2128:"mn",1121:"ne",1044:"no_NO",2068:"no_NO",1096:"or",1045:"pl",1046:"pt_BR",2070:"pt_PT",1094:"pa",1047:"rm",2072:"ro_MO",1048:"ro_RO",1049:"ru",2073:"ru_MO",1083:"se",1103:"sa",3098:"sr_SP",2074:"sr_SP",1072:"st",1074:"tn",1113:"sd",1115:"si",1051:"sk",1060:"sl",1143:"so",1070:"sb",11274:"es_AR",16394:"es_BO",13322:"es_CL",9226:"es_CO",5130:"es_CR",7178:"es_DO",12298:"es_EC",17418:"es_SV",4106:"es_GT",18442:"es_HN",2058:"es_MX",19466:"es_NI",6154:"es_PA",15370:"es_PY",10250:"es_PE",20490:"es_PR",1034:"es_ES",14346:"es_UY",8202:"es_VE",1089:"sw",2077:"sv_FI",1053:"sv_SE",1114:"syc",1064:"tg",1097:"ta",1092:"tt",1098:"te",1054:"th",1105:"bo",1073:"ts",1055:"tr",1090:"tk",1058:"uk",1056:"ur",2115:"uz_UZ",1091:"uz_UZ",1075:"ve",1066:"vi",1106:"cy",1076:"xh",1085:"yi",1077:"zu"};const a=/^([a-z\d]+)(?:[_-]([a-z\d]+))?(?:\.([a-z\d]+))?(?:@([a-z\d]+))?$/i,r={},i={group:" ",decimal:".",positive:"+",negative:"-",percent:"%",exponent:"E",nan:"NaN",infinity:"∞",ampm:["AM","PM"],mmmm6:["Muharram","Safar","Rabiʻ I","Rabiʻ II","Jumada I","Jumada II","Rajab","Shaʻban","Ramadan","Shawwal","Dhuʻl-Qiʻdah","Dhuʻl-Hijjah"],mmm6:["Muh.","Saf.","Rab. I","Rab. II","Jum. I","Jum. II","Raj.","Sha.","Ram.","Shaw.","Dhuʻl-Q.","Dhuʻl-H."],mmmm:["January","February","March","April","May","June","July","August","September","October","November","December"],mmm:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],dddd:["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],ddd:["Sun","Mon","Tue","Wed","Thu","Fri","Sat"]};function s(e2){const t2=a.exec(e2);if(!t2)throw new SyntaxError("Malformed locale: ".concat(e2));return{lang:t2[1]+(t2[2]?"_"+t2[2]:""),language:t2[1],territory:t2[2]||"",codeset:t2[3]||"",modifier:t2[4]||""}}__name(s,"s");function o(e2){if(typeof e2=="number")return n[65535&e2]||null;const t2=parseInt(e2,16);return isFinite(t2)&&n[65535&t2]?n[65535&t2]||null:a.test(e2)?e2:null}__name(o,"o");function l(e2){const t2=o(e2);let n2=null;if(t2){const e3=s(t2);n2=r[e3.lang]||r[e3.language]||null}return n2}__name(l,"l");function d(e2){return Object.assign({},i,e2)}__name(d,"d");function m(e2,t2){const n2=typeof t2=="object"?t2:s(t2);return r[n2.lang]=d(e2),n2.language===n2.lang||r[n2.language]||(r[n2.language]=d(e2)),r[n2.lang]}__name(m,"m");const u=d({group:","});function c(e2,t2){if(typeof e2!="number")return e2;if(e2<0)return-c(-e2,t2);if(t2){const n2=10**(t2||0)||1;return c(e2*n2,0)/n2}return Math.round(e2)}__name(c,"c"),u.isDefault=!0,m({group:",",ampm:["上午","下午"],mmmm:["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],ddd:["周日","周一","周二","周三","周四","周五","周六"]},"zh_CN"),m({group:",",nan:"非數值",ampm:["上午","下午"],mmmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],ddd:["週日","週一","週二","週三","週四","週五","週六"]},"zh_TW"),m({group:",",ampm:["午前","午後"],mmmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],mmm:["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月"],dddd:["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],ddd:["日","月","火","水","木","金","土"]},"ja"),m({group:",",ampm:["오전","오후"],mmmm:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],mmm:["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월"],dddd:["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],ddd:["일","월","화","수","목","금","토"]},"ko"),m({group:",",ampm:["ก่อนเที่ยง","หลังเที่ยง"],mmmm:["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม"],mmm:["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค."],dddd:["วันอาทิตย์","วันจันทร์","วันอังคาร","วันพุธ","วันพฤหัสบดี","วันศุกร์","วันเสาร์"],ddd:["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."]},"th"),m({decimal:",",ampm:["dop.","odp."],mmmm:["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince"],mmm:["led","úno","bře","dub","kvě","čvn","čvc","srp","zář","říj","lis","pro"],dddd:["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],ddd:["ne","po","út","st","čt","pá","so"]},"cs"),m({group:".",decimal:",",mmmm:["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december"],mmm:["jan.","feb.","mar.","apr.","maj","jun.","jul.","aug.","sep.","okt.","nov.","dec."],dddd:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],ddd:["søn.","man.","tir.","ons.","tor.","fre.","lør."]},"da"),m({group:".",decimal:",",ampm:["a.m.","p.m."],mmmm:["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december"],mmm:["jan.","feb.","mrt.","apr.","mei","jun.","jul.","aug.","sep.","okt.","nov.","dec."],dddd:["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],ddd:["zo","ma","di","wo","do","vr","za"]},"nl"),m({group:","},"en"),m({decimal:",",nan:"epäluku",ampm:["ap.","ip."],mmmm:["tammikuuta","helmikuuta","maaliskuuta","huhtikuuta","toukokuuta","kesäkuuta","heinäkuuta","elokuuta","syyskuuta","lokakuuta","marraskuuta","joulukuuta"],mmm:["tammik.","helmik.","maalisk.","huhtik.","toukok.","kesäk.","heinäk.","elok.","syysk.","lokak.","marrask.","jouluk."],dddd:["sunnuntaina","maanantaina","tiistaina","keskiviikkona","torstaina","perjantaina","lauantaina"],ddd:["su","ma","ti","ke","to","pe","la"]},"fi"),m({group:" ",decimal:",",mmmm:["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre"],mmm:["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc."],dddd:["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],ddd:["dim.","lun.","mar.","mer.","jeu.","ven.","sam."]},"fr"),m({group:".",decimal:",",mmmm:["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember"],mmm:["Jan.","Feb.","März","Apr.","Mai","Juni","Juli","Aug.","Sept.","Okt.","Nov.","Dez."],dddd:["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],ddd:["So.","Mo.","Di.","Mi.","Do.","Fr.","Sa."]},"de"),m({group:".",decimal:",",ampm:["π.μ.","μ.μ."],mmmm:["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου"],mmm:["Ιαν","Φεβ","Μαρ","Απρ","Μαΐ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ"],dddd:["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],ddd:["Κυρ","Δευ","Τρί","Τετ","Πέμ","Παρ","Σάβ"]},"el"),m({decimal:",",ampm:["de.","du."],mmmm:["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december"],mmm:["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec."],dddd:["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],ddd:["V","H","K","Sze","Cs","P","Szo"]},"hu"),m({group:".",decimal:",",ampm:["f.h.","e.h."],mmmm:["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember"],mmm:["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des."],dddd:["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"],ddd:["sun.","mán.","þri.","mið.","fim.","fös.","lau."]},"is"),m({group:".",decimal:",",mmmm:["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","November","Desember"],mmm:["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agu","Sep","Okt","Nov","Des"],dddd:["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],ddd:["Min","Sen","Sel","Rab","Kam","Jum","Sab"]},"id"),m({group:".",decimal:",",mmmm:["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre"],mmm:["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic"],dddd:["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],ddd:["dom","lun","mar","mer","gio","ven","sab"]},"it"),m({decimal:",",ampm:["a.m.","p.m."],mmmm:["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember"],mmm:["jan.","feb.","mar.","apr.","mai","jun.","jul.","aug.","sep.","okt.","nov.","des."],dddd:["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],ddd:["søn.","man.","tir.","ons.","tor.","fre.","lør."]},"nb"),m({decimal:",",mmmm:["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia"],mmm:["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru"],dddd:["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"],ddd:["niedz.","pon.","wt.","śr.","czw.","pt.","sob."]},"pl"),m({group:".",decimal:",",mmmm:["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro"],mmm:["jan.","fev.","mar.","abr.","mai.","jun.","jul.","ago.","set.","out.","nov.","dez."],dddd:["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],ddd:["dom.","seg.","ter.","qua.","qui.","sex.","sáb."]},"pt"),m({decimal:",",nan:"не число",mmmm:["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря"],mmm:["янв.","февр.","мар.","апр.","мая","июн.","июл.","авг.","сент.","окт.","нояб.","дек."],dddd:["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],ddd:["вс","пн","вт","ср","чт","пт","сб"]},"ru"),m({decimal:",",mmmm:["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra"],mmm:["jan","feb","mar","apr","máj","jún","júl","aug","sep","okt","nov","dec"],dddd:["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],ddd:["ne","po","ut","st","št","pi","so"]},"sk"),m({group:".",decimal:",",ampm:["a. m.","p. m."],mmmm:["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],mmm:["ene.","feb.","mar.","abr.","may.","jun.","jul.","ago.","sept.","oct.","nov.","dic."],dddd:["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],ddd:["dom.","lun.","mar.","mié.","jue.","vie.","sáb."]},"es"),m({decimal:",",ampm:["fm","em"],mmmm:["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december"],mmm:["jan.","feb.","mars","apr.","maj","juni","juli","aug.","sep.","okt.","nov.","dec."],dddd:["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],ddd:["sön","mån","tis","ons","tors","fre","lör"]},"sv"),m({group:".",decimal:",",ampm:["ÖÖ","ÖS"],mmmm:["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık"],mmm:["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara"],dddd:["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],ddd:["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"]},"tr");function p(e2,t2,n2){const a2=e2<0?-1:1,r2=10**(t2||2),i2=10**(n2||2);let s2,o2,l2=Math.abs(e2),d2=0,m2=0,u2=0,c2=1;if((e2=l2)%1==0)o2=[e2*a2,1];else if(e2<1e-19)o2=[a2,1e19];else if(e2>1e19)o2=[1e19*a2,1];else{do if(l2=1/(l2-Math.floor(l2)),s2=c2,c2=c2*Math.floor(l2)+d2,d2=s2,m2=u2,u2=Math.floor(e2*c2+.5),u2>=r2||c2>=i2)return[a2*m2,d2];while(Math.abs(e2-u2/c2)>=1e-10&&l2!==Math.floor(l2));o2=[a2*u2,c2]}return o2}__name(p,"p");const f={overflow:"######",dateErrorThrows:!1,dateErrorNumber:!0,dateSpanLarge:!0,leap1900:!0,nbsp:!0,throws:!0,invalid:"######",locale:"",ignoreTimezone:!1},g=Object.assign({},f);function h(e2){if(e2===null&&(e2=f),e2){for(const t2 in e2)if(t2 in f){const n2=e2[t2];g[t2]=n2==null?f[t2]:n2}}return{...g}}__name(h,"h");const y={"#":"",0:"0","?":" "},_2={"@":"text","-":"minus","+":"plus"},b=["#000","#FFF","#F00","#0F0","#00F","#FF0","#F0F","#0FF","#000","#FFF","#F00","#0F0","#00F","#FF0","#F0F","#0FF","#800","#080","#008","#880","#808","#088","#CCC","#888","#99F","#936","#FFC","#CFF","#606","#F88","#06C","#CCF","#008","#F0F","#FF0","#0FF","#808","#800","#088","#00F","#0CF","#CFF","#CFC","#FF9","#9CF","#F9C","#C9F","#FC9","#36F","#3CC","#9C0","#FC0"],j=["¤","$","£","¥","֏","؋","৳","฿","៛","₡","₦","₩","₪","₫","€","₭","₮","₱","₲","₴","₸","₹","₺","₼","₽","₾","₿"],v=new RegExp("["+j.join("")+"]");function M(e2,t2,n2){return t2[n2+"_max"]=e2.length,t2[n2+"_min"]=e2.replace(/#/g,"").length,t2}__name(M,"M");const k={};function x(e2){if(!(e2 in k)){const t2=[],n2=e2.replace(/^[#,]+/,"").replace(/[1-9]\d*/g,e3=>"?".repeat(e3.length));for(let e3=0;e3<n2.length;e3++){const a2=n2.charAt(e3);t2[e3]=a2 in y?y[a2]:a2}k[e2]=t2.join("")}return k[e2]}__name(x,"x");function F(e2,t2){typeof e2=="string"&&(e2={type:"string",value:e2=e2.replace(/ /g,y["?"])}),t2.push(e2)}__name(F,"F");function z(e2){const t2=[],n2={scale:1,percent:!1,text:!1,date:0,date_eval:!1,date_system:1,sec_decimals:0,general:!1,clock:24,int_pattern:[],frac_pattern:[],man_pattern:[],den_pattern:[],num_pattern:[],tokens:t2};let a2=e2+"",r2="int",i2=!1,s2=null;const l2=[];let d2,m2,u2=!1;for(;a2&&!i2;){if(d2=/^General/i.exec(a2))n2.general=!0,F({type:"general"},t2);else if(r2==="int"&&(d2=/^[#?0]+(?:,[#?0]+)*/.exec(a2))||r2==="den"&&(d2=/^[#?\d]+/.exec(a2))||(d2=/^[#?0]+/.exec(a2)))n2[r2+"_pattern"].push(d2[0]),s2={type:r2,num:d2[0]},F(s2,t2);else if((d2=/^\//.exec(a2))&&n2[r2+"_pattern"].length){if(!s2)throw new SyntaxError("Missing a numerator in pattern ".concat(e2));n2.fractions=!0,n2.num_pattern.push(n2[r2+"_pattern"].pop()),s2.type="num",r2="den",F({type:"div"},t2)}else if(d2=/^,+/.exec(a2)){const e3=a2.charAt(1)in y;m2.slice(-1)in y&&(d2[0].length>1||!e3)?n2.scale=.001**d2[0].length:n2.dec_fractions||F(d2[0],t2)}else{if(d2=/^;/.exec(a2)){i2=!0;break}if(d2=/^[@+-]/.exec(a2))d2[0]==="@"&&(n2.text=!0),F({type:_2[d2[0]]},t2);else if(d2=/^(?:\[(h+|m+|s+)\])/i.exec(a2)){const e3=d2[1].toLowerCase(),a3=e3[0],r3={type:"",size:0,date:1,raw:d2[0],pad:e3.length};a3==="h"?(r3.size=16,r3.type="hour-elap"):a3==="m"?(r3.size=32,r3.type="min-elap"):(r3.size=64,r3.type="sec-elap"),n2.date=n2.date|r3.size,l2.push(r3),F(r3,t2)}else if(d2=/^(?:B2)/i.exec(a2))u2||(n2.date_system=6);else if(d2=/^(?:B1)/i.exec(a2))u2||(n2.date_system=1);else if(d2=/^(?:([hHmMsSyYbBdDegG])\1*)/.exec(a2)){const e3={type:"",size:0,date:1,raw:d2[0]},a3=d2[0].toLowerCase(),r3=a3[0];if(a3==="y"||a3==="yy")e3.size=2,e3.type="year-short";else if(r3==="y"||r3==="e")e3.size=2,e3.type="year";else if(a3==="b"||a3==="bb")e3.size=2,e3.type="b-year-short";else if(r3==="b")e3.size=2,e3.type="b-year";else if(a3==="d"||a3==="dd")e3.size=8,e3.type="day",e3.pad=/dd/.test(a3);else if(a3==="ddd")e3.size=8,e3.type="weekday-short";else if(r3==="d")e3.size=8,e3.type="weekday";else if(r3==="h")e3.size=16,e3.type="hour",e3.pad=/hh/i.test(a3);else if(r3==="m"){a3.length===3?(e3.size=4,e3.type="monthname-short"):a3.length===5?(e3.size=4,e3.type="monthname-single"):a3.length>=4&&(e3.size=4,e3.type="monthname");const t3=l2[l2.length-1];!e3.type&&t3&&!t3.used&&80&t3.size&&(t3.used=!0,e3.size=32,e3.type="min",e3.pad=/mm/.test(a3)),e3.type||(e3.size=4,e3.type="month",e3.pad=/mm/.test(a3),e3.indeterminate=!0)}else if(r3==="s"){e3.size=64,e3.type="sec",e3.pad=/ss/.test(a3);const t3=l2[l2.length-1];t3&&32&t3.size?e3.used=!0:t3&&t3.indeterminate&&(delete t3.indeterminate,t3.size=32,t3.type="min",e3.used=!0)}n2.date=n2.date|e3.size,n2.date_eval=!0,l2.push(e3),F(e3,t2)}else if(d2=/^(?:AM\/PM|am\/pm|A\/P)/.exec(a2))n2.clock=12,n2.date=16|n2.date,n2.date_eval=!0,F({type:"am",short:d2[0]==="A/P"},t2);else if(n2.date&&(d2=/^\.0{1,3}/i.exec(a2))){const e3=d2[0].length-1,a3=[64,128,256,512][e3];n2.date=n2.date|a3,n2.date_eval=!0,n2.sec_decimals=Math.max(n2.sec_decimals,e3),F({type:"subsec",size:a3,decimals:e3,date:1,raw:d2[0]},t2)}else if((d2=/^\\(.)/.exec(a2))||(d2=/^"([^"]*?)"/.exec(a2)))F(d2[1],t2);else if(d2=/^\[(<[=>]?|>=?|=)\s*(-?[.\d]+)\]/.exec(a2))n2.condition=[d2[1],parseFloat(d2[2],10)];else if(d2=/^\[\$([^\]]+)\]/.exec(a2)){const e3=d2[1].split("-"),a3=e3.length<2?"":e3[e3.length-1],r3=e3[0];r3&&F(r3,t2);const i3=o(a3);i3&&(n2.locale=i3);const s3=parseInt(a3,16);isFinite(s3)&&16711680&s3&&(s3>>16&255)===6&&(n2.date_system=6),u2=!0}else if(d2=/^\[(black|blue|cyan|green|magenta|red|white|yellow|color\s*(\d+))\]/i.exec(a2))n2.color=d2[2]?b[parseInt(d2[2],10)]||"#000":d2[1].toLowerCase();else if(!(d2=/^\[(DBNum1|ENG|HIJ|JPN|TWN)\]/i.exec(a2))){if(d2=/^%/.exec(a2))n2.scale=100,n2.percent=!0,F("%",t2);else if(d2=/^_(\\.|.)/.exec(a2))F(" ",t2);else if(d2=/^\./.exec(a2))F({type:"point",value:d2[0]},t2),n2.dec_fractions=!0,r2="frac";else if(d2=/^[Ee]([+-]?|(?=[0#?]))/.exec(a2))n2.exponential=!0,n2.exp_plus=d2[1]==="+",r2="man",F({type:"exp",plus:d2[1]==="+"},t2);else if(!(d2=/^\*(\\.|.)/.exec(a2))){if(d2=/^[BENn[]/.exec(a2))throw new SyntaxError("Unexpected char ".concat(a2.charAt(0)," in pattern ").concat(e2));a2[0]==="("&&(n2.parens=!0),d2=[a2[0]],F(d2[0],t2)}}}m2=d2[0],a2=a2.slice(d2?d2[0].length:1)}if(n2.pattern=e2.slice(0,e2.length-a2.length),/^((?:\[[^\]]+\])+)(;|$)/.test(n2.pattern)&&!/^\[(?:h+|m+|s+)\]/.test(n2.pattern)&&F({type:"text"},t2),n2.fractions&&n2.dec_fractions||n2.fractions&&n2.exponential)throw new SyntaxError("Invalid pattern: ".concat(n2.pattern));const c2=n2.int_pattern.join("");if(n2.grouping=c2.indexOf(",")>=0,n2.grouping){const e3=c2.split(","),t3=e3.length;t3===2?(n2.group_pri=e3[1].length,n2.group_sec=n2.group_pri):t3>2&&(n2.group_pri=e3[t3-1].length,n2.group_sec=e3[t3-2].length)}else n2.group_pri=0,n2.group_sec=0;M(c2.replace(/[,]/g,""),n2,"int"),M(n2.frac_pattern.join(""),n2,"frac"),M(n2.man_pattern.join(""),n2,"man");let p2=n2.num_pattern.join(""),f2=n2.den_pattern.join("");const g2=/\?/.test(f2)||/\?/.test(p2);return f2=f2.replace(/\d/g,g2?"?":"#"),g2&&(f2=f2.replace(/#$/g,"?")),M(p2,n2,"num"),M(f2,n2,"den"),g2&&(p2=p2.replace(/#$/g,"?")),n2.int_padding=x(n2.int_pattern.join("")),n2.man_padding=x(n2.man_pattern.join("")),n2.num_padding=x(p2),n2.den_padding=x(f2),n2.den_pattern.length&&(n2.denominator=parseInt(n2.den_pattern.join("").replace(/\D/g,""),10)),n2.integer=!!n2.int_pattern.join("").length,n2.fractions&&t2.forEach((e3,n3)=>{const a3=t2[n3+1];e3.type==="string"&&a3&&(a3.type==="num"?e3.rule="num+int":a3.type==="div"?e3.rule="num":a3.type==="den"&&(e3.rule="den"))}),n2}__name(z,"z");const w=__name(e2=>{const t2=e2.condition;t2&&t2[1]<0&&(t2[0]==="<"||t2[0]==="<="||t2[0]==="=")||e2.tokens.unshift({type:"minus",volatile:!0})},"w");function D(e2){const t2=[];let n2,a2=!1,r2=null,i2=e2,s2=0,l2=!1,d2=0,m2=0;do{if(l2=z(i2),(l2.date||l2.general)&&(l2.int_pattern.length||l2.frac_pattern.length||l2.scale!==1||l2.text))throw new Error("Illegal format");if(l2.condition&&(m2++,a2=!0),l2.text){if(r2)throw new Error("Unexpected partition");r2=l2}l2.locale&&(n2=o(l2.locale)),t2.push(l2),s2=i2.charAt(l2.pattern.length)===";"?1:0,i2=i2.slice(l2.pattern.length+s2),d2++}while(s2&&d2<4&&m2<3);if(s2)throw new Error("Unexpected partition");if(m2>2)throw new Error("Unexpected condition");const u2=t2[3];if(u2&&(u2.int_pattern.length||u2.frac_pattern.length||u2.date))throw new Error("Unexpected partition");if(a2){const e3=t2.length;if(e3===1&&(t2[1]=z("General"),t2[1].generated=!0),e3<3){const e4=t2[0],n3=t2[1];if(w(e4),n3.condition)w(n3);else{const t3=e4.condition;(t3[0]==="="||t3[1]>=0&&(t3[0]===">"||t3[0]===">="))&&n3.tokens.unshift({type:"minus",volatile:!0})}}else t2.forEach(w)}else{if(t2.length<4&&r2)for(let e3=0,n3=t2.length;e3<n3;e3++)t2[e3]===r2&&t2.splice(e3,1);if(t2.length<1&&r2&&(t2[0]=z("General"),t2[0].generated=!0),t2.length<2){const e3=z(t2[0].pattern);e3.tokens.unshift({type:"minus",volatile:!0}),e3.generated=!0,t2.push(e3)}if(t2.length<3){const e3=z(t2[0].pattern);e3.generated=!0,t2.push(e3)}if(t2.length<4)if(r2)t2.push(r2);else{const e3=z("@");e3.generated=!0,t2.push(e3)}t2[0].condition=[">",0],t2[1].condition=["<",0],t2[2].condition=null}return{pattern:e2,partitions:t2,locale:n2}}__name(D,"D");const S2=Math.floor;function C(e2){if((!(arguments.length>1&&arguments[1]!==void 0)||arguments[1])&&e2>=0){if(e2===0)return[1900,1,0];if(e2===60)return[1900,2,29];if(e2<60)return[1900,e2<32?1:2,(e2-1)%31+1]}let n2=e2+68569+2415019;const a2=S2(4*n2/146097);n2-=S2((146097*a2+3)/4);const r2=S2(4e3*(n2+1)/1461001);n2=n2-S2(1461*r2/4)+31;const i2=S2(80*n2/2447),s2=n2-S2(2447*i2/80);n2=S2(i2/11);const o2=i2+2-12*n2;return[0|100*(a2-49)+r2+n2,0|o2,0|s2]}__name(C,"C");function E(e2){return C(e2+1462)}__name(E,"E");function A(e2){if(e2===60)throw new Error("#VALUE!");if(e2<=1)return[1317,8,29];if(e2<60)return[1317,e2<32?9:10,1+(e2-2)%30];const t2=10631/30,n2=.1335;let a2=e2+466935;const r2=S2(a2/10631);a2-=10631*r2;const i2=S2((a2-n2)/t2);a2-=S2(i2*t2+n2);const s2=S2((a2+28.5001)/29.5);return s2===13?[30*r2+i2,12,30]:[30*r2+i2,s2,a2-S2(29.5001*s2-29)]}__name(A,"A");function Y(e2){let t2=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,n2=!(arguments.length>2&&arguments[2]!==void 0)||arguments[2];const a2=S2(e2);return t2===6?A(a2):t2===-1?E(a2):C(a2,n2)}__name(Y,"Y");const T=Math.floor,N=86400;function P(e2,t2){let n2=null;if(Array.isArray(e2)){const[t3,a2,r2,i2,s2,o2]=e2;n2=Date.UTC(t3,a2==null?0:a2-1,r2!=null?r2:1,i2||0,s2||0,o2||0)}else if(e2 instanceof Date&&(n2=1*e2,!t2||!t2.ignoreTimezone)){const t3=new Date;t3.setUTCFullYear(e2.getFullYear(),e2.getMonth(),e2.getDate()),t3.setUTCHours(e2.getHours(),e2.getMinutes(),e2.getSeconds(),e2.getMilliseconds()),n2=1*t3}if(n2!=null&&isFinite(n2)){const e3=n2/864e5;return e3-(e3<=-25509?-25568:-25569)}return e2}__name(P,"P");function I(e2,t2){let n2=0|e2;const a2=N*(e2-n2);let r2=T(a2);a2-r2>.9999&&(r2+=1,r2===N&&(r2=0,n2+=1));const i2=r2<0?N+r2:r2,[s2,o2,l2]=Y(e2,0,t2&&t2.leap1900),d2=T(i2/60/60)%60,m2=T(i2/60)%60,u2=T(i2)%60;if(t2&&t2.nativeDate){const e3=new Date(0);return e3.setUTCFullYear(s2,o2-1,l2),e3.setUTCHours(d2,m2,u2),e3}return[s2,o2,l2,d2,m2,u2]}__name(I,"I");function O(e2){return!!(e2[0]&&e2[0].percent||e2[1]&&e2[1].percent||e2[2]&&e2[2].percent||e2[3]&&e2[3].percent)}__name(O,"O");function J(e2){return!!(e2[0]&&e2[0].date||e2[1]&&e2[1].date||e2[2]&&e2[2].date||e2[3]&&e2[3].date)}__name(J,"J");function L(e2){const[t2,n2,a2,r2]=e2;return!(t2&&!t2.generated||n2&&!n2.generated||a2&&!a2.generated||!r2||!r2.text||r2.generated)}__name(L,"L");const U={text:15,datetime:10.8,date:10.8,time:10.8,percent:10.6,currency:10.4,grouped:10.2,scientific:6,number:4,fraction:2,general:0,error:0},R=[["DMY",1],["DM",2],["MY",3],["MDY",4],["MD",5],["hmsa",6],["hma",7],["hms",8],["hm",9]],G2={total:1,sign:0,period:0,int:1,frac:0},H=__name((e2,t2)=>e2.replace(/\./,t2.decimal),"H");function B(e2,t2,n2,a2){const r2=0|n2;if(typeof n2=="string")e2.push(n2);else if(n2===r2)e2.push(Math.abs(r2));else{const t3=Math.abs(n2);let r3=t3?Math.floor(Math.log10(t3)):0,i2=r3<0?t3*10**-r3:t3/10**r3;i2===10&&(i2=1,r3++);const s2=function(e3){let t4=!(arguments.length>1&&arguments[1]!==void 0)||arguments[1];const n3=Math.abs(e3);if(!n3)return G2;const a3=t4&&e3<0?1:0,r4=Math.floor(n3),i3=Math.floor(Math.log10(n3)+1);let s3=0,o3=0;if(r4!==n3){s3=1;const e4=String(c(i3<0?n3*10**-i3:n3/10**i3,15));let t5=e4.length,a4=!0,r5=0;for(;r5<=e4.length;){if(e4[r5]==="."){t5--;break}e4[r5]==="0"&&a4?t5--:a4=!1,r5++}o3=t5-i3,o3<0&&(o3=0,s3=0)}return{total:a3+Math.max(i3,1)+s3+o3,digits:Math.max(i3,0)+o3,sign:a3,period:s3,int:Math.max(i3,1),frac:o3}}(t3),o2=__name(()=>{const t4=Math.abs(r3);let n3;n3=i2===1?i2:c(i2,5),e2.push(H(n3+"",a2),a2.exponent,r3<0?a2.negative:a2.positive,t4<10?"0":"",t4)},"o");if(r3>=-4&&r3<=-1){const n3=t3.toPrecision(10+r3).replace(/\.?0+$/,"");e2.push(H(n3,a2))}else if(r3===10){const n3=t3.toFixed(10).slice(0,12).replace(/\.$/,"");e2.push(H(n3,a2))}else if(Math.abs(r3)<=9)if(s2.total<=11){const n3=c(t3,9).toFixed(s2.frac);e2.push(H(n3,a2))}else r3===9?e2.push(Math.floor(t3)):r3>=0&&r3<9?e2.push(c(t3,9-r3)):o2();else s2.total>=12?o2():Math.floor(t3)===t3?e2.push(Math.floor(t3)):e2.push(H(c(t3,9).toFixed(s2.frac),a2))}return e2}__name(B,"B");const $=86400,W={int:"integer",frac:"fraction",man:"mantissa",num:"numerator",den:"denominator"},Z=__name(function(e2){let t2=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0;const n2=Math.floor(Math.log10(e2));return t2>1?Math.floor(n2/t2)*t2:n2},"Z");function K(e2,t2,n2,a2){let r2="",i2="",s2="",o2="",l2="",d2=0,m2=0|e2,f2=0,g2=0,h2=1,_3=0,b2=0,j2=0,v2=0,M2=0,k2=0;const x2=a2||u;if(!t2.text&&isFinite(t2.scale)&&t2.scale!==1&&(e2=function(e3){if(e3===0)return e3;const t3=Math.ceil(Math.log10(e3<0?-e3:e3)),n3=10**(16-Math.floor(t3));return Math.round(e3*n3)/n3}(e2*t2.scale)),t2.exponential){let n3=Math.abs(e2);if(n3){const e3=10**-Z(n3,t2.int_max),a3=c(n3*e3,t2.frac_max)/e3;d2=Z(a3,t2.int_max)}n3/=10**d2,e2=e2<0?-n3:n3,r2+=Math.abs(d2)}if(t2.integer){const n3=Math.abs(c(e2,t2.fractions?1:t2.frac_max));l2+=n3<1?"":Math.floor(n3)}if(t2.grouping){let e3="",n3=l2.length;for(n3>t2.group_pri&&(n3-=t2.group_pri,e3=x2.group+l2.slice(n3,n3+t2.group_pri)+e3);n3>t2.group_sec;)n3-=t2.group_sec,e3=x2.group+l2.slice(n3,n3+t2.group_sec)+e3;l2=n3?l2.slice(0,n3)+e3:e3}t2.dec_fractions&&(o2=String(c(e2,t2.frac_max)).split(".")[1]||"");let F2=!1;if(t2.fractions){const n3=Math.abs(t2.integer?e2%1:e2);if(n3)if(F2=!0,isFinite(t2.denominator))s2+=t2.denominator,i2+=c(n3*t2.denominator),i2==="0"&&(i2="",s2="",F2=!1,l2||(l2="0"));else{const e3=p(n3,t2.integer?t2.num_max:1/0,t2.den_max);i2+=e3[0],s2+=e3[1],t2.integer&&i2==="0"&&(l2||(l2="0"),i2="",s2="",F2=!1)}}if(t2.date){m2=Math.trunc(e2);const a3=$*(e2-m2);if(f2=Math.floor(a3),k2=a3-f2,Math.abs(k2)<1e-6?k2=0:k2>.9999&&(k2=0,f2+=1,f2===$&&(f2=0,m2+=1)),k2){const e3=512&t2.date||256&t2.date||128&t2.date;(e3===512&&k2>.9995||e3===256&&k2>.995||e3===128&&k2>.95||!e3&&k2>=.5)&&(f2++,k2=0)}if(m2||t2.date_system){const a4=Y(e2,t2.date_system,n2.leap1900);g2=a4[0],h2=a4[1],_3=a4[2]}if(f2){const e3=f2<0?$+f2:f2;M2=Math.floor(e3)%60,v2=Math.floor(e3/60)%60,j2=Math.floor(e3/60/60)%60}if(b2=(6+m2)%7,t2.date_eval&&(z2=e2,w2=m2+f2/$,n2.dateSpanLarge?z2<-694324||w2>=35830291:z2<0||w2>=2958466)){if(n2.dateErrorThrows)throw new Error("Date out of bounds");return n2.dateErrorNumber?B(e2<0?[x2.negative]:[],0,e2,x2).join(""):n2.overflow}}var z2,w2;if(t2.int_padding&&(l2=t2.int_padding.length===1?l2||t2.int_padding:t2.int_padding.substring(0,t2.int_padding.length-l2.length)+l2),t2.num_padding&&(i2=t2.num_padding.length===1?i2||t2.num_padding:t2.num_padding.substring(0,t2.num_padding.length-i2.length)+i2),t2.den_padding&&(s2=t2.den_padding.length===1?s2||t2.den_padding:s2+t2.den_padding.slice(s2.length)),t2.man_padding){const e3=t2.exp_plus?"+":"";r2=t2.man_padding.length===1?(d2<0?"-":e3)+(r2||t2.man_padding):(d2<0?"-":e3)+t2.man_padding.slice(0,t2.man_padding.length-r2.length)+r2}const D2=[];let S3=0;const C2={int:0,frac:0,man:0,num:0,den:0};for(let d3=0,u2=t2.tokens.length;d3<u2;d3++){const u3=t2.tokens[d3],c2=u3.num?u3.num.length:0;if(u3.type==="string")u3.rule?u3.rule==="num"?F2?D2.push(u3.value):(t2.num_min>0||t2.den_min>0)&&D2.push(u3.value.replace(/./g,y["?"])):u3.rule==="num+int"?F2&&l2?D2.push(u3.value):t2.den_min>0&&(l2||t2.num_min)&&D2.push(u3.value.replace(/./g,y["?"])):u3.rule==="den"&&(F2?D2.push(u3.value):(t2.den_min>0||t2.den_min>0)&&D2.push(u3.value.replace(/./g,y["?"]))):D2.push(u3.value);else if(u3.type==="error")D2.push(n2.invalid);else if(u3.type==="point")D2.push(t2.date?u3.value:x2.decimal);else if(u3.type==="general")B(D2,0,e2,x2);else if(u3.type==="exp")D2.push(x2.exponent);else if(u3.type==="minus")u3.volatile&&t2.date||u3.volatile&&(e2>=0||typeof e2!="number")||(u3.volatile&&!t2.fractions&&(t2.integer||t2.dec_fractions)?(e2<0&&l2&&l2!=="0"||o2)&&D2.push(x2.negative):D2.push(x2.negative));else if(u3.type==="plus")D2.push(x2.positive);else if(u3.type==="text")D2.push(e2);else if(u3.type==="div")F2?D2.push("/"):t2.num_min>0||t2.den_min>0?D2.push(y["?"]):D2.push(y["#"]);else if(u3.type==="int")if(t2.int_pattern.length===1)D2.push(l2);else{const e3=S3?t2.int_pattern.join("").length-C2.int:1/0,n3=S3===t2.int_pattern.length-1?0:t2.int_pattern.join("").length-(C2.int+u3.num.length);D2.push(l2.substring(l2.length-e3,l2.length-n3)),S3++,C2.int+=u3.num.length}else if(u3.type==="frac"){const e3=C2.frac;for(let t3=0;t3<c2;t3++)D2.push(o2[t3+e3]||y[u3.num[t3]]);C2.frac+=c2}else if(u3.type in W)t2[u3.type+"_pattern"].length===1?(u3.type==="int"&&D2.push(l2),u3.type==="frac"&&D2.push(o2),u3.type==="man"&&D2.push(r2),u3.type==="num"&&D2.push(i2),u3.type==="den"&&D2.push(s2)):(D2.push(W[u3.type].slice(C2[u3.type],C2[u3.type]+c2)),C2[u3.type]+=c2);else if(u3.type==="year")g2<0&&D2.push(x2.negative),D2.push(String(Math.abs(g2)).padStart(4,"0"));else if(u3.type==="year-short"){const e3=g2%100;D2.push(e3<10?"0":"",e3)}else if(u3.type==="month")D2.push(u3.pad&&h2<10?"0":"",h2);else if(u3.type==="monthname-single")t2.date_system===6?D2.push(x2.mmmm6[h2-1].charAt(0)):D2.push(x2.mmmm[h2-1].charAt(0));else if(u3.type==="monthname-short")t2.date_system===6?D2.push(x2.mmm6[h2-1]):D2.push(x2.mmm[h2-1]);else if(u3.type==="monthname")t2.date_system===6?D2.push(x2.mmmm6[h2-1]):D2.push(x2.mmmm[h2-1]);else if(u3.type==="weekday-short")D2.push(x2.ddd[b2]);else if(u3.type==="weekday")D2.push(x2.dddd[b2]);else if(u3.type==="day")D2.push(u3.pad&&_3<10?"0":"",_3);else if(u3.type==="hour"){const e3=j2%t2.clock||(t2.clock<24?t2.clock:0);D2.push(u3.pad&&e3<10?"0":"",e3)}else if(u3.type==="min")D2.push(u3.pad&&v2<10?"0":"",v2);else if(u3.type==="sec")D2.push(u3.pad&&M2<10?"0":"",M2);else if(u3.type==="subsec"){D2.push(x2.decimal);const e3=k2.toFixed(t2.sec_decimals);D2.push(e3.slice(2,2+u3.decimals))}else if(u3.type==="am"){const e3=j2<12?0:1;u3.short&&!a2?D2.push("AP"[e3]):D2.push(x2.ampm[e3])}else if(u3.type==="hour-elap"){e2<0&&D2.push(x2.negative);const t3=24*m2+Math.floor(Math.abs(f2)/3600);D2.push(String(Math.abs(t3)).padStart(u3.pad,"0"))}else if(u3.type==="min-elap"){e2<0&&D2.push(x2.negative);const t3=1440*m2+Math.floor(Math.abs(f2)/60);D2.push(String(Math.abs(t3)).padStart(u3.pad,"0"))}else if(u3.type==="sec-elap"){e2<0&&D2.push(x2.negative);const t3=m2*$+Math.abs(f2);D2.push(String(Math.abs(t3)).padStart(u3.pad,"0"))}else if(u3.type==="b-year")D2.push(g2+543);else if(u3.type==="b-year-short"){const e3=(g2+543)%100;D2.push(e3<10?"0":"",e3)}}return n2.nbsp?D2.join(""):D2.join("").replace(/\u00a0/g," ")}__name(K,"K");function q(e2,t2){for(let n2=0;n2<3;n2++){const a2=t2[n2];if(a2){let t3;if(a2.condition){const n3=a2.condition[0],r2=a2.condition[1];n3==="="?t3=e2===r2:n3===">"?t3=e2>r2:n3==="<"?t3=e2<r2:n3===">="?t3=e2>=r2:n3==="<="?t3=e2<=r2:n3==="<>"&&(t3=e2!==r2)}else t3=!0;if(t3)return a2}}}__name(q,"q");const V=z("@"),Q="black",X={};function ee(e2,t2){if(e2){const n2=e2[0];t2[n2]=t2[n2]||{},ee(e2.slice(1),t2[n2])}else t2.$=!0}__name(ee,"ee"),["d-F-y","d-F-Y","d-M-y","d-M-Y","F-d-y","F-d-Y","F-j-y","F-j-Y","j-F-y","j-F-Y","j-M-y","j-M-Y","M-d-y","M-d-Y","M-j-y","M-j-Y","m-d-y","m-d-Y","m-j-y","m-j-Y","n-d-y","n-d-Y","n-j-y","n-j-Y","y-F-d","y-F-j","y-M-d","y-M-j","Y-F-d","Y-F-j","Y-M-d","Y-m-d","Y-M-j","Y-m-j","Y-n-d","Y-n-j","j-F","j-M","d-F","d-M","n-d","n-j","n-Y","m-d","m-j","m-Y","M-Y","M-y","F-y","F-Y","Y-M","Y-n","Y-m","Y-F","Y-M"].forEach(e2=>{ee(e2,X),ee(e2+" x",X),ee(e2+" l",X),ee(e2+" l x",X),ee("l "+e2,X),ee("l "+e2+" x",X),ee(e2+" D",X),ee(e2+" D x",X),ee("D "+e2,X),ee("D "+e2+" x",X)});const te={jan:1,feb:2,mar:3,apr:4,may:5,jun:6,jul:7,aug:8,sep:9,oct:10,nov:11,dec:12},ne={january:1,february:2,march:3,april:4,june:6,july:7,august:8,september:9,october:10,november:11,december:12},ae={sunday:"l",monday:"l",tuesday:"l",wednesday:"l",thursday:"l",friday:"l",saturday:"l",sun:"D",mon:"D",tue:"D",wed:"D",thu:"D",fri:"D",sat:"D"},re=new Date().getUTCFullYear();function ie(e2){const t2=new RegExp("^([\\s+%"+j.join("")+"(-]*)(((?:(?:\\d[\\d,]*)(?:\\.\\d*)?|(?:\\.\\d+)))([eE][+-]?\\d+)?)([\\s%"+j.join("")+")]*)$").exec(e2);if(t2){const[,e3,n2,a2,r2,i2]=t2;let s2=1,o2="",l2=!1,d2=!1,m2=!1,u2=!1,c2=!1,p2=null,f2=!1,g2=parseFloat(n2.replace(/,/g,""));if(!isFinite(g2))return null;for(let t3=0;t3<e3.length;t3++){const n3=e3[t3];if(n3==="-"){if(l2||d2)return null;l2=!0,s2=-1}else if(v.test(n3)){if(c2)return null;c2=!0,p2=n3}else if(n3==="("){if(d2||l2)return null;d2=!0,s2=-1}else if(n3==="%"){if(u2)return null;u2=!0}}for(let e4=0;e4<i2.length;e4++){const t3=i2[e4];if(v.test(t3)){if(c2)return null;c2=!0,p2=t3,f2=!0}else if(t3===")"){if(m2||!d2)return null;m2=!0}else if(t3==="%"){if(u2)return null;u2=!0}}if(r2){if(u2||c2)return null;o2="0.00E+00"}else if(u2){if(c2)return null;o2=a2.includes(".")?"0.00%":"0%",g2*=.01}else if(c2){const e4=a2.includes(".")?"#,##0.00":"#,##0";o2=f2?e4+p2:p2+e4}else a2.includes(",")&&(o2=a2.includes(".")?"#,##0.00":"#,##0");const h2={v:g2*s2};return o2&&(h2.z=o2),h2}}__name(ie,"ie");const se=__name((e2,t2,n2)=>{const a2=n2.path||"",r2=Object.keys(t2);for(let i2=0;i2<r2.length;i2++){let s2;const o2=r2[i2];if(t2[o2]){if(o2==="$"||o2==="€")e2||(s2=n2);else if(o2==="-"){const r3=/^(\s*([./-]|,\s)\s*|\s+)/.exec(e2);if(r3){const i3=r3[1]==="-"||r3[1]==="/"||r3[1]==="."?r3[1]:" ";if(!n2.sep||n2.sep===i3){const l2=r3[0].replace(/\s+/g," ");s2=se(e2.slice(r3[0].length),t2[o2],{...n2,sep:i3,path:a2+l2})}}}else if(o2===" "){const r3=/^[,.]?\s+/.exec(e2);if(r3){const i3=r3[0].replace(/\s+/g," ");s2=se(e2.slice(r3[0].length),t2[o2],{...n2,path:a2+i3})}}else if(o2==="j"||o2==="d"){const r3=/^(0?[1-9]|1\d|2\d|3[01])\b/.exec(e2);r3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,day:r3[0],path:a2+o2}))}else if(o2==="n"||o2==="m"){const r3=/^(0?[1-9]|1[012])\b/.exec(e2);r3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,month:+r3[0],_mon:r3[0],path:a2+o2}))}else if(o2==="F"||o2==="M"){const r3=/^([a-z]{3,9})\b/i.exec(e2),i3=r3&&(o2==="F"?ne:te)[r3[0].toLowerCase()];i3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,month:i3,_mon:r3[0],path:a2+o2}))}else if(o2==="l"||o2==="D"){const r3=/^([a-z]{3,9})\b/i.exec(e2);(r3&&ae[r3[0].toLowerCase()])===o2&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,path:a2+o2}))}else if(o2==="y"){const r3=/^\d\d\b/.exec(e2);if(r3){const i3=+r3[0]>=30?+r3[0]+1900:+r3[0]+2e3;s2=se(e2.slice(r3[0].length),t2[o2],{...n2,year:i3,path:a2+o2})}}else if(o2==="Y"){const r3=/^\d\d\d\d\b/.exec(e2);r3&&(s2=se(e2.slice(r3[0].length),t2[o2],{...n2,year:+r3[0],path:a2+o2}))}else{if(o2!=="x")throw new Error('Unknown date token "'.concat(o2,'"'));{const r3=le(e2);r3&&(s2=se("",t2[o2],{...n2,time:r3.v,tf:r3.z,path:a2+o2}))}}if(s2)return s2}}},"se");function oe(e2,t2){const n2=se(e2.trim(),X,{path:""});if(n2){var a2;if(n2.sep==="."&&n2.path.length===3)return null;const e3=+((a2=n2.year)!==null&&a2!==void 0?a2:re);if(n2.day||(n2.day=1),!function(e4,t3,n3){if(n3<1||t3<1||t3>12)return!1;if(t3===2){if(n3>(e4%4==0&&e4%100!=0||e4%400==0||e4===1900?29:28))return!1}else if((t3===4||t3===6||t3===9||t3===11)&&n3>30||(t3===1||t3===3||t3===5||t3===7||t3===8||t3===10||t3===12)&&n3>31)return!1;return!0}(e3,n2.month,n2.day))return null;let r2=-1/0;if(e3<1900)return null;e3<=1900&&n2.month<=2?r2=25568:e3<1e4&&(r2=25569);const i2=Date.UTC(e3,n2.month-1,n2.day)/864e5+r2+(n2.time||0);if(i2>=0&&i2<=2958465){const e4=n2._mon[0]==="0"||n2.day[0]==="0"||n2._mon.length===2&&n2.day.length===2,a3=n2.path.replace(/[jdlDnmMFyYx-]/g,t3=>t3==="j"||t3==="d"?e4?"dd":"d":t3==="D"?"ddd":t3==="l"?"dddd":t3==="n"||t3==="m"?e4?"mm":"m":t3==="M"?"mmm":t3==="F"?"mmmm":t3==="y"?"yy":t3==="x"?n2.tf||"":t3==="Y"?"yyyy":t3);return t2&&t2.nativeDate?{v:I(i2,t2),z:a3}:{v:i2,z:a3}}}return null}__name(oe,"oe");function le(e2){const t2=/^\s*([10]?\d|2[0-4])(?::([0-5]\d|\d))?(?::([0-5]\d|\d))?(\.\d{1,10})?(?:\s*([AP])M?)?\s*$/i.exec(e2);if(t2){const[,e3,n2,a2,r2,i2]=t2;if(r2&&!a2||!i2&&!n2&&!a2)return null;let s2=1*(e3||0);if(i2){if(s2>=13)return null;i2[0]!=="p"&&i2[0]!=="P"||(s2+=12)}return{v:(60*s2*60+60*(1*(n2||0))+1*(a2||0)+1*(r2||0))/86400,z:(e3.length===2?"hh":"h")+":mm"+(a2?":ss":"")+(i2?" AM/PM":"")}}return null}__name(le,"le");function de(e2){return/^\s*true\s*$/i.test(e2)?{v:!0}:/^\s*false\s*$/i.test(e2)?{v:!1}:null}__name(de,"de");const me={};function ue(e2,t2){const{pattern:n2,partitions:a2,locale:r2}=e2,i2=__name(e3=>{const n3=Object.assign({},h(),t2,e3);return r2&&(n3.locale=r2),n3},"i"),s2=__name((e3,t3)=>{const n3=i2(t3);return function(e4,t4,n4){const a3=l(n4.locale),r3=t4[3]?t4[3]:V;if(typeof e4=="boolean"&&(e4=e4?"TRUE":"FALSE"),e4==null)return"";if(typeof e4!="number")return K(e4,r3,n4,a3);if(!isFinite(e4)){const t5=a3||u;return isNaN(e4)?t5.nan:(e4<0?t5.negative:"")+t5.infinity}const i3=q(e4,t4);return i3?K(e4,i3,n4,a3):n4.overflow}(P(e3,n3),a2,n3)},"s");s2.color=(e3,t3)=>function(e4,t4){if(typeof e4!="number"||!isFinite(e4))return(t4[3]?t4[3].color:V.color)||Q;const n3=q(e4,t4);return n3&&n3.color||Q}(P(e3,i2(t3)),a2);const o2=function(e3){var t3;let n3=arguments.length>1&&arguments[1]!==void 0?arguments[1]:null;const[a3,r3]=e3,i3=a3.frac_max,s3={type:"general",isDate:J(e3),isText:L(e3),isPercent:O(e3),maxDecimals:a3.general?9:i3,scale:(t3=a3.scale)!==null&&t3!==void 0?t3:1,color:0,parentheses:0,grouped:a3.grouping?1:0,_partitions:e3},o3=!s3.isDate&&!s3.isText&&!a3.error&&a3.tokens.some(e4=>e4.type==="string"&&(n3?e4.value===n3:v.test(e4.value)));let l2="G",d2=i3>=0?Math.min(15,i3):"",m2="",u2="";if(r3&&r3.color&&(u2="-",s3.color=1),a3.parens&&(m2="()",s3.parentheses=1),o3)l2="C",s3.type="currency";else if(a3.error)s3.type="error",s3.maxDecimals=0;else if(s3.isDate){let e4=0,t4=0,n4="";a3.tokens.forEach(a4=>{const r5=a4.type;/^(b-)?year/.test(r5)?(n4+="Y",t4++):r5.startsWith("month")?(n4+="M",t4++):/^(week)?day/.test(r5)?(n4+="D",t4++):r5!=="hour"&&r5!=="min"&&r5!=="sec"&&r5!=="am"||(n4+=r5[0],e4++)}),s3.type="date",t4&&e4?s3.type="datetime":!t4&&e4&&(s3.type="time");const r4=R.find(e5=>n4.startsWith(e5[0]));l2=r4?"D":"G",d2=r4?r4[1]:""}else s3.isText?(l2="G",s3.type="text",d2="",s3.maxDecimals=0):a3.general?(l2="G",s3.type="general",d2=""):a3.fractions?(l2="G",s3.type="fraction",d2=""):a3.exponential?(l2="S",s3.type="scientific"):s3.isPercent?(l2="P",s3.type="percent"):a3.grouping?(l2=",",s3.type="grouped"):(a3.int_max||i3)&&(l2="F",s3.type="number");return s3.code=l2+d2+u2+m2,s3.level=U[s3.type],Object.freeze(s3)}(a2,(t2||{}).currency)||new SyntaxError;return s2.info=o2,s2.dateInfo=function(e3){const[t3]=e3;return{year:!!(2&t3.date),month:!!(4&t3.date),day:!!(8&t3.date),hours:!!(16&t3.date),minutes:!!(32&t3.date),seconds:!!(64&t3.date),clockType:t3.clock===12?12:24}}(a2),s2.isPercent=()=>!!o2.isPercent,s2.isDate=()=>!!o2.isDate,s2.isText=()=>!!o2.isText,s2.pattern=n2,e2.error&&(s2.error=e2.error),s2.options=i2,s2.locale=r2||t2&&t2.locale||"",Object.freeze(s2)}__name(ue,"ue");function ce(e2,t2){e2||(e2="General");let n2=null;return me[e2]?n2=me[e2]:(n2=Object.assign({},h(),t2).throws?D(e2):function(e3){try{return D(e3)}catch(t3){const n3={tokens:[{type:"error"}],error:t3.message};return{pattern:e3,partitions:[n3,n3,n3,n3],error:t3.message,locale:null}}}(e2),n2.error||(me[e2]=n2)),ue(n2,t2)}__name(ce,"ce"),ce.isDate=e2=>ce(e2,{throws:!1}).isDate(),ce.isPercent=e2=>ce(e2,{throws:!1}).isPercent(),ce.isText=e2=>ce(e2,{throws:!1}).isText(),ce.getInfo=(e2,t2)=>ce(e2,{...t2,throws:!1}).info,ce.getDateInfo=(e2,t2)=>ce(e2,{...t2,throws:!1}).dateInfo,ce.dateToSerial=P,ce.dateFromSerial=I,ce.options=h,ce.dec2frac=p,ce.round=c,ce.codeToLocale=n,ce.parseLocale=s,ce.getLocale=l,ce.addLocale=(e2,t2)=>{const n2=s(t2);return delete me[n2.lang],delete me[n2.language],m(e2,n2)},ce.format=function(e2,t2,n2){let a2=arguments.length>3&&arguments[3]!==void 0&&arguments[3];const r2=n2&&typeof n2=="object"?n2:{locale:n2,throws:!a2};return ce(e2,r2)(P(t2,r2),r2)},ce.is_date=ce.isDate,ce.parseNumber=ie,ce.parseDate=oe,ce.parseTime=le,ce.parseBool=de,ce.parseValue=function(e2,t2){var n2,a2,r2;return(n2=(a2=(r2=ie(e2))!==null&&r2!==void 0?r2:oe(e2,t2))!==null&&a2!==void 0?a2:le(e2))!==null&&n2!==void 0?n2:de(e2)};var pe=ce;return t=t.default}()})})(numfmt$2);var numfmtExports=numfmt$2.exports,numfmt$1=numfmtExports;const _numfmt=getDefaultExportFromCjs(numfmt$1),numfmt=_numfmt;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 _a11,_b2;return(_b2=(_a11=this._matrix)==null?void 0:_a11[row])==null?void 0:_b2[column]}setValue(row,column,value){const objectArray=this.getRowOrCreate(row);objectArray[column]=value}deleteValue(row,column){var _a11,_b2;(_b2=(_a11=this._matrix)==null?void 0:_a11[row])==null||delete _b2[column]}realDeleteValue(row,column){var _a11,_b2,_c;if((_b2=(_a11=this._matrix)==null?void 0:_a11[row])==null||delete _b2[column],this.getRow(row)){const objectArray=this.getRow(row);if(objectArray==null)return;Object.keys(objectArray).length===0&&((_c=this._matrix)==null||delete _c[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=new 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()}getStartEndScope(){let startRow=1/0,endRow=-1/0,startColumn=1/0,endColumn=-1/0;const rows=Object.keys(this._matrix);rows.length>0&&(startRow=+rows[0],endRow=+rows[rows.length-1]);for(const row of rows){const columns=Object.keys(this._matrix[row]);columns.length>0&&(startColumn=Math.min(startColumn,+columns[0]),endColumn=Math.max(endColumn,+columns[columns.length-1]))}return{startRow,endRow,startColumn,endColumn}}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 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},n:null},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
|
|
7
|
+
`)===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 _a11;const rgbColor=styles.getStyleByCell(cell);return((_a11=rgbColor==null?void 0:rgbColor.bg)==null?void 0:_a11.rgb)||DEFAULT_STYLES.bg.rgb}))}getCell(row,column){const{startRow,startColumn}=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 _a11;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||((_a11=values==null?void 0:values[r])==null?void 0:_a11[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 _a11;const cellStyle=styles.getStyleByCell(cell);return((_a11=cellStyle==null?void 0:cellStyle.cl)==null?void 0:_a11.rgb)||DEFAULT_STYLES.cl.rgb}))}getFontFamilies(){return this._getStyles("ff")}getFontFamily(){return this.getFontFamilies()[0][0]}getUnderlines(){return this._getStyles("ul")}getUnderline(){var _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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 _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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 _a11,_b2;const p=((_a11=this.getValue())==null?void 0:_a11.p)||{};return p&&Array.isArray((_b2=p.body)==null?void 0:_b2.textRuns)&&p.body.textRuns.length>0?p.body.textRuns.some(textRun=>{var _a12;return((_a12=textRun==null?void 0:textRun.ts)==null?void 0:_a12.fs)!=null})?Math.max(...p.body.textRuns.map(textRun=>{var _a12;return((_a12=textRun==null?void 0:textRun.ts)==null?void 0:_a12.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 _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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 _a11,_b2;const{p}=(_a11=this.getValue())!=null?_a11:{};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)=>{const maxColumns=worksheet.getMaxColumns()-1,maxRows=worksheet.getMaxRows()-1;return range.rangeType===RANGE_TYPE.ALL?{startColumn:0,startRow:0,endColumn:maxColumns,endRow:maxRows}:range.rangeType===RANGE_TYPE.COLUMN?{startRow:0,endRow:maxRows,startColumn:range.startColumn,endColumn:range.endColumn}:range.rangeType===RANGE_TYPE.ROW?{startColumn:0,endColumn:maxColumns,startRow:range.startRow,endRow:range.endRow}:{startColumn:range.startColumn,endColumn:Math.min(range.endColumn,maxColumns),startRow:range.startRow,endRow:Math.min(range.endRow,maxRows)}},"transformRange"));let Range=_Range;function moveRangeByOffset(range,refOffsetX,refOffsetY,ignoreAbsolute=!1){if(refOffsetX===0&&refOffsetY===0)return range;let newRange={...range};const startAbsoluteRefType=newRange.startAbsoluteRefType||AbsoluteRefType.NONE,endAbsoluteRefType=newRange.endAbsoluteRefType||AbsoluteRefType.NONE,rangeType=newRange.rangeType||RANGE_TYPE.NORMAL;if(!ignoreAbsolute&&startAbsoluteRefType===AbsoluteRefType.ALL&&endAbsoluteRefType===AbsoluteRefType.ALL)return newRange;const start=moveRangeByRangeType(newRange.startRow,refOffsetY,newRange.startColumn,refOffsetX,rangeType),end=moveRangeByRangeType(newRange.endRow,refOffsetY,newRange.endColumn,refOffsetX,rangeType);return ignoreAbsolute||startAbsoluteRefType===AbsoluteRefType.NONE&&endAbsoluteRefType===AbsoluteRefType.NONE?newRange={...newRange,startRow:start.row,startColumn:start.column,endRow:end.row,endColumn:end.column}:(startAbsoluteRefType===AbsoluteRefType.NONE?newRange={...newRange,startRow:start.row,startColumn:start.column}:startAbsoluteRefType===AbsoluteRefType.COLUMN?newRange={...newRange,startRow:start.row}:startAbsoluteRefType===AbsoluteRefType.ROW&&(newRange={...newRange,startColumn:start.column}),endAbsoluteRefType===AbsoluteRefType.NONE?newRange={...newRange,endRow:end.row,endColumn:end.column}:endAbsoluteRefType===AbsoluteRefType.COLUMN?newRange={...newRange,endRow:end.row}:endAbsoluteRefType===AbsoluteRefType.ROW&&(newRange={...newRange,endColumn:end.column}),newRange)}__name(moveRangeByOffset,"moveRangeByOffset");function moveRangeByRangeType(row,rowOffset,column,columnOffset,rangeType){return rangeType===RANGE_TYPE.NORMAL?{row:row+rowOffset,column:column+columnOffset}:rangeType===RANGE_TYPE.ROW?{row:row+rowOffset,column}:rangeType===RANGE_TYPE.COLUMN?{row,column:column+columnOffset}:{row,column}}__name(moveRangeByRangeType,"moveRangeByRangeType");function splitIntoGrid(ranges){const columns=new Set,rows=new Set;for(const range of ranges)columns.add(range.startColumn),columns.add(range.endColumn+1),rows.add(range.startRow),rows.add(range.endRow+1);const sortedColumns=Array.from(columns).sort((a,b)=>a-b),sortedRows=Array.from(rows).sort((a,b)=>a-b);ranges.sort((a,b)=>a.startRow-b.startRow||a.startColumn-b.startColumn);const result=[];for(let i=0;i<sortedRows.length-1;i++)for(let j=0;j<sortedColumns.length-1;j++){const startColumn=sortedColumns[j],endColumn=sortedColumns[j+1]-1,startRow=sortedRows[i],endRow=sortedRows[i+1]-1;for(const range of ranges){if(range.startRow>endRow)break;if(range.startRow<=startRow&&range.endRow>=endRow&&range.startColumn<=startColumn&&range.endColumn>=endColumn){result.push({startColumn,endColumn,startRow,endRow});break}}}return result}__name(splitIntoGrid,"splitIntoGrid");function mergeHorizontalRanges(ranges){ranges.sort((a,b)=>a.startRow-b.startRow||a.startColumn-b.startColumn);const rowGroups={};for(const range of ranges)rowGroups[range.startRow]||(rowGroups[range.startRow]=[]),rowGroups[range.startRow].push(range);const mergedRanges=[];for(const row in rowGroups){const rangesInRow=rowGroups[+row];rangesInRow.sort((a,b)=>a.startColumn-b.startColumn);let currentRange=rangesInRow[0];for(let i=1;i<rangesInRow.length;i++){const nextRange=rangesInRow[i];nextRange.startColumn<=currentRange.endColumn+1&&nextRange.startRow===currentRange.startRow&&nextRange.endRow===currentRange.endRow?currentRange.endColumn=Math.max(currentRange.endColumn,nextRange.endColumn):(mergedRanges.push(currentRange),currentRange=nextRange)}mergedRanges.push(currentRange)}return mergedRanges}__name(mergeHorizontalRanges,"mergeHorizontalRanges");function mergeVerticalRanges(ranges){ranges.sort((a,b)=>a.startColumn-b.startColumn||a.startRow-b.startRow);const columnGroups={};for(const range of ranges)columnGroups[range.startColumn]||(columnGroups[range.startColumn]=[]),columnGroups[range.startColumn].push(range);const mergedRanges=[];for(const col in columnGroups){const rangesInCol=columnGroups[+col];rangesInCol.sort((a,b)=>a.startRow-b.startRow);let currentRange=rangesInCol[0];for(let i=1;i<rangesInCol.length;i++){const nextRange=rangesInCol[i];nextRange.startRow<=currentRange.endRow+1&&nextRange.startColumn===currentRange.startColumn&&nextRange.endColumn===currentRange.endColumn?currentRange.endRow=Math.max(currentRange.endRow,nextRange.endRow):(mergedRanges.push(currentRange),currentRange=nextRange)}mergedRanges.push(currentRange)}return mergedRanges}__name(mergeVerticalRanges,"mergeVerticalRanges");function mergeRanges$1(ranges){const split=splitIntoGrid(ranges),horizontalMerged=mergeHorizontalRanges(split);return mergeVerticalRanges(horizontalMerged)}__name(mergeRanges$1,"mergeRanges$1");function multiSubtractSingleRange(ranges,toDelete){const res=[];return ranges.forEach(range=>{res.push(...Rectangle.subtract(range,toDelete))}),Rectangle.mergeRanges(res)}__name(multiSubtractSingleRange,"multiSubtractSingleRange");function getIntersectRange(src,target){const rowOverlap=getOverlap1D(src.startRow,src.endRow,target.startRow,target.endRow),colOverlap=getOverlap1D(src.startColumn,src.endColumn,target.startColumn,target.endColumn);if(!rowOverlap||!colOverlap)return null;const[startRow,endRow]=rowOverlap,[startColumn,endColumn]=colOverlap,rangeType=determineRangeType(src.rangeType,target.rangeType,startRow,endRow,startColumn,endColumn);return{startRow,endRow,startColumn,endColumn,rangeType}}__name(getIntersectRange,"getIntersectRange");function getOverlap1D(start1,end1,start2,end2){const s1=isNaN(start1)?-1/0:start1,e1=isNaN(end1)?1/0:end1,s2=isNaN(start2)?-1/0:start2,e2=isNaN(end2)?1/0:end2,start=Math.max(s1,s2),end=Math.min(e1,e2);if(start<=end){const resultStart=start===-1/0?Number.NaN:start,resultEnd=end===1/0?Number.NaN:end;return[resultStart,resultEnd]}else return null}__name(getOverlap1D,"getOverlap1D");function determineRangeType(srcType,targetType,startRow,endRow,startColumn,endColumn){const resolvedSrcType=srcType!==void 0?srcType:inferRangeType(startRow,endRow,startColumn,endColumn),resolvedTargetType=targetType!==void 0?targetType:inferRangeType(startRow,endRow,startColumn,endColumn);return resolvedSrcType===RANGE_TYPE.ALL||resolvedTargetType===RANGE_TYPE.ALL?resolvedSrcType===resolvedTargetType?resolvedSrcType:resolvedSrcType===RANGE_TYPE.ALL?resolvedTargetType:resolvedSrcType:resolvedSrcType===resolvedTargetType?resolvedSrcType:(resolvedSrcType===RANGE_TYPE.NORMAL||resolvedTargetType===RANGE_TYPE.NORMAL,RANGE_TYPE.NORMAL)}__name(determineRangeType,"determineRangeType");function inferRangeType(startRow,endRow,startColumn,endColumn){const hasRow=!isNaN(startRow)&&!isNaN(endRow),hasColumn=!isNaN(startColumn)&&!isNaN(endColumn);return hasRow&&hasColumn?RANGE_TYPE.NORMAL:hasRow?RANGE_TYPE.ROW:hasColumn?RANGE_TYPE.COLUMN:RANGE_TYPE.ALL}__name(inferRangeType,"inferRangeType");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 simpleRangesIntersect(rangeA,rangeB){const{startRow:startRowA,endRow:endRowA,startColumn:startColumnA,endColumn:endColumnA}=rangeA,{startRow:startRowB,endRow:endRowB,startColumn:startColumnB,endColumn:endColumnB}=rangeB,rowsOverlap=startRowA<=endRowB&&endRowA>=startRowB,columnsOverlap=startColumnA<=endColumnB&&endColumnA>=startColumnB;return rowsOverlap&&columnsOverlap}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 mergeRanges(ranges){return mergeRanges$1(ranges)}static subtractMulti(ranges1,ranges2){if(!ranges2.length)return ranges1;let res=ranges1;return ranges2.forEach(range=>{res=multiSubtractSingleRange(res,range)}),res}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}}static sort(ranges){return ranges.sort((a,b)=>a.startRow-b.startRow||a.startColumn-b.startColumn)}};__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;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");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 _a11;return[...((_a11=this._keyMaps.get(key))==null?void 0:_a11.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");var _=(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.UNIVER_PROJECT=4]="UNIVER_PROJECT",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(_||{}),S=(E=>(E[E.Reader=0]="Reader",E[E.Editor=1]="Editor",E[E.Owner=2]="Owner",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(S||{}),G=(E=>(E[E.SomeCollaborator=0]="SomeCollaborator",E[E.AllCollaborator=1]="AllCollaborator",E[E.OneSelf=2]="OneSelf",E[E.UNRECOGNIZED=-1]="UNRECOGNIZED",E))(G||{});const _UnitModel=class _UnitModel extends Disposable{};__name(_UnitModel,"UnitModel");let UnitModel=_UnitModel;function getEmptySnapshot$1(unitID=Tools.generateRandomId(6),locale=LocaleType.EN_US,title=""){return{id:unitID,locale,title,body:{dataStream:`\r
|
|
8
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(exports2){Object.defineProperty(exports2,"__esModule",{value:!0}),exports2.eachChildOf=exports2.advancer=exports2.readCursor=exports2.writeCursor=exports2.WriteCursor=exports2.ReadCursor=exports2.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 _k in c){const k=_k;w.write(k,c[k])}}__name(copyAll,"copyAll"),exports2.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;exports2.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(!exports2.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;exports2.WriteCursor=WriteCursor,exports2.writeCursor=()=>new WriteCursor,exports2.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"),exports2.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"),exports2.eachChildOf=eachChildOf})(cursor);var types={};(function(exports2){Object.defineProperty(exports2,"__esModule",{value:!0}),exports2.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"}(exports2.ConflictType||(exports2.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(exports2){Object.defineProperty(exports2,"__esModule",{value:!0}),exports2.uniSlice=exports2.dlen=exports2.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(exports2.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+=exports2.dlen(c.d);break;case"string":postPos+=unicount_1.strPosToUni(c);break;case"number":prePos+=c,postPos+=c;break}}}__name(eachOp,"eachOp"),exports2.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");exports2.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:exports2.dlen(last.d)+exports2.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");exports2.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:exports2.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"||exports2.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=exports2.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-=exports2.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=exports2.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(exports2.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(exports2.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"),exports2.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(exports2){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(exports2,"__esModule",{value:!0}),exports2.type=exports2.remove=exports2.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});exports2.type=type2,exports2.insert=(pos,text)=>text.length===0?[]:pos===0?[text]:[pos,text],exports2.remove=(pos,textOrLen)=>type_1.dlen(textOrLen)===0?[]:pos===0?[{d:textOrLen}]:[pos,{d:textOrLen}];var type_2=requireType();Object.defineProperty(exports2,"makeType",{enumerable:!0,get:__name(function(){return type_2.default},"get")})}(dist)),dist}__name(requireDist,"requireDist");(function(exports2){var __importDefault=commonjsGlobal&&commonjsGlobal.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports2,"__esModule",{value:!0}),exports2.editOp=exports2.replaceOp=exports2.insertOp=exports2.moveOp=exports2.removeOp=exports2.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"),exports2.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:apply2,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({},exports2.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"),exports2.removeOp=(path,value=!0)=>cursor_js_1.writeCursor().writeAtPath(path,"r",value).get(),exports2.moveOp=(from,to)=>cursor_js_1.writeCursor().writeMove(from,to).get(),exports2.insertOp=(path,value)=>cursor_js_1.writeCursor().writeAtPath(path,"i",value).get(),exports2.replaceOp=(path,oldVal,newVal)=>cursor_js_1.writeCursor().at(path,w=>{w.write("r",oldVal),w.write("i",newVal)}).get(),exports2.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 apply2(snapshot,op){if(checkValidOp(op),op===null)return snapshot;const held=[];return __name(function drop(root2,descent){let subDoc=root2,i=0,rootContainer={root:root2},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(apply2,"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 _a11;return c.r!==void 0||((_a11=getEditType(c))===null||_a11===void 0?void 0:_a11.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:exports2.removeOp(removed1.getPath()),op2:exports2.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:exports2.removeOp(removed1.getPath()),op2:exports2.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:exports2.removeOp(removed1.getPath()),op2:exports2.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?exports2.moveOp(r12.getPath(),r22.getPath()):exports2.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:exports2.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:exports2.editOp(p1Drop.getPath(),t1,e1,!0),op2:exports2.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(exports2){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,exports3){for(var p in m)p!=="default"&&!exports3.hasOwnProperty(p)&&__createBinding(exports3,m,p)};Object.defineProperty(exports2,"__esModule",{value:!0}),__exportStar(json1_release,exports2);var cursor_js_1=cursor;Object.defineProperty(exports2,"ReadCursor",{enumerable:!0,get:__name(function(){return cursor_js_1.ReadCursor},"get")}),Object.defineProperty(exports2,"WriteCursor",{enumerable:!0,get:__name(function(){return cursor_js_1.WriteCursor},"get")});var types_1=types;Object.defineProperty(exports2,"ConflictType",{enumerable:!0,get:__name(function(){return types_1.ConflictType},"get")})})(dist$1);const index=getDefaultExportFromCjs(dist$1),index$1=_mergeNamespaces({__proto__:null,default:index},[dist$1]);var TextXActionType=(TextXActionType2=>(TextXActionType2.RETAIN="r",TextXActionType2.INSERT="i",TextXActionType2.DELETE="d",TextXActionType2))(TextXActionType||{}),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=`
|
|
9
|
-
`,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 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||{}),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}}})),"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}}})),"orderListFactory"),checkListFactory=__name((symbol,textStyle)=>new 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},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("☐")},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 _a11;const{textRuns}=body;if(textRuns==null)return;const newTextRuns=[],len=textRuns.length;let hasInserted=!1;const insertTextRuns2=(_a11=insertBody.textRuns)!=null?_a11:[];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&¤tIndex<=ed){if(nextRun&&nextRun.st===nextRun.ed&¤tIndex===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}=insertBody,paragraphIndexList=[];for(let i=0,len=paragraphs.length;i<len;i++){const paragraph=paragraphs[i],{startIndex}=paragraph;startIndex>=currentIndex&&(paragraph.startIndex+=textLength),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)}deleteReptIndex!==-1&¶graphs.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 _a11;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=(_a11=body.textRuns)==null?void 0:_a11.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)if(removeTextRuns.push({...textRun,st:st-startIndex,ed:ed-startIndex}),startIndex===st)textRun.ed=st;else 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&&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 insertSectionBreaks(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=[],sectionBreaks=[]}=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})));const newSectionBreaks=[];for(const sectionBreak of sectionBreaks){const{startIndex}=sectionBreak;startIndex>=startOffset&&startIndex<=endOffset&&newSectionBreaks.push(Tools.deepClone(sectionBreak))}newSectionBreaks.length&&(docBody.sectionBreaks=newSectionBreaks.map(sb=>({...sb,startIndex:sb.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&¶graphs.push(...thisParagraphs.slice(thisIndex)),otherIndex<otherParagraphs.length&¶graphs.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&¶graphs.length===0}__name(isUselessRetainAction,"isUselessRetainAction");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;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=Tools.deepClone(targetTextRuns),originTextRuns=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)),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(Tools.deepClone(otherParagraph)),otherIndex++)}return otherIndex<otherParagraphs.length&¶graphs.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 _a11;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,(_a11=thisAction.segmentId)!=null?_a11:"")}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 _a11;subType==null||this._subTypes.has(subType.name)&&((_a11=this._subTypes.get(subType.name))==null?void 0:_a11.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 _a11;super();__publicField(this,"type",R.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((_a11=this.snapshot.title)!=null?_a11:"No Title")}getUnitId(){throw new Error("Method not implemented.")}getRev(){var _a11;return(_a11=this.snapshot.rev)!=null?_a11:1}incrementRev(){this.snapshot.rev=this.getRev()+1}setRev(rev){this.snapshot.rev=rev}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 _a11;return((_a11=this.snapshot.settings)==null?void 0:_a11.zoomRatio)||1}resetDrawing(drawings,drawingsOrder){this.snapshot.drawings=drawings,this.snapshot.drawingsOrder=drawingsOrder}getBody(){return this.snapshot.body}getSnapshot(){return this.snapshot}getBulletPresetList(){var _a11;const customLists=(_a11=this.snapshot.lists)!=null?_a11:{};return{...PRESET_LIST_TYPE,...customLists}}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,b,r}=data,{documentStyle}=this.snapshot;t!=null&&(documentStyle.marginTop=t),l!=null&&(documentStyle.marginLeft=l),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 _a11,_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=(_a11=this.snapshot.id)!=null?_a11: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 _a11;return(_a11=this.snapshot.body)==null?void 0:_a11.customRanges}getCustomDecorations(){var _a11;return(_a11=this.snapshot.body)==null?void 0:_a11.customDecorations}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)),this.headerModelMap.get(headerId).updateDocumentId(this.getUnitId())}if(footers)for(const footerId in footers){const footer=footers[footerId];this.footerModelMap.set(footerId,new _DocumentDataModel(footer)),this.footerModelMap.get(footerId).updateDocumentId(this.getUnitId())}}updateDocumentId(unitId){super.updateDocumentId(unitId),this._unitId=unitId}};__name(_DocumentDataModel,"DocumentDataModel");let DocumentDataModel=_DocumentDataModel;function isCustomRangeSplitSymbol(text){return text===DataStreamTreeTokenType.CUSTOM_RANGE_END||text===DataStreamTreeTokenType.CUSTOM_RANGE_START}__name(isCustomRangeSplitSymbol,"isCustomRangeSplitSymbol");function isIntersecting(line1Start,line1End,line2Start,line2End){return line1Start<=line2Start&&line1End>=line2Start||line1Start>=line2Start&&line1Start<=line2End}__name(isIntersecting,"isIntersecting");function shouldDeleteCustomRange(deleteStart,deleteLen,customRange,dataStream){const dataStreamSlice=dataStream.slice(customRange.startIndex+1,customRange.endIndex),start=Math.max(deleteStart-(customRange.startIndex+1),0),end=deleteStart+deleteLen-1-(customRange.startIndex+1);if(end<0)return!1;if(start===0&&end>=dataStreamSlice.length)return!0;const result=dataStreamSlice.slice(0,start)+dataStreamSlice.slice(start+deleteLen);for(let i=0,len=result.length;i<len;i++){const letter=result[i];if(!isCustomRangeSplitSymbol(letter))return!1}return!0}__name(shouldDeleteCustomRange,"shouldDeleteCustomRange");function getCustomRangesInterestsWithRange(range,customRanges){const result=[];for(let i=0,len=customRanges.length;i<len;i++){const customRange=customRanges[i];range.collapsed?customRange.startIndex<range.startOffset&&range.startOffset<=customRange.endIndex&&result.push(customRange):isIntersecting(range.startOffset,range.endOffset,customRange.startIndex,customRange.endIndex)&&result.push(customRange)}return result}__name(getCustomRangesInterestsWithRange,"getCustomRangesInterestsWithRange");function copyCustomRange(range){return{...Tools.deepClone(range),rangeId:generateRandomId()}}__name(copyCustomRange,"copyCustomRange");function excludePointsFromRange(range,points){const newRanges=[];let start=range[0];for(const point of points)point<range[0]||point>range[1]||(start<point&&newRanges.push([start,point-1]),start=point+1);return start<=range[1]&&newRanges.push([start,range[1]]),newRanges}__name(excludePointsFromRange,"excludePointsFromRange");const switchParagraphBullet=__name(params=>{var _a11,_b2,_c;const{paragraphs:currentParagraphs,segmentId,document:docDataModel}=params;let listType=params.listType;const paragraphs=(_b2=(_a11=docDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.paragraphs)!=null?_b2:[],isAlreadyList=currentParagraphs.every(paragraph=>{var _a12;return((_a12=paragraph.bullet)==null?void 0:_a12.listType.indexOf(listType))===0});let listId=Tools.generateRandomId(6);if(currentParagraphs.length===1){const curIndex=paragraphs.indexOf(currentParagraphs[0]),prevParagraph=paragraphs[curIndex-1],nextParagraph=paragraphs[curIndex+1];prevParagraph&&prevParagraph.bullet&&prevParagraph.bullet.listType.indexOf(listType)===0?(listId=prevParagraph.bullet.listId,listType!==PresetListType.CHECK_LIST&&(listType=prevParagraph.bullet.listType)):nextParagraph&&nextParagraph.bullet&&nextParagraph.bullet.listType.indexOf(listType)===0&&(listId=nextParagraph.bullet.listId,listType!==PresetListType.CHECK_LIST&&(listType=nextParagraph.bullet.listType))}const memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX;for(const paragraph of currentParagraphs){const{startIndex,paragraphStyle={},bullet}=paragraph;textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor,segmentId}),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[isAlreadyList?{paragraphStyle,startIndex:0}:{startIndex:0,paragraphStyle:{...paragraphStyle},bullet:{nestingLevel:(_c=bullet==null?void 0:bullet.nestingLevel)!=null?_c:0,textStyle:{fs:20},listType,listId}}]},segmentId,coverType:UpdateDocsAttributeType.REPLACE}),memoryCursor.moveCursorTo(startIndex+1)}return textX},"switchParagraphBullet"),toggleChecklistParagraph=__name(params=>{var _a11;const{paragraphIndex,segmentId,document:docDataModel}=params,paragraphs=(_a11=docDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.paragraphs;if(paragraphs==null)return!1;const currentParagraph=paragraphs.find(p=>p.startIndex===paragraphIndex);if(!(currentParagraph!=null&¤tParagraph.bullet)||currentParagraph.bullet.listType.indexOf(PresetListType.CHECK_LIST)===-1)return!1;const memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX,{startIndex,paragraphStyle={}}=currentParagraph,listType=currentParagraph.bullet.listType===PresetListType.CHECK_LIST?PresetListType.CHECK_LIST_CHECKED:PresetListType.CHECK_LIST;return textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor,segmentId}),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...currentParagraph,paragraphStyle,startIndex:0,bullet:{...currentParagraph.bullet,listType}}]},coverType:UpdateDocsAttributeType.REPLACE,segmentId}),memoryCursor.moveCursorTo(startIndex+1),textX},"toggleChecklistParagraph"),setParagraphBullet=__name(params=>{var _a11,_b2;const{paragraphs:currentParagraphs,listType,segmentId,document:docDataModel}=params;if(((_a11=docDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.paragraphs)==null)return!1;const listId=Tools.generateRandomId(6),memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX;for(const paragraph of currentParagraphs){const{startIndex,paragraphStyle={},bullet}=paragraph;textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor,segmentId}),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle,bullet:{nestingLevel:(_b2=bullet==null?void 0:bullet.nestingLevel)!=null?_b2:0,textStyle:(bullet==null?void 0:bullet.listType)===listType?bullet.textStyle:{fs:20},listType,listId}}]},segmentId,coverType:UpdateDocsAttributeType.REPLACE}),memoryCursor.moveCursorTo(startIndex+1)}return textX},"setParagraphBullet");function hasParagraphInTable(paragraph,tables){return tables.some(table=>paragraph.startIndex>table.startIndex&¶graph.startIndex<table.endIndex)}__name(hasParagraphInTable,"hasParagraphInTable");const changeParagraphBulletNestLevel=__name(params=>{var _a11,_b2,_c;const{paragraphs:currentParagraphs,segmentId,document:docDataModel,type:type2}=params,memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX,customLists=(_a11=docDataModel.getSnapshot().lists)!=null?_a11:{},tables=(_c=(_b2=docDataModel.getBody())==null?void 0:_b2.tables)!=null?_c:[],lists={...PRESET_LIST_TYPE,...customLists};for(const paragraph of currentParagraphs){const{startIndex,paragraphStyle={},bullet}=paragraph,isInTable=hasParagraphInTable(paragraph,tables);if(textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor,segmentId}),bullet){const listType=bullet.listType;let maxLevel=lists[listType].nestingLevel.length-1;isInTable&&(maxLevel=Math.min(maxLevel,2)),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle:{...paragraphStyle},bullet:{...bullet,nestingLevel:Math.max(Math.min(bullet.nestingLevel+type2,maxLevel),0)}}]},segmentId,coverType:UpdateDocsAttributeType.REPLACE})}else textX.push({t:TextXActionType.RETAIN,len:1});memoryCursor.moveCursorTo(startIndex+1)}return textX},"changeParagraphBulletNestLevel");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 tags=[DataStreamTreeTokenType.TABLE_START,DataStreamTreeTokenType.TABLE_ROW_START,DataStreamTreeTokenType.TABLE_CELL_START,DataStreamTreeTokenType.TABLE_CELL_END,DataStreamTreeTokenType.TABLE_ROW_END,DataStreamTreeTokenType.TABLE_END,DataStreamTreeTokenType.CUSTOM_RANGE_START,DataStreamTreeTokenType.CUSTOM_RANGE_END,DataStreamTreeTokenType.CUSTOM_BLOCK],getPlainText=__name(dataStream=>{const text=dataStream.endsWith(`\r
|
|
10
|
-
`)?dataStream.slice(0,-2):dataStream;return tags.reduce((res,curr)=>res.replaceAll(curr,""),text)},"getPlainText"),isEmptyDocument=__name(dataStream=>dataStream?getPlainText(dataStream).replaceAll("\r","")==="":!0,"isEmptyDocument"),fromPlainText=__name(text=>{const dataStream=text.replace(/\n/g,"\r"),paragraphs=[],customRanges=[];let cursor2=0,newDataStream="",linkCount=0;const loopParagraph=__name((i,insertP=!0)=>{const paragraphText=dataStream.slice(cursor2,i);if(Tools.isLegalUrl(paragraphText)){const id=generateRandomId(),urlText=`${DataStreamTreeTokenType.CUSTOM_RANGE_START}${paragraphText}${DataStreamTreeTokenType.CUSTOM_RANGE_END}`,range={startIndex:cursor2+linkCount*2,endIndex:cursor2+linkCount*2+urlText.length-1,rangeId:id,rangeType:CustomRangeType.HYPERLINK,properties:{url:text}};customRanges.push(range),newDataStream+=urlText,cursor2=i+1,linkCount++,insertP&&(newDataStream+="\r",paragraphs.push({startIndex:i+linkCount*2}))}else newDataStream+=dataStream.slice(cursor2,i+1),cursor2=i+1,insertP&¶graphs.push({startIndex:i+linkCount*2})},"loopParagraph");let end=0;for(let i=0;i<dataStream.length;i++)dataStream[i]==="\r"&&(loopParagraph(i),end=i);return end!==dataStream.length-1&&loopParagraph(dataStream.length,!1),{dataStream:newDataStream,paragraphs,customRanges}},"fromPlainText");function makeSelection(startOffset,endOffset){if(typeof endOffset>"u")return{startOffset,endOffset:startOffset,collapsed:!0};if(endOffset<startOffset)throw new Error(`Cannot make a doc selection when endOffset ${endOffset} is less than startOffset ${startOffset}.`);return{startOffset,endOffset,collapsed:startOffset===endOffset}}__name(makeSelection,"makeSelection");function normalizeSelection(selection){const{startOffset,endOffset,collapsed}=selection,start=Math.min(startOffset,endOffset),end=Math.max(startOffset,endOffset);return{startOffset:start,endOffset:end,collapsed}}__name(normalizeSelection,"normalizeSelection");function getSelectionWithSymbolMax(selection,body){let{startOffset,endOffset}=normalizeSelection(selection);for(;body.dataStream[startOffset-1]===DataStreamTreeTokenType.CUSTOM_RANGE_START;)startOffset-=1;for(;body.dataStream[endOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_END;)endOffset+=1;return{startOffset,endOffset}}__name(getSelectionWithSymbolMax,"getSelectionWithSymbolMax");function getDeleteSelection(selection,body,direction=DeleteDirection.LEFT){var _a11;let{startOffset,endOffset,collapsed}=normalizeSelection(selection);if(collapsed)if(direction===DeleteDirection.LEFT)for(;isCustomRangeSplitSymbol(body.dataStream[startOffset-1]);)endOffset-=1,startOffset-=1;else for(;isCustomRangeSplitSymbol(body.dataStream[startOffset]);)endOffset+=1,startOffset+=1;else{const selectionWithSymbolMax=getSelectionWithSymbolMax(selection,body);startOffset=selectionWithSymbolMax.startOffset,endOffset=selectionWithSymbolMax.endOffset}collapsed=startOffset===endOffset;const customRanges=(_a11=body.customRanges)==null?void 0:_a11.filter(range=>!range.wholeEntity||startOffset<=range.startIndex&&endOffset>range.endIndex?!1:isSegmentIntersects(startOffset,collapsed?endOffset:endOffset-1,range.startIndex,range.endIndex));return customRanges!=null&&customRanges.length&&customRanges.forEach(range=>{startOffset=Math.min(range.startIndex,startOffset),endOffset=Math.max(range.endIndex+1,endOffset)}),{...selection,startOffset,endOffset,collapsed:startOffset===endOffset}}__name(getDeleteSelection,"getDeleteSelection");function getInsertSelection(selection,body){let{startOffset,endOffset,collapsed}=normalizeSelection(selection);if(collapsed){for(;body.dataStream[endOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_END;)endOffset+=1,startOffset+=1;for(;body.dataStream[endOffset-1]===DataStreamTreeTokenType.CUSTOM_RANGE_START;)endOffset-=1,startOffset-=1;return{...selection,startOffset,endOffset,collapsed}}else return{...selection,...getSelectionWithSymbolMax(selection,body),collapsed:!1}}__name(getInsertSelection,"getInsertSelection");function getSelectionForAddCustomRange(selection,body){if(selection.startOffset===selection.endOffset)return null;const customRanges=body.customRanges;if(!customRanges)return normalizeSelection(selection);let{startOffset,endOffset}=getSelectionWithSymbolMax(selection,body);for(;isCustomRangeSplitSymbol(body.dataStream[startOffset]);){if(body.dataStream[startOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_START){const customRange=customRanges.find(range=>range.startIndex===startOffset);if(!customRange)throw new Error("No custom-range matched");if(customRange.endIndex===endOffset-1)return{startOffset,endOffset,collapsed:!1};if(customRange.endIndex<endOffset-1)break}startOffset+=1}for(;isCustomRangeSplitSymbol(body.dataStream[endOffset-1]);){if(body.dataStream[startOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_END){const customRange=customRanges.find(range=>range.endIndex===endOffset-1);if(!customRange)throw new Error("No custom-range matched");if(customRange.startIndex===startOffset)return{startOffset,endOffset,collapsed:!1};if(customRange.startIndex>startOffset)break}endOffset-=1}return endOffset<=startOffset?null:{startOffset,endOffset,collapsed:!1}}__name(getSelectionForAddCustomRange,"getSelectionForAddCustomRange");function isSegmentIntersects(start,end,start2,end2){return Math.max(start,start2)<=Math.min(end,end2)}__name(isSegmentIntersects,"isSegmentIntersects");function getRetainAndDeleteFromReplace(range,segmentId="",memoryCursor,body){var _a11;const{startOffset,endOffset}=range,dos=[],textStart=startOffset-memoryCursor,textEnd=endOffset-memoryCursor,dataStream=body.dataStream,relativeCustomRanges=(_a11=body.customRanges)==null?void 0:_a11.filter(customRange=>isIntersecting(customRange.startIndex,customRange.endIndex,startOffset,endOffset)),toDeleteRanges=new Set(relativeCustomRanges==null?void 0:relativeCustomRanges.filter(customRange=>shouldDeleteCustomRange(startOffset,endOffset-startOffset,customRange,dataStream))),retainPoints=new Set;relativeCustomRanges==null||relativeCustomRanges.forEach(range2=>{toDeleteRanges.has(range2)||(range2.startIndex-memoryCursor>=textStart&&range2.startIndex-memoryCursor<textEnd&&range2.endIndex-memoryCursor>=textEnd&&retainPoints.add(range2.startIndex),range2.endIndex-memoryCursor>=textStart&&range2.endIndex-memoryCursor<textEnd&&range2.startIndex-memoryCursor<textStart&&retainPoints.add(range2.endIndex))}),textStart>0&&dos.push({t:TextXActionType.RETAIN,len:textStart,segmentId});const sortedRetains=[...retainPoints].sort((pre,aft)=>pre-aft);let cursor2=textStart;return sortedRetains.forEach(pos=>{const len=pos-cursor2;len>0&&dos.push({t:TextXActionType.DELETE,len,line:0,segmentId}),dos.push({t:TextXActionType.RETAIN,len:1,segmentId}),cursor2=pos+1}),cursor2<textEnd&&(dos.push({t:TextXActionType.DELETE,len:textEnd-cursor2,line:0,segmentId}),cursor2=textEnd+1),{dos,cursor:cursor2,retain:retainPoints.size}}__name(getRetainAndDeleteFromReplace,"getRetainAndDeleteFromReplace");function deleteCustomRangeTextX(accessor,params){var _a11,_b2;const{rangeId,segmentId,documentDataModel,insert,textRange}=params,range=(_b2=(_a11=documentDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.customRanges)==null?void 0:_b2.find(r=>r.rangeId===rangeId);if(!range)return!1;const{startIndex,endIndex}=range,textX=new TextX,len=endIndex-startIndex+1;return startIndex>0&&textX.push({t:TextXActionType.RETAIN,len:startIndex,segmentId}),textX.push({t:TextXActionType.DELETE,len:1,segmentId,line:0}),textRange&&textRange.index>startIndex&&textRange.index--,len-2>0&&textX.push({t:TextXActionType.RETAIN,len:len-2,segmentId}),textX.push({t:TextXActionType.DELETE,len:1,segmentId,line:0}),textRange&&textRange.index>endIndex&&textRange.index--,insert&&(textX.push({body:insert,t:TextXActionType.INSERT,len:insert.dataStream.length,segmentId,line:1}),textRange&&textRange.index>endIndex&&(textRange.index+=insert.dataStream.length)),textX}__name(deleteCustomRangeTextX,"deleteCustomRangeTextX");function addCustomRangeTextX(param){var _a11,_b2;const{range,rangeId,rangeType,segmentId,wholeEntity,properties,body}=param,actualRange=getSelectionForAddCustomRange(range,body);if(!actualRange||!body)return!1;const{startOffset,endOffset}=actualRange,customRanges=(_a11=body.customRanges)!=null?_a11:[];let cursor2=0;const textX=new TextX,addCustomRange=__name((startIndex,endIndex,index2)=>{const relativeCustomRanges=[];for(let i=0,len=customRanges.length;i<len;i++){const customRange=customRanges[i];if(customRange.rangeType===rangeType&&Math.max(customRange.startIndex,startIndex)<=Math.min(customRange.endIndex,endIndex)&&relativeCustomRanges.push({...customRange}),customRange.startIndex>endIndex)break}const deletes=relativeCustomRanges.map(i=>[i.startIndex,i.endIndex]).flat().sort((pre,aft)=>pre-aft),range2=deletes.length?{startOffset:Math.min(deletes[0],startIndex),endOffset:Math.max(deletes[deletes.length-1]+1,endIndex+1)}:{startOffset:startIndex,endOffset:endIndex+1};range2.startOffset!==cursor2&&(textX.push({t:TextXActionType.RETAIN,len:range2.startOffset-cursor2,segmentId}),cursor2=range2.startOffset),textX.push({t:TextXActionType.INSERT,body:{dataStream:DataStreamTreeTokenType.CUSTOM_RANGE_START},len:1,line:0,segmentId}),deletes.forEach(index22=>{index22!==cursor2&&(textX.push({t:TextXActionType.RETAIN,len:index22-cursor2,segmentId}),cursor2=index22),textX.push({t:TextXActionType.DELETE,len:1,line:0,segmentId}),cursor2++}),cursor2!==range2.endOffset&&(textX.push({t:TextXActionType.RETAIN,len:range2.endOffset-cursor2,segmentId}),cursor2=range2.endOffset),textX.push({t:TextXActionType.INSERT,body:{dataStream:DataStreamTreeTokenType.CUSTOM_RANGE_END,customRanges:[{rangeId:index2?`${rangeId}-${index2}`:rangeId,rangeType,startIndex:-(range2.endOffset-range2.startOffset-deletes.length+1),endIndex:0,wholeEntity,properties:{...properties}}]},len:1,line:0,segmentId})},"addCustomRange"),relativeParagraphs=((_b2=body.paragraphs)!=null?_b2:[]).filter(p=>p.startIndex<endOffset&&p.startIndex>startOffset);return excludePointsFromRange([startOffset,endOffset-1],relativeParagraphs.map(p=>p.startIndex)).forEach(([start,end],i)=>addCustomRange(start,end,i)),textX}__name(addCustomRangeTextX,"addCustomRangeTextX");function getRetainAndDeleteAndExcludeLineBreak(selection,body,segmentId="",memoryCursor=0,preserveLineBreak=!0){var _a11;const{startOffset,endOffset}=getDeleteSelection(selection,body),dos=[],{paragraphs=[],dataStream}=body,textStart=startOffset-memoryCursor,textEnd=endOffset-memoryCursor,paragraphInRange=paragraphs==null?void 0:paragraphs.find(p=>p.startIndex-memoryCursor>=textStart&&p.startIndex-memoryCursor<textEnd),relativeCustomRanges=(_a11=body.customRanges)==null?void 0:_a11.filter(customRange=>isIntersecting(customRange.startIndex,customRange.endIndex,startOffset,endOffset)),toDeleteRanges=new Set(relativeCustomRanges==null?void 0:relativeCustomRanges.filter(customRange=>shouldDeleteCustomRange(startOffset,endOffset-startOffset,customRange,dataStream))),retainPoints=new Set;if(relativeCustomRanges==null||relativeCustomRanges.forEach(range=>{toDeleteRanges.has(range)||(range.startIndex-memoryCursor>=textStart&&range.startIndex-memoryCursor<=textEnd&&range.endIndex-memoryCursor>textEnd&&retainPoints.add(range.startIndex),range.endIndex-memoryCursor>=textStart&&range.endIndex-memoryCursor<=textEnd&&range.startIndex<textStart&&retainPoints.add(range.endIndex))}),textStart>0&&dos.push({t:TextXActionType.RETAIN,len:textStart,segmentId}),preserveLineBreak&¶graphInRange&¶graphInRange.startIndex-memoryCursor>textStart){const paragraphIndex=paragraphInRange.startIndex-memoryCursor;retainPoints.add(paragraphIndex)}const sortedRetains=[...retainPoints].sort((pre,aft)=>pre-aft);let cursor2=textStart;if(sortedRetains.forEach(pos=>{const len=pos-cursor2;len>0&&dos.push({t:TextXActionType.DELETE,len,line:0,segmentId}),dos.push({t:TextXActionType.RETAIN,len:1,segmentId}),cursor2=pos+1}),cursor2<textEnd&&(dos.push({t:TextXActionType.DELETE,len:textEnd-cursor2,line:0,segmentId}),cursor2=textEnd),!preserveLineBreak){const nextParagraph=paragraphs.find(p=>p.startIndex-memoryCursor>=textEnd);nextParagraph&&(nextParagraph.startIndex>cursor2&&(dos.push({t:TextXActionType.RETAIN,len:nextParagraph.startIndex-cursor2,segmentId}),cursor2=nextParagraph.startIndex),dos.push({t:TextXActionType.RETAIN,len:1,segmentId,body:{dataStream:"",paragraphs:[{...nextParagraph,startIndex:0,bullet:paragraphInRange==null?void 0:paragraphInRange.bullet}]},coverType:UpdateDocsAttributeType.REPLACE}))}return dos}__name(getRetainAndDeleteAndExcludeLineBreak,"getRetainAndDeleteAndExcludeLineBreak");const replaceSelectionTextX=__name(params=>{var _a11;const{selection,body:insertBody,doc}=params,segmentId=selection.segmentId,body=(_a11=doc.getSelfOrHeaderFooterModel(segmentId))==null?void 0:_a11.getBody();if(!body)return!1;const textX=new TextX,deleteActions=getRetainAndDeleteAndExcludeLineBreak(selection,body,segmentId);return deleteActions.length&&textX.push(...deleteActions),textX.push({t:TextXActionType.INSERT,body:insertBody,len:insertBody.dataStream.length,line:0,segmentId}),textX},"replaceSelectionTextX"),_BuildTextUtils=class _BuildTextUtils{};__name(_BuildTextUtils,"BuildTextUtils"),__publicField(_BuildTextUtils,"customRange",{add:addCustomRangeTextX,delete:deleteCustomRangeTextX,copyCustomRange,getCustomRangesInterestsWithRange,shouldDeleteCustomRange,isIntersecting}),__publicField(_BuildTextUtils,"selection",{replace:replaceSelectionTextX,makeSelection,normalizeSelection,getDeleteSelection,getInsertSelection,getDeleteActions:getRetainAndDeleteFromReplace,getDeleteExculdeLastLineBreakActions:getRetainAndDeleteAndExcludeLineBreak}),__publicField(_BuildTextUtils,"range",{isIntersects:isSegmentIntersects}),__publicField(_BuildTextUtils,"transform",{getPlainText,fromPlainText,isEmptyDocument}),__publicField(_BuildTextUtils,"paragraph",{bullet:{set:setParagraphBullet,switch:switchParagraphBullet,toggleChecklist:toggleChecklistParagraph,changeNestLevel:changeParagraphBulletNestLevel}});let BuildTextUtils=_BuildTextUtils;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 DEFAULT_DOCUMENT_SUB_COMPONENT_ID="__default_document_sub_component_id20231101__",_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 _a11,_b2;return((_a11=a.priority)!=null?_a11:0)-((_b2=b.priority)!=null?_b2:0)}),subscription.add(()=>this._sortedObservers=this._sortedObservers.filter(o=>o!==ob)),subscription}clearObservers(){this._sortedObservers.forEach(observer=>{var _a11;return(_a11=observer.complete)==null?void 0:_a11.call(observer)}),this._sortedObservers.length=0}emitEvent(event){var _a11;if(!this.closed){const state=new EventState;state.lastReturnValue=event;for(const observer of this._sortedObservers){const value=(_a11=observer.next)==null?void 0:_a11.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 IResourceManagerService=createIdentifier("core.resource-manager.service"),nameMap={[S.Editor]:"Editor",[S.Owner]:"Owner",[S.Reader]:"Reader",[S.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"),_UserManagerService=class _UserManagerService{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(_UserManagerService,"UserManagerService");let UserManagerService=_UserManagerService;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$6=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$6"),_a3;exports.AuthzIoLocalService=(_a3=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&¤tUser.userID||this._userManagerService.setCurrentUser(createDefaultUser(S.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:[R.UNIVER_SHEET,R.UNIVER_DOC,R.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){return generateRandomId(8)}async allowed(_config){return Promise.resolve([])}async batchAllowed(_config){return Promise.resolve([])}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:S.Owner,shareScope:-1,scope:{read:T.AllCollaborator,edit:T.AllCollaborator},creator:createDefaultUser(S.Owner),strategies:[{action:6,role:1},{action:16,role:1},{action:17,role:1},{action:18,role:1},{action:19,role:1},{action:33,role:1},{action:34,role:1},{action:35,role:1},{action:36,role:1},{action:37,role:1},{action:38,role:1},{action:39,role:1},{action:40,role:1}],actions:config.actions.map(a=>({action:a,allowed:this._getRole(S.Owner)||this._getRole(S.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(_a3,"AuthzIoLocalService"),_a3);exports.AuthzIoLocalService=__decorateClass$6([__decorateParam$6(0,IResourceManagerService),__decorateParam$6(1,Inject(UserManagerService))],exports.AuthzIoLocalService);const IAuthzIoService=createIdentifier("IAuthzIoIoService"),IConfigService=createIdentifier("univer.config-service"),_ConfigService=class _ConfigService{constructor(){__publicField(this,"_config",new Map)}getConfig(id){return this._config.get(id)}setConfig(id,value,options){var _a11;const{merge:merge2=!1}=options||{},existingValue=(_a11=this._config.get(id))!=null?_a11:{};if(merge2){this._config.set(id,Tools.deepMerge(existingValue,value));return}this._config.set(id,value)}deleteConfig(id){return this._config.delete(id)}};__name(_ConfigService,"ConfigService");let ConfigService=_ConfigService;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",_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 version="0.4.1";function getEmptySnapshot(unitID="",locale=LocaleType.ZH_CN,name=""){return{id:unitID,sheetOrder:[],name,appVersion:version,locale,styles:{},sheets:{},resources:[]}}__name(getEmptySnapshot,"getEmptySnapshot");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},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 _SpanModel=class _SpanModel extends Disposable{constructor(mergeData){super();__publicField(this,"_cellCache",new Map);__publicField(this,"_rowCache",new Map);__publicField(this,"_columnCache",new Map);__publicField(this,"_hasRow",!1);__publicField(this,"_hasColumn",!1);__publicField(this,"_hasAll",!1);__publicField(this,"_allIndex",-1);__publicField(this,"_mergeData");__publicField(this,"_rangeMap",new LRUMap(5e4));__publicField(this,"_skeletonCache",new LRUMap(5e4));this._init(mergeData.concat())}_init(mergeData){this._mergeData=mergeData,this._createCache(mergeData)}_clearCache(){this._cellCache.clear(),this._rowCache.clear(),this._columnCache.clear(),this._hasAll=!1,this._allIndex=-1,this._rangeMap.clear(),this._skeletonCache.clear(),this._hasColumn=!1,this._hasRow=!1}_createCache(mergeData){let index2=0;for(const range of mergeData){const{rangeType}=range;rangeType===RANGE_TYPE.ROW?this._createRowCache(range,index2):rangeType===RANGE_TYPE.COLUMN?this._createColumnCache(range,index2):rangeType===RANGE_TYPE.ALL?this._createCellAllCache(index2):this._createCellCache(range,index2),index2++}}rebuild(mergeData){this._clearCache(),this._init(mergeData.concat())}_createRowCache(range,index2){const{startRow,endRow}=range;for(let i=startRow;i<=endRow;i++)this._rowCache.set(i,index2),this._hasRow=!0}_createColumnCache(range,index2){const{startColumn,endColumn}=range;for(let i=startColumn;i<=endColumn;i++)this._columnCache.set(i,index2),this._hasColumn=!0}_createCellAllCache(index2){this._hasAll=!0,this._allIndex=index2}_createCellCache(range,index2){for(let i=range.startRow;i<=range.endRow;i++){let columnCache=this._cellCache.get(i);columnCache==null&&(columnCache=new Map,this._cellCache.set(i,columnCache));for(let j=range.startColumn;j<=range.endColumn;j++)columnCache.set(j,index2)}}add(range){this._mergeData.push(range),this._clearCache(),this._createCache(this._mergeData)}remove(row,column){const index2=this._getMergeDataIndex(row,column);index2!==-1&&(this._mergeData.splice(index2,1),this._clearCache(),this._createCache(this._mergeData))}getMergedCell(row,column){const index2=this._getMergeDataIndex(row,column);return index2!==-1?this._mergeData[index2]:null}getMergeDataIndex(row,column){return this._getMergeDataIndex(row,column)}isRowContainsMergedCell(row){return this._hasAll||!Tools.isEmptyObject(this._columnCache)?!0:this._mergeData.some(mergedCell=>mergedCell.startRow<=row&&row<=mergedCell.endRow)}isColumnContainsMergedCell(column){return this._hasAll||!Tools.isEmptyObject(this._rowCache)?!0:this._mergeData.some(mergedCell=>mergedCell.startColumn<=column&&column<=mergedCell.endColumn)}getMergedCellRange(startRow,startColumn,endRow,endColumn){const ranges=[],key=`${startRow}-${startColumn}-${endRow}-${endColumn}`;if(this._rangeMap.has(key))return this._getRangeFromCache(key);let index2=0;const indexes=[];for(const range of this._mergeData||[])Rectangle.intersects(range,{startRow,endRow,startColumn,endColumn})&&(ranges.push({...range}),indexes.push(index2)),index2++;return this._rangeMap.set(key,indexes),ranges}getMergedCellRangeForSkeleton(startRow,startColumn,endRow,endColumn){const cacheDataMerge=[],mergeData=this._mergeData,key=`${startRow}-${startColumn}-${endRow}-${endColumn}`;if(this._skeletonCache.has(key))return this._getSkeletonRangeFromCache(key);const indexes=[];for(let i=0;i<mergeData.length;i++){const{startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}=mergeData[i];for(let r=startRow;r<=endRow;r++){let isBreak=!1;for(let c=startColumn;c<=endColumn;c++)if(r>=mergeStartRow&&r<=mergeEndRow&&c>=mergeStartColumn&&c<=mergeEndColumn){cacheDataMerge.push({startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}),indexes.push(i),isBreak=!0;break}if(isBreak)break}}return this._skeletonCache.set(key,indexes),cacheDataMerge}_getRangeFromCache(key){const indexes=this._rangeMap.get(key)||[],ranges=[];for(const index2 of indexes)ranges.push({...this._mergeData[index2]});return ranges}_getSkeletonRangeFromCache(key){const indexes=this._skeletonCache.get(key)||[],ranges=[];for(const index2 of indexes)ranges.push({...this._mergeData[index2]});return ranges}_getMergeDataIndex(row,column){var _a11;if(this._hasAll)return this._allIndex;if(this._hasRow){const rowValue=this._rowCache.get(row);if(rowValue!==void 0)return rowValue}if(this._hasColumn){const columnValue=this._columnCache.get(column);if(columnValue!==void 0)return columnValue}const cellValue=(_a11=this._cellCache.get(row))==null?void 0:_a11.get(column);return cellValue!==void 0?cellValue:-1}getMergeDataSnapshot(){return this._mergeData}dispose(){this._clearCache(),this._mergeData=[]}};__name(_SpanModel,"SpanModel");let SpanModel=_SpanModel;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,InterceptorEffectEnum.Value|InterceptorEffectEnum.Style):this.getRawCell(row,col)}getCellValueOnly(row,col){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(row,col,InterceptorEffectEnum.Value):this.getRawCell(row,col)}getCellStyleOnly(row,col){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(row,col,InterceptorEffectEnum.Style):this.getRawCell(row,col)}getRowFiltered(row){var _a11,_b2;return(_b2=(_a11=this._rowFilteredInterceptor)==null?void 0:_a11.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");__publicField(this,"_spanModel");var _a11;this.unitId=unitId,this._styles=_styles,this._snapshot=mergeWorksheetSnapshotWithDefault(snapshot);const{columnData,rowData,cellData}=this._snapshot;this._sheetId=(_a11=this._snapshot.id)!=null?_a11: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),this._spanModel=new SpanModel(this._snapshot.mergeData)}__interceptViewModel(callback){callback(this._viewModel)}getSnapshot(){return this._snapshot}setMergeData(mergeData){this._snapshot.mergeData=mergeData,this.getSpanModel().rebuild(mergeData)}getSpanModel(){return this._spanModel}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._spanModel.getMergeDataSnapshot()}getMergedCell(row,col){return this._spanModel.getMergedCell(row,col)}getMergedCellRange(startRow,startColumn,endRow,endColumn){return this._spanModel.getMergedCellRange(startRow,startColumn,endRow,endColumn)}isRowContainsMergedCell(row){return this._spanModel.isRowContainsMergedCell(row)}isColumnContainsMergedCell(column){return this._spanModel.isColumnContainsMergedCell(column)}getCellInfoInMergeData(row,column){const mergeRange=this.getMergedCell(row,column);let isMerged=!1,isMergedMainCell=!1,newEndRow=row,newEndColumn=column,mergeRow=row,mergeColumn=column;if(mergeRange){const{startRow:startRowMarge,endRow:endRowMarge,startColumn:startColumnMarge,endColumn:endColumnMarge}=mergeRange;row===startRowMarge&&column===startColumnMarge?(newEndRow=endRowMarge,newEndColumn=endColumnMarge,mergeRow=startRowMarge,mergeColumn=startColumnMarge,isMergedMainCell=!0):row>=startRowMarge&&row<=endRowMarge&&column>=startColumnMarge&&column<=endColumnMarge&&(newEndRow=endRowMarge,newEndColumn=endColumnMarge,mergeRow=startRowMarge,mergeColumn=startColumnMarge,isMerged=!0)}return{actualRow:row,actualColumn:column,isMergedMainCell,isMerged,endRow:newEndRow,endColumn:newEndColumn,startRow:mergeRow,startColumn:mergeColumn}}getCell(row,col){return row<0||col<0?null:this._viewModel.getCell(row,col)}getCellValueOnly(row,col){return row<0||col<0?null:this._viewModel.getCellValueOnly(row,col)}getCellStyleOnly(row,col){return row<0||col<0?null:this._viewModel.getCellStyleOnly(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._spanModel.getMergedCellRange(row,col,endRow,endCol),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)}isRowFiltered(row){return this._viewModel.getRowFiltered(row)}getRowVisible(row){return!this.isRowFiltered(row)&&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 _a11,_b2;if(!cell)return"";const richTextValue=(_b2=(_a11=cell.p)==null?void 0:_a11.body)==null?void 0:_b2.dataStream;if(richTextValue)return BuildTextUtils.transform.getPlainText(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");function getOriginCellValue(cell){if(cell===null)return"";if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return"";const data=body.dataStream;return BuildTextUtils.transform.getPlainText(data)}return cell==null?void 0:cell.v}__name(getOriginCellValue,"getOriginCellValue");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$5=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$5");function getWorksheetUID(workbook,worksheet){return`${workbook.getUnitId()}|${worksheet.getSheetId()}`}__name(getWorksheetUID,"getWorksheetUID");var _a4;exports.Workbook=(_a4=class extends UnitModel{constructor(workbookData={},_logService){super();__publicField(this,"type",R.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()}static isIRangeType(range){return typeof range=="string"||"startRow"in range||"row"in range}dispose(){super.dispose(),this._sheetCreated$.complete(),this._sheetDisposed$.complete(),this._activeSheet$.complete(),this._name$.complete()}save(){return Tools.deepClone(this._snapshot)}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 _a11;return(_a11=this._snapshot.rev)!=null?_a11:1}incrementRev(){this._snapshot.rev=this.getRev()+1}setRev(rev){this._snapshot.rev=rev}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(_a4,"Workbook"),_a4);exports.Workbook=__decorateClass$5([__decorateParam$5(1,ILogService)],exports.Workbook);const _SlideDataModel=class _SlideDataModel extends UnitModel{constructor(snapshot){var _a11;super();__publicField(this,"type",R.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=(_a11=this._snapshot.id)!=null?_a11:Tools.generateRandomId(6),this._name$=new rxjs.BehaviorSubject(this._snapshot.title),this.name$=this._name$.asObservable()}get _activePage(){var _a11,_b2;const activePage=this._activePage$.getValue();if(!activePage){const activePageId=(_a11=this.getPageOrder())==null?void 0:_a11[0];return activePageId?(_b2=this.getPages())==null?void 0:_b2[activePageId]:null}return activePage}setName(name){var _a11;this._snapshot.title=name,this._name$.next(name),this._unitId=(_a11=this._snapshot.id)!=null?_a11:generateRandomId(6)}getRev(){return 0}incrementRev(){}setRev(_rev){}getSnapshot(){return this._snapshot}getUnitId(){return this._unitId}getPages(){var _a11;return(_a11=this._snapshot.body)==null?void 0:_a11.pages}getPageOrder(){var _a11;return(_a11=this._snapshot.body)==null?void 0:_a11.pageOrder}getPage(pageId){const pages=this.getPages();return pages==null?void 0:pages[pageId]}getElementsByPage(pageId){var _a11;return(_a11=this.getPage(pageId))==null?void 0:_a11.pageElements}getElement(pageId,elementId){var _a11;return(_a11=this.getElementsByPage(pageId))==null?void 0:_a11[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 _a11;if(!this._snapshot.body)return;this._snapshot.body.pages[page.id]=page;const activePage=this._activePage,index2=this._snapshot.body.pageOrder.indexOf((_a11=activePage==null?void 0:activePage.id)!=null?_a11:"");this._snapshot.body.pageOrder.splice(index2+1,0,page.id)}};__name(_SlideDataModel,"SlideDataModel");let SlideDataModel=_SlideDataModel;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$4=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$4");const IUniverInstanceService=createIdentifier("univer.current");var _a5;exports.UniverInstanceService=(_a5=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 _a11;return(_a11=units.get(type2))!=null?_a11: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 _a11;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),((_a11=options==null?void 0:options.makeCurrent)==null||_a11)&&this.setCurrentUnitForType(unit.getUnitId())}getTypeOfUnitDisposed$(type2){return this.unitDisposed$.pipe(rxjs.filter(unit=>unit.type===type2))}getUnit(id,type2){var _a11;const unit=(_a11=this._getUnitById(id))==null?void 0:_a11[0];return type2&&(unit==null?void 0:unit.type)!==type2?null:unit}getCurrentUniverDocInstance(){return this.getCurrentUnitForType(R.UNIVER_DOC)}getUniverDocInstance(unitId){return this.getUnit(unitId,R.UNIVER_DOC)}getUniverSheetInstance(unitId){return this.getUnit(unitId,R.UNIVER_SHEET)}getAllUnitsForType(type2){var _a11;return(_a11=this._unitsByType.get(type2))!=null?_a11:[]}changeDoc(unitId,doc){const allDocs=this.getAllUnitsForType(R.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 _a11;const id=this._focused$.getValue();return id?(_a11=this._getUnitById(id))==null?void 0:_a11[0]:null}focusUnit(id){this._focused$.next(id),this.focused instanceof exports.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]:R.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 _a11;((_a11=this.focused)==null?void 0:_a11.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(_a5,"UniverInstanceService"),_a5);exports.UniverInstanceService=__decorateClass$4([__decorateParam$4(0,Inject(Injector)),__decorateParam$4(1,IContextService)],exports.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"};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$3=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$3"),_a6;exports.LifecycleService=(_a6=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(this._lock)throw new Error("[LifecycleService]: cannot set new stage when related logic is all handled!");if(stage<this.stage)throw new Error("[LifecycleService]: lifecycle stage cannot go backward!");stage!==this.stage&&(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(_a6,"LifecycleService"),_a6);exports.LifecycleService=__decorateClass$3([__decorateParam$3(0,ILogService)],exports.LifecycleService);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 ILocalStorageService=createIdentifier("ILocalStorageService"),_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 _a11;this._locales=Tools.deepMerge((_a11=this._locales)!=null?_a11:{},locales)}setLocale(locale){this._currentLocale$.next(locale),this.localeChanged$.next()}getLocales(){var _a11;return(_a11=this._locales)==null?void 0:_a11[this._currentLocale]}getCurrentLocale(){return this._currentLocale}resolveKeyPath(obj,keys){const currentKey=keys.shift();if(currentKey&&obj&¤tKey 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"),_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 _a11;const subject=(_a11=this._permissionPointMap)==null?void 0:_a11.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 _a11;const subject=(_a11=this._permissionPointMap)==null?void 0:_a11.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 DependentOnSymbol=Symbol("DependentOn"),_Plugin=class _Plugin extends Disposable{onStarting(){}onReady(){}onRendered(){}onSteady(){}getUniverInstanceType(){return this.constructor.type}getPluginName(){return this.constructor.pluginName}};__name(_Plugin,"Plugin"),__publicField(_Plugin,"pluginName"),__publicField(_Plugin,"type",R.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$2=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$2");const INIT_LAZY_PLUGINS_TIMEOUT=4;function DependentOn(...plugins){return function(target){target[DependentOnSymbol]=plugins}}__name(DependentOn,"DependentOn");var _a7;exports.PluginService=(_a7=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._pluginHoldersForTypes.set(R.UNIVER_UNKNOWN,this._pluginHolderForUniver),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===R.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===R.UNRECOGNIZED)throw new Error(`[PluginService]: invalid plugin type for ${ctor.name}. Please assign a "type" to your plugin.`);if(!pluginName)throw new Error(`[PluginService]: no plugin name for ${ctor.name}. 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(_a7,"PluginService"),_a7);exports.PluginService=__decorateClass$2([__decorateParam$2(0,Inject(Injector))],exports.PluginService);var _a8;let PluginHolder=(_a8=class extends Disposable{constructor(_checkPluginRegistered,_registerPlugin,_logService,_injector,_lifecycleService){super();__publicField(this,"_started",!1);__publicField(this,"_warnedAboutOnStartingDeprecation",!1);__publicField(this,"_pluginRegistry",new PluginRegistry);__publicField(this,"_pluginStore",new PluginStore);__publicField(this,"_pluginsInBatches",[]);this._checkPluginRegistered=_checkPluginRegistered,this._registerPlugin=_registerPlugin,this._logService=_logService,this._injector=_injector,this._lifecycleService=_lifecycleService,this.disposeWithMe(this._lifecycleService.lifecycle$.pipe(rxjs.skip(1)).subscribe(stage=>{this._pluginsInBatches.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._pluginsInBatches.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),this._logService.debug("[PluginService]",`Plugin "${pluginInstance.getPluginName()}" registered.`),pluginInstance}_pluginsRunLifecycle(plugins){getLifecycleStagesAndBefore(this._lifecycleService.stage).subscribe(stage=>this._runStage(plugins,stage)),this._pluginsInBatches.push(plugins)}_runStage(plugins,stage){plugins.forEach(p=>{switch(stage){case LifecycleStages.Starting:p.onStarting();break;case LifecycleStages.Ready:p.onReady();break;case LifecycleStages.Rendered:p.onRendered();break;case LifecycleStages.Steady:p.onSteady();break}})}},__name(_a8,"PluginHolder"),_a8);PluginHolder=__decorateClass$2([__decorateParam$2(2,ILogService),__decorateParam$2(3,Inject(Injector)),__decorateParam$2(4,Inject(exports.LifecycleService))],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 IResourceLoaderService=createIdentifier("resource-loader-service"),_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 _a11;const data=(_a11=resources==null?void 0:resources.find(resource=>resource.name===hook.pluginName))==null?void 0:_a11.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 _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$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"),__decorateParam$1=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$1");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}};var _a9;exports.LocalUndoRedoService=(_a9=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 _a11,_b2;const unitID=this._getFocusedUnitId(),undos=unitID&&((_a11=this._undoStacks.get(unitID))==null?void 0:_a11.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 _a11,_b2,_c,_d;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=(_a11=this._univerInstanceService.getFocusedUnit())==null?void 0:_a11.getUnitId())!=null?_b2:"":unitID=(_d=(_c=this._univerInstanceService.getFocusedUnit())==null?void 0:_c.getUnitId())!=null?_d:"",unitID}},__name(_a9,"LocalUndoRedoService"),_a9);exports.LocalUndoRedoService=__decorateClass$1([__decorateParam$1(0,IUniverInstanceService),__decorateParam$1(1,ICommandService),__decorateParam$1(2,IContextService)],exports.LocalUndoRedoService);function nameCharacterCheck(name){return!(name.length===0||name.length>31||name.startsWith("'")||name.endsWith("'")||/[:\\\/\?\*\[\]]/.test(name))}__name(nameCharacterCheck,"nameCharacterCheck");function awaitTime(ms){return new Promise(resolve=>setTimeout(resolve,ms))}__name(awaitTime,"awaitTime");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&¤t.sheetId===oldRange.sheetId&&Rectangle.equals(oldRange.range,current.range)}),"isUnitRangesEqual"),skipParseTagNames=["script","style","meta","comment","link"];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||{}),DataValidationRenderMode=(DataValidationRenderMode2=>(DataValidationRenderMode2[DataValidationRenderMode2.TEXT=0]="TEXT",DataValidationRenderMode2[DataValidationRenderMode2.ARROW=1]="ARROW",DataValidationRenderMode2[DataValidationRenderMode2.CUSTOM=2]="CUSTOM",DataValidationRenderMode2))(DataValidationRenderMode||{}),DataValidationStatus=(DataValidationStatus2=>(DataValidationStatus2.VALID="valid",DataValidationStatus2.INVALID="invalid",DataValidationStatus2.VALIDATING="validating",DataValidationStatus2))(DataValidationStatus||{}),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||{});function quickselect(arr,k,left=0,right=arr.length-1,compare=defaultCompare){for(;right>left;){if(right-left>600){const n=right-left+1,m=k-left+1,z=Math.log(n),s=.5*Math.exp(2*z/3),sd=.5*Math.sqrt(z*s*(n-s)/n)*(m-n/2<0?-1:1),newLeft=Math.max(left,Math.floor(k-m*s/n+sd)),newRight=Math.min(right,Math.floor(k+(n-m)*s/n+sd));quickselect(arr,k,newLeft,newRight,compare)}const t=arr[k];let i=left,j=right;for(swap(arr,left,k),compare(arr[right],t)>0&&swap(arr,left,right);i<j;){for(swap(arr,i,j),i++,j--;compare(arr[i],t)<0;)i++;for(;compare(arr[j],t)>0;)j--}compare(arr[left],t)===0?swap(arr,left,j):(j++,swap(arr,j,right)),j<=k&&(left=j+1),k<=j&&(right=j-1)}}__name(quickselect,"quickselect");function swap(arr,i,j){const tmp=arr[i];arr[i]=arr[j],arr[j]=tmp}__name(swap,"swap");function defaultCompare(a,b){return a<b?-1:a>b?1:0}__name(defaultCompare,"defaultCompare");const _RBush=class _RBush{constructor(maxEntries=9){this._maxEntries=Math.max(4,maxEntries),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(bbox){let node=this.data;const result=[];if(!intersects(bbox,node))return result;const toBBox=this.toBBox,nodesToSearch=[];for(;node;){for(let i=0;i<node.children.length;i++){const child=node.children[i],childBBox=node.leaf?toBBox(child):child;intersects(bbox,childBBox)&&(node.leaf?result.push(child):contains(bbox,childBBox)?this._all(child,result):nodesToSearch.push(child))}node=nodesToSearch.pop()}return result}collides(bbox){let node=this.data;if(!intersects(bbox,node))return!1;const nodesToSearch=[];for(;node;){for(let i=0;i<node.children.length;i++){const child=node.children[i],childBBox=node.leaf?this.toBBox(child):child;if(intersects(bbox,childBBox)){if(node.leaf||contains(bbox,childBBox))return!0;nodesToSearch.push(child)}}node=nodesToSearch.pop()}return!1}load(data){if(!(data&&data.length))return this;if(data.length<this._minEntries){for(let i=0;i<data.length;i++)this.insert(data[i]);return this}let node=this._build(data.slice(),0,data.length-1,0);if(!this.data.children.length)this.data=node;else if(this.data.height===node.height)this._splitRoot(this.data,node);else{if(this.data.height<node.height){const tmpNode=this.data;this.data=node,node=tmpNode}this._insert(node,this.data.height-node.height-1,!0)}return this}insert(item){return item&&this._insert(item,this.data.height-1),this}clear(){return this.data=createNode([]),this}remove(item,equalsFn){if(!item)return this;let node=this.data;const bbox=this.toBBox(item),path=[],indexes=[];let i,parent,goingUp;for(;node||path.length;){if(node||(node=path.pop(),parent=path[path.length-1],i=indexes.pop(),goingUp=!0),node.leaf){const index2=findItem(item,node.children,equalsFn);if(index2!==-1)return node.children.splice(index2,1),path.push(node),this._condense(path),this}!goingUp&&!node.leaf&&contains(node,bbox)?(path.push(node),indexes.push(i),i=0,parent=node,node=node.children[0]):parent?(i++,node=parent.children[i],goingUp=!1):node=null}return this}toBBox(item){return item}compareMinX(a,b){return a.minX-b.minX}compareMinY(a,b){return a.minY-b.minY}toJSON(){return this.data}fromJSON(data){return this.data=data,this}_all(node,result){const nodesToSearch=[];for(;node;)node.leaf?result.push(...node.children):nodesToSearch.push(...node.children),node=nodesToSearch.pop();return result}_build(items,left,right,height){const N=right-left+1;let M=this._maxEntries,node;if(N<=M)return node=createNode(items.slice(left,right+1)),calcBBox(node,this.toBBox),node;height||(height=Math.ceil(Math.log(N)/Math.log(M)),M=Math.ceil(N/Math.pow(M,height-1))),node=createNode([]),node.leaf=!1,node.height=height;const N2=Math.ceil(N/M),N1=N2*Math.ceil(Math.sqrt(M));multiSelect(items,left,right,N1,this.compareMinX);for(let i=left;i<=right;i+=N1){const right2=Math.min(i+N1-1,right);multiSelect(items,i,right2,N2,this.compareMinY);for(let j=i;j<=right2;j+=N2){const right3=Math.min(j+N2-1,right2);node.children.push(this._build(items,j,right3,height-1))}}return calcBBox(node,this.toBBox),node}_chooseSubtree(bbox,node,level,path){for(;path.push(node),!(node.leaf||path.length-1===level);){let minArea=1/0,minEnlargement=1/0,targetNode;for(let i=0;i<node.children.length;i++){const child=node.children[i],area=bboxArea(child),enlargement=enlargedArea(bbox,child)-area;enlargement<minEnlargement?(minEnlargement=enlargement,minArea=area<minArea?area:minArea,targetNode=child):enlargement===minEnlargement&&area<minArea&&(minArea=area,targetNode=child)}node=targetNode||node.children[0]}return node}_insert(item,level,isNode2){const bbox=isNode2?item:this.toBBox(item),insertPath=[],node=this._chooseSubtree(bbox,this.data,level,insertPath);for(node.children.push(item),extend(node,bbox);level>=0&&insertPath[level].children.length>this._maxEntries;)this._split(insertPath,level),level--;this._adjustParentBBoxes(bbox,insertPath,level)}_split(insertPath,level){const node=insertPath[level],M=node.children.length,m=this._minEntries;this._chooseSplitAxis(node,m,M);const splitIndex=this._chooseSplitIndex(node,m,M),newNode=createNode(node.children.splice(splitIndex,node.children.length-splitIndex));newNode.height=node.height,newNode.leaf=node.leaf,calcBBox(node,this.toBBox),calcBBox(newNode,this.toBBox),level?insertPath[level-1].children.push(newNode):this._splitRoot(node,newNode)}_splitRoot(node,newNode){this.data=createNode([node,newNode]),this.data.height=node.height+1,this.data.leaf=!1,calcBBox(this.data,this.toBBox)}_chooseSplitIndex(node,m,M){let index2,minOverlap=1/0,minArea=1/0;for(let i=m;i<=M-m;i++){const bbox1=distBBox(node,0,i,this.toBBox),bbox2=distBBox(node,i,M,this.toBBox),overlap=intersectionArea(bbox1,bbox2),area=bboxArea(bbox1)+bboxArea(bbox2);overlap<minOverlap?(minOverlap=overlap,index2=i,minArea=area<minArea?area:minArea):overlap===minOverlap&&area<minArea&&(minArea=area,index2=i)}return index2||M-m}_chooseSplitAxis(node,m,M){const compareMinX=node.leaf?this.compareMinX:compareNodeMinX,compareMinY=node.leaf?this.compareMinY:compareNodeMinY,xMargin=this._allDistMargin(node,m,M,compareMinX),yMargin=this._allDistMargin(node,m,M,compareMinY);xMargin<yMargin&&node.children.sort(compareMinX)}_allDistMargin(node,m,M,compare){node.children.sort(compare);const toBBox=this.toBBox,leftBBox=distBBox(node,0,m,toBBox),rightBBox=distBBox(node,M-m,M,toBBox);let margin=bboxMargin(leftBBox)+bboxMargin(rightBBox);for(let i=m;i<M-m;i++){const child=node.children[i];extend(leftBBox,node.leaf?toBBox(child):child),margin+=bboxMargin(leftBBox)}for(let i=M-m-1;i>=m;i--){const child=node.children[i];extend(rightBBox,node.leaf?toBBox(child):child),margin+=bboxMargin(rightBBox)}return margin}_adjustParentBBoxes(bbox,path,level){for(let i=level;i>=0;i--)extend(path[i],bbox)}_condense(path){for(let i=path.length-1,siblings;i>=0;i--)path[i].children.length===0?i>0?(siblings=path[i-1].children,siblings.splice(siblings.indexOf(path[i]),1)):this.clear():calcBBox(path[i],this.toBBox)}};__name(_RBush,"RBush");let RBush=_RBush;function findItem(item,items,equalsFn){if(!equalsFn)return items.indexOf(item);for(let i=0;i<items.length;i++)if(equalsFn(item,items[i]))return i;return-1}__name(findItem,"findItem");function calcBBox(node,toBBox){distBBox(node,0,node.children.length,toBBox,node)}__name(calcBBox,"calcBBox");function distBBox(node,k,p,toBBox,destNode){destNode||(destNode=createNode(null)),destNode.minX=1/0,destNode.minY=1/0,destNode.maxX=-1/0,destNode.maxY=-1/0;for(let i=k;i<p;i++){const child=node.children[i];extend(destNode,node.leaf?toBBox(child):child)}return destNode}__name(distBBox,"distBBox");function extend(a,b){return a.minX=Math.min(a.minX,b.minX),a.minY=Math.min(a.minY,b.minY),a.maxX=Math.max(a.maxX,b.maxX),a.maxY=Math.max(a.maxY,b.maxY),a}__name(extend,"extend");function compareNodeMinX(a,b){return a.minX-b.minX}__name(compareNodeMinX,"compareNodeMinX");function compareNodeMinY(a,b){return a.minY-b.minY}__name(compareNodeMinY,"compareNodeMinY");function bboxArea(a){return(a.maxX-a.minX)*(a.maxY-a.minY)}__name(bboxArea,"bboxArea");function bboxMargin(a){return a.maxX-a.minX+(a.maxY-a.minY)}__name(bboxMargin,"bboxMargin");function enlargedArea(a,b){return(Math.max(b.maxX,a.maxX)-Math.min(b.minX,a.minX))*(Math.max(b.maxY,a.maxY)-Math.min(b.minY,a.minY))}__name(enlargedArea,"enlargedArea");function intersectionArea(a,b){const minX=Math.max(a.minX,b.minX),minY=Math.max(a.minY,b.minY),maxX=Math.min(a.maxX,b.maxX),maxY=Math.min(a.maxY,b.maxY);return Math.max(0,maxX-minX)*Math.max(0,maxY-minY)}__name(intersectionArea,"intersectionArea");function contains(a,b){return a.minX<=b.minX&&a.minY<=b.minY&&b.maxX<=a.maxX&&b.maxY<=a.maxY}__name(contains,"contains");function intersects(a,b){return b.minX<=a.maxX&&b.minY<=a.maxY&&b.maxX>=a.minX&&b.maxY>=a.minY}__name(intersects,"intersects");function createNode(children){return{children,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}__name(createNode,"createNode");function multiSelect(arr,left,right,n,compare){const stack=[left,right];for(;stack.length;){if(right=stack.pop(),left=stack.pop(),right-left<=n)continue;const mid=left+Math.ceil((right-left)/n/2)*n;quickselect(arr,mid,left,right,compare),stack.push(left,mid,mid,right)}}__name(multiSelect,"multiSelect");const _RTree=class _RTree{constructor(){__publicField(this,"_tree",new Map)}dispose(){this.clear()}getTree(unitId,subUnitId){return this._tree.has(unitId)||this._tree.set(unitId,new Map),this._tree.get(unitId).has(subUnitId)||this._tree.get(unitId).set(subUnitId,new RBush),this._tree.get(unitId).get(subUnitId)}insert(item){const{unitId,sheetId:subUnitId,range,id}=item;if(!unitId||unitId.length===0)return;const tree=this.getTree(unitId,subUnitId);let{startRow:rangeStartRow,endRow:rangeEndRow,startColumn:rangeStartColumn,endColumn:rangeEndColumn}=range;Number.isNaN(rangeStartRow)&&(rangeStartRow=0),Number.isNaN(rangeStartColumn)&&(rangeStartColumn=0),Number.isNaN(rangeEndRow)&&(rangeEndRow=Number.POSITIVE_INFINITY),Number.isNaN(rangeEndColumn)&&(rangeEndColumn=Number.POSITIVE_INFINITY),tree.insert({minX:rangeStartColumn,minY:rangeStartRow,maxX:rangeEndColumn,maxY:rangeEndRow,id})}bulkInsert(items){for(const item of items)this.insert(item)}search(search){var _a11;const{unitId,sheetId:subUnitId,range}=search,tree=(_a11=this._tree.get(unitId))==null?void 0:_a11.get(subUnitId);return tree?tree.search({minX:range.startColumn,minY:range.startRow,maxX:range.endColumn,maxY:range.endRow}):[]}bulkSearch(searchList){const result=new Map;for(const search of searchList){const items=this.search(search);for(const item of items)result.set(item.id,item)}return result}removeById(unitId,subUnitId){var _a11;subUnitId?(_a11=this._tree.get(unitId))==null||_a11.delete(subUnitId):this._tree.delete(unitId)}remove(search){const{unitId,sheetId:subUnitId,range,id}=search;this.getTree(unitId,subUnitId).remove({minX:range.startColumn,minY:range.startRow,maxX:range.endColumn,maxY:range.endRow,id})}bulkRemove(searchList){for(const search of searchList)this.remove(search)}clear(){this._tree.clear()}toJSON(){const result={};return this._tree.forEach((subTree,unitId)=>{result[unitId]={},subTree.forEach((tree,subUnitId)=>{result[unitId][subUnitId]=tree.toJSON()})}),result}fromJSON(data){this._tree.clear();for(const unitId in data){this._tree.set(unitId,new Map);for(const subUnitId in data[unitId]){const tree=new RBush;tree.fromJSON(data[unitId][subUnitId]),this._tree.get(unitId).set(subUnitId,tree)}}}};__name(_RTree,"RTree");let RTree=_RTree;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"),_a10;let ResourceLoaderService=(_a10=class extends Disposable{constructor(_resourceManagerService,_univerInstanceService){super(),this._resourceManagerService=_resourceManagerService,this._univerInstanceService=_univerInstanceService,this._init()}_init(){const handleHookAdd=__name(hook=>{hook.businesses.forEach(business=>{switch(business){case R.UNRECOGNIZED:case R.UNIVER_UNKNOWN:case R.UNIVER_SLIDE:case R.UNIVER_DOC:{this._univerInstanceService.getAllUnitsForType(R.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 R.UNIVER_SHEET:this._univerInstanceService.getAllUnitsForType(R.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$(R.UNIVER_SHEET).subscribe(workbook=>{this._resourceManagerService.loadResources(workbook.getUnitId(),workbook.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(R.UNIVER_DOC).subscribe(doc=>{const unitId=doc.getUnitId();isInternalEditorID(unitId)||this._resourceManagerService.loadResources(doc.getUnitId(),doc.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(R.UNIVER_SHEET).subscribe(workbook=>{this._resourceManagerService.unloadResources(workbook.getUnitId())})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(R.UNIVER_DOC).subscribe(doc=>{this._resourceManagerService.unloadResources(doc.getUnitId())}))}saveUnit(unitId){const unit=this._univerInstanceService.getUnit(unitId);if(!unit)return null;const resources=this._resourceManagerService.getResources(unitId,unit.type),snapshot=Tools.deepClone(unit.getSnapshot());return snapshot.resources=resources,snapshot}},__name(_a10,"ResourceLoaderService"),_a10);ResourceLoaderService=__decorateClass([__decorateParam(0,Inject(IResourceManagerService)),__decorateParam(1,Inject(IUniverInstanceService))],ResourceLoaderService);const _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(exports.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._injector.get(ILogService).warn("[Univer]: Univer.createUniverSheet is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(R.UNIVER_SHEET,data)}createUniverDoc(data){return this._injector.get(ILogService).warn("[Univer]: Univer.createUniverDoc is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(R.UNIVER_DOC,data)}createUniverSlide(data){return this._injector.get(ILogService).warn("[Univer]: Univer.createUniverSlide is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(R.UNIVER_SLIDE,data)}_init(injector){this._univerInstanceService.registerCtorForType(R.UNIVER_SHEET,exports.Workbook),this._univerInstanceService.registerCtorForType(R.UNIVER_DOC,DocumentDataModel),this._univerInstanceService.registerCtorForType(R.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(exports.LifecycleService).stage<LifecycleStages.Ready&&(this._injector.get(exports.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],[exports.LifecycleService],[exports.PluginService],[UserManagerService],[IUniverInstanceService,{useClass:exports.UniverInstanceService}],[IPermissionService,{useClass:PermissionService}],[ILogService,{useClass:DesktopLogService,lazy:!0}],[ICommandService,{useClass:exports.CommandService}],[IUndoRedoService,{useClass:exports.LocalUndoRedoService,lazy:!0}],[IConfigService,{useClass:ConfigService}],[IContextService,{useClass:ContextService}],[IResourceManagerService,{useClass:ResourceManagerService,lazy:!0}],[IResourceLoaderService,{useClass:ResourceLoaderService,lazy:!0}],[IAuthzIoService,{useClass:exports.AuthzIoLocalService,lazy:!0}]],override),injector=parentInjector?parentInjector.createChild(dependencies):new Injector(dependencies);return touchDependencies(injector,[[UserManagerService],[IResourceLoaderService]]),injector}__name(createUniverInjector,"createUniverInjector");installShims();exports.ABCToNumber=ABCToNumber;exports.AbsoluteRefType=AbsoluteRefType;exports.ActionIterator=ActionIterator;exports.AlignTypeH=AlignTypeH;exports.AlignTypeV=AlignTypeV;exports.ArrangeTypeEnum=ArrangeTypeEnum;exports.ArrowsAndMarkersShapes=ArrowsAndMarkersShapes;exports.AutoFillSeries=AutoFillSeries;exports.BaselineOffset=BaselineOffset;exports.BasicShapes=BasicShapes;exports.BlockType=BlockType;exports.BooleanNumber=BooleanNumber;exports.BorderStyleTypes=BorderStyleTypes;exports.BorderType=BorderType;exports.BuildTextUtils=BuildTextUtils;exports.BulletAlignment=BulletAlignment;exports.COLORS=COLORS;exports.CellValueType=CellValueType;exports.Color=Color;exports.ColorBuilder=ColorBuilder;exports.ColorKit=ColorKit;exports.ColorType=ColorType;exports.ColumnSeparatorType=ColumnSeparatorType;exports.CommandType=CommandType;exports.CommonHideTypes=CommonHideTypes;exports.ConfigService=ConfigService;exports.ContextService=ContextService;exports.CopyPasteType=CopyPasteType;exports.CustomCommandExecutionError=CustomCommandExecutionError;exports.CustomDecorationType=CustomDecorationType;exports.CustomRangeType=CustomRangeType;exports.DEFAULT_CELL=DEFAULT_CELL;exports.DEFAULT_DOC=DEFAULT_DOC;exports.DEFAULT_DOCUMENT_SUB_COMPONENT_ID=DEFAULT_DOCUMENT_SUB_COMPONENT_ID;exports.DEFAULT_EMPTY_DOCUMENT_VALUE=DEFAULT_EMPTY_DOCUMENT_VALUE;exports.DEFAULT_RANGE=DEFAULT_RANGE;exports.DEFAULT_RANGE_ARRAY=DEFAULT_RANGE_ARRAY;exports.DEFAULT_SELECTION=DEFAULT_SELECTION;exports.DEFAULT_SLIDE=DEFAULT_SLIDE;exports.DEFAULT_STYLES=DEFAULT_STYLES;exports.DEFAULT_WORKSHEET_COLUMN_COUNT=DEFAULT_WORKSHEET_COLUMN_COUNT;exports.DEFAULT_WORKSHEET_COLUMN_COUNT_KEY=DEFAULT_WORKSHEET_COLUMN_COUNT_KEY;exports.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT=DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT;exports.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY=DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY;exports.DEFAULT_WORKSHEET_COLUMN_WIDTH=DEFAULT_WORKSHEET_COLUMN_WIDTH;exports.DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY=DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY;exports.DEFAULT_WORKSHEET_ROW_COUNT=DEFAULT_WORKSHEET_ROW_COUNT;exports.DEFAULT_WORKSHEET_ROW_COUNT_KEY=DEFAULT_WORKSHEET_ROW_COUNT_KEY;exports.DEFAULT_WORKSHEET_ROW_HEIGHT=DEFAULT_WORKSHEET_ROW_HEIGHT;exports.DEFAULT_WORKSHEET_ROW_HEIGHT_KEY=DEFAULT_WORKSHEET_ROW_HEIGHT_KEY;exports.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH=DEFAULT_WORKSHEET_ROW_TITLE_WIDTH;exports.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY=DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY;exports.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY=DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY;exports.DOCS_NORMAL_EDITOR_UNIT_ID_KEY=DOCS_NORMAL_EDITOR_UNIT_ID_KEY;exports.DOCS_ZEN_EDITOR_UNIT_ID_KEY=DOCS_ZEN_EDITOR_UNIT_ID_KEY;exports.DOC_RANGE_TYPE=DOC_RANGE_TYPE;exports.DashStyleType=DashStyleType;exports.DataStreamTreeNodeType=DataStreamTreeNodeType;exports.DataStreamTreeTokenType=DataStreamTreeTokenType;exports.DataValidationErrorStyle=DataValidationErrorStyle;exports.DataValidationImeMode=DataValidationImeMode;exports.DataValidationOperator=DataValidationOperator;exports.DataValidationRenderMode=DataValidationRenderMode;exports.DataValidationStatus=DataValidationStatus;exports.DataValidationType=DataValidationType;exports.DeleteDirection=DeleteDirection;exports.DependentOn=DependentOn;exports.DesktopLogService=DesktopLogService;exports.DeveloperMetadataVisibility=DeveloperMetadataVisibility;exports.Dimension=Dimension;exports.Direction=Direction;exports.Disposable=Disposable;exports.DisposableCollection=DisposableCollection;exports.DocStyleType=DocStyleType;exports.DocumentDataModel=DocumentDataModel;exports.DocumentFlavor=DocumentFlavor;exports.DrawingTypeEnum=DrawingTypeEnum;exports.EDITOR_ACTIVATED=EDITOR_ACTIVATED;exports.EXTENSION_NAMES=EXTENSION_NAMES;exports.ErrorService=ErrorService;exports.EventState=EventState;exports.EventSubject=EventSubject;exports.FOCUSING_COMMON_DRAWINGS=FOCUSING_COMMON_DRAWINGS;exports.FOCUSING_DOC=FOCUSING_DOC;exports.FOCUSING_EDITOR_BUT_HIDDEN=FOCUSING_EDITOR_BUT_HIDDEN;exports.FOCUSING_EDITOR_INPUT_FORMULA=FOCUSING_EDITOR_INPUT_FORMULA;exports.FOCUSING_EDITOR_STANDALONE=FOCUSING_EDITOR_STANDALONE;exports.FOCUSING_FX_BAR_EDITOR=FOCUSING_FX_BAR_EDITOR;exports.FOCUSING_SHEET=FOCUSING_SHEET;exports.FOCUSING_SLIDE=FOCUSING_SLIDE;exports.FOCUSING_UNIT=FOCUSING_UNIT;exports.FOCUSING_UNIVER_EDITOR=FOCUSING_UNIVER_EDITOR;exports.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE=FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE;exports.FORMULA_EDITOR_ACTIVATED=FORMULA_EDITOR_ACTIVATED;exports.FollowNumberWithType=FollowNumberWithType;exports.FontItalic=FontItalic;exports.FontStyleType=FontStyleType;exports.FontWeight=FontWeight;exports.FormatType=FormatType;exports.GlyphType=GlyphType;exports.GridType=GridType;exports.HLSColor=HLSColor;exports.HorizontalAlign=HorizontalAlign;exports.IAuthzIoService=IAuthzIoService;exports.ICommandService=ICommandService;exports.IConfigService=IConfigService;exports.IContextService=IContextService;exports.ILocalStorageService=ILocalStorageService;exports.ILogService=ILogService;exports.IPermissionService=IPermissionService;exports.IResourceLoaderService=IResourceLoaderService;exports.IResourceManagerService=IResourceManagerService;exports.IUndoRedoService=IUndoRedoService;exports.IUniverInstanceService=IUniverInstanceService;exports.Inject=Inject;exports.Injector=Injector;exports.InterceptorEffectEnum=InterceptorEffectEnum;exports.InterceptorManager=InterceptorManager;exports.InterpolationPointType=InterpolationPointType;exports.JSON1=index$1;exports.JSONX=JSONX;exports.LRUHelper=LRUHelper;exports.LRUMap=LRUMap;exports.LifecycleStages=LifecycleStages;exports.LocaleService=LocaleService;exports.LocaleType=LocaleType;exports.LogLevel=LogLevel;exports.MOVE_BUFFER_VALUE=MOVE_BUFFER_VALUE;exports.Many=Many;exports.MemoryCursor=MemoryCursor;exports.NamedStyleType=NamedStyleType;exports.NilCommand=NilCommand;exports.NumberUnitType=NumberUnitType;exports.ObjectMatrix=ObjectMatrix;exports.ObjectRelativeFromH=ObjectRelativeFromH;exports.ObjectRelativeFromV=ObjectRelativeFromV;exports.Optional=Optional;exports.OtherShapes=OtherShapes;exports.PRESET_LIST_TYPE=PRESET_LIST_TYPE;exports.PageElementType=PageElementType;exports.PageOrientType=PageOrientType;exports.PageType=PageType;exports.ParagraphElementType=ParagraphElementType;exports.PermissionService=PermissionService;exports.PermissionStatus=PermissionStatus;exports.Plugin=Plugin;exports.PositionedObjectLayoutType=PositionedObjectLayoutType;exports.PresetListType=PresetListType;exports.ProtectionType=ProtectionType;exports.QuickListType=QuickListType;exports.QuickListTypeMap=QuickListTypeMap;exports.RANGE_DIRECTION=RANGE_DIRECTION;exports.RANGE_TYPE=RANGE_TYPE;exports.RCDisposable=RCDisposable;exports.RGBA_PAREN=RGBA_PAREN;exports.RGB_PAREN=RGB_PAREN;exports.ROTATE_BUFFER_VALUE=ROTATE_BUFFER_VALUE;exports.RTree=RTree;exports.Range=Range;exports.Rectangle=Rectangle;exports.RediConsumer=RediConsumer;exports.RediContext=RediContext;exports.RediError=RediError;exports.RediProvider=RediProvider;exports.RedoCommand=RedoCommand;exports.RedoCommandId=RedoCommandId;exports.RefAlias=RefAlias;exports.Registry=Registry;exports.RegistryAsMap=RegistryAsMap;exports.RelativeDate=RelativeDate;exports.RelativeSlideLink=RelativeSlideLink;exports.ResourceManagerService=ResourceManagerService;exports.RgbColor=RgbColor;exports.RxDisposable=RxDisposable;exports.SectionType=SectionType;exports.Self=Self;exports.SheetTypes=SheetTypes;exports.SheetViewModel=SheetViewModel;exports.SkipSelf=SkipSelf;exports.SliceBodyType=SliceBodyType;exports.SlideDataModel=SlideDataModel;exports.SpacingRule=SpacingRule;exports.SpecialShapes=SpecialShapes;exports.Styles=Styles;exports.THEME_COLORS=THEME_COLORS;exports.TabStopAlignment=TabStopAlignment;exports.TableAlignmentType=TableAlignmentType;exports.TableCellHeightRule=TableCellHeightRule;exports.TableLayoutType=TableLayoutType;exports.TableSizeType=TableSizeType;exports.TableTextWrapType=TableTextWrapType;exports.TextDecoration=TextDecoration;exports.TextDirection=TextDirection;exports.TextDirectionType=TextDirectionType;exports.TextX=TextX;exports.TextXActionType=TextXActionType;exports.ThemeColor=ThemeColor;exports.ThemeColorType=ThemeColorType;exports.ThemeColors=ThemeColors;exports.ThemeService=ThemeService;exports.Tools=Tools;exports.UndoCommand=UndoCommand;exports.UndoCommandId=UndoCommandId;exports.UnitModel=UnitModel;exports.Univer=Univer;exports.UniverInstanceType=R;exports.UpdateDocsAttributeType=UpdateDocsAttributeType;exports.UserManagerService=UserManagerService;exports.VerticalAlign=VerticalAlign;exports.VerticalAlignmentType=VerticalAlignmentType;exports.WithDependency=WithDependency;exports.WithNew=WithNew;exports.Worksheet=Worksheet;exports.WrapStrategy=WrapStrategy;exports.WrapTextType=WrapTextType;exports.afterInitApply=afterInitApply;exports.awaitTime=awaitTime;exports.binarySearchArray=binarySearchArray;exports.bufferDebounceTime=bufferDebounceTime;exports.cellToRange=cellToRange;exports.characterSpacingControlType=characterSpacingControlType;exports.checkForSubstrings=checkForSubstrings;exports.checkIfMove=checkIfMove;exports.checkParagraphHasBullet=checkParagraphHasBullet;exports.checkParagraphHasIndent=checkParagraphHasIndent;exports.checkParagraphHasIndentByStyle=checkParagraphHasIndentByStyle;exports.codeToBlob=codeToBlob;exports.composeBody=composeBody;exports.composeInterceptors=composeInterceptors;exports.concatMatrixArray=concatMatrixArray;exports.connectDependencies=connectDependencies;exports.connectInjector=connectInjector;exports.convertBodyToHtml=convertBodyToHtml;exports.covertTextRunToHtml=covertTextRunToHtml;exports.createDefaultUser=createDefaultUser;exports.createIdentifier=createIdentifier;exports.createInterceptorKey=createInterceptorKey;exports.createInternalEditorID=createInternalEditorID;exports.createRowColIter=createRowColIter;exports.debounce=debounce;exports.dedupe=dedupe;exports.deepCompare=deepCompare;exports.deleteContent=deleteContent;exports.extractPureTextFromCell=extractPureTextFromCell;exports.forwardRef=forwardRef;exports.fromCallback=fromCallback;exports.fromEventSubject=fromEventSubject;exports.fromObservable=fromObservable;exports.generateRandomId=generateRandomId;exports.get=get;exports.getArrayLength=getArrayLength;exports.getBodySlice=getBodySlice;exports.getBodySliceHtml=getBodySliceHtml;exports.getBorderStyleType=getBorderStyleType;exports.getCellInfoInMergeData=getCellInfoInMergeData;exports.getCellValueType=getCellValueType;exports.getColorStyle=getColorStyle;exports.getCustomDecorationSlice=getCustomDecorationSlice;exports.getCustomRangeSlice=getCustomRangeSlice;exports.getDocsUpdateBody=getDocsUpdateBody;exports.getIntersectRange=getIntersectRange;exports.getOriginCellValue=getOriginCellValue;exports.getReverseDirection=getReverseDirection;exports.getWorksheetUID=getWorksheetUID;exports.groupBy=groupBy;exports.handleStyleToString=handleStyleToString;exports.hashAlgorithm=hashAlgorithm;exports.horizontalLineSegmentsSubtraction=horizontalLineSegmentsSubtraction;exports.insertMatrixArray=insertMatrixArray;exports.insertTextToContent=insertTextToContent;exports.isAsyncDependencyItem=isAsyncDependencyItem;exports.isAsyncHook=isAsyncHook;exports.isBlackColor=isBlackColor;exports.isBooleanString=isBooleanString;exports.isCellCoverable=isCellCoverable;exports.isCellV=isCellV;exports.isClassDependencyItem=isClassDependencyItem;exports.isCtor=isCtor;exports.isDisposable=isDisposable;exports.isEmptyCell=isEmptyCell;exports.isFactoryDependencyItem=isFactoryDependencyItem;exports.isFormulaId=isFormulaId;exports.isFormulaString=isFormulaString;exports.isICellData=isICellData;exports.isInternalEditorID=isInternalEditorID;exports.isNullCell=isNullCell;exports.isNumeric=isNumeric;exports.isRangesEqual=isRangesEqual;exports.isRealNum=isRealNum;exports.isSafeNumeric=isSafeNumeric;exports.isSameStyleTextRun=isSameStyleTextRun;exports.isUnitRangesEqual=isUnitRangesEqual;exports.isValidRange=isValidRange;exports.isValueDependencyItem=isValueDependencyItem;exports.isWhiteColor=isWhiteColor;exports.makeArray=makeArray;exports.makeCellRangeToRangeData=makeCellRangeToRangeData;exports.makeCellToSelection=makeCellToSelection;exports.makeCustomRangeStream=makeCustomRangeStream;exports.merge=merge$1;exports.mergeOverrideWithDependencies=mergeOverrideWithDependencies;exports.mergeSets=mergeSets;exports.mergeWith=mergeWith$1;exports.mergeWorksheetSnapshotWithDefault=mergeWorksheetSnapshotWithDefault;exports.mixinClass=mixinClass;exports.moveMatrixArray=moveMatrixArray;exports.moveRangeByOffset=moveRangeByOffset;exports.nameCharacterCheck=nameCharacterCheck;exports.normalizeBody=normalizeBody;exports.normalizeTextRuns=normalizeTextRuns;exports.numberToABC=numberToABC;exports.numberToListABC=numberToListABC;exports.numfmt=numfmt;exports.orderSearchArray=orderSearchArray;exports.queryObjectMatrix=queryObjectMatrix;exports.registerDependencies=registerDependencies;exports.remove=remove;exports.repeatStringNumTimes=repeatStringNumTimes;exports.replaceInDocumentBody=replaceInDocumentBody;exports.requestImmediateMacroTask=requestImmediateMacroTask;exports.rotate=rotate;exports.searchArray=searchArray;exports.selectionToArray=selectionToArray;exports.sequence=sequence;exports.sequenceAsync=sequenceAsync;exports.sequenceExecute=sequenceExecute;exports.sequenceExecuteAsync=sequenceExecuteAsync;exports.set=set;exports.setDependencies=setDependencies;exports.shallowEqual=shallowEqual;exports.skipParseTagNames=skipParseTagNames;exports.sliceMatrixArray=sliceMatrixArray;exports.sortRules=sortRules;exports.sortRulesByDesc=sortRulesByDesc;exports.sortRulesFactory=sortRulesFactory;exports.spliceArray=spliceArray;exports.splitIntoGrid=splitIntoGrid;exports.takeAfter=takeAfter;exports.throttle=throttle;exports.toDisposable=toDisposable;exports.touchDependencies=touchDependencies;exports.updateAttributeByDelete=updateAttributeByDelete;exports.updateAttributeByInsert=updateAttributeByInsert;exports.useDependency=useDependency;exports.useDependencyContext=useDependencyContext;exports.useDependencyContextValue=useDependencyContextValue;exports.useDependencyValue=useDependencyValue;exports.useInjector=useInjector;exports.useObservable=useObservable;exports.useUpdateBinder=useUpdateBinder;
|
|
9
|
+
`,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 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.UNSPECIFIED=0]="UNSPECIFIED",DocumentFlavor2[DocumentFlavor2.TRADITIONAL=1]="TRADITIONAL",DocumentFlavor2[DocumentFlavor2.MODERN=2]="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||{}),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}}})),"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}}})),"orderListFactory"),checkListFactory=__name((symbol,textStyle)=>new Array(9).fill(0).map((_2,i)=>({glyphFormat:` %${i+1}`,glyphSymbol:symbol,bulletAlignment:BulletAlignment.START,textStyle:{fs:16},startNumber:0,paragraphProperties:{hanging:{v:21},indentStart:{v:21*i},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("☐")},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{st,ed,ts}=textRun;if(textRun.sId===void 0&&delete textRun.sId,st===ed||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 _a11;const{textRuns}=body;if(textRuns==null)return;const newTextRuns=[],len=textRuns.length;let hasInserted=!1;const insertTextRuns2=(_a11=insertBody.textRuns)!=null?_a11:[];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],{st,ed}=textRun;if(ed<=currentIndex)newTextRuns.push(textRun);else if(currentIndex>st&¤tIndex<ed){hasInserted=!0;const firstSplitTextRun={...textRun,ed:currentIndex};newTextRuns.push(firstSplitTextRun),insertTextRuns2.length&&newTextRuns.push(...insertTextRuns2);const lastSplitTextRun={...textRun,st:currentIndex+textLength,ed:ed+textLength};newTextRuns.push(lastSplitTextRun)}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}=insertBody,paragraphIndexList=[];for(let i=0,len=paragraphs.length;i<len;i++){const paragraph=paragraphs[i],{startIndex}=paragraph;startIndex>=currentIndex&&(paragraph.startIndex+=textLength),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)}deleteReptIndex!==-1&¶graphs.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){const{textRuns}=body,startIndex=currentIndex,endIndex=currentIndex+textLength,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&&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 insertSectionBreaks(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=[],sectionBreaks=[]}=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})));const newSectionBreaks=[];for(const sectionBreak of sectionBreaks){const{startIndex}=sectionBreak;startIndex>=startOffset&&startIndex<=endOffset&&newSectionBreaks.push(Tools.deepClone(sectionBreak))}newSectionBreaks.length&&(docBody.sectionBreaks=newSectionBreaks.map(sb=>({...sb,startIndex:sb.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&¶graphs.push(...thisParagraphs.slice(thisIndex)),otherIndex<otherParagraphs.length&¶graphs.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=[],customRanges=[],customBlocks=[],customDecorations=[]}=body;return textRuns.length===0&¶graphs.length===0&&customRanges.length===0&&customBlocks.length===0&&customDecorations.length===0}__name(isUselessRetainAction,"isUselessRetainAction");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;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=Tools.deepClone(targetTextRuns),originTextRuns=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)),normalizeTextRuns(newUpdateTextRuns)}__name(transformTextRuns,"transformTextRuns");function transformCustomRanges(originCustomRanges,targetCustomRanges,transformType,coverType=UpdateDocsAttributeType.COVER){if(originCustomRanges.length===0)return Tools.deepClone(targetCustomRanges);if(coverType===UpdateDocsAttributeType.REPLACE)return transformType===1?Tools.deepClone(originCustomRanges):Tools.deepClone(targetCustomRanges);throw new Error("CustomRanges is only supported in replace mode.")}__name(transformCustomRanges,"transformCustomRanges");function transformParagraph(originParagraph,targetParagraph,transformType,coverType=UpdateDocsAttributeType.COVER){const paragraph={startIndex:targetParagraph.startIndex};if(targetParagraph.paragraphStyle){if(originParagraph.paragraphStyle==null)paragraph.paragraphStyle={...targetParagraph.paragraphStyle};else if(coverType===UpdateDocsAttributeType.REPLACE)paragraph.paragraphStyle=transformType===1?{...originParagraph.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]}}if(targetParagraph.bullet)if(originParagraph.bullet==null)paragraph.bullet={...targetParagraph.bullet};else if(coverType===UpdateDocsAttributeType.REPLACE)paragraph.bullet=transformType===1?{...originParagraph.bullet}:{...targetParagraph.bullet};else throw new Error("Bullet is only supported in replace mode.");return paragraph}__name(transformParagraph,"transformParagraph");function transformBody(thisAction,otherAction,priority=!1){const{body:thisBody,coverType:thisCoverType}=thisAction,{body:otherBody,coverType:otherCoverType}=otherAction;if(thisBody==null||thisBody.dataStream!==""||otherBody==null||otherBody.dataStream!=="")throw new Error("Data stream is not supported in retain transform.");if(thisCoverType!==otherCoverType)throw new Error("Cover type is not consistent.");const retBody={dataStream:""},{textRuns:thisTextRuns=[],paragraphs:thisParagraphs=[],customRanges:thisCustomRanges=[]}=thisBody,{textRuns:otherTextRuns=[],paragraphs:otherParagraphs=[],customRanges:otherCustomRanges=[]}=otherBody;let textRuns=[];priority?textRuns=transformTextRuns(thisTextRuns,otherTextRuns,1):textRuns=transformTextRuns(thisTextRuns,otherTextRuns,0),textRuns.length&&(retBody.textRuns=textRuns);let customRanges=[];priority?customRanges=transformCustomRanges(thisCustomRanges,otherCustomRanges,1,thisCoverType):customRanges=transformCustomRanges(thisCustomRanges,otherCustomRanges,0,thisCoverType),customRanges.length&&(retBody.customRanges=customRanges);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,thisCoverType):paragraph=transformParagraph(thisParagraph,otherParagraph,0,thisCoverType),paragraphs.push(paragraph),thisIndex++,otherIndex++}else thisStart<otherStart?thisIndex++:(paragraphs.push(Tools.deepClone(otherParagraph)),otherIndex++)}return otherIndex<otherParagraphs.length&¶graphs.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"){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)}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,body:action.body});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})}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})}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){const insertAction={t:TextXActionType.INSERT,body,len};return this.push(insertAction),this}retain(len,body,coverType){const retainAction={t:TextXActionType.RETAIN,len};return body!=null&&(retainAction.body=body),coverType!=null&&(retainAction.coverType=coverType),this.push(retainAction),this}delete(len){const deleteAction={t:TextXActionType.DELETE,len};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 _a11;subType==null||this._subTypes.has(subType.name)&&((_a11=this._subTypes.get(subType.name))==null?void 0:_a11.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 _a11;super();__publicField(this,"type",_.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((_a11=this.snapshot.title)!=null?_a11:"No Title")}getUnitId(){throw new Error("Method not implemented.")}getRev(){var _a11;return(_a11=this.snapshot.rev)!=null?_a11:1}incrementRev(){this.snapshot.rev=this.getRev()+1}setRev(rev){this.snapshot.rev=rev}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 _a11;return((_a11=this.snapshot.settings)==null?void 0:_a11.zoomRatio)||1}resetDrawing(drawings,drawingsOrder){this.snapshot.drawings=drawings,this.snapshot.drawingsOrder=drawingsOrder}getBody(){return this.snapshot.body}getSnapshot(){return this.snapshot}getBulletPresetList(){var _a11;const customLists=(_a11=this.snapshot.lists)!=null?_a11:{};return{...PRESET_LIST_TYPE,...customLists}}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,b,r}=data,{documentStyle}=this.snapshot;t!=null&&(documentStyle.marginTop=t),l!=null&&(documentStyle.marginLeft=l),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 _a11,_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=(_a11=this.snapshot.id)!=null?_a11: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 _a11;return(_a11=this.snapshot.body)==null?void 0:_a11.customRanges}getCustomDecorations(){var _a11;return(_a11=this.snapshot.body)==null?void 0:_a11.customDecorations}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)),this.headerModelMap.get(headerId).updateDocumentId(this.getUnitId())}if(footers)for(const footerId in footers){const footer=footers[footerId];this.footerModelMap.set(footerId,new _DocumentDataModel(footer)),this.footerModelMap.get(footerId).updateDocumentId(this.getUnitId())}}updateDocumentId(unitId){super.updateDocumentId(unitId),this._unitId=unitId}};__name(_DocumentDataModel,"DocumentDataModel");let DocumentDataModel=_DocumentDataModel;function isCustomRangeSplitSymbol(text){return text===DataStreamTreeTokenType.CUSTOM_RANGE_END||text===DataStreamTreeTokenType.CUSTOM_RANGE_START}__name(isCustomRangeSplitSymbol,"isCustomRangeSplitSymbol");function isIntersecting(line1Start,line1End,line2Start,line2End){return line1Start<=line2Start&&line1End>=line2Start||line1Start>=line2Start&&line1Start<=line2End}__name(isIntersecting,"isIntersecting");function shouldDeleteCustomRange(deleteStart,deleteLen,customRange,dataStream){const dataStreamSlice=dataStream.slice(customRange.startIndex+1,customRange.endIndex),start=Math.max(deleteStart-(customRange.startIndex+1),0),end=deleteStart+deleteLen-1-(customRange.startIndex+1);if(end<0)return!1;if(start===0&&end>=dataStreamSlice.length)return!0;const result=dataStreamSlice.slice(0,start)+dataStreamSlice.slice(start+deleteLen);for(let i=0,len=result.length;i<len;i++){const letter=result[i];if(!isCustomRangeSplitSymbol(letter))return!1}return!0}__name(shouldDeleteCustomRange,"shouldDeleteCustomRange");function getCustomRangesInterestsWithSelection(range,customRanges){const result=[];for(let i=0,len=customRanges.length;i<len;i++){const customRange=customRanges[i];range.collapsed?customRange.startIndex<range.startOffset&&range.startOffset<=customRange.endIndex&&result.push(customRange):isIntersecting(range.startOffset,range.endOffset-1,customRange.startIndex,customRange.endIndex)&&result.push(customRange)}return result}__name(getCustomRangesInterestsWithSelection,"getCustomRangesInterestsWithSelection");function copyCustomRange(range){return{...Tools.deepClone(range),rangeId:generateRandomId()}}__name(copyCustomRange,"copyCustomRange");function excludePointsFromRange(range,points){const newRanges=[];let start=range[0];for(const point of points)point<range[0]||point>range[1]||(start<point&&newRanges.push([start,point-1]),start=point+1);return start<=range[1]&&newRanges.push([start,range[1]]),newRanges}__name(excludePointsFromRange,"excludePointsFromRange");const switchParagraphBullet=__name(params=>{var _a11,_b2,_c;const{paragraphs:currentParagraphs,segmentId,document:docDataModel}=params;let listType=params.listType;const paragraphs=(_b2=(_a11=docDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.paragraphs)!=null?_b2:[],isAlreadyList=currentParagraphs.every(paragraph=>{var _a12;return((_a12=paragraph.bullet)==null?void 0:_a12.listType.indexOf(listType))===0});let listId=Tools.generateRandomId(6);if(currentParagraphs.length===1){const curIndex=paragraphs.indexOf(currentParagraphs[0]),prevParagraph=paragraphs[curIndex-1],nextParagraph=paragraphs[curIndex+1];prevParagraph&&prevParagraph.bullet&&prevParagraph.bullet.listType.indexOf(listType)===0?(listId=prevParagraph.bullet.listId,listType!==PresetListType.CHECK_LIST&&(listType=prevParagraph.bullet.listType)):nextParagraph&&nextParagraph.bullet&&nextParagraph.bullet.listType.indexOf(listType)===0&&(listId=nextParagraph.bullet.listId,listType!==PresetListType.CHECK_LIST&&(listType=nextParagraph.bullet.listType))}const memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX;for(const paragraph of currentParagraphs){const{startIndex,paragraphStyle={},bullet}=paragraph;textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor}),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[isAlreadyList?{paragraphStyle,startIndex:0}:{startIndex:0,paragraphStyle:{...paragraphStyle},bullet:{nestingLevel:(_c=bullet==null?void 0:bullet.nestingLevel)!=null?_c:0,textStyle:{fs:20},listType,listId}}]},coverType:UpdateDocsAttributeType.REPLACE}),memoryCursor.moveCursorTo(startIndex+1)}return textX},"switchParagraphBullet"),toggleChecklistParagraph=__name(params=>{var _a11;const{paragraphIndex,segmentId,document:docDataModel}=params,paragraphs=(_a11=docDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.paragraphs;if(paragraphs==null)return!1;const currentParagraph=paragraphs.find(p=>p.startIndex===paragraphIndex);if(!(currentParagraph!=null&¤tParagraph.bullet)||currentParagraph.bullet.listType.indexOf(PresetListType.CHECK_LIST)===-1)return!1;const memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX,{startIndex,paragraphStyle={}}=currentParagraph,listType=currentParagraph.bullet.listType===PresetListType.CHECK_LIST?PresetListType.CHECK_LIST_CHECKED:PresetListType.CHECK_LIST;return textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor}),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...currentParagraph,paragraphStyle,startIndex:0,bullet:{...currentParagraph.bullet,listType}}]},coverType:UpdateDocsAttributeType.REPLACE}),memoryCursor.moveCursorTo(startIndex+1),textX},"toggleChecklistParagraph"),setParagraphBullet=__name(params=>{var _a11,_b2;const{paragraphs:currentParagraphs,listType,segmentId,document:docDataModel}=params;if(((_a11=docDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.paragraphs)==null)return!1;const listId=Tools.generateRandomId(6),memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX;for(const paragraph of currentParagraphs){const{startIndex,paragraphStyle={},bullet}=paragraph;textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor}),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle,bullet:{nestingLevel:(_b2=bullet==null?void 0:bullet.nestingLevel)!=null?_b2:0,textStyle:(bullet==null?void 0:bullet.listType)===listType?bullet.textStyle:{fs:20},listType,listId}}]},coverType:UpdateDocsAttributeType.REPLACE}),memoryCursor.moveCursorTo(startIndex+1)}return textX},"setParagraphBullet");function hasParagraphInTable(paragraph,tables){return tables.some(table=>paragraph.startIndex>table.startIndex&¶graph.startIndex<table.endIndex)}__name(hasParagraphInTable,"hasParagraphInTable");const changeParagraphBulletNestLevel=__name(params=>{var _a11,_b2,_c;const{paragraphs:currentParagraphs,segmentId,document:docDataModel,type:type2}=params,memoryCursor=new MemoryCursor;memoryCursor.reset();const textX=new TextX,customLists=(_a11=docDataModel.getSnapshot().lists)!=null?_a11:{},tables=(_c=(_b2=docDataModel.getBody())==null?void 0:_b2.tables)!=null?_c:[],lists={...PRESET_LIST_TYPE,...customLists};for(const paragraph of currentParagraphs){const{startIndex,paragraphStyle={},bullet}=paragraph,isInTable=hasParagraphInTable(paragraph,tables);if(textX.push({t:TextXActionType.RETAIN,len:startIndex-memoryCursor.cursor}),bullet){const listType=bullet.listType;let maxLevel=lists[listType].nestingLevel.length-1;isInTable&&(maxLevel=Math.min(maxLevel,2)),textX.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{startIndex:0,paragraphStyle:{...paragraphStyle},bullet:{...bullet,nestingLevel:Math.max(Math.min(bullet.nestingLevel+type2,maxLevel),0)}}]},coverType:UpdateDocsAttributeType.REPLACE})}else textX.push({t:TextXActionType.RETAIN,len:1});memoryCursor.moveCursorTo(startIndex+1)}return textX},"changeParagraphBulletNestLevel");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 tags=[DataStreamTreeTokenType.TABLE_START,DataStreamTreeTokenType.TABLE_ROW_START,DataStreamTreeTokenType.TABLE_CELL_START,DataStreamTreeTokenType.TABLE_CELL_END,DataStreamTreeTokenType.TABLE_ROW_END,DataStreamTreeTokenType.TABLE_END,DataStreamTreeTokenType.CUSTOM_RANGE_START,DataStreamTreeTokenType.CUSTOM_RANGE_END,DataStreamTreeTokenType.CUSTOM_BLOCK],getPlainText=__name(dataStream=>{const text=dataStream.endsWith(`\r
|
|
10
|
+
`)?dataStream.slice(0,-2):dataStream;return tags.reduce((res,curr)=>res.replaceAll(curr,""),text)},"getPlainText"),isEmptyDocument=__name(dataStream=>dataStream?getPlainText(dataStream).replaceAll("\r","")==="":!0,"isEmptyDocument"),fromPlainText=__name(text=>{const dataStream=text.replace(/\n/g,"\r"),paragraphs=[],customRanges=[];let cursor2=0,newDataStream="",linkCount=0;const loopParagraph=__name((i,insertP=!0)=>{const paragraphText=dataStream.slice(cursor2,i);if(Tools.isLegalUrl(paragraphText)){const id=generateRandomId(),urlText=`${DataStreamTreeTokenType.CUSTOM_RANGE_START}${paragraphText}${DataStreamTreeTokenType.CUSTOM_RANGE_END}`,range={startIndex:cursor2+linkCount*2,endIndex:cursor2+linkCount*2+urlText.length-1,rangeId:id,rangeType:CustomRangeType.HYPERLINK,properties:{url:text}};customRanges.push(range),newDataStream+=urlText,cursor2=i+1,linkCount++,insertP&&(newDataStream+="\r",paragraphs.push({startIndex:i+linkCount*2}))}else newDataStream+=dataStream.slice(cursor2,i+1),cursor2=i+1,insertP&¶graphs.push({startIndex:i+linkCount*2})},"loopParagraph");let end=0;for(let i=0;i<dataStream.length;i++)dataStream[i]==="\r"&&(loopParagraph(i),end=i);return end!==dataStream.length-1&&loopParagraph(dataStream.length,!1),{dataStream:newDataStream,paragraphs,customRanges}},"fromPlainText");function makeSelection(startOffset,endOffset){if(typeof endOffset>"u")return{startOffset,endOffset:startOffset,collapsed:!0};if(endOffset<startOffset)throw new Error(`Cannot make a doc selection when endOffset ${endOffset} is less than startOffset ${startOffset}.`);return{startOffset,endOffset,collapsed:startOffset===endOffset}}__name(makeSelection,"makeSelection");function normalizeSelection(selection){const{startOffset,endOffset,collapsed}=selection,start=Math.min(startOffset,endOffset),end=Math.max(startOffset,endOffset);return{startOffset:start,endOffset:end,collapsed}}__name(normalizeSelection,"normalizeSelection");function getSelectionWithSymbolMax(selection,body){let{startOffset,endOffset}=normalizeSelection(selection);for(;body.dataStream[startOffset-1]===DataStreamTreeTokenType.CUSTOM_RANGE_START;)startOffset-=1;for(;body.dataStream[startOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_END;)startOffset+=1;for(;body.dataStream[endOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_END;)endOffset+=1;for(;body.dataStream[endOffset-1]===DataStreamTreeTokenType.CUSTOM_RANGE_START;)endOffset-=1;return{startOffset,endOffset}}__name(getSelectionWithSymbolMax,"getSelectionWithSymbolMax");function getDeleteSelection(selection,body,direction=DeleteDirection.LEFT){var _a11;let{startOffset,endOffset,collapsed}=normalizeSelection(selection);if(collapsed)if(direction===DeleteDirection.LEFT)for(;isCustomRangeSplitSymbol(body.dataStream[startOffset-1]);)endOffset-=1,startOffset-=1;else for(;isCustomRangeSplitSymbol(body.dataStream[startOffset]);)endOffset+=1,startOffset+=1;else{const selectionWithSymbolMax=getSelectionWithSymbolMax(selection,body);startOffset=selectionWithSymbolMax.startOffset,endOffset=selectionWithSymbolMax.endOffset}collapsed=startOffset===endOffset;const customRanges=(_a11=body.customRanges)==null?void 0:_a11.filter(range=>!range.wholeEntity||startOffset<=range.startIndex&&endOffset>range.endIndex?!1:isSegmentIntersects(startOffset,collapsed?endOffset:endOffset-1,range.startIndex,range.endIndex));return customRanges!=null&&customRanges.length&&customRanges.forEach(range=>{startOffset=Math.min(range.startIndex,startOffset),endOffset=Math.max(range.endIndex+1,endOffset)}),{...selection,startOffset,endOffset,collapsed:startOffset===endOffset}}__name(getDeleteSelection,"getDeleteSelection");function getInsertSelection(selection,body){let{startOffset,endOffset,collapsed}=normalizeSelection(selection);if(collapsed){for(;body.dataStream[endOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_END;)endOffset+=1,startOffset+=1;for(;body.dataStream[endOffset-1]===DataStreamTreeTokenType.CUSTOM_RANGE_START;)endOffset-=1,startOffset-=1;return{...selection,startOffset,endOffset,collapsed}}else return{...selection,...getSelectionWithSymbolMax(selection,body),collapsed:!1}}__name(getInsertSelection,"getInsertSelection");function getSelectionForAddCustomRange(selection,body){if(selection.startOffset===selection.endOffset)return null;const customRanges=body.customRanges;if(!customRanges)return normalizeSelection(selection);let{startOffset,endOffset}=getSelectionWithSymbolMax(selection,body);for(;isCustomRangeSplitSymbol(body.dataStream[startOffset]);){if(body.dataStream[startOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_START){const customRange=customRanges.find(range=>range.startIndex===startOffset);if(!customRange)throw new Error("No custom-range matched");if(customRange.endIndex===endOffset-1)return{startOffset,endOffset,collapsed:!1};if(customRange.endIndex<endOffset-1)break}startOffset+=1}for(;isCustomRangeSplitSymbol(body.dataStream[endOffset-1]);){if(body.dataStream[startOffset]===DataStreamTreeTokenType.CUSTOM_RANGE_END){const customRange=customRanges.find(range=>range.endIndex===endOffset-1);if(!customRange)throw new Error("No custom-range matched");if(customRange.startIndex===startOffset)return{startOffset,endOffset,collapsed:!1};if(customRange.startIndex>startOffset)break}endOffset-=1}return endOffset<=startOffset?null:{startOffset,endOffset,collapsed:!1}}__name(getSelectionForAddCustomRange,"getSelectionForAddCustomRange");function isSegmentIntersects(start,end,start2,end2){return Math.max(start,start2)<=Math.min(end,end2)}__name(isSegmentIntersects,"isSegmentIntersects");function getRetainAndDeleteFromReplace(range,segmentId="",memoryCursor,body){var _a11;const{startOffset,endOffset}=range,dos=[],textStart=startOffset-memoryCursor,textEnd=endOffset-memoryCursor,dataStream=body.dataStream,relativeCustomRanges=(_a11=body.customRanges)==null?void 0:_a11.filter(customRange=>isIntersecting(customRange.startIndex,customRange.endIndex,startOffset,endOffset-1)),toDeleteRanges=new Set(relativeCustomRanges==null?void 0:relativeCustomRanges.filter(customRange=>shouldDeleteCustomRange(startOffset,endOffset-startOffset,customRange,dataStream))),retainPoints=new Set;relativeCustomRanges==null||relativeCustomRanges.forEach(range2=>{toDeleteRanges.has(range2)||(range2.startIndex-memoryCursor>=textStart&&range2.startIndex-memoryCursor<textEnd&&range2.endIndex-memoryCursor>=textEnd&&retainPoints.add(range2.startIndex),range2.endIndex-memoryCursor>=textStart&&range2.endIndex-memoryCursor<textEnd&&range2.startIndex-memoryCursor<textStart&&retainPoints.add(range2.endIndex))}),textStart>0&&dos.push({t:TextXActionType.RETAIN,len:textStart});const sortedRetains=[...retainPoints].sort((pre,aft)=>pre-aft);let cursor2=textStart;return sortedRetains.forEach(pos=>{const len=pos-cursor2;len>0&&dos.push({t:TextXActionType.DELETE,len}),dos.push({t:TextXActionType.RETAIN,len:1}),cursor2=pos+1}),cursor2<textEnd&&(dos.push({t:TextXActionType.DELETE,len:textEnd-cursor2}),cursor2=textEnd+1),{dos,cursor:cursor2,retain:retainPoints.size}}__name(getRetainAndDeleteFromReplace,"getRetainAndDeleteFromReplace");function deleteCustomRangeTextX(accessor,params){var _a11,_b2;const{rangeId,segmentId,documentDataModel,insert,textRange}=params,range=(_b2=(_a11=documentDataModel.getSelfOrHeaderFooterModel(segmentId).getBody())==null?void 0:_a11.customRanges)==null?void 0:_b2.find(r=>r.rangeId===rangeId);if(!range)return!1;const{startIndex,endIndex}=range,textX=new TextX,len=endIndex-startIndex+1;return startIndex>0&&textX.push({t:TextXActionType.RETAIN,len:startIndex}),textX.push({t:TextXActionType.DELETE,len:1}),textRange&&textRange.index>startIndex&&textRange.index--,len-2>0&&textX.push({t:TextXActionType.RETAIN,len:len-2}),textX.push({t:TextXActionType.DELETE,len:1}),textRange&&textRange.index>endIndex&&textRange.index--,insert&&(textX.push({body:insert,t:TextXActionType.INSERT,len:insert.dataStream.length}),textRange&&textRange.index>endIndex&&(textRange.index+=insert.dataStream.length)),textX}__name(deleteCustomRangeTextX,"deleteCustomRangeTextX");function addCustomRangeTextX(param){var _a11,_b2;const{range,rangeId,rangeType,segmentId,wholeEntity,properties,body}=param,actualRange=getSelectionForAddCustomRange(range,body);if(!actualRange||!body)return!1;const{startOffset,endOffset}=actualRange,customRanges=(_a11=body.customRanges)!=null?_a11:[];let cursor2=0;const textX=new TextX,addCustomRange=__name((startIndex,endIndex,index2)=>{const relativeCustomRanges=[];for(let i=0,len=customRanges.length;i<len;i++){const customRange=customRanges[i];if(customRange.rangeType===rangeType&&Math.max(customRange.startIndex,startIndex)<=Math.min(customRange.endIndex,endIndex)&&relativeCustomRanges.push({...customRange}),customRange.startIndex>endIndex)break}const deletes=relativeCustomRanges.map(i=>[i.startIndex,i.endIndex]).flat().sort((pre,aft)=>pre-aft),range2=deletes.length?{startOffset:Math.min(deletes[0],startIndex),endOffset:Math.max(deletes[deletes.length-1]+1,endIndex+1)}:{startOffset:startIndex,endOffset:endIndex+1};range2.startOffset!==cursor2&&(textX.push({t:TextXActionType.RETAIN,len:range2.startOffset-cursor2}),cursor2=range2.startOffset),textX.push({t:TextXActionType.INSERT,body:{dataStream:DataStreamTreeTokenType.CUSTOM_RANGE_START},len:1}),deletes.forEach(index22=>{index22!==cursor2&&(textX.push({t:TextXActionType.RETAIN,len:index22-cursor2}),cursor2=index22),textX.push({t:TextXActionType.DELETE,len:1}),cursor2++}),cursor2!==range2.endOffset&&(textX.push({t:TextXActionType.RETAIN,len:range2.endOffset-cursor2}),cursor2=range2.endOffset),textX.push({t:TextXActionType.INSERT,body:{dataStream:DataStreamTreeTokenType.CUSTOM_RANGE_END,customRanges:[{rangeId:index2?`${rangeId}-${index2}`:rangeId,rangeType,startIndex:-(range2.endOffset-range2.startOffset-deletes.length+1),endIndex:0,wholeEntity,properties:{...properties}}]},len:1})},"addCustomRange"),relativeParagraphs=((_b2=body.paragraphs)!=null?_b2:[]).filter(p=>p.startIndex<endOffset&&p.startIndex>startOffset);return excludePointsFromRange([startOffset,endOffset-1],relativeParagraphs.map(p=>p.startIndex)).forEach(([start,end],i)=>addCustomRange(start,end,i)),textX}__name(addCustomRangeTextX,"addCustomRangeTextX");function getRetainAndDeleteAndExcludeLineBreak(selection,body,segmentId="",memoryCursor=0,preserveLineBreak=!0){var _a11;const{startOffset,endOffset}=getDeleteSelection(selection,body),dos=[],{paragraphs=[],dataStream}=body,textStart=startOffset-memoryCursor,textEnd=endOffset-memoryCursor,paragraphInRange=paragraphs==null?void 0:paragraphs.find(p=>p.startIndex-memoryCursor>=textStart&&p.startIndex-memoryCursor<textEnd),relativeCustomRanges=(_a11=body.customRanges)==null?void 0:_a11.filter(customRange=>isIntersecting(customRange.startIndex,customRange.endIndex,startOffset,endOffset-1)),toDeleteRanges=new Set(relativeCustomRanges==null?void 0:relativeCustomRanges.filter(customRange=>shouldDeleteCustomRange(startOffset,endOffset-startOffset,customRange,dataStream))),retainPoints=new Set;if(relativeCustomRanges==null||relativeCustomRanges.forEach(range=>{toDeleteRanges.has(range)||(range.startIndex-memoryCursor>=textStart&&range.startIndex-memoryCursor<=textEnd&&range.endIndex-memoryCursor>textEnd&&retainPoints.add(range.startIndex),range.endIndex-memoryCursor>=textStart&&range.endIndex-memoryCursor<=textEnd&&range.startIndex<textStart&&retainPoints.add(range.endIndex))}),textStart>0&&dos.push({t:TextXActionType.RETAIN,len:textStart}),preserveLineBreak&¶graphInRange&¶graphInRange.startIndex-memoryCursor>textStart){const paragraphIndex=paragraphInRange.startIndex-memoryCursor;retainPoints.add(paragraphIndex)}const sortedRetains=[...retainPoints].sort((pre,aft)=>pre-aft);let cursor2=textStart;if(sortedRetains.forEach(pos=>{const len=pos-cursor2;len>0&&dos.push({t:TextXActionType.DELETE,len}),dos.push({t:TextXActionType.RETAIN,len:1}),cursor2=pos+1}),cursor2<textEnd&&(dos.push({t:TextXActionType.DELETE,len:textEnd-cursor2}),cursor2=textEnd),!preserveLineBreak){const nextParagraph=paragraphs.find(p=>p.startIndex-memoryCursor>=textEnd);nextParagraph&&(nextParagraph.startIndex>cursor2&&(dos.push({t:TextXActionType.RETAIN,len:nextParagraph.startIndex-cursor2}),cursor2=nextParagraph.startIndex),dos.push({t:TextXActionType.RETAIN,len:1,body:{dataStream:"",paragraphs:[{...nextParagraph,startIndex:0,bullet:paragraphInRange==null?void 0:paragraphInRange.bullet}]},coverType:UpdateDocsAttributeType.REPLACE}))}return dos}__name(getRetainAndDeleteAndExcludeLineBreak,"getRetainAndDeleteAndExcludeLineBreak");const replaceSelectionTextX=__name(params=>{var _a11;const{selection,body:insertBody,doc}=params,segmentId=selection.segmentId,body=(_a11=doc.getSelfOrHeaderFooterModel(segmentId))==null?void 0:_a11.getBody();if(!body)return!1;const textX=new TextX,deleteActions=getRetainAndDeleteAndExcludeLineBreak(selection,body,segmentId);return deleteActions.length&&textX.push(...deleteActions),textX.push({t:TextXActionType.INSERT,body:insertBody,len:insertBody.dataStream.length}),textX},"replaceSelectionTextX"),_BuildTextUtils=class _BuildTextUtils{};__name(_BuildTextUtils,"BuildTextUtils"),__publicField(_BuildTextUtils,"customRange",{add:addCustomRangeTextX,delete:deleteCustomRangeTextX,copyCustomRange,getCustomRangesInterestsWithSelection,shouldDeleteCustomRange,isIntersecting}),__publicField(_BuildTextUtils,"selection",{replace:replaceSelectionTextX,makeSelection,normalizeSelection,getDeleteSelection,getInsertSelection,getDeleteActions:getRetainAndDeleteFromReplace,getDeleteExcludeLastLineBreakActions:getRetainAndDeleteAndExcludeLineBreak}),__publicField(_BuildTextUtils,"range",{isIntersects:isSegmentIntersects}),__publicField(_BuildTextUtils,"transform",{getPlainText,fromPlainText,isEmptyDocument}),__publicField(_BuildTextUtils,"paragraph",{bullet:{set:setParagraphBullet,switch:switchParagraphBullet,toggleChecklist:toggleChecklistParagraph,changeNestLevel:changeParagraphBulletNestLevel}});let BuildTextUtils=_BuildTextUtils;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 DEFAULT_DOCUMENT_SUB_COMPONENT_ID="__default_document_sub_component_id20231101__",_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 _a11,_b2;return((_a11=a.priority)!=null?_a11:0)-((_b2=b.priority)!=null?_b2:0)}),subscription.add(()=>this._sortedObservers=this._sortedObservers.filter(o=>o!==ob)),subscription}clearObservers(){this._sortedObservers.forEach(observer=>{var _a11;return(_a11=observer.complete)==null?void 0:_a11.call(observer)}),this._sortedObservers.length=0}emitEvent(event){var _a11;if(!this.closed){const state=new EventState;state.lastReturnValue=event;for(const observer of this._sortedObservers){const value=(_a11=observer.next)==null?void 0:_a11.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 IResourceManagerService=createIdentifier("core.resource-manager.service"),nameMap={[S.Editor]:"Editor",[S.Owner]:"Owner",[S.Reader]:"Reader",[S.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"),_UserManagerService=class _UserManagerService{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(_UserManagerService,"UserManagerService");let UserManagerService=_UserManagerService;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$6=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$6"),_a3;exports.AuthzIoLocalService=(_a3=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&¤tUser.userID||this._userManagerService.setCurrentUser(createDefaultUser(S.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:[_.UNIVER_SHEET,_.UNIVER_DOC,_.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){return generateRandomId(8)}async allowed(_config){return Promise.resolve([])}async batchAllowed(_config){return Promise.resolve([])}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:S.Owner,shareScope:-1,scope:{read:G.AllCollaborator,edit:G.AllCollaborator},creator:createDefaultUser(S.Owner),strategies:[{action:6,role:1},{action:16,role:1},{action:17,role:1},{action:18,role:1},{action:19,role:1},{action:33,role:1},{action:34,role:1},{action:35,role:1},{action:36,role:1},{action:37,role:1},{action:38,role:1},{action:39,role:1},{action:40,role:1}],actions:config.actions.map(a=>({action:a,allowed:this._getRole(S.Owner)||this._getRole(S.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(_a3,"AuthzIoLocalService"),_a3);exports.AuthzIoLocalService=__decorateClass$6([__decorateParam$6(0,IResourceManagerService),__decorateParam$6(1,Inject(UserManagerService))],exports.AuthzIoLocalService);const IAuthzIoService=createIdentifier("IAuthzIoIoService"),IConfigService=createIdentifier("univer.config-service"),_ConfigService=class _ConfigService{constructor(){__publicField(this,"_configChanged$",new rxjs.Subject);__publicField(this,"configChanged$",this._configChanged$.asObservable());__publicField(this,"_config",new Map)}dispose(){this._configChanged$.complete()}getConfig(id){return this._config.get(id)}setConfig(id,value,options){var _a11;const{merge:merge2=!1}=options||{};let nextValue=(_a11=this._config.get(id))!=null?_a11:{};merge2?nextValue=Tools.deepMerge(nextValue,value):nextValue=value,this._config.set(id,nextValue),this._configChanged$.next({[id]:nextValue})}deleteConfig(id){return this._config.delete(id)}subscribeConfigValue$(key){return new rxjs.Observable(observer=>{Object.prototype.hasOwnProperty.call(this._config,key)&&observer.next(this._config.get(key));const sub=this.configChanged$.pipe(rxjs.filter(c=>Object.prototype.hasOwnProperty.call(c,key))).subscribe(c=>observer.next(c[key]));return()=>sub.unsubscribe()})}};__name(_ConfigService,"ConfigService");let ConfigService=_ConfigService;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",_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 version="0.4.2";function getEmptySnapshot(unitID="",locale=LocaleType.ZH_CN,name=""){return{id:unitID,sheetOrder:[],name,appVersion:version,locale,styles:{},sheets:{},resources:[]}}__name(getEmptySnapshot,"getEmptySnapshot");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}getColumnStyle(col){var _a11;return(_a11=this._columnData[col])==null?void 0:_a11.s}setColumnStyle(col,style){const coldData=this.getColumnOrCreate(col);coldData.s=style}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}removeColumn(columnPos){delete this._columnData[columnPos]}getColumnOrCreate(columnPos){const{_columnData}=this,column=_columnData[columnPos];if(column)return column;const create={};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}getRowStyle(row){var _a11;return(_a11=this._rowData[row])==null?void 0:_a11.s}setRowStyle(row,style){const rowData=this.getRowOrCreate(row);rowData.s=style}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]}removeRow(rowPos){delete this._rowData[rowPos]}getRowOrCreate(rowPos){const{_rowData}=this,row=_rowData[rowPos];if(row)return row;const create={};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},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 _SpanModel=class _SpanModel extends Disposable{constructor(mergeData){super();__publicField(this,"_cellCache",new Map);__publicField(this,"_rowCache",new Map);__publicField(this,"_columnCache",new Map);__publicField(this,"_hasRow",!1);__publicField(this,"_hasColumn",!1);__publicField(this,"_hasAll",!1);__publicField(this,"_allIndex",-1);__publicField(this,"_mergeData");__publicField(this,"_rangeMap",new LRUMap(5e4));__publicField(this,"_skeletonCache",new LRUMap(5e4));this._init(mergeData.concat())}_init(mergeData){this._mergeData=mergeData,this._createCache(mergeData)}_clearCache(){this._cellCache.clear(),this._rowCache.clear(),this._columnCache.clear(),this._hasAll=!1,this._allIndex=-1,this._rangeMap.clear(),this._skeletonCache.clear(),this._hasColumn=!1,this._hasRow=!1}_createCache(mergeData){let index2=0;for(const range of mergeData){const{rangeType}=range;rangeType===RANGE_TYPE.ROW?this._createRowCache(range,index2):rangeType===RANGE_TYPE.COLUMN?this._createColumnCache(range,index2):rangeType===RANGE_TYPE.ALL?this._createCellAllCache(index2):this._createCellCache(range,index2),index2++}}rebuild(mergeData){this._clearCache(),this._init(mergeData.concat())}_createRowCache(range,index2){const{startRow,endRow}=range;for(let i=startRow;i<=endRow;i++)this._rowCache.set(i,index2),this._hasRow=!0}_createColumnCache(range,index2){const{startColumn,endColumn}=range;for(let i=startColumn;i<=endColumn;i++)this._columnCache.set(i,index2),this._hasColumn=!0}_createCellAllCache(index2){this._hasAll=!0,this._allIndex=index2}_createCellCache(range,index2){for(let i=range.startRow;i<=range.endRow;i++){let columnCache=this._cellCache.get(i);columnCache==null&&(columnCache=new Map,this._cellCache.set(i,columnCache));for(let j=range.startColumn;j<=range.endColumn;j++)columnCache.set(j,index2)}}add(range){this._mergeData.push(range),this._clearCache(),this._createCache(this._mergeData)}remove(row,column){const index2=this._getMergeDataIndex(row,column);index2!==-1&&(this._mergeData.splice(index2,1),this._clearCache(),this._createCache(this._mergeData))}getMergedCell(row,column){const index2=this._getMergeDataIndex(row,column);return index2!==-1?this._mergeData[index2]:null}getMergeDataIndex(row,column){return this._getMergeDataIndex(row,column)}isRowContainsMergedCell(row){return this._hasAll||!Tools.isEmptyObject(this._columnCache)?!0:this._mergeData.some(mergedCell=>mergedCell.startRow<=row&&row<=mergedCell.endRow)}isColumnContainsMergedCell(column){return this._hasAll||!Tools.isEmptyObject(this._rowCache)?!0:this._mergeData.some(mergedCell=>mergedCell.startColumn<=column&&column<=mergedCell.endColumn)}getMergedCellRange(startRow,startColumn,endRow,endColumn){const ranges=[],key=`${startRow}-${startColumn}-${endRow}-${endColumn}`;if(this._rangeMap.has(key))return this._getRangeFromCache(key);let index2=0;const indexes=[];for(const range of this._mergeData||[])Rectangle.intersects(range,{startRow,endRow,startColumn,endColumn})&&(ranges.push({...range}),indexes.push(index2)),index2++;return this._rangeMap.set(key,indexes),ranges}getMergedCellRangeForSkeleton(startRow,startColumn,endRow,endColumn){const cacheDataMerge=[],mergeData=this._mergeData,key=`${startRow}-${startColumn}-${endRow}-${endColumn}`;if(this._skeletonCache.has(key))return this._getSkeletonRangeFromCache(key);const indexes=[];for(let i=0;i<mergeData.length;i++){const{startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}=mergeData[i];for(let r=startRow;r<=endRow;r++){let isBreak=!1;for(let c=startColumn;c<=endColumn;c++)if(r>=mergeStartRow&&r<=mergeEndRow&&c>=mergeStartColumn&&c<=mergeEndColumn){cacheDataMerge.push({startRow:mergeStartRow,endRow:mergeEndRow,startColumn:mergeStartColumn,endColumn:mergeEndColumn}),indexes.push(i),isBreak=!0;break}if(isBreak)break}}return this._skeletonCache.set(key,indexes),cacheDataMerge}_getRangeFromCache(key){const indexes=this._rangeMap.get(key)||[],ranges=[];for(const index2 of indexes)ranges.push({...this._mergeData[index2]});return ranges}_getSkeletonRangeFromCache(key){const indexes=this._skeletonCache.get(key)||[],ranges=[];for(const index2 of indexes)ranges.push({...this._mergeData[index2]});return ranges}_getMergeDataIndex(row,column){var _a11;if(this._hasAll)return this._allIndex;if(this._hasRow){const rowValue=this._rowCache.get(row);if(rowValue!==void 0)return rowValue}if(this._hasColumn){const columnValue=this._columnCache.get(column);if(columnValue!==void 0)return columnValue}const cellValue=(_a11=this._cellCache.get(row))==null?void 0:_a11.get(column);return cellValue!==void 0?cellValue:-1}getMergeDataSnapshot(){return this._mergeData}dispose(){this._clearCache(),this._mergeData=[]}};__name(_SpanModel,"SpanModel");let SpanModel=_SpanModel;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,InterceptorEffectEnum.Value|InterceptorEffectEnum.Style):this.getRawCell(row,col)}getCellValueOnly(row,col){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(row,col,InterceptorEffectEnum.Value):this.getRawCell(row,col)}getCellStyleOnly(row,col){return this._cellContentInterceptor?this._cellContentInterceptor.getCell(row,col,InterceptorEffectEnum.Style):this.getRawCell(row,col)}getRowFiltered(row){var _a11,_b2;return(_b2=(_a11=this._rowFilteredInterceptor)==null?void 0:_a11.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");__publicField(this,"_spanModel");var _a11;this.unitId=unitId,this._styles=_styles,this._snapshot=mergeWorksheetSnapshotWithDefault(snapshot);const{columnData,rowData,cellData}=this._snapshot;this._sheetId=(_a11=this._snapshot.id)!=null?_a11: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),this._spanModel=new SpanModel(this._snapshot.mergeData)}__interceptViewModel(callback){callback(this._viewModel)}getSnapshot(){return this._snapshot}setMergeData(mergeData){this._snapshot.mergeData=mergeData,this.getSpanModel().rebuild(mergeData)}getSpanModel(){return this._spanModel}getColumnStyle(column,keepRaw=!1){return keepRaw?this._columnManager.getColumnStyle(column):this._styles.get(this._columnManager.getColumnStyle(column))}setColumnStyle(column,style){this._columnManager.setColumnStyle(column,style)}getRowStyle(row,keepRaw=!1){return keepRaw?this._rowManager.getRowStyle(row):this._styles.get(this._rowManager.getRowStyle(row))}setRowStyle(row,style){this._rowManager.setRowStyle(row,style)}mixinDefaultStyleToCellRaw(row,col,cellRaw,isRowStylePrecedeColumnStyle){const columnStyle=this.getColumnStyle(col),rowStyle=this.getRowStyle(row),defaultStyle=this.getDefaultCellStyleInternal();if(defaultStyle||columnStyle||rowStyle){let cellStyle=cellRaw==null?void 0:cellRaw.s;typeof cellStyle=="string"&&(cellStyle=this._styles.get(cellStyle));const s=isRowStylePrecedeColumnStyle?composeStyles(defaultStyle,columnStyle,rowStyle,cellStyle):composeStyles(defaultStyle,rowStyle,columnStyle,cellStyle);cellRaw||(cellRaw={}),cellRaw.s=s}}getDefaultCellStyle(){return this._snapshot.defaultStyle}getDefaultCellStyleInternal(){const style=this._snapshot.defaultStyle;return this._styles.get(style)}setDefaultCellStyle(style){this._snapshot.defaultStyle=style}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._spanModel.getMergeDataSnapshot()}getMergedCell(row,col){return this._spanModel.getMergedCell(row,col)}getMergedCellRange(startRow,startColumn,endRow,endColumn){return this._spanModel.getMergedCellRange(startRow,startColumn,endRow,endColumn)}isRowContainsMergedCell(row){return this._spanModel.isRowContainsMergedCell(row)}isColumnContainsMergedCell(column){return this._spanModel.isColumnContainsMergedCell(column)}getCellInfoInMergeData(row,column){const mergeRange=this.getMergedCell(row,column);let isMerged=!1,isMergedMainCell=!1,newEndRow=row,newEndColumn=column,mergeRow=row,mergeColumn=column;if(mergeRange){const{startRow:startRowMarge,endRow:endRowMarge,startColumn:startColumnMarge,endColumn:endColumnMarge}=mergeRange;row===startRowMarge&&column===startColumnMarge?(newEndRow=endRowMarge,newEndColumn=endColumnMarge,mergeRow=startRowMarge,mergeColumn=startColumnMarge,isMergedMainCell=!0):row>=startRowMarge&&row<=endRowMarge&&column>=startColumnMarge&&column<=endColumnMarge&&(newEndRow=endRowMarge,newEndColumn=endColumnMarge,mergeRow=startRowMarge,mergeColumn=startColumnMarge,isMerged=!0)}return{actualRow:row,actualColumn:column,isMergedMainCell,isMerged,endRow:newEndRow,endColumn:newEndColumn,startRow:mergeRow,startColumn:mergeColumn}}getCell(row,col){return row<0||col<0?null:this._viewModel.getCell(row,col)}getCellValueOnly(row,col){return row<0||col<0?null:this._viewModel.getCellValueOnly(row,col)}getCellStyleOnly(row,col){return row<0||col<0?null:this._viewModel.getCellStyleOnly(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._spanModel.getMergedCellRange(row,col,endRow,endCol),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)}isRowFiltered(row){return this._viewModel.getRowFiltered(row)}getRowVisible(row){return!this.isRowFiltered(row)&&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 _a11,_b2;if(!cell)return"";const richTextValue=(_b2=(_a11=cell.p)==null?void 0:_a11.body)==null?void 0:_b2.dataStream;if(richTextValue)return BuildTextUtils.transform.getPlainText(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");function getOriginCellValue(cell){if(cell===null)return"";if(cell!=null&&cell.p){const body=cell==null?void 0:cell.p.body;if(body==null)return"";const data=body.dataStream;return BuildTextUtils.transform.getPlainText(data)}return cell==null?void 0:cell.v}__name(getOriginCellValue,"getOriginCellValue");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$5=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$5");function getWorksheetUID(workbook,worksheet){return`${workbook.getUnitId()}|${worksheet.getSheetId()}`}__name(getWorksheetUID,"getWorksheetUID");var _a4;exports.Workbook=(_a4=class extends UnitModel{constructor(workbookData={},_logService){super();__publicField(this,"type",_.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()}static isIRangeType(range){return typeof range=="string"||"startRow"in range||"row"in range}dispose(){super.dispose(),this._sheetCreated$.complete(),this._sheetDisposed$.complete(),this._activeSheet$.complete(),this._name$.complete()}save(){return Tools.deepClone(this._snapshot)}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 _a11;return(_a11=this._snapshot.rev)!=null?_a11:1}incrementRev(){this._snapshot.rev=this.getRev()+1}setRev(rev){this._snapshot.rev=rev}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(_a4,"Workbook"),_a4);exports.Workbook=__decorateClass$5([__decorateParam$5(1,ILogService)],exports.Workbook);const _SlideDataModel=class _SlideDataModel extends UnitModel{constructor(snapshot){var _a11;super();__publicField(this,"type",_.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=(_a11=this._snapshot.id)!=null?_a11:Tools.generateRandomId(6),this._name$=new rxjs.BehaviorSubject(this._snapshot.title),this.name$=this._name$.asObservable()}get _activePage(){var _a11,_b2;const activePage=this._activePage$.getValue();if(!activePage){const activePageId=(_a11=this.getPageOrder())==null?void 0:_a11[0];return activePageId?(_b2=this.getPages())==null?void 0:_b2[activePageId]:null}return activePage}setName(name){var _a11;this._snapshot.title=name,this._name$.next(name),this._unitId=(_a11=this._snapshot.id)!=null?_a11:generateRandomId(6)}getRev(){return 0}incrementRev(){}setRev(_rev){}getSnapshot(){return this._snapshot}getUnitId(){return this._unitId}getPages(){var _a11;return(_a11=this._snapshot.body)==null?void 0:_a11.pages}getPageOrder(){var _a11;return(_a11=this._snapshot.body)==null?void 0:_a11.pageOrder}getPage(pageId){const pages=this.getPages();return pages==null?void 0:pages[pageId]}getElementsByPage(pageId){var _a11;return(_a11=this.getPage(pageId))==null?void 0:_a11.pageElements}getElement(pageId,elementId){var _a11;return(_a11=this.getElementsByPage(pageId))==null?void 0:_a11[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 _a11;if(!this._snapshot.body)return;this._snapshot.body.pages[page.id]=page;const activePage=this._activePage,index2=this._snapshot.body.pageOrder.indexOf((_a11=activePage==null?void 0:activePage.id)!=null?_a11:"");this._snapshot.body.pageOrder.splice(index2+1,0,page.id)}};__name(_SlideDataModel,"SlideDataModel");let SlideDataModel=_SlideDataModel;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$4=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$4");const IUniverInstanceService=createIdentifier("univer.current");var _a5;exports.UniverInstanceService=(_a5=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 _a11;return(_a11=units.get(type2))!=null?_a11: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 _a11;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),((_a11=options==null?void 0:options.makeCurrent)==null||_a11)&&this.setCurrentUnitForType(unit.getUnitId())}getTypeOfUnitDisposed$(type2){return this.unitDisposed$.pipe(rxjs.filter(unit=>unit.type===type2))}getUnit(id,type2){var _a11;const unit=(_a11=this._getUnitById(id))==null?void 0:_a11[0];return type2&&(unit==null?void 0:unit.type)!==type2?null:unit}getCurrentUniverDocInstance(){return this.getCurrentUnitForType(_.UNIVER_DOC)}getUniverDocInstance(unitId){return this.getUnit(unitId,_.UNIVER_DOC)}getUniverSheetInstance(unitId){return this.getUnit(unitId,_.UNIVER_SHEET)}getAllUnitsForType(type2){var _a11;return(_a11=this._unitsByType.get(type2))!=null?_a11:[]}changeDoc(unitId,doc){const allDocs=this.getAllUnitsForType(_.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 _a11;const id=this._focused$.getValue();return id?(_a11=this._getUnitById(id))==null?void 0:_a11[0]:null}focusUnit(id){this._focused$.next(id),this.focused instanceof exports.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]:_.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 _a11;((_a11=this.focused)==null?void 0:_a11.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(_a5,"UniverInstanceService"),_a5);exports.UniverInstanceService=__decorateClass$4([__decorateParam$4(0,Inject(Injector)),__decorateParam$4(1,IContextService)],exports.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"};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$3=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$3"),_a6;exports.LifecycleService=(_a6=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(this._lock)throw new Error("[LifecycleService]: cannot set new stage when related logic is all handled!");if(stage<this.stage)throw new Error("[LifecycleService]: lifecycle stage cannot go backward!");stage!==this.stage&&(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(_a6,"LifecycleService"),_a6);exports.LifecycleService=__decorateClass$3([__decorateParam$3(0,ILogService)],exports.LifecycleService);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 ILocalStorageService=createIdentifier("ILocalStorageService"),_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 _a11;this._locales=Tools.deepMerge((_a11=this._locales)!=null?_a11:{},locales)}setLocale(locale){this._currentLocale$.next(locale),this.localeChanged$.next()}getLocales(){var _a11;return(_a11=this._locales)==null?void 0:_a11[this._currentLocale]}getCurrentLocale(){return this._currentLocale}resolveKeyPath(obj,keys){const currentKey=keys.shift();if(currentKey&&obj&¤tKey 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"),_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());__publicField(this,"_showComponents",!0)}setShowComponents(showComponents){this._showComponents=showComponents}getShowComponents(){return this._showComponents}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 _a11;const subject=(_a11=this._permissionPointMap)==null?void 0:_a11.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 _a11;const subject=(_a11=this._permissionPointMap)==null?void 0:_a11.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 DependentOnSymbol=Symbol("DependentOn"),_Plugin=class _Plugin extends Disposable{onStarting(){}onReady(){}onRendered(){}onSteady(){}getUniverInstanceType(){return this.constructor.type}getPluginName(){return this.constructor.pluginName}};__name(_Plugin,"Plugin"),__publicField(_Plugin,"pluginName"),__publicField(_Plugin,"type",_.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$2=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$2");const INIT_LAZY_PLUGINS_TIMEOUT=4;function DependentOn(...plugins){return function(target){target[DependentOnSymbol]=plugins}}__name(DependentOn,"DependentOn");var _a7;exports.PluginService=(_a7=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._pluginHoldersForTypes.set(_.UNIVER_UNKNOWN,this._pluginHolderForUniver),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===_.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===_.UNRECOGNIZED)throw new Error(`[PluginService]: invalid plugin type for ${ctor.name}. Please assign a "type" to your plugin.`);if(!pluginName)throw new Error(`[PluginService]: no plugin name for ${ctor.name}. 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[_2,holder]of this._pluginHoldersForTypes)holder.started&&holder.flush()}},__name(_a7,"PluginService"),_a7);exports.PluginService=__decorateClass$2([__decorateParam$2(0,Inject(Injector))],exports.PluginService);var _a8;let PluginHolder=(_a8=class extends Disposable{constructor(_checkPluginRegistered,_registerPlugin,_logService,_injector,_lifecycleService){super();__publicField(this,"_started",!1);__publicField(this,"_warnedAboutOnStartingDeprecation",!1);__publicField(this,"_pluginRegistry",new PluginRegistry);__publicField(this,"_pluginStore",new PluginStore);__publicField(this,"_pluginsInBatches",[]);this._checkPluginRegistered=_checkPluginRegistered,this._registerPlugin=_registerPlugin,this._logService=_logService,this._injector=_injector,this._lifecycleService=_lifecycleService,this.disposeWithMe(this._lifecycleService.lifecycle$.pipe(rxjs.skip(1)).subscribe(stage=>{this._pluginsInBatches.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._pluginsInBatches.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),this._logService.debug("[PluginService]",`Plugin "${pluginInstance.getPluginName()}" registered.`),pluginInstance}_pluginsRunLifecycle(plugins){getLifecycleStagesAndBefore(this._lifecycleService.stage).subscribe(stage=>this._runStage(plugins,stage)),this._pluginsInBatches.push(plugins)}_runStage(plugins,stage){plugins.forEach(p=>{switch(stage){case LifecycleStages.Starting:p.onStarting();break;case LifecycleStages.Ready:p.onReady();break;case LifecycleStages.Rendered:p.onRendered();break;case LifecycleStages.Steady:p.onSteady();break}})}},__name(_a8,"PluginHolder"),_a8);PluginHolder=__decorateClass$2([__decorateParam$2(2,ILogService),__decorateParam$2(3,Inject(Injector)),__decorateParam$2(4,Inject(exports.LifecycleService))],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 IResourceLoaderService=createIdentifier("resource-loader-service"),_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 _a11;const data=(_a11=resources==null?void 0:resources.find(resource=>resource.name===hook.pluginName))==null?void 0:_a11.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 _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$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"),__decorateParam$1=__name((index2,decorator)=>(target,key)=>decorator(target,key,index2),"__decorateParam$1");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}};var _a9;exports.LocalUndoRedoService=(_a9=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 _a11,_b2;const unitID=this._getFocusedUnitId(),undos=unitID&&((_a11=this._undoStacks.get(unitID))==null?void 0:_a11.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 _a11,_b2,_c,_d;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=(_a11=this._univerInstanceService.getFocusedUnit())==null?void 0:_a11.getUnitId())!=null?_b2:"":unitID=(_d=(_c=this._univerInstanceService.getFocusedUnit())==null?void 0:_c.getUnitId())!=null?_d:"",unitID}},__name(_a9,"LocalUndoRedoService"),_a9);exports.LocalUndoRedoService=__decorateClass$1([__decorateParam$1(0,IUniverInstanceService),__decorateParam$1(1,ICommandService),__decorateParam$1(2,IContextService)],exports.LocalUndoRedoService);function nameCharacterCheck(name){return!(name.length===0||name.length>31||name.startsWith("'")||name.endsWith("'")||/[:\\\/\?\*\[\]]/.test(name))}__name(nameCharacterCheck,"nameCharacterCheck");function awaitTime(ms){return new Promise(resolve=>setTimeout(resolve,ms))}__name(awaitTime,"awaitTime");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&¤t.sheetId===oldRange.sheetId&&Rectangle.equals(oldRange.range,current.range)}),"isUnitRangesEqual"),skipParseTagNames=["script","style","meta","comment","link"];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||{}),DataValidationRenderMode=(DataValidationRenderMode2=>(DataValidationRenderMode2[DataValidationRenderMode2.TEXT=0]="TEXT",DataValidationRenderMode2[DataValidationRenderMode2.ARROW=1]="ARROW",DataValidationRenderMode2[DataValidationRenderMode2.CUSTOM=2]="CUSTOM",DataValidationRenderMode2))(DataValidationRenderMode||{}),DataValidationStatus=(DataValidationStatus2=>(DataValidationStatus2.VALID="valid",DataValidationStatus2.INVALID="invalid",DataValidationStatus2.VALIDATING="validating",DataValidationStatus2))(DataValidationStatus||{}),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.ANY="any",DataValidationType2))(DataValidationType||{});const ARRAY_TYPES=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],VERSION=1,HEADER_SIZE=8,_KDBush=class _KDBush{static from(data){if(!(data instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");const[magic,versionAndType]=new Uint8Array(data,0,2);if(magic!==219)throw new Error("Data does not appear to be in a KDBush format.");const version2=versionAndType>>4;if(version2!==VERSION)throw new Error(`Got v${version2} data when expected v${VERSION}.`);const ArrayType=ARRAY_TYPES[versionAndType&15];if(!ArrayType)throw new Error("Unrecognized array type.");const[nodeSize]=new Uint16Array(data,2,1),[numItems]=new Uint32Array(data,4,1);return new _KDBush(numItems,nodeSize,ArrayType,data)}constructor(numItems,nodeSize=64,ArrayType=Float64Array,data){if(isNaN(numItems)||numItems<0)throw new Error(`Unpexpected numItems value: ${numItems}.`);this.numItems=+numItems,this.nodeSize=Math.min(Math.max(+nodeSize,2),65535),this.ArrayType=ArrayType,this.IndexArrayType=numItems<65536?Uint16Array:Uint32Array;const arrayTypeIndex=ARRAY_TYPES.indexOf(this.ArrayType),coordsByteSize=numItems*2*this.ArrayType.BYTES_PER_ELEMENT,idsByteSize=numItems*this.IndexArrayType.BYTES_PER_ELEMENT,padCoords=(8-idsByteSize%8)%8;if(arrayTypeIndex<0)throw new Error(`Unexpected typed array class: ${ArrayType}.`);data&&data instanceof ArrayBuffer?(this.data=data,this.ids=new this.IndexArrayType(this.data,HEADER_SIZE,numItems),this.coords=new this.ArrayType(this.data,HEADER_SIZE+idsByteSize+padCoords,numItems*2),this._pos=numItems*2,this._finished=!0):(this.data=new ArrayBuffer(HEADER_SIZE+coordsByteSize+idsByteSize+padCoords),this.ids=new this.IndexArrayType(this.data,HEADER_SIZE,numItems),this.coords=new this.ArrayType(this.data,HEADER_SIZE+idsByteSize+padCoords,numItems*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(VERSION<<4)+arrayTypeIndex]),new Uint16Array(this.data,2,1)[0]=nodeSize,new Uint32Array(this.data,4,1)[0]=numItems)}add(x,y){const index2=this._pos>>1;return this.ids[index2]=index2,this.coords[this._pos++]=x,this.coords[this._pos++]=y,index2}finish(){const numAdded=this._pos>>1;if(numAdded!==this.numItems)throw new Error(`Added ${numAdded} items when expected ${this.numItems}.`);return sort(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(minX,minY,maxX,maxY){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids,coords,nodeSize}=this,stack=[0,ids.length-1,0],result=[];for(;stack.length;){const axis=stack.pop()||0,right=stack.pop()||0,left=stack.pop()||0;if(right-left<=nodeSize){for(let i=left;i<=right;i++){const x2=coords[2*i],y2=coords[2*i+1];x2>=minX&&x2<=maxX&&y2>=minY&&y2<=maxY&&result.push(ids[i])}continue}const m=left+right>>1,x=coords[2*m],y=coords[2*m+1];x>=minX&&x<=maxX&&y>=minY&&y<=maxY&&result.push(ids[m]),(axis===0?minX<=x:minY<=y)&&(stack.push(left),stack.push(m-1),stack.push(1-axis)),(axis===0?maxX>=x:maxY>=y)&&(stack.push(m+1),stack.push(right),stack.push(1-axis))}return result}within(qx,qy,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");const{ids,coords,nodeSize}=this,stack=[0,ids.length-1,0],result=[],r2=r*r;for(;stack.length;){const axis=stack.pop()||0,right=stack.pop()||0,left=stack.pop()||0;if(right-left<=nodeSize){for(let i=left;i<=right;i++)sqDist(coords[2*i],coords[2*i+1],qx,qy)<=r2&&result.push(ids[i]);continue}const m=left+right>>1,x=coords[2*m],y=coords[2*m+1];sqDist(x,y,qx,qy)<=r2&&result.push(ids[m]),(axis===0?qx-r<=x:qy-r<=y)&&(stack.push(left),stack.push(m-1),stack.push(1-axis)),(axis===0?qx+r>=x:qy+r>=y)&&(stack.push(m+1),stack.push(right),stack.push(1-axis))}return result}};__name(_KDBush,"KDBush");let KDBush=_KDBush;function sort(ids,coords,nodeSize,left,right,axis){if(right-left<=nodeSize)return;const m=left+right>>1;select(ids,coords,m,left,right,axis),sort(ids,coords,nodeSize,left,m-1,1-axis),sort(ids,coords,nodeSize,m+1,right,1-axis)}__name(sort,"sort");function select(ids,coords,k,left,right,axis){for(;right>left;){if(right-left>600){const n=right-left+1,m=k-left+1,z=Math.log(n),s=.5*Math.exp(2*z/3),sd=.5*Math.sqrt(z*s*(n-s)/n)*(m-n/2<0?-1:1),newLeft=Math.max(left,Math.floor(k-m*s/n+sd)),newRight=Math.min(right,Math.floor(k+(n-m)*s/n+sd));select(ids,coords,k,newLeft,newRight,axis)}const t=coords[2*k+axis];let i=left,j=right;for(swapItem(ids,coords,left,k),coords[2*right+axis]>t&&swapItem(ids,coords,left,right);i<j;){for(swapItem(ids,coords,i,j),i++,j--;coords[2*i+axis]<t;)i++;for(;coords[2*j+axis]>t;)j--}coords[2*left+axis]===t?swapItem(ids,coords,left,j):(j++,swapItem(ids,coords,j,right)),j<=k&&(left=j+1),k<=j&&(right=j-1)}}__name(select,"select");function swapItem(ids,coords,i,j){swap$1(ids,i,j),swap$1(coords,2*i,2*j),swap$1(coords,2*i+1,2*j+1)}__name(swapItem,"swapItem");function swap$1(arr,i,j){const tmp=arr[i];arr[i]=arr[j],arr[j]=tmp}__name(swap$1,"swap$1");function sqDist(ax,ay,bx,by){const dx=ax-bx,dy=ay-by;return dx*dx+dy*dy}__name(sqDist,"sqDist");function quickselect(arr,k,left=0,right=arr.length-1,compare=defaultCompare){for(;right>left;){if(right-left>600){const n=right-left+1,m=k-left+1,z=Math.log(n),s=.5*Math.exp(2*z/3),sd=.5*Math.sqrt(z*s*(n-s)/n)*(m-n/2<0?-1:1),newLeft=Math.max(left,Math.floor(k-m*s/n+sd)),newRight=Math.min(right,Math.floor(k+(n-m)*s/n+sd));quickselect(arr,k,newLeft,newRight,compare)}const t=arr[k];let i=left,j=right;for(swap(arr,left,k),compare(arr[right],t)>0&&swap(arr,left,right);i<j;){for(swap(arr,i,j),i++,j--;compare(arr[i],t)<0;)i++;for(;compare(arr[j],t)>0;)j--}compare(arr[left],t)===0?swap(arr,left,j):(j++,swap(arr,j,right)),j<=k&&(left=j+1),k<=j&&(right=j-1)}}__name(quickselect,"quickselect");function swap(arr,i,j){const tmp=arr[i];arr[i]=arr[j],arr[j]=tmp}__name(swap,"swap");function defaultCompare(a,b){return a<b?-1:a>b?1:0}__name(defaultCompare,"defaultCompare");const _RBush=class _RBush{constructor(maxEntries=9){this._maxEntries=Math.max(4,maxEntries),this._minEntries=Math.max(2,Math.ceil(this._maxEntries*.4)),this.clear()}all(){return this._all(this.data,[])}search(bbox){let node=this.data;const result=[];if(!intersects(bbox,node))return result;const toBBox=this.toBBox,nodesToSearch=[];for(;node;){for(let i=0;i<node.children.length;i++){const child=node.children[i],childBBox=node.leaf?toBBox(child):child;intersects(bbox,childBBox)&&(node.leaf?result.push(child):contains(bbox,childBBox)?this._all(child,result):nodesToSearch.push(child))}node=nodesToSearch.pop()}return result}collides(bbox){let node=this.data;if(!intersects(bbox,node))return!1;const nodesToSearch=[];for(;node;){for(let i=0;i<node.children.length;i++){const child=node.children[i],childBBox=node.leaf?this.toBBox(child):child;if(intersects(bbox,childBBox)){if(node.leaf||contains(bbox,childBBox))return!0;nodesToSearch.push(child)}}node=nodesToSearch.pop()}return!1}load(data){if(!(data&&data.length))return this;if(data.length<this._minEntries){for(let i=0;i<data.length;i++)this.insert(data[i]);return this}let node=this._build(data.slice(),0,data.length-1,0);if(!this.data.children.length)this.data=node;else if(this.data.height===node.height)this._splitRoot(this.data,node);else{if(this.data.height<node.height){const tmpNode=this.data;this.data=node,node=tmpNode}this._insert(node,this.data.height-node.height-1,!0)}return this}insert(item){return item&&this._insert(item,this.data.height-1),this}clear(){return this.data=createNode([]),this}remove(item,equalsFn){if(!item)return this;let node=this.data;const bbox=this.toBBox(item),path=[],indexes=[];let i,parent,goingUp;for(;node||path.length;){if(node||(node=path.pop(),parent=path[path.length-1],i=indexes.pop(),goingUp=!0),node.leaf){const index2=findItem(item,node.children,equalsFn);if(index2!==-1)return node.children.splice(index2,1),path.push(node),this._condense(path),this}!goingUp&&!node.leaf&&contains(node,bbox)?(path.push(node),indexes.push(i),i=0,parent=node,node=node.children[0]):parent?(i++,node=parent.children[i],goingUp=!1):node=null}return this}toBBox(item){return item}compareMinX(a,b){return a.minX-b.minX}compareMinY(a,b){return a.minY-b.minY}toJSON(){return this.data}fromJSON(data){return this.data=data,this}_all(node,result){const nodesToSearch=[];for(;node;)node.leaf?result.push(...node.children):nodesToSearch.push(...node.children),node=nodesToSearch.pop();return result}_build(items,left,right,height){const N=right-left+1;let M=this._maxEntries,node;if(N<=M)return node=createNode(items.slice(left,right+1)),calcBBox(node,this.toBBox),node;height||(height=Math.ceil(Math.log(N)/Math.log(M)),M=Math.ceil(N/Math.pow(M,height-1))),node=createNode([]),node.leaf=!1,node.height=height;const N2=Math.ceil(N/M),N1=N2*Math.ceil(Math.sqrt(M));multiSelect(items,left,right,N1,this.compareMinX);for(let i=left;i<=right;i+=N1){const right2=Math.min(i+N1-1,right);multiSelect(items,i,right2,N2,this.compareMinY);for(let j=i;j<=right2;j+=N2){const right3=Math.min(j+N2-1,right2);node.children.push(this._build(items,j,right3,height-1))}}return calcBBox(node,this.toBBox),node}_chooseSubtree(bbox,node,level,path){for(;path.push(node),!(node.leaf||path.length-1===level);){let minArea=1/0,minEnlargement=1/0,targetNode;for(let i=0;i<node.children.length;i++){const child=node.children[i],area=bboxArea(child),enlargement=enlargedArea(bbox,child)-area;enlargement<minEnlargement?(minEnlargement=enlargement,minArea=area<minArea?area:minArea,targetNode=child):enlargement===minEnlargement&&area<minArea&&(minArea=area,targetNode=child)}node=targetNode||node.children[0]}return node}_insert(item,level,isNode2){const bbox=isNode2?item:this.toBBox(item),insertPath=[],node=this._chooseSubtree(bbox,this.data,level,insertPath);for(node.children.push(item),extend(node,bbox);level>=0&&insertPath[level].children.length>this._maxEntries;)this._split(insertPath,level),level--;this._adjustParentBBoxes(bbox,insertPath,level)}_split(insertPath,level){const node=insertPath[level],M=node.children.length,m=this._minEntries;this._chooseSplitAxis(node,m,M);const splitIndex=this._chooseSplitIndex(node,m,M),newNode=createNode(node.children.splice(splitIndex,node.children.length-splitIndex));newNode.height=node.height,newNode.leaf=node.leaf,calcBBox(node,this.toBBox),calcBBox(newNode,this.toBBox),level?insertPath[level-1].children.push(newNode):this._splitRoot(node,newNode)}_splitRoot(node,newNode){this.data=createNode([node,newNode]),this.data.height=node.height+1,this.data.leaf=!1,calcBBox(this.data,this.toBBox)}_chooseSplitIndex(node,m,M){let index2,minOverlap=1/0,minArea=1/0;for(let i=m;i<=M-m;i++){const bbox1=distBBox(node,0,i,this.toBBox),bbox2=distBBox(node,i,M,this.toBBox),overlap=intersectionArea(bbox1,bbox2),area=bboxArea(bbox1)+bboxArea(bbox2);overlap<minOverlap?(minOverlap=overlap,index2=i,minArea=area<minArea?area:minArea):overlap===minOverlap&&area<minArea&&(minArea=area,index2=i)}return index2||M-m}_chooseSplitAxis(node,m,M){const compareMinX=node.leaf?this.compareMinX:compareNodeMinX,compareMinY=node.leaf?this.compareMinY:compareNodeMinY,xMargin=this._allDistMargin(node,m,M,compareMinX),yMargin=this._allDistMargin(node,m,M,compareMinY);xMargin<yMargin&&node.children.sort(compareMinX)}_allDistMargin(node,m,M,compare){node.children.sort(compare);const toBBox=this.toBBox,leftBBox=distBBox(node,0,m,toBBox),rightBBox=distBBox(node,M-m,M,toBBox);let margin=bboxMargin(leftBBox)+bboxMargin(rightBBox);for(let i=m;i<M-m;i++){const child=node.children[i];extend(leftBBox,node.leaf?toBBox(child):child),margin+=bboxMargin(leftBBox)}for(let i=M-m-1;i>=m;i--){const child=node.children[i];extend(rightBBox,node.leaf?toBBox(child):child),margin+=bboxMargin(rightBBox)}return margin}_adjustParentBBoxes(bbox,path,level){for(let i=level;i>=0;i--)extend(path[i],bbox)}_condense(path){for(let i=path.length-1,siblings;i>=0;i--)path[i].children.length===0?i>0?(siblings=path[i-1].children,siblings.splice(siblings.indexOf(path[i]),1)):this.clear():calcBBox(path[i],this.toBBox)}};__name(_RBush,"RBush");let RBush=_RBush;function findItem(item,items,equalsFn){if(!equalsFn)return items.indexOf(item);for(let i=0;i<items.length;i++)if(equalsFn(item,items[i]))return i;return-1}__name(findItem,"findItem");function calcBBox(node,toBBox){distBBox(node,0,node.children.length,toBBox,node)}__name(calcBBox,"calcBBox");function distBBox(node,k,p,toBBox,destNode){destNode||(destNode=createNode(null)),destNode.minX=1/0,destNode.minY=1/0,destNode.maxX=-1/0,destNode.maxY=-1/0;for(let i=k;i<p;i++){const child=node.children[i];extend(destNode,node.leaf?toBBox(child):child)}return destNode}__name(distBBox,"distBBox");function extend(a,b){return a.minX=Math.min(a.minX,b.minX),a.minY=Math.min(a.minY,b.minY),a.maxX=Math.max(a.maxX,b.maxX),a.maxY=Math.max(a.maxY,b.maxY),a}__name(extend,"extend");function compareNodeMinX(a,b){return a.minX-b.minX}__name(compareNodeMinX,"compareNodeMinX");function compareNodeMinY(a,b){return a.minY-b.minY}__name(compareNodeMinY,"compareNodeMinY");function bboxArea(a){return(a.maxX-a.minX)*(a.maxY-a.minY)}__name(bboxArea,"bboxArea");function bboxMargin(a){return a.maxX-a.minX+(a.maxY-a.minY)}__name(bboxMargin,"bboxMargin");function enlargedArea(a,b){return(Math.max(b.maxX,a.maxX)-Math.min(b.minX,a.minX))*(Math.max(b.maxY,a.maxY)-Math.min(b.minY,a.minY))}__name(enlargedArea,"enlargedArea");function intersectionArea(a,b){const minX=Math.max(a.minX,b.minX),minY=Math.max(a.minY,b.minY),maxX=Math.min(a.maxX,b.maxX),maxY=Math.min(a.maxY,b.maxY);return Math.max(0,maxX-minX)*Math.max(0,maxY-minY)}__name(intersectionArea,"intersectionArea");function contains(a,b){return a.minX<=b.minX&&a.minY<=b.minY&&b.maxX<=a.maxX&&b.maxY<=a.maxY}__name(contains,"contains");function intersects(a,b){return b.minX<=a.maxX&&b.minY<=a.maxY&&b.maxX>=a.minX&&b.maxY>=a.minY}__name(intersects,"intersects");function createNode(children){return{children,height:1,leaf:!0,minX:1/0,minY:1/0,maxX:-1/0,maxY:-1/0}}__name(createNode,"createNode");function multiSelect(arr,left,right,n,compare){const stack=[left,right];for(;stack.length;){if(right=stack.pop(),left=stack.pop(),right-left<=n)continue;const mid=left+Math.ceil((right-left)/n/2)*n;quickselect(arr,mid,left,right,compare),stack.push(left,mid,mid,right)}}__name(multiSelect,"multiSelect");const _RTree=class _RTree{constructor(_enableOneCellCache=!1){__publicField(this,"_tree",new Map);__publicField(this,"_oneCellCache",new Map);__publicField(this,"_kdTree",new Map);__publicField(this,"_kdTreeSearchState",!1);this._enableOneCellCache=_enableOneCellCache}dispose(){this.clear()}getTree(unitId,subUnitId){return this._tree.has(unitId)||this._tree.set(unitId,new Map),this._tree.get(unitId).has(subUnitId)||this._tree.get(unitId).set(subUnitId,new RBush),this._tree.get(unitId).get(subUnitId)}_getOneCellCache(unitId,subUnitId,row,column){return this._oneCellCache.has(unitId)||this._oneCellCache.set(unitId,new Map),this._oneCellCache.get(unitId).has(subUnitId)||this._oneCellCache.get(unitId).set(subUnitId,new Map),this._oneCellCache.get(unitId).get(subUnitId).has(row)||this._oneCellCache.get(unitId).get(subUnitId).set(row,new Map),this._oneCellCache.get(unitId).get(subUnitId).get(row).has(column)||this._oneCellCache.get(unitId).get(subUnitId).get(row).set(column,new Set),this._oneCellCache.get(unitId).get(subUnitId).get(row).get(column)}_removeOneCellCache(unitId,subUnitId,row,column,id){const unitCache=this._oneCellCache.get(unitId);if(!unitCache)return;const subUnitCache=unitCache.get(subUnitId);if(!subUnitCache)return;const rowCache=subUnitCache.get(row);if(!rowCache)return;const cellCache=rowCache.get(column);cellCache&&cellCache.delete(id)}_insertOneCellCache(unitId,subUnitId,row,column,id){this._getOneCellCache(unitId,subUnitId,row,column).add(id)}_getRdTreeItems(map){const items=[];for(const[y,innerMap]of map)for(const[x,ids]of innerMap)items.push({x,y,ids});return items}_searchByOneCellCache(search){var _a11;const{unitId,sheetId:subUnitId,range}=search,{startRow,startColumn,endRow,endColumn}=range,searchObject=(_a11=this._kdTree.get(unitId))==null?void 0:_a11.get(subUnitId);if(!searchObject)return[];const{tree,items}=searchObject,indexes=tree.range(startColumn,startRow,endColumn,endRow),result=[];for(const index2 of indexes){const item=items[index2];result.push(...Array.from(item.ids))}return result}openKdTree(){var _a11;this._kdTreeSearchState=!0;for(const[unitId,map1]of this._oneCellCache){this._kdTree.has(unitId)||this._kdTree.set(unitId,new Map);for(const[subUnitId,map2]of map1){const items=this._getRdTreeItems(map2),tree=new KDBush(items.length);(_a11=this._kdTree.get(unitId))==null||_a11.set(subUnitId,{tree,items});for(const item of items)tree.add(item.x,item.y);tree.finish()}}}closeKdTree(){var _a11;this._kdTreeSearchState=!1;for(const[unitId,map1]of this._oneCellCache)for(const[subUnitId,map2]of map1)(_a11=this._kdTree.get(unitId))==null||_a11.set(subUnitId,void 0)}insert(item){const{unitId,sheetId:subUnitId,range,id}=item;if(!unitId||unitId.length===0)return;let{startRow:rangeStartRow,endRow:rangeEndRow,startColumn:rangeStartColumn,endColumn:rangeEndColumn}=range;if(this._enableOneCellCache&&rangeStartRow===rangeEndRow&&rangeStartColumn===rangeEndColumn){this._insertOneCellCache(unitId,subUnitId,rangeStartRow,rangeStartColumn,id);return}const tree=this.getTree(unitId,subUnitId);Number.isNaN(rangeStartRow)&&(rangeStartRow=0),Number.isNaN(rangeStartColumn)&&(rangeStartColumn=0),Number.isNaN(rangeEndRow)&&(rangeEndRow=Number.POSITIVE_INFINITY),Number.isNaN(rangeEndColumn)&&(rangeEndColumn=Number.POSITIVE_INFINITY),tree.insert({minX:rangeStartColumn,minY:rangeStartRow,maxX:rangeEndColumn,maxY:rangeEndRow,id})}bulkInsert(items){for(const item of items)this.insert(item)}search(search){var _a11;const{unitId,sheetId:subUnitId,range}=search,results=[];if(this._enableOneCellCache&&this._enableOneCellCache){const oneCellResults=this._searchByOneCellCache(search);for(const result of oneCellResults)results.push(result)}const tree=(_a11=this._tree.get(unitId))==null?void 0:_a11.get(subUnitId);if(!tree)return results;const searchData=tree.search({minX:range.startColumn,minY:range.startRow,maxX:range.endColumn,maxY:range.endRow});for(const item of searchData)results.push(item.id);return results}bulkSearch(searchList){const result=new Set;for(const search of searchList){const items=this.search(search);for(const item of items)result.add(item)}return result}removeById(unitId,subUnitId){var _a11,_b2;subUnitId?((_a11=this._tree.get(unitId))==null||_a11.delete(subUnitId),(_b2=this._oneCellCache.get(unitId))==null||_b2.delete(subUnitId)):(this._tree.delete(unitId),this._oneCellCache.delete(unitId))}remove(search){const{unitId,sheetId:subUnitId,range,id}=search,tree=this.getTree(unitId,subUnitId);this._removeOneCellCache(unitId,subUnitId,range.startRow,range.startColumn,id),tree.remove({minX:range.startColumn,minY:range.startRow,maxX:range.endColumn,maxY:range.endRow,id})}bulkRemove(searchList){for(const search of searchList)this.remove(search)}clear(){this._tree.clear(),this._oneCellCache.clear()}toJSON(){const result={};return this._tree.forEach((subTree,unitId)=>{result[unitId]={},subTree.forEach((tree,subUnitId)=>{result[unitId][subUnitId]=tree.toJSON()})}),result}fromJSON(data){this._tree.clear();for(const unitId in data){this._tree.set(unitId,new Map);for(const subUnitId in data[unitId]){const tree=new RBush;tree.fromJSON(data[unitId][subUnitId]),this._tree.get(unitId).set(subUnitId,tree)}}}};__name(_RTree,"RTree");let RTree=_RTree;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"),_a10;let ResourceLoaderService=(_a10=class extends Disposable{constructor(_resourceManagerService,_univerInstanceService){super(),this._resourceManagerService=_resourceManagerService,this._univerInstanceService=_univerInstanceService,this._init()}_init(){const handleHookAdd=__name(hook=>{hook.businesses.forEach(business=>{switch(business){case _.UNRECOGNIZED:case _.UNIVER_UNKNOWN:case _.UNIVER_SLIDE:case _.UNIVER_DOC:{this._univerInstanceService.getAllUnitsForType(_.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 _.UNIVER_SHEET:this._univerInstanceService.getAllUnitsForType(_.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$(_.UNIVER_SHEET).subscribe(workbook=>{this._resourceManagerService.loadResources(workbook.getUnitId(),workbook.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitAdded$(_.UNIVER_DOC).subscribe(doc=>{const unitId=doc.getUnitId();isInternalEditorID(unitId)||this._resourceManagerService.loadResources(doc.getUnitId(),doc.getSnapshot().resources)})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(_.UNIVER_SHEET).subscribe(workbook=>{this._resourceManagerService.unloadResources(workbook.getUnitId())})),this.disposeWithMe(this._univerInstanceService.getTypeOfUnitDisposed$(_.UNIVER_DOC).subscribe(doc=>{this._resourceManagerService.unloadResources(doc.getUnitId())}))}saveUnit(unitId){const unit=this._univerInstanceService.getUnit(unitId);if(!unit)return null;const resources=this._resourceManagerService.getResources(unitId,unit.type),snapshot=Tools.deepClone(unit.getSnapshot());return snapshot.resources=resources,snapshot}},__name(_a10,"ResourceLoaderService"),_a10);ResourceLoaderService=__decorateClass([__decorateParam(0,Inject(IResourceManagerService)),__decorateParam(1,Inject(IUniverInstanceService))],ResourceLoaderService);const _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(exports.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._injector.get(ILogService).warn("[Univer]: Univer.createUniverSheet is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(_.UNIVER_SHEET,data)}createUniverDoc(data){return this._injector.get(ILogService).warn("[Univer]: Univer.createUniverDoc is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(_.UNIVER_DOC,data)}createUniverSlide(data){return this._injector.get(ILogService).warn("[Univer]: Univer.createUniverSlide is deprecated, use createUnit instead"),this._univerInstanceService.createUnit(_.UNIVER_SLIDE,data)}_init(injector){this._univerInstanceService.registerCtorForType(_.UNIVER_SHEET,exports.Workbook),this._univerInstanceService.registerCtorForType(_.UNIVER_DOC,DocumentDataModel),this._univerInstanceService.registerCtorForType(_.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(exports.LifecycleService).stage<LifecycleStages.Ready&&(this._injector.get(exports.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],[exports.LifecycleService],[exports.PluginService],[UserManagerService],[IUniverInstanceService,{useClass:exports.UniverInstanceService}],[IPermissionService,{useClass:PermissionService}],[ILogService,{useClass:DesktopLogService,lazy:!0}],[ICommandService,{useClass:exports.CommandService}],[IUndoRedoService,{useClass:exports.LocalUndoRedoService,lazy:!0}],[IConfigService,{useClass:ConfigService}],[IContextService,{useClass:ContextService}],[IResourceManagerService,{useClass:ResourceManagerService,lazy:!0}],[IResourceLoaderService,{useClass:ResourceLoaderService,lazy:!0}],[IAuthzIoService,{useClass:exports.AuthzIoLocalService,lazy:!0}]],override),injector=parentInjector?parentInjector.createChild(dependencies):new Injector(dependencies);return touchDependencies(injector,[[UserManagerService],[IResourceLoaderService]]),injector}__name(createUniverInjector,"createUniverInjector");installShims();exports.ABCToNumber=ABCToNumber;exports.AbsoluteRefType=AbsoluteRefType;exports.ActionIterator=ActionIterator;exports.AlignTypeH=AlignTypeH;exports.AlignTypeV=AlignTypeV;exports.ArrangeTypeEnum=ArrangeTypeEnum;exports.ArrowsAndMarkersShapes=ArrowsAndMarkersShapes;exports.AutoFillSeries=AutoFillSeries;exports.BaselineOffset=BaselineOffset;exports.BasicShapes=BasicShapes;exports.BlockType=BlockType;exports.BooleanNumber=BooleanNumber;exports.BorderStyleTypes=BorderStyleTypes;exports.BorderType=BorderType;exports.BuildTextUtils=BuildTextUtils;exports.BulletAlignment=BulletAlignment;exports.COLORS=COLORS;exports.CellValueType=CellValueType;exports.Color=Color;exports.ColorBuilder=ColorBuilder;exports.ColorKit=ColorKit;exports.ColorType=ColorType;exports.ColumnSeparatorType=ColumnSeparatorType;exports.CommandType=CommandType;exports.CommonHideTypes=CommonHideTypes;exports.ConfigService=ConfigService;exports.ContextService=ContextService;exports.CopyPasteType=CopyPasteType;exports.CustomCommandExecutionError=CustomCommandExecutionError;exports.CustomDecorationType=CustomDecorationType;exports.CustomRangeType=CustomRangeType;exports.DEFAULT_CELL=DEFAULT_CELL;exports.DEFAULT_DOC=DEFAULT_DOC;exports.DEFAULT_DOCUMENT_SUB_COMPONENT_ID=DEFAULT_DOCUMENT_SUB_COMPONENT_ID;exports.DEFAULT_EMPTY_DOCUMENT_VALUE=DEFAULT_EMPTY_DOCUMENT_VALUE;exports.DEFAULT_RANGE=DEFAULT_RANGE;exports.DEFAULT_RANGE_ARRAY=DEFAULT_RANGE_ARRAY;exports.DEFAULT_SELECTION=DEFAULT_SELECTION;exports.DEFAULT_SLIDE=DEFAULT_SLIDE;exports.DEFAULT_STYLES=DEFAULT_STYLES;exports.DEFAULT_WORKSHEET_COLUMN_COUNT=DEFAULT_WORKSHEET_COLUMN_COUNT;exports.DEFAULT_WORKSHEET_COLUMN_COUNT_KEY=DEFAULT_WORKSHEET_COLUMN_COUNT_KEY;exports.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT=DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT;exports.DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY=DEFAULT_WORKSHEET_COLUMN_TITLE_HEIGHT_KEY;exports.DEFAULT_WORKSHEET_COLUMN_WIDTH=DEFAULT_WORKSHEET_COLUMN_WIDTH;exports.DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY=DEFAULT_WORKSHEET_COLUMN_WIDTH_KEY;exports.DEFAULT_WORKSHEET_ROW_COUNT=DEFAULT_WORKSHEET_ROW_COUNT;exports.DEFAULT_WORKSHEET_ROW_COUNT_KEY=DEFAULT_WORKSHEET_ROW_COUNT_KEY;exports.DEFAULT_WORKSHEET_ROW_HEIGHT=DEFAULT_WORKSHEET_ROW_HEIGHT;exports.DEFAULT_WORKSHEET_ROW_HEIGHT_KEY=DEFAULT_WORKSHEET_ROW_HEIGHT_KEY;exports.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH=DEFAULT_WORKSHEET_ROW_TITLE_WIDTH;exports.DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY=DEFAULT_WORKSHEET_ROW_TITLE_WIDTH_KEY;exports.DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY=DOCS_FORMULA_BAR_EDITOR_UNIT_ID_KEY;exports.DOCS_NORMAL_EDITOR_UNIT_ID_KEY=DOCS_NORMAL_EDITOR_UNIT_ID_KEY;exports.DOCS_ZEN_EDITOR_UNIT_ID_KEY=DOCS_ZEN_EDITOR_UNIT_ID_KEY;exports.DOC_RANGE_TYPE=DOC_RANGE_TYPE;exports.DashStyleType=DashStyleType;exports.DataStreamTreeNodeType=DataStreamTreeNodeType;exports.DataStreamTreeTokenType=DataStreamTreeTokenType;exports.DataValidationErrorStyle=DataValidationErrorStyle;exports.DataValidationImeMode=DataValidationImeMode;exports.DataValidationOperator=DataValidationOperator;exports.DataValidationRenderMode=DataValidationRenderMode;exports.DataValidationStatus=DataValidationStatus;exports.DataValidationType=DataValidationType;exports.DeleteDirection=DeleteDirection;exports.DependentOn=DependentOn;exports.DesktopLogService=DesktopLogService;exports.DeveloperMetadataVisibility=DeveloperMetadataVisibility;exports.Dimension=Dimension;exports.Direction=Direction;exports.Disposable=Disposable;exports.DisposableCollection=DisposableCollection;exports.DocStyleType=DocStyleType;exports.DocumentDataModel=DocumentDataModel;exports.DocumentFlavor=DocumentFlavor;exports.DrawingTypeEnum=DrawingTypeEnum;exports.EDITOR_ACTIVATED=EDITOR_ACTIVATED;exports.EXTENSION_NAMES=EXTENSION_NAMES;exports.ErrorService=ErrorService;exports.EventState=EventState;exports.EventSubject=EventSubject;exports.FOCUSING_COMMON_DRAWINGS=FOCUSING_COMMON_DRAWINGS;exports.FOCUSING_DOC=FOCUSING_DOC;exports.FOCUSING_EDITOR_BUT_HIDDEN=FOCUSING_EDITOR_BUT_HIDDEN;exports.FOCUSING_EDITOR_INPUT_FORMULA=FOCUSING_EDITOR_INPUT_FORMULA;exports.FOCUSING_EDITOR_STANDALONE=FOCUSING_EDITOR_STANDALONE;exports.FOCUSING_FX_BAR_EDITOR=FOCUSING_FX_BAR_EDITOR;exports.FOCUSING_SHEET=FOCUSING_SHEET;exports.FOCUSING_SLIDE=FOCUSING_SLIDE;exports.FOCUSING_UNIT=FOCUSING_UNIT;exports.FOCUSING_UNIVER_EDITOR=FOCUSING_UNIVER_EDITOR;exports.FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE=FOCUSING_UNIVER_EDITOR_STANDALONE_SINGLE_MODE;exports.FORMULA_EDITOR_ACTIVATED=FORMULA_EDITOR_ACTIVATED;exports.FollowNumberWithType=FollowNumberWithType;exports.FontItalic=FontItalic;exports.FontStyleType=FontStyleType;exports.FontWeight=FontWeight;exports.FormatType=FormatType;exports.GlyphType=GlyphType;exports.GridType=GridType;exports.HLSColor=HLSColor;exports.HorizontalAlign=HorizontalAlign;exports.IAuthzIoService=IAuthzIoService;exports.ICommandService=ICommandService;exports.IConfigService=IConfigService;exports.IContextService=IContextService;exports.ILocalStorageService=ILocalStorageService;exports.ILogService=ILogService;exports.IPermissionService=IPermissionService;exports.IResourceLoaderService=IResourceLoaderService;exports.IResourceManagerService=IResourceManagerService;exports.IS_ROW_STYLE_PRECEDE_COLUMN_STYLE=IS_ROW_STYLE_PRECEDE_COLUMN_STYLE;exports.IUndoRedoService=IUndoRedoService;exports.IUniverInstanceService=IUniverInstanceService;exports.Inject=Inject;exports.Injector=Injector;exports.InterceptorEffectEnum=InterceptorEffectEnum;exports.InterceptorManager=InterceptorManager;exports.InterpolationPointType=InterpolationPointType;exports.JSON1=index$1;exports.JSONX=JSONX;exports.LRUHelper=LRUHelper;exports.LRUMap=LRUMap;exports.LifecycleStages=LifecycleStages;exports.LocaleService=LocaleService;exports.LocaleType=LocaleType;exports.LogLevel=LogLevel;exports.MOVE_BUFFER_VALUE=MOVE_BUFFER_VALUE;exports.Many=Many;exports.MemoryCursor=MemoryCursor;exports.NamedStyleType=NamedStyleType;exports.NilCommand=NilCommand;exports.NumberUnitType=NumberUnitType;exports.ObjectMatrix=ObjectMatrix;exports.ObjectRelativeFromH=ObjectRelativeFromH;exports.ObjectRelativeFromV=ObjectRelativeFromV;exports.Optional=Optional;exports.OtherShapes=OtherShapes;exports.PRESET_LIST_TYPE=PRESET_LIST_TYPE;exports.PageElementType=PageElementType;exports.PageOrientType=PageOrientType;exports.PageType=PageType;exports.ParagraphElementType=ParagraphElementType;exports.PermissionService=PermissionService;exports.PermissionStatus=PermissionStatus;exports.Plugin=Plugin;exports.PositionedObjectLayoutType=PositionedObjectLayoutType;exports.PresetListType=PresetListType;exports.ProtectionType=ProtectionType;exports.QuickListType=QuickListType;exports.QuickListTypeMap=QuickListTypeMap;exports.RANGE_DIRECTION=RANGE_DIRECTION;exports.RANGE_TYPE=RANGE_TYPE;exports.RCDisposable=RCDisposable;exports.RGBA_PAREN=RGBA_PAREN;exports.RGB_PAREN=RGB_PAREN;exports.ROTATE_BUFFER_VALUE=ROTATE_BUFFER_VALUE;exports.RTree=RTree;exports.Range=Range;exports.Rectangle=Rectangle;exports.RediConsumer=RediConsumer;exports.RediContext=RediContext;exports.RediError=RediError;exports.RediProvider=RediProvider;exports.RedoCommand=RedoCommand;exports.RedoCommandId=RedoCommandId;exports.RefAlias=RefAlias;exports.Registry=Registry;exports.RegistryAsMap=RegistryAsMap;exports.RelativeDate=RelativeDate;exports.RelativeSlideLink=RelativeSlideLink;exports.ResourceManagerService=ResourceManagerService;exports.RgbColor=RgbColor;exports.RxDisposable=RxDisposable;exports.SectionType=SectionType;exports.Self=Self;exports.SheetTypes=SheetTypes;exports.SheetViewModel=SheetViewModel;exports.SkipSelf=SkipSelf;exports.SliceBodyType=SliceBodyType;exports.SlideDataModel=SlideDataModel;exports.SpacingRule=SpacingRule;exports.SpecialShapes=SpecialShapes;exports.Styles=Styles;exports.THEME_COLORS=THEME_COLORS;exports.TabStopAlignment=TabStopAlignment;exports.TableAlignmentType=TableAlignmentType;exports.TableCellHeightRule=TableCellHeightRule;exports.TableLayoutType=TableLayoutType;exports.TableSizeType=TableSizeType;exports.TableTextWrapType=TableTextWrapType;exports.TextDecoration=TextDecoration;exports.TextDirection=TextDirection;exports.TextDirectionType=TextDirectionType;exports.TextX=TextX;exports.TextXActionType=TextXActionType;exports.ThemeColor=ThemeColor;exports.ThemeColorType=ThemeColorType;exports.ThemeColors=ThemeColors;exports.ThemeService=ThemeService;exports.Tools=Tools;exports.UndoCommand=UndoCommand;exports.UndoCommandId=UndoCommandId;exports.UnitModel=UnitModel;exports.Univer=Univer;exports.UniverInstanceType=_;exports.UpdateDocsAttributeType=UpdateDocsAttributeType;exports.UserManagerService=UserManagerService;exports.VerticalAlign=VerticalAlign;exports.VerticalAlignmentType=VerticalAlignmentType;exports.WithDependency=WithDependency;exports.WithNew=WithNew;exports.Worksheet=Worksheet;exports.WrapStrategy=WrapStrategy;exports.WrapTextType=WrapTextType;exports.afterInitApply=afterInitApply;exports.awaitTime=awaitTime;exports.binarySearchArray=binarySearchArray;exports.bufferDebounceTime=bufferDebounceTime;exports.cellToRange=cellToRange;exports.characterSpacingControlType=characterSpacingControlType;exports.checkForSubstrings=checkForSubstrings;exports.checkIfMove=checkIfMove;exports.checkParagraphHasBullet=checkParagraphHasBullet;exports.checkParagraphHasIndent=checkParagraphHasIndent;exports.checkParagraphHasIndentByStyle=checkParagraphHasIndentByStyle;exports.codeToBlob=codeToBlob;exports.composeBody=composeBody;exports.composeInterceptors=composeInterceptors;exports.composeStyles=composeStyles;exports.concatMatrixArray=concatMatrixArray;exports.connectDependencies=connectDependencies;exports.connectInjector=connectInjector;exports.convertBodyToHtml=convertBodyToHtml;exports.covertTextRunToHtml=covertTextRunToHtml;exports.createDefaultUser=createDefaultUser;exports.createIdentifier=createIdentifier;exports.createInterceptorKey=createInterceptorKey;exports.createInternalEditorID=createInternalEditorID;exports.createRowColIter=createRowColIter;exports.debounce=debounce;exports.dedupe=dedupe;exports.deepCompare=deepCompare;exports.deleteContent=deleteContent;exports.extractPureTextFromCell=extractPureTextFromCell;exports.forwardRef=forwardRef;exports.fromCallback=fromCallback;exports.fromEventSubject=fromEventSubject;exports.fromObservable=fromObservable;exports.generateRandomId=generateRandomId;exports.get=get;exports.getArrayLength=getArrayLength;exports.getBodySlice=getBodySlice;exports.getBodySliceHtml=getBodySliceHtml;exports.getBorderStyleType=getBorderStyleType;exports.getCellInfoInMergeData=getCellInfoInMergeData;exports.getCellValueType=getCellValueType;exports.getColorStyle=getColorStyle;exports.getCustomDecorationSlice=getCustomDecorationSlice;exports.getCustomRangeSlice=getCustomRangeSlice;exports.getDocsUpdateBody=getDocsUpdateBody;exports.getIntersectRange=getIntersectRange;exports.getOriginCellValue=getOriginCellValue;exports.getReverseDirection=getReverseDirection;exports.getWorksheetUID=getWorksheetUID;exports.groupBy=groupBy;exports.handleStyleToString=handleStyleToString;exports.hashAlgorithm=hashAlgorithm;exports.horizontalLineSegmentsSubtraction=horizontalLineSegmentsSubtraction;exports.insertMatrixArray=insertMatrixArray;exports.insertTextToContent=insertTextToContent;exports.isAsyncDependencyItem=isAsyncDependencyItem;exports.isAsyncHook=isAsyncHook;exports.isBlackColor=isBlackColor;exports.isBooleanString=isBooleanString;exports.isCellCoverable=isCellCoverable;exports.isCellV=isCellV;exports.isClassDependencyItem=isClassDependencyItem;exports.isCtor=isCtor;exports.isDisposable=isDisposable;exports.isEmptyCell=isEmptyCell;exports.isFactoryDependencyItem=isFactoryDependencyItem;exports.isFormulaId=isFormulaId;exports.isFormulaString=isFormulaString;exports.isICellData=isICellData;exports.isInternalEditorID=isInternalEditorID;exports.isNullCell=isNullCell;exports.isNumeric=isNumeric;exports.isRangesEqual=isRangesEqual;exports.isRealNum=isRealNum;exports.isSafeNumeric=isSafeNumeric;exports.isSameStyleTextRun=isSameStyleTextRun;exports.isUnitRangesEqual=isUnitRangesEqual;exports.isValidRange=isValidRange;exports.isValueDependencyItem=isValueDependencyItem;exports.isWhiteColor=isWhiteColor;exports.makeArray=makeArray;exports.makeCellRangeToRangeData=makeCellRangeToRangeData;exports.makeCellToSelection=makeCellToSelection;exports.makeCustomRangeStream=makeCustomRangeStream;exports.merge=merge$1;exports.mergeOverrideWithDependencies=mergeOverrideWithDependencies;exports.mergeSets=mergeSets;exports.mergeWith=mergeWith$1;exports.mergeWorksheetSnapshotWithDefault=mergeWorksheetSnapshotWithDefault;exports.mixinClass=mixinClass;exports.moveMatrixArray=moveMatrixArray;exports.moveRangeByOffset=moveRangeByOffset;exports.nameCharacterCheck=nameCharacterCheck;exports.normalizeBody=normalizeBody;exports.normalizeTextRuns=normalizeTextRuns;exports.numberToABC=numberToABC;exports.numberToListABC=numberToListABC;exports.numfmt=numfmt;exports.orderSearchArray=orderSearchArray;exports.queryObjectMatrix=queryObjectMatrix;exports.registerDependencies=registerDependencies;exports.remove=remove;exports.repeatStringNumTimes=repeatStringNumTimes;exports.replaceInDocumentBody=replaceInDocumentBody;exports.requestImmediateMacroTask=requestImmediateMacroTask;exports.rotate=rotate;exports.searchArray=searchArray;exports.selectionToArray=selectionToArray;exports.sequence=sequence;exports.sequenceAsync=sequenceAsync;exports.sequenceExecute=sequenceExecute;exports.sequenceExecuteAsync=sequenceExecuteAsync;exports.set=set;exports.setDependencies=setDependencies;exports.shallowEqual=shallowEqual;exports.skipParseTagNames=skipParseTagNames;exports.sliceMatrixArray=sliceMatrixArray;exports.sortRules=sortRules;exports.sortRulesByDesc=sortRulesByDesc;exports.sortRulesFactory=sortRulesFactory;exports.spliceArray=spliceArray;exports.splitIntoGrid=splitIntoGrid;exports.takeAfter=takeAfter;exports.throttle=throttle;exports.toDisposable=toDisposable;exports.touchDependencies=touchDependencies;exports.updateAttributeByDelete=updateAttributeByDelete;exports.updateAttributeByInsert=updateAttributeByInsert;exports.useDependency=useDependency;exports.useDependencyContext=useDependencyContext;exports.useDependencyContextValue=useDependencyContextValue;exports.useDependencyValue=useDependencyValue;exports.useInjector=useInjector;exports.useObservable=useObservable;exports.useUpdateBinder=useUpdateBinder;
|