iclavue 10.12.11 → 10.12.13

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.
@@ -1,6 +1,6 @@
1
1
  import { createRequire as __createRequire } from "node:module";
2
2
  const require = __createRequire(import.meta.url);
3
- // clavue v10.12.11 openai-responses-adapter (built from source)
3
+ // clavue v10.12.13 openai-responses-adapter (built from source)
4
4
  var __create=Object.create;var __defProp=Object.defineProperty;var __getOwnPropDesc=Object.getOwnPropertyDescriptor;var __getOwnPropNames=Object.getOwnPropertyNames;var __getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty;var __knownSymbol=(name,symbol2)=>(symbol2=Symbol[name])?symbol2:Symbol.for("Symbol."+name),__typeError=msg=>{throw TypeError(msg)};var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0}),__require=(x2=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(x2,{get:(a2,b)=>(typeof require<"u"?require:a2)[b]}):x2)(function(x2){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+x2+'" is not supported')});var __esm=(fn,res)=>function(){return fn&&(res=(0,fn[__getOwnPropNames(fn)[0]])(fn=0)),res};var __commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports};var __export=(target,all3)=>{for(var name in all3)__defProp(target,name,{get:all3[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to};var __toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod);var __using=(stack,value,async)=>{if(value!=null){typeof value!="object"&&typeof value!="function"&&__typeError("Object expected");var dispose,inner;async&&(dispose=value[__knownSymbol("asyncDispose")]),dispose===void 0&&(dispose=value[__knownSymbol("dispose")],async&&(inner=dispose)),typeof dispose!="function"&&__typeError("Object not disposable"),inner&&(dispose=function(){try{inner.call(this)}catch(e2){return Promise.reject(e2)}}),stack.push([async,dispose,value])}else async&&stack.push([async]);return value},__callDispose=(stack,error40,hasError)=>{var E=typeof SuppressedError=="function"?SuppressedError:function(e2,s2,m2,_){return _=Error(m2),_.name="SuppressedError",_.error=e2,_.suppressed=s2,_},fail=e2=>error40=hasError?new E(e2,error40,"An error was suppressed during disposal"):(hasError=!0,e2),next=it=>{for(;it=stack.pop();)try{var result2=it[1]&&it[1].call(it[2]);if(it[0])return Promise.resolve(result2).then(next,e2=>(fail(e2),next()))}catch(e2){fail(e2)}if(hasError)throw error40};return next()};var freeGlobal,freeGlobal_default,init_freeGlobal=__esm({"../../node_modules/lodash-es/_freeGlobal.js"(){freeGlobal=typeof global=="object"&&global&&global.Object===Object&&global,freeGlobal_default=freeGlobal}});var freeSelf,root,root_default,init_root=__esm({"../../node_modules/lodash-es/_root.js"(){init_freeGlobal();freeSelf=typeof self=="object"&&self&&self.Object===Object&&self,root=freeGlobal_default||freeSelf||Function("return this")(),root_default=root}});var Symbol2,Symbol_default,init_Symbol=__esm({"../../node_modules/lodash-es/_Symbol.js"(){init_root();Symbol2=root_default.Symbol,Symbol_default=Symbol2}});function getRawTag(value){var isOwn=hasOwnProperty.call(value,symToStringTag),tag=value[symToStringTag];try{value[symToStringTag]=void 0;var unmasked=!0}catch{}var result2=nativeObjectToString.call(value);return unmasked&&(isOwn?value[symToStringTag]=tag:delete value[symToStringTag]),result2}var objectProto,hasOwnProperty,nativeObjectToString,symToStringTag,getRawTag_default,init_getRawTag=__esm({"../../node_modules/lodash-es/_getRawTag.js"(){init_Symbol();objectProto=Object.prototype,hasOwnProperty=objectProto.hasOwnProperty,nativeObjectToString=objectProto.toString,symToStringTag=Symbol_default?Symbol_default.toStringTag:void 0;__name(getRawTag,"getRawTag");getRawTag_default=getRawTag}});function objectToString(value){return nativeObjectToString2.call(value)}var objectProto2,nativeObjectToString2,objectToString_default,init_objectToString=__esm({"../../node_modules/lodash-es/_objectToString.js"(){objectProto2=Object.prototype,nativeObjectToString2=objectProto2.toString;__name(objectToString,"objectToString");objectToString_default=objectToString}});function baseGetTag(value){return value==null?value===void 0?undefinedTag:nullTag:symToStringTag2&&symToStringTag2 in Object(value)?getRawTag_default(value):objectToString_default(value)}var nullTag,undefinedTag,symToStringTag2,baseGetTag_default,init_baseGetTag=__esm({"../../node_modules/lodash-es/_baseGetTag.js"(){init_Symbol();init_getRawTag();init_objectToString();nullTag="[object Null]",undefinedTag="[object Undefined]",symToStringTag2=Symbol_default?Symbol_default.toStringTag:void 0;__name(baseGetTag,"baseGetTag");baseGetTag_default=baseGetTag}});function isObject(value){var type=typeof value;return value!=null&&(type=="object"||type=="function")}var isObject_default,init_isObject=__esm({"../../node_modules/lodash-es/isObject.js"(){__name(isObject,"isObject");isObject_default=isObject}});function isFunction(value){if(!isObject_default(value))return!1;var tag=baseGetTag_default(value);return tag==funcTag||tag==genTag||tag==asyncTag||tag==proxyTag}var asyncTag,funcTag,genTag,proxyTag,isFunction_default,init_isFunction=__esm({"../../node_modules/lodash-es/isFunction.js"(){init_baseGetTag();init_isObject();asyncTag="[object AsyncFunction]",funcTag="[object Function]",genTag="[object GeneratorFunction]",proxyTag="[object Proxy]";__name(isFunction,"isFunction");isFunction_default=isFunction}});var coreJsData,coreJsData_default,init_coreJsData=__esm({"../../node_modules/lodash-es/_coreJsData.js"(){init_root();coreJsData=root_default["__core-js_shared__"],coreJsData_default=coreJsData}});function isMasked(func){return!!maskSrcKey&&maskSrcKey in func}var maskSrcKey,isMasked_default,init_isMasked=__esm({"../../node_modules/lodash-es/_isMasked.js"(){init_coreJsData();maskSrcKey=(function(){var uid=/[^.]+$/.exec(coreJsData_default&&coreJsData_default.keys&&coreJsData_default.keys.IE_PROTO||"");return uid?"Symbol(src)_1."+uid:""})();__name(isMasked,"isMasked");isMasked_default=isMasked}});function toSource(func){if(func!=null){try{return funcToString.call(func)}catch{}try{return func+""}catch{}}return""}var funcProto,funcToString,toSource_default,init_toSource=__esm({"../../node_modules/lodash-es/_toSource.js"(){funcProto=Function.prototype,funcToString=funcProto.toString;__name(toSource,"toSource");toSource_default=toSource}});function baseIsNative(value){if(!isObject_default(value)||isMasked_default(value))return!1;var pattern=isFunction_default(value)?reIsNative:reIsHostCtor;return pattern.test(toSource_default(value))}var reRegExpChar,reIsHostCtor,funcProto2,objectProto3,funcToString2,hasOwnProperty2,reIsNative,baseIsNative_default,init_baseIsNative=__esm({"../../node_modules/lodash-es/_baseIsNative.js"(){init_isFunction();init_isMasked();init_isObject();init_toSource();reRegExpChar=/[\\^$.*+?()[\]{}|]/g,reIsHostCtor=/^\[object .+?Constructor\]$/,funcProto2=Function.prototype,objectProto3=Object.prototype,funcToString2=funcProto2.toString,hasOwnProperty2=objectProto3.hasOwnProperty,reIsNative=RegExp("^"+funcToString2.call(hasOwnProperty2).replace(reRegExpChar,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");__name(baseIsNative,"baseIsNative");baseIsNative_default=baseIsNative}});function getValue(object2,key){return object2?.[key]}var getValue_default,init_getValue=__esm({"../../node_modules/lodash-es/_getValue.js"(){__name(getValue,"getValue");getValue_default=getValue}});function getNative(object2,key){var value=getValue_default(object2,key);return baseIsNative_default(value)?value:void 0}var getNative_default,init_getNative=__esm({"../../node_modules/lodash-es/_getNative.js"(){init_baseIsNative();init_getValue();__name(getNative,"getNative");getNative_default=getNative}});var nativeCreate,nativeCreate_default,init_nativeCreate=__esm({"../../node_modules/lodash-es/_nativeCreate.js"(){init_getNative();nativeCreate=getNative_default(Object,"create"),nativeCreate_default=nativeCreate}});function hashClear(){this.__data__=nativeCreate_default?nativeCreate_default(null):{},this.size=0}var hashClear_default,init_hashClear=__esm({"../../node_modules/lodash-es/_hashClear.js"(){init_nativeCreate();__name(hashClear,"hashClear");hashClear_default=hashClear}});function hashDelete(key){var result2=this.has(key)&&delete this.__data__[key];return this.size-=result2?1:0,result2}var hashDelete_default,init_hashDelete=__esm({"../../node_modules/lodash-es/_hashDelete.js"(){__name(hashDelete,"hashDelete");hashDelete_default=hashDelete}});function hashGet(key){var data=this.__data__;if(nativeCreate_default){var result2=data[key];return result2===HASH_UNDEFINED?void 0:result2}return hasOwnProperty3.call(data,key)?data[key]:void 0}var HASH_UNDEFINED,objectProto4,hasOwnProperty3,hashGet_default,init_hashGet=__esm({"../../node_modules/lodash-es/_hashGet.js"(){init_nativeCreate();HASH_UNDEFINED="__lodash_hash_undefined__",objectProto4=Object.prototype,hasOwnProperty3=objectProto4.hasOwnProperty;__name(hashGet,"hashGet");hashGet_default=hashGet}});function hashHas(key){var data=this.__data__;return nativeCreate_default?data[key]!==void 0:hasOwnProperty4.call(data,key)}var objectProto5,hasOwnProperty4,hashHas_default,init_hashHas=__esm({"../../node_modules/lodash-es/_hashHas.js"(){init_nativeCreate();objectProto5=Object.prototype,hasOwnProperty4=objectProto5.hasOwnProperty;__name(hashHas,"hashHas");hashHas_default=hashHas}});function hashSet(key,value){var data=this.__data__;return this.size+=this.has(key)?0:1,data[key]=nativeCreate_default&&value===void 0?HASH_UNDEFINED2:value,this}var HASH_UNDEFINED2,hashSet_default,init_hashSet=__esm({"../../node_modules/lodash-es/_hashSet.js"(){init_nativeCreate();HASH_UNDEFINED2="__lodash_hash_undefined__";__name(hashSet,"hashSet");hashSet_default=hashSet}});function Hash(entries){var index=-1,length=entries==null?0:entries.length;for(this.clear();++index<length;){var entry=entries[index];this.set(entry[0],entry[1])}}var Hash_default,init_Hash=__esm({"../../node_modules/lodash-es/_Hash.js"(){init_hashClear();init_hashDelete();init_hashGet();init_hashHas();init_hashSet();__name(Hash,"Hash");Hash.prototype.clear=hashClear_default;Hash.prototype.delete=hashDelete_default;Hash.prototype.get=hashGet_default;Hash.prototype.has=hashHas_default;Hash.prototype.set=hashSet_default;Hash_default=Hash}});function listCacheClear(){this.__data__=[],this.size=0}var listCacheClear_default,init_listCacheClear=__esm({"../../node_modules/lodash-es/_listCacheClear.js"(){__name(listCacheClear,"listCacheClear");listCacheClear_default=listCacheClear}});function eq(value,other){return value===other||value!==value&&other!==other}var eq_default,init_eq=__esm({"../../node_modules/lodash-es/eq.js"(){__name(eq,"eq");eq_default=eq}});function assocIndexOf(array2,key){for(var length=array2.length;length--;)if(eq_default(array2[length][0],key))return length;return-1}var assocIndexOf_default,init_assocIndexOf=__esm({"../../node_modules/lodash-es/_assocIndexOf.js"(){init_eq();__name(assocIndexOf,"assocIndexOf");assocIndexOf_default=assocIndexOf}});function listCacheDelete(key){var data=this.__data__,index=assocIndexOf_default(data,key);if(index<0)return!1;var lastIndex=data.length-1;return index==lastIndex?data.pop():splice.call(data,index,1),--this.size,!0}var arrayProto,splice,listCacheDelete_default,init_listCacheDelete=__esm({"../../node_modules/lodash-es/_listCacheDelete.js"(){init_assocIndexOf();arrayProto=Array.prototype,splice=arrayProto.splice;__name(listCacheDelete,"listCacheDelete");listCacheDelete_default=listCacheDelete}});function listCacheGet(key){var data=this.__data__,index=assocIndexOf_default(data,key);return index<0?void 0:data[index][1]}var listCacheGet_default,init_listCacheGet=__esm({"../../node_modules/lodash-es/_listCacheGet.js"(){init_assocIndexOf();__name(listCacheGet,"listCacheGet");listCacheGet_default=listCacheGet}});function listCacheHas(key){return assocIndexOf_default(this.__data__,key)>-1}var listCacheHas_default,init_listCacheHas=__esm({"../../node_modules/lodash-es/_listCacheHas.js"(){init_assocIndexOf();__name(listCacheHas,"listCacheHas");listCacheHas_default=listCacheHas}});function listCacheSet(key,value){var data=this.__data__,index=assocIndexOf_default(data,key);return index<0?(++this.size,data.push([key,value])):data[index][1]=value,this}var listCacheSet_default,init_listCacheSet=__esm({"../../node_modules/lodash-es/_listCacheSet.js"(){init_assocIndexOf();__name(listCacheSet,"listCacheSet");listCacheSet_default=listCacheSet}});function ListCache(entries){var index=-1,length=entries==null?0:entries.length;for(this.clear();++index<length;){var entry=entries[index];this.set(entry[0],entry[1])}}var ListCache_default,init_ListCache=__esm({"../../node_modules/lodash-es/_ListCache.js"(){init_listCacheClear();init_listCacheDelete();init_listCacheGet();init_listCacheHas();init_listCacheSet();__name(ListCache,"ListCache");ListCache.prototype.clear=listCacheClear_default;ListCache.prototype.delete=listCacheDelete_default;ListCache.prototype.get=listCacheGet_default;ListCache.prototype.has=listCacheHas_default;ListCache.prototype.set=listCacheSet_default;ListCache_default=ListCache}});var Map2,Map_default,init_Map=__esm({"../../node_modules/lodash-es/_Map.js"(){init_getNative();init_root();Map2=getNative_default(root_default,"Map"),Map_default=Map2}});function mapCacheClear(){this.size=0,this.__data__={hash:new Hash_default,map:new(Map_default||ListCache_default),string:new Hash_default}}var mapCacheClear_default,init_mapCacheClear=__esm({"../../node_modules/lodash-es/_mapCacheClear.js"(){init_Hash();init_ListCache();init_Map();__name(mapCacheClear,"mapCacheClear");mapCacheClear_default=mapCacheClear}});function isKeyable(value){var type=typeof value;return type=="string"||type=="number"||type=="symbol"||type=="boolean"?value!=="__proto__":value===null}var isKeyable_default,init_isKeyable=__esm({"../../node_modules/lodash-es/_isKeyable.js"(){__name(isKeyable,"isKeyable");isKeyable_default=isKeyable}});function getMapData(map3,key){var data=map3.__data__;return isKeyable_default(key)?data[typeof key=="string"?"string":"hash"]:data.map}var getMapData_default,init_getMapData=__esm({"../../node_modules/lodash-es/_getMapData.js"(){init_isKeyable();__name(getMapData,"getMapData");getMapData_default=getMapData}});function mapCacheDelete(key){var result2=getMapData_default(this,key).delete(key);return this.size-=result2?1:0,result2}var mapCacheDelete_default,init_mapCacheDelete=__esm({"../../node_modules/lodash-es/_mapCacheDelete.js"(){init_getMapData();__name(mapCacheDelete,"mapCacheDelete");mapCacheDelete_default=mapCacheDelete}});function mapCacheGet(key){return getMapData_default(this,key).get(key)}var mapCacheGet_default,init_mapCacheGet=__esm({"../../node_modules/lodash-es/_mapCacheGet.js"(){init_getMapData();__name(mapCacheGet,"mapCacheGet");mapCacheGet_default=mapCacheGet}});function mapCacheHas(key){return getMapData_default(this,key).has(key)}var mapCacheHas_default,init_mapCacheHas=__esm({"../../node_modules/lodash-es/_mapCacheHas.js"(){init_getMapData();__name(mapCacheHas,"mapCacheHas");mapCacheHas_default=mapCacheHas}});function mapCacheSet(key,value){var data=getMapData_default(this,key),size2=data.size;return data.set(key,value),this.size+=data.size==size2?0:1,this}var mapCacheSet_default,init_mapCacheSet=__esm({"../../node_modules/lodash-es/_mapCacheSet.js"(){init_getMapData();__name(mapCacheSet,"mapCacheSet");mapCacheSet_default=mapCacheSet}});function MapCache(entries){var index=-1,length=entries==null?0:entries.length;for(this.clear();++index<length;){var entry=entries[index];this.set(entry[0],entry[1])}}var MapCache_default,init_MapCache=__esm({"../../node_modules/lodash-es/_MapCache.js"(){init_mapCacheClear();init_mapCacheDelete();init_mapCacheGet();init_mapCacheHas();init_mapCacheSet();__name(MapCache,"MapCache");MapCache.prototype.clear=mapCacheClear_default;MapCache.prototype.delete=mapCacheDelete_default;MapCache.prototype.get=mapCacheGet_default;MapCache.prototype.has=mapCacheHas_default;MapCache.prototype.set=mapCacheSet_default;MapCache_default=MapCache}});function memoize(func,resolver){if(typeof func!="function"||resolver!=null&&typeof resolver!="function")throw new TypeError(FUNC_ERROR_TEXT);var memoized=__name(function(){var args=arguments,key=resolver?resolver.apply(this,args):args[0],cache2=memoized.cache;if(cache2.has(key))return cache2.get(key);var result2=func.apply(this,args);return memoized.cache=cache2.set(key,result2)||cache2,result2},"memoized");return memoized.cache=new(memoize.Cache||MapCache_default),memoized}var FUNC_ERROR_TEXT,memoize_default,init_memoize=__esm({"../../node_modules/lodash-es/memoize.js"(){init_MapCache();FUNC_ERROR_TEXT="Expected a function";__name(memoize,"memoize");memoize.Cache=MapCache_default;memoize_default=memoize}});function arrayMap(array2,iteratee2){for(var index=-1,length=array2==null?0:array2.length,result2=Array(length);++index<length;)result2[index]=iteratee2(array2[index],index,array2);return result2}var arrayMap_default,init_arrayMap=__esm({"../../node_modules/lodash-es/_arrayMap.js"(){__name(arrayMap,"arrayMap");arrayMap_default=arrayMap}});function stackClear(){this.__data__=new ListCache_default,this.size=0}var stackClear_default,init_stackClear=__esm({"../../node_modules/lodash-es/_stackClear.js"(){init_ListCache();__name(stackClear,"stackClear");stackClear_default=stackClear}});function stackDelete(key){var data=this.__data__,result2=data.delete(key);return this.size=data.size,result2}var stackDelete_default,init_stackDelete=__esm({"../../node_modules/lodash-es/_stackDelete.js"(){__name(stackDelete,"stackDelete");stackDelete_default=stackDelete}});function stackGet(key){return this.__data__.get(key)}var stackGet_default,init_stackGet=__esm({"../../node_modules/lodash-es/_stackGet.js"(){__name(stackGet,"stackGet");stackGet_default=stackGet}});function stackHas(key){return this.__data__.has(key)}var stackHas_default,init_stackHas=__esm({"../../node_modules/lodash-es/_stackHas.js"(){__name(stackHas,"stackHas");stackHas_default=stackHas}});function stackSet(key,value){var data=this.__data__;if(data instanceof ListCache_default){var pairs=data.__data__;if(!Map_default||pairs.length<LARGE_ARRAY_SIZE-1)return pairs.push([key,value]),this.size=++data.size,this;data=this.__data__=new MapCache_default(pairs)}return data.set(key,value),this.size=data.size,this}var LARGE_ARRAY_SIZE,stackSet_default,init_stackSet=__esm({"../../node_modules/lodash-es/_stackSet.js"(){init_ListCache();init_Map();init_MapCache();LARGE_ARRAY_SIZE=200;__name(stackSet,"stackSet");stackSet_default=stackSet}});function Stack(entries){var data=this.__data__=new ListCache_default(entries);this.size=data.size}var Stack_default,init_Stack=__esm({"../../node_modules/lodash-es/_Stack.js"(){init_ListCache();init_stackClear();init_stackDelete();init_stackGet();init_stackHas();init_stackSet();__name(Stack,"Stack");Stack.prototype.clear=stackClear_default;Stack.prototype.delete=stackDelete_default;Stack.prototype.get=stackGet_default;Stack.prototype.has=stackHas_default;Stack.prototype.set=stackSet_default;Stack_default=Stack}});function setCacheAdd(value){return this.__data__.set(value,HASH_UNDEFINED3),this}var HASH_UNDEFINED3,setCacheAdd_default,init_setCacheAdd=__esm({"../../node_modules/lodash-es/_setCacheAdd.js"(){HASH_UNDEFINED3="__lodash_hash_undefined__";__name(setCacheAdd,"setCacheAdd");setCacheAdd_default=setCacheAdd}});function setCacheHas(value){return this.__data__.has(value)}var setCacheHas_default,init_setCacheHas=__esm({"../../node_modules/lodash-es/_setCacheHas.js"(){__name(setCacheHas,"setCacheHas");setCacheHas_default=setCacheHas}});function SetCache(values2){var index=-1,length=values2==null?0:values2.length;for(this.__data__=new MapCache_default;++index<length;)this.add(values2[index])}var SetCache_default,init_SetCache=__esm({"../../node_modules/lodash-es/_SetCache.js"(){init_MapCache();init_setCacheAdd();init_setCacheHas();__name(SetCache,"SetCache");SetCache.prototype.add=SetCache.prototype.push=setCacheAdd_default;SetCache.prototype.has=setCacheHas_default;SetCache_default=SetCache}});function arraySome(array2,predicate){for(var index=-1,length=array2==null?0:array2.length;++index<length;)if(predicate(array2[index],index,array2))return!0;return!1}var arraySome_default,init_arraySome=__esm({"../../node_modules/lodash-es/_arraySome.js"(){__name(arraySome,"arraySome");arraySome_default=arraySome}});function cacheHas(cache2,key){return cache2.has(key)}var cacheHas_default,init_cacheHas=__esm({"../../node_modules/lodash-es/_cacheHas.js"(){__name(cacheHas,"cacheHas");cacheHas_default=cacheHas}});function equalArrays(array2,other,bitmask,customizer,equalFunc,stack){var isPartial=bitmask&COMPARE_PARTIAL_FLAG,arrLength=array2.length,othLength=other.length;if(arrLength!=othLength&&!(isPartial&&othLength>arrLength))return!1;var arrStacked=stack.get(array2),othStacked=stack.get(other);if(arrStacked&&othStacked)return arrStacked==other&&othStacked==array2;var index=-1,result2=!0,seen=bitmask&COMPARE_UNORDERED_FLAG?new SetCache_default:void 0;for(stack.set(array2,other),stack.set(other,array2);++index<arrLength;){var arrValue=array2[index],othValue=other[index];if(customizer)var compared=isPartial?customizer(othValue,arrValue,index,other,array2,stack):customizer(arrValue,othValue,index,array2,other,stack);if(compared!==void 0){if(compared)continue;result2=!1;break}if(seen){if(!arraySome_default(other,function(othValue2,othIndex){if(!cacheHas_default(seen,othIndex)&&(arrValue===othValue2||equalFunc(arrValue,othValue2,bitmask,customizer,stack)))return seen.push(othIndex)})){result2=!1;break}}else if(!(arrValue===othValue||equalFunc(arrValue,othValue,bitmask,customizer,stack))){result2=!1;break}}return stack.delete(array2),stack.delete(other),result2}var COMPARE_PARTIAL_FLAG,COMPARE_UNORDERED_FLAG,equalArrays_default,init_equalArrays=__esm({"../../node_modules/lodash-es/_equalArrays.js"(){init_SetCache();init_arraySome();init_cacheHas();COMPARE_PARTIAL_FLAG=1,COMPARE_UNORDERED_FLAG=2;__name(equalArrays,"equalArrays");equalArrays_default=equalArrays}});var Uint8Array2,Uint8Array_default,init_Uint8Array=__esm({"../../node_modules/lodash-es/_Uint8Array.js"(){init_root();Uint8Array2=root_default.Uint8Array,Uint8Array_default=Uint8Array2}});function mapToArray(map3){var index=-1,result2=Array(map3.size);return map3.forEach(function(value,key){result2[++index]=[key,value]}),result2}var mapToArray_default,init_mapToArray=__esm({"../../node_modules/lodash-es/_mapToArray.js"(){__name(mapToArray,"mapToArray");mapToArray_default=mapToArray}});function setToArray(set3){var index=-1,result2=Array(set3.size);return set3.forEach(function(value){result2[++index]=value}),result2}var setToArray_default,init_setToArray=__esm({"../../node_modules/lodash-es/_setToArray.js"(){__name(setToArray,"setToArray");setToArray_default=setToArray}});function equalByTag(object2,other,tag,bitmask,customizer,equalFunc,stack){switch(tag){case dataViewTag:if(object2.byteLength!=other.byteLength||object2.byteOffset!=other.byteOffset)return!1;object2=object2.buffer,other=other.buffer;case arrayBufferTag:return!(object2.byteLength!=other.byteLength||!equalFunc(new Uint8Array_default(object2),new Uint8Array_default(other)));case boolTag:case dateTag:case numberTag:return eq_default(+object2,+other);case errorTag:return object2.name==other.name&&object2.message==other.message;case regexpTag:case stringTag:return object2==other+"";case mapTag:var convert=mapToArray_default;case setTag:var isPartial=bitmask&COMPARE_PARTIAL_FLAG2;if(convert||(convert=setToArray_default),object2.size!=other.size&&!isPartial)return!1;var stacked=stack.get(object2);if(stacked)return stacked==other;bitmask|=COMPARE_UNORDERED_FLAG2,stack.set(object2,other);var result2=equalArrays_default(convert(object2),convert(other),bitmask,customizer,equalFunc,stack);return stack.delete(object2),result2;case symbolTag:if(symbolValueOf)return symbolValueOf.call(object2)==symbolValueOf.call(other)}return!1}var COMPARE_PARTIAL_FLAG2,COMPARE_UNORDERED_FLAG2,boolTag,dateTag,errorTag,mapTag,numberTag,regexpTag,setTag,stringTag,symbolTag,arrayBufferTag,dataViewTag,symbolProto,symbolValueOf,equalByTag_default,init_equalByTag=__esm({"../../node_modules/lodash-es/_equalByTag.js"(){init_Symbol();init_Uint8Array();init_eq();init_equalArrays();init_mapToArray();init_setToArray();COMPARE_PARTIAL_FLAG2=1,COMPARE_UNORDERED_FLAG2=2,boolTag="[object Boolean]",dateTag="[object Date]",errorTag="[object Error]",mapTag="[object Map]",numberTag="[object Number]",regexpTag="[object RegExp]",setTag="[object Set]",stringTag="[object String]",symbolTag="[object Symbol]",arrayBufferTag="[object ArrayBuffer]",dataViewTag="[object DataView]",symbolProto=Symbol_default?Symbol_default.prototype:void 0,symbolValueOf=symbolProto?symbolProto.valueOf:void 0;__name(equalByTag,"equalByTag");equalByTag_default=equalByTag}});function arrayPush(array2,values2){for(var index=-1,length=values2.length,offset=array2.length;++index<length;)array2[offset+index]=values2[index];return array2}var arrayPush_default,init_arrayPush=__esm({"../../node_modules/lodash-es/_arrayPush.js"(){__name(arrayPush,"arrayPush");arrayPush_default=arrayPush}});var isArray,isArray_default,init_isArray=__esm({"../../node_modules/lodash-es/isArray.js"(){isArray=Array.isArray,isArray_default=isArray}});function baseGetAllKeys(object2,keysFunc,symbolsFunc){var result2=keysFunc(object2);return isArray_default(object2)?result2:arrayPush_default(result2,symbolsFunc(object2))}var baseGetAllKeys_default,init_baseGetAllKeys=__esm({"../../node_modules/lodash-es/_baseGetAllKeys.js"(){init_arrayPush();init_isArray();__name(baseGetAllKeys,"baseGetAllKeys");baseGetAllKeys_default=baseGetAllKeys}});function arrayFilter(array2,predicate){for(var index=-1,length=array2==null?0:array2.length,resIndex=0,result2=[];++index<length;){var value=array2[index];predicate(value,index,array2)&&(result2[resIndex++]=value)}return result2}var arrayFilter_default,init_arrayFilter=__esm({"../../node_modules/lodash-es/_arrayFilter.js"(){__name(arrayFilter,"arrayFilter");arrayFilter_default=arrayFilter}});function stubArray(){return[]}var stubArray_default,init_stubArray=__esm({"../../node_modules/lodash-es/stubArray.js"(){__name(stubArray,"stubArray");stubArray_default=stubArray}});var objectProto6,propertyIsEnumerable,nativeGetSymbols,getSymbols,getSymbols_default,init_getSymbols=__esm({"../../node_modules/lodash-es/_getSymbols.js"(){init_arrayFilter();init_stubArray();objectProto6=Object.prototype,propertyIsEnumerable=objectProto6.propertyIsEnumerable,nativeGetSymbols=Object.getOwnPropertySymbols,getSymbols=nativeGetSymbols?function(object2){return object2==null?[]:(object2=Object(object2),arrayFilter_default(nativeGetSymbols(object2),function(symbol2){return propertyIsEnumerable.call(object2,symbol2)}))}:stubArray_default,getSymbols_default=getSymbols}});function baseTimes(n2,iteratee2){for(var index=-1,result2=Array(n2);++index<n2;)result2[index]=iteratee2(index);return result2}var baseTimes_default,init_baseTimes=__esm({"../../node_modules/lodash-es/_baseTimes.js"(){__name(baseTimes,"baseTimes");baseTimes_default=baseTimes}});function isObjectLike(value){return value!=null&&typeof value=="object"}var isObjectLike_default,init_isObjectLike=__esm({"../../node_modules/lodash-es/isObjectLike.js"(){__name(isObjectLike,"isObjectLike");isObjectLike_default=isObjectLike}});function baseIsArguments(value){return isObjectLike_default(value)&&baseGetTag_default(value)==argsTag}var argsTag,baseIsArguments_default,init_baseIsArguments=__esm({"../../node_modules/lodash-es/_baseIsArguments.js"(){init_baseGetTag();init_isObjectLike();argsTag="[object Arguments]";__name(baseIsArguments,"baseIsArguments");baseIsArguments_default=baseIsArguments}});var objectProto7,hasOwnProperty5,propertyIsEnumerable2,isArguments,isArguments_default,init_isArguments=__esm({"../../node_modules/lodash-es/isArguments.js"(){init_baseIsArguments();init_isObjectLike();objectProto7=Object.prototype,hasOwnProperty5=objectProto7.hasOwnProperty,propertyIsEnumerable2=objectProto7.propertyIsEnumerable,isArguments=baseIsArguments_default((function(){return arguments})())?baseIsArguments_default:function(value){return isObjectLike_default(value)&&hasOwnProperty5.call(value,"callee")&&!propertyIsEnumerable2.call(value,"callee")},isArguments_default=isArguments}});function stubFalse(){return!1}var stubFalse_default,init_stubFalse=__esm({"../../node_modules/lodash-es/stubFalse.js"(){__name(stubFalse,"stubFalse");stubFalse_default=stubFalse}});var freeExports,freeModule,moduleExports,Buffer2,nativeIsBuffer,isBuffer,isBuffer_default,init_isBuffer=__esm({"../../node_modules/lodash-es/isBuffer.js"(){init_root();init_stubFalse();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_default.Buffer:void 0,nativeIsBuffer=Buffer2?Buffer2.isBuffer:void 0,isBuffer=nativeIsBuffer||stubFalse_default,isBuffer_default=isBuffer}});function isIndex(value,length){var type=typeof value;return length=length??MAX_SAFE_INTEGER,!!length&&(type=="number"||type!="symbol"&&reIsUint.test(value))&&value>-1&&value%1==0&&value<length}var MAX_SAFE_INTEGER,reIsUint,isIndex_default,init_isIndex=__esm({"../../node_modules/lodash-es/_isIndex.js"(){MAX_SAFE_INTEGER=9007199254740991,reIsUint=/^(?:0|[1-9]\d*)$/;__name(isIndex,"isIndex");isIndex_default=isIndex}});function isLength(value){return typeof value=="number"&&value>-1&&value%1==0&&value<=MAX_SAFE_INTEGER2}var MAX_SAFE_INTEGER2,isLength_default,init_isLength=__esm({"../../node_modules/lodash-es/isLength.js"(){MAX_SAFE_INTEGER2=9007199254740991;__name(isLength,"isLength");isLength_default=isLength}});function baseIsTypedArray(value){return isObjectLike_default(value)&&isLength_default(value.length)&&!!typedArrayTags[baseGetTag_default(value)]}var argsTag2,arrayTag,boolTag2,dateTag2,errorTag2,funcTag2,mapTag2,numberTag2,objectTag,regexpTag2,setTag2,stringTag2,weakMapTag,arrayBufferTag2,dataViewTag2,float32Tag,float64Tag,int8Tag,int16Tag,int32Tag,uint8Tag,uint8ClampedTag,uint16Tag,uint32Tag,typedArrayTags,baseIsTypedArray_default,init_baseIsTypedArray=__esm({"../../node_modules/lodash-es/_baseIsTypedArray.js"(){init_baseGetTag();init_isLength();init_isObjectLike();argsTag2="[object Arguments]",arrayTag="[object Array]",boolTag2="[object Boolean]",dateTag2="[object Date]",errorTag2="[object Error]",funcTag2="[object Function]",mapTag2="[object Map]",numberTag2="[object Number]",objectTag="[object Object]",regexpTag2="[object RegExp]",setTag2="[object Set]",stringTag2="[object String]",weakMapTag="[object WeakMap]",arrayBufferTag2="[object ArrayBuffer]",dataViewTag2="[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[argsTag2]=typedArrayTags[arrayTag]=typedArrayTags[arrayBufferTag2]=typedArrayTags[boolTag2]=typedArrayTags[dataViewTag2]=typedArrayTags[dateTag2]=typedArrayTags[errorTag2]=typedArrayTags[funcTag2]=typedArrayTags[mapTag2]=typedArrayTags[numberTag2]=typedArrayTags[objectTag]=typedArrayTags[regexpTag2]=typedArrayTags[setTag2]=typedArrayTags[stringTag2]=typedArrayTags[weakMapTag]=!1;__name(baseIsTypedArray,"baseIsTypedArray");baseIsTypedArray_default=baseIsTypedArray}});function baseUnary(func){return function(value){return func(value)}}var baseUnary_default,init_baseUnary=__esm({"../../node_modules/lodash-es/_baseUnary.js"(){__name(baseUnary,"baseUnary");baseUnary_default=baseUnary}});var freeExports2,freeModule2,moduleExports2,freeProcess,nodeUtil,nodeUtil_default,init_nodeUtil=__esm({"../../node_modules/lodash-es/_nodeUtil.js"(){init_freeGlobal();freeExports2=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule2=freeExports2&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports2=freeModule2&&freeModule2.exports===freeExports2,freeProcess=moduleExports2&&freeGlobal_default.process,nodeUtil=(function(){try{var types3=freeModule2&&freeModule2.require&&freeModule2.require("util").types;return types3||freeProcess&&freeProcess.binding&&freeProcess.binding("util")}catch{}})(),nodeUtil_default=nodeUtil}});var nodeIsTypedArray,isTypedArray,isTypedArray_default,init_isTypedArray=__esm({"../../node_modules/lodash-es/isTypedArray.js"(){init_baseIsTypedArray();init_baseUnary();init_nodeUtil();nodeIsTypedArray=nodeUtil_default&&nodeUtil_default.isTypedArray,isTypedArray=nodeIsTypedArray?baseUnary_default(nodeIsTypedArray):baseIsTypedArray_default,isTypedArray_default=isTypedArray}});function arrayLikeKeys(value,inherited){var isArr=isArray_default(value),isArg=!isArr&&isArguments_default(value),isBuff=!isArr&&!isArg&&isBuffer_default(value),isType=!isArr&&!isArg&&!isBuff&&isTypedArray_default(value),skipIndexes=isArr||isArg||isBuff||isType,result2=skipIndexes?baseTimes_default(value.length,String):[],length=result2.length;for(var key in value)(inherited||hasOwnProperty6.call(value,key))&&!(skipIndexes&&(key=="length"||isBuff&&(key=="offset"||key=="parent")||isType&&(key=="buffer"||key=="byteLength"||key=="byteOffset")||isIndex_default(key,length)))&&result2.push(key);return result2}var objectProto8,hasOwnProperty6,arrayLikeKeys_default,init_arrayLikeKeys=__esm({"../../node_modules/lodash-es/_arrayLikeKeys.js"(){init_baseTimes();init_isArguments();init_isArray();init_isBuffer();init_isIndex();init_isTypedArray();objectProto8=Object.prototype,hasOwnProperty6=objectProto8.hasOwnProperty;__name(arrayLikeKeys,"arrayLikeKeys");arrayLikeKeys_default=arrayLikeKeys}});function isPrototype(value){var Ctor=value&&value.constructor,proto2=typeof Ctor=="function"&&Ctor.prototype||objectProto9;return value===proto2}var objectProto9,isPrototype_default,init_isPrototype=__esm({"../../node_modules/lodash-es/_isPrototype.js"(){objectProto9=Object.prototype;__name(isPrototype,"isPrototype");isPrototype_default=isPrototype}});function overArg(func,transform3){return function(arg){return func(transform3(arg))}}var overArg_default,init_overArg=__esm({"../../node_modules/lodash-es/_overArg.js"(){__name(overArg,"overArg");overArg_default=overArg}});var nativeKeys,nativeKeys_default,init_nativeKeys=__esm({"../../node_modules/lodash-es/_nativeKeys.js"(){init_overArg();nativeKeys=overArg_default(Object.keys,Object),nativeKeys_default=nativeKeys}});function baseKeys(object2){if(!isPrototype_default(object2))return nativeKeys_default(object2);var result2=[];for(var key in Object(object2))hasOwnProperty7.call(object2,key)&&key!="constructor"&&result2.push(key);return result2}var objectProto10,hasOwnProperty7,baseKeys_default,init_baseKeys=__esm({"../../node_modules/lodash-es/_baseKeys.js"(){init_isPrototype();init_nativeKeys();objectProto10=Object.prototype,hasOwnProperty7=objectProto10.hasOwnProperty;__name(baseKeys,"baseKeys");baseKeys_default=baseKeys}});function isArrayLike(value){return value!=null&&isLength_default(value.length)&&!isFunction_default(value)}var isArrayLike_default,init_isArrayLike=__esm({"../../node_modules/lodash-es/isArrayLike.js"(){init_isFunction();init_isLength();__name(isArrayLike,"isArrayLike");isArrayLike_default=isArrayLike}});function keys(object2){return isArrayLike_default(object2)?arrayLikeKeys_default(object2):baseKeys_default(object2)}var keys_default,init_keys=__esm({"../../node_modules/lodash-es/keys.js"(){init_arrayLikeKeys();init_baseKeys();init_isArrayLike();__name(keys,"keys");keys_default=keys}});function getAllKeys(object2){return baseGetAllKeys_default(object2,keys_default,getSymbols_default)}var getAllKeys_default,init_getAllKeys=__esm({"../../node_modules/lodash-es/_getAllKeys.js"(){init_baseGetAllKeys();init_getSymbols();init_keys();__name(getAllKeys,"getAllKeys");getAllKeys_default=getAllKeys}});function equalObjects(object2,other,bitmask,customizer,equalFunc,stack){var isPartial=bitmask&COMPARE_PARTIAL_FLAG3,objProps=getAllKeys_default(object2),objLength=objProps.length,othProps=getAllKeys_default(other),othLength=othProps.length;if(objLength!=othLength&&!isPartial)return!1;for(var index=objLength;index--;){var key=objProps[index];if(!(isPartial?key in other:hasOwnProperty8.call(other,key)))return!1}var objStacked=stack.get(object2),othStacked=stack.get(other);if(objStacked&&othStacked)return objStacked==other&&othStacked==object2;var result2=!0;stack.set(object2,other),stack.set(other,object2);for(var skipCtor=isPartial;++index<objLength;){key=objProps[index];var objValue=object2[key],othValue=other[key];if(customizer)var compared=isPartial?customizer(othValue,objValue,key,other,object2,stack):customizer(objValue,othValue,key,object2,other,stack);if(!(compared===void 0?objValue===othValue||equalFunc(objValue,othValue,bitmask,customizer,stack):compared)){result2=!1;break}skipCtor||(skipCtor=key=="constructor")}if(result2&&!skipCtor){var objCtor=object2.constructor,othCtor=other.constructor;objCtor!=othCtor&&"constructor"in object2&&"constructor"in other&&!(typeof objCtor=="function"&&objCtor instanceof objCtor&&typeof othCtor=="function"&&othCtor instanceof othCtor)&&(result2=!1)}return stack.delete(object2),stack.delete(other),result2}var COMPARE_PARTIAL_FLAG3,objectProto11,hasOwnProperty8,equalObjects_default,init_equalObjects=__esm({"../../node_modules/lodash-es/_equalObjects.js"(){init_getAllKeys();COMPARE_PARTIAL_FLAG3=1,objectProto11=Object.prototype,hasOwnProperty8=objectProto11.hasOwnProperty;__name(equalObjects,"equalObjects");equalObjects_default=equalObjects}});var DataView2,DataView_default,init_DataView=__esm({"../../node_modules/lodash-es/_DataView.js"(){init_getNative();init_root();DataView2=getNative_default(root_default,"DataView"),DataView_default=DataView2}});var Promise2,Promise_default,init_Promise=__esm({"../../node_modules/lodash-es/_Promise.js"(){init_getNative();init_root();Promise2=getNative_default(root_default,"Promise"),Promise_default=Promise2}});var Set2,Set_default,init_Set=__esm({"../../node_modules/lodash-es/_Set.js"(){init_getNative();init_root();Set2=getNative_default(root_default,"Set"),Set_default=Set2}});var WeakMap2,WeakMap_default,init_WeakMap=__esm({"../../node_modules/lodash-es/_WeakMap.js"(){init_getNative();init_root();WeakMap2=getNative_default(root_default,"WeakMap"),WeakMap_default=WeakMap2}});var mapTag3,objectTag2,promiseTag,setTag3,weakMapTag2,dataViewTag3,dataViewCtorString,mapCtorString,promiseCtorString,setCtorString,weakMapCtorString,getTag,getTag_default,init_getTag=__esm({"../../node_modules/lodash-es/_getTag.js"(){init_DataView();init_Map();init_Promise();init_Set();init_WeakMap();init_baseGetTag();init_toSource();mapTag3="[object Map]",objectTag2="[object Object]",promiseTag="[object Promise]",setTag3="[object Set]",weakMapTag2="[object WeakMap]",dataViewTag3="[object DataView]",dataViewCtorString=toSource_default(DataView_default),mapCtorString=toSource_default(Map_default),promiseCtorString=toSource_default(Promise_default),setCtorString=toSource_default(Set_default),weakMapCtorString=toSource_default(WeakMap_default),getTag=baseGetTag_default;(DataView_default&&getTag(new DataView_default(new ArrayBuffer(1)))!=dataViewTag3||Map_default&&getTag(new Map_default)!=mapTag3||Promise_default&&getTag(Promise_default.resolve())!=promiseTag||Set_default&&getTag(new Set_default)!=setTag3||WeakMap_default&&getTag(new WeakMap_default)!=weakMapTag2)&&(getTag=__name(function(value){var result2=baseGetTag_default(value),Ctor=result2==objectTag2?value.constructor:void 0,ctorString=Ctor?toSource_default(Ctor):"";if(ctorString)switch(ctorString){case dataViewCtorString:return dataViewTag3;case mapCtorString:return mapTag3;case promiseCtorString:return promiseTag;case setCtorString:return setTag3;case weakMapCtorString:return weakMapTag2}return result2},"getTag"));getTag_default=getTag}});function baseIsEqualDeep(object2,other,bitmask,customizer,equalFunc,stack){var objIsArr=isArray_default(object2),othIsArr=isArray_default(other),objTag=objIsArr?arrayTag2:getTag_default(object2),othTag=othIsArr?arrayTag2:getTag_default(other);objTag=objTag==argsTag3?objectTag3:objTag,othTag=othTag==argsTag3?objectTag3:othTag;var objIsObj=objTag==objectTag3,othIsObj=othTag==objectTag3,isSameTag=objTag==othTag;if(isSameTag&&isBuffer_default(object2)){if(!isBuffer_default(other))return!1;objIsArr=!0,objIsObj=!1}if(isSameTag&&!objIsObj)return stack||(stack=new Stack_default),objIsArr||isTypedArray_default(object2)?equalArrays_default(object2,other,bitmask,customizer,equalFunc,stack):equalByTag_default(object2,other,objTag,bitmask,customizer,equalFunc,stack);if(!(bitmask&COMPARE_PARTIAL_FLAG4)){var objIsWrapped=objIsObj&&hasOwnProperty9.call(object2,"__wrapped__"),othIsWrapped=othIsObj&&hasOwnProperty9.call(other,"__wrapped__");if(objIsWrapped||othIsWrapped){var objUnwrapped=objIsWrapped?object2.value():object2,othUnwrapped=othIsWrapped?other.value():other;return stack||(stack=new Stack_default),equalFunc(objUnwrapped,othUnwrapped,bitmask,customizer,stack)}}return isSameTag?(stack||(stack=new Stack_default),equalObjects_default(object2,other,bitmask,customizer,equalFunc,stack)):!1}var COMPARE_PARTIAL_FLAG4,argsTag3,arrayTag2,objectTag3,objectProto12,hasOwnProperty9,baseIsEqualDeep_default,init_baseIsEqualDeep=__esm({"../../node_modules/lodash-es/_baseIsEqualDeep.js"(){init_Stack();init_equalArrays();init_equalByTag();init_equalObjects();init_getTag();init_isArray();init_isBuffer();init_isTypedArray();COMPARE_PARTIAL_FLAG4=1,argsTag3="[object Arguments]",arrayTag2="[object Array]",objectTag3="[object Object]",objectProto12=Object.prototype,hasOwnProperty9=objectProto12.hasOwnProperty;__name(baseIsEqualDeep,"baseIsEqualDeep");baseIsEqualDeep_default=baseIsEqualDeep}});function baseIsEqual(value,other,bitmask,customizer,stack){return value===other?!0:value==null||other==null||!isObjectLike_default(value)&&!isObjectLike_default(other)?value!==value&&other!==other:baseIsEqualDeep_default(value,other,bitmask,customizer,baseIsEqual,stack)}var baseIsEqual_default,init_baseIsEqual=__esm({"../../node_modules/lodash-es/_baseIsEqual.js"(){init_baseIsEqualDeep();init_isObjectLike();__name(baseIsEqual,"baseIsEqual");baseIsEqual_default=baseIsEqual}});function baseIsMatch(object2,source,matchData,customizer){var index=matchData.length,length=index,noCustomizer=!customizer;if(object2==null)return!length;for(object2=Object(object2);index--;){var data=matchData[index];if(noCustomizer&&data[2]?data[1]!==object2[data[0]]:!(data[0]in object2))return!1}for(;++index<length;){data=matchData[index];var key=data[0],objValue=object2[key],srcValue=data[1];if(noCustomizer&&data[2]){if(objValue===void 0&&!(key in object2))return!1}else{var stack=new Stack_default;if(customizer)var result2=customizer(objValue,srcValue,key,object2,source,stack);if(!(result2===void 0?baseIsEqual_default(srcValue,objValue,COMPARE_PARTIAL_FLAG5|COMPARE_UNORDERED_FLAG3,customizer,stack):result2))return!1}}return!0}var COMPARE_PARTIAL_FLAG5,COMPARE_UNORDERED_FLAG3,baseIsMatch_default,init_baseIsMatch=__esm({"../../node_modules/lodash-es/_baseIsMatch.js"(){init_Stack();init_baseIsEqual();COMPARE_PARTIAL_FLAG5=1,COMPARE_UNORDERED_FLAG3=2;__name(baseIsMatch,"baseIsMatch");baseIsMatch_default=baseIsMatch}});function isStrictComparable(value){return value===value&&!isObject_default(value)}var isStrictComparable_default,init_isStrictComparable=__esm({"../../node_modules/lodash-es/_isStrictComparable.js"(){init_isObject();__name(isStrictComparable,"isStrictComparable");isStrictComparable_default=isStrictComparable}});function getMatchData(object2){for(var result2=keys_default(object2),length=result2.length;length--;){var key=result2[length],value=object2[key];result2[length]=[key,value,isStrictComparable_default(value)]}return result2}var getMatchData_default,init_getMatchData=__esm({"../../node_modules/lodash-es/_getMatchData.js"(){init_isStrictComparable();init_keys();__name(getMatchData,"getMatchData");getMatchData_default=getMatchData}});function matchesStrictComparable(key,srcValue){return function(object2){return object2==null?!1:object2[key]===srcValue&&(srcValue!==void 0||key in Object(object2))}}var matchesStrictComparable_default,init_matchesStrictComparable=__esm({"../../node_modules/lodash-es/_matchesStrictComparable.js"(){__name(matchesStrictComparable,"matchesStrictComparable");matchesStrictComparable_default=matchesStrictComparable}});function baseMatches(source){var matchData=getMatchData_default(source);return matchData.length==1&&matchData[0][2]?matchesStrictComparable_default(matchData[0][0],matchData[0][1]):function(object2){return object2===source||baseIsMatch_default(object2,source,matchData)}}var baseMatches_default,init_baseMatches=__esm({"../../node_modules/lodash-es/_baseMatches.js"(){init_baseIsMatch();init_getMatchData();init_matchesStrictComparable();__name(baseMatches,"baseMatches");baseMatches_default=baseMatches}});function isSymbol(value){return typeof value=="symbol"||isObjectLike_default(value)&&baseGetTag_default(value)==symbolTag2}var symbolTag2,isSymbol_default,init_isSymbol=__esm({"../../node_modules/lodash-es/isSymbol.js"(){init_baseGetTag();init_isObjectLike();symbolTag2="[object Symbol]";__name(isSymbol,"isSymbol");isSymbol_default=isSymbol}});function isKey(value,object2){if(isArray_default(value))return!1;var type=typeof value;return type=="number"||type=="symbol"||type=="boolean"||value==null||isSymbol_default(value)?!0:reIsPlainProp.test(value)||!reIsDeepProp.test(value)||object2!=null&&value in Object(object2)}var reIsDeepProp,reIsPlainProp,isKey_default,init_isKey=__esm({"../../node_modules/lodash-es/_isKey.js"(){init_isArray();init_isSymbol();reIsDeepProp=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,reIsPlainProp=/^\w*$/;__name(isKey,"isKey");isKey_default=isKey}});function memoizeCapped(func){var result2=memoize_default(func,function(key){return cache2.size===MAX_MEMOIZE_SIZE&&cache2.clear(),key}),cache2=result2.cache;return result2}var MAX_MEMOIZE_SIZE,memoizeCapped_default,init_memoizeCapped=__esm({"../../node_modules/lodash-es/_memoizeCapped.js"(){init_memoize();MAX_MEMOIZE_SIZE=500;__name(memoizeCapped,"memoizeCapped");memoizeCapped_default=memoizeCapped}});var rePropName,reEscapeChar,stringToPath,stringToPath_default,init_stringToPath=__esm({"../../node_modules/lodash-es/_stringToPath.js"(){init_memoizeCapped();rePropName=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,reEscapeChar=/\\(\\)?/g,stringToPath=memoizeCapped_default(function(string4){var result2=[];return string4.charCodeAt(0)===46&&result2.push(""),string4.replace(rePropName,function(match,number4,quote,subString){result2.push(quote?subString.replace(reEscapeChar,"$1"):number4||match)}),result2}),stringToPath_default=stringToPath}});function baseToString(value){if(typeof value=="string")return value;if(isArray_default(value))return arrayMap_default(value,baseToString)+"";if(isSymbol_default(value))return symbolToString?symbolToString.call(value):"";var result2=value+"";return result2=="0"&&1/value==-INFINITY?"-0":result2}var INFINITY,symbolProto2,symbolToString,baseToString_default,init_baseToString=__esm({"../../node_modules/lodash-es/_baseToString.js"(){init_Symbol();init_arrayMap();init_isArray();init_isSymbol();INFINITY=1/0,symbolProto2=Symbol_default?Symbol_default.prototype:void 0,symbolToString=symbolProto2?symbolProto2.toString:void 0;__name(baseToString,"baseToString");baseToString_default=baseToString}});function toString(value){return value==null?"":baseToString_default(value)}var toString_default,init_toString=__esm({"../../node_modules/lodash-es/toString.js"(){init_baseToString();__name(toString,"toString");toString_default=toString}});function castPath(value,object2){return isArray_default(value)?value:isKey_default(value,object2)?[value]:stringToPath_default(toString_default(value))}var castPath_default,init_castPath=__esm({"../../node_modules/lodash-es/_castPath.js"(){init_isArray();init_isKey();init_stringToPath();init_toString();__name(castPath,"castPath");castPath_default=castPath}});function toKey(value){if(typeof value=="string"||isSymbol_default(value))return value;var result2=value+"";return result2=="0"&&1/value==-INFINITY2?"-0":result2}var INFINITY2,toKey_default,init_toKey=__esm({"../../node_modules/lodash-es/_toKey.js"(){init_isSymbol();INFINITY2=1/0;__name(toKey,"toKey");toKey_default=toKey}});function baseGet(object2,path10){path10=castPath_default(path10,object2);for(var index=0,length=path10.length;object2!=null&&index<length;)object2=object2[toKey_default(path10[index++])];return index&&index==length?object2:void 0}var baseGet_default,init_baseGet=__esm({"../../node_modules/lodash-es/_baseGet.js"(){init_castPath();init_toKey();__name(baseGet,"baseGet");baseGet_default=baseGet}});function get(object2,path10,defaultValue){var result2=object2==null?void 0:baseGet_default(object2,path10);return result2===void 0?defaultValue:result2}var get_default,init_get=__esm({"../../node_modules/lodash-es/get.js"(){init_baseGet();__name(get,"get");get_default=get}});function baseHasIn(object2,key){return object2!=null&&key in Object(object2)}var baseHasIn_default,init_baseHasIn=__esm({"../../node_modules/lodash-es/_baseHasIn.js"(){__name(baseHasIn,"baseHasIn");baseHasIn_default=baseHasIn}});function hasPath(object2,path10,hasFunc){path10=castPath_default(path10,object2);for(var index=-1,length=path10.length,result2=!1;++index<length;){var key=toKey_default(path10[index]);if(!(result2=object2!=null&&hasFunc(object2,key)))break;object2=object2[key]}return result2||++index!=length?result2:(length=object2==null?0:object2.length,!!length&&isLength_default(length)&&isIndex_default(key,length)&&(isArray_default(object2)||isArguments_default(object2)))}var hasPath_default,init_hasPath=__esm({"../../node_modules/lodash-es/_hasPath.js"(){init_castPath();init_isArguments();init_isArray();init_isIndex();init_isLength();init_toKey();__name(hasPath,"hasPath");hasPath_default=hasPath}});function hasIn(object2,path10){return object2!=null&&hasPath_default(object2,path10,baseHasIn_default)}var hasIn_default,init_hasIn=__esm({"../../node_modules/lodash-es/hasIn.js"(){init_baseHasIn();init_hasPath();__name(hasIn,"hasIn");hasIn_default=hasIn}});function baseMatchesProperty(path10,srcValue){return isKey_default(path10)&&isStrictComparable_default(srcValue)?matchesStrictComparable_default(toKey_default(path10),srcValue):function(object2){var objValue=get_default(object2,path10);return objValue===void 0&&objValue===srcValue?hasIn_default(object2,path10):baseIsEqual_default(srcValue,objValue,COMPARE_PARTIAL_FLAG6|COMPARE_UNORDERED_FLAG4)}}var COMPARE_PARTIAL_FLAG6,COMPARE_UNORDERED_FLAG4,baseMatchesProperty_default,init_baseMatchesProperty=__esm({"../../node_modules/lodash-es/_baseMatchesProperty.js"(){init_baseIsEqual();init_get();init_hasIn();init_isKey();init_isStrictComparable();init_matchesStrictComparable();init_toKey();COMPARE_PARTIAL_FLAG6=1,COMPARE_UNORDERED_FLAG4=2;__name(baseMatchesProperty,"baseMatchesProperty");baseMatchesProperty_default=baseMatchesProperty}});function identity(value){return value}var identity_default,init_identity=__esm({"../../node_modules/lodash-es/identity.js"(){__name(identity,"identity");identity_default=identity}});function baseProperty(key){return function(object2){return object2?.[key]}}var baseProperty_default,init_baseProperty=__esm({"../../node_modules/lodash-es/_baseProperty.js"(){__name(baseProperty,"baseProperty");baseProperty_default=baseProperty}});function basePropertyDeep(path10){return function(object2){return baseGet_default(object2,path10)}}var basePropertyDeep_default,init_basePropertyDeep=__esm({"../../node_modules/lodash-es/_basePropertyDeep.js"(){init_baseGet();__name(basePropertyDeep,"basePropertyDeep");basePropertyDeep_default=basePropertyDeep}});function property(path10){return isKey_default(path10)?baseProperty_default(toKey_default(path10)):basePropertyDeep_default(path10)}var property_default,init_property=__esm({"../../node_modules/lodash-es/property.js"(){init_baseProperty();init_basePropertyDeep();init_isKey();init_toKey();__name(property,"property");property_default=property}});function baseIteratee(value){return typeof value=="function"?value:value==null?identity_default:typeof value=="object"?isArray_default(value)?baseMatchesProperty_default(value[0],value[1]):baseMatches_default(value):property_default(value)}var baseIteratee_default,init_baseIteratee=__esm({"../../node_modules/lodash-es/_baseIteratee.js"(){init_baseMatches();init_baseMatchesProperty();init_identity();init_isArray();init_property();__name(baseIteratee,"baseIteratee");baseIteratee_default=baseIteratee}});var defineProperty,defineProperty_default,init_defineProperty=__esm({"../../node_modules/lodash-es/_defineProperty.js"(){init_getNative();defineProperty=(function(){try{var func=getNative_default(Object,"defineProperty");return func({},"",{}),func}catch{}})(),defineProperty_default=defineProperty}});function baseAssignValue(object2,key,value){key=="__proto__"&&defineProperty_default?defineProperty_default(object2,key,{configurable:!0,enumerable:!0,value,writable:!0}):object2[key]=value}var baseAssignValue_default,init_baseAssignValue=__esm({"../../node_modules/lodash-es/_baseAssignValue.js"(){init_defineProperty();__name(baseAssignValue,"baseAssignValue");baseAssignValue_default=baseAssignValue}});function assignValue(object2,key,value){var objValue=object2[key];(!(hasOwnProperty10.call(object2,key)&&eq_default(objValue,value))||value===void 0&&!(key in object2))&&baseAssignValue_default(object2,key,value)}var objectProto13,hasOwnProperty10,assignValue_default,init_assignValue=__esm({"../../node_modules/lodash-es/_assignValue.js"(){init_baseAssignValue();init_eq();objectProto13=Object.prototype,hasOwnProperty10=objectProto13.hasOwnProperty;__name(assignValue,"assignValue");assignValue_default=assignValue}});function baseSet(object2,path10,value,customizer){if(!isObject_default(object2))return object2;path10=castPath_default(path10,object2);for(var index=-1,length=path10.length,lastIndex=length-1,nested=object2;nested!=null&&++index<length;){var key=toKey_default(path10[index]),newValue=value;if(key==="__proto__"||key==="constructor"||key==="prototype")return object2;if(index!=lastIndex){var objValue=nested[key];newValue=customizer?customizer(objValue,key,nested):void 0,newValue===void 0&&(newValue=isObject_default(objValue)?objValue:isIndex_default(path10[index+1])?[]:{})}assignValue_default(nested,key,newValue),nested=nested[key]}return object2}var baseSet_default,init_baseSet=__esm({"../../node_modules/lodash-es/_baseSet.js"(){init_assignValue();init_castPath();init_isIndex();init_isObject();init_toKey();__name(baseSet,"baseSet");baseSet_default=baseSet}});function basePickBy(object2,paths2,predicate){for(var index=-1,length=paths2.length,result2={};++index<length;){var path10=paths2[index],value=baseGet_default(object2,path10);predicate(value,path10)&&baseSet_default(result2,castPath_default(path10,object2),value)}return result2}var basePickBy_default,init_basePickBy=__esm({"../../node_modules/lodash-es/_basePickBy.js"(){init_baseGet();init_baseSet();init_castPath();__name(basePickBy,"basePickBy");basePickBy_default=basePickBy}});var getPrototype,getPrototype_default,init_getPrototype=__esm({"../../node_modules/lodash-es/_getPrototype.js"(){init_overArg();getPrototype=overArg_default(Object.getPrototypeOf,Object),getPrototype_default=getPrototype}});var nativeGetSymbols2,getSymbolsIn,getSymbolsIn_default,init_getSymbolsIn=__esm({"../../node_modules/lodash-es/_getSymbolsIn.js"(){init_arrayPush();init_getPrototype();init_getSymbols();init_stubArray();nativeGetSymbols2=Object.getOwnPropertySymbols,getSymbolsIn=nativeGetSymbols2?function(object2){for(var result2=[];object2;)arrayPush_default(result2,getSymbols_default(object2)),object2=getPrototype_default(object2);return result2}:stubArray_default,getSymbolsIn_default=getSymbolsIn}});function nativeKeysIn(object2){var result2=[];if(object2!=null)for(var key in Object(object2))result2.push(key);return result2}var nativeKeysIn_default,init_nativeKeysIn=__esm({"../../node_modules/lodash-es/_nativeKeysIn.js"(){__name(nativeKeysIn,"nativeKeysIn");nativeKeysIn_default=nativeKeysIn}});function baseKeysIn(object2){if(!isObject_default(object2))return nativeKeysIn_default(object2);var isProto=isPrototype_default(object2),result2=[];for(var key in object2)key=="constructor"&&(isProto||!hasOwnProperty11.call(object2,key))||result2.push(key);return result2}var objectProto14,hasOwnProperty11,baseKeysIn_default,init_baseKeysIn=__esm({"../../node_modules/lodash-es/_baseKeysIn.js"(){init_isObject();init_isPrototype();init_nativeKeysIn();objectProto14=Object.prototype,hasOwnProperty11=objectProto14.hasOwnProperty;__name(baseKeysIn,"baseKeysIn");baseKeysIn_default=baseKeysIn}});function keysIn(object2){return isArrayLike_default(object2)?arrayLikeKeys_default(object2,!0):baseKeysIn_default(object2)}var keysIn_default,init_keysIn=__esm({"../../node_modules/lodash-es/keysIn.js"(){init_arrayLikeKeys();init_baseKeysIn();init_isArrayLike();__name(keysIn,"keysIn");keysIn_default=keysIn}});function getAllKeysIn(object2){return baseGetAllKeys_default(object2,keysIn_default,getSymbolsIn_default)}var getAllKeysIn_default,init_getAllKeysIn=__esm({"../../node_modules/lodash-es/_getAllKeysIn.js"(){init_baseGetAllKeys();init_getSymbolsIn();init_keysIn();__name(getAllKeysIn,"getAllKeysIn");getAllKeysIn_default=getAllKeysIn}});function pickBy(object2,predicate){if(object2==null)return{};var props=arrayMap_default(getAllKeysIn_default(object2),function(prop){return[prop]});return predicate=baseIteratee_default(predicate),basePickBy_default(object2,props,function(value,path10){return predicate(value,path10[0])})}var pickBy_default,init_pickBy=__esm({"../../node_modules/lodash-es/pickBy.js"(){init_arrayMap();init_baseIteratee();init_basePickBy();init_getAllKeysIn();__name(pickBy,"pickBy");pickBy_default=pickBy}});function baseSum(array2,iteratee2){for(var result2,index=-1,length=array2.length;++index<length;){var current=iteratee2(array2[index]);current!==void 0&&(result2=result2===void 0?current:result2+current)}return result2}var baseSum_default,init_baseSum=__esm({"../../node_modules/lodash-es/_baseSum.js"(){__name(baseSum,"baseSum");baseSum_default=baseSum}});function sumBy(array2,iteratee2){return array2&&array2.length?baseSum_default(array2,baseIteratee_default(iteratee2,2)):0}var sumBy_default,init_sumBy=__esm({"../../node_modules/lodash-es/sumBy.js"(){init_baseIteratee();init_baseSum();__name(sumBy,"sumBy");sumBy_default=sumBy}});import{homedir}from"os";import{join}from"path";function hasNodeOption(flag){let nodeOptions=process.env.NODE_OPTIONS;return nodeOptions?nodeOptions.split(/\s+/).includes(flag):!1}function isEnvTruthy(envVar){if(!envVar)return!1;if(typeof envVar=="boolean")return envVar;let normalizedValue=envVar.toLowerCase().trim();return["1","true","yes","on"].includes(normalizedValue)}function isEnvDefinedFalsy(envVar){if(envVar===void 0)return!1;if(typeof envVar=="boolean")return!envVar;if(!envVar)return!1;let normalizedValue=envVar.toLowerCase().trim();return["0","false","no","off"].includes(normalizedValue)}function isBareMode(){return isEnvTruthy(process.env.CLAUDE_CODE_SIMPLE)||process.argv.includes("--bare")}function shouldUseMacOSKeychain(){return process.platform!=="darwin"?!1:!!(isEnvTruthy(process.env.CLAVUE_USE_KEYCHAIN)||isEnvDefinedFalsy(process.env.CLAVUE_DISABLE_KEYCHAIN))}function getAWSRegion(){return process.env.AWS_REGION||process.env.AWS_DEFAULT_REGION||"us-east-1"}function isRunningOnHomespace(){return process.env.USER_TYPE==="ant"&&isEnvTruthy(process.env.COO_RUNNING_ON_HOMESPACE)}var getClavueConfigHomeDir,getClaudeConfigHomeDir,init_envUtils=__esm({"src/utils/envUtils.ts"(){init_memoize();getClavueConfigHomeDir=memoize_default(()=>(process.env.CLAVUE_CONFIG_DIR??join(homedir(),".clavue")).normalize("NFC"),()=>`${process.env.CLAVUE_CONFIG_DIR??""}\0${process.env.HOME??""}`),getClaudeConfigHomeDir=getClavueConfigHomeDir;__name(hasNodeOption,"hasNodeOption");__name(isEnvTruthy,"isEnvTruthy");__name(isEnvDefinedFalsy,"isEnvDefinedFalsy");__name(isBareMode,"isBareMode");__name(shouldUseMacOSKeychain,"shouldUseMacOSKeychain");__name(getAWSRegion,"getAWSRegion");__name(isRunningOnHomespace,"isRunningOnHomespace")}});var init_executionPipeline=__esm({"src/services/plan/executionPipeline.ts"(){init_envUtils()}});var init_honestCompletion=__esm({"src/services/plan/honestCompletion.ts"(){init_envUtils();init_executionPipeline()}});var init_outcomeDiscipline=__esm({"src/constants/outcomeDiscipline.ts"(){init_honestCompletion()}});var init_supervisor=__esm({"src/services/mao/supervisor.ts"(){}});var init_parallelDevelopment=__esm({"src/utils/parallelDevelopment.ts"(){init_supervisor()}});function escapeRegExp(value){return String(value).replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function compileEnglishPhraseMatchers(phrases){return phrases.map(phrase=>({label:phrase,regex:new RegExp(`(?:^|\\s)${escapeRegExp(phrase).replace(/\\ /g,"\\s+")}(?=\\s|$)`,"i")}))}function compileCompactPhraseMatchers(phrases){return phrases.map(phrase=>({label:phrase,compactPhrase:phrase.replace(/\s+/g,"")}))}function compileWordMatchers(words2){return words2.map(word=>({label:word,word}))}function compileRegexMatchers(regexes){return regexes.map(entry=>entry instanceof RegExp?{label:entry.source,regex:entry}:entry)}function compileSignalDefinition(definition){return{exactMatches:definition.exactMatches??null,englishPhrases:compileEnglishPhraseMatchers(definition.englishPhrases??[]),compactPhrases:compileCompactPhraseMatchers(definition.compactPhrases??[]),englishWords:compileWordMatchers(definition.englishWords??[]),regexes:compileRegexMatchers(definition.regexes??[])}}var HAN_CHARACTER_RE,CONTINUATION_EXACT_MATCHES,SIGNAL_DEFINITIONS,init_userTurnIntent=__esm({"src/utils/userTurnIntent.ts"(){init_parallelDevelopment();HAN_CHARACTER_RE=new RegExp("\\p{Script=Han}","u"),CONTINUATION_EXACT_MATCHES=new Set(["continue","resume","keep going","keep pushing","keep iterating","keep working","keep building","go on","start developing","start coding","continue developing","continue coding","continue working","continue building","resume developing","resume coding","let's continue","\u7EE7\u7EED","\u7EE7\u7EED\u5F00\u53D1","\u7EE7\u7EED\u7F16\u7801","\u7EE7\u7EED\u5B9E\u73B0","\u7EE7\u7EED\u5904\u7406","\u7EE7\u7EED\u4FEE","\u7EE7\u7EED\u4FEE\u590D","\u7EE7\u7EED\u641E","\u63A5\u7740\u505A","\u63A5\u7740\u5F00\u53D1","\u63A5\u7740\u7F16\u7801","\u63A5\u7740\u5B9E\u73B0","\u63A5\u7740\u5904\u7406","\u63A5\u7740\u4FEE","\u63A5\u7740\u5199","\u63A5\u7740\u6539","\u7EE7\u7EED\u5E72","\u7EE7\u7EED\u505A","\u5F00\u59CB\u5F00\u53D1","\u5F00\u59CB\u7F16\u7801","\u76F4\u63A5\u5F00\u59CB\u5F00\u53D1","\u76F4\u63A5\u5F00\u59CB\u7F16\u7801","\u5F00\u5DE5","\u7EE7\u7EED\u63A8\u8FDB","\u63A5\u7740\u63A8\u8FDB","\u7EE7\u7EED\u4F18\u5316","\u63A5\u7740\u4F18\u5316","\u7EE7\u7EED\u5347\u7EA7","\u63A5\u7740\u5347\u7EA7","\u7EE7\u7EED\u5B8C\u5584","\u63A5\u7740\u5B8C\u5584","\u628A\u5B83\u505A\u5B8C","\u628A\u8FD9\u4E2A\u7A0B\u5E8F\u505A\u5B8C","\u5F00\u53D1\u5B8C\u8FD9\u4E2A\u7A0B\u5E8F","\u6301\u7EED\u5F00\u53D1","\u6301\u7EED\u7F16\u7801","\u7EE7\u7EED \u6301\u7EED\u5F00\u53D1","\u7EE7\u7EED \u6301\u7EED\u7F16\u7801","\u7D9A\u3051\u3066","\u9032\u3081\u3066","\u7D9A\u304D\u3092","\u958B\u767A\u3092\u7D9A\u3051\u3066","\u5B9F\u88C5\u3092\u7D9A\u3051\u3066","\u4F5C\u696D\u3092\u7D9A\u3051\u3066","\u7D9A\u3051\u3066\u5B9F\u88C5","\u7D9A\u3051\u3066\u958B\u767A"]);__name(escapeRegExp,"escapeRegExp");__name(compileEnglishPhraseMatchers,"compileEnglishPhraseMatchers");__name(compileCompactPhraseMatchers,"compileCompactPhraseMatchers");__name(compileWordMatchers,"compileWordMatchers");__name(compileRegexMatchers,"compileRegexMatchers");__name(compileSignalDefinition,"compileSignalDefinition");SIGNAL_DEFINITIONS={continuationIntent:compileSignalDefinition({exactMatches:CONTINUATION_EXACT_MATCHES,englishPhrases:["continue","resume","keep going","keep pushing","keep iterating","keep working","keep building","go on","start developing","start coding","continue developing","continue coding","continue working","continue building","resume developing","resume coding","let's continue"],compactPhrases:["\u7EE7\u7EED\u5F00\u53D1","\u7EE7\u7EED\u7F16\u7801","\u7EE7\u7EED\u5B9E\u73B0","\u7EE7\u7EED\u5904\u7406","\u7EE7\u7EED\u4FEE","\u7EE7\u7EED\u4FEE\u590D","\u7EE7\u7EED\u641E","\u63A5\u7740\u505A","\u63A5\u7740\u5F00\u53D1","\u63A5\u7740\u7F16\u7801","\u63A5\u7740\u5B9E\u73B0","\u63A5\u7740\u5904\u7406","\u63A5\u7740\u4FEE","\u63A5\u7740\u5199","\u63A5\u7740\u6539","\u7EE7\u7EED\u5E72","\u7EE7\u7EED\u505A","\u5F00\u59CB\u5F00\u53D1","\u5F00\u59CB\u7F16\u7801","\u76F4\u63A5\u5F00\u59CB\u5F00\u53D1","\u76F4\u63A5\u5F00\u59CB\u7F16\u7801","\u5F00\u5DE5","\u7EE7\u7EED\u63A8\u8FDB","\u63A5\u7740\u63A8\u8FDB","\u7EE7\u7EED\u4F18\u5316","\u63A5\u7740\u4F18\u5316","\u7EE7\u7EED\u5347\u7EA7","\u63A5\u7740\u5347\u7EA7","\u7EE7\u7EED\u5B8C\u5584","\u63A5\u7740\u5B8C\u5584","\u628A\u5B83\u505A\u5B8C","\u628A\u8FD9\u4E2A\u7A0B\u5E8F\u505A\u5B8C","\u5F00\u53D1\u5B8C\u8FD9\u4E2A\u7A0B\u5E8F","\u6301\u7EED\u5F00\u53D1","\u6301\u7EED\u7F16\u7801","\u7D9A\u3051\u3066\u5B9F\u88C5","\u7D9A\u3051\u3066\u958B\u767A","\u958B\u767A\u3092\u7D9A\u3051","\u5B9F\u88C5\u3092\u7D9A\u3051","\u4F5C\u696D\u3092\u7D9A\u3051"],regexes:[{label:"finish the task",regex:/\b(finish|complete|ship|polish)\s+(it|this|the task|the bug|the change|the fix|the program|the product)\b/i},{label:"chinese continuation with completion target",regex:/(?:^|[\s,。!?、;:])(?:很好|好|可以|行|那就|嗯|ok|okay)?\s*(?:继续|接着|持续|直接开始|开始)\s*(?:持续)?\s*(?:开发|编码|写|改|推进|优化|升级|完善|做|干|处理|修|修复|实现)?(?:\s*(?:到|直到|直至)?\s*(?:全部|完全|彻底)?\s*(?:完成|结束|做完|搞定|收尾))?(?:吧|啊|一下|下去|起来)?(?:$|[\s,。!?、;:])/iu},{label:"general chinese continuation",regex:/^(?:继续|接着|持续|直接开始|开始)\s*(?:持续)?\s*(?:开发|编码|写|改|推进|优化|升级|完善|做|干|处理|修|修复|实现)(?:吧|啊|一下|下去|起来)?$/u},{label:"japanese coding continuation",regex:/(?:続けて|進めて|続きを)(?:\s*(?:実装|開発|作業|修正|直して))?|(?:実装|開発|作業)を続/u}]}),directExecutionIntent:compileSignalDefinition({englishPhrases:["do it","execute","fix it now","get started","go ahead","just start","start now","skip the plan","plan later","just fix it","just implement it","just ship it","fix this now","go ahead and fix","go ahead and implement","no plan first","do not plan first","don't plan first","go with that plan","go with this plan","follow that plan","follow this plan","implement that plan","implement this plan","use that plan","use this plan","use that approach","use this approach","do it that way"],compactPhrases:["\u76F4\u63A5\u5F00\u59CB","\u76F4\u63A5\u5F00\u53D1","\u76F4\u63A5\u7F16\u7801","\u76F4\u63A5\u4FEE\u590D","\u76F4\u63A5\u6539","\u76F4\u63A5\u6267\u884C","\u76F4\u63A5\u505A","\u76F4\u63A5\u5904\u7406","\u9A6C\u4E0A\u4FEE","\u9A6C\u4E0A\u6539","\u76F4\u63A5\u4E0A","\u4E0D\u8981\u65B9\u6848","\u4E0D\u7528\u65B9\u6848","\u522B\u5148\u8BA1\u5212","\u4E0D\u7528\u5148\u8BA1\u5212","\u4E0D\u8981\u5148\u8BA1\u5212","\u4E0D\u8981\u5148\u65B9\u6848","\u5148\u505A","\u5148\u4FEE","\u5148\u5F00\u53D1","\u5148\u6539","\u6309\u8FD9\u4E2A\u65B9\u6848\u505A","\u6309\u8FD9\u4E2A\u8BA1\u5212\u505A","\u6309\u8FD9\u4E2A\u601D\u8DEF\u505A","\u6309\u8FD9\u4E2A\u6587\u6863\u505A","\u6309\u7167\u8FD9\u4E2A\u65B9\u6848\u505A","\u6309\u7167\u8FD9\u4E2A\u8BA1\u5212\u505A","\u6309\u7167\u8FD9\u4E2A\u601D\u8DEF\u505A","\u6309\u7167\u8FD9\u4E2A\u6587\u6863\u505A","\u5C31\u6309\u8FD9\u4E2A\u65B9\u6848\u505A","\u5C31\u6309\u8FD9\u4E2A\u8BA1\u5212\u505A","\u5C31\u6309\u8FD9\u4E2A\u601D\u8DEF\u505A","\u5C31\u6309\u8FD9\u4E2A\u6587\u6863\u505A","\u6309\u65B9\u6848\u505A","\u6309\u8BA1\u5212\u505A","\u6309\u601D\u8DEF\u505A","\u6309\u6587\u6863\u505A","\u7167\u8FD9\u4E2A\u65B9\u6848\u505A","\u7167\u8FD9\u4E2A\u8BA1\u5212\u505A","\u7167\u8FD9\u4E2A\u601D\u8DEF\u505A","\u6309\u8FD9\u4E2A\u6765\u505A","\u5C31\u6309\u8FD9\u4E2A\u6765\u505A","\u7167\u8FD9\u4E2A\u6765\u505A"],regexes:[{label:"chinese direct action regex",regex:/(?:^|[\s,。!?、;:])(?:请|帮我|麻烦)?(?:直接|马上|现在|立刻)(?:开始)?(?:修|修复|改|修改|处理|解决|搞定|开发|编码|实现|优化|升级|完善|做|执行)(?:一下|下|掉|好)?(?:$|[\s,。!?、;:/])/u},{label:"skip planning regex",regex:/\b(?:don't|do not|no need to|skip)\s+(?:write|make|give|start)?\s*(?:a\s+)?(?:plan|proposal|design doc|architecture review)\b/i},{label:"do the fix regex",regex:/\b(?:just|please|go ahead and)\s+(?:fix|implement|ship|build|patch|code)\b/i},{label:"approved plan execution regex",regex:/\b(?:go with|follow|use|implement|execute)\s+(?:that|this|the)\s+(?:plan|approach|proposal|design|document)\b/i},{label:"do it that way regex",regex:/\bdo\s+it\s+(?:that|this)\s+way\b/i},{label:"approved chinese plan execution regex",regex:/(?:就)?按(?:照)?(?:这个|这个方案|这个计划|这个思路|这个文档|上面(?:的)?方案|上面(?:的)?计划|当前方案|当前计划|上述方案|上述计划)?(?:来)?(?:做|开发|实现|推进|执行|改|开始)/u}]}),implementationIntent:compileSignalDefinition({englishWords:["add","build","create","design","develop","fix","implement","improve","migrate","redesign","refactor","rewrite","ship","update","upgrade"],compactPhrases:["\u6DFB\u52A0","\u65B0\u589E","\u5B9E\u73B0","\u8BBE\u8BA1","\u4FEE\u4E00\u4E0B","\u6539\u4E00\u4E0B","\u4FEE\u8FD9\u4E2A","\u6539\u8FD9\u4E2A","\u4FEE\u95EE\u9898","\u6539\u95EE\u9898","\u4FEE\u590D","\u4FEE\u6539","\u5904\u7406\u8FD9\u4E2A","\u5904\u7406\u95EE\u9898","\u89E3\u51B3\u8FD9\u4E2A","\u89E3\u51B3\u95EE\u9898","\u641E\u5B9A\u8FD9\u4E2A","\u641E\u5B9A\u95EE\u9898","\u4F18\u5316","\u91CD\u6784","\u8FC1\u79FB","\u53D1\u5E03","\u5F00\u53D1","\u7F16\u7801","\u5347\u7EA7","\u5B8C\u5584","\u8865\u4E01","\u5904\u7406\u6389","\u505A\u5B8C"],regexes:[{label:"work on feature",regex:/\bwork on\b/i},{label:"start implementing",regex:/\bstart\s+(?:implementing|building|fixing|coding)\b/i},{label:"chinese action imperative",regex:/(?:^|[\s,。!?、;:])(?:请|帮我|麻烦)?(?:直接|马上|现在|立刻|先)?(?:修|修复|改|修改|处理|解决|搞定|弄好|补上|完善|优化|升级|实现)(?:一下|下|掉|好)?(?:这个|这|该|它|当前|上述)?(?:问题|错误|bug|文件|功能|逻辑|流程|配置|项目|代码)?(?:$|[\s,。!?、;:/])/iu},{label:"path scoped issue request",regex:/(?:(?:问题|错误|报错|bug|不能|无法|失败|异常)[\s\S]{0,120}(?:\/[^\s,。!?;:]+|[A-Za-z]:\\[^\s,。!?;:]+)|(?:\/[^\s,。!?;:]+|[A-Za-z]:\\[^\s,。!?;:]+)[\s\S]{0,120}(?:问题|错误|报错|bug|不能|无法|失败|异常))/iu}]}),explicitPlanIntent:compileSignalDefinition({englishPhrases:["approach","architecture","design doc","implementation plan","plan","plan first","proposal","strategy","trade off","trade-off","give me a plan","before you code","before coding","compare options","compare approaches","review architecture options"],compactPhrases:["\u8BA1\u5212","\u65B9\u6848","\u4FEE\u590D\u65B9\u6848","\u5B9E\u73B0\u65B9\u6848","\u6539\u9020\u65B9\u6848","\u67B6\u6784\u65B9\u6848","\u8BBE\u8BA1\u6587\u6863","\u67B6\u6784","\u601D\u8DEF","\u5148\u7ED9\u65B9\u6848","\u5148\u7ED9\u8BA1\u5212","\u5148\u51FA\u65B9\u6848","\u5148\u505A\u65B9\u6848","\u5148\u5199\u65B9\u6848","\u5148\u5206\u6790\u65B9\u6848","\u5BF9\u6BD4\u65B9\u6848","\u6BD4\u8F83\u65B9\u6848"],regexes:[{label:"before you code regex",regex:/\bbefore\s+you\s+(?:code|implement|edit|change|fix|start)\b/i},{label:"give me plan regex",regex:/\b(?:give|show|write|draft|prepare)\s+(?:me\s+)?(?:an?\s+)?(?:implementation\s+)?plan\b/i},{label:"compare tradeoffs regex",regex:/\b(?:compare|evaluate)\b[\s\S]{0,80}\b(?:options|approaches|trade[\s-]?offs)\b/i},{label:"chinese plan first regex",regex:/先(?:给|出|做|写|整理)(?:我)?(?:一(?:个|份))?(?:方案|计划|设计|思路)|先(?:对比|比较|分析)(?:一下)?(?:方案|思路|架构|选项)/u}]}),planRevisionIntent:compileSignalDefinition({englishPhrases:["adjust the plan","change the plan","edit the plan","expand the plan","modify the plan","refine the plan","revise the plan","rewrite the plan","update the plan","update the document","revise the document","edit the document","rewrite the document","adjust the document","change the document","replan","re-plan"],compactPhrases:["\u4FEE\u6539\u65B9\u6848","\u8C03\u6574\u65B9\u6848","\u66F4\u65B0\u65B9\u6848","\u8865\u5145\u65B9\u6848","\u91CD\u5199\u65B9\u6848","\u5B8C\u5584\u65B9\u6848","\u4FEE\u6539\u8BA1\u5212","\u8C03\u6574\u8BA1\u5212","\u66F4\u65B0\u8BA1\u5212","\u8865\u5145\u8BA1\u5212","\u91CD\u65B0\u89C4\u5212","\u4FEE\u6539\u6587\u6863","\u8C03\u6574\u6587\u6863","\u66F4\u65B0\u6587\u6863","\u8865\u5145\u6587\u6863","\u91CD\u5199\u6587\u6863","\u4FEE\u6539\u5F00\u53D1\u6587\u6863","\u66F4\u65B0\u5F00\u53D1\u6587\u6863","\u8C03\u6574\u5F00\u53D1\u6587\u6863","\u8865\u5145\u5F00\u53D1\u6587\u6863"],regexes:[{label:"revise plan regex",regex:/\b(?:revise|rewrite|refine|edit|adjust|modify|update|expand)\s+(?:the\s+)?(?:plan|proposal|doc|document|design)\b/i},{label:"chinese revise plan regex",regex:/(?:修改|调整|更新|补充|重写|完善)(?:一下)?(?:方案|计划|文档|开发文档)|重新(?:规划|整理)(?:一下)?(?:方案|计划|文档)?/u}]}),diagnosticIntent:compileSignalDefinition({englishPhrases:["debug","diagnose","error","errors","incident","investigate","log","logs","runtime","stalled","stuck","trace","triage","root cause","what happened","why is","why are","why did","why was"],compactPhrases:["\u62A5\u9519","\u9519\u8BEF","\u600E\u4E48\u56DE\u4E8B","\u6392\u67E5","\u65E5\u5FD7","\u751F\u6210\u60C5\u51B5","\u5361\u4F4F","\u8C03\u8BD5","\u8BCA\u65AD","\u8FD0\u884C\u60C5\u51B5","\u4E3A\u4EC0\u4E48","\u539F\u56E0","\u6839\u56E0"],regexes:[{label:"inspect logs or runtime",regex:/\b(?:check|inspect|investigate|debug|diagnose|triage)\b[\s\S]{0,40}\b(?:log|logs|runtime|state|status|stuck|error|trace)\b/i},{label:"chinese inspect logs or status",regex:/(?:看看|检查|排查|诊断).{0,20}(?:日志|报错|错误|状态|运行情况|卡住|异常)|(?:日志|报错|错误|状态).{0,20}(?:看看|检查|排查|诊断|怎么回事)/u},{label:"current project incident",regex:/当前项目.{0,24}(?:报错|错误|异常|问题|状态|情况|怎么回事|排查|卡住|失败|崩溃|不对)|(?:排查|诊断|检查|看看).{0,16}当前项目.{0,24}(?:报错|错误|异常|问题|卡住|失败|崩溃)/u},{label:"current runtime situation",regex:/当前(?:情况|状态).{0,20}(?:报错|错误|异常|问题|排查|卡住|失败|不对|怎么回事)/u}]}),analysisIntent:compileSignalDefinition({englishPhrases:["compare","comparison","benchmark","competitive landscape","product analysis","evaluate the product","how friendly","market position","horizontal comparison","objective analysis"],compactPhrases:["\u5BA2\u89C2\u5206\u6790","\u6A2A\u5411\u5BF9\u6BD4","\u6A2A\u5411\u6BD4\u8F83","\u7ADE\u54C1\u5BF9\u6BD4","\u7ADE\u54C1\u5206\u6790","\u4EA7\u54C1\u529B","\u53CB\u597D\u7A0B\u5EA6","\u7528\u6237\u4F53\u9A8C","\u5BF9\u6BD4\u5206\u6790","\u6BD4\u8F83\u5206\u6790","\u4E3B\u6D41cli","\u7AF6\u5408\u5206\u6790","\u88FD\u54C1\u5206\u6790","\u6A2A\u65AD\u6BD4\u8F03","\u30E6\u30FC\u30B6\u30FC\u4F53\u9A13"],regexes:[{label:"chinese product or project analysis",regex:/(?:客观)?分析(?:一下)?(?:当前|这个|本)?(?:项目|产品|竞品|cli|工具)|(?:横向|全面|详细)?(?:对比|比较)(?:一下)?(?:全部|所有|主流)?/iu},{label:"english analyze or compare products",regex:/\b(?:analyze|analysis|compare|comparison|benchmark|evaluate)\b[\s\S]{0,80}\b(?:product|cli|tool|competitor|competitors|landscape|market|project)\b/i},{label:"user friendliness evaluation",regex:/(?:对|面向)(?:中国|国内)?(?:用户|开发者).{0,24}(?:友好|体验|适配)|(?:用户|产品)(?:友好|体验).{0,24}(?:如何|怎么样)/iu},{label:"japanese product analysis",regex:/(?:競合|製品|プロダクト|cli|ツール).{0,12}(?:分析|比較)|(?:横断|水平).{0,6}(?:比較|分析)/u}]}),researchIntent:compileSignalDefinition({englishPhrases:["explain","show me","what files","where is","where are","which files","locate","point me to"],compactPhrases:["\u4EC0\u4E48\u6587\u4EF6","\u54EA\u4E9B\u6587\u4EF6","\u5728\u54EA\u91CC","\u89E3\u91CA","\u54EA\u4E2A\u6587\u4EF6","\u54EA\u4E9B\u5730\u65B9","\u7ED9\u6211\u770B\u770B","\u3069\u306E\u30D5\u30A1\u30A4\u30EB","\u3069\u3053\u306B\u3042\u308B","\u8AAC\u660E\u3057\u3066"]}),reviewIntent:compileSignalDefinition({englishPhrases:["audit","code review","review this","review the","review my","review our","sanity check","review this patch","review the diff","review the pr","review the change","review the changes"],compactPhrases:["\u4EE3\u7801\u5BA1\u67E5","\u5BA1\u67E5\u4EE3\u7801","\u5BA1\u67E5\u4E00\u4E0B","\u5BA1\u67E5\u4E0B","\u5BA1\u67E5\u8FD9\u4E2A","\u5BA1\u67E5\u8FD9\u6BB5","\u5BA1\u67E5\u6539\u52A8","\u5BA1\u67E5\u53D8\u66F4","\u5BA1\u67E5diff","\u5BA1\u67E5pr","\u505A\u5BA1\u67E5","\u505A\u4E2A\u5BA1\u67E5","\u505A\u4E00\u6B21\u5BA1\u67E5","\u8BF7\u5BA1\u67E5","\u5E2E\u6211\u5BA1\u67E5","\u5E2E\u5FD9\u5BA1\u67E5","\u5B89\u5168\u5BA1\u67E5","\u4EE3\u7801\u8BC4\u5BA1","\u8BC4\u5BA1\u4EE3\u7801","\u8BC4\u5BA1\u4E00\u4E0B","\u8BC4\u5BA1\u6539\u52A8","\u8FC7\u4E00\u904D\u4EE3\u7801","\u8FC7\u4E00\u904D\u6539\u52A8","\u68C0\u67E5\u6539\u52A8","\u770B\u6539\u52A8","\u98CE\u9669\u70B9","\u30B3\u30FC\u30C9\u30EC\u30D3\u30E5\u30FC","\u30EC\u30D3\u30E5\u30FC\u3057\u3066","\u30EC\u30D3\u30E5\u30FC\u304A\u9858\u3044","\u30EC\u30D3\u30E5\u30FC\u3057\u3066\u304F\u308C","\u3053\u306E\u5909\u66F4\u3092\u30EC\u30D3\u30E5\u30FC","\u5DEE\u5206\u3092\u30EC\u30D3\u30E5\u30FC","\u5909\u66F4\u3092\u30EC\u30D3\u30E5\u30FC","\u5BE9\u67FB\u3057\u3066","\u30B3\u30FC\u30C9\u5BE9\u67FB"],regexes:[{label:"english review/audit with code object",regex:/\b(review|audit)\b[\s\S]{0,40}\b(this|the|my|our|code|patch|diff|pr|change|changes|pull request)\b/i},{label:"chinese review collocation",regex:/(?:请|帮我|帮忙)?(?:审查|评审)(?:一下|下)?(?:这个|这段|本次)?(?:代码|改动|变更|diff|pr|补丁)|(?:代码|改动|变更).{0,6}(?:审查|评审)/iu}]})}}});var init_sessionWorkflowContinuityCore=__esm({"src/utils/sessionWorkflowContinuityCore.ts"(){init_outcomeDiscipline();init_userTurnIntent()}});import{randomUUID}from"crypto";var init_crypto=__esm({"src/utils/crypto.ts"(){}});function getSessionSettingsCache(){return sessionSettingsCache}function setSessionSettingsCache(value){sessionSettingsCache=value}function getCachedSettingsForSource(source){return perSourceCache.has(source)?perSourceCache.get(source):void 0}function setCachedSettingsForSource(source,value){perSourceCache.set(source,value)}function getCachedParsedFile(path10){return parseFileCache.get(path10)}function setCachedParsedFile(path10,value){parseFileCache.set(path10,value)}function resetSettingsCache(){sessionSettingsCache=null,perSourceCache.clear(),parseFileCache.clear()}function getPluginSettingsBase(){return pluginSettingsBase}var sessionSettingsCache,perSourceCache,parseFileCache,pluginSettingsBase,init_settingsCache=__esm({"src/utils/settings/settingsCache.ts"(){sessionSettingsCache=null;__name(getSessionSettingsCache,"getSessionSettingsCache");__name(setSessionSettingsCache,"setSessionSettingsCache");perSourceCache=new Map;__name(getCachedSettingsForSource,"getCachedSettingsForSource");__name(setCachedSettingsForSource,"setCachedSettingsForSource");parseFileCache=new Map;__name(getCachedParsedFile,"getCachedParsedFile");__name(setCachedParsedFile,"setCachedParsedFile");__name(resetSettingsCache,"resetSettingsCache");__name(getPluginSettingsBase,"getPluginSettingsBase")}});function createSignal(){let listeners=new Set;return{subscribe(listener){return listeners.add(listener),()=>{listeners.delete(listener)}},emit(...args){for(let listener of listeners)listener(...args)},clear(){listeners.clear()}}}var init_signal=__esm({"src/utils/signal.ts"(){__name(createSignal,"createSignal")}});import{realpathSync}from"fs";import{cwd}from"process";function getInitialState(){let resolvedCwd="";if(typeof process<"u"&&typeof process.cwd=="function"&&typeof realpathSync=="function"){let rawCwd=cwd();try{resolvedCwd=realpathSync(rawCwd).normalize("NFC")}catch{resolvedCwd=rawCwd.normalize("NFC")}}return{originalCwd:resolvedCwd,projectRoot:resolvedCwd,totalCostUSD:0,totalAPIDuration:0,totalAPIDurationWithoutRetries:0,totalToolDuration:0,turnHookDurationMs:0,turnToolDurationMs:0,turnClassifierDurationMs:0,turnToolCount:0,turnHookCount:0,turnClassifierCount:0,sessionTurnCount:0,sessionToolCallCount:0,sessionCompactionCount:0,startTime:Date.now(),lastInteractionTime:Date.now(),totalLinesAdded:0,totalLinesRemoved:0,hasUnknownModelCost:!1,costStateRestored:!1,cwd:resolvedCwd,modelUsage:{},mainLoopModelOverride:void 0,initialMainLoopModel:null,modelStrings:null,isInteractive:!1,kairosActive:!1,strictToolResultPairing:!1,sdkAgentProgressSummariesEnabled:!1,userMsgOptIn:!1,clientType:"cli",sessionSource:void 0,questionPreviewFormat:void 0,sessionIngressToken:void 0,oauthTokenFromFd:void 0,apiKeyFromFd:void 0,flagSettingsPath:void 0,flagSettingsInline:null,allowedSettingSources:["userSettings","projectSettings","localSettings","flagSettings","policySettings"],meter:null,sessionCounter:null,locCounter:null,prCounter:null,commitCounter:null,costCounter:null,tokenCounter:null,codeEditToolDecisionCounter:null,activeTimeCounter:null,statsStore:null,sessionId:randomUUID(),parentSessionId:void 0,loggerProvider:null,eventLogger:null,meterProvider:null,tracerProvider:null,agentColorMap:new Map,agentColorIndex:0,lastAPIRequest:null,lastAPIRequestMessages:null,lastClassifierRequests:null,cachedClaudeMdContent:null,inMemoryErrorLog:[],inlinePlugins:[],chromeFlagOverride:void 0,modelLaunch:{requested:null,effective:null,source:null},useCoworkPlugins:!1,sessionBypassPermissionsMode:!1,scheduledTasksEnabled:!1,sessionCronTasks:[],sessionCreatedTeams:new Set,sessionTrustAccepted:!1,sessionPersistenceDisabled:!1,hasExitedPlanMode:!1,needsPlanModeExitAttachment:!1,needsAutoModeExitAttachment:!1,lspRecommendationShownThisSession:!1,initJsonSchema:null,registeredHooks:null,planSlugCache:new Map,teleportedSessionInfo:null,invokedSkills:new Map,slowOperations:[],sessionWorkflowContinuityContext:null,sdkBetas:void 0,mainThreadAgentType:void 0,isRemoteMode:!1,...process.env.USER_TYPE==="ant"?{replBridgeActive:!1}:{},directConnectServerUrl:void 0,systemPromptSectionCache:new Map,lastEmittedDate:null,additionalDirectoriesForClaudeMd:[],allowedChannels:[],hasDevChannels:!1,sessionProjectDir:null,promptCache1hAllowlist:null,promptCache1hEligible:null,afkModeHeaderLatched:null,fastModeHeaderLatched:null,cacheEditingHeaderLatched:null,thinkingClearLatched:null,promptId:null,lastMainRequestId:void 0,lastApiCompletionTimestamp:null,pendingPostCompaction:!1,postCompactionAutoCompactState:null}}function getSessionId(){return STATE.sessionId}function getOriginalCwd(){return STATE.originalCwd}function getProjectRoot(){return STATE.projectRoot}function getCwdState(){return STATE.cwd}async function waitForScrollIdle(){for(;scrollDraining;)await new Promise(r2=>setTimeout(r2,SCROLL_DRAIN_IDLE_MS).unref?.())}function getModelStrings(){return STATE.modelStrings}function setModelStrings(modelStrings){STATE.modelStrings=modelStrings}function resetModelStrings(){STATE.modelStrings=null}function getIsNonInteractiveSession(){return!STATE.isInteractive}function getFlagSettingsPath(){return STATE.flagSettingsPath}function getFlagSettingsInline(){return STATE.flagSettingsInline}function getOauthTokenFromFd(){return STATE.oauthTokenFromFd}function setOauthTokenFromFd(token){STATE.oauthTokenFromFd=token}function getApiKeyFromFd(){return STATE.apiKeyFromFd}function setApiKeyFromFd(key){STATE.apiKeyFromFd=key}function getAllowedSettingSources(){return STATE.allowedSettingSources}function preferThirdPartyAuthentication(){return getIsNonInteractiveSession()&&STATE.clientType!=="claude-vscode"}function getUseCoworkPlugins(){return STATE.useCoworkPlugins}function getSessionTrustAccepted(){return STATE.sessionTrustAccepted}var STATE,sessionSwitched,onSessionSwitch,scrollDraining,SCROLL_DRAIN_IDLE_MS,init_state=__esm({"src/bootstrap/state.ts"(){init_sessionWorkflowContinuityCore();init_crypto();init_settingsCache();init_signal();__name(getInitialState,"getInitialState");STATE=getInitialState();__name(getSessionId,"getSessionId");sessionSwitched=createSignal(),onSessionSwitch=sessionSwitched.subscribe;__name(getOriginalCwd,"getOriginalCwd");__name(getProjectRoot,"getProjectRoot");__name(getCwdState,"getCwdState");scrollDraining=!1,SCROLL_DRAIN_IDLE_MS=150;__name(waitForScrollIdle,"waitForScrollIdle");__name(getModelStrings,"getModelStrings");__name(setModelStrings,"setModelStrings");__name(resetModelStrings,"resetModelStrings");__name(getIsNonInteractiveSession,"getIsNonInteractiveSession");__name(getFlagSettingsPath,"getFlagSettingsPath");__name(getFlagSettingsInline,"getFlagSettingsInline");__name(getOauthTokenFromFd,"getOauthTokenFromFd");__name(setOauthTokenFromFd,"setOauthTokenFromFd");__name(getApiKeyFromFd,"getApiKeyFromFd");__name(setApiKeyFromFd,"setApiKeyFromFd");__name(getAllowedSettingSources,"getAllowedSettingSources");__name(preferThirdPartyAuthentication,"preferThirdPartyAuthentication");__name(getUseCoworkPlugins,"getUseCoworkPlugins");__name(getSessionTrustAccepted,"getSessionTrustAccepted")}});function getPolyfills(){return polyfills}function hashFnv32a(str){let hval=2166136261,l=str.length;for(let i3=0;i3<l;i3++)hval^=str.charCodeAt(i3),hval+=(hval<<1)+(hval<<4)+(hval<<7)+(hval<<8)+(hval<<24);return hval>>>0}function hash(seed,value,version2){return version2===2?hashFnv32a(hashFnv32a(seed+value)+"")%1e4/1e4:version2===1?hashFnv32a(value+seed)%1e3/1e3:null}function getEqualWeights(n2){return n2<=0?[]:new Array(n2).fill(1/n2)}function inRange(n2,range2){return n2>=range2[0]&&n2<range2[1]}function inNamespace(hashValue,namespace){let n2=hash("__"+namespace[0],hashValue,1);return n2===null?!1:n2>=namespace[1]&&n2<namespace[2]}function chooseVariation(n2,ranges){for(let i3=0;i3<ranges.length;i3++)if(inRange(n2,ranges[i3]))return i3;return-1}function getUrlRegExp(regexString){try{let escaped=regexString.replace(/([^\\])\//g,"$1\\/");return new RegExp(escaped)}catch(e2){console.error(e2);return}}function isURLTargeted(url3,targets){if(!targets.length)return!1;let hasIncludeRules=!1,isIncluded2=!1;for(let i3=0;i3<targets.length;i3++){let match=_evalURLTarget(url3,targets[i3].type,targets[i3].pattern);if(targets[i3].include===!1){if(match)return!1}else hasIncludeRules=!0,match&&(isIncluded2=!0)}return isIncluded2||!hasIncludeRules}function _evalSimpleUrlPart(actual,pattern,isPath){try{let escaped=pattern.replace(/[*.+?^${}()|[\]\\]/g,"\\$&").replace(/_____/g,".*");return isPath&&(escaped="\\/?"+escaped.replace(/(^\/|\/$)/g,"")+"\\/?"),new RegExp("^"+escaped+"$","i").test(actual)}catch{return!1}}function _evalSimpleUrlTarget(actual,pattern){try{let expected=new URL(pattern.replace(/^([^:/?]*)\./i,"https://$1.").replace(/\*/g,"_____"),"https://_____"),comps=[[actual.host,expected.host,!1],[actual.pathname,expected.pathname,!0]];return expected.hash&&comps.push([actual.hash,expected.hash,!1]),expected.searchParams.forEach((v,k)=>{comps.push([actual.searchParams.get(k)||"",v,!1])}),!comps.some(data=>!_evalSimpleUrlPart(data[0],data[1],data[2]))}catch{return!1}}function _evalURLTarget(url3,type,pattern){try{let parsed=new URL(url3,"https://_");if(type==="regex"){let regex=getUrlRegExp(pattern);return regex?regex.test(parsed.href)||regex.test(parsed.href.substring(parsed.origin.length)):!1}else if(type==="simple")return _evalSimpleUrlTarget(parsed,pattern);return!1}catch{return!1}}function getBucketRanges(numVariations,coverage,weights){coverage=coverage===void 0?1:coverage,coverage<0?(process.env.NODE_ENV!=="production"&&console.error("Experiment.coverage must be greater than or equal to 0"),coverage=0):coverage>1&&(process.env.NODE_ENV!=="production"&&console.error("Experiment.coverage must be less than or equal to 1"),coverage=1);let equal=getEqualWeights(numVariations);weights=weights||equal,weights.length!==numVariations&&(process.env.NODE_ENV!=="production"&&console.error("Experiment.weights array must be the same length as Experiment.variations"),weights=equal);let totalWeight=weights.reduce((w,sum2)=>sum2+w,0);(totalWeight<.99||totalWeight>1.01)&&(process.env.NODE_ENV!=="production"&&console.error("Experiment.weights must add up to 1"),weights=equal);let cumulative=0;return weights.map(w=>{let start=cumulative;return cumulative+=w,[start,start+coverage*w]})}function getQueryStringOverride(id,url3,numVariations){if(!url3)return null;let search=url3.split("?")[1];if(!search)return null;let match=search.replace(/#.*/,"").split("&").map(kv=>kv.split("=",2)).filter(([k])=>k===id).map(([,v])=>parseInt(v));return match.length>0&&match[0]>=0&&match[0]<numVariations?match[0]:null}function isIncluded(include){try{return include()}catch(e2){return console.error(e2),!1}}async function decrypt(encryptedString,decryptionKey,subtle){if(decryptionKey=decryptionKey||"",subtle=subtle||globalThis.crypto&&globalThis.crypto.subtle||polyfills.SubtleCrypto,!subtle)throw new Error("No SubtleCrypto implementation found");try{let key=await subtle.importKey("raw",base64ToBuf(decryptionKey),{name:"AES-CBC",length:128},!0,["encrypt","decrypt"]),[iv,cipherText]=encryptedString.split("."),plainTextBuffer=await subtle.decrypt({name:"AES-CBC",iv:base64ToBuf(iv)},key,base64ToBuf(cipherText));return new TextDecoder().decode(plainTextBuffer)}catch{throw new Error("Failed to decrypt")}}function toString2(input){return typeof input=="string"?input:JSON.stringify(input)}function paddedVersionString(input){typeof input=="number"&&(input=input+""),(!input||typeof input!="string")&&(input="0");let parts=input.replace(/(^v|\+.*$)/g,"").split(/[-.]/);return parts.length===3&&parts.push("~"),parts.map(v=>v.match(/^[0-9]+$/)?v.padStart(5," "):v).join("-")}function loadSDKVersion(){let version2;try{version2="1.6.5"}catch{version2=""}return version2}function mergeQueryStrings(oldUrl,newUrl){let currUrl,redirectUrl;try{currUrl=new URL(oldUrl),redirectUrl=new URL(newUrl)}catch(e2){return console.error(`Unable to merge query strings: ${e2}`),newUrl}return currUrl.searchParams.forEach((value,key)=>{redirectUrl.searchParams.has(key)||redirectUrl.searchParams.set(key,value)}),redirectUrl.toString()}function isObj(x2){return typeof x2=="object"&&x2!==null}function getAutoExperimentChangeType(exp){return exp.urlPatterns&&exp.variations.some(variation=>isObj(variation)&&"urlRedirect"in variation)?"redirect":exp.variations.some(variation=>isObj(variation)&&(variation.domMutations||"js"in variation||"css"in variation))?"visual":"unknown"}async function promiseTimeout(promise2,timeout){return new Promise(resolve9=>{let resolved=!1,timer,finish=__name(data=>{resolved||(resolved=!0,timer&&clearTimeout(timer),resolve9(data||null))},"finish");timeout&&(timer=setTimeout(()=>finish(),timeout)),promise2.then(data=>finish(data)).catch(()=>finish())})}var polyfills,base64ToBuf,init_util=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/util.mjs"(){polyfills={fetch:globalThis.fetch?globalThis.fetch.bind(globalThis):void 0,SubtleCrypto:globalThis.crypto?globalThis.crypto.subtle:void 0,EventSource:globalThis.EventSource};__name(getPolyfills,"getPolyfills");__name(hashFnv32a,"hashFnv32a");__name(hash,"hash");__name(getEqualWeights,"getEqualWeights");__name(inRange,"inRange");__name(inNamespace,"inNamespace");__name(chooseVariation,"chooseVariation");__name(getUrlRegExp,"getUrlRegExp");__name(isURLTargeted,"isURLTargeted");__name(_evalSimpleUrlPart,"_evalSimpleUrlPart");__name(_evalSimpleUrlTarget,"_evalSimpleUrlTarget");__name(_evalURLTarget,"_evalURLTarget");__name(getBucketRanges,"getBucketRanges");__name(getQueryStringOverride,"getQueryStringOverride");__name(isIncluded,"isIncluded");base64ToBuf=__name(b=>Uint8Array.from(atob(b),c3=>c3.charCodeAt(0)),"base64ToBuf");__name(decrypt,"decrypt");__name(toString2,"toString");__name(paddedVersionString,"paddedVersionString");__name(loadSDKVersion,"loadSDKVersion");__name(mergeQueryStrings,"mergeQueryStrings");__name(isObj,"isObj");__name(getAutoExperimentChangeType,"getAutoExperimentChangeType");__name(promiseTimeout,"promiseTimeout")}});function configureCache(overrides){Object.assign(cacheSettings,overrides),cacheSettings.backgroundSync||clearAutoRefresh()}async function refreshFeatures({instance,timeout,skipCache,allowStale,backgroundSync}){return backgroundSync||(cacheSettings.backgroundSync=!1),fetchFeaturesWithCache({instance,allowStale,timeout,skipCache})}function subscribe(instance){let key=getKey(instance),subs=subscribedInstances.get(key)||new Set;subs.add(instance),subscribedInstances.set(key,subs)}function unsubscribe(instance){subscribedInstances.forEach(s2=>s2.delete(instance))}function onHidden(){streams.forEach(channel=>{channel&&(channel.state="idle",disableChannel(channel))})}function onVisible(){streams.forEach(channel=>{channel&&channel.state==="idle"&&enableChannel(channel)})}async function updatePersistentCache(){try{if(!polyfills2.localStorage)return;await polyfills2.localStorage.setItem(cacheSettings.cacheKey,JSON.stringify(Array.from(cache.entries())))}catch{}}async function fetchFeaturesWithCache({instance,allowStale,timeout,skipCache}){let key=getKey(instance),cacheKey=getCacheKey(instance),now2=new Date,minStaleAt=new Date(now2.getTime()-cacheSettings.maxAge+cacheSettings.staleTTL);await initializeCache();let existing=!cacheSettings.disableCache&&!skipCache?cache.get(cacheKey):void 0;return existing&&(allowStale||existing.staleAt>now2)&&existing.staleAt>minStaleAt?(existing.sse&&supportsSSE.add(key),existing.staleAt<now2?fetchFeatures(instance):startAutoRefresh(instance),{data:existing.data,success:!0,source:"cache"}):await promiseTimeout(fetchFeatures(instance),timeout)||{data:null,success:!1,source:"timeout",error:new Error("Timeout")}}function getKey(instance){let[apiHost,clientKey]=instance.getApiInfo();return`${apiHost}||${clientKey}`}function getCacheKey(instance){let baseKey=getKey(instance);if(!("isRemoteEval"in instance)||!instance.isRemoteEval())return baseKey;let attributes=instance.getAttributes(),cacheKeyAttributes=instance.getCacheKeyAttributes()||Object.keys(instance.getAttributes()),ca={};cacheKeyAttributes.forEach(key=>{ca[key]=attributes[key]});let fv=instance.getForcedVariations(),url3=instance.getUrl();return`${baseKey}||${JSON.stringify({ca,fv,url:url3})}`}async function initializeCache(){if(!cacheInitialized){cacheInitialized=!0;try{if(polyfills2.localStorage){let value=await polyfills2.localStorage.getItem(cacheSettings.cacheKey);if(!cacheSettings.disableCache&&value){let parsed=JSON.parse(value);parsed&&Array.isArray(parsed)&&parsed.forEach(([key,data])=>{cache.set(key,{...data,staleAt:new Date(data.staleAt)})}),cleanupCache()}}}catch{}if(!cacheSettings.disableIdleStreams){let cleanupFn=helpers.startIdleListener();cleanupFn&&(helpers.stopIdleListener=cleanupFn)}}}function cleanupCache(){let entriesWithTimestamps=Array.from(cache.entries()).map(([key,value])=>({key,staleAt:value.staleAt.getTime()})).sort((a2,b)=>a2.staleAt-b.staleAt),entriesToRemoveCount=Math.min(Math.max(0,cache.size-cacheSettings.maxEntries),cache.size);for(let i3=0;i3<entriesToRemoveCount;i3++)cache.delete(entriesWithTimestamps[i3].key)}function onNewFeatureData(key,cacheKey,data){let version2=data.dateUpdated||"",staleAt=new Date(Date.now()+cacheSettings.staleTTL),existing=cacheSettings.disableCache?void 0:cache.get(cacheKey);if(existing&&version2&&existing.version===version2){existing.staleAt=staleAt,updatePersistentCache();return}cacheSettings.disableCache||(cache.set(cacheKey,{data,version:version2,staleAt,sse:supportsSSE.has(key)}),cleanupCache()),updatePersistentCache();let instances=subscribedInstances.get(key);instances&&instances.forEach(instance=>refreshInstance(instance,data))}async function refreshInstance(instance,data){await instance.setPayload(data||instance.getPayload())}async function fetchFeatures(instance){let{apiHost,apiRequestHeaders}=instance.getApiHosts(),clientKey=instance.getClientKey(),remoteEval="isRemoteEval"in instance&&instance.isRemoteEval(),key=getKey(instance),cacheKey=getCacheKey(instance),promise2=activeFetches.get(cacheKey);return promise2||(promise2=(remoteEval?helpers.fetchRemoteEvalCall({host:apiHost,clientKey,payload:{attributes:instance.getAttributes(),forcedVariations:instance.getForcedVariations(),forcedFeatures:Array.from(instance.getForcedFeatures().entries()),url:instance.getUrl()},headers:apiRequestHeaders}):helpers.fetchFeaturesCall({host:apiHost,clientKey,headers:apiRequestHeaders})).then(res=>{if(!res.ok)throw new Error(`HTTP error: ${res.status}`);return res.headers.get("x-sse-support")==="enabled"&&supportsSSE.add(key),res.json()}).then(data=>(onNewFeatureData(key,cacheKey,data),startAutoRefresh(instance),activeFetches.delete(cacheKey),{data,success:!0,source:"network"})).catch(e2=>(process.env.NODE_ENV!=="production"&&instance.log("Error fetching features",{apiHost,clientKey,error:e2?e2.message:null}),activeFetches.delete(cacheKey),{data:null,source:"error",success:!1,error:e2})),activeFetches.set(cacheKey,promise2)),promise2}function startAutoRefresh(instance,forceSSE=!1){let key=getKey(instance),cacheKey=getCacheKey(instance),{streamingHost,streamingHostRequestHeaders}=instance.getApiHosts(),clientKey=instance.getClientKey();if(forceSSE&&supportsSSE.add(key),cacheSettings.backgroundSync&&supportsSSE.has(key)&&polyfills2.EventSource){if(streams.has(key))return;let channel={src:null,host:streamingHost,clientKey,headers:streamingHostRequestHeaders,cb:__name(event=>{try{if(event.type==="features-updated"){let instances=subscribedInstances.get(key);instances&&instances.forEach(instance2=>{fetchFeatures(instance2)})}else if(event.type==="features"){let json2=JSON.parse(event.data);onNewFeatureData(key,cacheKey,json2)}channel.errors=0}catch(e2){process.env.NODE_ENV!=="production"&&instance.log("SSE Error",{streamingHost,clientKey,error:e2?e2.message:null}),onSSEError(channel)}},"cb"),errors:0,state:"active"};streams.set(key,channel),enableChannel(channel)}}function onSSEError(channel){if(channel.state!=="idle"&&(channel.errors++,channel.errors>3||channel.src&&channel.src.readyState===2)){let delay2=Math.pow(3,channel.errors-3)*(1e3+Math.random()*1e3);disableChannel(channel),setTimeout(()=>{["idle","active"].includes(channel.state)||enableChannel(channel)},Math.min(delay2,3e5))}}function disableChannel(channel){channel.src&&(channel.src.onopen=null,channel.src.onerror=null,channel.src.close(),channel.src=null,channel.state==="active"&&(channel.state="disabled"))}function enableChannel(channel){channel.src=helpers.eventSourceCall({host:channel.host,clientKey:channel.clientKey,headers:channel.headers}),channel.state="active",channel.src.addEventListener("features",channel.cb),channel.src.addEventListener("features-updated",channel.cb),channel.src.onerror=()=>onSSEError(channel),channel.src.onopen=()=>{channel.errors=0}}function destroyChannel(channel,key){disableChannel(channel),streams.delete(key)}function clearAutoRefresh(){supportsSSE.clear(),streams.forEach(destroyChannel),subscribedInstances.clear(),helpers.stopIdleListener()}function startStreaming(instance,options){if(options.streaming){if(!instance.getClientKey())throw new Error("Must specify clientKey to enable streaming");options.payload&&startAutoRefresh(instance,!0),subscribe(instance)}}var cacheSettings,polyfills2,helpers,subscribedInstances,cacheInitialized,cache,activeFetches,streams,supportsSSE,init_feature_repository=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/feature-repository.mjs"(){init_util();cacheSettings={staleTTL:1e3*60,maxAge:1e3*60*60*4,cacheKey:"gbFeaturesCache",backgroundSync:!0,maxEntries:10,disableIdleStreams:!1,idleStreamInterval:2e4,disableCache:!1},polyfills2=getPolyfills(),helpers={fetchFeaturesCall:__name(({host,clientKey,headers})=>polyfills2.fetch(`${host}/api/features/${clientKey}`,{headers}),"fetchFeaturesCall"),fetchRemoteEvalCall:__name(({host,clientKey,payload,headers})=>{let options={method:"POST",headers:{"Content-Type":"application/json",...headers},body:JSON.stringify(payload)};return polyfills2.fetch(`${host}/api/eval/${clientKey}`,options)},"fetchRemoteEvalCall"),eventSourceCall:__name(({host,clientKey,headers})=>headers?new polyfills2.EventSource(`${host}/sub/${clientKey}`,{headers}):new polyfills2.EventSource(`${host}/sub/${clientKey}`),"eventSourceCall"),startIdleListener:__name(()=>{let idleTimeout;if(!(typeof window<"u"&&typeof document<"u"))return;let onVisibilityChange=__name(()=>{document.visibilityState==="visible"?(window.clearTimeout(idleTimeout),onVisible()):document.visibilityState==="hidden"&&(idleTimeout=window.setTimeout(onHidden,cacheSettings.idleStreamInterval))},"onVisibilityChange");return document.addEventListener("visibilitychange",onVisibilityChange),()=>document.removeEventListener("visibilitychange",onVisibilityChange)},"startIdleListener"),stopIdleListener:__name(()=>{},"stopIdleListener")};try{globalThis.localStorage&&(polyfills2.localStorage=globalThis.localStorage)}catch{}subscribedInstances=new Map,cacheInitialized=!1,cache=new Map,activeFetches=new Map,streams=new Map,supportsSSE=new Set;__name(configureCache,"configureCache");__name(refreshFeatures,"refreshFeatures");__name(subscribe,"subscribe");__name(unsubscribe,"unsubscribe");__name(onHidden,"onHidden");__name(onVisible,"onVisible");__name(updatePersistentCache,"updatePersistentCache");__name(fetchFeaturesWithCache,"fetchFeaturesWithCache");__name(getKey,"getKey");__name(getCacheKey,"getCacheKey");__name(initializeCache,"initializeCache");__name(cleanupCache,"cleanupCache");__name(onNewFeatureData,"onNewFeatureData");__name(refreshInstance,"refreshInstance");__name(fetchFeatures,"fetchFeatures");__name(startAutoRefresh,"startAutoRefresh");__name(onSSEError,"onSSEError");__name(disableChannel,"disableChannel");__name(enableChannel,"enableChannel");__name(destroyChannel,"destroyChannel");__name(clearAutoRefresh,"clearAutoRefresh");__name(startStreaming,"startStreaming")}});var require_dom_mutator_cjs_production_min=__commonJS({"../../node_modules/dom-mutator/dist/dom-mutator.cjs.production.min.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var e2=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,t2={revert:__name(function(){},"revert")},n2=new Map,r2=new Set;function i3(e3){var t3=n2.get(e3);return t3||n2.set(e3,t3={element:e3,attributes:{}}),t3}__name(i3,"i");function o2(e3,t3,n3,r3,i4){var o3=n3(e3),u3={isDirty:!1,originalValue:o3,virtualValue:o3,mutations:[],el:e3,_positionTimeout:null,observer:new MutationObserver((function(){if(t3!=="position"||!u3._positionTimeout){t3==="position"&&(u3._positionTimeout=setTimeout((function(){u3._positionTimeout=null}),1e3));var r4=n3(e3);t3==="position"&&r4.parentNode===u3.virtualValue.parentNode&&r4.insertBeforeNode===u3.virtualValue.insertBeforeNode||r4!==u3.virtualValue&&(u3.originalValue=r4,i4(u3))}})),mutationRunner:i4,setValue:r3,getCurrentValue:n3};return t3==="position"&&e3.parentNode?u3.observer.observe(e3.parentNode,{childList:!0,subtree:!0,attributes:!1,characterData:!1}):u3.observer.observe(e3,(function(e4){return e4==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[e4]}})(t3)),u3}__name(o2,"o");function u2(e3,t3){var n3=t3.getCurrentValue(t3.el);t3.virtualValue=e3,e3&&typeof e3!="string"?n3&&e3.parentNode===n3.parentNode&&e3.insertBeforeNode===n3.insertBeforeNode||(t3.isDirty=!0,E()):e3!==n3&&(t3.isDirty=!0,E())}__name(u2,"u");function a2(e3){var t3=e3.originalValue;e3.mutations.forEach((function(e4){return t3=e4.mutate(t3)})),u2((function(e4){return h3||(h3=document.createElement("div")),h3.innerHTML=e4,h3.innerHTML})(t3),e3)}__name(a2,"a");function l(e3){var t3=new Set(e3.originalValue.split(/\s+/).filter(Boolean));e3.mutations.forEach((function(e4){return e4.mutate(t3)})),u2(Array.from(t3).filter(Boolean).join(" "),e3)}__name(l,"l");function s2(e3){var t3=e3.originalValue;e3.mutations.forEach((function(e4){return t3=e4.mutate(t3)})),u2(t3,e3)}__name(s2,"s");function c3(e3){var t3=e3.originalValue;e3.mutations.forEach((function(e4){var n3=(function(e5){var t4=e5.insertBeforeSelector,n4=document.querySelector(e5.parentSelector);if(!n4)return null;var r3=t4?document.querySelector(t4):null;return t4&&!r3?null:{parentNode:n4,insertBeforeNode:r3}})(e4.mutate());t3=n3||t3})),u2(t3,e3)}__name(c3,"c");var f3=__name(function(e3){return e3.innerHTML},"f"),d=__name(function(e3,t3){return e3.innerHTML=t3},"d");function m2(e3){var t3=i3(e3);return t3.html||(t3.html=o2(e3,"html",f3,d,a2)),t3.html}__name(m2,"m");var v=__name(function(e3){return{parentNode:e3.parentElement,insertBeforeNode:e3.nextElementSibling}},"v"),p=__name(function(e3,t3){t3.insertBeforeNode&&!t3.parentNode.contains(t3.insertBeforeNode)||t3.parentNode.insertBefore(e3,t3.insertBeforeNode)},"p");function b(e3){var t3=i3(e3);return t3.position||(t3.position=o2(e3,"position",v,p,c3)),t3.position}__name(b,"b");var h3,N,S2=__name(function(e3,t3){return t3?e3.className=t3:e3.removeAttribute("class")},"S"),B=__name(function(e3){return e3.className},"B");function V(e3){var t3=i3(e3);return t3.classes||(t3.classes=o2(e3,"class",B,S2,l)),t3.classes}__name(V,"V");function g(e3,t3){var n3,r3=i3(e3);return r3.attributes[t3]||(r3.attributes[t3]=o2(e3,t3,(n3=t3,function(e4){var t4;return(t4=e4.getAttribute(n3))!=null?t4:null}),(function(e4){return function(t4,n4){return n4!==null?t4.setAttribute(e4,n4):t4.removeAttribute(e4)}})(t3),s2)),r3.attributes[t3]}__name(g,"g");function y(e3,t3,r3){if(r3.isDirty){r3.isDirty=!1;var i4=r3.virtualValue;r3.mutations.length||(function(e4,t4){var r4,i5,o3=n2.get(e4);if(o3)if(t4==="html")(r4=o3.html)==null||(i5=r4.observer)==null||i5.disconnect(),delete o3.html;else if(t4==="class"){var u3,a3;(u3=o3.classes)==null||(a3=u3.observer)==null||a3.disconnect(),delete o3.classes}else if(t4==="position"){var l2,s3;(l2=o3.position)==null||(s3=l2.observer)==null||s3.disconnect(),delete o3.position}else{var c4,f4,d2;(c4=o3.attributes)==null||(f4=c4[t4])==null||(d2=f4.observer)==null||d2.disconnect(),delete o3.attributes[t4]}})(e3,t3),r3.setValue(e3,i4)}}__name(y,"y");function k(e3,t3){e3.html&&y(t3,"html",e3.html),e3.classes&&y(t3,"class",e3.classes),e3.position&&y(t3,"position",e3.position),Object.keys(e3.attributes).forEach((function(n3){y(t3,n3,e3.attributes[n3])}))}__name(k,"k");function E(){n2.forEach(k)}__name(E,"E");function w(e3){if(e3.kind!=="position"||e3.elements.size!==1){var t3=new Set(e3.elements);document.querySelectorAll(e3.selector).forEach((function(n3){t3.has(n3)||(e3.elements.add(n3),(function(e4,t4){var n4=null;e4.kind==="html"?n4=m2(t4):e4.kind==="class"?n4=V(t4):e4.kind==="attribute"?n4=g(t4,e4.attribute):e4.kind==="position"&&(n4=b(t4)),n4&&(n4.mutations.push(e4),n4.mutationRunner(n4))})(e3,n3))}))}}__name(w,"w");function A2(){r2.forEach(w)}__name(A2,"A");function T(){typeof document<"u"&&(N||(N=new MutationObserver((function(){A2()}))),A2(),N.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}__name(T,"T");function D(e3){return typeof document>"u"?t2:(r2.add(e3),w(e3),{revert:__name(function(){var t3;(t3=e3).elements.forEach((function(e4){return(function(e5,t4){var n3=null;if(e5.kind==="html"?n3=m2(t4):e5.kind==="class"?n3=V(t4):e5.kind==="attribute"?n3=g(t4,e5.attribute):e5.kind==="position"&&(n3=b(t4)),n3){var r3=n3.mutations.indexOf(e5);r3!==-1&&n3.mutations.splice(r3,1),n3.mutationRunner(n3)}})(t3,e4)})),t3.elements.clear(),r2.delete(t3)},"revert")})}__name(D,"D");function L(e3,t3){return D({kind:"html",elements:new Set,mutate:t3,selector:e3})}__name(L,"L");function M(e3,t3){return D({kind:"position",elements:new Set,mutate:t3,selector:e3})}__name(M,"M");function _(e3,t3){return D({kind:"class",elements:new Set,mutate:t3,selector:e3})}__name(_,"_");function x2(n3,r3,i4){return e2.test(r3)?r3==="class"||r3==="className"?_(n3,(function(e3){var t3=i4(Array.from(e3).join(" "));e3.clear(),t3&&t3.split(/\s+/g).filter(Boolean).forEach((function(t4){return e3.add(t4)}))})):D({kind:"attribute",attribute:r3,elements:new Set,mutate:i4,selector:n3}):t2}__name(x2,"x");T();var O={html:L,classes:_,attribute:x2,position:M,declarative:__name(function(e3){var n3=e3.selector,r3=e3.action,i4=e3.value,o3=e3.attribute,u3=e3.parentSelector,a3=e3.insertBeforeSelector;if(o3==="html"){if(r3==="append")return L(n3,(function(e4){return e4+(i4??"")}));if(r3==="set")return L(n3,(function(){return i4??""}))}else if(o3==="class"){if(r3==="append")return _(n3,(function(e4){i4&&e4.add(i4)}));if(r3==="remove")return _(n3,(function(e4){i4&&e4.delete(i4)}));if(r3==="set")return _(n3,(function(e4){e4.clear(),i4&&e4.add(i4)}))}else if(o3==="position"){if(r3==="set"&&u3)return M(n3,(function(){return{insertBeforeSelector:a3,parentSelector:u3}}))}else{if(r3==="append")return x2(n3,o3,(function(e4){return e4!==null?e4+(i4??""):i4??""}));if(r3==="set")return x2(n3,o3,(function(){return i4??""}));if(r3==="remove")return x2(n3,o3,(function(){return null}))}return t2},"declarative")};exports2.connectGlobalObserver=T,exports2.default=O,exports2.disconnectGlobalObserver=function(){N&&N.disconnect()},exports2.validAttributeName=e2}});var require_dom_mutator_cjs_development=__commonJS({"../../node_modules/dom-mutator/dist/dom-mutator.cjs.development.js"(exports2){"use strict";Object.defineProperty(exports2,"__esModule",{value:!0});var validAttributeName=/^[a-zA-Z:_][a-zA-Z0-9:_.-]*$/,nullController={revert:__name(function(){},"revert")},elements=new Map,mutations=new Set;function getObserverInit(attr){return attr==="html"?{childList:!0,subtree:!0,attributes:!0,characterData:!0}:{childList:!1,subtree:!1,attributes:!0,attributeFilter:[attr]}}__name(getObserverInit,"getObserverInit");function getElementRecord(element){var record2=elements.get(element);return record2||(record2={element,attributes:{}},elements.set(element,record2)),record2}__name(getElementRecord,"getElementRecord");function createElementPropertyRecord(el,attr,getCurrentValue,setValue2,mutationRunner){var currentValue=getCurrentValue(el),record2={isDirty:!1,originalValue:currentValue,virtualValue:currentValue,mutations:[],el,_positionTimeout:null,observer:new MutationObserver(function(){if(!(attr==="position"&&record2._positionTimeout)){attr==="position"&&(record2._positionTimeout=setTimeout(function(){record2._positionTimeout=null},1e3));var currentValue2=getCurrentValue(el);attr==="position"&&currentValue2.parentNode===record2.virtualValue.parentNode&&currentValue2.insertBeforeNode===record2.virtualValue.insertBeforeNode||currentValue2!==record2.virtualValue&&(record2.originalValue=currentValue2,mutationRunner(record2))}}),mutationRunner,setValue:setValue2,getCurrentValue};return attr==="position"&&el.parentNode?record2.observer.observe(el.parentNode,{childList:!0,subtree:!0,attributes:!1,characterData:!1}):record2.observer.observe(el,getObserverInit(attr)),record2}__name(createElementPropertyRecord,"createElementPropertyRecord");function queueIfNeeded(val,record2){var currentVal=record2.getCurrentValue(record2.el);record2.virtualValue=val,val&&typeof val!="string"?(!currentVal||val.parentNode!==currentVal.parentNode||val.insertBeforeNode!==currentVal.insertBeforeNode)&&(record2.isDirty=!0,runDOMUpdates()):val!==currentVal&&(record2.isDirty=!0,runDOMUpdates())}__name(queueIfNeeded,"queueIfNeeded");function htmlMutationRunner(record2){var val=record2.originalValue;record2.mutations.forEach(function(m2){return val=m2.mutate(val)}),queueIfNeeded(getTransformedHTML(val),record2)}__name(htmlMutationRunner,"htmlMutationRunner");function classMutationRunner(record2){var val=new Set(record2.originalValue.split(/\s+/).filter(Boolean));record2.mutations.forEach(function(m2){return m2.mutate(val)}),queueIfNeeded(Array.from(val).filter(Boolean).join(" "),record2)}__name(classMutationRunner,"classMutationRunner");function attrMutationRunner(record2){var val=record2.originalValue;record2.mutations.forEach(function(m2){return val=m2.mutate(val)}),queueIfNeeded(val,record2)}__name(attrMutationRunner,"attrMutationRunner");function _loadDOMNodes(_ref){var parentSelector=_ref.parentSelector,insertBeforeSelector=_ref.insertBeforeSelector,parentNode=document.querySelector(parentSelector);if(!parentNode)return null;var insertBeforeNode=insertBeforeSelector?document.querySelector(insertBeforeSelector):null;return insertBeforeSelector&&!insertBeforeNode?null:{parentNode,insertBeforeNode}}__name(_loadDOMNodes,"_loadDOMNodes");function positionMutationRunner(record2){var val=record2.originalValue;record2.mutations.forEach(function(m2){var selectors=m2.mutate(),newNodes=_loadDOMNodes(selectors);val=newNodes||val}),queueIfNeeded(val,record2)}__name(positionMutationRunner,"positionMutationRunner");var getHTMLValue=__name(function(el){return el.innerHTML},"getHTMLValue"),setHTMLValue=__name(function(el,value){return el.innerHTML=value},"setHTMLValue");function getElementHTMLRecord(element){var elementRecord=getElementRecord(element);return elementRecord.html||(elementRecord.html=createElementPropertyRecord(element,"html",getHTMLValue,setHTMLValue,htmlMutationRunner)),elementRecord.html}__name(getElementHTMLRecord,"getElementHTMLRecord");var getElementPosition=__name(function(el){return{parentNode:el.parentElement,insertBeforeNode:el.nextElementSibling}},"getElementPosition"),setElementPosition=__name(function(el,value){value.insertBeforeNode&&!value.parentNode.contains(value.insertBeforeNode)||value.parentNode.insertBefore(el,value.insertBeforeNode)},"setElementPosition");function getElementPositionRecord(element){var elementRecord=getElementRecord(element);return elementRecord.position||(elementRecord.position=createElementPropertyRecord(element,"position",getElementPosition,setElementPosition,positionMutationRunner)),elementRecord.position}__name(getElementPositionRecord,"getElementPositionRecord");var setClassValue=__name(function(el,val){return val?el.className=val:el.removeAttribute("class")},"setClassValue"),getClassValue=__name(function(el){return el.className},"getClassValue");function getElementClassRecord(el){var elementRecord=getElementRecord(el);return elementRecord.classes||(elementRecord.classes=createElementPropertyRecord(el,"class",getClassValue,setClassValue,classMutationRunner)),elementRecord.classes}__name(getElementClassRecord,"getElementClassRecord");var getAttrValue=__name(function(attrName){return function(el){var _el$getAttribute;return(_el$getAttribute=el.getAttribute(attrName))!=null?_el$getAttribute:null}},"getAttrValue"),setAttrValue=__name(function(attrName){return function(el,val){return val!==null?el.setAttribute(attrName,val):el.removeAttribute(attrName)}},"setAttrValue");function getElementAttributeRecord(el,attr){var elementRecord=getElementRecord(el);return elementRecord.attributes[attr]||(elementRecord.attributes[attr]=createElementPropertyRecord(el,attr,getAttrValue(attr),setAttrValue(attr),attrMutationRunner)),elementRecord.attributes[attr]}__name(getElementAttributeRecord,"getElementAttributeRecord");function deleteElementPropertyRecord(el,attr){var element=elements.get(el);if(element)if(attr==="html"){var _element$html,_element$html$observe;(_element$html=element.html)==null||(_element$html$observe=_element$html.observer)==null||_element$html$observe.disconnect(),delete element.html}else if(attr==="class"){var _element$classes,_element$classes$obse;(_element$classes=element.classes)==null||(_element$classes$obse=_element$classes.observer)==null||_element$classes$obse.disconnect(),delete element.classes}else if(attr==="position"){var _element$position,_element$position$obs;(_element$position=element.position)==null||(_element$position$obs=_element$position.observer)==null||_element$position$obs.disconnect(),delete element.position}else{var _element$attributes,_element$attributes$a,_element$attributes$a2;(_element$attributes=element.attributes)==null||(_element$attributes$a=_element$attributes[attr])==null||(_element$attributes$a2=_element$attributes$a.observer)==null||_element$attributes$a2.disconnect(),delete element.attributes[attr]}}__name(deleteElementPropertyRecord,"deleteElementPropertyRecord");var transformContainer;function getTransformedHTML(html2){return transformContainer||(transformContainer=document.createElement("div")),transformContainer.innerHTML=html2,transformContainer.innerHTML}__name(getTransformedHTML,"getTransformedHTML");function setPropertyValue(el,attr,m2){if(m2.isDirty){m2.isDirty=!1;var val=m2.virtualValue;m2.mutations.length||deleteElementPropertyRecord(el,attr),m2.setValue(el,val)}}__name(setPropertyValue,"setPropertyValue");function setValue(m2,el){m2.html&&setPropertyValue(el,"html",m2.html),m2.classes&&setPropertyValue(el,"class",m2.classes),m2.position&&setPropertyValue(el,"position",m2.position),Object.keys(m2.attributes).forEach(function(attr){setPropertyValue(el,attr,m2.attributes[attr])})}__name(setValue,"setValue");function runDOMUpdates(){elements.forEach(setValue)}__name(runDOMUpdates,"runDOMUpdates");function startMutating(mutation,element){var record2=null;mutation.kind==="html"?record2=getElementHTMLRecord(element):mutation.kind==="class"?record2=getElementClassRecord(element):mutation.kind==="attribute"?record2=getElementAttributeRecord(element,mutation.attribute):mutation.kind==="position"&&(record2=getElementPositionRecord(element)),record2&&(record2.mutations.push(mutation),record2.mutationRunner(record2))}__name(startMutating,"startMutating");function stopMutating(mutation,el){var record2=null;if(mutation.kind==="html"?record2=getElementHTMLRecord(el):mutation.kind==="class"?record2=getElementClassRecord(el):mutation.kind==="attribute"?record2=getElementAttributeRecord(el,mutation.attribute):mutation.kind==="position"&&(record2=getElementPositionRecord(el)),!!record2){var index2=record2.mutations.indexOf(mutation);index2!==-1&&record2.mutations.splice(index2,1),record2.mutationRunner(record2)}}__name(stopMutating,"stopMutating");function refreshElementsSet(mutation){if(!(mutation.kind==="position"&&mutation.elements.size===1)){var existingElements=new Set(mutation.elements),matchingElements=document.querySelectorAll(mutation.selector);matchingElements.forEach(function(el){existingElements.has(el)||(mutation.elements.add(el),startMutating(mutation,el))})}}__name(refreshElementsSet,"refreshElementsSet");function revertMutation(mutation){mutation.elements.forEach(function(el){return stopMutating(mutation,el)}),mutation.elements.clear(),mutations.delete(mutation)}__name(revertMutation,"revertMutation");function refreshAllElementSets(){mutations.forEach(refreshElementsSet)}__name(refreshAllElementSets,"refreshAllElementSets");var observer;function disconnectGlobalObserver(){observer&&observer.disconnect()}__name(disconnectGlobalObserver,"disconnectGlobalObserver");function connectGlobalObserver(){typeof document>"u"||(observer||(observer=new MutationObserver(function(){refreshAllElementSets()})),refreshAllElementSets(),observer.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!1,characterData:!1}))}__name(connectGlobalObserver,"connectGlobalObserver");connectGlobalObserver();function newMutation(m2){return typeof document>"u"?nullController:(mutations.add(m2),refreshElementsSet(m2),{revert:__name(function(){revertMutation(m2)},"revert")})}__name(newMutation,"newMutation");function html(selector,mutate2){return newMutation({kind:"html",elements:new Set,mutate:mutate2,selector})}__name(html,"html");function position(selector,mutate2){return newMutation({kind:"position",elements:new Set,mutate:mutate2,selector})}__name(position,"position");function classes(selector,mutate2){return newMutation({kind:"class",elements:new Set,mutate:mutate2,selector})}__name(classes,"classes");function attribute(selector,attribute2,mutate2){return validAttributeName.test(attribute2)?attribute2==="class"||attribute2==="className"?classes(selector,function(classnames){var mutatedClassnames=mutate2(Array.from(classnames).join(" "));classnames.clear(),mutatedClassnames&&mutatedClassnames.split(/\s+/g).filter(Boolean).forEach(function(c3){return classnames.add(c3)})}):newMutation({kind:"attribute",attribute:attribute2,elements:new Set,mutate:mutate2,selector}):nullController}__name(attribute,"attribute");function declarative(_ref2){var selector=_ref2.selector,action=_ref2.action,value=_ref2.value,attr=_ref2.attribute,parentSelector=_ref2.parentSelector,insertBeforeSelector=_ref2.insertBeforeSelector;if(attr==="html"){if(action==="append")return html(selector,function(val){return val+(value??"")});if(action==="set")return html(selector,function(){return value??""})}else if(attr==="class"){if(action==="append")return classes(selector,function(val){value&&val.add(value)});if(action==="remove")return classes(selector,function(val){value&&val.delete(value)});if(action==="set")return classes(selector,function(val){val.clear(),value&&val.add(value)})}else if(attr==="position"){if(action==="set"&&parentSelector)return position(selector,function(){return{insertBeforeSelector,parentSelector}})}else{if(action==="append")return attribute(selector,attr,function(val){return val!==null?val+(value??""):value??""});if(action==="set")return attribute(selector,attr,function(){return value??""});if(action==="remove")return attribute(selector,attr,function(){return null})}return nullController}__name(declarative,"declarative");var index={html,classes,attribute,position,declarative};exports2.connectGlobalObserver=connectGlobalObserver;exports2.default=index;exports2.disconnectGlobalObserver=disconnectGlobalObserver;exports2.validAttributeName=validAttributeName}});var require_dist=__commonJS({"../../node_modules/dom-mutator/dist/index.js"(exports2,module2){"use strict";process.env.NODE_ENV==="production"?module2.exports=require_dom_mutator_cjs_production_min():module2.exports=require_dom_mutator_cjs_development()}});function evalCondition(obj,condition,savedGroups){savedGroups=savedGroups||{};for(let[k,v]of Object.entries(condition))switch(k){case"$or":if(!evalOr(obj,v,savedGroups))return!1;break;case"$nor":if(evalOr(obj,v,savedGroups))return!1;break;case"$and":if(!evalAnd(obj,v,savedGroups))return!1;break;case"$not":if(evalCondition(obj,v,savedGroups))return!1;break;default:if(!evalConditionValue(v,getPath(obj,k),savedGroups))return!1}return!0}function getPath(obj,path10){let parts=path10.split("."),current=obj;for(let i3=0;i3<parts.length;i3++)if(current&&typeof current=="object"&&parts[i3]in current)current=current[parts[i3]];else return null;return current}function getRegex(regex,insensitive=!1){let cacheKey=`${regex}${insensitive?"/i":""}`;return _regexCache[cacheKey]||(_regexCache[cacheKey]=new RegExp(regex.replace(/([^\\])\//g,"$1\\/"),insensitive?"i":void 0)),_regexCache[cacheKey]}function evalConditionValue(condition,value,savedGroups,insensitive=!1){if(typeof condition=="string")return insensitive?String(value).toLowerCase()===condition.toLowerCase():value+""===condition;if(typeof condition=="number")return value*1===condition;if(typeof condition=="boolean")return value!==null&&!!value===condition;if(condition===null)return value===null;if(Array.isArray(condition)||!isOperatorObject(condition))return JSON.stringify(value)===JSON.stringify(condition);for(let op in condition)if(!evalOperatorCondition(op,value,condition[op],savedGroups))return!1;return!0}function isOperatorObject(obj){let keys2=Object.keys(obj);return keys2.length>0&&keys2.filter(k=>k[0]==="$").length===keys2.length}function getType(v){if(v===null)return"null";if(Array.isArray(v))return"array";let t2=typeof v;return["string","number","boolean","object","undefined"].includes(t2)?t2:"unknown"}function elemMatch(actual,expected,savedGroups){if(!Array.isArray(actual))return!1;let check2=isOperatorObject(expected)?v=>evalConditionValue(expected,v,savedGroups):v=>evalCondition(v,expected,savedGroups);for(let i3=0;i3<actual.length;i3++)if(actual[i3]&&check2(actual[i3]))return!0;return!1}function isIn(actual,expected,insensitive=!1){if(insensitive){let caseFold=__name(val=>typeof val=="string"?val.toLowerCase():val,"caseFold");return Array.isArray(actual)?actual.some(el=>expected.some(exp=>caseFold(el)===caseFold(exp))):expected.some(exp=>caseFold(actual)===caseFold(exp))}return Array.isArray(actual)?actual.some(el=>expected.includes(el)):expected.includes(actual)}function isInAll(actual,expected,savedGroups,insensitive=!1){if(!Array.isArray(actual))return!1;for(let i3=0;i3<expected.length;i3++){let passed=!1;for(let j=0;j<actual.length;j++)if(evalConditionValue(expected[i3],actual[j],savedGroups,insensitive)){passed=!0;break}if(!passed)return!1}return!0}function evalOperatorCondition(operator,actual,expected,savedGroups){switch(operator){case"$veq":return paddedVersionString(actual)===paddedVersionString(expected);case"$vne":return paddedVersionString(actual)!==paddedVersionString(expected);case"$vgt":return paddedVersionString(actual)>paddedVersionString(expected);case"$vgte":return paddedVersionString(actual)>=paddedVersionString(expected);case"$vlt":return paddedVersionString(actual)<paddedVersionString(expected);case"$vlte":return paddedVersionString(actual)<=paddedVersionString(expected);case"$eq":return actual===expected;case"$ne":return actual!==expected;case"$lt":return actual<expected;case"$lte":return actual<=expected;case"$gt":return actual>expected;case"$gte":return actual>=expected;case"$exists":return expected?actual!=null:actual==null;case"$in":return Array.isArray(expected)?isIn(actual,expected):!1;case"$ini":return Array.isArray(expected)?isIn(actual,expected,!0):!1;case"$inGroup":return isIn(actual,savedGroups[expected]||[]);case"$notInGroup":return!isIn(actual,savedGroups[expected]||[]);case"$nin":return Array.isArray(expected)?!isIn(actual,expected):!1;case"$nini":return Array.isArray(expected)?!isIn(actual,expected,!0):!1;case"$not":return!evalConditionValue(expected,actual,savedGroups);case"$size":return Array.isArray(actual)?evalConditionValue(expected,actual.length,savedGroups):!1;case"$elemMatch":return elemMatch(actual,expected,savedGroups);case"$all":return Array.isArray(expected)?isInAll(actual,expected,savedGroups):!1;case"$alli":return Array.isArray(expected)?isInAll(actual,expected,savedGroups,!0):!1;case"$regex":try{return getRegex(expected).test(actual)}catch{return!1}case"$regexi":try{return getRegex(expected,!0).test(actual)}catch{return!1}case"$type":return getType(actual)===expected;default:return console.error("Unknown operator: "+operator),!1}}function evalOr(obj,conditions,savedGroups){if(!conditions.length)return!0;for(let i3=0;i3<conditions.length;i3++)if(evalCondition(obj,conditions[i3],savedGroups))return!0;return!1}function evalAnd(obj,conditions,savedGroups){for(let i3=0;i3<conditions.length;i3++)if(!evalCondition(obj,conditions[i3],savedGroups))return!1;return!0}var _regexCache,init_mongrule=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/mongrule.mjs"(){init_util();_regexCache={};__name(evalCondition,"evalCondition");__name(getPath,"getPath");__name(getRegex,"getRegex");__name(evalConditionValue,"evalConditionValue");__name(isOperatorObject,"isOperatorObject");__name(getType,"getType");__name(elemMatch,"elemMatch");__name(isIn,"isIn");__name(isInAll,"isInAll");__name(evalOperatorCondition,"evalOperatorCondition");__name(evalOr,"evalOr");__name(evalAnd,"evalAnd")}});function getForcedFeatureValues(ctx){let ret=new Map;return ctx.global.forcedFeatureValues&&ctx.global.forcedFeatureValues.forEach((v,k)=>ret.set(k,v)),ctx.user.forcedFeatureValues&&ctx.user.forcedFeatureValues.forEach((v,k)=>ret.set(k,v)),ret}function getForcedVariations(ctx){return ctx.global.forcedVariations&&ctx.user.forcedVariations?{...ctx.global.forcedVariations,...ctx.user.forcedVariations}:ctx.global.forcedVariations?ctx.global.forcedVariations:ctx.user.forcedVariations?ctx.user.forcedVariations:{}}async function safeCall(fn){try{await fn()}catch{}}function onExperimentViewed(ctx,experiment,result2){if(ctx.user.trackedExperiments){let k=getExperimentDedupeKey(experiment,result2);if(ctx.user.trackedExperiments.has(k))return[];ctx.user.trackedExperiments.add(k)}ctx.user.enableDevMode&&ctx.user.devLogs&&ctx.user.devLogs.push({experiment,result:result2,timestamp:Date.now().toString(),logType:"experiment"});let calls=[];if(ctx.global.trackingCallback){let cb=ctx.global.trackingCallback;calls.push(safeCall(()=>cb(experiment,result2,ctx.user)))}if(ctx.user.trackingCallback){let cb=ctx.user.trackingCallback;calls.push(safeCall(()=>cb(experiment,result2)))}if(ctx.global.eventLogger){let cb=ctx.global.eventLogger;calls.push(safeCall(()=>cb(EVENT_EXPERIMENT_VIEWED,{experimentId:experiment.key,variationId:result2.key,hashAttribute:result2.hashAttribute,hashValue:result2.hashValue},ctx.user)))}return calls}function onFeatureUsage(ctx,key,ret){if(ctx.user.trackedFeatureUsage){let stringifiedValue=JSON.stringify(ret.value);if(ctx.user.trackedFeatureUsage[key]===stringifiedValue)return;ctx.user.trackedFeatureUsage[key]=stringifiedValue,ctx.user.enableDevMode&&ctx.user.devLogs&&ctx.user.devLogs.push({featureKey:key,result:ret,timestamp:Date.now().toString(),logType:"feature"})}if(ctx.global.onFeatureUsage){let cb=ctx.global.onFeatureUsage;safeCall(()=>cb(key,ret,ctx.user))}if(ctx.user.onFeatureUsage){let cb=ctx.user.onFeatureUsage;safeCall(()=>cb(key,ret))}if(ctx.global.eventLogger){let cb=ctx.global.eventLogger;safeCall(()=>cb(EVENT_FEATURE_EVALUATED,{feature:key,source:ret.source,value:ret.value,ruleId:ret.source==="defaultValue"?"$default":ret.ruleId||"",variationId:ret.experimentResult?ret.experimentResult.key:""},ctx.user))}}function evalFeature(id,ctx){if(ctx.stack.evaluatedFeatures.has(id))return process.env.NODE_ENV!=="production"&&ctx.global.log(`evalFeature: circular dependency detected: ${ctx.stack.id} -> ${id}`,{from:ctx.stack.id,to:id}),getFeatureResult(ctx,id,null,"cyclicPrerequisite");ctx.stack.evaluatedFeatures.add(id),ctx.stack.id=id;let forcedValues=getForcedFeatureValues(ctx);if(forcedValues.has(id))return process.env.NODE_ENV!=="production"&&ctx.global.log("Global override",{id,value:forcedValues.get(id)}),getFeatureResult(ctx,id,forcedValues.get(id),"override");if(!ctx.global.features||!ctx.global.features[id])return process.env.NODE_ENV!=="production"&&ctx.global.log("Unknown feature",{id}),getFeatureResult(ctx,id,null,"unknownFeature");let feature=ctx.global.features[id];if(feature.rules){let evaluatedFeatures=new Set(ctx.stack.evaluatedFeatures);rules:for(let rule of feature.rules){if(rule.parentConditions)for(let parentCondition of rule.parentConditions){ctx.stack.evaluatedFeatures=new Set(evaluatedFeatures);let parentResult=evalFeature(parentCondition.id,ctx);if(parentResult.source==="cyclicPrerequisite")return getFeatureResult(ctx,id,null,"cyclicPrerequisite");let evalObj={value:parentResult.value};if(!evalCondition(evalObj,parentCondition.condition||{})){if(parentCondition.gate)return process.env.NODE_ENV!=="production"&&ctx.global.log("Feature blocked by prerequisite",{id,rule}),getFeatureResult(ctx,id,null,"prerequisite");process.env.NODE_ENV!=="production"&&ctx.global.log("Skip rule because prerequisite evaluation fails",{id,rule});continue rules}}if(rule.filters&&isFilteredOut(rule.filters,ctx)){process.env.NODE_ENV!=="production"&&ctx.global.log("Skip rule because of filters",{id,rule});continue}if("force"in rule){if(rule.condition&&!conditionPasses(rule.condition,ctx)){process.env.NODE_ENV!=="production"&&ctx.global.log("Skip rule because of condition ff",{id,rule});continue}if(!isIncludedInRollout(ctx,rule.seed||id,rule.hashAttribute,ctx.user.saveStickyBucketAssignmentDoc&&!rule.disableStickyBucketing?rule.fallbackAttribute:void 0,rule.range,rule.coverage,rule.hashVersion)){process.env.NODE_ENV!=="production"&&ctx.global.log("Skip rule because user not included in rollout",{id,rule});continue}return process.env.NODE_ENV!=="production"&&ctx.global.log("Force value from rule",{id,rule}),rule.tracks&&rule.tracks.forEach(t2=>{!onExperimentViewed(ctx,t2.experiment,t2.result).length&&ctx.global.saveDeferredTrack&&ctx.global.saveDeferredTrack({experiment:t2.experiment,result:t2.result})}),getFeatureResult(ctx,id,rule.force,"force",rule.id)}if(!rule.variations){process.env.NODE_ENV!=="production"&&ctx.global.log("Skip invalid rule",{id,rule});continue}let exp={variations:rule.variations,key:rule.key||id};"coverage"in rule&&(exp.coverage=rule.coverage),rule.weights&&(exp.weights=rule.weights),rule.hashAttribute&&(exp.hashAttribute=rule.hashAttribute),rule.fallbackAttribute&&(exp.fallbackAttribute=rule.fallbackAttribute),rule.disableStickyBucketing&&(exp.disableStickyBucketing=rule.disableStickyBucketing),rule.bucketVersion!==void 0&&(exp.bucketVersion=rule.bucketVersion),rule.minBucketVersion!==void 0&&(exp.minBucketVersion=rule.minBucketVersion),rule.namespace&&(exp.namespace=rule.namespace),rule.meta&&(exp.meta=rule.meta),rule.ranges&&(exp.ranges=rule.ranges),rule.name&&(exp.name=rule.name),rule.phase&&(exp.phase=rule.phase),rule.seed&&(exp.seed=rule.seed),rule.hashVersion&&(exp.hashVersion=rule.hashVersion),rule.filters&&(exp.filters=rule.filters),rule.condition&&(exp.condition=rule.condition);let{result:result2}=runExperiment(exp,id,ctx);if(ctx.global.onExperimentEval&&ctx.global.onExperimentEval(exp,result2),result2.inExperiment&&!result2.passthrough)return getFeatureResult(ctx,id,result2.value,"experiment",rule.id,exp,result2)}}return process.env.NODE_ENV!=="production"&&ctx.global.log("Use default value",{id,value:feature.defaultValue}),getFeatureResult(ctx,id,feature.defaultValue===void 0?null:feature.defaultValue,"defaultValue")}function runExperiment(experiment,featureId,ctx){let key=experiment.key,numVariations=experiment.variations.length;if(numVariations<2)return process.env.NODE_ENV!=="production"&&ctx.global.log("Invalid experiment",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if(ctx.global.enabled===!1||ctx.user.enabled===!1)return process.env.NODE_ENV!=="production"&&ctx.global.log("Context disabled",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if(experiment=mergeOverrides(experiment,ctx),experiment.urlPatterns&&!isURLTargeted(ctx.user.url||"",experiment.urlPatterns))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of url targeting",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};let qsOverride=getQueryStringOverride(key,ctx.user.url||"",numVariations);if(qsOverride!==null)return process.env.NODE_ENV!=="production"&&ctx.global.log("Force via querystring",{id:key,variation:qsOverride}),{result:getExperimentResult(ctx,experiment,qsOverride,!1,featureId)};let forcedVariations=getForcedVariations(ctx);if(key in forcedVariations){let variation=forcedVariations[key];return process.env.NODE_ENV!=="production"&&ctx.global.log("Force via dev tools",{id:key,variation}),{result:getExperimentResult(ctx,experiment,variation,!1,featureId)}}if(experiment.status==="draft"||experiment.active===!1)return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because inactive",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};let{hashAttribute,hashValue}=getHashAttribute(ctx,experiment.hashAttribute,ctx.user.saveStickyBucketAssignmentDoc&&!experiment.disableStickyBucketing?experiment.fallbackAttribute:void 0);if(!hashValue)return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because missing hashAttribute",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};let assigned=-1,foundStickyBucket=!1,stickyBucketVersionIsBlocked=!1;if(ctx.user.saveStickyBucketAssignmentDoc&&!experiment.disableStickyBucketing){let{variation,versionIsBlocked}=getStickyBucketVariation({ctx,expKey:experiment.key,expBucketVersion:experiment.bucketVersion,expHashAttribute:experiment.hashAttribute,expFallbackAttribute:experiment.fallbackAttribute,expMinBucketVersion:experiment.minBucketVersion,expMeta:experiment.meta});foundStickyBucket=variation>=0,assigned=variation,stickyBucketVersionIsBlocked=!!versionIsBlocked}if(!foundStickyBucket){if(experiment.filters){if(isFilteredOut(experiment.filters,ctx))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of filters",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)}}else if(experiment.namespace&&!inNamespace(hashValue,experiment.namespace))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of namespace",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if(experiment.include&&!isIncluded(experiment.include))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of include function",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if(experiment.condition&&!conditionPasses(experiment.condition,ctx))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of condition exp",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if(experiment.parentConditions){let evaluatedFeatures=new Set(ctx.stack.evaluatedFeatures);for(let parentCondition of experiment.parentConditions){ctx.stack.evaluatedFeatures=new Set(evaluatedFeatures);let parentResult=evalFeature(parentCondition.id,ctx);if(parentResult.source==="cyclicPrerequisite")return{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};let evalObj={value:parentResult.value};if(!evalCondition(evalObj,parentCondition.condition||{}))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because prerequisite evaluation fails",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)}}}if(experiment.groups&&!hasGroupOverlap(experiment.groups,ctx))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of groups",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)}}if(experiment.url&&!urlIsValid(experiment.url,ctx))return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of url",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};let n2=hash(experiment.seed||key,hashValue,experiment.hashVersion||1);if(n2===null)return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of invalid hash version",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if(!foundStickyBucket){let ranges=experiment.ranges||getBucketRanges(numVariations,experiment.coverage===void 0?1:experiment.coverage,experiment.weights);assigned=chooseVariation(n2,ranges)}if(stickyBucketVersionIsBlocked)return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because sticky bucket version is blocked",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId,void 0,!0)};if(assigned<0)return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because of coverage",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if("force"in experiment)return process.env.NODE_ENV!=="production"&&ctx.global.log("Force variation",{id:key,variation:experiment.force}),{result:getExperimentResult(ctx,experiment,experiment.force===void 0?-1:experiment.force,!1,featureId)};if(ctx.global.qaMode||ctx.user.qaMode)return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because QA mode",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};if(experiment.status==="stopped")return process.env.NODE_ENV!=="production"&&ctx.global.log("Skip because stopped",{id:key}),{result:getExperimentResult(ctx,experiment,-1,!1,featureId)};let result2=getExperimentResult(ctx,experiment,assigned,!0,featureId,n2,foundStickyBucket);if(ctx.user.saveStickyBucketAssignmentDoc&&!experiment.disableStickyBucketing){let{changed,key:attrKey,doc}=generateStickyBucketAssignmentDoc(ctx,hashAttribute,toString2(hashValue),{[getStickyBucketExperimentKey(experiment.key,experiment.bucketVersion)]:result2.key});changed&&(ctx.user.stickyBucketAssignmentDocs=ctx.user.stickyBucketAssignmentDocs||{},ctx.user.stickyBucketAssignmentDocs[attrKey]=doc,ctx.user.saveStickyBucketAssignmentDoc(doc))}let trackingCalls=onExperimentViewed(ctx,experiment,result2);trackingCalls.length===0&&ctx.global.saveDeferredTrack&&ctx.global.saveDeferredTrack({experiment,result:result2});let trackingCall=trackingCalls.length?trackingCalls.length===1?trackingCalls[0]:Promise.all(trackingCalls).then(()=>{}):void 0;return"changeId"in experiment&&experiment.changeId&&ctx.global.recordChangeId&&ctx.global.recordChangeId(experiment.changeId),process.env.NODE_ENV!=="production"&&ctx.global.log("In experiment",{id:key,variation:result2.variationId}),{result:result2,trackingCall}}function getFeatureResult(ctx,key,value,source,ruleId,experiment,result2){let ret={value,on:!!value,off:!value,source,ruleId:ruleId||""};return experiment&&(ret.experiment=experiment),result2&&(ret.experimentResult=result2),source!=="override"&&onFeatureUsage(ctx,key,ret),ret}function getAttributes(ctx){return{...ctx.user.attributes,...ctx.user.attributeOverrides}}function conditionPasses(condition,ctx){return evalCondition(getAttributes(ctx),condition,ctx.global.savedGroups||{})}function isFilteredOut(filters,ctx){return filters.some(filter3=>{let{hashValue}=getHashAttribute(ctx,filter3.attribute);if(!hashValue)return!0;let n2=hash(filter3.seed,hashValue,filter3.hashVersion||2);return n2===null?!0:!filter3.ranges.some(r2=>inRange(n2,r2))})}function isIncludedInRollout(ctx,seed,hashAttribute,fallbackAttribute,range2,coverage,hashVersion){if(!range2&&coverage===void 0)return!0;if(!range2&&coverage===0)return!1;let{hashValue}=getHashAttribute(ctx,hashAttribute,fallbackAttribute);if(!hashValue)return!1;let n2=hash(seed,hashValue,hashVersion||1);return n2===null?!1:range2?inRange(n2,range2):coverage!==void 0?n2<=coverage:!0}function getExperimentResult(ctx,experiment,variationIndex,hashUsed,featureId,bucket,stickyBucketUsed){let inExperiment=!0;(variationIndex<0||variationIndex>=experiment.variations.length)&&(variationIndex=0,inExperiment=!1);let{hashAttribute,hashValue}=getHashAttribute(ctx,experiment.hashAttribute,ctx.user.saveStickyBucketAssignmentDoc&&!experiment.disableStickyBucketing?experiment.fallbackAttribute:void 0),meta=experiment.meta?experiment.meta[variationIndex]:{},res={key:meta.key||""+variationIndex,featureId,inExperiment,hashUsed,variationId:variationIndex,value:experiment.variations[variationIndex],hashAttribute,hashValue,stickyBucketUsed:!!stickyBucketUsed};return meta.name&&(res.name=meta.name),bucket!==void 0&&(res.bucket=bucket),meta.passthrough&&(res.passthrough=meta.passthrough),res}function mergeOverrides(experiment,ctx){let key=experiment.key,o2=ctx.global.overrides;return o2&&o2[key]&&(experiment=Object.assign({},experiment,o2[key]),typeof experiment.url=="string"&&(experiment.url=getUrlRegExp(experiment.url))),experiment}function getHashAttribute(ctx,attr,fallback){let hashAttribute=attr||"id",hashValue="",attributes=getAttributes(ctx);return attributes[hashAttribute]&&(hashValue=attributes[hashAttribute]),!hashValue&&fallback&&(attributes[fallback]&&(hashValue=attributes[fallback]),hashValue&&(hashAttribute=fallback)),{hashAttribute,hashValue}}function urlIsValid(urlRegex,ctx){let url3=ctx.user.url;if(!url3)return!1;let pathOnly=url3.replace(/^https?:\/\//,"").replace(/^[^/]*\//,"/");return!!(urlRegex.test(url3)||urlRegex.test(pathOnly))}function hasGroupOverlap(expGroups,ctx){let groups=ctx.global.groups||{};for(let i3=0;i3<expGroups.length;i3++)if(groups[expGroups[i3]])return!0;return!1}function getStickyBucketVariation({ctx,expKey,expBucketVersion,expHashAttribute,expFallbackAttribute,expMinBucketVersion,expMeta}){expBucketVersion=expBucketVersion||0,expMinBucketVersion=expMinBucketVersion||0,expHashAttribute=expHashAttribute||"id",expMeta=expMeta||[];let id=getStickyBucketExperimentKey(expKey,expBucketVersion),assignments=getStickyBucketAssignments(ctx,expHashAttribute,expFallbackAttribute);if(expMinBucketVersion>0)for(let i3=0;i3<expMinBucketVersion;i3++){let blockedKey=getStickyBucketExperimentKey(expKey,i3);if(assignments[blockedKey]!==void 0)return{variation:-1,versionIsBlocked:!0}}let variationKey=assignments[id];if(variationKey===void 0)return{variation:-1};let variation=expMeta.findIndex(m2=>m2.key===variationKey);return variation<0?{variation:-1}:{variation}}function getStickyBucketExperimentKey(experimentKey,experimentBucketVersion){return experimentBucketVersion=experimentBucketVersion||0,`${experimentKey}__${experimentBucketVersion}`}function getStickyBucketAttributeKey(attributeName,attributeValue){return`${attributeName}||${attributeValue}`}function getStickyBucketAssignments(ctx,expHashAttribute,expFallbackAttribute){if(!ctx.user.stickyBucketAssignmentDocs)return{};let{hashAttribute,hashValue}=getHashAttribute(ctx,expHashAttribute),hashKey=getStickyBucketAttributeKey(hashAttribute,toString2(hashValue)),{hashAttribute:fallbackAttribute,hashValue:fallbackValue}=getHashAttribute(ctx,expFallbackAttribute),fallbackKey=fallbackValue?getStickyBucketAttributeKey(fallbackAttribute,toString2(fallbackValue)):null,assignments={};return fallbackKey&&ctx.user.stickyBucketAssignmentDocs[fallbackKey]&&Object.assign(assignments,ctx.user.stickyBucketAssignmentDocs[fallbackKey].assignments||{}),ctx.user.stickyBucketAssignmentDocs[hashKey]&&Object.assign(assignments,ctx.user.stickyBucketAssignmentDocs[hashKey].assignments||{}),assignments}function generateStickyBucketAssignmentDoc(ctx,attributeName,attributeValue,assignments){let key=getStickyBucketAttributeKey(attributeName,attributeValue),existingAssignments=ctx.user.stickyBucketAssignmentDocs&&ctx.user.stickyBucketAssignmentDocs[key]?ctx.user.stickyBucketAssignmentDocs[key].assignments||{}:{},newAssignments={...existingAssignments,...assignments},changed=JSON.stringify(existingAssignments)!==JSON.stringify(newAssignments);return{key,doc:{attributeName,attributeValue,assignments:newAssignments},changed}}function deriveStickyBucketIdentifierAttributes(ctx,data){let attributes=new Set,features=data&&data.features?data.features:ctx.global.features||{},experiments=data&&data.experiments?data.experiments:ctx.global.experiments||[];return Object.keys(features).forEach(id=>{let feature=features[id];if(feature.rules)for(let rule of feature.rules)rule.variations&&(attributes.add(rule.hashAttribute||"id"),rule.fallbackAttribute&&attributes.add(rule.fallbackAttribute))}),experiments.map(experiment=>{attributes.add(experiment.hashAttribute||"id"),experiment.fallbackAttribute&&attributes.add(experiment.fallbackAttribute)}),Array.from(attributes)}async function getAllStickyBucketAssignmentDocs(ctx,stickyBucketService,data){let attributes=getStickyBucketAttributes(ctx,data);return stickyBucketService.getAllAssignments(attributes)}function getStickyBucketAttributes(ctx,data){let attributes={};return deriveStickyBucketIdentifierAttributes(ctx,data).forEach(attr=>{let{hashValue}=getHashAttribute(ctx,attr);attributes[attr]=toString2(hashValue)}),attributes}async function decryptPayload(data,decryptionKey,subtle){if(data={...data},data.encryptedFeatures){try{data.features=JSON.parse(await decrypt(data.encryptedFeatures,decryptionKey,subtle))}catch(e2){console.error(e2)}delete data.encryptedFeatures}if(data.encryptedExperiments){try{data.experiments=JSON.parse(await decrypt(data.encryptedExperiments,decryptionKey,subtle))}catch(e2){console.error(e2)}delete data.encryptedExperiments}if(data.encryptedSavedGroups){try{data.savedGroups=JSON.parse(await decrypt(data.encryptedSavedGroups,decryptionKey,subtle))}catch(e2){console.error(e2)}delete data.encryptedSavedGroups}return data}function getApiHosts(options){let defaultHost=options.apiHost||"https://cdn.growthbook.io";return{apiHost:defaultHost.replace(/\/*$/,""),streamingHost:(options.streamingHost||defaultHost).replace(/\/*$/,""),apiRequestHeaders:options.apiHostRequestHeaders,streamingHostRequestHeaders:options.streamingHostRequestHeaders}}function getExperimentDedupeKey(experiment,result2){return result2.hashAttribute+result2.hashValue+experiment.key+result2.variationId}var EVENT_FEATURE_EVALUATED,EVENT_EXPERIMENT_VIEWED,init_core=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/core.mjs"(){init_mongrule();init_util();EVENT_FEATURE_EVALUATED="Feature Evaluated",EVENT_EXPERIMENT_VIEWED="Experiment Viewed";__name(getForcedFeatureValues,"getForcedFeatureValues");__name(getForcedVariations,"getForcedVariations");__name(safeCall,"safeCall");__name(onExperimentViewed,"onExperimentViewed");__name(onFeatureUsage,"onFeatureUsage");__name(evalFeature,"evalFeature");__name(runExperiment,"runExperiment");__name(getFeatureResult,"getFeatureResult");__name(getAttributes,"getAttributes");__name(conditionPasses,"conditionPasses");__name(isFilteredOut,"isFilteredOut");__name(isIncludedInRollout,"isIncludedInRollout");__name(getExperimentResult,"getExperimentResult");__name(mergeOverrides,"mergeOverrides");__name(getHashAttribute,"getHashAttribute");__name(urlIsValid,"urlIsValid");__name(hasGroupOverlap,"hasGroupOverlap");__name(getStickyBucketVariation,"getStickyBucketVariation");__name(getStickyBucketExperimentKey,"getStickyBucketExperimentKey");__name(getStickyBucketAttributeKey,"getStickyBucketAttributeKey");__name(getStickyBucketAssignments,"getStickyBucketAssignments");__name(generateStickyBucketAssignmentDoc,"generateStickyBucketAssignmentDoc");__name(deriveStickyBucketIdentifierAttributes,"deriveStickyBucketIdentifierAttributes");__name(getAllStickyBucketAssignmentDocs,"getAllStickyBucketAssignmentDocs");__name(getStickyBucketAttributes,"getStickyBucketAttributes");__name(decryptPayload,"decryptPayload");__name(getApiHosts,"getApiHosts");__name(getExperimentDedupeKey,"getExperimentDedupeKey")}});var import_dom_mutator,isBrowser,SDK_VERSION,GrowthBook,init_GrowthBook=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/GrowthBook.mjs"(){import_dom_mutator=__toESM(require_dist(),1);init_util();init_feature_repository();init_core();isBrowser=typeof window<"u"&&typeof document<"u",SDK_VERSION=loadSDKVersion(),GrowthBook=class{static{__name(this,"GrowthBook")}constructor(options){if(options=options||{},this.version=SDK_VERSION,this._options=this.context=options,this._renderer=options.renderer||null,this._trackedExperiments=new Set,this._completedChangeIds=new Set,this._trackedFeatures={},this.debug=!!options.debug,this._subscriptions=new Set,this.ready=!1,this._assigned=new Map,this._activeAutoExperiments=new Map,this._triggeredExpKeys=new Set,this._initialized=!1,this._redirectedUrl="",this._deferredTrackingCalls=new Map,this._autoExperimentsAllowed=!options.disableExperimentsOnLoad,this._destroyCallbacks=[],this.logs=[],this.log=this.log.bind(this),this._saveDeferredTrack=this._saveDeferredTrack.bind(this),this._onExperimentEval=this._onExperimentEval.bind(this),this._fireSubscriptions=this._fireSubscriptions.bind(this),this._recordChangedId=this._recordChangedId.bind(this),options.remoteEval){if(options.decryptionKey)throw new Error("Encryption is not available for remoteEval");if(!options.clientKey)throw new Error("Missing clientKey");let isGbHost=!1;try{isGbHost=!!new URL(options.apiHost||"").hostname.match(/growthbook\.io$/i)}catch{}if(isGbHost)throw new Error("Cannot use remoteEval on GrowthBook Cloud")}else if(options.cacheKeyAttributes)throw new Error("cacheKeyAttributes are only used for remoteEval");if(options.stickyBucketService){let s2=options.stickyBucketService;this._saveStickyBucketAssignmentDoc=doc=>s2.saveAssignments(doc)}if(options.plugins)for(let plugin of options.plugins)plugin(this);if(options.features&&(this.ready=!0),isBrowser&&options.enableDevMode&&(window._growthbook=this,document.dispatchEvent(new Event("gbloaded"))),options.experiments&&(this.ready=!0,this._updateAllAutoExperiments()),this._options.stickyBucketService&&this._options.stickyBucketAssignmentDocs)for(let key in this._options.stickyBucketAssignmentDocs){let doc=this._options.stickyBucketAssignmentDocs[key];doc&&this._options.stickyBucketService.saveAssignments(doc).catch(()=>{})}this.ready&&this.refreshStickyBuckets(this.getPayload())}async setPayload(payload){this._payload=payload;let data=await decryptPayload(payload,this._options.decryptionKey);this._decryptedPayload=data,await this.refreshStickyBuckets(data),data.features&&(this._options.features=data.features),data.savedGroups&&(this._options.savedGroups=data.savedGroups),data.experiments&&(this._options.experiments=data.experiments,this._updateAllAutoExperiments()),this.ready=!0,this._render()}initSync(options){this._initialized=!0;let payload=options.payload;if(payload.encryptedExperiments||payload.encryptedFeatures)throw new Error("initSync does not support encrypted payloads");return this._options.stickyBucketService&&!this._options.stickyBucketAssignmentDocs&&(this._options.stickyBucketAssignmentDocs=this.generateStickyBucketAssignmentDocsSync(this._options.stickyBucketService,payload)),this._payload=payload,this._decryptedPayload=payload,payload.features&&(this._options.features=payload.features),payload.experiments&&(this._options.experiments=payload.experiments,this._updateAllAutoExperiments()),this.ready=!0,startStreaming(this,options),this}async init(options){if(this._initialized=!0,options=options||{},options.cacheSettings&&configureCache(options.cacheSettings),options.payload)return await this.setPayload(options.payload),startStreaming(this,options),{success:!0,source:"init"};{let{data,...res}=await this._refresh({...options,allowStale:!0});return startStreaming(this,options),await this.setPayload(data||{}),res}}async loadFeatures(options){options=options||{},await this.init({skipCache:options.skipCache,timeout:options.timeout,streaming:(this._options.backgroundSync??!0)&&(options.autoRefresh||this._options.subscribeToChanges)})}async refreshFeatures(options){let res=await this._refresh({...options||{},allowStale:!1});res.data&&await this.setPayload(res.data)}getApiInfo(){return[this.getApiHosts().apiHost,this.getClientKey()]}getApiHosts(){return getApiHosts(this._options)}getClientKey(){return this._options.clientKey||""}getPayload(){return this._payload||{features:this.getFeatures(),experiments:this.getExperiments()}}getDecryptedPayload(){return this._decryptedPayload||this.getPayload()}isRemoteEval(){return this._options.remoteEval||!1}getCacheKeyAttributes(){return this._options.cacheKeyAttributes}async _refresh({timeout,skipCache,allowStale,streaming}){if(!this._options.clientKey)throw new Error("Missing clientKey");return refreshFeatures({instance:this,timeout,skipCache:skipCache||this._options.disableCache,allowStale,backgroundSync:streaming??this._options.backgroundSync??!0})}_render(){if(this._renderer)try{this._renderer()}catch(e2){console.error("Failed to render",e2)}}setFeatures(features){this._options.features=features,this.ready=!0,this._render()}async setEncryptedFeatures(encryptedString,decryptionKey,subtle){let featuresJSON=await decrypt(encryptedString,decryptionKey||this._options.decryptionKey,subtle);this.setFeatures(JSON.parse(featuresJSON))}setExperiments(experiments){this._options.experiments=experiments,this.ready=!0,this._updateAllAutoExperiments()}async setEncryptedExperiments(encryptedString,decryptionKey,subtle){let experimentsJSON=await decrypt(encryptedString,decryptionKey||this._options.decryptionKey,subtle);this.setExperiments(JSON.parse(experimentsJSON))}async setAttributes(attributes){if(this._options.attributes=attributes,this._options.stickyBucketService&&await this.refreshStickyBuckets(),this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}async updateAttributes(attributes){return this.setAttributes({...this._options.attributes,...attributes})}async setAttributeOverrides(overrides){if(this._options.attributeOverrides=overrides,this._options.stickyBucketService&&await this.refreshStickyBuckets(),this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}async setForcedVariations(vars){if(this._options.forcedVariations=vars||{},this._options.remoteEval){await this._refreshForRemoteEval();return}this._render(),this._updateAllAutoExperiments()}setForcedFeatures(map3){this._options.forcedFeatureValues=map3,this._render()}async setURL(url3){if(url3!==this._options.url){if(this._options.url=url3,this._redirectedUrl="",this._options.remoteEval){await this._refreshForRemoteEval(),this._updateAllAutoExperiments(!0);return}this._updateAllAutoExperiments(!0)}}getAttributes(){return{...this._options.attributes,...this._options.attributeOverrides}}getForcedVariations(){return this._options.forcedVariations||{}}getForcedFeatures(){return this._options.forcedFeatureValues||new Map}getStickyBucketAssignmentDocs(){return this._options.stickyBucketAssignmentDocs||{}}getUrl(){return this._options.url||""}getFeatures(){return this._options.features||{}}getExperiments(){return this._options.experiments||[]}getCompletedChangeIds(){return Array.from(this._completedChangeIds)}subscribe(cb){return this._subscriptions.add(cb),()=>{this._subscriptions.delete(cb)}}async _refreshForRemoteEval(){if(!this._options.remoteEval||!this._initialized)return;let res=await this._refresh({allowStale:!1});res.data&&await this.setPayload(res.data)}getAllResults(){return new Map(this._assigned)}onDestroy(cb){this._destroyCallbacks.push(cb)}isDestroyed(){return!!this._destroyed}destroy(options){options=options||{},this._destroyed=!0,this._destroyCallbacks.forEach(cb=>{try{cb()}catch(e2){console.error(e2)}}),this._subscriptions.clear(),this._assigned.clear(),this._trackedExperiments.clear(),this._completedChangeIds.clear(),this._deferredTrackingCalls.clear(),this._trackedFeatures={},this._destroyCallbacks=[],this._payload=void 0,this._saveStickyBucketAssignmentDoc=void 0,unsubscribe(this),options.destroyAllStreams&&clearAutoRefresh(),this.logs=[],isBrowser&&window._growthbook===this&&delete window._growthbook,this._activeAutoExperiments.forEach(exp=>{exp.undo()}),this._activeAutoExperiments.clear(),this._triggeredExpKeys.clear()}setRenderer(renderer){this._renderer=renderer}forceVariation(key,variation){if(this._options.forcedVariations=this._options.forcedVariations||{},this._options.forcedVariations[key]=variation,this._options.remoteEval){this._refreshForRemoteEval();return}this._updateAllAutoExperiments(),this._render()}run(experiment){let{result:result2}=runExperiment(experiment,null,this._getEvalContext());return this._onExperimentEval(experiment,result2),result2}triggerExperiment(key){return this._triggeredExpKeys.add(key),this._options.experiments?this._options.experiments.filter(exp=>exp.key===key).map(exp=>this._runAutoExperiment(exp)).filter(res=>res!==null):null}triggerAutoExperiments(){this._autoExperimentsAllowed=!0,this._updateAllAutoExperiments(!0)}_getEvalContext(){return{user:this._getUserContext(),global:this._getGlobalContext(),stack:{evaluatedFeatures:new Set}}}_getUserContext(){return{attributes:this._options.user?{...this._options.user,...this._options.attributes}:this._options.attributes,enableDevMode:this._options.enableDevMode,blockedChangeIds:this._options.blockedChangeIds,stickyBucketAssignmentDocs:this._options.stickyBucketAssignmentDocs,url:this._getContextUrl(),forcedVariations:this._options.forcedVariations,forcedFeatureValues:this._options.forcedFeatureValues,attributeOverrides:this._options.attributeOverrides,saveStickyBucketAssignmentDoc:this._saveStickyBucketAssignmentDoc,trackingCallback:this._options.trackingCallback,onFeatureUsage:this._options.onFeatureUsage,devLogs:this.logs,trackedExperiments:this._trackedExperiments,trackedFeatureUsage:this._trackedFeatures}}_getGlobalContext(){return{features:this._options.features,experiments:this._options.experiments,log:this.log,enabled:this._options.enabled,qaMode:this._options.qaMode,savedGroups:this._options.savedGroups,groups:this._options.groups,overrides:this._options.overrides,onExperimentEval:this._onExperimentEval,recordChangeId:this._recordChangedId,saveDeferredTrack:this._saveDeferredTrack,eventLogger:this._options.eventLogger}}_runAutoExperiment(experiment,forceRerun){let existing=this._activeAutoExperiments.get(experiment);if(experiment.manual&&!this._triggeredExpKeys.has(experiment.key)&&!existing)return null;let isBlocked=this._isAutoExperimentBlockedByContext(experiment);isBlocked&&process.env.NODE_ENV!=="production"&&this.log("Auto experiment blocked",{id:experiment.key});let result2,trackingCall;isBlocked?result2=getExperimentResult(this._getEvalContext(),experiment,-1,!1,""):({result:result2,trackingCall}=runExperiment(experiment,null,this._getEvalContext()),this._onExperimentEval(experiment,result2));let valueHash=JSON.stringify(result2.value);if(!forceRerun&&result2.inExperiment&&existing&&existing.valueHash===valueHash)return result2;if(existing&&this._undoActiveAutoExperiment(experiment),result2.inExperiment){let changeType=getAutoExperimentChangeType(experiment);if(changeType==="redirect"&&result2.value.urlRedirect&&experiment.urlPatterns){let url3=experiment.persistQueryString?mergeQueryStrings(this._getContextUrl(),result2.value.urlRedirect):result2.value.urlRedirect;if(isURLTargeted(url3,experiment.urlPatterns))return this.log("Skipping redirect because original URL matches redirect URL",{id:experiment.key}),result2;this._redirectedUrl=url3;let{navigate,delay:delay2}=this._getNavigateFunction();if(navigate)if(isBrowser)Promise.all([...trackingCall?[promiseTimeout(trackingCall,this._options.maxNavigateDelay??1e3)]:[],new Promise(resolve9=>window.setTimeout(resolve9,this._options.navigateDelay??delay2))]).then(()=>{try{navigate(url3)}catch(e2){console.error(e2)}});else try{navigate(url3)}catch(e2){console.error(e2)}}else if(changeType==="visual"){let undo=this._options.applyDomChangesCallback?this._options.applyDomChangesCallback(result2.value):this._applyDOMChanges(result2.value);undo&&this._activeAutoExperiments.set(experiment,{undo,valueHash})}}return result2}_undoActiveAutoExperiment(exp){let data=this._activeAutoExperiments.get(exp);data&&(data.undo(),this._activeAutoExperiments.delete(exp))}_updateAllAutoExperiments(forceRerun){if(!this._autoExperimentsAllowed)return;let experiments=this._options.experiments||[],keys2=new Set(experiments);this._activeAutoExperiments.forEach((v,k)=>{keys2.has(k)||(v.undo(),this._activeAutoExperiments.delete(k))});for(let exp of experiments){let result2=this._runAutoExperiment(exp,forceRerun);if(result2&&result2.inExperiment&&getAutoExperimentChangeType(exp)==="redirect")break}}_onExperimentEval(experiment,result2){let prev=this._assigned.get(experiment.key);this._assigned.set(experiment.key,{experiment,result:result2}),this._subscriptions.size>0&&this._fireSubscriptions(experiment,result2,prev)}_fireSubscriptions(experiment,result2,prev){(!prev||prev.result.inExperiment!==result2.inExperiment||prev.result.variationId!==result2.variationId)&&this._subscriptions.forEach(cb=>{try{cb(experiment,result2)}catch(e2){console.error(e2)}})}_recordChangedId(id){this._completedChangeIds.add(id)}isOn(key){return this.evalFeature(key).on}isOff(key){return this.evalFeature(key).off}getFeatureValue(key,defaultValue){let value=this.evalFeature(key).value;return value===null?defaultValue:value}feature(id){return this.evalFeature(id)}evalFeature(id){return evalFeature(id,this._getEvalContext())}log(msg,ctx){this.debug&&(this._options.log?this._options.log(msg,ctx):console.log(msg,ctx))}getDeferredTrackingCalls(){return Array.from(this._deferredTrackingCalls.values())}setDeferredTrackingCalls(calls){this._deferredTrackingCalls=new Map(calls.filter(c3=>c3&&c3.experiment&&c3.result).map(c3=>[getExperimentDedupeKey(c3.experiment,c3.result),c3]))}async fireDeferredTrackingCalls(){if(!this._options.trackingCallback)return;let promises=[];this._deferredTrackingCalls.forEach(call=>{!call||!call.experiment||!call.result?console.error("Invalid deferred tracking call",{call}):promises.push(this._options.trackingCallback(call.experiment,call.result))}),this._deferredTrackingCalls.clear(),await Promise.all(promises)}setTrackingCallback(callback){this._options.trackingCallback=callback,this.fireDeferredTrackingCalls()}setFeatureUsageCallback(callback){this._options.onFeatureUsage=callback}setEventLogger(logger){this._options.eventLogger=logger}async logEvent(eventName,properties){if(this._destroyed){console.error("Cannot log event to destroyed GrowthBook instance");return}if(this._options.enableDevMode&&this.logs.push({eventName,properties,timestamp:Date.now().toString(),logType:"event"}),this._options.eventLogger)try{await this._options.eventLogger(eventName,properties||{},this._getUserContext())}catch(e2){console.error(e2)}else console.error("No event logger configured")}_saveDeferredTrack(data){this._deferredTrackingCalls.set(getExperimentDedupeKey(data.experiment,data.result),data)}_getContextUrl(){return this._options.url||(isBrowser?window.location.href:"")}_isAutoExperimentBlockedByContext(experiment){let changeType=getAutoExperimentChangeType(experiment);if(changeType==="visual"){if(this._options.disableVisualExperiments||this._options.disableJsInjection&&experiment.variations.some(v=>v.js))return!0}else if(changeType==="redirect"){if(this._options.disableUrlRedirectExperiments)return!0;try{let current=new URL(this._getContextUrl());for(let v of experiment.variations){if(!v||!v.urlRedirect)continue;let url3=new URL(v.urlRedirect);if(this._options.disableCrossOriginUrlRedirectExperiments&&(url3.protocol!==current.protocol||url3.host!==current.host))return!0}}catch(e2){return this.log("Error parsing current or redirect URL",{id:experiment.key,error:e2}),!0}}else return!0;return!!(experiment.changeId&&(this._options.blockedChangeIds||[]).includes(experiment.changeId))}getRedirectUrl(){return this._redirectedUrl}_getNavigateFunction(){return this._options.navigate?{navigate:this._options.navigate,delay:0}:isBrowser?{navigate:__name(url3=>{window.location.replace(url3)},"navigate"),delay:100}:{navigate:null,delay:0}}_applyDOMChanges(changes){if(!isBrowser)return;let undo=[];if(changes.css){let s2=document.createElement("style");s2.innerHTML=changes.css,document.head.appendChild(s2),undo.push(()=>s2.remove())}if(changes.js){let script=document.createElement("script");script.innerHTML=changes.js,this._options.jsInjectionNonce&&(script.nonce=this._options.jsInjectionNonce),document.head.appendChild(script),undo.push(()=>script.remove())}return changes.domMutations&&changes.domMutations.forEach(mutation=>{undo.push(import_dom_mutator.default.declarative(mutation).revert)}),()=>{undo.forEach(fn=>fn())}}async refreshStickyBuckets(data){if(this._options.stickyBucketService){let ctx=this._getEvalContext(),docs=await getAllStickyBucketAssignmentDocs(ctx,this._options.stickyBucketService,data);this._options.stickyBucketAssignmentDocs=docs}}generateStickyBucketAssignmentDocsSync(stickyBucketService,payload){if(!("getAllAssignmentsSync"in stickyBucketService)){console.error("generating StickyBucketAssignmentDocs docs requires StickyBucketServiceSync");return}let ctx=this._getEvalContext(),attributes=getStickyBucketAttributes(ctx,payload);return stickyBucketService.getAllAssignmentsSync(attributes)}inDevMode(){return!!this._options.enableDevMode}}}});var SDK_VERSION2,init_GrowthBookClient=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/GrowthBookClient.mjs"(){init_util();init_feature_repository();init_core();SDK_VERSION2=loadSDKVersion()}});var init_sticky_bucket_service=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/sticky-bucket-service.mjs"(){init_util();init_core()}});var init_esm=__esm({"../../node_modules/@growthbook/growthbook/dist/esm/index.mjs"(){init_feature_repository();init_GrowthBook();init_GrowthBookClient();init_sticky_bucket_service();init_mongrule();init_util();init_core()}});function baseToNumber(value){return typeof value=="number"?value:isSymbol_default(value)?NAN:+value}var NAN,baseToNumber_default,init_baseToNumber=__esm({"../../node_modules/lodash-es/_baseToNumber.js"(){init_isSymbol();NAN=NaN;__name(baseToNumber,"baseToNumber");baseToNumber_default=baseToNumber}});function createMathOperation(operator,defaultValue){return function(value,other){var result2;if(value===void 0&&other===void 0)return defaultValue;if(value!==void 0&&(result2=value),other!==void 0){if(result2===void 0)return other;typeof value=="string"||typeof other=="string"?(value=baseToString_default(value),other=baseToString_default(other)):(value=baseToNumber_default(value),other=baseToNumber_default(other)),result2=operator(value,other)}return result2}}var createMathOperation_default,init_createMathOperation=__esm({"../../node_modules/lodash-es/_createMathOperation.js"(){init_baseToNumber();init_baseToString();__name(createMathOperation,"createMathOperation");createMathOperation_default=createMathOperation}});var add,add_default,init_add=__esm({"../../node_modules/lodash-es/add.js"(){init_createMathOperation();add=createMathOperation_default(function(augend,addend){return augend+addend},0),add_default=add}});function trimmedEndIndex(string4){for(var index=string4.length;index--&&reWhitespace.test(string4.charAt(index)););return index}var reWhitespace,trimmedEndIndex_default,init_trimmedEndIndex=__esm({"../../node_modules/lodash-es/_trimmedEndIndex.js"(){reWhitespace=/\s/;__name(trimmedEndIndex,"trimmedEndIndex");trimmedEndIndex_default=trimmedEndIndex}});function baseTrim(string4){return string4&&string4.slice(0,trimmedEndIndex_default(string4)+1).replace(reTrimStart,"")}var reTrimStart,baseTrim_default,init_baseTrim=__esm({"../../node_modules/lodash-es/_baseTrim.js"(){init_trimmedEndIndex();reTrimStart=/^\s+/;__name(baseTrim,"baseTrim");baseTrim_default=baseTrim}});function toNumber(value){if(typeof value=="number")return value;if(isSymbol_default(value))return NAN2;if(isObject_default(value)){var other=typeof value.valueOf=="function"?value.valueOf():value;value=isObject_default(other)?other+"":other}if(typeof value!="string")return value===0?value:+value;value=baseTrim_default(value);var isBinary=reIsBinary.test(value);return isBinary||reIsOctal.test(value)?freeParseInt(value.slice(2),isBinary?2:8):reIsBadHex.test(value)?NAN2:+value}var NAN2,reIsBadHex,reIsBinary,reIsOctal,freeParseInt,toNumber_default,init_toNumber=__esm({"../../node_modules/lodash-es/toNumber.js"(){init_baseTrim();init_isObject();init_isSymbol();NAN2=NaN,reIsBadHex=/^[-+]0x[0-9a-f]+$/i,reIsBinary=/^0b[01]+$/i,reIsOctal=/^0o[0-7]+$/i,freeParseInt=parseInt;__name(toNumber,"toNumber");toNumber_default=toNumber}});function toFinite(value){if(!value)return value===0?value:0;if(value=toNumber_default(value),value===INFINITY3||value===-INFINITY3){var sign=value<0?-1:1;return sign*MAX_INTEGER}return value===value?value:0}var INFINITY3,MAX_INTEGER,toFinite_default,init_toFinite=__esm({"../../node_modules/lodash-es/toFinite.js"(){init_toNumber();INFINITY3=1/0,MAX_INTEGER=17976931348623157e292;__name(toFinite,"toFinite");toFinite_default=toFinite}});function toInteger(value){var result2=toFinite_default(value),remainder=result2%1;return result2===result2?remainder?result2-remainder:result2:0}var toInteger_default,init_toInteger=__esm({"../../node_modules/lodash-es/toInteger.js"(){init_toFinite();__name(toInteger,"toInteger");toInteger_default=toInteger}});function after(n2,func){if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT2);return n2=toInteger_default(n2),function(){if(--n2<1)return func.apply(this,arguments)}}var FUNC_ERROR_TEXT2,after_default,init_after=__esm({"../../node_modules/lodash-es/after.js"(){init_toInteger();FUNC_ERROR_TEXT2="Expected a function";__name(after,"after");after_default=after}});var metaMap,metaMap_default,init_metaMap=__esm({"../../node_modules/lodash-es/_metaMap.js"(){init_WeakMap();metaMap=WeakMap_default&&new WeakMap_default,metaMap_default=metaMap}});var baseSetData,baseSetData_default,init_baseSetData=__esm({"../../node_modules/lodash-es/_baseSetData.js"(){init_identity();init_metaMap();baseSetData=metaMap_default?function(func,data){return metaMap_default.set(func,data),func}:identity_default,baseSetData_default=baseSetData}});var objectCreate,baseCreate,baseCreate_default,init_baseCreate=__esm({"../../node_modules/lodash-es/_baseCreate.js"(){init_isObject();objectCreate=Object.create,baseCreate=(function(){function object2(){}return __name(object2,"object"),function(proto2){if(!isObject_default(proto2))return{};if(objectCreate)return objectCreate(proto2);object2.prototype=proto2;var result2=new object2;return object2.prototype=void 0,result2}})(),baseCreate_default=baseCreate}});function createCtor(Ctor){return function(){var args=arguments;switch(args.length){case 0:return new Ctor;case 1:return new Ctor(args[0]);case 2:return new Ctor(args[0],args[1]);case 3:return new Ctor(args[0],args[1],args[2]);case 4:return new Ctor(args[0],args[1],args[2],args[3]);case 5:return new Ctor(args[0],args[1],args[2],args[3],args[4]);case 6:return new Ctor(args[0],args[1],args[2],args[3],args[4],args[5]);case 7:return new Ctor(args[0],args[1],args[2],args[3],args[4],args[5],args[6])}var thisBinding=baseCreate_default(Ctor.prototype),result2=Ctor.apply(thisBinding,args);return isObject_default(result2)?result2:thisBinding}}var createCtor_default,init_createCtor=__esm({"../../node_modules/lodash-es/_createCtor.js"(){init_baseCreate();init_isObject();__name(createCtor,"createCtor");createCtor_default=createCtor}});function createBind(func,bitmask,thisArg){var isBind=bitmask&WRAP_BIND_FLAG,Ctor=createCtor_default(func);function wrapper(){var fn=this&&this!==root_default&&this instanceof wrapper?Ctor:func;return fn.apply(isBind?thisArg:this,arguments)}return __name(wrapper,"wrapper"),wrapper}var WRAP_BIND_FLAG,createBind_default,init_createBind=__esm({"../../node_modules/lodash-es/_createBind.js"(){init_createCtor();init_root();WRAP_BIND_FLAG=1;__name(createBind,"createBind");createBind_default=createBind}});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)}var apply_default,init_apply=__esm({"../../node_modules/lodash-es/_apply.js"(){__name(apply,"apply");apply_default=apply}});function composeArgs(args,partials,holders,isCurried){for(var argsIndex=-1,argsLength=args.length,holdersLength=holders.length,leftIndex=-1,leftLength=partials.length,rangeLength=nativeMax(argsLength-holdersLength,0),result2=Array(leftLength+rangeLength),isUncurried=!isCurried;++leftIndex<leftLength;)result2[leftIndex]=partials[leftIndex];for(;++argsIndex<holdersLength;)(isUncurried||argsIndex<argsLength)&&(result2[holders[argsIndex]]=args[argsIndex]);for(;rangeLength--;)result2[leftIndex++]=args[argsIndex++];return result2}var nativeMax,composeArgs_default,init_composeArgs=__esm({"../../node_modules/lodash-es/_composeArgs.js"(){nativeMax=Math.max;__name(composeArgs,"composeArgs");composeArgs_default=composeArgs}});function composeArgsRight(args,partials,holders,isCurried){for(var argsIndex=-1,argsLength=args.length,holdersIndex=-1,holdersLength=holders.length,rightIndex=-1,rightLength=partials.length,rangeLength=nativeMax2(argsLength-holdersLength,0),result2=Array(rangeLength+rightLength),isUncurried=!isCurried;++argsIndex<rangeLength;)result2[argsIndex]=args[argsIndex];for(var offset=argsIndex;++rightIndex<rightLength;)result2[offset+rightIndex]=partials[rightIndex];for(;++holdersIndex<holdersLength;)(isUncurried||argsIndex<argsLength)&&(result2[offset+holders[holdersIndex]]=args[argsIndex++]);return result2}var nativeMax2,composeArgsRight_default,init_composeArgsRight=__esm({"../../node_modules/lodash-es/_composeArgsRight.js"(){nativeMax2=Math.max;__name(composeArgsRight,"composeArgsRight");composeArgsRight_default=composeArgsRight}});function countHolders(array2,placeholder){for(var length=array2.length,result2=0;length--;)array2[length]===placeholder&&++result2;return result2}var countHolders_default,init_countHolders=__esm({"../../node_modules/lodash-es/_countHolders.js"(){__name(countHolders,"countHolders");countHolders_default=countHolders}});function baseLodash(){}var baseLodash_default,init_baseLodash=__esm({"../../node_modules/lodash-es/_baseLodash.js"(){__name(baseLodash,"baseLodash");baseLodash_default=baseLodash}});function LazyWrapper(value){this.__wrapped__=value,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=MAX_ARRAY_LENGTH,this.__views__=[]}var MAX_ARRAY_LENGTH,LazyWrapper_default,init_LazyWrapper=__esm({"../../node_modules/lodash-es/_LazyWrapper.js"(){init_baseCreate();init_baseLodash();MAX_ARRAY_LENGTH=4294967295;__name(LazyWrapper,"LazyWrapper");LazyWrapper.prototype=baseCreate_default(baseLodash_default.prototype);LazyWrapper.prototype.constructor=LazyWrapper;LazyWrapper_default=LazyWrapper}});function noop(){}var noop_default,init_noop=__esm({"../../node_modules/lodash-es/noop.js"(){__name(noop,"noop");noop_default=noop}});var getData,getData_default,init_getData=__esm({"../../node_modules/lodash-es/_getData.js"(){init_metaMap();init_noop();getData=metaMap_default?function(func){return metaMap_default.get(func)}:noop_default,getData_default=getData}});var realNames,realNames_default,init_realNames=__esm({"../../node_modules/lodash-es/_realNames.js"(){realNames={},realNames_default=realNames}});function getFuncName(func){for(var result2=func.name+"",array2=realNames_default[result2],length=hasOwnProperty12.call(realNames_default,result2)?array2.length:0;length--;){var data=array2[length],otherFunc=data.func;if(otherFunc==null||otherFunc==func)return data.name}return result2}var objectProto15,hasOwnProperty12,getFuncName_default,init_getFuncName=__esm({"../../node_modules/lodash-es/_getFuncName.js"(){init_realNames();objectProto15=Object.prototype,hasOwnProperty12=objectProto15.hasOwnProperty;__name(getFuncName,"getFuncName");getFuncName_default=getFuncName}});function LodashWrapper(value,chainAll){this.__wrapped__=value,this.__actions__=[],this.__chain__=!!chainAll,this.__index__=0,this.__values__=void 0}var LodashWrapper_default,init_LodashWrapper=__esm({"../../node_modules/lodash-es/_LodashWrapper.js"(){init_baseCreate();init_baseLodash();__name(LodashWrapper,"LodashWrapper");LodashWrapper.prototype=baseCreate_default(baseLodash_default.prototype);LodashWrapper.prototype.constructor=LodashWrapper;LodashWrapper_default=LodashWrapper}});function copyArray(source,array2){var index=-1,length=source.length;for(array2||(array2=Array(length));++index<length;)array2[index]=source[index];return array2}var copyArray_default,init_copyArray=__esm({"../../node_modules/lodash-es/_copyArray.js"(){__name(copyArray,"copyArray");copyArray_default=copyArray}});function wrapperClone(wrapper){if(wrapper instanceof LazyWrapper_default)return wrapper.clone();var result2=new LodashWrapper_default(wrapper.__wrapped__,wrapper.__chain__);return result2.__actions__=copyArray_default(wrapper.__actions__),result2.__index__=wrapper.__index__,result2.__values__=wrapper.__values__,result2}var wrapperClone_default,init_wrapperClone=__esm({"../../node_modules/lodash-es/_wrapperClone.js"(){init_LazyWrapper();init_LodashWrapper();init_copyArray();__name(wrapperClone,"wrapperClone");wrapperClone_default=wrapperClone}});function lodash(value){if(isObjectLike_default(value)&&!isArray_default(value)&&!(value instanceof LazyWrapper_default)){if(value instanceof LodashWrapper_default)return value;if(hasOwnProperty13.call(value,"__wrapped__"))return wrapperClone_default(value)}return new LodashWrapper_default(value)}var objectProto16,hasOwnProperty13,wrapperLodash_default,init_wrapperLodash=__esm({"../../node_modules/lodash-es/wrapperLodash.js"(){init_LazyWrapper();init_LodashWrapper();init_baseLodash();init_isArray();init_isObjectLike();init_wrapperClone();objectProto16=Object.prototype,hasOwnProperty13=objectProto16.hasOwnProperty;__name(lodash,"lodash");lodash.prototype=baseLodash_default.prototype;lodash.prototype.constructor=lodash;wrapperLodash_default=lodash}});function isLaziable(func){var funcName=getFuncName_default(func),other=wrapperLodash_default[funcName];if(typeof other!="function"||!(funcName in LazyWrapper_default.prototype))return!1;if(func===other)return!0;var data=getData_default(other);return!!data&&func===data[0]}var isLaziable_default,init_isLaziable=__esm({"../../node_modules/lodash-es/_isLaziable.js"(){init_LazyWrapper();init_getData();init_getFuncName();init_wrapperLodash();__name(isLaziable,"isLaziable");isLaziable_default=isLaziable}});function shortOut(func){var count3=0,lastCalled=0;return function(){var stamp=nativeNow(),remaining=HOT_SPAN-(stamp-lastCalled);if(lastCalled=stamp,remaining>0){if(++count3>=HOT_COUNT)return arguments[0]}else count3=0;return func.apply(void 0,arguments)}}var HOT_COUNT,HOT_SPAN,nativeNow,shortOut_default,init_shortOut=__esm({"../../node_modules/lodash-es/_shortOut.js"(){HOT_COUNT=800,HOT_SPAN=16,nativeNow=Date.now;__name(shortOut,"shortOut");shortOut_default=shortOut}});var setData,setData_default,init_setData=__esm({"../../node_modules/lodash-es/_setData.js"(){init_baseSetData();init_shortOut();setData=shortOut_default(baseSetData_default),setData_default=setData}});function getWrapDetails(source){var match=source.match(reWrapDetails);return match?match[1].split(reSplitDetails):[]}var reWrapDetails,reSplitDetails,getWrapDetails_default,init_getWrapDetails=__esm({"../../node_modules/lodash-es/_getWrapDetails.js"(){reWrapDetails=/\{\n\/\* \[wrapped with (.+)\] \*/,reSplitDetails=/,? & /;__name(getWrapDetails,"getWrapDetails");getWrapDetails_default=getWrapDetails}});function insertWrapDetails(source,details){var length=details.length;if(!length)return source;var lastIndex=length-1;return details[lastIndex]=(length>1?"& ":"")+details[lastIndex],details=details.join(length>2?", ":" "),source.replace(reWrapComment,`{
5
5
  /* [wrapped with `+details+`] */
6
6
  `)}var reWrapComment,insertWrapDetails_default,init_insertWrapDetails=__esm({"../../node_modules/lodash-es/_insertWrapDetails.js"(){reWrapComment=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/;__name(insertWrapDetails,"insertWrapDetails");insertWrapDetails_default=insertWrapDetails}});function constant(value){return function(){return value}}var constant_default,init_constant=__esm({"../../node_modules/lodash-es/constant.js"(){__name(constant,"constant");constant_default=constant}});var baseSetToString,baseSetToString_default,init_baseSetToString=__esm({"../../node_modules/lodash-es/_baseSetToString.js"(){init_constant();init_defineProperty();init_identity();baseSetToString=defineProperty_default?function(func,string4){return defineProperty_default(func,"toString",{configurable:!0,enumerable:!1,value:constant_default(string4),writable:!0})}:identity_default,baseSetToString_default=baseSetToString}});var setToString,setToString_default,init_setToString=__esm({"../../node_modules/lodash-es/_setToString.js"(){init_baseSetToString();init_shortOut();setToString=shortOut_default(baseSetToString_default),setToString_default=setToString}});function arrayEach(array2,iteratee2){for(var index=-1,length=array2==null?0:array2.length;++index<length&&iteratee2(array2[index],index,array2)!==!1;);return array2}var arrayEach_default,init_arrayEach=__esm({"../../node_modules/lodash-es/_arrayEach.js"(){__name(arrayEach,"arrayEach");arrayEach_default=arrayEach}});function baseFindIndex(array2,predicate,fromIndex,fromRight){for(var length=array2.length,index=fromIndex+(fromRight?1:-1);fromRight?index--:++index<length;)if(predicate(array2[index],index,array2))return index;return-1}var baseFindIndex_default,init_baseFindIndex=__esm({"../../node_modules/lodash-es/_baseFindIndex.js"(){__name(baseFindIndex,"baseFindIndex");baseFindIndex_default=baseFindIndex}});function baseIsNaN(value){return value!==value}var baseIsNaN_default,init_baseIsNaN=__esm({"../../node_modules/lodash-es/_baseIsNaN.js"(){__name(baseIsNaN,"baseIsNaN");baseIsNaN_default=baseIsNaN}});function strictIndexOf(array2,value,fromIndex){for(var index=fromIndex-1,length=array2.length;++index<length;)if(array2[index]===value)return index;return-1}var strictIndexOf_default,init_strictIndexOf=__esm({"../../node_modules/lodash-es/_strictIndexOf.js"(){__name(strictIndexOf,"strictIndexOf");strictIndexOf_default=strictIndexOf}});function baseIndexOf(array2,value,fromIndex){return value===value?strictIndexOf_default(array2,value,fromIndex):baseFindIndex_default(array2,baseIsNaN_default,fromIndex)}var baseIndexOf_default,init_baseIndexOf=__esm({"../../node_modules/lodash-es/_baseIndexOf.js"(){init_baseFindIndex();init_baseIsNaN();init_strictIndexOf();__name(baseIndexOf,"baseIndexOf");baseIndexOf_default=baseIndexOf}});function arrayIncludes(array2,value){var length=array2==null?0:array2.length;return!!length&&baseIndexOf_default(array2,value,0)>-1}var arrayIncludes_default,init_arrayIncludes=__esm({"../../node_modules/lodash-es/_arrayIncludes.js"(){init_baseIndexOf();__name(arrayIncludes,"arrayIncludes");arrayIncludes_default=arrayIncludes}});function updateWrapDetails(details,bitmask){return arrayEach_default(wrapFlags,function(pair){var value="_."+pair[0];bitmask&pair[1]&&!arrayIncludes_default(details,value)&&details.push(value)}),details.sort()}var WRAP_BIND_FLAG2,WRAP_BIND_KEY_FLAG,WRAP_CURRY_FLAG,WRAP_CURRY_RIGHT_FLAG,WRAP_PARTIAL_FLAG,WRAP_PARTIAL_RIGHT_FLAG,WRAP_ARY_FLAG,WRAP_REARG_FLAG,WRAP_FLIP_FLAG,wrapFlags,updateWrapDetails_default,init_updateWrapDetails=__esm({"../../node_modules/lodash-es/_updateWrapDetails.js"(){init_arrayEach();init_arrayIncludes();WRAP_BIND_FLAG2=1,WRAP_BIND_KEY_FLAG=2,WRAP_CURRY_FLAG=8,WRAP_CURRY_RIGHT_FLAG=16,WRAP_PARTIAL_FLAG=32,WRAP_PARTIAL_RIGHT_FLAG=64,WRAP_ARY_FLAG=128,WRAP_REARG_FLAG=256,WRAP_FLIP_FLAG=512,wrapFlags=[["ary",WRAP_ARY_FLAG],["bind",WRAP_BIND_FLAG2],["bindKey",WRAP_BIND_KEY_FLAG],["curry",WRAP_CURRY_FLAG],["curryRight",WRAP_CURRY_RIGHT_FLAG],["flip",WRAP_FLIP_FLAG],["partial",WRAP_PARTIAL_FLAG],["partialRight",WRAP_PARTIAL_RIGHT_FLAG],["rearg",WRAP_REARG_FLAG]];__name(updateWrapDetails,"updateWrapDetails");updateWrapDetails_default=updateWrapDetails}});function setWrapToString(wrapper,reference,bitmask){var source=reference+"";return setToString_default(wrapper,insertWrapDetails_default(source,updateWrapDetails_default(getWrapDetails_default(source),bitmask)))}var setWrapToString_default,init_setWrapToString=__esm({"../../node_modules/lodash-es/_setWrapToString.js"(){init_getWrapDetails();init_insertWrapDetails();init_setToString();init_updateWrapDetails();__name(setWrapToString,"setWrapToString");setWrapToString_default=setWrapToString}});function createRecurry(func,bitmask,wrapFunc,placeholder,thisArg,partials,holders,argPos,ary2,arity){var isCurry=bitmask&WRAP_CURRY_FLAG2,newHolders=isCurry?holders:void 0,newHoldersRight=isCurry?void 0:holders,newPartials=isCurry?partials:void 0,newPartialsRight=isCurry?void 0:partials;bitmask|=isCurry?WRAP_PARTIAL_FLAG2:WRAP_PARTIAL_RIGHT_FLAG2,bitmask&=~(isCurry?WRAP_PARTIAL_RIGHT_FLAG2:WRAP_PARTIAL_FLAG2),bitmask&WRAP_CURRY_BOUND_FLAG||(bitmask&=~(WRAP_BIND_FLAG3|WRAP_BIND_KEY_FLAG2));var newData=[func,bitmask,thisArg,newPartials,newHolders,newPartialsRight,newHoldersRight,argPos,ary2,arity],result2=wrapFunc.apply(void 0,newData);return isLaziable_default(func)&&setData_default(result2,newData),result2.placeholder=placeholder,setWrapToString_default(result2,func,bitmask)}var WRAP_BIND_FLAG3,WRAP_BIND_KEY_FLAG2,WRAP_CURRY_BOUND_FLAG,WRAP_CURRY_FLAG2,WRAP_PARTIAL_FLAG2,WRAP_PARTIAL_RIGHT_FLAG2,createRecurry_default,init_createRecurry=__esm({"../../node_modules/lodash-es/_createRecurry.js"(){init_isLaziable();init_setData();init_setWrapToString();WRAP_BIND_FLAG3=1,WRAP_BIND_KEY_FLAG2=2,WRAP_CURRY_BOUND_FLAG=4,WRAP_CURRY_FLAG2=8,WRAP_PARTIAL_FLAG2=32,WRAP_PARTIAL_RIGHT_FLAG2=64;__name(createRecurry,"createRecurry");createRecurry_default=createRecurry}});function getHolder(func){var object2=func;return object2.placeholder}var getHolder_default,init_getHolder=__esm({"../../node_modules/lodash-es/_getHolder.js"(){__name(getHolder,"getHolder");getHolder_default=getHolder}});function reorder(array2,indexes){for(var arrLength=array2.length,length=nativeMin(indexes.length,arrLength),oldArray=copyArray_default(array2);length--;){var index=indexes[length];array2[length]=isIndex_default(index,arrLength)?oldArray[index]:void 0}return array2}var nativeMin,reorder_default,init_reorder=__esm({"../../node_modules/lodash-es/_reorder.js"(){init_copyArray();init_isIndex();nativeMin=Math.min;__name(reorder,"reorder");reorder_default=reorder}});function replaceHolders(array2,placeholder){for(var index=-1,length=array2.length,resIndex=0,result2=[];++index<length;){var value=array2[index];(value===placeholder||value===PLACEHOLDER)&&(array2[index]=PLACEHOLDER,result2[resIndex++]=index)}return result2}var PLACEHOLDER,replaceHolders_default,init_replaceHolders=__esm({"../../node_modules/lodash-es/_replaceHolders.js"(){PLACEHOLDER="__lodash_placeholder__";__name(replaceHolders,"replaceHolders");replaceHolders_default=replaceHolders}});function createHybrid(func,bitmask,thisArg,partials,holders,partialsRight,holdersRight,argPos,ary2,arity){var isAry=bitmask&WRAP_ARY_FLAG2,isBind=bitmask&WRAP_BIND_FLAG4,isBindKey=bitmask&WRAP_BIND_KEY_FLAG3,isCurried=bitmask&(WRAP_CURRY_FLAG3|WRAP_CURRY_RIGHT_FLAG2),isFlip=bitmask&WRAP_FLIP_FLAG2,Ctor=isBindKey?void 0:createCtor_default(func);function wrapper(){for(var length=arguments.length,args=Array(length),index=length;index--;)args[index]=arguments[index];if(isCurried)var placeholder=getHolder_default(wrapper),holdersCount=countHolders_default(args,placeholder);if(partials&&(args=composeArgs_default(args,partials,holders,isCurried)),partialsRight&&(args=composeArgsRight_default(args,partialsRight,holdersRight,isCurried)),length-=holdersCount,isCurried&&length<arity){var newHolders=replaceHolders_default(args,placeholder);return createRecurry_default(func,bitmask,createHybrid,wrapper.placeholder,thisArg,args,newHolders,argPos,ary2,arity-length)}var thisBinding=isBind?thisArg:this,fn=isBindKey?thisBinding[func]:func;return length=args.length,argPos?args=reorder_default(args,argPos):isFlip&&length>1&&args.reverse(),isAry&&ary2<length&&(args.length=ary2),this&&this!==root_default&&this instanceof wrapper&&(fn=Ctor||createCtor_default(fn)),fn.apply(thisBinding,args)}return __name(wrapper,"wrapper"),wrapper}var WRAP_BIND_FLAG4,WRAP_BIND_KEY_FLAG3,WRAP_CURRY_FLAG3,WRAP_CURRY_RIGHT_FLAG2,WRAP_ARY_FLAG2,WRAP_FLIP_FLAG2,createHybrid_default,init_createHybrid=__esm({"../../node_modules/lodash-es/_createHybrid.js"(){init_composeArgs();init_composeArgsRight();init_countHolders();init_createCtor();init_createRecurry();init_getHolder();init_reorder();init_replaceHolders();init_root();WRAP_BIND_FLAG4=1,WRAP_BIND_KEY_FLAG3=2,WRAP_CURRY_FLAG3=8,WRAP_CURRY_RIGHT_FLAG2=16,WRAP_ARY_FLAG2=128,WRAP_FLIP_FLAG2=512;__name(createHybrid,"createHybrid");createHybrid_default=createHybrid}});function createCurry(func,bitmask,arity){var Ctor=createCtor_default(func);function wrapper(){for(var length=arguments.length,args=Array(length),index=length,placeholder=getHolder_default(wrapper);index--;)args[index]=arguments[index];var holders=length<3&&args[0]!==placeholder&&args[length-1]!==placeholder?[]:replaceHolders_default(args,placeholder);if(length-=holders.length,length<arity)return createRecurry_default(func,bitmask,createHybrid_default,wrapper.placeholder,void 0,args,holders,void 0,void 0,arity-length);var fn=this&&this!==root_default&&this instanceof wrapper?Ctor:func;return apply_default(fn,this,args)}return __name(wrapper,"wrapper"),wrapper}var createCurry_default,init_createCurry=__esm({"../../node_modules/lodash-es/_createCurry.js"(){init_apply();init_createCtor();init_createHybrid();init_createRecurry();init_getHolder();init_replaceHolders();init_root();__name(createCurry,"createCurry");createCurry_default=createCurry}});function createPartial(func,bitmask,thisArg,partials){var isBind=bitmask&WRAP_BIND_FLAG5,Ctor=createCtor_default(func);function wrapper(){for(var argsIndex=-1,argsLength=arguments.length,leftIndex=-1,leftLength=partials.length,args=Array(leftLength+argsLength),fn=this&&this!==root_default&&this instanceof wrapper?Ctor:func;++leftIndex<leftLength;)args[leftIndex]=partials[leftIndex];for(;argsLength--;)args[leftIndex++]=arguments[++argsIndex];return apply_default(fn,isBind?thisArg:this,args)}return __name(wrapper,"wrapper"),wrapper}var WRAP_BIND_FLAG5,createPartial_default,init_createPartial=__esm({"../../node_modules/lodash-es/_createPartial.js"(){init_apply();init_createCtor();init_root();WRAP_BIND_FLAG5=1;__name(createPartial,"createPartial");createPartial_default=createPartial}});function mergeData(data,source){var bitmask=data[1],srcBitmask=source[1],newBitmask=bitmask|srcBitmask,isCommon=newBitmask<(WRAP_BIND_FLAG6|WRAP_BIND_KEY_FLAG4|WRAP_ARY_FLAG3),isCombo=srcBitmask==WRAP_ARY_FLAG3&&bitmask==WRAP_CURRY_FLAG4||srcBitmask==WRAP_ARY_FLAG3&&bitmask==WRAP_REARG_FLAG2&&data[7].length<=source[8]||srcBitmask==(WRAP_ARY_FLAG3|WRAP_REARG_FLAG2)&&source[7].length<=source[8]&&bitmask==WRAP_CURRY_FLAG4;if(!(isCommon||isCombo))return data;srcBitmask&WRAP_BIND_FLAG6&&(data[2]=source[2],newBitmask|=bitmask&WRAP_BIND_FLAG6?0:WRAP_CURRY_BOUND_FLAG2);var value=source[3];if(value){var partials=data[3];data[3]=partials?composeArgs_default(partials,value,source[4]):value,data[4]=partials?replaceHolders_default(data[3],PLACEHOLDER2):source[4]}return value=source[5],value&&(partials=data[5],data[5]=partials?composeArgsRight_default(partials,value,source[6]):value,data[6]=partials?replaceHolders_default(data[5],PLACEHOLDER2):source[6]),value=source[7],value&&(data[7]=value),srcBitmask&WRAP_ARY_FLAG3&&(data[8]=data[8]==null?source[8]:nativeMin2(data[8],source[8])),data[9]==null&&(data[9]=source[9]),data[0]=source[0],data[1]=newBitmask,data}var PLACEHOLDER2,WRAP_BIND_FLAG6,WRAP_BIND_KEY_FLAG4,WRAP_CURRY_BOUND_FLAG2,WRAP_CURRY_FLAG4,WRAP_ARY_FLAG3,WRAP_REARG_FLAG2,nativeMin2,mergeData_default,init_mergeData=__esm({"../../node_modules/lodash-es/_mergeData.js"(){init_composeArgs();init_composeArgsRight();init_replaceHolders();PLACEHOLDER2="__lodash_placeholder__",WRAP_BIND_FLAG6=1,WRAP_BIND_KEY_FLAG4=2,WRAP_CURRY_BOUND_FLAG2=4,WRAP_CURRY_FLAG4=8,WRAP_ARY_FLAG3=128,WRAP_REARG_FLAG2=256,nativeMin2=Math.min;__name(mergeData,"mergeData");mergeData_default=mergeData}});function createWrap(func,bitmask,thisArg,partials,holders,argPos,ary2,arity){var isBindKey=bitmask&WRAP_BIND_KEY_FLAG5;if(!isBindKey&&typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT3);var length=partials?partials.length:0;if(length||(bitmask&=~(WRAP_PARTIAL_FLAG3|WRAP_PARTIAL_RIGHT_FLAG3),partials=holders=void 0),ary2=ary2===void 0?ary2:nativeMax3(toInteger_default(ary2),0),arity=arity===void 0?arity:toInteger_default(arity),length-=holders?holders.length:0,bitmask&WRAP_PARTIAL_RIGHT_FLAG3){var partialsRight=partials,holdersRight=holders;partials=holders=void 0}var data=isBindKey?void 0:getData_default(func),newData=[func,bitmask,thisArg,partials,holders,partialsRight,holdersRight,argPos,ary2,arity];if(data&&mergeData_default(newData,data),func=newData[0],bitmask=newData[1],thisArg=newData[2],partials=newData[3],holders=newData[4],arity=newData[9]=newData[9]===void 0?isBindKey?0:func.length:nativeMax3(newData[9]-length,0),!arity&&bitmask&(WRAP_CURRY_FLAG5|WRAP_CURRY_RIGHT_FLAG3)&&(bitmask&=~(WRAP_CURRY_FLAG5|WRAP_CURRY_RIGHT_FLAG3)),!bitmask||bitmask==WRAP_BIND_FLAG7)var result2=createBind_default(func,bitmask,thisArg);else bitmask==WRAP_CURRY_FLAG5||bitmask==WRAP_CURRY_RIGHT_FLAG3?result2=createCurry_default(func,bitmask,arity):(bitmask==WRAP_PARTIAL_FLAG3||bitmask==(WRAP_BIND_FLAG7|WRAP_PARTIAL_FLAG3))&&!holders.length?result2=createPartial_default(func,bitmask,thisArg,partials):result2=createHybrid_default.apply(void 0,newData);var setter=data?baseSetData_default:setData_default;return setWrapToString_default(setter(result2,newData),func,bitmask)}var FUNC_ERROR_TEXT3,WRAP_BIND_FLAG7,WRAP_BIND_KEY_FLAG5,WRAP_CURRY_FLAG5,WRAP_CURRY_RIGHT_FLAG3,WRAP_PARTIAL_FLAG3,WRAP_PARTIAL_RIGHT_FLAG3,nativeMax3,createWrap_default,init_createWrap=__esm({"../../node_modules/lodash-es/_createWrap.js"(){init_baseSetData();init_createBind();init_createCurry();init_createHybrid();init_createPartial();init_getData();init_mergeData();init_setData();init_setWrapToString();init_toInteger();FUNC_ERROR_TEXT3="Expected a function",WRAP_BIND_FLAG7=1,WRAP_BIND_KEY_FLAG5=2,WRAP_CURRY_FLAG5=8,WRAP_CURRY_RIGHT_FLAG3=16,WRAP_PARTIAL_FLAG3=32,WRAP_PARTIAL_RIGHT_FLAG3=64,nativeMax3=Math.max;__name(createWrap,"createWrap");createWrap_default=createWrap}});function ary(func,n2,guard){return n2=guard?void 0:n2,n2=func&&n2==null?func.length:n2,createWrap_default(func,WRAP_ARY_FLAG4,void 0,void 0,void 0,void 0,n2)}var WRAP_ARY_FLAG4,ary_default,init_ary=__esm({"../../node_modules/lodash-es/ary.js"(){init_createWrap();WRAP_ARY_FLAG4=128;__name(ary,"ary");ary_default=ary}});function copyObject(source,props,object2,customizer){var isNew=!object2;object2||(object2={});for(var index=-1,length=props.length;++index<length;){var key=props[index],newValue=customizer?customizer(object2[key],source[key],key,object2,source):void 0;newValue===void 0&&(newValue=source[key]),isNew?baseAssignValue_default(object2,key,newValue):assignValue_default(object2,key,newValue)}return object2}var copyObject_default,init_copyObject=__esm({"../../node_modules/lodash-es/_copyObject.js"(){init_assignValue();init_baseAssignValue();__name(copyObject,"copyObject");copyObject_default=copyObject}});function overRest(func,start,transform3){return start=nativeMax4(start===void 0?func.length-1:start,0),function(){for(var args=arguments,index=-1,length=nativeMax4(args.length-start,0),array2=Array(length);++index<length;)array2[index]=args[start+index];index=-1;for(var otherArgs=Array(start+1);++index<start;)otherArgs[index]=args[index];return otherArgs[start]=transform3(array2),apply_default(func,this,otherArgs)}}var nativeMax4,overRest_default,init_overRest=__esm({"../../node_modules/lodash-es/_overRest.js"(){init_apply();nativeMax4=Math.max;__name(overRest,"overRest");overRest_default=overRest}});function baseRest(func,start){return setToString_default(overRest_default(func,start,identity_default),func+"")}var baseRest_default,init_baseRest=__esm({"../../node_modules/lodash-es/_baseRest.js"(){init_identity();init_overRest();init_setToString();__name(baseRest,"baseRest");baseRest_default=baseRest}});function isIterateeCall(value,index,object2){if(!isObject_default(object2))return!1;var type=typeof index;return(type=="number"?isArrayLike_default(object2)&&isIndex_default(index,object2.length):type=="string"&&index in object2)?eq_default(object2[index],value):!1}var isIterateeCall_default,init_isIterateeCall=__esm({"../../node_modules/lodash-es/_isIterateeCall.js"(){init_eq();init_isArrayLike();init_isIndex();init_isObject();__name(isIterateeCall,"isIterateeCall");isIterateeCall_default=isIterateeCall}});function createAssigner(assigner){return baseRest_default(function(object2,sources){var index=-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_default(sources[0],sources[1],guard)&&(customizer=length<3?void 0:customizer,length=1),object2=Object(object2);++index<length;){var source=sources[index];source&&assigner(object2,source,index,customizer)}return object2})}var createAssigner_default,init_createAssigner=__esm({"../../node_modules/lodash-es/_createAssigner.js"(){init_baseRest();init_isIterateeCall();__name(createAssigner,"createAssigner");createAssigner_default=createAssigner}});var objectProto17,hasOwnProperty14,assign,assign_default,init_assign=__esm({"../../node_modules/lodash-es/assign.js"(){init_assignValue();init_copyObject();init_createAssigner();init_isArrayLike();init_isPrototype();init_keys();objectProto17=Object.prototype,hasOwnProperty14=objectProto17.hasOwnProperty,assign=createAssigner_default(function(object2,source){if(isPrototype_default(source)||isArrayLike_default(source)){copyObject_default(source,keys_default(source),object2);return}for(var key in source)hasOwnProperty14.call(source,key)&&assignValue_default(object2,key,source[key])}),assign_default=assign}});var assignIn,assignIn_default,init_assignIn=__esm({"../../node_modules/lodash-es/assignIn.js"(){init_copyObject();init_createAssigner();init_keysIn();assignIn=createAssigner_default(function(object2,source){copyObject_default(source,keysIn_default(source),object2)}),assignIn_default=assignIn}});var assignInWith,assignInWith_default,init_assignInWith=__esm({"../../node_modules/lodash-es/assignInWith.js"(){init_copyObject();init_createAssigner();init_keysIn();assignInWith=createAssigner_default(function(object2,source,srcIndex,customizer){copyObject_default(source,keysIn_default(source),object2,customizer)}),assignInWith_default=assignInWith}});var assignWith,assignWith_default,init_assignWith=__esm({"../../node_modules/lodash-es/assignWith.js"(){init_copyObject();init_createAssigner();init_keys();assignWith=createAssigner_default(function(object2,source,srcIndex,customizer){copyObject_default(source,keys_default(source),object2,customizer)}),assignWith_default=assignWith}});function baseAt(object2,paths2){for(var index=-1,length=paths2.length,result2=Array(length),skip=object2==null;++index<length;)result2[index]=skip?void 0:get_default(object2,paths2[index]);return result2}var baseAt_default,init_baseAt=__esm({"../../node_modules/lodash-es/_baseAt.js"(){init_get();__name(baseAt,"baseAt");baseAt_default=baseAt}});function isFlattenable(value){return isArray_default(value)||isArguments_default(value)||!!(spreadableSymbol&&value&&value[spreadableSymbol])}var spreadableSymbol,isFlattenable_default,init_isFlattenable=__esm({"../../node_modules/lodash-es/_isFlattenable.js"(){init_Symbol();init_isArguments();init_isArray();spreadableSymbol=Symbol_default?Symbol_default.isConcatSpreadable:void 0;__name(isFlattenable,"isFlattenable");isFlattenable_default=isFlattenable}});function baseFlatten(array2,depth,predicate,isStrict,result2){var index=-1,length=array2.length;for(predicate||(predicate=isFlattenable_default),result2||(result2=[]);++index<length;){var value=array2[index];depth>0&&predicate(value)?depth>1?baseFlatten(value,depth-1,predicate,isStrict,result2):arrayPush_default(result2,value):isStrict||(result2[result2.length]=value)}return result2}var baseFlatten_default,init_baseFlatten=__esm({"../../node_modules/lodash-es/_baseFlatten.js"(){init_arrayPush();init_isFlattenable();__name(baseFlatten,"baseFlatten");baseFlatten_default=baseFlatten}});function flatten(array2){var length=array2==null?0:array2.length;return length?baseFlatten_default(array2,1):[]}var flatten_default,init_flatten=__esm({"../../node_modules/lodash-es/flatten.js"(){init_baseFlatten();__name(flatten,"flatten");flatten_default=flatten}});function flatRest(func){return setToString_default(overRest_default(func,void 0,flatten_default),func+"")}var flatRest_default,init_flatRest=__esm({"../../node_modules/lodash-es/_flatRest.js"(){init_flatten();init_overRest();init_setToString();__name(flatRest,"flatRest");flatRest_default=flatRest}});var at,at_default,init_at=__esm({"../../node_modules/lodash-es/at.js"(){init_baseAt();init_flatRest();at=flatRest_default(baseAt_default),at_default=at}});function isPlainObject(value){if(!isObjectLike_default(value)||baseGetTag_default(value)!=objectTag4)return!1;var proto2=getPrototype_default(value);if(proto2===null)return!0;var Ctor=hasOwnProperty15.call(proto2,"constructor")&&proto2.constructor;return typeof Ctor=="function"&&Ctor instanceof Ctor&&funcToString3.call(Ctor)==objectCtorString}var objectTag4,funcProto3,objectProto18,funcToString3,hasOwnProperty15,objectCtorString,isPlainObject_default,init_isPlainObject=__esm({"../../node_modules/lodash-es/isPlainObject.js"(){init_baseGetTag();init_getPrototype();init_isObjectLike();objectTag4="[object Object]",funcProto3=Function.prototype,objectProto18=Object.prototype,funcToString3=funcProto3.toString,hasOwnProperty15=objectProto18.hasOwnProperty,objectCtorString=funcToString3.call(Object);__name(isPlainObject,"isPlainObject");isPlainObject_default=isPlainObject}});function isError(value){if(!isObjectLike_default(value))return!1;var tag=baseGetTag_default(value);return tag==errorTag3||tag==domExcTag||typeof value.message=="string"&&typeof value.name=="string"&&!isPlainObject_default(value)}var domExcTag,errorTag3,isError_default,init_isError=__esm({"../../node_modules/lodash-es/isError.js"(){init_baseGetTag();init_isObjectLike();init_isPlainObject();domExcTag="[object DOMException]",errorTag3="[object Error]";__name(isError,"isError");isError_default=isError}});var attempt,attempt_default,init_attempt=__esm({"../../node_modules/lodash-es/attempt.js"(){init_apply();init_baseRest();init_isError();attempt=baseRest_default(function(func,args){try{return apply_default(func,void 0,args)}catch(e2){return isError_default(e2)?e2:new Error(e2)}}),attempt_default=attempt}});function before(n2,func){var result2;if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT4);return n2=toInteger_default(n2),function(){return--n2>0&&(result2=func.apply(this,arguments)),n2<=1&&(func=void 0),result2}}var FUNC_ERROR_TEXT4,before_default,init_before=__esm({"../../node_modules/lodash-es/before.js"(){init_toInteger();FUNC_ERROR_TEXT4="Expected a function";__name(before,"before");before_default=before}});var WRAP_BIND_FLAG8,WRAP_PARTIAL_FLAG4,bind,bind_default,init_bind=__esm({"../../node_modules/lodash-es/bind.js"(){init_baseRest();init_createWrap();init_getHolder();init_replaceHolders();WRAP_BIND_FLAG8=1,WRAP_PARTIAL_FLAG4=32,bind=baseRest_default(function(func,thisArg,partials){var bitmask=WRAP_BIND_FLAG8;if(partials.length){var holders=replaceHolders_default(partials,getHolder_default(bind));bitmask|=WRAP_PARTIAL_FLAG4}return createWrap_default(func,bitmask,thisArg,partials,holders)});bind.placeholder={};bind_default=bind}});var bindAll,bindAll_default,init_bindAll=__esm({"../../node_modules/lodash-es/bindAll.js"(){init_arrayEach();init_baseAssignValue();init_bind();init_flatRest();init_toKey();bindAll=flatRest_default(function(object2,methodNames){return arrayEach_default(methodNames,function(key){key=toKey_default(key),baseAssignValue_default(object2,key,bind_default(object2[key],object2))}),object2}),bindAll_default=bindAll}});var WRAP_BIND_FLAG9,WRAP_BIND_KEY_FLAG6,WRAP_PARTIAL_FLAG5,bindKey,bindKey_default,init_bindKey=__esm({"../../node_modules/lodash-es/bindKey.js"(){init_baseRest();init_createWrap();init_getHolder();init_replaceHolders();WRAP_BIND_FLAG9=1,WRAP_BIND_KEY_FLAG6=2,WRAP_PARTIAL_FLAG5=32,bindKey=baseRest_default(function(object2,key,partials){var bitmask=WRAP_BIND_FLAG9|WRAP_BIND_KEY_FLAG6;if(partials.length){var holders=replaceHolders_default(partials,getHolder_default(bindKey));bitmask|=WRAP_PARTIAL_FLAG5}return createWrap_default(key,bitmask,object2,partials,holders)});bindKey.placeholder={};bindKey_default=bindKey}});function baseSlice(array2,start,end){var index=-1,length=array2.length;start<0&&(start=-start>length?0:length+start),end=end>length?length:end,end<0&&(end+=length),length=start>end?0:end-start>>>0,start>>>=0;for(var result2=Array(length);++index<length;)result2[index]=array2[index+start];return result2}var baseSlice_default,init_baseSlice=__esm({"../../node_modules/lodash-es/_baseSlice.js"(){__name(baseSlice,"baseSlice");baseSlice_default=baseSlice}});function castSlice(array2,start,end){var length=array2.length;return end=end===void 0?length:end,!start&&end>=length?array2:baseSlice_default(array2,start,end)}var castSlice_default,init_castSlice=__esm({"../../node_modules/lodash-es/_castSlice.js"(){init_baseSlice();__name(castSlice,"castSlice");castSlice_default=castSlice}});function hasUnicode(string4){return reHasUnicode.test(string4)}var rsAstralRange,rsComboMarksRange,reComboHalfMarksRange,rsComboSymbolsRange,rsComboRange,rsVarRange,rsZWJ,reHasUnicode,hasUnicode_default,init_hasUnicode=__esm({"../../node_modules/lodash-es/_hasUnicode.js"(){rsAstralRange="\\ud800-\\udfff",rsComboMarksRange="\\u0300-\\u036f",reComboHalfMarksRange="\\ufe20-\\ufe2f",rsComboSymbolsRange="\\u20d0-\\u20ff",rsComboRange=rsComboMarksRange+reComboHalfMarksRange+rsComboSymbolsRange,rsVarRange="\\ufe0e\\ufe0f",rsZWJ="\\u200d",reHasUnicode=RegExp("["+rsZWJ+rsAstralRange+rsComboRange+rsVarRange+"]");__name(hasUnicode,"hasUnicode");hasUnicode_default=hasUnicode}});function asciiToArray(string4){return string4.split("")}var asciiToArray_default,init_asciiToArray=__esm({"../../node_modules/lodash-es/_asciiToArray.js"(){__name(asciiToArray,"asciiToArray");asciiToArray_default=asciiToArray}});function unicodeToArray(string4){return string4.match(reUnicode)||[]}var rsAstralRange2,rsComboMarksRange2,reComboHalfMarksRange2,rsComboSymbolsRange2,rsComboRange2,rsVarRange2,rsAstral,rsCombo,rsFitz,rsModifier,rsNonAstral,rsRegional,rsSurrPair,rsZWJ2,reOptMod,rsOptVar,rsOptJoin,rsSeq,rsSymbol,reUnicode,unicodeToArray_default,init_unicodeToArray=__esm({"../../node_modules/lodash-es/_unicodeToArray.js"(){rsAstralRange2="\\ud800-\\udfff",rsComboMarksRange2="\\u0300-\\u036f",reComboHalfMarksRange2="\\ufe20-\\ufe2f",rsComboSymbolsRange2="\\u20d0-\\u20ff",rsComboRange2=rsComboMarksRange2+reComboHalfMarksRange2+rsComboSymbolsRange2,rsVarRange2="\\ufe0e\\ufe0f",rsAstral="["+rsAstralRange2+"]",rsCombo="["+rsComboRange2+"]",rsFitz="\\ud83c[\\udffb-\\udfff]",rsModifier="(?:"+rsCombo+"|"+rsFitz+")",rsNonAstral="[^"+rsAstralRange2+"]",rsRegional="(?:\\ud83c[\\udde6-\\uddff]){2}",rsSurrPair="[\\ud800-\\udbff][\\udc00-\\udfff]",rsZWJ2="\\u200d",reOptMod=rsModifier+"?",rsOptVar="["+rsVarRange2+"]?",rsOptJoin="(?:"+rsZWJ2+"(?:"+[rsNonAstral,rsRegional,rsSurrPair].join("|")+")"+rsOptVar+reOptMod+")*",rsSeq=rsOptVar+reOptMod+rsOptJoin,rsSymbol="(?:"+[rsNonAstral+rsCombo+"?",rsCombo,rsRegional,rsSurrPair,rsAstral].join("|")+")",reUnicode=RegExp(rsFitz+"(?="+rsFitz+")|"+rsSymbol+rsSeq,"g");__name(unicodeToArray,"unicodeToArray");unicodeToArray_default=unicodeToArray}});function stringToArray(string4){return hasUnicode_default(string4)?unicodeToArray_default(string4):asciiToArray_default(string4)}var stringToArray_default,init_stringToArray=__esm({"../../node_modules/lodash-es/_stringToArray.js"(){init_asciiToArray();init_hasUnicode();init_unicodeToArray();__name(stringToArray,"stringToArray");stringToArray_default=stringToArray}});function createCaseFirst(methodName){return function(string4){string4=toString_default(string4);var strSymbols=hasUnicode_default(string4)?stringToArray_default(string4):void 0,chr=strSymbols?strSymbols[0]:string4.charAt(0),trailing=strSymbols?castSlice_default(strSymbols,1).join(""):string4.slice(1);return chr[methodName]()+trailing}}var createCaseFirst_default,init_createCaseFirst=__esm({"../../node_modules/lodash-es/_createCaseFirst.js"(){init_castSlice();init_hasUnicode();init_stringToArray();init_toString();__name(createCaseFirst,"createCaseFirst");createCaseFirst_default=createCaseFirst}});var upperFirst,upperFirst_default,init_upperFirst=__esm({"../../node_modules/lodash-es/upperFirst.js"(){init_createCaseFirst();upperFirst=createCaseFirst_default("toUpperCase"),upperFirst_default=upperFirst}});function capitalize(string4){return upperFirst_default(toString_default(string4).toLowerCase())}var capitalize_default,init_capitalize=__esm({"../../node_modules/lodash-es/capitalize.js"(){init_toString();init_upperFirst();__name(capitalize,"capitalize");capitalize_default=capitalize}});function arrayReduce(array2,iteratee2,accumulator,initAccum){var index=-1,length=array2==null?0:array2.length;for(initAccum&&length&&(accumulator=array2[++index]);++index<length;)accumulator=iteratee2(accumulator,array2[index],index,array2);return accumulator}var arrayReduce_default,init_arrayReduce=__esm({"../../node_modules/lodash-es/_arrayReduce.js"(){__name(arrayReduce,"arrayReduce");arrayReduce_default=arrayReduce}});function basePropertyOf(object2){return function(key){return object2?.[key]}}var basePropertyOf_default,init_basePropertyOf=__esm({"../../node_modules/lodash-es/_basePropertyOf.js"(){__name(basePropertyOf,"basePropertyOf");basePropertyOf_default=basePropertyOf}});var deburredLetters,deburrLetter,deburrLetter_default,init_deburrLetter=__esm({"../../node_modules/lodash-es/_deburrLetter.js"(){init_basePropertyOf();deburredLetters={\u00C0:"A",\u00C1:"A",\u00C2:"A",\u00C3:"A",\u00C4:"A",\u00C5:"A",\u00E0:"a",\u00E1:"a",\u00E2:"a",\u00E3:"a",\u00E4:"a",\u00E5:"a",\u00C7:"C",\u00E7:"c",\u00D0:"D",\u00F0:"d",\u00C8:"E",\u00C9:"E",\u00CA:"E",\u00CB:"E",\u00E8:"e",\u00E9:"e",\u00EA:"e",\u00EB:"e",\u00CC:"I",\u00CD:"I",\u00CE:"I",\u00CF:"I",\u00EC:"i",\u00ED:"i",\u00EE:"i",\u00EF:"i",\u00D1:"N",\u00F1:"n",\u00D2:"O",\u00D3:"O",\u00D4:"O",\u00D5:"O",\u00D6:"O",\u00D8:"O",\u00F2:"o",\u00F3:"o",\u00F4:"o",\u00F5:"o",\u00F6:"o",\u00F8:"o",\u00D9:"U",\u00DA:"U",\u00DB:"U",\u00DC:"U",\u00F9:"u",\u00FA:"u",\u00FB:"u",\u00FC:"u",\u00DD:"Y",\u00FD:"y",\u00FF:"y",\u00C6:"Ae",\u00E6:"ae",\u00DE:"Th",\u00FE:"th",\u00DF:"ss",\u0100:"A",\u0102:"A",\u0104:"A",\u0101:"a",\u0103:"a",\u0105:"a",\u0106:"C",\u0108:"C",\u010A:"C",\u010C:"C",\u0107:"c",\u0109:"c",\u010B:"c",\u010D:"c",\u010E:"D",\u0110:"D",\u010F:"d",\u0111:"d",\u0112:"E",\u0114:"E",\u0116:"E",\u0118:"E",\u011A:"E",\u0113:"e",\u0115:"e",\u0117:"e",\u0119:"e",\u011B:"e",\u011C:"G",\u011E:"G",\u0120:"G",\u0122:"G",\u011D:"g",\u011F:"g",\u0121:"g",\u0123:"g",\u0124:"H",\u0126:"H",\u0125:"h",\u0127:"h",\u0128:"I",\u012A:"I",\u012C:"I",\u012E:"I",\u0130:"I",\u0129:"i",\u012B:"i",\u012D:"i",\u012F:"i",\u0131:"i",\u0134:"J",\u0135:"j",\u0136:"K",\u0137:"k",\u0138:"k",\u0139:"L",\u013B:"L",\u013D:"L",\u013F:"L",\u0141:"L",\u013A:"l",\u013C:"l",\u013E:"l",\u0140:"l",\u0142:"l",\u0143:"N",\u0145:"N",\u0147:"N",\u014A:"N",\u0144:"n",\u0146:"n",\u0148:"n",\u014B:"n",\u014C:"O",\u014E:"O",\u0150:"O",\u014D:"o",\u014F:"o",\u0151:"o",\u0154:"R",\u0156:"R",\u0158:"R",\u0155:"r",\u0157:"r",\u0159:"r",\u015A:"S",\u015C:"S",\u015E:"S",\u0160:"S",\u015B:"s",\u015D:"s",\u015F:"s",\u0161:"s",\u0162:"T",\u0164:"T",\u0166:"T",\u0163:"t",\u0165:"t",\u0167:"t",\u0168:"U",\u016A:"U",\u016C:"U",\u016E:"U",\u0170:"U",\u0172:"U",\u0169:"u",\u016B:"u",\u016D:"u",\u016F:"u",\u0171:"u",\u0173:"u",\u0174:"W",\u0175:"w",\u0176:"Y",\u0177:"y",\u0178:"Y",\u0179:"Z",\u017B:"Z",\u017D:"Z",\u017A:"z",\u017C:"z",\u017E:"z",\u0132:"IJ",\u0133:"ij",\u0152:"Oe",\u0153:"oe",\u0149:"'n",\u017F:"s"},deburrLetter=basePropertyOf_default(deburredLetters),deburrLetter_default=deburrLetter}});function deburr(string4){return string4=toString_default(string4),string4&&string4.replace(reLatin,deburrLetter_default).replace(reComboMark,"")}var reLatin,rsComboMarksRange3,reComboHalfMarksRange3,rsComboSymbolsRange3,rsComboRange3,rsCombo2,reComboMark,deburr_default,init_deburr=__esm({"../../node_modules/lodash-es/deburr.js"(){init_deburrLetter();init_toString();reLatin=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,rsComboMarksRange3="\\u0300-\\u036f",reComboHalfMarksRange3="\\ufe20-\\ufe2f",rsComboSymbolsRange3="\\u20d0-\\u20ff",rsComboRange3=rsComboMarksRange3+reComboHalfMarksRange3+rsComboSymbolsRange3,rsCombo2="["+rsComboRange3+"]",reComboMark=RegExp(rsCombo2,"g");__name(deburr,"deburr");deburr_default=deburr}});function asciiWords(string4){return string4.match(reAsciiWord)||[]}var reAsciiWord,asciiWords_default,init_asciiWords=__esm({"../../node_modules/lodash-es/_asciiWords.js"(){reAsciiWord=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;__name(asciiWords,"asciiWords");asciiWords_default=asciiWords}});function hasUnicodeWord(string4){return reHasUnicodeWord.test(string4)}var reHasUnicodeWord,hasUnicodeWord_default,init_hasUnicodeWord=__esm({"../../node_modules/lodash-es/_hasUnicodeWord.js"(){reHasUnicodeWord=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;__name(hasUnicodeWord,"hasUnicodeWord");hasUnicodeWord_default=hasUnicodeWord}});function unicodeWords(string4){return string4.match(reUnicodeWord)||[]}var rsAstralRange3,rsComboMarksRange4,reComboHalfMarksRange4,rsComboSymbolsRange4,rsComboRange4,rsDingbatRange,rsLowerRange,rsMathOpRange,rsNonCharRange,rsPunctuationRange,rsSpaceRange,rsUpperRange,rsVarRange3,rsBreakRange,rsApos,rsBreak,rsCombo3,rsDigits,rsDingbat,rsLower,rsMisc,rsFitz2,rsModifier2,rsNonAstral2,rsRegional2,rsSurrPair2,rsUpper,rsZWJ3,rsMiscLower,rsMiscUpper,rsOptContrLower,rsOptContrUpper,reOptMod2,rsOptVar2,rsOptJoin2,rsOrdLower,rsOrdUpper,rsSeq2,rsEmoji,reUnicodeWord,unicodeWords_default,init_unicodeWords=__esm({"../../node_modules/lodash-es/_unicodeWords.js"(){rsAstralRange3="\\ud800-\\udfff",rsComboMarksRange4="\\u0300-\\u036f",reComboHalfMarksRange4="\\ufe20-\\ufe2f",rsComboSymbolsRange4="\\u20d0-\\u20ff",rsComboRange4=rsComboMarksRange4+reComboHalfMarksRange4+rsComboSymbolsRange4,rsDingbatRange="\\u2700-\\u27bf",rsLowerRange="a-z\\xdf-\\xf6\\xf8-\\xff",rsMathOpRange="\\xac\\xb1\\xd7\\xf7",rsNonCharRange="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",rsPunctuationRange="\\u2000-\\u206f",rsSpaceRange=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",rsUpperRange="A-Z\\xc0-\\xd6\\xd8-\\xde",rsVarRange3="\\ufe0e\\ufe0f",rsBreakRange=rsMathOpRange+rsNonCharRange+rsPunctuationRange+rsSpaceRange,rsApos="['\u2019]",rsBreak="["+rsBreakRange+"]",rsCombo3="["+rsComboRange4+"]",rsDigits="\\d+",rsDingbat="["+rsDingbatRange+"]",rsLower="["+rsLowerRange+"]",rsMisc="[^"+rsAstralRange3+rsBreakRange+rsDigits+rsDingbatRange+rsLowerRange+rsUpperRange+"]",rsFitz2="\\ud83c[\\udffb-\\udfff]",rsModifier2="(?:"+rsCombo3+"|"+rsFitz2+")",rsNonAstral2="[^"+rsAstralRange3+"]",rsRegional2="(?:\\ud83c[\\udde6-\\uddff]){2}",rsSurrPair2="[\\ud800-\\udbff][\\udc00-\\udfff]",rsUpper="["+rsUpperRange+"]",rsZWJ3="\\u200d",rsMiscLower="(?:"+rsLower+"|"+rsMisc+")",rsMiscUpper="(?:"+rsUpper+"|"+rsMisc+")",rsOptContrLower="(?:"+rsApos+"(?:d|ll|m|re|s|t|ve))?",rsOptContrUpper="(?:"+rsApos+"(?:D|LL|M|RE|S|T|VE))?",reOptMod2=rsModifier2+"?",rsOptVar2="["+rsVarRange3+"]?",rsOptJoin2="(?:"+rsZWJ3+"(?:"+[rsNonAstral2,rsRegional2,rsSurrPair2].join("|")+")"+rsOptVar2+reOptMod2+")*",rsOrdLower="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",rsOrdUpper="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",rsSeq2=rsOptVar2+reOptMod2+rsOptJoin2,rsEmoji="(?:"+[rsDingbat,rsRegional2,rsSurrPair2].join("|")+")"+rsSeq2,reUnicodeWord=RegExp([rsUpper+"?"+rsLower+"+"+rsOptContrLower+"(?="+[rsBreak,rsUpper,"$"].join("|")+")",rsMiscUpper+"+"+rsOptContrUpper+"(?="+[rsBreak,rsUpper+rsMiscLower,"$"].join("|")+")",rsUpper+"?"+rsMiscLower+"+"+rsOptContrLower,rsUpper+"+"+rsOptContrUpper,rsOrdUpper,rsOrdLower,rsDigits,rsEmoji].join("|"),"g");__name(unicodeWords,"unicodeWords");unicodeWords_default=unicodeWords}});function words(string4,pattern,guard){return string4=toString_default(string4),pattern=guard?void 0:pattern,pattern===void 0?hasUnicodeWord_default(string4)?unicodeWords_default(string4):asciiWords_default(string4):string4.match(pattern)||[]}var words_default,init_words=__esm({"../../node_modules/lodash-es/words.js"(){init_asciiWords();init_hasUnicodeWord();init_toString();init_unicodeWords();__name(words,"words");words_default=words}});function createCompounder(callback){return function(string4){return arrayReduce_default(words_default(deburr_default(string4).replace(reApos,"")),callback,"")}}var rsApos2,reApos,createCompounder_default,init_createCompounder=__esm({"../../node_modules/lodash-es/_createCompounder.js"(){init_arrayReduce();init_deburr();init_words();rsApos2="['\u2019]",reApos=RegExp(rsApos2,"g");__name(createCompounder,"createCompounder");createCompounder_default=createCompounder}});var camelCase,camelCase_default,init_camelCase=__esm({"../../node_modules/lodash-es/camelCase.js"(){init_capitalize();init_createCompounder();camelCase=createCompounder_default(function(result2,word,index){return word=word.toLowerCase(),result2+(index?capitalize_default(word):word)}),camelCase_default=camelCase}});function castArray(){if(!arguments.length)return[];var value=arguments[0];return isArray_default(value)?value:[value]}var castArray_default,init_castArray=__esm({"../../node_modules/lodash-es/castArray.js"(){init_isArray();__name(castArray,"castArray");castArray_default=castArray}});function createRound(methodName){var func=Math[methodName];return function(number4,precision){if(number4=toNumber_default(number4),precision=precision==null?0:nativeMin3(toInteger_default(precision),292),precision&&nativeIsFinite(number4)){var pair=(toString_default(number4)+"e").split("e"),value=func(pair[0]+"e"+(+pair[1]+precision));return pair=(toString_default(value)+"e").split("e"),+(pair[0]+"e"+(+pair[1]-precision))}return func(number4)}}var nativeIsFinite,nativeMin3,createRound_default,init_createRound=__esm({"../../node_modules/lodash-es/_createRound.js"(){init_root();init_toInteger();init_toNumber();init_toString();nativeIsFinite=root_default.isFinite,nativeMin3=Math.min;__name(createRound,"createRound");createRound_default=createRound}});var ceil,ceil_default,init_ceil=__esm({"../../node_modules/lodash-es/ceil.js"(){init_createRound();ceil=createRound_default("ceil"),ceil_default=ceil}});function chain(value){var result2=wrapperLodash_default(value);return result2.__chain__=!0,result2}var chain_default,init_chain=__esm({"../../node_modules/lodash-es/chain.js"(){init_wrapperLodash();__name(chain,"chain");chain_default=chain}});function chunk(array2,size2,guard){(guard?isIterateeCall_default(array2,size2,guard):size2===void 0)?size2=1:size2=nativeMax5(toInteger_default(size2),0);var length=array2==null?0:array2.length;if(!length||size2<1)return[];for(var index=0,resIndex=0,result2=Array(nativeCeil(length/size2));index<length;)result2[resIndex++]=baseSlice_default(array2,index,index+=size2);return result2}var nativeCeil,nativeMax5,chunk_default,init_chunk=__esm({"../../node_modules/lodash-es/chunk.js"(){init_baseSlice();init_isIterateeCall();init_toInteger();nativeCeil=Math.ceil,nativeMax5=Math.max;__name(chunk,"chunk");chunk_default=chunk}});function baseClamp(number4,lower2,upper){return number4===number4&&(upper!==void 0&&(number4=number4<=upper?number4:upper),lower2!==void 0&&(number4=number4>=lower2?number4:lower2)),number4}var baseClamp_default,init_baseClamp=__esm({"../../node_modules/lodash-es/_baseClamp.js"(){__name(baseClamp,"baseClamp");baseClamp_default=baseClamp}});function clamp(number4,lower2,upper){return upper===void 0&&(upper=lower2,lower2=void 0),upper!==void 0&&(upper=toNumber_default(upper),upper=upper===upper?upper:0),lower2!==void 0&&(lower2=toNumber_default(lower2),lower2=lower2===lower2?lower2:0),baseClamp_default(toNumber_default(number4),lower2,upper)}var clamp_default,init_clamp=__esm({"../../node_modules/lodash-es/clamp.js"(){init_baseClamp();init_toNumber();__name(clamp,"clamp");clamp_default=clamp}});function baseAssign(object2,source){return object2&&copyObject_default(source,keys_default(source),object2)}var baseAssign_default,init_baseAssign=__esm({"../../node_modules/lodash-es/_baseAssign.js"(){init_copyObject();init_keys();__name(baseAssign,"baseAssign");baseAssign_default=baseAssign}});function baseAssignIn(object2,source){return object2&&copyObject_default(source,keysIn_default(source),object2)}var baseAssignIn_default,init_baseAssignIn=__esm({"../../node_modules/lodash-es/_baseAssignIn.js"(){init_copyObject();init_keysIn();__name(baseAssignIn,"baseAssignIn");baseAssignIn_default=baseAssignIn}});function cloneBuffer(buffer,isDeep){if(isDeep)return buffer.slice();var length=buffer.length,result2=allocUnsafe?allocUnsafe(length):new buffer.constructor(length);return buffer.copy(result2),result2}var freeExports3,freeModule3,moduleExports3,Buffer3,allocUnsafe,cloneBuffer_default,init_cloneBuffer=__esm({"../../node_modules/lodash-es/_cloneBuffer.js"(){init_root();freeExports3=typeof exports=="object"&&exports&&!exports.nodeType&&exports,freeModule3=freeExports3&&typeof module=="object"&&module&&!module.nodeType&&module,moduleExports3=freeModule3&&freeModule3.exports===freeExports3,Buffer3=moduleExports3?root_default.Buffer:void 0,allocUnsafe=Buffer3?Buffer3.allocUnsafe:void 0;__name(cloneBuffer,"cloneBuffer");cloneBuffer_default=cloneBuffer}});function copySymbols(source,object2){return copyObject_default(source,getSymbols_default(source),object2)}var copySymbols_default,init_copySymbols=__esm({"../../node_modules/lodash-es/_copySymbols.js"(){init_copyObject();init_getSymbols();__name(copySymbols,"copySymbols");copySymbols_default=copySymbols}});function copySymbolsIn(source,object2){return copyObject_default(source,getSymbolsIn_default(source),object2)}var copySymbolsIn_default,init_copySymbolsIn=__esm({"../../node_modules/lodash-es/_copySymbolsIn.js"(){init_copyObject();init_getSymbolsIn();__name(copySymbolsIn,"copySymbolsIn");copySymbolsIn_default=copySymbolsIn}});function initCloneArray(array2){var length=array2.length,result2=new array2.constructor(length);return length&&typeof array2[0]=="string"&&hasOwnProperty16.call(array2,"index")&&(result2.index=array2.index,result2.input=array2.input),result2}var objectProto19,hasOwnProperty16,initCloneArray_default,init_initCloneArray=__esm({"../../node_modules/lodash-es/_initCloneArray.js"(){objectProto19=Object.prototype,hasOwnProperty16=objectProto19.hasOwnProperty;__name(initCloneArray,"initCloneArray");initCloneArray_default=initCloneArray}});function cloneArrayBuffer(arrayBuffer){var result2=new arrayBuffer.constructor(arrayBuffer.byteLength);return new Uint8Array_default(result2).set(new Uint8Array_default(arrayBuffer)),result2}var cloneArrayBuffer_default,init_cloneArrayBuffer=__esm({"../../node_modules/lodash-es/_cloneArrayBuffer.js"(){init_Uint8Array();__name(cloneArrayBuffer,"cloneArrayBuffer");cloneArrayBuffer_default=cloneArrayBuffer}});function cloneDataView(dataView,isDeep){var buffer=isDeep?cloneArrayBuffer_default(dataView.buffer):dataView.buffer;return new dataView.constructor(buffer,dataView.byteOffset,dataView.byteLength)}var cloneDataView_default,init_cloneDataView=__esm({"../../node_modules/lodash-es/_cloneDataView.js"(){init_cloneArrayBuffer();__name(cloneDataView,"cloneDataView");cloneDataView_default=cloneDataView}});function cloneRegExp(regexp){var result2=new regexp.constructor(regexp.source,reFlags.exec(regexp));return result2.lastIndex=regexp.lastIndex,result2}var reFlags,cloneRegExp_default,init_cloneRegExp=__esm({"../../node_modules/lodash-es/_cloneRegExp.js"(){reFlags=/\w*$/;__name(cloneRegExp,"cloneRegExp");cloneRegExp_default=cloneRegExp}});function cloneSymbol(symbol2){return symbolValueOf2?Object(symbolValueOf2.call(symbol2)):{}}var symbolProto3,symbolValueOf2,cloneSymbol_default,init_cloneSymbol=__esm({"../../node_modules/lodash-es/_cloneSymbol.js"(){init_Symbol();symbolProto3=Symbol_default?Symbol_default.prototype:void 0,symbolValueOf2=symbolProto3?symbolProto3.valueOf:void 0;__name(cloneSymbol,"cloneSymbol");cloneSymbol_default=cloneSymbol}});function cloneTypedArray(typedArray,isDeep){var buffer=isDeep?cloneArrayBuffer_default(typedArray.buffer):typedArray.buffer;return new typedArray.constructor(buffer,typedArray.byteOffset,typedArray.length)}var cloneTypedArray_default,init_cloneTypedArray=__esm({"../../node_modules/lodash-es/_cloneTypedArray.js"(){init_cloneArrayBuffer();__name(cloneTypedArray,"cloneTypedArray");cloneTypedArray_default=cloneTypedArray}});function initCloneByTag(object2,tag,isDeep){var Ctor=object2.constructor;switch(tag){case arrayBufferTag3:return cloneArrayBuffer_default(object2);case boolTag3:case dateTag3:return new Ctor(+object2);case dataViewTag4:return cloneDataView_default(object2,isDeep);case float32Tag2:case float64Tag2:case int8Tag2:case int16Tag2:case int32Tag2:case uint8Tag2:case uint8ClampedTag2:case uint16Tag2:case uint32Tag2:return cloneTypedArray_default(object2,isDeep);case mapTag4:return new Ctor;case numberTag3:case stringTag3:return new Ctor(object2);case regexpTag3:return cloneRegExp_default(object2);case setTag4:return new Ctor;case symbolTag3:return cloneSymbol_default(object2)}}var boolTag3,dateTag3,mapTag4,numberTag3,regexpTag3,setTag4,stringTag3,symbolTag3,arrayBufferTag3,dataViewTag4,float32Tag2,float64Tag2,int8Tag2,int16Tag2,int32Tag2,uint8Tag2,uint8ClampedTag2,uint16Tag2,uint32Tag2,initCloneByTag_default,init_initCloneByTag=__esm({"../../node_modules/lodash-es/_initCloneByTag.js"(){init_cloneArrayBuffer();init_cloneDataView();init_cloneRegExp();init_cloneSymbol();init_cloneTypedArray();boolTag3="[object Boolean]",dateTag3="[object Date]",mapTag4="[object Map]",numberTag3="[object Number]",regexpTag3="[object RegExp]",setTag4="[object Set]",stringTag3="[object String]",symbolTag3="[object Symbol]",arrayBufferTag3="[object ArrayBuffer]",dataViewTag4="[object DataView]",float32Tag2="[object Float32Array]",float64Tag2="[object Float64Array]",int8Tag2="[object Int8Array]",int16Tag2="[object Int16Array]",int32Tag2="[object Int32Array]",uint8Tag2="[object Uint8Array]",uint8ClampedTag2="[object Uint8ClampedArray]",uint16Tag2="[object Uint16Array]",uint32Tag2="[object Uint32Array]";__name(initCloneByTag,"initCloneByTag");initCloneByTag_default=initCloneByTag}});function initCloneObject(object2){return typeof object2.constructor=="function"&&!isPrototype_default(object2)?baseCreate_default(getPrototype_default(object2)):{}}var initCloneObject_default,init_initCloneObject=__esm({"../../node_modules/lodash-es/_initCloneObject.js"(){init_baseCreate();init_getPrototype();init_isPrototype();__name(initCloneObject,"initCloneObject");initCloneObject_default=initCloneObject}});function baseIsMap(value){return isObjectLike_default(value)&&getTag_default(value)==mapTag5}var mapTag5,baseIsMap_default,init_baseIsMap=__esm({"../../node_modules/lodash-es/_baseIsMap.js"(){init_getTag();init_isObjectLike();mapTag5="[object Map]";__name(baseIsMap,"baseIsMap");baseIsMap_default=baseIsMap}});var nodeIsMap,isMap,isMap_default,init_isMap=__esm({"../../node_modules/lodash-es/isMap.js"(){init_baseIsMap();init_baseUnary();init_nodeUtil();nodeIsMap=nodeUtil_default&&nodeUtil_default.isMap,isMap=nodeIsMap?baseUnary_default(nodeIsMap):baseIsMap_default,isMap_default=isMap}});function baseIsSet(value){return isObjectLike_default(value)&&getTag_default(value)==setTag5}var setTag5,baseIsSet_default,init_baseIsSet=__esm({"../../node_modules/lodash-es/_baseIsSet.js"(){init_getTag();init_isObjectLike();setTag5="[object Set]";__name(baseIsSet,"baseIsSet");baseIsSet_default=baseIsSet}});var nodeIsSet,isSet,isSet_default,init_isSet=__esm({"../../node_modules/lodash-es/isSet.js"(){init_baseIsSet();init_baseUnary();init_nodeUtil();nodeIsSet=nodeUtil_default&&nodeUtil_default.isSet,isSet=nodeIsSet?baseUnary_default(nodeIsSet):baseIsSet_default,isSet_default=isSet}});function baseClone(value,bitmask,customizer,key,object2,stack){var result2,isDeep=bitmask&CLONE_DEEP_FLAG,isFlat=bitmask&CLONE_FLAT_FLAG,isFull=bitmask&CLONE_SYMBOLS_FLAG;if(customizer&&(result2=object2?customizer(value,key,object2,stack):customizer(value)),result2!==void 0)return result2;if(!isObject_default(value))return value;var isArr=isArray_default(value);if(isArr){if(result2=initCloneArray_default(value),!isDeep)return copyArray_default(value,result2)}else{var tag=getTag_default(value),isFunc=tag==funcTag3||tag==genTag2;if(isBuffer_default(value))return cloneBuffer_default(value,isDeep);if(tag==objectTag5||tag==argsTag4||isFunc&&!object2){if(result2=isFlat||isFunc?{}:initCloneObject_default(value),!isDeep)return isFlat?copySymbolsIn_default(value,baseAssignIn_default(result2,value)):copySymbols_default(value,baseAssign_default(result2,value))}else{if(!cloneableTags[tag])return object2?value:{};result2=initCloneByTag_default(value,tag,isDeep)}}stack||(stack=new Stack_default);var stacked=stack.get(value);if(stacked)return stacked;stack.set(value,result2),isSet_default(value)?value.forEach(function(subValue){result2.add(baseClone(subValue,bitmask,customizer,subValue,value,stack))}):isMap_default(value)&&value.forEach(function(subValue,key2){result2.set(key2,baseClone(subValue,bitmask,customizer,key2,value,stack))});var keysFunc=isFull?isFlat?getAllKeysIn_default:getAllKeys_default:isFlat?keysIn_default:keys_default,props=isArr?void 0:keysFunc(value);return arrayEach_default(props||value,function(subValue,key2){props&&(key2=subValue,subValue=value[key2]),assignValue_default(result2,key2,baseClone(subValue,bitmask,customizer,key2,value,stack))}),result2}var CLONE_DEEP_FLAG,CLONE_FLAT_FLAG,CLONE_SYMBOLS_FLAG,argsTag4,arrayTag3,boolTag4,dateTag4,errorTag4,funcTag3,genTag2,mapTag6,numberTag4,objectTag5,regexpTag4,setTag6,stringTag4,symbolTag4,weakMapTag3,arrayBufferTag4,dataViewTag5,float32Tag3,float64Tag3,int8Tag3,int16Tag3,int32Tag3,uint8Tag3,uint8ClampedTag3,uint16Tag3,uint32Tag3,cloneableTags,baseClone_default,init_baseClone=__esm({"../../node_modules/lodash-es/_baseClone.js"(){init_Stack();init_arrayEach();init_assignValue();init_baseAssign();init_baseAssignIn();init_cloneBuffer();init_copyArray();init_copySymbols();init_copySymbolsIn();init_getAllKeys();init_getAllKeysIn();init_getTag();init_initCloneArray();init_initCloneByTag();init_initCloneObject();init_isArray();init_isBuffer();init_isMap();init_isObject();init_isSet();init_keys();init_keysIn();CLONE_DEEP_FLAG=1,CLONE_FLAT_FLAG=2,CLONE_SYMBOLS_FLAG=4,argsTag4="[object Arguments]",arrayTag3="[object Array]",boolTag4="[object Boolean]",dateTag4="[object Date]",errorTag4="[object Error]",funcTag3="[object Function]",genTag2="[object GeneratorFunction]",mapTag6="[object Map]",numberTag4="[object Number]",objectTag5="[object Object]",regexpTag4="[object RegExp]",setTag6="[object Set]",stringTag4="[object String]",symbolTag4="[object Symbol]",weakMapTag3="[object WeakMap]",arrayBufferTag4="[object ArrayBuffer]",dataViewTag5="[object DataView]",float32Tag3="[object Float32Array]",float64Tag3="[object Float64Array]",int8Tag3="[object Int8Array]",int16Tag3="[object Int16Array]",int32Tag3="[object Int32Array]",uint8Tag3="[object Uint8Array]",uint8ClampedTag3="[object Uint8ClampedArray]",uint16Tag3="[object Uint16Array]",uint32Tag3="[object Uint32Array]",cloneableTags={};cloneableTags[argsTag4]=cloneableTags[arrayTag3]=cloneableTags[arrayBufferTag4]=cloneableTags[dataViewTag5]=cloneableTags[boolTag4]=cloneableTags[dateTag4]=cloneableTags[float32Tag3]=cloneableTags[float64Tag3]=cloneableTags[int8Tag3]=cloneableTags[int16Tag3]=cloneableTags[int32Tag3]=cloneableTags[mapTag6]=cloneableTags[numberTag4]=cloneableTags[objectTag5]=cloneableTags[regexpTag4]=cloneableTags[setTag6]=cloneableTags[stringTag4]=cloneableTags[symbolTag4]=cloneableTags[uint8Tag3]=cloneableTags[uint8ClampedTag3]=cloneableTags[uint16Tag3]=cloneableTags[uint32Tag3]=!0;cloneableTags[errorTag4]=cloneableTags[funcTag3]=cloneableTags[weakMapTag3]=!1;__name(baseClone,"baseClone");baseClone_default=baseClone}});function clone(value){return baseClone_default(value,CLONE_SYMBOLS_FLAG2)}var CLONE_SYMBOLS_FLAG2,clone_default,init_clone=__esm({"../../node_modules/lodash-es/clone.js"(){init_baseClone();CLONE_SYMBOLS_FLAG2=4;__name(clone,"clone");clone_default=clone}});function cloneDeep(value){return baseClone_default(value,CLONE_DEEP_FLAG2|CLONE_SYMBOLS_FLAG3)}var CLONE_DEEP_FLAG2,CLONE_SYMBOLS_FLAG3,cloneDeep_default,init_cloneDeep=__esm({"../../node_modules/lodash-es/cloneDeep.js"(){init_baseClone();CLONE_DEEP_FLAG2=1,CLONE_SYMBOLS_FLAG3=4;__name(cloneDeep,"cloneDeep");cloneDeep_default=cloneDeep}});function cloneDeepWith(value,customizer){return customizer=typeof customizer=="function"?customizer:void 0,baseClone_default(value,CLONE_DEEP_FLAG3|CLONE_SYMBOLS_FLAG4,customizer)}var CLONE_DEEP_FLAG3,CLONE_SYMBOLS_FLAG4,cloneDeepWith_default,init_cloneDeepWith=__esm({"../../node_modules/lodash-es/cloneDeepWith.js"(){init_baseClone();CLONE_DEEP_FLAG3=1,CLONE_SYMBOLS_FLAG4=4;__name(cloneDeepWith,"cloneDeepWith");cloneDeepWith_default=cloneDeepWith}});function cloneWith(value,customizer){return customizer=typeof customizer=="function"?customizer:void 0,baseClone_default(value,CLONE_SYMBOLS_FLAG5,customizer)}var CLONE_SYMBOLS_FLAG5,cloneWith_default,init_cloneWith=__esm({"../../node_modules/lodash-es/cloneWith.js"(){init_baseClone();CLONE_SYMBOLS_FLAG5=4;__name(cloneWith,"cloneWith");cloneWith_default=cloneWith}});function wrapperCommit(){return new LodashWrapper_default(this.value(),this.__chain__)}var commit_default,init_commit=__esm({"../../node_modules/lodash-es/commit.js"(){init_LodashWrapper();__name(wrapperCommit,"wrapperCommit");commit_default=wrapperCommit}});function compact(array2){for(var index=-1,length=array2==null?0:array2.length,resIndex=0,result2=[];++index<length;){var value=array2[index];value&&(result2[resIndex++]=value)}return result2}var compact_default,init_compact=__esm({"../../node_modules/lodash-es/compact.js"(){__name(compact,"compact");compact_default=compact}});function concat(){var length=arguments.length;if(!length)return[];for(var args=Array(length-1),array2=arguments[0],index=length;index--;)args[index-1]=arguments[index];return arrayPush_default(isArray_default(array2)?copyArray_default(array2):[array2],baseFlatten_default(args,1))}var concat_default,init_concat=__esm({"../../node_modules/lodash-es/concat.js"(){init_arrayPush();init_baseFlatten();init_copyArray();init_isArray();__name(concat,"concat");concat_default=concat}});function cond(pairs){var length=pairs==null?0:pairs.length,toIteratee=baseIteratee_default;return pairs=length?arrayMap_default(pairs,function(pair){if(typeof pair[1]!="function")throw new TypeError(FUNC_ERROR_TEXT5);return[toIteratee(pair[0]),pair[1]]}):[],baseRest_default(function(args){for(var index=-1;++index<length;){var pair=pairs[index];if(apply_default(pair[0],this,args))return apply_default(pair[1],this,args)}})}var FUNC_ERROR_TEXT5,cond_default,init_cond=__esm({"../../node_modules/lodash-es/cond.js"(){init_apply();init_arrayMap();init_baseIteratee();init_baseRest();FUNC_ERROR_TEXT5="Expected a function";__name(cond,"cond");cond_default=cond}});function baseConformsTo(object2,source,props){var length=props.length;if(object2==null)return!length;for(object2=Object(object2);length--;){var key=props[length],predicate=source[key],value=object2[key];if(value===void 0&&!(key in object2)||!predicate(value))return!1}return!0}var baseConformsTo_default,init_baseConformsTo=__esm({"../../node_modules/lodash-es/_baseConformsTo.js"(){__name(baseConformsTo,"baseConformsTo");baseConformsTo_default=baseConformsTo}});function baseConforms(source){var props=keys_default(source);return function(object2){return baseConformsTo_default(object2,source,props)}}var baseConforms_default,init_baseConforms=__esm({"../../node_modules/lodash-es/_baseConforms.js"(){init_baseConformsTo();init_keys();__name(baseConforms,"baseConforms");baseConforms_default=baseConforms}});function conforms(source){return baseConforms_default(baseClone_default(source,CLONE_DEEP_FLAG4))}var CLONE_DEEP_FLAG4,conforms_default,init_conforms=__esm({"../../node_modules/lodash-es/conforms.js"(){init_baseClone();init_baseConforms();CLONE_DEEP_FLAG4=1;__name(conforms,"conforms");conforms_default=conforms}});function conformsTo(object2,source){return source==null||baseConformsTo_default(object2,source,keys_default(source))}var conformsTo_default,init_conformsTo=__esm({"../../node_modules/lodash-es/conformsTo.js"(){init_baseConformsTo();init_keys();__name(conformsTo,"conformsTo");conformsTo_default=conformsTo}});function arrayAggregator(array2,setter,iteratee2,accumulator){for(var index=-1,length=array2==null?0:array2.length;++index<length;){var value=array2[index];setter(accumulator,value,iteratee2(value),array2)}return accumulator}var arrayAggregator_default,init_arrayAggregator=__esm({"../../node_modules/lodash-es/_arrayAggregator.js"(){__name(arrayAggregator,"arrayAggregator");arrayAggregator_default=arrayAggregator}});function createBaseFor(fromRight){return function(object2,iteratee2,keysFunc){for(var index=-1,iterable=Object(object2),props=keysFunc(object2),length=props.length;length--;){var key=props[fromRight?length:++index];if(iteratee2(iterable[key],key,iterable)===!1)break}return object2}}var createBaseFor_default,init_createBaseFor=__esm({"../../node_modules/lodash-es/_createBaseFor.js"(){__name(createBaseFor,"createBaseFor");createBaseFor_default=createBaseFor}});var baseFor,baseFor_default,init_baseFor=__esm({"../../node_modules/lodash-es/_baseFor.js"(){init_createBaseFor();baseFor=createBaseFor_default(),baseFor_default=baseFor}});function baseForOwn(object2,iteratee2){return object2&&baseFor_default(object2,iteratee2,keys_default)}var baseForOwn_default,init_baseForOwn=__esm({"../../node_modules/lodash-es/_baseForOwn.js"(){init_baseFor();init_keys();__name(baseForOwn,"baseForOwn");baseForOwn_default=baseForOwn}});function createBaseEach(eachFunc,fromRight){return function(collection,iteratee2){if(collection==null)return collection;if(!isArrayLike_default(collection))return eachFunc(collection,iteratee2);for(var length=collection.length,index=fromRight?length:-1,iterable=Object(collection);(fromRight?index--:++index<length)&&iteratee2(iterable[index],index,iterable)!==!1;);return collection}}var createBaseEach_default,init_createBaseEach=__esm({"../../node_modules/lodash-es/_createBaseEach.js"(){init_isArrayLike();__name(createBaseEach,"createBaseEach");createBaseEach_default=createBaseEach}});var baseEach,baseEach_default,init_baseEach=__esm({"../../node_modules/lodash-es/_baseEach.js"(){init_baseForOwn();init_createBaseEach();baseEach=createBaseEach_default(baseForOwn_default),baseEach_default=baseEach}});function baseAggregator(collection,setter,iteratee2,accumulator){return baseEach_default(collection,function(value,key,collection2){setter(accumulator,value,iteratee2(value),collection2)}),accumulator}var baseAggregator_default,init_baseAggregator=__esm({"../../node_modules/lodash-es/_baseAggregator.js"(){init_baseEach();__name(baseAggregator,"baseAggregator");baseAggregator_default=baseAggregator}});function createAggregator(setter,initializer3){return function(collection,iteratee2){var func=isArray_default(collection)?arrayAggregator_default:baseAggregator_default,accumulator=initializer3?initializer3():{};return func(collection,setter,baseIteratee_default(iteratee2,2),accumulator)}}var createAggregator_default,init_createAggregator=__esm({"../../node_modules/lodash-es/_createAggregator.js"(){init_arrayAggregator();init_baseAggregator();init_baseIteratee();init_isArray();__name(createAggregator,"createAggregator");createAggregator_default=createAggregator}});var objectProto20,hasOwnProperty17,countBy,countBy_default,init_countBy=__esm({"../../node_modules/lodash-es/countBy.js"(){init_baseAssignValue();init_createAggregator();objectProto20=Object.prototype,hasOwnProperty17=objectProto20.hasOwnProperty,countBy=createAggregator_default(function(result2,value,key){hasOwnProperty17.call(result2,key)?++result2[key]:baseAssignValue_default(result2,key,1)}),countBy_default=countBy}});function create(prototype2,properties){var result2=baseCreate_default(prototype2);return properties==null?result2:baseAssign_default(result2,properties)}var create_default,init_create=__esm({"../../node_modules/lodash-es/create.js"(){init_baseAssign();init_baseCreate();__name(create,"create");create_default=create}});function curry(func,arity,guard){arity=guard?void 0:arity;var result2=createWrap_default(func,WRAP_CURRY_FLAG6,void 0,void 0,void 0,void 0,void 0,arity);return result2.placeholder=curry.placeholder,result2}var WRAP_CURRY_FLAG6,curry_default,init_curry=__esm({"../../node_modules/lodash-es/curry.js"(){init_createWrap();WRAP_CURRY_FLAG6=8;__name(curry,"curry");curry.placeholder={};curry_default=curry}});function curryRight(func,arity,guard){arity=guard?void 0:arity;var result2=createWrap_default(func,WRAP_CURRY_RIGHT_FLAG4,void 0,void 0,void 0,void 0,void 0,arity);return result2.placeholder=curryRight.placeholder,result2}var WRAP_CURRY_RIGHT_FLAG4,curryRight_default,init_curryRight=__esm({"../../node_modules/lodash-es/curryRight.js"(){init_createWrap();WRAP_CURRY_RIGHT_FLAG4=16;__name(curryRight,"curryRight");curryRight.placeholder={};curryRight_default=curryRight}});var now,now_default,init_now=__esm({"../../node_modules/lodash-es/now.js"(){init_root();now=__name(function(){return root_default.Date.now()},"now"),now_default=now}});function debounce(func,wait,options){var lastArgs,lastThis,maxWait,result2,timerId,lastCallTime,lastInvokeTime=0,leading=!1,maxing=!1,trailing=!0;if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT6);wait=toNumber_default(wait)||0,isObject_default(options)&&(leading=!!options.leading,maxing="maxWait"in options,maxWait=maxing?nativeMax6(toNumber_default(options.maxWait)||0,wait):maxWait,trailing="trailing"in options?!!options.trailing:trailing);function invokeFunc(time3){var args=lastArgs,thisArg=lastThis;return lastArgs=lastThis=void 0,lastInvokeTime=time3,result2=func.apply(thisArg,args),result2}__name(invokeFunc,"invokeFunc");function leadingEdge(time3){return lastInvokeTime=time3,timerId=setTimeout(timerExpired,wait),leading?invokeFunc(time3):result2}__name(leadingEdge,"leadingEdge");function remainingWait(time3){var timeSinceLastCall=time3-lastCallTime,timeSinceLastInvoke=time3-lastInvokeTime,timeWaiting=wait-timeSinceLastCall;return maxing?nativeMin4(timeWaiting,maxWait-timeSinceLastInvoke):timeWaiting}__name(remainingWait,"remainingWait");function shouldInvoke(time3){var timeSinceLastCall=time3-lastCallTime,timeSinceLastInvoke=time3-lastInvokeTime;return lastCallTime===void 0||timeSinceLastCall>=wait||timeSinceLastCall<0||maxing&&timeSinceLastInvoke>=maxWait}__name(shouldInvoke,"shouldInvoke");function timerExpired(){var time3=now_default();if(shouldInvoke(time3))return trailingEdge(time3);timerId=setTimeout(timerExpired,remainingWait(time3))}__name(timerExpired,"timerExpired");function trailingEdge(time3){return timerId=void 0,trailing&&lastArgs?invokeFunc(time3):(lastArgs=lastThis=void 0,result2)}__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?result2:trailingEdge(now_default())}__name(flush,"flush");function debounced(){var time3=now_default(),isInvoking=shouldInvoke(time3);if(lastArgs=arguments,lastThis=this,lastCallTime=time3,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)),result2}return __name(debounced,"debounced"),debounced.cancel=cancel,debounced.flush=flush,debounced}var FUNC_ERROR_TEXT6,nativeMax6,nativeMin4,debounce_default,init_debounce=__esm({"../../node_modules/lodash-es/debounce.js"(){init_isObject();init_now();init_toNumber();FUNC_ERROR_TEXT6="Expected a function",nativeMax6=Math.max,nativeMin4=Math.min;__name(debounce,"debounce");debounce_default=debounce}});function defaultTo(value,defaultValue){return value==null||value!==value?defaultValue:value}var defaultTo_default,init_defaultTo=__esm({"../../node_modules/lodash-es/defaultTo.js"(){__name(defaultTo,"defaultTo");defaultTo_default=defaultTo}});var objectProto21,hasOwnProperty18,defaults,defaults_default,init_defaults=__esm({"../../node_modules/lodash-es/defaults.js"(){init_baseRest();init_eq();init_isIterateeCall();init_keysIn();objectProto21=Object.prototype,hasOwnProperty18=objectProto21.hasOwnProperty,defaults=baseRest_default(function(object2,sources){object2=Object(object2);var index=-1,length=sources.length,guard=length>2?sources[2]:void 0;for(guard&&isIterateeCall_default(sources[0],sources[1],guard)&&(length=1);++index<length;)for(var source=sources[index],props=keysIn_default(source),propsIndex=-1,propsLength=props.length;++propsIndex<propsLength;){var key=props[propsIndex],value=object2[key];(value===void 0||eq_default(value,objectProto21[key])&&!hasOwnProperty18.call(object2,key))&&(object2[key]=source[key])}return object2}),defaults_default=defaults}});function assignMergeValue(object2,key,value){(value!==void 0&&!eq_default(object2[key],value)||value===void 0&&!(key in object2))&&baseAssignValue_default(object2,key,value)}var assignMergeValue_default,init_assignMergeValue=__esm({"../../node_modules/lodash-es/_assignMergeValue.js"(){init_baseAssignValue();init_eq();__name(assignMergeValue,"assignMergeValue");assignMergeValue_default=assignMergeValue}});function isArrayLikeObject(value){return isObjectLike_default(value)&&isArrayLike_default(value)}var isArrayLikeObject_default,init_isArrayLikeObject=__esm({"../../node_modules/lodash-es/isArrayLikeObject.js"(){init_isArrayLike();init_isObjectLike();__name(isArrayLikeObject,"isArrayLikeObject");isArrayLikeObject_default=isArrayLikeObject}});function safeGet(object2,key){if(!(key==="constructor"&&typeof object2[key]=="function")&&key!="__proto__")return object2[key]}var safeGet_default,init_safeGet=__esm({"../../node_modules/lodash-es/_safeGet.js"(){__name(safeGet,"safeGet");safeGet_default=safeGet}});function toPlainObject(value){return copyObject_default(value,keysIn_default(value))}var toPlainObject_default,init_toPlainObject=__esm({"../../node_modules/lodash-es/toPlainObject.js"(){init_copyObject();init_keysIn();__name(toPlainObject,"toPlainObject");toPlainObject_default=toPlainObject}});function baseMergeDeep(object2,source,key,srcIndex,mergeFunc,customizer,stack){var objValue=safeGet_default(object2,key),srcValue=safeGet_default(source,key),stacked=stack.get(srcValue);if(stacked){assignMergeValue_default(object2,key,stacked);return}var newValue=customizer?customizer(objValue,srcValue,key+"",object2,source,stack):void 0,isCommon=newValue===void 0;if(isCommon){var isArr=isArray_default(srcValue),isBuff=!isArr&&isBuffer_default(srcValue),isTyped=!isArr&&!isBuff&&isTypedArray_default(srcValue);newValue=srcValue,isArr||isBuff||isTyped?isArray_default(objValue)?newValue=objValue:isArrayLikeObject_default(objValue)?newValue=copyArray_default(objValue):isBuff?(isCommon=!1,newValue=cloneBuffer_default(srcValue,!0)):isTyped?(isCommon=!1,newValue=cloneTypedArray_default(srcValue,!0)):newValue=[]:isPlainObject_default(srcValue)||isArguments_default(srcValue)?(newValue=objValue,isArguments_default(objValue)?newValue=toPlainObject_default(objValue):(!isObject_default(objValue)||isFunction_default(objValue))&&(newValue=initCloneObject_default(srcValue))):isCommon=!1}isCommon&&(stack.set(srcValue,newValue),mergeFunc(newValue,srcValue,srcIndex,customizer,stack),stack.delete(srcValue)),assignMergeValue_default(object2,key,newValue)}var baseMergeDeep_default,init_baseMergeDeep=__esm({"../../node_modules/lodash-es/_baseMergeDeep.js"(){init_assignMergeValue();init_cloneBuffer();init_cloneTypedArray();init_copyArray();init_initCloneObject();init_isArguments();init_isArray();init_isArrayLikeObject();init_isBuffer();init_isFunction();init_isObject();init_isPlainObject();init_isTypedArray();init_safeGet();init_toPlainObject();__name(baseMergeDeep,"baseMergeDeep");baseMergeDeep_default=baseMergeDeep}});function baseMerge(object2,source,srcIndex,customizer,stack){object2!==source&&baseFor_default(source,function(srcValue,key){if(stack||(stack=new Stack_default),isObject_default(srcValue))baseMergeDeep_default(object2,source,key,srcIndex,baseMerge,customizer,stack);else{var newValue=customizer?customizer(safeGet_default(object2,key),srcValue,key+"",object2,source,stack):void 0;newValue===void 0&&(newValue=srcValue),assignMergeValue_default(object2,key,newValue)}},keysIn_default)}var baseMerge_default,init_baseMerge=__esm({"../../node_modules/lodash-es/_baseMerge.js"(){init_Stack();init_assignMergeValue();init_baseFor();init_baseMergeDeep();init_isObject();init_keysIn();init_safeGet();__name(baseMerge,"baseMerge");baseMerge_default=baseMerge}});function customDefaultsMerge(objValue,srcValue,key,object2,source,stack){return isObject_default(objValue)&&isObject_default(srcValue)&&(stack.set(srcValue,objValue),baseMerge_default(objValue,srcValue,void 0,customDefaultsMerge,stack),stack.delete(srcValue)),objValue}var customDefaultsMerge_default,init_customDefaultsMerge=__esm({"../../node_modules/lodash-es/_customDefaultsMerge.js"(){init_baseMerge();init_isObject();__name(customDefaultsMerge,"customDefaultsMerge");customDefaultsMerge_default=customDefaultsMerge}});var mergeWith,mergeWith_default,init_mergeWith=__esm({"../../node_modules/lodash-es/mergeWith.js"(){init_baseMerge();init_createAssigner();mergeWith=createAssigner_default(function(object2,source,srcIndex,customizer){baseMerge_default(object2,source,srcIndex,customizer)}),mergeWith_default=mergeWith}});var defaultsDeep,defaultsDeep_default,init_defaultsDeep=__esm({"../../node_modules/lodash-es/defaultsDeep.js"(){init_apply();init_baseRest();init_customDefaultsMerge();init_mergeWith();defaultsDeep=baseRest_default(function(args){return args.push(void 0,customDefaultsMerge_default),apply_default(mergeWith_default,void 0,args)}),defaultsDeep_default=defaultsDeep}});function baseDelay(func,wait,args){if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT7);return setTimeout(function(){func.apply(void 0,args)},wait)}var FUNC_ERROR_TEXT7,baseDelay_default,init_baseDelay=__esm({"../../node_modules/lodash-es/_baseDelay.js"(){FUNC_ERROR_TEXT7="Expected a function";__name(baseDelay,"baseDelay");baseDelay_default=baseDelay}});var defer,defer_default,init_defer=__esm({"../../node_modules/lodash-es/defer.js"(){init_baseDelay();init_baseRest();defer=baseRest_default(function(func,args){return baseDelay_default(func,1,args)}),defer_default=defer}});var delay,delay_default,init_delay=__esm({"../../node_modules/lodash-es/delay.js"(){init_baseDelay();init_baseRest();init_toNumber();delay=baseRest_default(function(func,wait,args){return baseDelay_default(func,toNumber_default(wait)||0,args)}),delay_default=delay}});function arrayIncludesWith(array2,value,comparator){for(var index=-1,length=array2==null?0:array2.length;++index<length;)if(comparator(value,array2[index]))return!0;return!1}var arrayIncludesWith_default,init_arrayIncludesWith=__esm({"../../node_modules/lodash-es/_arrayIncludesWith.js"(){__name(arrayIncludesWith,"arrayIncludesWith");arrayIncludesWith_default=arrayIncludesWith}});function baseDifference(array2,values2,iteratee2,comparator){var index=-1,includes2=arrayIncludes_default,isCommon=!0,length=array2.length,result2=[],valuesLength=values2.length;if(!length)return result2;iteratee2&&(values2=arrayMap_default(values2,baseUnary_default(iteratee2))),comparator?(includes2=arrayIncludesWith_default,isCommon=!1):values2.length>=LARGE_ARRAY_SIZE2&&(includes2=cacheHas_default,isCommon=!1,values2=new SetCache_default(values2));outer:for(;++index<length;){var value=array2[index],computed=iteratee2==null?value:iteratee2(value);if(value=comparator||value!==0?value:0,isCommon&&computed===computed){for(var valuesIndex=valuesLength;valuesIndex--;)if(values2[valuesIndex]===computed)continue outer;result2.push(value)}else includes2(values2,computed,comparator)||result2.push(value)}return result2}var LARGE_ARRAY_SIZE2,baseDifference_default,init_baseDifference=__esm({"../../node_modules/lodash-es/_baseDifference.js"(){init_SetCache();init_arrayIncludes();init_arrayIncludesWith();init_arrayMap();init_baseUnary();init_cacheHas();LARGE_ARRAY_SIZE2=200;__name(baseDifference,"baseDifference");baseDifference_default=baseDifference}});var difference,difference_default,init_difference=__esm({"../../node_modules/lodash-es/difference.js"(){init_baseDifference();init_baseFlatten();init_baseRest();init_isArrayLikeObject();difference=baseRest_default(function(array2,values2){return isArrayLikeObject_default(array2)?baseDifference_default(array2,baseFlatten_default(values2,1,isArrayLikeObject_default,!0)):[]}),difference_default=difference}});function last(array2){var length=array2==null?0:array2.length;return length?array2[length-1]:void 0}var last_default,init_last=__esm({"../../node_modules/lodash-es/last.js"(){__name(last,"last");last_default=last}});var differenceBy,differenceBy_default,init_differenceBy=__esm({"../../node_modules/lodash-es/differenceBy.js"(){init_baseDifference();init_baseFlatten();init_baseIteratee();init_baseRest();init_isArrayLikeObject();init_last();differenceBy=baseRest_default(function(array2,values2){var iteratee2=last_default(values2);return isArrayLikeObject_default(iteratee2)&&(iteratee2=void 0),isArrayLikeObject_default(array2)?baseDifference_default(array2,baseFlatten_default(values2,1,isArrayLikeObject_default,!0),baseIteratee_default(iteratee2,2)):[]}),differenceBy_default=differenceBy}});var differenceWith,differenceWith_default,init_differenceWith=__esm({"../../node_modules/lodash-es/differenceWith.js"(){init_baseDifference();init_baseFlatten();init_baseRest();init_isArrayLikeObject();init_last();differenceWith=baseRest_default(function(array2,values2){var comparator=last_default(values2);return isArrayLikeObject_default(comparator)&&(comparator=void 0),isArrayLikeObject_default(array2)?baseDifference_default(array2,baseFlatten_default(values2,1,isArrayLikeObject_default,!0),void 0,comparator):[]}),differenceWith_default=differenceWith}});var divide,divide_default,init_divide=__esm({"../../node_modules/lodash-es/divide.js"(){init_createMathOperation();divide=createMathOperation_default(function(dividend,divisor){return dividend/divisor},1),divide_default=divide}});function drop(array2,n2,guard){var length=array2==null?0:array2.length;return length?(n2=guard||n2===void 0?1:toInteger_default(n2),baseSlice_default(array2,n2<0?0:n2,length)):[]}var drop_default,init_drop=__esm({"../../node_modules/lodash-es/drop.js"(){init_baseSlice();init_toInteger();__name(drop,"drop");drop_default=drop}});function dropRight(array2,n2,guard){var length=array2==null?0:array2.length;return length?(n2=guard||n2===void 0?1:toInteger_default(n2),n2=length-n2,baseSlice_default(array2,0,n2<0?0:n2)):[]}var dropRight_default,init_dropRight=__esm({"../../node_modules/lodash-es/dropRight.js"(){init_baseSlice();init_toInteger();__name(dropRight,"dropRight");dropRight_default=dropRight}});function baseWhile(array2,predicate,isDrop,fromRight){for(var length=array2.length,index=fromRight?length:-1;(fromRight?index--:++index<length)&&predicate(array2[index],index,array2););return isDrop?baseSlice_default(array2,fromRight?0:index,fromRight?index+1:length):baseSlice_default(array2,fromRight?index+1:0,fromRight?length:index)}var baseWhile_default,init_baseWhile=__esm({"../../node_modules/lodash-es/_baseWhile.js"(){init_baseSlice();__name(baseWhile,"baseWhile");baseWhile_default=baseWhile}});function dropRightWhile(array2,predicate){return array2&&array2.length?baseWhile_default(array2,baseIteratee_default(predicate,3),!0,!0):[]}var dropRightWhile_default,init_dropRightWhile=__esm({"../../node_modules/lodash-es/dropRightWhile.js"(){init_baseIteratee();init_baseWhile();__name(dropRightWhile,"dropRightWhile");dropRightWhile_default=dropRightWhile}});function dropWhile(array2,predicate){return array2&&array2.length?baseWhile_default(array2,baseIteratee_default(predicate,3),!0):[]}var dropWhile_default,init_dropWhile=__esm({"../../node_modules/lodash-es/dropWhile.js"(){init_baseIteratee();init_baseWhile();__name(dropWhile,"dropWhile");dropWhile_default=dropWhile}});function castFunction(value){return typeof value=="function"?value:identity_default}var castFunction_default,init_castFunction=__esm({"../../node_modules/lodash-es/_castFunction.js"(){init_identity();__name(castFunction,"castFunction");castFunction_default=castFunction}});function forEach(collection,iteratee2){var func=isArray_default(collection)?arrayEach_default:baseEach_default;return func(collection,castFunction_default(iteratee2))}var forEach_default,init_forEach=__esm({"../../node_modules/lodash-es/forEach.js"(){init_arrayEach();init_baseEach();init_castFunction();init_isArray();__name(forEach,"forEach");forEach_default=forEach}});var init_each=__esm({"../../node_modules/lodash-es/each.js"(){init_forEach()}});function arrayEachRight(array2,iteratee2){for(var length=array2==null?0:array2.length;length--&&iteratee2(array2[length],length,array2)!==!1;);return array2}var arrayEachRight_default,init_arrayEachRight=__esm({"../../node_modules/lodash-es/_arrayEachRight.js"(){__name(arrayEachRight,"arrayEachRight");arrayEachRight_default=arrayEachRight}});var baseForRight,baseForRight_default,init_baseForRight=__esm({"../../node_modules/lodash-es/_baseForRight.js"(){init_createBaseFor();baseForRight=createBaseFor_default(!0),baseForRight_default=baseForRight}});function baseForOwnRight(object2,iteratee2){return object2&&baseForRight_default(object2,iteratee2,keys_default)}var baseForOwnRight_default,init_baseForOwnRight=__esm({"../../node_modules/lodash-es/_baseForOwnRight.js"(){init_baseForRight();init_keys();__name(baseForOwnRight,"baseForOwnRight");baseForOwnRight_default=baseForOwnRight}});var baseEachRight,baseEachRight_default,init_baseEachRight=__esm({"../../node_modules/lodash-es/_baseEachRight.js"(){init_baseForOwnRight();init_createBaseEach();baseEachRight=createBaseEach_default(baseForOwnRight_default,!0),baseEachRight_default=baseEachRight}});function forEachRight(collection,iteratee2){var func=isArray_default(collection)?arrayEachRight_default:baseEachRight_default;return func(collection,castFunction_default(iteratee2))}var forEachRight_default,init_forEachRight=__esm({"../../node_modules/lodash-es/forEachRight.js"(){init_arrayEachRight();init_baseEachRight();init_castFunction();init_isArray();__name(forEachRight,"forEachRight");forEachRight_default=forEachRight}});var init_eachRight=__esm({"../../node_modules/lodash-es/eachRight.js"(){init_forEachRight()}});function endsWith(string4,target,position){string4=toString_default(string4),target=baseToString_default(target);var length=string4.length;position=position===void 0?length:baseClamp_default(toInteger_default(position),0,length);var end=position;return position-=target.length,position>=0&&string4.slice(position,end)==target}var endsWith_default,init_endsWith=__esm({"../../node_modules/lodash-es/endsWith.js"(){init_baseClamp();init_baseToString();init_toInteger();init_toString();__name(endsWith,"endsWith");endsWith_default=endsWith}});function baseToPairs(object2,props){return arrayMap_default(props,function(key){return[key,object2[key]]})}var baseToPairs_default,init_baseToPairs=__esm({"../../node_modules/lodash-es/_baseToPairs.js"(){init_arrayMap();__name(baseToPairs,"baseToPairs");baseToPairs_default=baseToPairs}});function setToPairs(set3){var index=-1,result2=Array(set3.size);return set3.forEach(function(value){result2[++index]=[value,value]}),result2}var setToPairs_default,init_setToPairs=__esm({"../../node_modules/lodash-es/_setToPairs.js"(){__name(setToPairs,"setToPairs");setToPairs_default=setToPairs}});function createToPairs(keysFunc){return function(object2){var tag=getTag_default(object2);return tag==mapTag7?mapToArray_default(object2):tag==setTag7?setToPairs_default(object2):baseToPairs_default(object2,keysFunc(object2))}}var mapTag7,setTag7,createToPairs_default,init_createToPairs=__esm({"../../node_modules/lodash-es/_createToPairs.js"(){init_baseToPairs();init_getTag();init_mapToArray();init_setToPairs();mapTag7="[object Map]",setTag7="[object Set]";__name(createToPairs,"createToPairs");createToPairs_default=createToPairs}});var toPairs,toPairs_default,init_toPairs=__esm({"../../node_modules/lodash-es/toPairs.js"(){init_createToPairs();init_keys();toPairs=createToPairs_default(keys_default),toPairs_default=toPairs}});var init_entries=__esm({"../../node_modules/lodash-es/entries.js"(){init_toPairs()}});var toPairsIn,toPairsIn_default,init_toPairsIn=__esm({"../../node_modules/lodash-es/toPairsIn.js"(){init_createToPairs();init_keysIn();toPairsIn=createToPairs_default(keysIn_default),toPairsIn_default=toPairsIn}});var init_entriesIn=__esm({"../../node_modules/lodash-es/entriesIn.js"(){init_toPairsIn()}});var htmlEscapes,escapeHtmlChar,escapeHtmlChar_default,init_escapeHtmlChar=__esm({"../../node_modules/lodash-es/_escapeHtmlChar.js"(){init_basePropertyOf();htmlEscapes={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},escapeHtmlChar=basePropertyOf_default(htmlEscapes),escapeHtmlChar_default=escapeHtmlChar}});function escape(string4){return string4=toString_default(string4),string4&&reHasUnescapedHtml.test(string4)?string4.replace(reUnescapedHtml,escapeHtmlChar_default):string4}var reUnescapedHtml,reHasUnescapedHtml,escape_default,init_escape=__esm({"../../node_modules/lodash-es/escape.js"(){init_escapeHtmlChar();init_toString();reUnescapedHtml=/[&<>"']/g,reHasUnescapedHtml=RegExp(reUnescapedHtml.source);__name(escape,"escape");escape_default=escape}});function escapeRegExp2(string4){return string4=toString_default(string4),string4&&reHasRegExpChar.test(string4)?string4.replace(reRegExpChar2,"\\$&"):string4}var reRegExpChar2,reHasRegExpChar,escapeRegExp_default,init_escapeRegExp=__esm({"../../node_modules/lodash-es/escapeRegExp.js"(){init_toString();reRegExpChar2=/[\\^$.*+?()[\]{}|]/g,reHasRegExpChar=RegExp(reRegExpChar2.source);__name(escapeRegExp2,"escapeRegExp");escapeRegExp_default=escapeRegExp2}});function arrayEvery(array2,predicate){for(var index=-1,length=array2==null?0:array2.length;++index<length;)if(!predicate(array2[index],index,array2))return!1;return!0}var arrayEvery_default,init_arrayEvery=__esm({"../../node_modules/lodash-es/_arrayEvery.js"(){__name(arrayEvery,"arrayEvery");arrayEvery_default=arrayEvery}});function baseEvery(collection,predicate){var result2=!0;return baseEach_default(collection,function(value,index,collection2){return result2=!!predicate(value,index,collection2),result2}),result2}var baseEvery_default,init_baseEvery=__esm({"../../node_modules/lodash-es/_baseEvery.js"(){init_baseEach();__name(baseEvery,"baseEvery");baseEvery_default=baseEvery}});function every(collection,predicate,guard){var func=isArray_default(collection)?arrayEvery_default:baseEvery_default;return guard&&isIterateeCall_default(collection,predicate,guard)&&(predicate=void 0),func(collection,baseIteratee_default(predicate,3))}var every_default,init_every=__esm({"../../node_modules/lodash-es/every.js"(){init_arrayEvery();init_baseEvery();init_baseIteratee();init_isArray();init_isIterateeCall();__name(every,"every");every_default=every}});var init_extend=__esm({"../../node_modules/lodash-es/extend.js"(){init_assignIn()}});var init_extendWith=__esm({"../../node_modules/lodash-es/extendWith.js"(){init_assignInWith()}});function toLength(value){return value?baseClamp_default(toInteger_default(value),0,MAX_ARRAY_LENGTH2):0}var MAX_ARRAY_LENGTH2,toLength_default,init_toLength=__esm({"../../node_modules/lodash-es/toLength.js"(){init_baseClamp();init_toInteger();MAX_ARRAY_LENGTH2=4294967295;__name(toLength,"toLength");toLength_default=toLength}});function baseFill(array2,value,start,end){var length=array2.length;for(start=toInteger_default(start),start<0&&(start=-start>length?0:length+start),end=end===void 0||end>length?length:toInteger_default(end),end<0&&(end+=length),end=start>end?0:toLength_default(end);start<end;)array2[start++]=value;return array2}var baseFill_default,init_baseFill=__esm({"../../node_modules/lodash-es/_baseFill.js"(){init_toInteger();init_toLength();__name(baseFill,"baseFill");baseFill_default=baseFill}});function fill(array2,value,start,end){var length=array2==null?0:array2.length;return length?(start&&typeof start!="number"&&isIterateeCall_default(array2,value,start)&&(start=0,end=length),baseFill_default(array2,value,start,end)):[]}var fill_default,init_fill=__esm({"../../node_modules/lodash-es/fill.js"(){init_baseFill();init_isIterateeCall();__name(fill,"fill");fill_default=fill}});function baseFilter(collection,predicate){var result2=[];return baseEach_default(collection,function(value,index,collection2){predicate(value,index,collection2)&&result2.push(value)}),result2}var baseFilter_default,init_baseFilter=__esm({"../../node_modules/lodash-es/_baseFilter.js"(){init_baseEach();__name(baseFilter,"baseFilter");baseFilter_default=baseFilter}});function filter(collection,predicate){var func=isArray_default(collection)?arrayFilter_default:baseFilter_default;return func(collection,baseIteratee_default(predicate,3))}var filter_default,init_filter=__esm({"../../node_modules/lodash-es/filter.js"(){init_arrayFilter();init_baseFilter();init_baseIteratee();init_isArray();__name(filter,"filter");filter_default=filter}});function createFind(findIndexFunc){return function(collection,predicate,fromIndex){var iterable=Object(collection);if(!isArrayLike_default(collection)){var iteratee2=baseIteratee_default(predicate,3);collection=keys_default(collection),predicate=__name(function(key){return iteratee2(iterable[key],key,iterable)},"predicate")}var index=findIndexFunc(collection,predicate,fromIndex);return index>-1?iterable[iteratee2?collection[index]:index]:void 0}}var createFind_default,init_createFind=__esm({"../../node_modules/lodash-es/_createFind.js"(){init_baseIteratee();init_isArrayLike();init_keys();__name(createFind,"createFind");createFind_default=createFind}});function findIndex(array2,predicate,fromIndex){var length=array2==null?0:array2.length;if(!length)return-1;var index=fromIndex==null?0:toInteger_default(fromIndex);return index<0&&(index=nativeMax7(length+index,0)),baseFindIndex_default(array2,baseIteratee_default(predicate,3),index)}var nativeMax7,findIndex_default,init_findIndex=__esm({"../../node_modules/lodash-es/findIndex.js"(){init_baseFindIndex();init_baseIteratee();init_toInteger();nativeMax7=Math.max;__name(findIndex,"findIndex");findIndex_default=findIndex}});var find,find_default,init_find=__esm({"../../node_modules/lodash-es/find.js"(){init_createFind();init_findIndex();find=createFind_default(findIndex_default),find_default=find}});function baseFindKey(collection,predicate,eachFunc){var result2;return eachFunc(collection,function(value,key,collection2){if(predicate(value,key,collection2))return result2=key,!1}),result2}var baseFindKey_default,init_baseFindKey=__esm({"../../node_modules/lodash-es/_baseFindKey.js"(){__name(baseFindKey,"baseFindKey");baseFindKey_default=baseFindKey}});function findKey(object2,predicate){return baseFindKey_default(object2,baseIteratee_default(predicate,3),baseForOwn_default)}var findKey_default,init_findKey=__esm({"../../node_modules/lodash-es/findKey.js"(){init_baseFindKey();init_baseForOwn();init_baseIteratee();__name(findKey,"findKey");findKey_default=findKey}});function findLastIndex(array2,predicate,fromIndex){var length=array2==null?0:array2.length;if(!length)return-1;var index=length-1;return fromIndex!==void 0&&(index=toInteger_default(fromIndex),index=fromIndex<0?nativeMax8(length+index,0):nativeMin5(index,length-1)),baseFindIndex_default(array2,baseIteratee_default(predicate,3),index,!0)}var nativeMax8,nativeMin5,findLastIndex_default,init_findLastIndex=__esm({"../../node_modules/lodash-es/findLastIndex.js"(){init_baseFindIndex();init_baseIteratee();init_toInteger();nativeMax8=Math.max,nativeMin5=Math.min;__name(findLastIndex,"findLastIndex");findLastIndex_default=findLastIndex}});var findLast,findLast_default,init_findLast=__esm({"../../node_modules/lodash-es/findLast.js"(){init_createFind();init_findLastIndex();findLast=createFind_default(findLastIndex_default),findLast_default=findLast}});function findLastKey(object2,predicate){return baseFindKey_default(object2,baseIteratee_default(predicate,3),baseForOwnRight_default)}var findLastKey_default,init_findLastKey=__esm({"../../node_modules/lodash-es/findLastKey.js"(){init_baseFindKey();init_baseForOwnRight();init_baseIteratee();__name(findLastKey,"findLastKey");findLastKey_default=findLastKey}});function head(array2){return array2&&array2.length?array2[0]:void 0}var head_default,init_head=__esm({"../../node_modules/lodash-es/head.js"(){__name(head,"head");head_default=head}});var init_first=__esm({"../../node_modules/lodash-es/first.js"(){init_head()}});function baseMap(collection,iteratee2){var index=-1,result2=isArrayLike_default(collection)?Array(collection.length):[];return baseEach_default(collection,function(value,key,collection2){result2[++index]=iteratee2(value,key,collection2)}),result2}var baseMap_default,init_baseMap=__esm({"../../node_modules/lodash-es/_baseMap.js"(){init_baseEach();init_isArrayLike();__name(baseMap,"baseMap");baseMap_default=baseMap}});function map(collection,iteratee2){var func=isArray_default(collection)?arrayMap_default:baseMap_default;return func(collection,baseIteratee_default(iteratee2,3))}var map_default,init_map=__esm({"../../node_modules/lodash-es/map.js"(){init_arrayMap();init_baseIteratee();init_baseMap();init_isArray();__name(map,"map");map_default=map}});function flatMap(collection,iteratee2){return baseFlatten_default(map_default(collection,iteratee2),1)}var flatMap_default,init_flatMap=__esm({"../../node_modules/lodash-es/flatMap.js"(){init_baseFlatten();init_map();__name(flatMap,"flatMap");flatMap_default=flatMap}});function flatMapDeep(collection,iteratee2){return baseFlatten_default(map_default(collection,iteratee2),INFINITY4)}var INFINITY4,flatMapDeep_default,init_flatMapDeep=__esm({"../../node_modules/lodash-es/flatMapDeep.js"(){init_baseFlatten();init_map();INFINITY4=1/0;__name(flatMapDeep,"flatMapDeep");flatMapDeep_default=flatMapDeep}});function flatMapDepth(collection,iteratee2,depth){return depth=depth===void 0?1:toInteger_default(depth),baseFlatten_default(map_default(collection,iteratee2),depth)}var flatMapDepth_default,init_flatMapDepth=__esm({"../../node_modules/lodash-es/flatMapDepth.js"(){init_baseFlatten();init_map();init_toInteger();__name(flatMapDepth,"flatMapDepth");flatMapDepth_default=flatMapDepth}});function flattenDeep(array2){var length=array2==null?0:array2.length;return length?baseFlatten_default(array2,INFINITY5):[]}var INFINITY5,flattenDeep_default,init_flattenDeep=__esm({"../../node_modules/lodash-es/flattenDeep.js"(){init_baseFlatten();INFINITY5=1/0;__name(flattenDeep,"flattenDeep");flattenDeep_default=flattenDeep}});function flattenDepth(array2,depth){var length=array2==null?0:array2.length;return length?(depth=depth===void 0?1:toInteger_default(depth),baseFlatten_default(array2,depth)):[]}var flattenDepth_default,init_flattenDepth=__esm({"../../node_modules/lodash-es/flattenDepth.js"(){init_baseFlatten();init_toInteger();__name(flattenDepth,"flattenDepth");flattenDepth_default=flattenDepth}});function flip(func){return createWrap_default(func,WRAP_FLIP_FLAG3)}var WRAP_FLIP_FLAG3,flip_default,init_flip=__esm({"../../node_modules/lodash-es/flip.js"(){init_createWrap();WRAP_FLIP_FLAG3=512;__name(flip,"flip");flip_default=flip}});var floor,floor_default,init_floor=__esm({"../../node_modules/lodash-es/floor.js"(){init_createRound();floor=createRound_default("floor"),floor_default=floor}});function createFlow(fromRight){return flatRest_default(function(funcs){var length=funcs.length,index=length,prereq=LodashWrapper_default.prototype.thru;for(fromRight&&funcs.reverse();index--;){var func=funcs[index];if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT8);if(prereq&&!wrapper&&getFuncName_default(func)=="wrapper")var wrapper=new LodashWrapper_default([],!0)}for(index=wrapper?index:length;++index<length;){func=funcs[index];var funcName=getFuncName_default(func),data=funcName=="wrapper"?getData_default(func):void 0;data&&isLaziable_default(data[0])&&data[1]==(WRAP_ARY_FLAG5|WRAP_CURRY_FLAG7|WRAP_PARTIAL_FLAG6|WRAP_REARG_FLAG3)&&!data[4].length&&data[9]==1?wrapper=wrapper[getFuncName_default(data[0])].apply(wrapper,data[3]):wrapper=func.length==1&&isLaziable_default(func)?wrapper[funcName]():wrapper.thru(func)}return function(){var args=arguments,value=args[0];if(wrapper&&args.length==1&&isArray_default(value))return wrapper.plant(value).value();for(var index2=0,result2=length?funcs[index2].apply(this,args):value;++index2<length;)result2=funcs[index2].call(this,result2);return result2}})}var FUNC_ERROR_TEXT8,WRAP_CURRY_FLAG7,WRAP_PARTIAL_FLAG6,WRAP_ARY_FLAG5,WRAP_REARG_FLAG3,createFlow_default,init_createFlow=__esm({"../../node_modules/lodash-es/_createFlow.js"(){init_LodashWrapper();init_flatRest();init_getData();init_getFuncName();init_isArray();init_isLaziable();FUNC_ERROR_TEXT8="Expected a function",WRAP_CURRY_FLAG7=8,WRAP_PARTIAL_FLAG6=32,WRAP_ARY_FLAG5=128,WRAP_REARG_FLAG3=256;__name(createFlow,"createFlow");createFlow_default=createFlow}});var flow,flow_default,init_flow=__esm({"../../node_modules/lodash-es/flow.js"(){init_createFlow();flow=createFlow_default(),flow_default=flow}});var flowRight,flowRight_default,init_flowRight=__esm({"../../node_modules/lodash-es/flowRight.js"(){init_createFlow();flowRight=createFlow_default(!0),flowRight_default=flowRight}});function forIn(object2,iteratee2){return object2==null?object2:baseFor_default(object2,castFunction_default(iteratee2),keysIn_default)}var forIn_default,init_forIn=__esm({"../../node_modules/lodash-es/forIn.js"(){init_baseFor();init_castFunction();init_keysIn();__name(forIn,"forIn");forIn_default=forIn}});function forInRight(object2,iteratee2){return object2==null?object2:baseForRight_default(object2,castFunction_default(iteratee2),keysIn_default)}var forInRight_default,init_forInRight=__esm({"../../node_modules/lodash-es/forInRight.js"(){init_baseForRight();init_castFunction();init_keysIn();__name(forInRight,"forInRight");forInRight_default=forInRight}});function forOwn(object2,iteratee2){return object2&&baseForOwn_default(object2,castFunction_default(iteratee2))}var forOwn_default,init_forOwn=__esm({"../../node_modules/lodash-es/forOwn.js"(){init_baseForOwn();init_castFunction();__name(forOwn,"forOwn");forOwn_default=forOwn}});function forOwnRight(object2,iteratee2){return object2&&baseForOwnRight_default(object2,castFunction_default(iteratee2))}var forOwnRight_default,init_forOwnRight=__esm({"../../node_modules/lodash-es/forOwnRight.js"(){init_baseForOwnRight();init_castFunction();__name(forOwnRight,"forOwnRight");forOwnRight_default=forOwnRight}});function fromPairs(pairs){for(var index=-1,length=pairs==null?0:pairs.length,result2={};++index<length;){var pair=pairs[index];baseAssignValue_default(result2,pair[0],pair[1])}return result2}var fromPairs_default,init_fromPairs=__esm({"../../node_modules/lodash-es/fromPairs.js"(){init_baseAssignValue();__name(fromPairs,"fromPairs");fromPairs_default=fromPairs}});function baseFunctions(object2,props){return arrayFilter_default(props,function(key){return isFunction_default(object2[key])})}var baseFunctions_default,init_baseFunctions=__esm({"../../node_modules/lodash-es/_baseFunctions.js"(){init_arrayFilter();init_isFunction();__name(baseFunctions,"baseFunctions");baseFunctions_default=baseFunctions}});function functions(object2){return object2==null?[]:baseFunctions_default(object2,keys_default(object2))}var functions_default,init_functions=__esm({"../../node_modules/lodash-es/functions.js"(){init_baseFunctions();init_keys();__name(functions,"functions");functions_default=functions}});function functionsIn(object2){return object2==null?[]:baseFunctions_default(object2,keysIn_default(object2))}var functionsIn_default,init_functionsIn=__esm({"../../node_modules/lodash-es/functionsIn.js"(){init_baseFunctions();init_keysIn();__name(functionsIn,"functionsIn");functionsIn_default=functionsIn}});var objectProto22,hasOwnProperty19,groupBy,groupBy_default,init_groupBy=__esm({"../../node_modules/lodash-es/groupBy.js"(){init_baseAssignValue();init_createAggregator();objectProto22=Object.prototype,hasOwnProperty19=objectProto22.hasOwnProperty,groupBy=createAggregator_default(function(result2,value,key){hasOwnProperty19.call(result2,key)?result2[key].push(value):baseAssignValue_default(result2,key,[value])}),groupBy_default=groupBy}});function baseGt(value,other){return value>other}var baseGt_default,init_baseGt=__esm({"../../node_modules/lodash-es/_baseGt.js"(){__name(baseGt,"baseGt");baseGt_default=baseGt}});function createRelationalOperation(operator){return function(value,other){return typeof value=="string"&&typeof other=="string"||(value=toNumber_default(value),other=toNumber_default(other)),operator(value,other)}}var createRelationalOperation_default,init_createRelationalOperation=__esm({"../../node_modules/lodash-es/_createRelationalOperation.js"(){init_toNumber();__name(createRelationalOperation,"createRelationalOperation");createRelationalOperation_default=createRelationalOperation}});var gt,gt_default,init_gt=__esm({"../../node_modules/lodash-es/gt.js"(){init_baseGt();init_createRelationalOperation();gt=createRelationalOperation_default(baseGt_default),gt_default=gt}});var gte,gte_default,init_gte=__esm({"../../node_modules/lodash-es/gte.js"(){init_createRelationalOperation();gte=createRelationalOperation_default(function(value,other){return value>=other}),gte_default=gte}});function baseHas(object2,key){return object2!=null&&hasOwnProperty20.call(object2,key)}var objectProto23,hasOwnProperty20,baseHas_default,init_baseHas=__esm({"../../node_modules/lodash-es/_baseHas.js"(){objectProto23=Object.prototype,hasOwnProperty20=objectProto23.hasOwnProperty;__name(baseHas,"baseHas");baseHas_default=baseHas}});function has(object2,path10){return object2!=null&&hasPath_default(object2,path10,baseHas_default)}var has_default,init_has=__esm({"../../node_modules/lodash-es/has.js"(){init_baseHas();init_hasPath();__name(has,"has");has_default=has}});function baseInRange(number4,start,end){return number4>=nativeMin6(start,end)&&number4<nativeMax9(start,end)}var nativeMax9,nativeMin6,baseInRange_default,init_baseInRange=__esm({"../../node_modules/lodash-es/_baseInRange.js"(){nativeMax9=Math.max,nativeMin6=Math.min;__name(baseInRange,"baseInRange");baseInRange_default=baseInRange}});function inRange2(number4,start,end){return start=toFinite_default(start),end===void 0?(end=start,start=0):end=toFinite_default(end),number4=toNumber_default(number4),baseInRange_default(number4,start,end)}var inRange_default,init_inRange=__esm({"../../node_modules/lodash-es/inRange.js"(){init_baseInRange();init_toFinite();init_toNumber();__name(inRange2,"inRange");inRange_default=inRange2}});function isString(value){return typeof value=="string"||!isArray_default(value)&&isObjectLike_default(value)&&baseGetTag_default(value)==stringTag5}var stringTag5,isString_default,init_isString=__esm({"../../node_modules/lodash-es/isString.js"(){init_baseGetTag();init_isArray();init_isObjectLike();stringTag5="[object String]";__name(isString,"isString");isString_default=isString}});function baseValues(object2,props){return arrayMap_default(props,function(key){return object2[key]})}var baseValues_default,init_baseValues=__esm({"../../node_modules/lodash-es/_baseValues.js"(){init_arrayMap();__name(baseValues,"baseValues");baseValues_default=baseValues}});function values(object2){return object2==null?[]:baseValues_default(object2,keys_default(object2))}var values_default,init_values=__esm({"../../node_modules/lodash-es/values.js"(){init_baseValues();init_keys();__name(values,"values");values_default=values}});function includes(collection,value,fromIndex,guard){collection=isArrayLike_default(collection)?collection:values_default(collection),fromIndex=fromIndex&&!guard?toInteger_default(fromIndex):0;var length=collection.length;return fromIndex<0&&(fromIndex=nativeMax10(length+fromIndex,0)),isString_default(collection)?fromIndex<=length&&collection.indexOf(value,fromIndex)>-1:!!length&&baseIndexOf_default(collection,value,fromIndex)>-1}var nativeMax10,includes_default,init_includes=__esm({"../../node_modules/lodash-es/includes.js"(){init_baseIndexOf();init_isArrayLike();init_isString();init_toInteger();init_values();nativeMax10=Math.max;__name(includes,"includes");includes_default=includes}});function indexOf(array2,value,fromIndex){var length=array2==null?0:array2.length;if(!length)return-1;var index=fromIndex==null?0:toInteger_default(fromIndex);return index<0&&(index=nativeMax11(length+index,0)),baseIndexOf_default(array2,value,index)}var nativeMax11,indexOf_default,init_indexOf=__esm({"../../node_modules/lodash-es/indexOf.js"(){init_baseIndexOf();init_toInteger();nativeMax11=Math.max;__name(indexOf,"indexOf");indexOf_default=indexOf}});function initial(array2){var length=array2==null?0:array2.length;return length?baseSlice_default(array2,0,-1):[]}var initial_default,init_initial=__esm({"../../node_modules/lodash-es/initial.js"(){init_baseSlice();__name(initial,"initial");initial_default=initial}});function baseIntersection(arrays,iteratee2,comparator){for(var includes2=comparator?arrayIncludesWith_default:arrayIncludes_default,length=arrays[0].length,othLength=arrays.length,othIndex=othLength,caches=Array(othLength),maxLength=1/0,result2=[];othIndex--;){var array2=arrays[othIndex];othIndex&&iteratee2&&(array2=arrayMap_default(array2,baseUnary_default(iteratee2))),maxLength=nativeMin7(array2.length,maxLength),caches[othIndex]=!comparator&&(iteratee2||length>=120&&array2.length>=120)?new SetCache_default(othIndex&&array2):void 0}array2=arrays[0];var index=-1,seen=caches[0];outer:for(;++index<length&&result2.length<maxLength;){var value=array2[index],computed=iteratee2?iteratee2(value):value;if(value=comparator||value!==0?value:0,!(seen?cacheHas_default(seen,computed):includes2(result2,computed,comparator))){for(othIndex=othLength;--othIndex;){var cache2=caches[othIndex];if(!(cache2?cacheHas_default(cache2,computed):includes2(arrays[othIndex],computed,comparator)))continue outer}seen&&seen.push(computed),result2.push(value)}}return result2}var nativeMin7,baseIntersection_default,init_baseIntersection=__esm({"../../node_modules/lodash-es/_baseIntersection.js"(){init_SetCache();init_arrayIncludes();init_arrayIncludesWith();init_arrayMap();init_baseUnary();init_cacheHas();nativeMin7=Math.min;__name(baseIntersection,"baseIntersection");baseIntersection_default=baseIntersection}});function castArrayLikeObject(value){return isArrayLikeObject_default(value)?value:[]}var castArrayLikeObject_default,init_castArrayLikeObject=__esm({"../../node_modules/lodash-es/_castArrayLikeObject.js"(){init_isArrayLikeObject();__name(castArrayLikeObject,"castArrayLikeObject");castArrayLikeObject_default=castArrayLikeObject}});var intersection,intersection_default,init_intersection=__esm({"../../node_modules/lodash-es/intersection.js"(){init_arrayMap();init_baseIntersection();init_baseRest();init_castArrayLikeObject();intersection=baseRest_default(function(arrays){var mapped=arrayMap_default(arrays,castArrayLikeObject_default);return mapped.length&&mapped[0]===arrays[0]?baseIntersection_default(mapped):[]}),intersection_default=intersection}});var intersectionBy,intersectionBy_default,init_intersectionBy=__esm({"../../node_modules/lodash-es/intersectionBy.js"(){init_arrayMap();init_baseIntersection();init_baseIteratee();init_baseRest();init_castArrayLikeObject();init_last();intersectionBy=baseRest_default(function(arrays){var iteratee2=last_default(arrays),mapped=arrayMap_default(arrays,castArrayLikeObject_default);return iteratee2===last_default(mapped)?iteratee2=void 0:mapped.pop(),mapped.length&&mapped[0]===arrays[0]?baseIntersection_default(mapped,baseIteratee_default(iteratee2,2)):[]}),intersectionBy_default=intersectionBy}});var intersectionWith,intersectionWith_default,init_intersectionWith=__esm({"../../node_modules/lodash-es/intersectionWith.js"(){init_arrayMap();init_baseIntersection();init_baseRest();init_castArrayLikeObject();init_last();intersectionWith=baseRest_default(function(arrays){var comparator=last_default(arrays),mapped=arrayMap_default(arrays,castArrayLikeObject_default);return comparator=typeof comparator=="function"?comparator:void 0,comparator&&mapped.pop(),mapped.length&&mapped[0]===arrays[0]?baseIntersection_default(mapped,void 0,comparator):[]}),intersectionWith_default=intersectionWith}});function baseInverter(object2,setter,iteratee2,accumulator){return baseForOwn_default(object2,function(value,key,object3){setter(accumulator,iteratee2(value),key,object3)}),accumulator}var baseInverter_default,init_baseInverter=__esm({"../../node_modules/lodash-es/_baseInverter.js"(){init_baseForOwn();__name(baseInverter,"baseInverter");baseInverter_default=baseInverter}});function createInverter(setter,toIteratee){return function(object2,iteratee2){return baseInverter_default(object2,setter,toIteratee(iteratee2),{})}}var createInverter_default,init_createInverter=__esm({"../../node_modules/lodash-es/_createInverter.js"(){init_baseInverter();__name(createInverter,"createInverter");createInverter_default=createInverter}});var objectProto24,nativeObjectToString3,invert,invert_default,init_invert=__esm({"../../node_modules/lodash-es/invert.js"(){init_constant();init_createInverter();init_identity();objectProto24=Object.prototype,nativeObjectToString3=objectProto24.toString,invert=createInverter_default(function(result2,value,key){value!=null&&typeof value.toString!="function"&&(value=nativeObjectToString3.call(value)),result2[value]=key},constant_default(identity_default)),invert_default=invert}});var objectProto25,hasOwnProperty21,nativeObjectToString4,invertBy,invertBy_default,init_invertBy=__esm({"../../node_modules/lodash-es/invertBy.js"(){init_baseIteratee();init_createInverter();objectProto25=Object.prototype,hasOwnProperty21=objectProto25.hasOwnProperty,nativeObjectToString4=objectProto25.toString,invertBy=createInverter_default(function(result2,value,key){value!=null&&typeof value.toString!="function"&&(value=nativeObjectToString4.call(value)),hasOwnProperty21.call(result2,value)?result2[value].push(key):result2[value]=[key]},baseIteratee_default),invertBy_default=invertBy}});function parent(object2,path10){return path10.length<2?object2:baseGet_default(object2,baseSlice_default(path10,0,-1))}var parent_default,init_parent=__esm({"../../node_modules/lodash-es/_parent.js"(){init_baseGet();init_baseSlice();__name(parent,"parent");parent_default=parent}});function baseInvoke(object2,path10,args){path10=castPath_default(path10,object2),object2=parent_default(object2,path10);var func=object2==null?object2:object2[toKey_default(last_default(path10))];return func==null?void 0:apply_default(func,object2,args)}var baseInvoke_default,init_baseInvoke=__esm({"../../node_modules/lodash-es/_baseInvoke.js"(){init_apply();init_castPath();init_last();init_parent();init_toKey();__name(baseInvoke,"baseInvoke");baseInvoke_default=baseInvoke}});var invoke,invoke_default,init_invoke=__esm({"../../node_modules/lodash-es/invoke.js"(){init_baseInvoke();init_baseRest();invoke=baseRest_default(baseInvoke_default),invoke_default=invoke}});var invokeMap,invokeMap_default,init_invokeMap=__esm({"../../node_modules/lodash-es/invokeMap.js"(){init_apply();init_baseEach();init_baseInvoke();init_baseRest();init_isArrayLike();invokeMap=baseRest_default(function(collection,path10,args){var index=-1,isFunc=typeof path10=="function",result2=isArrayLike_default(collection)?Array(collection.length):[];return baseEach_default(collection,function(value){result2[++index]=isFunc?apply_default(path10,value,args):baseInvoke_default(value,path10,args)}),result2}),invokeMap_default=invokeMap}});function baseIsArrayBuffer(value){return isObjectLike_default(value)&&baseGetTag_default(value)==arrayBufferTag5}var arrayBufferTag5,baseIsArrayBuffer_default,init_baseIsArrayBuffer=__esm({"../../node_modules/lodash-es/_baseIsArrayBuffer.js"(){init_baseGetTag();init_isObjectLike();arrayBufferTag5="[object ArrayBuffer]";__name(baseIsArrayBuffer,"baseIsArrayBuffer");baseIsArrayBuffer_default=baseIsArrayBuffer}});var nodeIsArrayBuffer,isArrayBuffer,isArrayBuffer_default,init_isArrayBuffer=__esm({"../../node_modules/lodash-es/isArrayBuffer.js"(){init_baseIsArrayBuffer();init_baseUnary();init_nodeUtil();nodeIsArrayBuffer=nodeUtil_default&&nodeUtil_default.isArrayBuffer,isArrayBuffer=nodeIsArrayBuffer?baseUnary_default(nodeIsArrayBuffer):baseIsArrayBuffer_default,isArrayBuffer_default=isArrayBuffer}});function isBoolean(value){return value===!0||value===!1||isObjectLike_default(value)&&baseGetTag_default(value)==boolTag5}var boolTag5,isBoolean_default,init_isBoolean=__esm({"../../node_modules/lodash-es/isBoolean.js"(){init_baseGetTag();init_isObjectLike();boolTag5="[object Boolean]";__name(isBoolean,"isBoolean");isBoolean_default=isBoolean}});function baseIsDate(value){return isObjectLike_default(value)&&baseGetTag_default(value)==dateTag5}var dateTag5,baseIsDate_default,init_baseIsDate=__esm({"../../node_modules/lodash-es/_baseIsDate.js"(){init_baseGetTag();init_isObjectLike();dateTag5="[object Date]";__name(baseIsDate,"baseIsDate");baseIsDate_default=baseIsDate}});var nodeIsDate,isDate,isDate_default,init_isDate=__esm({"../../node_modules/lodash-es/isDate.js"(){init_baseIsDate();init_baseUnary();init_nodeUtil();nodeIsDate=nodeUtil_default&&nodeUtil_default.isDate,isDate=nodeIsDate?baseUnary_default(nodeIsDate):baseIsDate_default,isDate_default=isDate}});function isElement(value){return isObjectLike_default(value)&&value.nodeType===1&&!isPlainObject_default(value)}var isElement_default,init_isElement=__esm({"../../node_modules/lodash-es/isElement.js"(){init_isObjectLike();init_isPlainObject();__name(isElement,"isElement");isElement_default=isElement}});function isEmpty(value){if(value==null)return!0;if(isArrayLike_default(value)&&(isArray_default(value)||typeof value=="string"||typeof value.splice=="function"||isBuffer_default(value)||isTypedArray_default(value)||isArguments_default(value)))return!value.length;var tag=getTag_default(value);if(tag==mapTag8||tag==setTag8)return!value.size;if(isPrototype_default(value))return!baseKeys_default(value).length;for(var key in value)if(hasOwnProperty22.call(value,key))return!1;return!0}var mapTag8,setTag8,objectProto26,hasOwnProperty22,isEmpty_default,init_isEmpty=__esm({"../../node_modules/lodash-es/isEmpty.js"(){init_baseKeys();init_getTag();init_isArguments();init_isArray();init_isArrayLike();init_isBuffer();init_isPrototype();init_isTypedArray();mapTag8="[object Map]",setTag8="[object Set]",objectProto26=Object.prototype,hasOwnProperty22=objectProto26.hasOwnProperty;__name(isEmpty,"isEmpty");isEmpty_default=isEmpty}});function isEqual(value,other){return baseIsEqual_default(value,other)}var isEqual_default,init_isEqual=__esm({"../../node_modules/lodash-es/isEqual.js"(){init_baseIsEqual();__name(isEqual,"isEqual");isEqual_default=isEqual}});function isEqualWith(value,other,customizer){customizer=typeof customizer=="function"?customizer:void 0;var result2=customizer?customizer(value,other):void 0;return result2===void 0?baseIsEqual_default(value,other,void 0,customizer):!!result2}var isEqualWith_default,init_isEqualWith=__esm({"../../node_modules/lodash-es/isEqualWith.js"(){init_baseIsEqual();__name(isEqualWith,"isEqualWith");isEqualWith_default=isEqualWith}});function isFinite2(value){return typeof value=="number"&&nativeIsFinite2(value)}var nativeIsFinite2,isFinite_default,init_isFinite=__esm({"../../node_modules/lodash-es/isFinite.js"(){init_root();nativeIsFinite2=root_default.isFinite;__name(isFinite2,"isFinite");isFinite_default=isFinite2}});function isInteger(value){return typeof value=="number"&&value==toInteger_default(value)}var isInteger_default,init_isInteger=__esm({"../../node_modules/lodash-es/isInteger.js"(){init_toInteger();__name(isInteger,"isInteger");isInteger_default=isInteger}});function isMatch(object2,source){return object2===source||baseIsMatch_default(object2,source,getMatchData_default(source))}var isMatch_default,init_isMatch=__esm({"../../node_modules/lodash-es/isMatch.js"(){init_baseIsMatch();init_getMatchData();__name(isMatch,"isMatch");isMatch_default=isMatch}});function isMatchWith(object2,source,customizer){return customizer=typeof customizer=="function"?customizer:void 0,baseIsMatch_default(object2,source,getMatchData_default(source),customizer)}var isMatchWith_default,init_isMatchWith=__esm({"../../node_modules/lodash-es/isMatchWith.js"(){init_baseIsMatch();init_getMatchData();__name(isMatchWith,"isMatchWith");isMatchWith_default=isMatchWith}});function isNumber(value){return typeof value=="number"||isObjectLike_default(value)&&baseGetTag_default(value)==numberTag5}var numberTag5,isNumber_default,init_isNumber=__esm({"../../node_modules/lodash-es/isNumber.js"(){init_baseGetTag();init_isObjectLike();numberTag5="[object Number]";__name(isNumber,"isNumber");isNumber_default=isNumber}});function isNaN2(value){return isNumber_default(value)&&value!=+value}var isNaN_default,init_isNaN=__esm({"../../node_modules/lodash-es/isNaN.js"(){init_isNumber();__name(isNaN2,"isNaN");isNaN_default=isNaN2}});var isMaskable,isMaskable_default,init_isMaskable=__esm({"../../node_modules/lodash-es/_isMaskable.js"(){init_coreJsData();init_isFunction();init_stubFalse();isMaskable=coreJsData_default?isFunction_default:stubFalse_default,isMaskable_default=isMaskable}});function isNative(value){if(isMaskable_default(value))throw new Error(CORE_ERROR_TEXT);return baseIsNative_default(value)}var CORE_ERROR_TEXT,isNative_default,init_isNative=__esm({"../../node_modules/lodash-es/isNative.js"(){init_baseIsNative();init_isMaskable();CORE_ERROR_TEXT="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.";__name(isNative,"isNative");isNative_default=isNative}});function isNil(value){return value==null}var isNil_default,init_isNil=__esm({"../../node_modules/lodash-es/isNil.js"(){__name(isNil,"isNil");isNil_default=isNil}});function isNull(value){return value===null}var isNull_default,init_isNull=__esm({"../../node_modules/lodash-es/isNull.js"(){__name(isNull,"isNull");isNull_default=isNull}});function baseIsRegExp(value){return isObjectLike_default(value)&&baseGetTag_default(value)==regexpTag5}var regexpTag5,baseIsRegExp_default,init_baseIsRegExp=__esm({"../../node_modules/lodash-es/_baseIsRegExp.js"(){init_baseGetTag();init_isObjectLike();regexpTag5="[object RegExp]";__name(baseIsRegExp,"baseIsRegExp");baseIsRegExp_default=baseIsRegExp}});var nodeIsRegExp,isRegExp,isRegExp_default,init_isRegExp=__esm({"../../node_modules/lodash-es/isRegExp.js"(){init_baseIsRegExp();init_baseUnary();init_nodeUtil();nodeIsRegExp=nodeUtil_default&&nodeUtil_default.isRegExp,isRegExp=nodeIsRegExp?baseUnary_default(nodeIsRegExp):baseIsRegExp_default,isRegExp_default=isRegExp}});function isSafeInteger(value){return isInteger_default(value)&&value>=-MAX_SAFE_INTEGER3&&value<=MAX_SAFE_INTEGER3}var MAX_SAFE_INTEGER3,isSafeInteger_default,init_isSafeInteger=__esm({"../../node_modules/lodash-es/isSafeInteger.js"(){init_isInteger();MAX_SAFE_INTEGER3=9007199254740991;__name(isSafeInteger,"isSafeInteger");isSafeInteger_default=isSafeInteger}});function isUndefined(value){return value===void 0}var isUndefined_default,init_isUndefined=__esm({"../../node_modules/lodash-es/isUndefined.js"(){__name(isUndefined,"isUndefined");isUndefined_default=isUndefined}});function isWeakMap(value){return isObjectLike_default(value)&&getTag_default(value)==weakMapTag4}var weakMapTag4,isWeakMap_default,init_isWeakMap=__esm({"../../node_modules/lodash-es/isWeakMap.js"(){init_getTag();init_isObjectLike();weakMapTag4="[object WeakMap]";__name(isWeakMap,"isWeakMap");isWeakMap_default=isWeakMap}});function isWeakSet(value){return isObjectLike_default(value)&&baseGetTag_default(value)==weakSetTag}var weakSetTag,isWeakSet_default,init_isWeakSet=__esm({"../../node_modules/lodash-es/isWeakSet.js"(){init_baseGetTag();init_isObjectLike();weakSetTag="[object WeakSet]";__name(isWeakSet,"isWeakSet");isWeakSet_default=isWeakSet}});function iteratee(func){return baseIteratee_default(typeof func=="function"?func:baseClone_default(func,CLONE_DEEP_FLAG5))}var CLONE_DEEP_FLAG5,iteratee_default,init_iteratee=__esm({"../../node_modules/lodash-es/iteratee.js"(){init_baseClone();init_baseIteratee();CLONE_DEEP_FLAG5=1;__name(iteratee,"iteratee");iteratee_default=iteratee}});function join2(array2,separator){return array2==null?"":nativeJoin.call(array2,separator)}var arrayProto2,nativeJoin,join_default,init_join=__esm({"../../node_modules/lodash-es/join.js"(){arrayProto2=Array.prototype,nativeJoin=arrayProto2.join;__name(join2,"join");join_default=join2}});var kebabCase,kebabCase_default,init_kebabCase=__esm({"../../node_modules/lodash-es/kebabCase.js"(){init_createCompounder();kebabCase=createCompounder_default(function(result2,word,index){return result2+(index?"-":"")+word.toLowerCase()}),kebabCase_default=kebabCase}});var keyBy,keyBy_default,init_keyBy=__esm({"../../node_modules/lodash-es/keyBy.js"(){init_baseAssignValue();init_createAggregator();keyBy=createAggregator_default(function(result2,value,key){baseAssignValue_default(result2,key,value)}),keyBy_default=keyBy}});function strictLastIndexOf(array2,value,fromIndex){for(var index=fromIndex+1;index--;)if(array2[index]===value)return index;return index}var strictLastIndexOf_default,init_strictLastIndexOf=__esm({"../../node_modules/lodash-es/_strictLastIndexOf.js"(){__name(strictLastIndexOf,"strictLastIndexOf");strictLastIndexOf_default=strictLastIndexOf}});function lastIndexOf(array2,value,fromIndex){var length=array2==null?0:array2.length;if(!length)return-1;var index=length;return fromIndex!==void 0&&(index=toInteger_default(fromIndex),index=index<0?nativeMax12(length+index,0):nativeMin8(index,length-1)),value===value?strictLastIndexOf_default(array2,value,index):baseFindIndex_default(array2,baseIsNaN_default,index,!0)}var nativeMax12,nativeMin8,lastIndexOf_default,init_lastIndexOf=__esm({"../../node_modules/lodash-es/lastIndexOf.js"(){init_baseFindIndex();init_baseIsNaN();init_strictLastIndexOf();init_toInteger();nativeMax12=Math.max,nativeMin8=Math.min;__name(lastIndexOf,"lastIndexOf");lastIndexOf_default=lastIndexOf}});var lowerCase,lowerCase_default,init_lowerCase=__esm({"../../node_modules/lodash-es/lowerCase.js"(){init_createCompounder();lowerCase=createCompounder_default(function(result2,word,index){return result2+(index?" ":"")+word.toLowerCase()}),lowerCase_default=lowerCase}});var lowerFirst,lowerFirst_default,init_lowerFirst=__esm({"../../node_modules/lodash-es/lowerFirst.js"(){init_createCaseFirst();lowerFirst=createCaseFirst_default("toLowerCase"),lowerFirst_default=lowerFirst}});function baseLt(value,other){return value<other}var baseLt_default,init_baseLt=__esm({"../../node_modules/lodash-es/_baseLt.js"(){__name(baseLt,"baseLt");baseLt_default=baseLt}});var lt,lt_default,init_lt=__esm({"../../node_modules/lodash-es/lt.js"(){init_baseLt();init_createRelationalOperation();lt=createRelationalOperation_default(baseLt_default),lt_default=lt}});var lte,lte_default,init_lte=__esm({"../../node_modules/lodash-es/lte.js"(){init_createRelationalOperation();lte=createRelationalOperation_default(function(value,other){return value<=other}),lte_default=lte}});function mapKeys(object2,iteratee2){var result2={};return iteratee2=baseIteratee_default(iteratee2,3),baseForOwn_default(object2,function(value,key,object3){baseAssignValue_default(result2,iteratee2(value,key,object3),value)}),result2}var mapKeys_default,init_mapKeys=__esm({"../../node_modules/lodash-es/mapKeys.js"(){init_baseAssignValue();init_baseForOwn();init_baseIteratee();__name(mapKeys,"mapKeys");mapKeys_default=mapKeys}});function mapValues(object2,iteratee2){var result2={};return iteratee2=baseIteratee_default(iteratee2,3),baseForOwn_default(object2,function(value,key,object3){baseAssignValue_default(result2,key,iteratee2(value,key,object3))}),result2}var mapValues_default,init_mapValues=__esm({"../../node_modules/lodash-es/mapValues.js"(){init_baseAssignValue();init_baseForOwn();init_baseIteratee();__name(mapValues,"mapValues");mapValues_default=mapValues}});function matches(source){return baseMatches_default(baseClone_default(source,CLONE_DEEP_FLAG6))}var CLONE_DEEP_FLAG6,matches_default,init_matches=__esm({"../../node_modules/lodash-es/matches.js"(){init_baseClone();init_baseMatches();CLONE_DEEP_FLAG6=1;__name(matches,"matches");matches_default=matches}});function matchesProperty(path10,srcValue){return baseMatchesProperty_default(path10,baseClone_default(srcValue,CLONE_DEEP_FLAG7))}var CLONE_DEEP_FLAG7,matchesProperty_default,init_matchesProperty=__esm({"../../node_modules/lodash-es/matchesProperty.js"(){init_baseClone();init_baseMatchesProperty();CLONE_DEEP_FLAG7=1;__name(matchesProperty,"matchesProperty");matchesProperty_default=matchesProperty}});function baseExtremum(array2,iteratee2,comparator){for(var index=-1,length=array2.length;++index<length;){var value=array2[index],current=iteratee2(value);if(current!=null&&(computed===void 0?current===current&&!isSymbol_default(current):comparator(current,computed)))var computed=current,result2=value}return result2}var baseExtremum_default,init_baseExtremum=__esm({"../../node_modules/lodash-es/_baseExtremum.js"(){init_isSymbol();__name(baseExtremum,"baseExtremum");baseExtremum_default=baseExtremum}});function max(array2){return array2&&array2.length?baseExtremum_default(array2,identity_default,baseGt_default):void 0}var max_default,init_max=__esm({"../../node_modules/lodash-es/max.js"(){init_baseExtremum();init_baseGt();init_identity();__name(max,"max");max_default=max}});function maxBy(array2,iteratee2){return array2&&array2.length?baseExtremum_default(array2,baseIteratee_default(iteratee2,2),baseGt_default):void 0}var maxBy_default,init_maxBy=__esm({"../../node_modules/lodash-es/maxBy.js"(){init_baseExtremum();init_baseGt();init_baseIteratee();__name(maxBy,"maxBy");maxBy_default=maxBy}});function baseMean(array2,iteratee2){var length=array2==null?0:array2.length;return length?baseSum_default(array2,iteratee2)/length:NAN3}var NAN3,baseMean_default,init_baseMean=__esm({"../../node_modules/lodash-es/_baseMean.js"(){init_baseSum();NAN3=NaN;__name(baseMean,"baseMean");baseMean_default=baseMean}});function mean(array2){return baseMean_default(array2,identity_default)}var mean_default,init_mean=__esm({"../../node_modules/lodash-es/mean.js"(){init_baseMean();init_identity();__name(mean,"mean");mean_default=mean}});function meanBy(array2,iteratee2){return baseMean_default(array2,baseIteratee_default(iteratee2,2))}var meanBy_default,init_meanBy=__esm({"../../node_modules/lodash-es/meanBy.js"(){init_baseIteratee();init_baseMean();__name(meanBy,"meanBy");meanBy_default=meanBy}});var merge,merge_default,init_merge=__esm({"../../node_modules/lodash-es/merge.js"(){init_baseMerge();init_createAssigner();merge=createAssigner_default(function(object2,source,srcIndex){baseMerge_default(object2,source,srcIndex)}),merge_default=merge}});var method,method_default,init_method=__esm({"../../node_modules/lodash-es/method.js"(){init_baseInvoke();init_baseRest();method=baseRest_default(function(path10,args){return function(object2){return baseInvoke_default(object2,path10,args)}}),method_default=method}});var methodOf,methodOf_default,init_methodOf=__esm({"../../node_modules/lodash-es/methodOf.js"(){init_baseInvoke();init_baseRest();methodOf=baseRest_default(function(object2,args){return function(path10){return baseInvoke_default(object2,path10,args)}}),methodOf_default=methodOf}});function min(array2){return array2&&array2.length?baseExtremum_default(array2,identity_default,baseLt_default):void 0}var min_default,init_min=__esm({"../../node_modules/lodash-es/min.js"(){init_baseExtremum();init_baseLt();init_identity();__name(min,"min");min_default=min}});function minBy(array2,iteratee2){return array2&&array2.length?baseExtremum_default(array2,baseIteratee_default(iteratee2,2),baseLt_default):void 0}var minBy_default,init_minBy=__esm({"../../node_modules/lodash-es/minBy.js"(){init_baseExtremum();init_baseIteratee();init_baseLt();__name(minBy,"minBy");minBy_default=minBy}});function mixin(object2,source,options){var props=keys_default(source),methodNames=baseFunctions_default(source,props),chain2=!(isObject_default(options)&&"chain"in options)||!!options.chain,isFunc=isFunction_default(object2);return arrayEach_default(methodNames,function(methodName){var func=source[methodName];object2[methodName]=func,isFunc&&(object2.prototype[methodName]=function(){var chainAll=this.__chain__;if(chain2||chainAll){var result2=object2(this.__wrapped__),actions=result2.__actions__=copyArray_default(this.__actions__);return actions.push({func,args:arguments,thisArg:object2}),result2.__chain__=chainAll,result2}return func.apply(object2,arrayPush_default([this.value()],arguments))})}),object2}var mixin_default,init_mixin=__esm({"../../node_modules/lodash-es/mixin.js"(){init_arrayEach();init_arrayPush();init_baseFunctions();init_copyArray();init_isFunction();init_isObject();init_keys();__name(mixin,"mixin");mixin_default=mixin}});var multiply,multiply_default,init_multiply=__esm({"../../node_modules/lodash-es/multiply.js"(){init_createMathOperation();multiply=createMathOperation_default(function(multiplier,multiplicand){return multiplier*multiplicand},1),multiply_default=multiply}});function negate(predicate){if(typeof predicate!="function")throw new TypeError(FUNC_ERROR_TEXT9);return function(){var args=arguments;switch(args.length){case 0:return!predicate.call(this);case 1:return!predicate.call(this,args[0]);case 2:return!predicate.call(this,args[0],args[1]);case 3:return!predicate.call(this,args[0],args[1],args[2])}return!predicate.apply(this,args)}}var FUNC_ERROR_TEXT9,negate_default,init_negate=__esm({"../../node_modules/lodash-es/negate.js"(){FUNC_ERROR_TEXT9="Expected a function";__name(negate,"negate");negate_default=negate}});function iteratorToArray(iterator2){for(var data,result2=[];!(data=iterator2.next()).done;)result2.push(data.value);return result2}var iteratorToArray_default,init_iteratorToArray=__esm({"../../node_modules/lodash-es/_iteratorToArray.js"(){__name(iteratorToArray,"iteratorToArray");iteratorToArray_default=iteratorToArray}});function toArray(value){if(!value)return[];if(isArrayLike_default(value))return isString_default(value)?stringToArray_default(value):copyArray_default(value);if(symIterator&&value[symIterator])return iteratorToArray_default(value[symIterator]());var tag=getTag_default(value),func=tag==mapTag9?mapToArray_default:tag==setTag9?setToArray_default:values_default;return func(value)}var mapTag9,setTag9,symIterator,toArray_default,init_toArray=__esm({"../../node_modules/lodash-es/toArray.js"(){init_Symbol();init_copyArray();init_getTag();init_isArrayLike();init_isString();init_iteratorToArray();init_mapToArray();init_setToArray();init_stringToArray();init_values();mapTag9="[object Map]",setTag9="[object Set]",symIterator=Symbol_default?Symbol_default.iterator:void 0;__name(toArray,"toArray");toArray_default=toArray}});function wrapperNext(){this.__values__===void 0&&(this.__values__=toArray_default(this.value()));var done=this.__index__>=this.__values__.length,value=done?void 0:this.__values__[this.__index__++];return{done,value}}var next_default,init_next=__esm({"../../node_modules/lodash-es/next.js"(){init_toArray();__name(wrapperNext,"wrapperNext");next_default=wrapperNext}});function baseNth(array2,n2){var length=array2.length;if(length)return n2+=n2<0?length:0,isIndex_default(n2,length)?array2[n2]:void 0}var baseNth_default,init_baseNth=__esm({"../../node_modules/lodash-es/_baseNth.js"(){init_isIndex();__name(baseNth,"baseNth");baseNth_default=baseNth}});function nth(array2,n2){return array2&&array2.length?baseNth_default(array2,toInteger_default(n2)):void 0}var nth_default,init_nth=__esm({"../../node_modules/lodash-es/nth.js"(){init_baseNth();init_toInteger();__name(nth,"nth");nth_default=nth}});function nthArg(n2){return n2=toInteger_default(n2),baseRest_default(function(args){return baseNth_default(args,n2)})}var nthArg_default,init_nthArg=__esm({"../../node_modules/lodash-es/nthArg.js"(){init_baseNth();init_baseRest();init_toInteger();__name(nthArg,"nthArg");nthArg_default=nthArg}});function baseUnset(object2,path10){path10=castPath_default(path10,object2);var index=-1,length=path10.length;if(!length)return!0;for(;++index<length;){var key=toKey_default(path10[index]);if(key==="__proto__"&&!hasOwnProperty23.call(object2,"__proto__")||(key==="constructor"||key==="prototype")&&index<length-1)return!1}var obj=parent_default(object2,path10);return obj==null||delete obj[toKey_default(last_default(path10))]}var objectProto27,hasOwnProperty23,baseUnset_default,init_baseUnset=__esm({"../../node_modules/lodash-es/_baseUnset.js"(){init_castPath();init_last();init_parent();init_toKey();objectProto27=Object.prototype,hasOwnProperty23=objectProto27.hasOwnProperty;__name(baseUnset,"baseUnset");baseUnset_default=baseUnset}});function customOmitClone(value){return isPlainObject_default(value)?void 0:value}var customOmitClone_default,init_customOmitClone=__esm({"../../node_modules/lodash-es/_customOmitClone.js"(){init_isPlainObject();__name(customOmitClone,"customOmitClone");customOmitClone_default=customOmitClone}});var CLONE_DEEP_FLAG8,CLONE_FLAT_FLAG2,CLONE_SYMBOLS_FLAG6,omit,omit_default,init_omit=__esm({"../../node_modules/lodash-es/omit.js"(){init_arrayMap();init_baseClone();init_baseUnset();init_castPath();init_copyObject();init_customOmitClone();init_flatRest();init_getAllKeysIn();CLONE_DEEP_FLAG8=1,CLONE_FLAT_FLAG2=2,CLONE_SYMBOLS_FLAG6=4,omit=flatRest_default(function(object2,paths2){var result2={};if(object2==null)return result2;var isDeep=!1;paths2=arrayMap_default(paths2,function(path10){return path10=castPath_default(path10,object2),isDeep||(isDeep=path10.length>1),path10}),copyObject_default(object2,getAllKeysIn_default(object2),result2),isDeep&&(result2=baseClone_default(result2,CLONE_DEEP_FLAG8|CLONE_FLAT_FLAG2|CLONE_SYMBOLS_FLAG6,customOmitClone_default));for(var length=paths2.length;length--;)baseUnset_default(result2,paths2[length]);return result2}),omit_default=omit}});function omitBy(object2,predicate){return pickBy_default(object2,negate_default(baseIteratee_default(predicate)))}var omitBy_default,init_omitBy=__esm({"../../node_modules/lodash-es/omitBy.js"(){init_baseIteratee();init_negate();init_pickBy();__name(omitBy,"omitBy");omitBy_default=omitBy}});function once(func){return before_default(2,func)}var once_default,init_once=__esm({"../../node_modules/lodash-es/once.js"(){init_before();__name(once,"once");once_default=once}});function baseSortBy(array2,comparer){var length=array2.length;for(array2.sort(comparer);length--;)array2[length]=array2[length].value;return array2}var baseSortBy_default,init_baseSortBy=__esm({"../../node_modules/lodash-es/_baseSortBy.js"(){__name(baseSortBy,"baseSortBy");baseSortBy_default=baseSortBy}});function compareAscending(value,other){if(value!==other){var valIsDefined=value!==void 0,valIsNull=value===null,valIsReflexive=value===value,valIsSymbol=isSymbol_default(value),othIsDefined=other!==void 0,othIsNull=other===null,othIsReflexive=other===other,othIsSymbol=isSymbol_default(other);if(!othIsNull&&!othIsSymbol&&!valIsSymbol&&value>other||valIsSymbol&&othIsDefined&&othIsReflexive&&!othIsNull&&!othIsSymbol||valIsNull&&othIsDefined&&othIsReflexive||!valIsDefined&&othIsReflexive||!valIsReflexive)return 1;if(!valIsNull&&!valIsSymbol&&!othIsSymbol&&value<other||othIsSymbol&&valIsDefined&&valIsReflexive&&!valIsNull&&!valIsSymbol||othIsNull&&valIsDefined&&valIsReflexive||!othIsDefined&&valIsReflexive||!othIsReflexive)return-1}return 0}var compareAscending_default,init_compareAscending=__esm({"../../node_modules/lodash-es/_compareAscending.js"(){init_isSymbol();__name(compareAscending,"compareAscending");compareAscending_default=compareAscending}});function compareMultiple(object2,other,orders){for(var index=-1,objCriteria=object2.criteria,othCriteria=other.criteria,length=objCriteria.length,ordersLength=orders.length;++index<length;){var result2=compareAscending_default(objCriteria[index],othCriteria[index]);if(result2){if(index>=ordersLength)return result2;var order=orders[index];return result2*(order=="desc"?-1:1)}}return object2.index-other.index}var compareMultiple_default,init_compareMultiple=__esm({"../../node_modules/lodash-es/_compareMultiple.js"(){init_compareAscending();__name(compareMultiple,"compareMultiple");compareMultiple_default=compareMultiple}});function baseOrderBy(collection,iteratees,orders){iteratees.length?iteratees=arrayMap_default(iteratees,function(iteratee2){return isArray_default(iteratee2)?function(value){return baseGet_default(value,iteratee2.length===1?iteratee2[0]:iteratee2)}:iteratee2}):iteratees=[identity_default];var index=-1;iteratees=arrayMap_default(iteratees,baseUnary_default(baseIteratee_default));var result2=baseMap_default(collection,function(value,key,collection2){var criteria=arrayMap_default(iteratees,function(iteratee2){return iteratee2(value)});return{criteria,index:++index,value}});return baseSortBy_default(result2,function(object2,other){return compareMultiple_default(object2,other,orders)})}var baseOrderBy_default,init_baseOrderBy=__esm({"../../node_modules/lodash-es/_baseOrderBy.js"(){init_arrayMap();init_baseGet();init_baseIteratee();init_baseMap();init_baseSortBy();init_baseUnary();init_compareMultiple();init_identity();init_isArray();__name(baseOrderBy,"baseOrderBy");baseOrderBy_default=baseOrderBy}});function orderBy(collection,iteratees,orders,guard){return collection==null?[]:(isArray_default(iteratees)||(iteratees=iteratees==null?[]:[iteratees]),orders=guard?void 0:orders,isArray_default(orders)||(orders=orders==null?[]:[orders]),baseOrderBy_default(collection,iteratees,orders))}var orderBy_default,init_orderBy=__esm({"../../node_modules/lodash-es/orderBy.js"(){init_baseOrderBy();init_isArray();__name(orderBy,"orderBy");orderBy_default=orderBy}});function createOver(arrayFunc){return flatRest_default(function(iteratees){return iteratees=arrayMap_default(iteratees,baseUnary_default(baseIteratee_default)),baseRest_default(function(args){var thisArg=this;return arrayFunc(iteratees,function(iteratee2){return apply_default(iteratee2,thisArg,args)})})})}var createOver_default,init_createOver=__esm({"../../node_modules/lodash-es/_createOver.js"(){init_apply();init_arrayMap();init_baseIteratee();init_baseRest();init_baseUnary();init_flatRest();__name(createOver,"createOver");createOver_default=createOver}});var over,over_default,init_over=__esm({"../../node_modules/lodash-es/over.js"(){init_arrayMap();init_createOver();over=createOver_default(arrayMap_default),over_default=over}});var castRest,castRest_default,init_castRest=__esm({"../../node_modules/lodash-es/_castRest.js"(){init_baseRest();castRest=baseRest_default,castRest_default=castRest}});var nativeMin9,overArgs,overArgs_default,init_overArgs=__esm({"../../node_modules/lodash-es/overArgs.js"(){init_apply();init_arrayMap();init_baseFlatten();init_baseIteratee();init_baseRest();init_baseUnary();init_castRest();init_isArray();nativeMin9=Math.min,overArgs=castRest_default(function(func,transforms){transforms=transforms.length==1&&isArray_default(transforms[0])?arrayMap_default(transforms[0],baseUnary_default(baseIteratee_default)):arrayMap_default(baseFlatten_default(transforms,1),baseUnary_default(baseIteratee_default));var funcsLength=transforms.length;return baseRest_default(function(args){for(var index=-1,length=nativeMin9(args.length,funcsLength);++index<length;)args[index]=transforms[index].call(this,args[index]);return apply_default(func,this,args)})}),overArgs_default=overArgs}});var overEvery,overEvery_default,init_overEvery=__esm({"../../node_modules/lodash-es/overEvery.js"(){init_arrayEvery();init_createOver();overEvery=createOver_default(arrayEvery_default),overEvery_default=overEvery}});var overSome,overSome_default,init_overSome=__esm({"../../node_modules/lodash-es/overSome.js"(){init_arraySome();init_createOver();overSome=createOver_default(arraySome_default),overSome_default=overSome}});function baseRepeat(string4,n2){var result2="";if(!string4||n2<1||n2>MAX_SAFE_INTEGER4)return result2;do n2%2&&(result2+=string4),n2=nativeFloor(n2/2),n2&&(string4+=string4);while(n2);return result2}var MAX_SAFE_INTEGER4,nativeFloor,baseRepeat_default,init_baseRepeat=__esm({"../../node_modules/lodash-es/_baseRepeat.js"(){MAX_SAFE_INTEGER4=9007199254740991,nativeFloor=Math.floor;__name(baseRepeat,"baseRepeat");baseRepeat_default=baseRepeat}});var asciiSize,asciiSize_default,init_asciiSize=__esm({"../../node_modules/lodash-es/_asciiSize.js"(){init_baseProperty();asciiSize=baseProperty_default("length"),asciiSize_default=asciiSize}});function unicodeSize(string4){for(var result2=reUnicode2.lastIndex=0;reUnicode2.test(string4);)++result2;return result2}var rsAstralRange4,rsComboMarksRange5,reComboHalfMarksRange5,rsComboSymbolsRange5,rsComboRange5,rsVarRange4,rsAstral2,rsCombo4,rsFitz3,rsModifier3,rsNonAstral3,rsRegional3,rsSurrPair3,rsZWJ4,reOptMod3,rsOptVar3,rsOptJoin3,rsSeq3,rsSymbol2,reUnicode2,unicodeSize_default,init_unicodeSize=__esm({"../../node_modules/lodash-es/_unicodeSize.js"(){rsAstralRange4="\\ud800-\\udfff",rsComboMarksRange5="\\u0300-\\u036f",reComboHalfMarksRange5="\\ufe20-\\ufe2f",rsComboSymbolsRange5="\\u20d0-\\u20ff",rsComboRange5=rsComboMarksRange5+reComboHalfMarksRange5+rsComboSymbolsRange5,rsVarRange4="\\ufe0e\\ufe0f",rsAstral2="["+rsAstralRange4+"]",rsCombo4="["+rsComboRange5+"]",rsFitz3="\\ud83c[\\udffb-\\udfff]",rsModifier3="(?:"+rsCombo4+"|"+rsFitz3+")",rsNonAstral3="[^"+rsAstralRange4+"]",rsRegional3="(?:\\ud83c[\\udde6-\\uddff]){2}",rsSurrPair3="[\\ud800-\\udbff][\\udc00-\\udfff]",rsZWJ4="\\u200d",reOptMod3=rsModifier3+"?",rsOptVar3="["+rsVarRange4+"]?",rsOptJoin3="(?:"+rsZWJ4+"(?:"+[rsNonAstral3,rsRegional3,rsSurrPair3].join("|")+")"+rsOptVar3+reOptMod3+")*",rsSeq3=rsOptVar3+reOptMod3+rsOptJoin3,rsSymbol2="(?:"+[rsNonAstral3+rsCombo4+"?",rsCombo4,rsRegional3,rsSurrPair3,rsAstral2].join("|")+")",reUnicode2=RegExp(rsFitz3+"(?="+rsFitz3+")|"+rsSymbol2+rsSeq3,"g");__name(unicodeSize,"unicodeSize");unicodeSize_default=unicodeSize}});function stringSize(string4){return hasUnicode_default(string4)?unicodeSize_default(string4):asciiSize_default(string4)}var stringSize_default,init_stringSize=__esm({"../../node_modules/lodash-es/_stringSize.js"(){init_asciiSize();init_hasUnicode();init_unicodeSize();__name(stringSize,"stringSize");stringSize_default=stringSize}});function createPadding(length,chars){chars=chars===void 0?" ":baseToString_default(chars);var charsLength=chars.length;if(charsLength<2)return charsLength?baseRepeat_default(chars,length):chars;var result2=baseRepeat_default(chars,nativeCeil2(length/stringSize_default(chars)));return hasUnicode_default(chars)?castSlice_default(stringToArray_default(result2),0,length).join(""):result2.slice(0,length)}var nativeCeil2,createPadding_default,init_createPadding=__esm({"../../node_modules/lodash-es/_createPadding.js"(){init_baseRepeat();init_baseToString();init_castSlice();init_hasUnicode();init_stringSize();init_stringToArray();nativeCeil2=Math.ceil;__name(createPadding,"createPadding");createPadding_default=createPadding}});function pad(string4,length,chars){string4=toString_default(string4),length=toInteger_default(length);var strLength=length?stringSize_default(string4):0;if(!length||strLength>=length)return string4;var mid=(length-strLength)/2;return createPadding_default(nativeFloor2(mid),chars)+string4+createPadding_default(nativeCeil3(mid),chars)}var nativeCeil3,nativeFloor2,pad_default,init_pad=__esm({"../../node_modules/lodash-es/pad.js"(){init_createPadding();init_stringSize();init_toInteger();init_toString();nativeCeil3=Math.ceil,nativeFloor2=Math.floor;__name(pad,"pad");pad_default=pad}});function padEnd(string4,length,chars){string4=toString_default(string4),length=toInteger_default(length);var strLength=length?stringSize_default(string4):0;return length&&strLength<length?string4+createPadding_default(length-strLength,chars):string4}var padEnd_default,init_padEnd=__esm({"../../node_modules/lodash-es/padEnd.js"(){init_createPadding();init_stringSize();init_toInteger();init_toString();__name(padEnd,"padEnd");padEnd_default=padEnd}});function padStart(string4,length,chars){string4=toString_default(string4),length=toInteger_default(length);var strLength=length?stringSize_default(string4):0;return length&&strLength<length?createPadding_default(length-strLength,chars)+string4:string4}var padStart_default,init_padStart=__esm({"../../node_modules/lodash-es/padStart.js"(){init_createPadding();init_stringSize();init_toInteger();init_toString();__name(padStart,"padStart");padStart_default=padStart}});function parseInt2(string4,radix,guard){return guard||radix==null?radix=0:radix&&(radix=+radix),nativeParseInt(toString_default(string4).replace(reTrimStart2,""),radix||0)}var reTrimStart2,nativeParseInt,parseInt_default,init_parseInt=__esm({"../../node_modules/lodash-es/parseInt.js"(){init_root();init_toString();reTrimStart2=/^\s+/,nativeParseInt=root_default.parseInt;__name(parseInt2,"parseInt");parseInt_default=parseInt2}});var WRAP_PARTIAL_FLAG7,partial,partial_default,init_partial=__esm({"../../node_modules/lodash-es/partial.js"(){init_baseRest();init_createWrap();init_getHolder();init_replaceHolders();WRAP_PARTIAL_FLAG7=32,partial=baseRest_default(function(func,partials){var holders=replaceHolders_default(partials,getHolder_default(partial));return createWrap_default(func,WRAP_PARTIAL_FLAG7,void 0,partials,holders)});partial.placeholder={};partial_default=partial}});var WRAP_PARTIAL_RIGHT_FLAG4,partialRight,partialRight_default,init_partialRight=__esm({"../../node_modules/lodash-es/partialRight.js"(){init_baseRest();init_createWrap();init_getHolder();init_replaceHolders();WRAP_PARTIAL_RIGHT_FLAG4=64,partialRight=baseRest_default(function(func,partials){var holders=replaceHolders_default(partials,getHolder_default(partialRight));return createWrap_default(func,WRAP_PARTIAL_RIGHT_FLAG4,void 0,partials,holders)});partialRight.placeholder={};partialRight_default=partialRight}});var partition,partition_default,init_partition=__esm({"../../node_modules/lodash-es/partition.js"(){init_createAggregator();partition=createAggregator_default(function(result2,value,key){result2[key?0:1].push(value)},function(){return[[],[]]}),partition_default=partition}});function basePick(object2,paths2){return basePickBy_default(object2,paths2,function(value,path10){return hasIn_default(object2,path10)})}var basePick_default,init_basePick=__esm({"../../node_modules/lodash-es/_basePick.js"(){init_basePickBy();init_hasIn();__name(basePick,"basePick");basePick_default=basePick}});var pick,pick_default,init_pick=__esm({"../../node_modules/lodash-es/pick.js"(){init_basePick();init_flatRest();pick=flatRest_default(function(object2,paths2){return object2==null?{}:basePick_default(object2,paths2)}),pick_default=pick}});function wrapperPlant(value){for(var result2,parent2=this;parent2 instanceof baseLodash_default;){var clone5=wrapperClone_default(parent2);clone5.__index__=0,clone5.__values__=void 0,result2?previous.__wrapped__=clone5:result2=clone5;var previous=clone5;parent2=parent2.__wrapped__}return previous.__wrapped__=value,result2}var plant_default,init_plant=__esm({"../../node_modules/lodash-es/plant.js"(){init_baseLodash();init_wrapperClone();__name(wrapperPlant,"wrapperPlant");plant_default=wrapperPlant}});function propertyOf(object2){return function(path10){return object2==null?void 0:baseGet_default(object2,path10)}}var propertyOf_default,init_propertyOf=__esm({"../../node_modules/lodash-es/propertyOf.js"(){init_baseGet();__name(propertyOf,"propertyOf");propertyOf_default=propertyOf}});function baseIndexOfWith(array2,value,fromIndex,comparator){for(var index=fromIndex-1,length=array2.length;++index<length;)if(comparator(array2[index],value))return index;return-1}var baseIndexOfWith_default,init_baseIndexOfWith=__esm({"../../node_modules/lodash-es/_baseIndexOfWith.js"(){__name(baseIndexOfWith,"baseIndexOfWith");baseIndexOfWith_default=baseIndexOfWith}});function basePullAll(array2,values2,iteratee2,comparator){var indexOf2=comparator?baseIndexOfWith_default:baseIndexOf_default,index=-1,length=values2.length,seen=array2;for(array2===values2&&(values2=copyArray_default(values2)),iteratee2&&(seen=arrayMap_default(array2,baseUnary_default(iteratee2)));++index<length;)for(var fromIndex=0,value=values2[index],computed=iteratee2?iteratee2(value):value;(fromIndex=indexOf2(seen,computed,fromIndex,comparator))>-1;)seen!==array2&&splice2.call(seen,fromIndex,1),splice2.call(array2,fromIndex,1);return array2}var arrayProto3,splice2,basePullAll_default,init_basePullAll=__esm({"../../node_modules/lodash-es/_basePullAll.js"(){init_arrayMap();init_baseIndexOf();init_baseIndexOfWith();init_baseUnary();init_copyArray();arrayProto3=Array.prototype,splice2=arrayProto3.splice;__name(basePullAll,"basePullAll");basePullAll_default=basePullAll}});function pullAll(array2,values2){return array2&&array2.length&&values2&&values2.length?basePullAll_default(array2,values2):array2}var pullAll_default,init_pullAll=__esm({"../../node_modules/lodash-es/pullAll.js"(){init_basePullAll();__name(pullAll,"pullAll");pullAll_default=pullAll}});var pull,pull_default,init_pull=__esm({"../../node_modules/lodash-es/pull.js"(){init_baseRest();init_pullAll();pull=baseRest_default(pullAll_default),pull_default=pull}});function pullAllBy(array2,values2,iteratee2){return array2&&array2.length&&values2&&values2.length?basePullAll_default(array2,values2,baseIteratee_default(iteratee2,2)):array2}var pullAllBy_default,init_pullAllBy=__esm({"../../node_modules/lodash-es/pullAllBy.js"(){init_baseIteratee();init_basePullAll();__name(pullAllBy,"pullAllBy");pullAllBy_default=pullAllBy}});function pullAllWith(array2,values2,comparator){return array2&&array2.length&&values2&&values2.length?basePullAll_default(array2,values2,void 0,comparator):array2}var pullAllWith_default,init_pullAllWith=__esm({"../../node_modules/lodash-es/pullAllWith.js"(){init_basePullAll();__name(pullAllWith,"pullAllWith");pullAllWith_default=pullAllWith}});function basePullAt(array2,indexes){for(var length=array2?indexes.length:0,lastIndex=length-1;length--;){var index=indexes[length];if(length==lastIndex||index!==previous){var previous=index;isIndex_default(index)?splice3.call(array2,index,1):baseUnset_default(array2,index)}}return array2}var arrayProto4,splice3,basePullAt_default,init_basePullAt=__esm({"../../node_modules/lodash-es/_basePullAt.js"(){init_baseUnset();init_isIndex();arrayProto4=Array.prototype,splice3=arrayProto4.splice;__name(basePullAt,"basePullAt");basePullAt_default=basePullAt}});var pullAt,pullAt_default,init_pullAt=__esm({"../../node_modules/lodash-es/pullAt.js"(){init_arrayMap();init_baseAt();init_basePullAt();init_compareAscending();init_flatRest();init_isIndex();pullAt=flatRest_default(function(array2,indexes){var length=array2==null?0:array2.length,result2=baseAt_default(array2,indexes);return basePullAt_default(array2,arrayMap_default(indexes,function(index){return isIndex_default(index,length)?+index:index}).sort(compareAscending_default)),result2}),pullAt_default=pullAt}});function baseRandom(lower2,upper){return lower2+nativeFloor3(nativeRandom()*(upper-lower2+1))}var nativeFloor3,nativeRandom,baseRandom_default,init_baseRandom=__esm({"../../node_modules/lodash-es/_baseRandom.js"(){nativeFloor3=Math.floor,nativeRandom=Math.random;__name(baseRandom,"baseRandom");baseRandom_default=baseRandom}});function random(lower2,upper,floating){if(floating&&typeof floating!="boolean"&&isIterateeCall_default(lower2,upper,floating)&&(upper=floating=void 0),floating===void 0&&(typeof upper=="boolean"?(floating=upper,upper=void 0):typeof lower2=="boolean"&&(floating=lower2,lower2=void 0)),lower2===void 0&&upper===void 0?(lower2=0,upper=1):(lower2=toFinite_default(lower2),upper===void 0?(upper=lower2,lower2=0):upper=toFinite_default(upper)),lower2>upper){var temp=lower2;lower2=upper,upper=temp}if(floating||lower2%1||upper%1){var rand=nativeRandom2();return nativeMin10(lower2+rand*(upper-lower2+freeParseFloat("1e-"+((rand+"").length-1))),upper)}return baseRandom_default(lower2,upper)}var freeParseFloat,nativeMin10,nativeRandom2,random_default,init_random=__esm({"../../node_modules/lodash-es/random.js"(){init_baseRandom();init_isIterateeCall();init_toFinite();freeParseFloat=parseFloat,nativeMin10=Math.min,nativeRandom2=Math.random;__name(random,"random");random_default=random}});function baseRange(start,end,step,fromRight){for(var index=-1,length=nativeMax13(nativeCeil4((end-start)/(step||1)),0),result2=Array(length);length--;)result2[fromRight?length:++index]=start,start+=step;return result2}var nativeCeil4,nativeMax13,baseRange_default,init_baseRange=__esm({"../../node_modules/lodash-es/_baseRange.js"(){nativeCeil4=Math.ceil,nativeMax13=Math.max;__name(baseRange,"baseRange");baseRange_default=baseRange}});function createRange(fromRight){return function(start,end,step){return step&&typeof step!="number"&&isIterateeCall_default(start,end,step)&&(end=step=void 0),start=toFinite_default(start),end===void 0?(end=start,start=0):end=toFinite_default(end),step=step===void 0?start<end?1:-1:toFinite_default(step),baseRange_default(start,end,step,fromRight)}}var createRange_default,init_createRange=__esm({"../../node_modules/lodash-es/_createRange.js"(){init_baseRange();init_isIterateeCall();init_toFinite();__name(createRange,"createRange");createRange_default=createRange}});var range,range_default,init_range=__esm({"../../node_modules/lodash-es/range.js"(){init_createRange();range=createRange_default(),range_default=range}});var rangeRight,rangeRight_default,init_rangeRight=__esm({"../../node_modules/lodash-es/rangeRight.js"(){init_createRange();rangeRight=createRange_default(!0),rangeRight_default=rangeRight}});var WRAP_REARG_FLAG4,rearg,rearg_default,init_rearg=__esm({"../../node_modules/lodash-es/rearg.js"(){init_createWrap();init_flatRest();WRAP_REARG_FLAG4=256,rearg=flatRest_default(function(func,indexes){return createWrap_default(func,WRAP_REARG_FLAG4,void 0,void 0,void 0,indexes)}),rearg_default=rearg}});function baseReduce(collection,iteratee2,accumulator,initAccum,eachFunc){return eachFunc(collection,function(value,index,collection2){accumulator=initAccum?(initAccum=!1,value):iteratee2(accumulator,value,index,collection2)}),accumulator}var baseReduce_default,init_baseReduce=__esm({"../../node_modules/lodash-es/_baseReduce.js"(){__name(baseReduce,"baseReduce");baseReduce_default=baseReduce}});function reduce(collection,iteratee2,accumulator){var func=isArray_default(collection)?arrayReduce_default:baseReduce_default,initAccum=arguments.length<3;return func(collection,baseIteratee_default(iteratee2,4),accumulator,initAccum,baseEach_default)}var reduce_default,init_reduce=__esm({"../../node_modules/lodash-es/reduce.js"(){init_arrayReduce();init_baseEach();init_baseIteratee();init_baseReduce();init_isArray();__name(reduce,"reduce");reduce_default=reduce}});function arrayReduceRight(array2,iteratee2,accumulator,initAccum){var length=array2==null?0:array2.length;for(initAccum&&length&&(accumulator=array2[--length]);length--;)accumulator=iteratee2(accumulator,array2[length],length,array2);return accumulator}var arrayReduceRight_default,init_arrayReduceRight=__esm({"../../node_modules/lodash-es/_arrayReduceRight.js"(){__name(arrayReduceRight,"arrayReduceRight");arrayReduceRight_default=arrayReduceRight}});function reduceRight(collection,iteratee2,accumulator){var func=isArray_default(collection)?arrayReduceRight_default:baseReduce_default,initAccum=arguments.length<3;return func(collection,baseIteratee_default(iteratee2,4),accumulator,initAccum,baseEachRight_default)}var reduceRight_default,init_reduceRight=__esm({"../../node_modules/lodash-es/reduceRight.js"(){init_arrayReduceRight();init_baseEachRight();init_baseIteratee();init_baseReduce();init_isArray();__name(reduceRight,"reduceRight");reduceRight_default=reduceRight}});function reject(collection,predicate){var func=isArray_default(collection)?arrayFilter_default:baseFilter_default;return func(collection,negate_default(baseIteratee_default(predicate,3)))}var reject_default,init_reject=__esm({"../../node_modules/lodash-es/reject.js"(){init_arrayFilter();init_baseFilter();init_baseIteratee();init_isArray();init_negate();__name(reject,"reject");reject_default=reject}});function remove(array2,predicate){var result2=[];if(!(array2&&array2.length))return result2;var index=-1,indexes=[],length=array2.length;for(predicate=baseIteratee_default(predicate,3);++index<length;){var value=array2[index];predicate(value,index,array2)&&(result2.push(value),indexes.push(index))}return basePullAt_default(array2,indexes),result2}var remove_default,init_remove=__esm({"../../node_modules/lodash-es/remove.js"(){init_baseIteratee();init_basePullAt();__name(remove,"remove");remove_default=remove}});function repeat(string4,n2,guard){return(guard?isIterateeCall_default(string4,n2,guard):n2===void 0)?n2=1:n2=toInteger_default(n2),baseRepeat_default(toString_default(string4),n2)}var repeat_default,init_repeat=__esm({"../../node_modules/lodash-es/repeat.js"(){init_baseRepeat();init_isIterateeCall();init_toInteger();init_toString();__name(repeat,"repeat");repeat_default=repeat}});function replace(){var args=arguments,string4=toString_default(args[0]);return args.length<3?string4:string4.replace(args[1],args[2])}var replace_default,init_replace=__esm({"../../node_modules/lodash-es/replace.js"(){init_toString();__name(replace,"replace");replace_default=replace}});function rest(func,start){if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT10);return start=start===void 0?start:toInteger_default(start),baseRest_default(func,start)}var FUNC_ERROR_TEXT10,rest_default,init_rest=__esm({"../../node_modules/lodash-es/rest.js"(){init_baseRest();init_toInteger();FUNC_ERROR_TEXT10="Expected a function";__name(rest,"rest");rest_default=rest}});function result(object2,path10,defaultValue){path10=castPath_default(path10,object2);var index=-1,length=path10.length;for(length||(length=1,object2=void 0);++index<length;){var value=object2?.[toKey_default(path10[index])];value===void 0&&(index=length,value=defaultValue),object2=isFunction_default(value)?value.call(object2):value}return object2}var result_default,init_result=__esm({"../../node_modules/lodash-es/result.js"(){init_castPath();init_isFunction();init_toKey();__name(result,"result");result_default=result}});function reverse(array2){return array2==null?array2:nativeReverse.call(array2)}var arrayProto5,nativeReverse,reverse_default,init_reverse=__esm({"../../node_modules/lodash-es/reverse.js"(){arrayProto5=Array.prototype,nativeReverse=arrayProto5.reverse;__name(reverse,"reverse");reverse_default=reverse}});var round,round_default,init_round=__esm({"../../node_modules/lodash-es/round.js"(){init_createRound();round=createRound_default("round"),round_default=round}});function arraySample(array2){var length=array2.length;return length?array2[baseRandom_default(0,length-1)]:void 0}var arraySample_default,init_arraySample=__esm({"../../node_modules/lodash-es/_arraySample.js"(){init_baseRandom();__name(arraySample,"arraySample");arraySample_default=arraySample}});function baseSample(collection){return arraySample_default(values_default(collection))}var baseSample_default,init_baseSample=__esm({"../../node_modules/lodash-es/_baseSample.js"(){init_arraySample();init_values();__name(baseSample,"baseSample");baseSample_default=baseSample}});function sample(collection){var func=isArray_default(collection)?arraySample_default:baseSample_default;return func(collection)}var sample_default,init_sample=__esm({"../../node_modules/lodash-es/sample.js"(){init_arraySample();init_baseSample();init_isArray();__name(sample,"sample");sample_default=sample}});function shuffleSelf(array2,size2){var index=-1,length=array2.length,lastIndex=length-1;for(size2=size2===void 0?length:size2;++index<size2;){var rand=baseRandom_default(index,lastIndex),value=array2[rand];array2[rand]=array2[index],array2[index]=value}return array2.length=size2,array2}var shuffleSelf_default,init_shuffleSelf=__esm({"../../node_modules/lodash-es/_shuffleSelf.js"(){init_baseRandom();__name(shuffleSelf,"shuffleSelf");shuffleSelf_default=shuffleSelf}});function arraySampleSize(array2,n2){return shuffleSelf_default(copyArray_default(array2),baseClamp_default(n2,0,array2.length))}var arraySampleSize_default,init_arraySampleSize=__esm({"../../node_modules/lodash-es/_arraySampleSize.js"(){init_baseClamp();init_copyArray();init_shuffleSelf();__name(arraySampleSize,"arraySampleSize");arraySampleSize_default=arraySampleSize}});function baseSampleSize(collection,n2){var array2=values_default(collection);return shuffleSelf_default(array2,baseClamp_default(n2,0,array2.length))}var baseSampleSize_default,init_baseSampleSize=__esm({"../../node_modules/lodash-es/_baseSampleSize.js"(){init_baseClamp();init_shuffleSelf();init_values();__name(baseSampleSize,"baseSampleSize");baseSampleSize_default=baseSampleSize}});function sampleSize(collection,n2,guard){(guard?isIterateeCall_default(collection,n2,guard):n2===void 0)?n2=1:n2=toInteger_default(n2);var func=isArray_default(collection)?arraySampleSize_default:baseSampleSize_default;return func(collection,n2)}var sampleSize_default,init_sampleSize=__esm({"../../node_modules/lodash-es/sampleSize.js"(){init_arraySampleSize();init_baseSampleSize();init_isArray();init_isIterateeCall();init_toInteger();__name(sampleSize,"sampleSize");sampleSize_default=sampleSize}});function set(object2,path10,value){return object2==null?object2:baseSet_default(object2,path10,value)}var set_default,init_set=__esm({"../../node_modules/lodash-es/set.js"(){init_baseSet();__name(set,"set");set_default=set}});function setWith(object2,path10,value,customizer){return customizer=typeof customizer=="function"?customizer:void 0,object2==null?object2:baseSet_default(object2,path10,value,customizer)}var setWith_default,init_setWith=__esm({"../../node_modules/lodash-es/setWith.js"(){init_baseSet();__name(setWith,"setWith");setWith_default=setWith}});function arrayShuffle(array2){return shuffleSelf_default(copyArray_default(array2))}var arrayShuffle_default,init_arrayShuffle=__esm({"../../node_modules/lodash-es/_arrayShuffle.js"(){init_copyArray();init_shuffleSelf();__name(arrayShuffle,"arrayShuffle");arrayShuffle_default=arrayShuffle}});function baseShuffle(collection){return shuffleSelf_default(values_default(collection))}var baseShuffle_default,init_baseShuffle=__esm({"../../node_modules/lodash-es/_baseShuffle.js"(){init_shuffleSelf();init_values();__name(baseShuffle,"baseShuffle");baseShuffle_default=baseShuffle}});function shuffle(collection){var func=isArray_default(collection)?arrayShuffle_default:baseShuffle_default;return func(collection)}var shuffle_default,init_shuffle=__esm({"../../node_modules/lodash-es/shuffle.js"(){init_arrayShuffle();init_baseShuffle();init_isArray();__name(shuffle,"shuffle");shuffle_default=shuffle}});function size(collection){if(collection==null)return 0;if(isArrayLike_default(collection))return isString_default(collection)?stringSize_default(collection):collection.length;var tag=getTag_default(collection);return tag==mapTag10||tag==setTag10?collection.size:baseKeys_default(collection).length}var mapTag10,setTag10,size_default,init_size=__esm({"../../node_modules/lodash-es/size.js"(){init_baseKeys();init_getTag();init_isArrayLike();init_isString();init_stringSize();mapTag10="[object Map]",setTag10="[object Set]";__name(size,"size");size_default=size}});function slice(array2,start,end){var length=array2==null?0:array2.length;return length?(end&&typeof end!="number"&&isIterateeCall_default(array2,start,end)?(start=0,end=length):(start=start==null?0:toInteger_default(start),end=end===void 0?length:toInteger_default(end)),baseSlice_default(array2,start,end)):[]}var slice_default,init_slice=__esm({"../../node_modules/lodash-es/slice.js"(){init_baseSlice();init_isIterateeCall();init_toInteger();__name(slice,"slice");slice_default=slice}});var snakeCase,snakeCase_default,init_snakeCase=__esm({"../../node_modules/lodash-es/snakeCase.js"(){init_createCompounder();snakeCase=createCompounder_default(function(result2,word,index){return result2+(index?"_":"")+word.toLowerCase()}),snakeCase_default=snakeCase}});function baseSome(collection,predicate){var result2;return baseEach_default(collection,function(value,index,collection2){return result2=predicate(value,index,collection2),!result2}),!!result2}var baseSome_default,init_baseSome=__esm({"../../node_modules/lodash-es/_baseSome.js"(){init_baseEach();__name(baseSome,"baseSome");baseSome_default=baseSome}});function some(collection,predicate,guard){var func=isArray_default(collection)?arraySome_default:baseSome_default;return guard&&isIterateeCall_default(collection,predicate,guard)&&(predicate=void 0),func(collection,baseIteratee_default(predicate,3))}var some_default,init_some=__esm({"../../node_modules/lodash-es/some.js"(){init_arraySome();init_baseIteratee();init_baseSome();init_isArray();init_isIterateeCall();__name(some,"some");some_default=some}});var sortBy,sortBy_default,init_sortBy=__esm({"../../node_modules/lodash-es/sortBy.js"(){init_baseFlatten();init_baseOrderBy();init_baseRest();init_isIterateeCall();sortBy=baseRest_default(function(collection,iteratees){if(collection==null)return[];var length=iteratees.length;return length>1&&isIterateeCall_default(collection,iteratees[0],iteratees[1])?iteratees=[]:length>2&&isIterateeCall_default(iteratees[0],iteratees[1],iteratees[2])&&(iteratees=[iteratees[0]]),baseOrderBy_default(collection,baseFlatten_default(iteratees,1),[])}),sortBy_default=sortBy}});function baseSortedIndexBy(array2,value,iteratee2,retHighest){var low=0,high=array2==null?0:array2.length;if(high===0)return 0;value=iteratee2(value);for(var valIsNaN=value!==value,valIsNull=value===null,valIsSymbol=isSymbol_default(value),valIsUndefined=value===void 0;low<high;){var mid=nativeFloor4((low+high)/2),computed=iteratee2(array2[mid]),othIsDefined=computed!==void 0,othIsNull=computed===null,othIsReflexive=computed===computed,othIsSymbol=isSymbol_default(computed);if(valIsNaN)var setLow=retHighest||othIsReflexive;else valIsUndefined?setLow=othIsReflexive&&(retHighest||othIsDefined):valIsNull?setLow=othIsReflexive&&othIsDefined&&(retHighest||!othIsNull):valIsSymbol?setLow=othIsReflexive&&othIsDefined&&!othIsNull&&(retHighest||!othIsSymbol):othIsNull||othIsSymbol?setLow=!1:setLow=retHighest?computed<=value:computed<value;setLow?low=mid+1:high=mid}return nativeMin11(high,MAX_ARRAY_INDEX)}var MAX_ARRAY_LENGTH3,MAX_ARRAY_INDEX,nativeFloor4,nativeMin11,baseSortedIndexBy_default,init_baseSortedIndexBy=__esm({"../../node_modules/lodash-es/_baseSortedIndexBy.js"(){init_isSymbol();MAX_ARRAY_LENGTH3=4294967295,MAX_ARRAY_INDEX=MAX_ARRAY_LENGTH3-1,nativeFloor4=Math.floor,nativeMin11=Math.min;__name(baseSortedIndexBy,"baseSortedIndexBy");baseSortedIndexBy_default=baseSortedIndexBy}});function baseSortedIndex(array2,value,retHighest){var low=0,high=array2==null?low:array2.length;if(typeof value=="number"&&value===value&&high<=HALF_MAX_ARRAY_LENGTH){for(;low<high;){var mid=low+high>>>1,computed=array2[mid];computed!==null&&!isSymbol_default(computed)&&(retHighest?computed<=value:computed<value)?low=mid+1:high=mid}return high}return baseSortedIndexBy_default(array2,value,identity_default,retHighest)}var MAX_ARRAY_LENGTH4,HALF_MAX_ARRAY_LENGTH,baseSortedIndex_default,init_baseSortedIndex=__esm({"../../node_modules/lodash-es/_baseSortedIndex.js"(){init_baseSortedIndexBy();init_identity();init_isSymbol();MAX_ARRAY_LENGTH4=4294967295,HALF_MAX_ARRAY_LENGTH=MAX_ARRAY_LENGTH4>>>1;__name(baseSortedIndex,"baseSortedIndex");baseSortedIndex_default=baseSortedIndex}});function sortedIndex(array2,value){return baseSortedIndex_default(array2,value)}var sortedIndex_default,init_sortedIndex=__esm({"../../node_modules/lodash-es/sortedIndex.js"(){init_baseSortedIndex();__name(sortedIndex,"sortedIndex");sortedIndex_default=sortedIndex}});function sortedIndexBy(array2,value,iteratee2){return baseSortedIndexBy_default(array2,value,baseIteratee_default(iteratee2,2))}var sortedIndexBy_default,init_sortedIndexBy=__esm({"../../node_modules/lodash-es/sortedIndexBy.js"(){init_baseIteratee();init_baseSortedIndexBy();__name(sortedIndexBy,"sortedIndexBy");sortedIndexBy_default=sortedIndexBy}});function sortedIndexOf(array2,value){var length=array2==null?0:array2.length;if(length){var index=baseSortedIndex_default(array2,value);if(index<length&&eq_default(array2[index],value))return index}return-1}var sortedIndexOf_default,init_sortedIndexOf=__esm({"../../node_modules/lodash-es/sortedIndexOf.js"(){init_baseSortedIndex();init_eq();__name(sortedIndexOf,"sortedIndexOf");sortedIndexOf_default=sortedIndexOf}});function sortedLastIndex(array2,value){return baseSortedIndex_default(array2,value,!0)}var sortedLastIndex_default,init_sortedLastIndex=__esm({"../../node_modules/lodash-es/sortedLastIndex.js"(){init_baseSortedIndex();__name(sortedLastIndex,"sortedLastIndex");sortedLastIndex_default=sortedLastIndex}});function sortedLastIndexBy(array2,value,iteratee2){return baseSortedIndexBy_default(array2,value,baseIteratee_default(iteratee2,2),!0)}var sortedLastIndexBy_default,init_sortedLastIndexBy=__esm({"../../node_modules/lodash-es/sortedLastIndexBy.js"(){init_baseIteratee();init_baseSortedIndexBy();__name(sortedLastIndexBy,"sortedLastIndexBy");sortedLastIndexBy_default=sortedLastIndexBy}});function sortedLastIndexOf(array2,value){var length=array2==null?0:array2.length;if(length){var index=baseSortedIndex_default(array2,value,!0)-1;if(eq_default(array2[index],value))return index}return-1}var sortedLastIndexOf_default,init_sortedLastIndexOf=__esm({"../../node_modules/lodash-es/sortedLastIndexOf.js"(){init_baseSortedIndex();init_eq();__name(sortedLastIndexOf,"sortedLastIndexOf");sortedLastIndexOf_default=sortedLastIndexOf}});function baseSortedUniq(array2,iteratee2){for(var index=-1,length=array2.length,resIndex=0,result2=[];++index<length;){var value=array2[index],computed=iteratee2?iteratee2(value):value;if(!index||!eq_default(computed,seen)){var seen=computed;result2[resIndex++]=value===0?0:value}}return result2}var baseSortedUniq_default,init_baseSortedUniq=__esm({"../../node_modules/lodash-es/_baseSortedUniq.js"(){init_eq();__name(baseSortedUniq,"baseSortedUniq");baseSortedUniq_default=baseSortedUniq}});function sortedUniq(array2){return array2&&array2.length?baseSortedUniq_default(array2):[]}var sortedUniq_default,init_sortedUniq=__esm({"../../node_modules/lodash-es/sortedUniq.js"(){init_baseSortedUniq();__name(sortedUniq,"sortedUniq");sortedUniq_default=sortedUniq}});function sortedUniqBy(array2,iteratee2){return array2&&array2.length?baseSortedUniq_default(array2,baseIteratee_default(iteratee2,2)):[]}var sortedUniqBy_default,init_sortedUniqBy=__esm({"../../node_modules/lodash-es/sortedUniqBy.js"(){init_baseIteratee();init_baseSortedUniq();__name(sortedUniqBy,"sortedUniqBy");sortedUniqBy_default=sortedUniqBy}});function split(string4,separator,limit){return limit&&typeof limit!="number"&&isIterateeCall_default(string4,separator,limit)&&(separator=limit=void 0),limit=limit===void 0?MAX_ARRAY_LENGTH5:limit>>>0,limit?(string4=toString_default(string4),string4&&(typeof separator=="string"||separator!=null&&!isRegExp_default(separator))&&(separator=baseToString_default(separator),!separator&&hasUnicode_default(string4))?castSlice_default(stringToArray_default(string4),0,limit):string4.split(separator,limit)):[]}var MAX_ARRAY_LENGTH5,split_default,init_split=__esm({"../../node_modules/lodash-es/split.js"(){init_baseToString();init_castSlice();init_hasUnicode();init_isIterateeCall();init_isRegExp();init_stringToArray();init_toString();MAX_ARRAY_LENGTH5=4294967295;__name(split,"split");split_default=split}});function spread(func,start){if(typeof func!="function")throw new TypeError(FUNC_ERROR_TEXT11);return start=start==null?0:nativeMax14(toInteger_default(start),0),baseRest_default(function(args){var array2=args[start],otherArgs=castSlice_default(args,0,start);return array2&&arrayPush_default(otherArgs,array2),apply_default(func,this,otherArgs)})}var FUNC_ERROR_TEXT11,nativeMax14,spread_default,init_spread=__esm({"../../node_modules/lodash-es/spread.js"(){init_apply();init_arrayPush();init_baseRest();init_castSlice();init_toInteger();FUNC_ERROR_TEXT11="Expected a function",nativeMax14=Math.max;__name(spread,"spread");spread_default=spread}});var startCase,startCase_default,init_startCase=__esm({"../../node_modules/lodash-es/startCase.js"(){init_createCompounder();init_upperFirst();startCase=createCompounder_default(function(result2,word,index){return result2+(index?" ":"")+upperFirst_default(word)}),startCase_default=startCase}});function startsWith(string4,target,position){return string4=toString_default(string4),position=position==null?0:baseClamp_default(toInteger_default(position),0,string4.length),target=baseToString_default(target),string4.slice(position,position+target.length)==target}var startsWith_default,init_startsWith=__esm({"../../node_modules/lodash-es/startsWith.js"(){init_baseClamp();init_baseToString();init_toInteger();init_toString();__name(startsWith,"startsWith");startsWith_default=startsWith}});function stubObject(){return{}}var stubObject_default,init_stubObject=__esm({"../../node_modules/lodash-es/stubObject.js"(){__name(stubObject,"stubObject");stubObject_default=stubObject}});function stubString(){return""}var stubString_default,init_stubString=__esm({"../../node_modules/lodash-es/stubString.js"(){__name(stubString,"stubString");stubString_default=stubString}});function stubTrue(){return!0}var stubTrue_default,init_stubTrue=__esm({"../../node_modules/lodash-es/stubTrue.js"(){__name(stubTrue,"stubTrue");stubTrue_default=stubTrue}});var subtract,subtract_default,init_subtract=__esm({"../../node_modules/lodash-es/subtract.js"(){init_createMathOperation();subtract=createMathOperation_default(function(minuend,subtrahend){return minuend-subtrahend},0),subtract_default=subtract}});function sum(array2){return array2&&array2.length?baseSum_default(array2,identity_default):0}var sum_default,init_sum=__esm({"../../node_modules/lodash-es/sum.js"(){init_baseSum();init_identity();__name(sum,"sum");sum_default=sum}});function tail(array2){var length=array2==null?0:array2.length;return length?baseSlice_default(array2,1,length):[]}var tail_default,init_tail=__esm({"../../node_modules/lodash-es/tail.js"(){init_baseSlice();__name(tail,"tail");tail_default=tail}});function take(array2,n2,guard){return array2&&array2.length?(n2=guard||n2===void 0?1:toInteger_default(n2),baseSlice_default(array2,0,n2<0?0:n2)):[]}var take_default,init_take=__esm({"../../node_modules/lodash-es/take.js"(){init_baseSlice();init_toInteger();__name(take,"take");take_default=take}});function takeRight(array2,n2,guard){var length=array2==null?0:array2.length;return length?(n2=guard||n2===void 0?1:toInteger_default(n2),n2=length-n2,baseSlice_default(array2,n2<0?0:n2,length)):[]}var takeRight_default,init_takeRight=__esm({"../../node_modules/lodash-es/takeRight.js"(){init_baseSlice();init_toInteger();__name(takeRight,"takeRight");takeRight_default=takeRight}});function takeRightWhile(array2,predicate){return array2&&array2.length?baseWhile_default(array2,baseIteratee_default(predicate,3),!1,!0):[]}var takeRightWhile_default,init_takeRightWhile=__esm({"../../node_modules/lodash-es/takeRightWhile.js"(){init_baseIteratee();init_baseWhile();__name(takeRightWhile,"takeRightWhile");takeRightWhile_default=takeRightWhile}});function takeWhile(array2,predicate){return array2&&array2.length?baseWhile_default(array2,baseIteratee_default(predicate,3)):[]}var takeWhile_default,init_takeWhile=__esm({"../../node_modules/lodash-es/takeWhile.js"(){init_baseIteratee();init_baseWhile();__name(takeWhile,"takeWhile");takeWhile_default=takeWhile}});function tap(value,interceptor){return interceptor(value),value}var tap_default,init_tap=__esm({"../../node_modules/lodash-es/tap.js"(){__name(tap,"tap");tap_default=tap}});function customDefaultsAssignIn(objValue,srcValue,key,object2){return objValue===void 0||eq_default(objValue,objectProto28[key])&&!hasOwnProperty24.call(object2,key)?srcValue:objValue}var objectProto28,hasOwnProperty24,customDefaultsAssignIn_default,init_customDefaultsAssignIn=__esm({"../../node_modules/lodash-es/_customDefaultsAssignIn.js"(){init_eq();objectProto28=Object.prototype,hasOwnProperty24=objectProto28.hasOwnProperty;__name(customDefaultsAssignIn,"customDefaultsAssignIn");customDefaultsAssignIn_default=customDefaultsAssignIn}});function escapeStringChar(chr){return"\\"+stringEscapes[chr]}var stringEscapes,escapeStringChar_default,init_escapeStringChar=__esm({"../../node_modules/lodash-es/_escapeStringChar.js"(){stringEscapes={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"};__name(escapeStringChar,"escapeStringChar");escapeStringChar_default=escapeStringChar}});var reInterpolate,reInterpolate_default,init_reInterpolate=__esm({"../../node_modules/lodash-es/_reInterpolate.js"(){reInterpolate=/<%=([\s\S]+?)%>/g,reInterpolate_default=reInterpolate}});var reEscape,reEscape_default,init_reEscape=__esm({"../../node_modules/lodash-es/_reEscape.js"(){reEscape=/<%-([\s\S]+?)%>/g,reEscape_default=reEscape}});var reEvaluate,reEvaluate_default,init_reEvaluate=__esm({"../../node_modules/lodash-es/_reEvaluate.js"(){reEvaluate=/<%([\s\S]+?)%>/g,reEvaluate_default=reEvaluate}});var templateSettings,templateSettings_default,init_templateSettings=__esm({"../../node_modules/lodash-es/templateSettings.js"(){init_escape();init_reEscape();init_reEvaluate();init_reInterpolate();templateSettings={escape:reEscape_default,evaluate:reEvaluate_default,interpolate:reInterpolate_default,variable:"",imports:{_:{escape:escape_default}}},templateSettings_default=templateSettings}});function template(string4,options,guard){var settings=templateSettings_default.imports._.templateSettings||templateSettings_default;guard&&isIterateeCall_default(string4,options,guard)&&(options=void 0),string4=toString_default(string4),options=assignWith_default({},options,settings,customDefaultsAssignIn_default);var imports=assignWith_default({},options.imports,settings.imports,customDefaultsAssignIn_default),importsKeys=keys_default(imports),importsValues=baseValues_default(imports,importsKeys);arrayEach_default(importsKeys,function(key){if(reForbiddenIdentifierChars.test(key))throw new Error(INVALID_TEMPL_IMPORTS_ERROR_TEXT)});var isEscaping,isEvaluating,index=0,interpolate=options.interpolate||reNoMatch,source="__p += '",reDelimiters=RegExp((options.escape||reNoMatch).source+"|"+interpolate.source+"|"+(interpolate===reInterpolate_default?reEsTemplate:reNoMatch).source+"|"+(options.evaluate||reNoMatch).source+"|$","g"),sourceURL=hasOwnProperty25.call(options,"sourceURL")?"//# sourceURL="+(options.sourceURL+"").replace(/\s/g," ")+`
@@ -184,7 +184,7 @@ ${gitignoreEntry}
184
184
  `);let{connect:connect3,buffered}=await proxyResponsePromise;if(req.emit("proxyConnect",connect3),this.emit("proxyConnect",connect3,req),req.emit("proxy",{proxy:this.proxy.href,socket}),connect3.statusCode===200)return req.once("socket",resume),opts.secureEndpoint?(debug2("Upgrading socket connection to TLS"),tls.connect({...omit3(setServernameFromNonIpHost(opts),"host","path","port"),socket})):socket;if(connect3.statusCode===407&&this.onProxyAuth){debug2("Got 407 response, invoking onProxyAuth callback"),socket.destroy();let proxyAuthenticate=connect3.headers["proxy-authenticate"]||"",scheme=Array.isArray(proxyAuthenticate)?proxyAuthenticate[0].split(/\s/)[0]:proxyAuthenticate.split(/\s/)[0],authResponse=await this.onProxyAuth({response:connect3,scheme});return this._connectWithAuth(req,opts,authResponse.headers)}socket.destroy();let fakeSocket=new net2.Socket({writable:!1});return fakeSocket.readable=!0,req.once("socket",s2=>{debug2("Replaying proxy buffer for failed request"),assert2(s2.listenerCount("data")>0),s2.push(buffered),s2.push(null)}),fakeSocket}async _connectWithAuth(req,opts,authHeaders){let{proxy}=this,socket;proxy.protocol==="https:"?socket=tls.connect(setServernameFromNonIpHost(this.connectOpts)):socket=net2.connect(this.connectOpts);let headers=typeof this.proxyHeaders=="function"?this.proxyHeaders():{...this.proxyHeaders},host=net2.isIPv6(opts.host)?`[${opts.host}]`:opts.host,payload=`CONNECT ${host}:${opts.port} HTTP/1.1\r
185
185
  `;if(proxy.username||proxy.password){let auth=`${decodeURIComponent(proxy.username)}:${decodeURIComponent(proxy.password)}`;headers["Proxy-Authorization"]=`Basic ${Buffer.from(auth).toString("base64")}`}Object.assign(headers,authHeaders),headers.Host=`${host}:${opts.port}`,headers["Proxy-Connection"]||(headers["Proxy-Connection"]=this.keepAlive?"Keep-Alive":"close");for(let name of Object.keys(headers))payload+=`${name}: ${headers[name]}\r
186
186
  `;let proxyResponsePromise=parseProxyResponse(socket);socket.write(`${payload}\r
187
- `);let{connect:connect3}=await proxyResponsePromise;if(req.emit("proxyConnect",connect3),this.emit("proxyConnect",connect3,req),connect3.statusCode===200)return req.once("socket",resume),opts.secureEndpoint?(debug2("Upgrading socket connection to TLS"),tls.connect({...omit3(setServernameFromNonIpHost(opts),"host","path","port"),socket})):socket;throw socket.destroy(),new Error(`Proxy authentication failed with status ${connect3.statusCode} after retry`)}};HttpsProxyAgent2.protocols=["http","https"];__name(resume,"resume");__name(omit3,"omit")}});var getCACertificates,init_caCerts=__esm({"src/utils/caCerts.ts"(){init_memoize();init_debug();init_envUtils();init_fsOperations();getCACertificates=memoize_default(()=>{let useSystemCA=hasNodeOption("--use-system-ca")||hasNodeOption("--use-openssl-ca"),extraCertsPath=process.env.NODE_EXTRA_CA_CERTS;if(logForDebugging(`CA certs: useSystemCA=${useSystemCA}, extraCertsPath=${extraCertsPath}`),!useSystemCA&&!extraCertsPath)return;let tls2=__require("tls"),certs=[];if(useSystemCA){let getCACerts=tls2.getCACertificates,systemCAs=getCACerts?.("system");if(systemCAs&&systemCAs.length>0)certs.push(...systemCAs),logForDebugging(`CA certs: Loaded ${certs.length} system CA certificates (--use-system-ca)`);else if(!getCACerts&&!extraCertsPath){logForDebugging("CA certs: --use-system-ca set but system CA API unavailable, deferring to runtime");return}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base (--use-system-ca fallback)`)}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base`);if(extraCertsPath)try{let extraCert=getFsImplementation().readFileSync(extraCertsPath,{encoding:"utf8"});certs.push(extraCert),logForDebugging(`CA certs: Appended extra certificates from NODE_EXTRA_CA_CERTS (${extraCertsPath})`)}catch(error40){logForDebugging(`CA certs: Failed to read NODE_EXTRA_CA_CERTS file (${extraCertsPath}): ${error40}`,{level:"error"})}return certs.length>0?certs:void 0})}});import{Agent as HttpsAgent2}from"https";var getMTLSConfig,getMTLSAgent,init_mtls=__esm({"src/utils/mtls.ts"(){init_memoize();init_caCerts();init_debug();init_fsOperations();getMTLSConfig=memoize_default(()=>{let config2={};if(process.env.CLAUDE_CODE_CLIENT_CERT)try{config2.cert=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_CERT,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client certificate from CLAUDE_CODE_CLIENT_CERT")}catch(error40){logForDebugging(`mTLS: Failed to load client certificate: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY)try{config2.key=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_KEY,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client key from CLAUDE_CODE_CLIENT_KEY")}catch(error40){logForDebugging(`mTLS: Failed to load client key: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE&&(config2.passphrase=process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE,logForDebugging("mTLS: Using client key passphrase")),Object.keys(config2).length!==0)return config2}),getMTLSAgent=memoize_default(()=>{let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates();if(!mtlsConfig&&!caCerts)return;let agentOptions={...mtlsConfig,...caCerts&&{ca:caCerts},keepAlive:!0};return logForDebugging("mTLS: Creating HTTPS agent with custom certificates"),new HttpsAgent2(agentOptions)})}});function getAddressFamily(options){switch(options.family){case 0:case 4:case 6:return options.family;case"IPv6":return 6;case"IPv4":case void 0:return 4;default:throw new Error(`Unsupported address family: ${options.family}`)}}function getProxyUrl(env5=process.env){return env5.https_proxy||env5.HTTPS_PROXY||env5.http_proxy||env5.HTTP_PROXY}function createHttpsProxyAgent(proxyUrl,extra={}){let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),agentOptions={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};return isEnvTruthy(process.env.CLAUDE_CODE_PROXY_RESOLVES_HOSTS)&&(agentOptions.lookup=(hostname2,options,callback)=>{callback(null,hostname2,getAddressFamily(options))}),new HttpsProxyAgent2(proxyUrl,{...agentOptions,...extra})}async function getAWSClientProxyConfig(){let proxyUrl=getProxyUrl();if(!proxyUrl)return{};let[{NodeHttpHandler},{defaultProvider}]=await Promise.all([import("@smithy/node-http-handler"),import("@aws-sdk/credential-provider-node")]),agent=createHttpsProxyAgent(proxyUrl),requestHandler=new NodeHttpHandler({httpAgent:agent,httpsAgent:agent});return{requestHandler,credentials:defaultProvider({clientConfig:{requestHandler}})}}var getProxyAgent,init_proxy=__esm({"src/utils/proxy.ts"(){init_dist3();init_memoize();init_caCerts();init_debug();init_envUtils();init_mtls();__name(getAddressFamily,"getAddressFamily");__name(getProxyUrl,"getProxyUrl");__name(createHttpsProxyAgent,"createHttpsProxyAgent");getProxyAgent=memoize_default(uri=>{let undiciMod=__require("undici"),mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),proxyOptions={httpProxy:uri,httpsProxy:uri,noProxy:process.env.NO_PROXY||process.env.no_proxy};if(mtlsConfig||caCerts){let tlsOpts={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};proxyOptions.connect=tlsOpts,proxyOptions.requestTls=tlsOpts}return new undiciMod.EnvHttpProxyAgent(proxyOptions)});__name(getAWSClientProxyConfig,"getAWSClientProxyConfig")}});function findFirstMatch(profiles,substring){return profiles.find(p=>p.includes(substring))??null}async function createBedrockClient(){let{BedrockClient}=await import("@aws-sdk/client-bedrock"),region=getAWSRegion(),skipAuth=isEnvTruthy(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH),clientConfig={region,...process.env.ANTHROPIC_BEDROCK_BASE_URL&&{endpoint:process.env.ANTHROPIC_BEDROCK_BASE_URL},...await getAWSClientProxyConfig(),...skipAuth&&{requestHandler:new(await import("@smithy/node-http-handler")).NodeHttpHandler,httpAuthSchemes:[{schemeId:"smithy.api#noAuth",identityProvider:__name(()=>async()=>({}),"identityProvider"),signer:new(await import("@smithy/core")).NoAuthSigner}],httpAuthSchemeProvider:__name(()=>[{schemeId:"smithy.api#noAuth"}],"httpAuthSchemeProvider")}};if(!skipAuth&&!process.env.AWS_BEARER_TOKEN_BEDROCK){let cachedCredentials=await refreshAndGetAwsCredentials();if(cachedCredentials){let credentials=cachedCredentials;clientConfig.credentials={accessKeyId:credentials.accessKeyId,secretAccessKey:credentials.secretAccessKey,sessionToken:credentials.sessionToken}}}return new BedrockClient(clientConfig)}var getBedrockInferenceProfiles,getInferenceProfileBackingModel,init_bedrock=__esm({"src/utils/model/bedrock.ts"(){init_memoize();init_auth();init_envUtils();init_log3();init_proxy();getBedrockInferenceProfiles=memoize_default(async function(){let[client2,{ListInferenceProfilesCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),allProfiles=[],nextToken;try{do{let command=new ListInferenceProfilesCommand({...nextToken&&{nextToken},typeEquals:"SYSTEM_DEFINED"}),response=await client2.send(command);response.inferenceProfileSummaries&&allProfiles.push(...response.inferenceProfileSummaries),nextToken=response.nextToken}while(nextToken);return allProfiles.filter(profile=>profile.inferenceProfileId?.includes("anthropic")).map(profile=>profile.inferenceProfileId).filter(Boolean)}catch(error40){throw logError2(error40),error40}});__name(findFirstMatch,"findFirstMatch");__name(createBedrockClient,"createBedrockClient");getInferenceProfileBackingModel=memoize_default(async function(profileId){try{let[client2,{GetInferenceProfileCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),command=new GetInferenceProfileCommand({inferenceProfileIdentifier:profileId}),response=await client2.send(command);if(!response.models||response.models.length===0)return null;let primaryModel=response.models[0];if(!primaryModel?.modelArn)return null;let lastSlashIndex=primaryModel.modelArn.lastIndexOf("/");return lastSlashIndex>=0?primaryModel.modelArn.substring(lastSlashIndex+1):primaryModel.modelArn}catch(error40){return logError2(error40),null}})}});var CLAUDE_3_7_SONNET_CONFIG,CLAUDE_3_5_V2_SONNET_CONFIG,CLAUDE_3_5_HAIKU_CONFIG,CLAUDE_HAIKU_4_5_CONFIG,CLAUDE_SONNET_4_CONFIG,CLAUDE_SONNET_4_5_CONFIG,CLAUDE_OPUS_4_CONFIG,CLAUDE_OPUS_4_1_CONFIG,CLAUDE_OPUS_4_5_CONFIG,CLAUDE_OPUS_4_6_CONFIG,CLAUDE_OPUS_4_7_CONFIG,CLAUDE_OPUS_4_8_CONFIG,CLAUDE_SONNET_4_6_CONFIG,ALL_MODEL_CONFIGS,CANONICAL_MODEL_IDS,CANONICAL_ID_TO_KEY,init_configs=__esm({"src/utils/model/configs.ts"(){CLAUDE_3_7_SONNET_CONFIG={firstParty:"claude-3-7-sonnet-20250219",bedrock:"us.anthropic.\u0063laude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219",foundry:"claude-3-7-sonnet"},CLAUDE_3_5_V2_SONNET_CONFIG={firstParty:"claude-3-5-sonnet-20241022",bedrock:"anthropic.\u0063laude-3-5-sonnet-20241022-v2:0",vertex:"claude-3-5-sonnet-v2@20241022",foundry:"claude-3-5-sonnet"},CLAUDE_3_5_HAIKU_CONFIG={firstParty:"claude-3-5-haiku-20241022",bedrock:"us.anthropic.\u0063laude-3-5-haiku-20241022-v1:0",vertex:"claude-3-5-haiku@20241022",foundry:"claude-3-5-haiku"},CLAUDE_HAIKU_4_5_CONFIG={firstParty:"claude-haiku-4-5-20251001",bedrock:"us.anthropic.\u0063laude-haiku-4-5-20251001-v1:0",vertex:"claude-haiku-4-5@20251001",foundry:"claude-haiku-4-5"},CLAUDE_SONNET_4_CONFIG={firstParty:"claude-sonnet-4-20250514",bedrock:"us.anthropic.\u0063laude-sonnet-4-20250514-v1:0",vertex:"claude-sonnet-4@20250514",foundry:"claude-sonnet-4"},CLAUDE_SONNET_4_5_CONFIG={firstParty:"claude-sonnet-4-5-20250929",bedrock:"us.anthropic.\u0063laude-sonnet-4-5-20250929-v1:0",vertex:"claude-sonnet-4-5@20250929",foundry:"claude-sonnet-4-5"},CLAUDE_OPUS_4_CONFIG={firstParty:"claude-opus-4-20250514",bedrock:"us.anthropic.\u0063laude-opus-4-20250514-v1:0",vertex:"claude-opus-4@20250514",foundry:"claude-opus-4"},CLAUDE_OPUS_4_1_CONFIG={firstParty:"claude-opus-4-1-20250805",bedrock:"us.anthropic.\u0063laude-opus-4-1-20250805-v1:0",vertex:"claude-opus-4-1@20250805",foundry:"claude-opus-4-1"},CLAUDE_OPUS_4_5_CONFIG={firstParty:"claude-opus-4-5-20251101",bedrock:"us.anthropic.\u0063laude-opus-4-5-20251101-v1:0",vertex:"claude-opus-4-5@20251101",foundry:"claude-opus-4-5"},CLAUDE_OPUS_4_6_CONFIG={firstParty:"claude-opus-4-6",bedrock:"us.anthropic.\u0063laude-opus-4-6-v1",vertex:"claude-opus-4-6",foundry:"claude-opus-4-6"},CLAUDE_OPUS_4_7_CONFIG={firstParty:"claude-opus-4-7",bedrock:"us.anthropic.\u0063laude-opus-4-7-v1",vertex:"claude-opus-4-7",foundry:"claude-opus-4-7"},CLAUDE_OPUS_4_8_CONFIG={firstParty:"claude-opus-4-8",bedrock:"us.anthropic.\u0063laude-opus-4-8-v1",vertex:"claude-opus-4-8",foundry:"claude-opus-4-8"},CLAUDE_SONNET_4_6_CONFIG={firstParty:"claude-sonnet-4-6",bedrock:"us.anthropic.\u0063laude-sonnet-4-6",vertex:"claude-sonnet-4-6",foundry:"claude-sonnet-4-6"},ALL_MODEL_CONFIGS={haiku35:CLAUDE_3_5_HAIKU_CONFIG,haiku45:CLAUDE_HAIKU_4_5_CONFIG,sonnet35:CLAUDE_3_5_V2_SONNET_CONFIG,sonnet37:CLAUDE_3_7_SONNET_CONFIG,sonnet40:CLAUDE_SONNET_4_CONFIG,sonnet45:CLAUDE_SONNET_4_5_CONFIG,sonnet46:CLAUDE_SONNET_4_6_CONFIG,opus40:CLAUDE_OPUS_4_CONFIG,opus41:CLAUDE_OPUS_4_1_CONFIG,opus45:CLAUDE_OPUS_4_5_CONFIG,opus46:CLAUDE_OPUS_4_6_CONFIG,opus47:CLAUDE_OPUS_4_7_CONFIG,opus48:CLAUDE_OPUS_4_8_CONFIG},CANONICAL_MODEL_IDS=Object.values(ALL_MODEL_CONFIGS).map(c3=>c3.firstParty),CANONICAL_ID_TO_KEY=Object.fromEntries(Object.entries(ALL_MODEL_CONFIGS).map(([key,cfg])=>[cfg.firstParty,key]))}});function getAPIProvider(){return isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)?"bedrock":isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)?"vertex":isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY)?"foundry":"firstParty"}function isFirstPartyAnthropicBaseUrl(){let baseUrl=process.env.ANTHROPIC_BASE_URL;if(!baseUrl)return!0;try{let host=new URL(baseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}var init_providers=__esm({"src/utils/model/providers.ts"(){init_envUtils();__name(getAPIProvider,"getAPIProvider");__name(isFirstPartyAnthropicBaseUrl,"isFirstPartyAnthropicBaseUrl")}});function getBuiltinModelStrings(provider){let out={};for(let key of MODEL_KEYS)out[key]=ALL_MODEL_CONFIGS[key][provider];return out}async function getBedrockModelStrings(){let fallback=getBuiltinModelStrings("bedrock"),profiles;try{profiles=await getBedrockInferenceProfiles()}catch(error40){return logError2(error40),fallback}if(!profiles?.length)return fallback;let out={};for(let key of MODEL_KEYS){let needle=ALL_MODEL_CONFIGS[key].firstParty;out[key]=findFirstMatch(profiles,needle)||fallback[key]}return out}function resolveOverriddenModel(modelId){let overrides;try{overrides=getInitialSettings().modelOverrides}catch{return modelId}if(!overrides)return modelId;for(let[canonicalId,override]of Object.entries(overrides))if(override===modelId)return canonicalId;return modelId}function resetModelStringsCache(){modelStringsCacheGeneration+=1,resetModelStrings()}var MODEL_KEYS,modelStringsCacheGeneration,updateBedrockModelStrings,init_modelStrings=__esm({"src/utils/model/modelStrings.ts"(){init_state();init_log3();init_sequential();init_settings2();init_bedrock();init_configs();init_providers();MODEL_KEYS=Object.keys(ALL_MODEL_CONFIGS);__name(getBuiltinModelStrings,"getBuiltinModelStrings");__name(getBedrockModelStrings,"getBedrockModelStrings");__name(resolveOverriddenModel,"resolveOverriddenModel");modelStringsCacheGeneration=0,updateBedrockModelStrings=sequential(async()=>{if(getModelStrings()!==null||getAPIProvider()!=="bedrock")return;let generation=modelStringsCacheGeneration;try{let ms=await getBedrockModelStrings();if(generation!==modelStringsCacheGeneration||getAPIProvider()!=="bedrock"||getModelStrings()!==null)return;setModelStrings(ms)}catch(error40){logError2(error40)}});__name(resetModelStringsCache,"resetModelStringsCache")}});var init_billing=__esm({"src/utils/billing.ts"(){init_auth();init_config3();init_envUtils()}});function getMockSubscriptionType(){return!mockEnabled||process.env.USER_TYPE!=="ant"?null:mockSubscriptionType||DEFAULT_MOCK_SUBSCRIPTION}function shouldUseMockSubscription(){return mockEnabled&&mockSubscriptionType!==null&&process.env.USER_TYPE==="ant"}var mockEnabled,mockSubscriptionType,DEFAULT_MOCK_SUBSCRIPTION,init_mockRateLimits=__esm({"src/services/mockRateLimits.ts"(){init_billing();mockEnabled=!1,mockSubscriptionType=null,DEFAULT_MOCK_SUBSCRIPTION="max";__name(getMockSubscriptionType,"getMockSubscriptionType");__name(shouldUseMockSubscription,"shouldUseMockSubscription")}});var init_getOauthProfile=__esm({"src/services/oauth/getOauthProfile.ts"(){init_oauth();init_auth();init_config3();init_log3()}});function shouldUseClaudeAIAuth(scopes){return!!scopes?.includes(CLAUDE_AI_INFERENCE_SCOPE)}var init_client2=__esm({"src/services/oauth/client.ts"(){init_analytics();init_oauth();init_auth();init_config3();init_debug();init_getOauthProfile();__name(shouldUseClaudeAIAuth,"shouldUseClaudeAIAuth")}});import{mkdirSync as mkdirSync2,writeFileSync as writeFileSync3}from"fs";function maybePersistTokenForSubprocesses(path10,token,tokenName){if(isEnvTruthy(process.env.CLAUDE_CODE_REMOTE))try{mkdirSync2(CCR_TOKEN_DIR,{recursive:!0,mode:448}),writeFileSync3(path10,token,{encoding:"utf8",mode:384}),logForDebugging(`Persisted ${tokenName} to ${path10} for subprocess access`)}catch(error40){logForDebugging(`Failed to persist ${tokenName} to disk (non-fatal): ${errorMessage(error40)}`,{level:"error"})}}function readTokenFromWellKnownFile(path10,tokenName){try{let token=getFsImplementation().readFileSync(path10,{encoding:"utf8"}).trim();return token?(logForDebugging(`Read ${tokenName} from well-known file ${path10}`),token):null}catch(error40){return isENOENT(error40)||logForDebugging(`Failed to read ${tokenName} from ${path10}: ${errorMessage(error40)}`,{level:"debug"}),null}}function getCredentialFromFd({envVar,wellKnownPath,label,getCached,setCached}){let cached2=getCached();if(cached2!==void 0)return cached2;let fdEnv=process.env[envVar];if(!fdEnv){let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}let fd=parseInt(fdEnv,10);if(Number.isNaN(fd))return logForDebugging(`${envVar} must be a valid file descriptor number, got: ${fdEnv}`,{level:"error"}),setCached(null),null;try{let fsOps=getFsImplementation(),fdPath=process.platform==="darwin"||process.platform==="freebsd"?`/dev/fd/${fd}`:`/proc/self/fd/${fd}`,token=fsOps.readFileSync(fdPath,{encoding:"utf8"}).trim();return token?(logForDebugging(`Successfully read ${label} from file descriptor ${fd}`),setCached(token),maybePersistTokenForSubprocesses(wellKnownPath,token,label),token):(logForDebugging(`File descriptor contained empty ${label}`,{level:"error"}),setCached(null),null)}catch(error40){logForDebugging(`Failed to read ${label} from file descriptor ${fd}: ${errorMessage(error40)}`,{level:"error"});let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}}function getOAuthTokenFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR",wellKnownPath:CCR_OAUTH_TOKEN_PATH,label:"OAuth token",getCached:getOauthTokenFromFd,setCached:setOauthTokenFromFd})}function getApiKeyFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR",wellKnownPath:CCR_API_KEY_PATH,label:"API key",getCached:getApiKeyFromFd,setCached:setApiKeyFromFd})}var CCR_TOKEN_DIR,CCR_OAUTH_TOKEN_PATH,CCR_API_KEY_PATH,CCR_SESSION_INGRESS_TOKEN_PATH,init_authFileDescriptor=__esm({"src/utils/authFileDescriptor.ts"(){init_state();init_debug();init_envUtils();init_errors2();init_fsOperations();CCR_TOKEN_DIR="/home/claude/.\u0063laude/remote",CCR_OAUTH_TOKEN_PATH=`${CCR_TOKEN_DIR}/.oauth_token`,CCR_API_KEY_PATH=`${CCR_TOKEN_DIR}/.api_key`,CCR_SESSION_INGRESS_TOKEN_PATH=`${CCR_TOKEN_DIR}/.session_ingress_token`;__name(maybePersistTokenForSubprocesses,"maybePersistTokenForSubprocesses");__name(readTokenFromWellKnownFile,"readTokenFromWellKnownFile");__name(getCredentialFromFd,"getCredentialFromFd");__name(getOAuthTokenFromFileDescriptor,"getOAuthTokenFromFileDescriptor");__name(getApiKeyFromFileDescriptor,"getApiKeyFromFileDescriptor")}});import{createHash}from"crypto";import{userInfo}from"os";function getMacOsKeychainStorageServiceName(serviceSuffix=""){let configDir=getClaudeConfigHomeDir(),dirHash=!process.env.CLAVUE_CONFIG_DIR?"":`-${createHash("sha256").update(configDir).digest("hex").substring(0,8)}`;return`Claude Code${getOauthConfig().OAUTH_FILE_SUFFIX}${serviceSuffix}${dirHash}`}function getUsername(){try{return process.env.USER||userInfo().username}catch{return"claude-code-user"}}function clearKeychainCache(){keychainCacheState.cache={data:null,cachedAt:0},keychainCacheState.generation++,keychainCacheState.readInFlight=null}var CREDENTIALS_SERVICE_SUFFIX,KEYCHAIN_CACHE_TTL_MS,keychainCacheState,init_macOsKeychainHelpers=__esm({"src/utils/secureStorage/macOsKeychainHelpers.ts"(){init_oauth();init_envUtils();CREDENTIALS_SERVICE_SUFFIX="-credentials";__name(getMacOsKeychainStorageServiceName,"getMacOsKeychainStorageServiceName");__name(getUsername,"getUsername");KEYCHAIN_CACHE_TTL_MS=3e4,keychainCacheState={cache:{data:null,cachedAt:0},generation:0,readInFlight:null};__name(clearKeychainCache,"clearKeychainCache")}});function normalizeApiKeyForConfig(apiKey){return apiKey.slice(-20)}var init_authPortable=__esm({"src/utils/authPortable.ts"(){init_envUtils();init_macOsKeychainHelpers();__name(normalizeApiKeyForConfig,"normalizeApiKeyForConfig")}});function isValidAwsStsOutput(obj){if(!obj||typeof obj!="object")return!1;let output=obj;if(!output.Credentials||typeof output.Credentials!="object")return!1;let credentials=output.Credentials;return typeof credentials.AccessKeyId=="string"&&typeof credentials.SecretAccessKey=="string"&&typeof credentials.SessionToken=="string"&&credentials.AccessKeyId.length>0&&credentials.SecretAccessKey.length>0&&credentials.SessionToken.length>0}async function checkStsCallerIdentity(){let{STSClient,GetCallerIdentityCommand}=await import("@aws-sdk/client-sts");await new STSClient().send(new GetCallerIdentityCommand({}))}async function clearAwsIniCache(){try{logForDebugging("Clearing AWS credential provider cache");let{fromIni}=await import("@aws-sdk/credential-providers");await fromIni({ignoreCache:!0})(),logForDebugging("AWS credential provider cache refreshed")}catch{logForDebugging("Failed to clear AWS credential cache (this is expected if no credentials are configured)")}}var init_aws=__esm({"src/utils/aws.ts"(){init_debug();__name(isValidAwsStsOutput,"isValidAwsStsOutput");__name(checkStsCallerIdentity,"checkStsCallerIdentity");__name(clearAwsIniCache,"clearAwsIniCache")}});var AwsAuthStatusManager,init_awsAuthStatusManager=__esm({"src/utils/awsAuthStatusManager.ts"(){init_signal();AwsAuthStatusManager=class _AwsAuthStatusManager{static{__name(this,"AwsAuthStatusManager")}static instance=null;status={isAuthenticating:!1,output:[]};changed=createSignal();static getInstance(){return _AwsAuthStatusManager.instance||(_AwsAuthStatusManager.instance=new _AwsAuthStatusManager),_AwsAuthStatusManager.instance}getStatus(){return{...this.status,output:[...this.status.output]}}startAuthentication(){this.status={isAuthenticating:!0,output:[]},this.changed.emit(this.getStatus())}addOutput(line){this.status.output.push(line),this.changed.emit(this.getStatus())}setError(error40){this.status.error=error40,this.changed.emit(this.getStatus())}endAuthentication(success2){success2?this.status={isAuthenticating:!1,output:[]}:this.status.isAuthenticating=!1,this.changed.emit(this.getStatus())}subscribe=this.changed.subscribe;static reset(){_AwsAuthStatusManager.instance&&(_AwsAuthStatusManager.instance.changed.clear(),_AwsAuthStatusManager.instance=null)}}}});var CLAUDE_CODE_20250219_BETA_HEADER,INTERLEAVED_THINKING_BETA_HEADER,CONTEXT_1M_BETA_HEADER,CONTEXT_MANAGEMENT_BETA_HEADER,STRUCTURED_OUTPUTS_BETA_HEADER,WEB_SEARCH_BETA_HEADER,TOOL_SEARCH_BETA_HEADER_3P,PROMPT_CACHING_SCOPE_BETA_HEADER,REDACT_THINKING_BETA_HEADER,TOKEN_EFFICIENT_TOOLS_BETA_HEADER,SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER,CLI_INTERNAL_BETA_HEADER,BEDROCK_EXTRA_PARAMS_HEADERS,init_betas=__esm({"src/constants/betas.ts"(){CLAUDE_CODE_20250219_BETA_HEADER="claude-code-20250219",INTERLEAVED_THINKING_BETA_HEADER="interleaved-thinking-2025-05-14",CONTEXT_1M_BETA_HEADER="context-1m-2025-08-07",CONTEXT_MANAGEMENT_BETA_HEADER="context-management-2025-06-27",STRUCTURED_OUTPUTS_BETA_HEADER="structured-outputs-2025-12-15",WEB_SEARCH_BETA_HEADER="web-search-2025-03-05",TOOL_SEARCH_BETA_HEADER_3P="tool-search-tool-2025-10-19",PROMPT_CACHING_SCOPE_BETA_HEADER="prompt-caching-scope-2026-01-05",REDACT_THINKING_BETA_HEADER="redact-thinking-2026-02-12",TOKEN_EFFICIENT_TOOLS_BETA_HEADER="token-efficient-tools-2026-03-28",SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER="",CLI_INTERNAL_BETA_HEADER=process.env.USER_TYPE==="ant"?"cli-internal-2026-02-09":"",BEDROCK_EXTRA_PARAMS_HEADERS=new Set([INTERLEAVED_THINKING_BETA_HEADER,CONTEXT_1M_BETA_HEADER,TOOL_SEARCH_BETA_HEADER_3P])}});function parseVersion(raw){if(!raw)return null;let parts=raw.split("-").map(part=>Number.parseInt(part,10));return parts.some(part=>Number.isNaN(part))?null:(parts[1]!==void 0&&parts[1]>=2e7&&(parts[1]=0),{major:parts[0]??0,minor:parts[1]??0})}function parseClaudeModelIdentity(model){let normalized=String(model??"").trim().toLowerCase();if(!normalized)return null;let modern=/claude-(opus|sonnet|haiku)-([0-9]+(?:-[0-9]+)?)/.exec(normalized);if(modern?.[1]&&modern[2]){let version2=parseVersion(modern[2]);return version2?{family:modern[1],version:version2}:null}let legacy=/claude-([0-9]+(?:-[0-9]+)?)-(opus|sonnet|haiku)/.exec(normalized);if(legacy?.[1]&&legacy[2]){let version2=parseVersion(legacy[1]);return version2?{family:legacy[2],version:version2}:null}return null}function getClaudeCanonicalModelName(model){let identity4=parseClaudeModelIdentity(model);if(!identity4||identity4.version.major<4)return null;let version2=identity4.version.minor===0?String(identity4.version.major):`${identity4.version.major}-${identity4.version.minor}`;return`claude-${identity4.family}-${version2}`}var init_claudeModelProfiles=__esm({"src/utils/model/claudeModelProfiles.ts"(){__name(parseVersion,"parseVersion");__name(parseClaudeModelIdentity,"parseClaudeModelIdentity");__name(getClaudeCanonicalModelName,"getClaudeCanonicalModelName")}});var cooldownTriggered,cooldownExpired,onCooldownTriggered,onCooldownExpired,overageRejection,onFastModeOverageRejection,orgFastModeChange,onOrgFastModeChanged,init_fastMode=__esm({"src/utils/fastMode.ts"(){init_oauth();init_growthbook();init_state();init_analytics();init_auth();init_bundledMode();init_config3();init_debug();init_envUtils();init_model();init_providers();init_privacyLevel();init_settings2();init_signal();cooldownTriggered=createSignal(),cooldownExpired=createSignal(),onCooldownTriggered=cooldownTriggered.subscribe,onCooldownExpired=cooldownExpired.subscribe,overageRejection=createSignal(),onFastModeOverageRejection=overageRejection.subscribe,orgFastModeChange=createSignal(),onOrgFastModeChanged=orgFastModeChange.subscribe}});var COST_TIER_3_15,COST_TIER_15_75,COST_TIER_5_25,COST_HAIKU_35,COST_HAIKU_45,MODEL_COSTS,init_modelCost=__esm({"src/utils/modelCost.ts"(){init_analytics();init_state();init_fastMode();init_configs();init_model();COST_TIER_3_15={inputTokens:3,outputTokens:15,promptCacheWriteTokens:3.75,promptCacheReadTokens:.3,webSearchRequests:.01},COST_TIER_15_75={inputTokens:15,outputTokens:75,promptCacheWriteTokens:18.75,promptCacheReadTokens:1.5,webSearchRequests:.01},COST_TIER_5_25={inputTokens:5,outputTokens:25,promptCacheWriteTokens:6.25,promptCacheReadTokens:.5,webSearchRequests:.01},COST_HAIKU_35={inputTokens:.8,outputTokens:4,promptCacheWriteTokens:1,promptCacheReadTokens:.08,webSearchRequests:.01},COST_HAIKU_45={inputTokens:1,outputTokens:5,promptCacheWriteTokens:1.25,promptCacheReadTokens:.1,webSearchRequests:.01},MODEL_COSTS={[firstPartyNameToCanonical(CLAUDE_3_5_HAIKU_CONFIG.firstParty)]:COST_HAIKU_35,[firstPartyNameToCanonical(CLAUDE_HAIKU_4_5_CONFIG.firstParty)]:COST_HAIKU_45,[firstPartyNameToCanonical(CLAUDE_3_5_V2_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_3_7_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_5_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_6_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_OPUS_4_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_1_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_5_CONFIG.firstParty)]:COST_TIER_5_25,[firstPartyNameToCanonical(CLAUDE_OPUS_4_6_CONFIG.firstParty)]:COST_TIER_5_25}}});var init_aliases=__esm({"src/utils/model/aliases.ts"(){}});var init_modelAllowlist=__esm({"src/utils/model/modelAllowlist.ts"(){init_settings2();init_aliases();init_model();init_modelStrings()}});var init_antModels=__esm({"src/utils/model/antModels.ts"(){init_growthbook()}});function firstPartyNameToCanonical(name){name=name.toLowerCase();let claudeCanonical=getClaudeCanonicalModelName(name);if(claudeCanonical)return claudeCanonical;if(name.includes("claude-3-7-sonnet"))return"claude-3-7-sonnet";if(name.includes("claude-3-5-sonnet"))return"claude-3-5-sonnet";if(name.includes("claude-3-5-haiku"))return"claude-3-5-haiku";if(name.includes("claude-3-opus"))return"claude-3-opus";if(name.includes("claude-3-sonnet"))return"claude-3-sonnet";if(name.includes("claude-3-haiku"))return"claude-3-haiku";let match=name.match(/(claude-(\d+-\d+-)?\w+)/);return match&&match[1]?match[1]:name}function getCanonicalName(fullModelName){return firstPartyNameToCanonical(resolveOverriddenModel(fullModelName))}var init_model=__esm({"src/utils/model/model.ts"(){init_state();init_auth();init_context();init_envUtils();init_modelStrings();init_configs();init_claudeModelProfiles();init_modelCost();init_settings2();init_providers();init_figures2();init_modelAllowlist();init_aliases();init_antModels();init_stringUtils();__name(firstPartyNameToCanonical,"firstPartyNameToCanonical");__name(getCanonicalName,"getCanonicalName")}});var init_providerModelProfiles=__esm({"src/utils/model/providerModelProfiles.ts"(){init_claudeModelProfiles()}});var APP_NAME,APP_VERSION_FALLBACK,APP_VERSION,APP_WORDMARK,APP_BRAND_LOCKUP,init_branding=__esm({"src/constants/branding.ts"(){APP_NAME="Clavue",APP_VERSION_FALLBACK="10.12.11",APP_VERSION=typeof MACRO<"u"?"10.12.11":APP_VERSION_FALLBACK,APP_WORDMARK=`/${APP_NAME.toLowerCase()}`,APP_BRAND_LOCKUP=`\u9F8D ${APP_NAME.toUpperCase()}`}});function clear3PModelCapabilityOverrideCache(){get3PModelCapabilityOverride.cache?.clear?.()}var TIERS,get3PModelCapabilityOverride,init_modelSupportOverrides=__esm({"src/utils/model/modelSupportOverrides.ts"(){init_memoize();init_providers();TIERS=[{modelEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES"}],get3PModelCapabilityOverride=memoize_default((model,capability)=>{if(getAPIProvider()==="firstParty")return;let m2=model.toLowerCase();for(let tier of TIERS){let pinned=process.env[tier.modelEnvVar],capabilities=process.env[tier.capabilitiesEnvVar];if(!(!pinned||capabilities===void 0)&&m2===pinned.toLowerCase())return capabilities.toLowerCase().split(",").map(s2=>s2.trim()).includes(capability)}},(model,capability)=>`${model.toLowerCase()}:${capability}`);__name(clear3PModelCapabilityOverrideCache,"clear3PModelCapabilityOverrideCache")}});function emptyState(){return{combo:{...EMPTY_COMBO},roleEfforts:{}}}function ensureState(sessionId){let id=normalizeSessionId(sessionId),state=sessionStates.get(id);return state||(state=emptyState(),sessionStates.set(id,state)),state}function normalizeSessionId(sessionId){return String(sessionId??"").trim()||activeSessionId||"default"}function isSafeSessionId(value){return typeof value=="string"&&value.length>0&&value.length<=256&&!/[\u0000-\u001f\u007f]/.test(value)}function hydrateSessionRouteStateFromEnv(env5=process.env){let raw=env5[SESSION_ROUTE_STATE_ENV],handoff=env5[SESSION_ROUTE_HANDOFF_ENV]==="1";if(delete env5[SESSION_ROUTE_STATE_ENV],delete env5[SESSION_ROUTE_HANDOFF_ENV],!(!handoff||!raw))try{let envelope=JSON.parse(raw),id=String(envelope.sessionId??"").trim();if(!isSafeSessionId(id)||!envelope.state||typeof envelope.state!="object")return;let state=envelope.state,combo={};if(state.combo&&typeof state.combo=="object")for(let[key,value]of Object.entries(state.combo))COMBO_KEYS.has(key)&&typeof value=="string"&&value.trim()&&(combo[key]=value.trim());let restored={combo,roleEfforts:{}};if(typeof state.providerProfileId=="string"&&state.providerProfileId.trim()&&(restored.providerProfileId=state.providerProfileId.trim()),sessionStates.set(id,restored),typeof state.model=="string"&&setSessionModelOverride(state.model,id),typeof state.effort=="string"&&setSessionEffortOverride(state.effort,id),state.roleEfforts&&typeof state.roleEfforts=="object")for(let[role,effort]of Object.entries(state.roleEfforts))typeof effort=="string"&&setSessionRoleEffortOverride(role,effort,id);typeof state.executionSpeed=="string"&&setSessionExecutionSpeed(state.executionSpeed,id),activeSessionId=id}catch{}}function getSessionProviderProfileId(sessionId){let id=ensureState(sessionId).providerProfileId;return id&&id.trim()?id.trim():void 0}function clearModelLinePins(state){state.combo={...EMPTY_COMBO},delete state.model,delete state.effort,state.roleEfforts={}}function setSessionProviderResolver(resolver){sessionProviderResolver=resolver}function ensureSessionProviderPinned(sessionId,explicitProfileId){let state=ensureState(sessionId??void 0);if(state.providerProfileId&&state.providerProfileId.trim())return;let id=String(explicitProfileId??"").trim();if(!id&&sessionProviderResolver)try{id=String(sessionProviderResolver(sessionId??void 0)??"").trim()}catch{id=""}if(!id)try{let mod=(init_providerProfiles(),__toCommonJS(providerProfiles_exports));id=String(mod.getResolvedCurrentProviderProfile?.(sessionId??void 0)?.id||mod.getActiveProviderProfileId?.()||"").trim()}catch{id=""}id&&(state.providerProfileId=id)}function clearSessionOverlaysForUnboundProfiles(){for(let state of sessionStates.values())state.providerProfileId&&state.providerProfileId.trim()||clearModelLinePins(state)}function setSessionModelOverride(model,sessionId){ensureSessionProviderPinned(sessionId);let state=ensureState(sessionId),value=String(model??"").trim();!value||value==="default"?delete state.model:state.model=value}function setSessionEffortOverride(effort,sessionId){effort!=null&&ensureSessionProviderPinned(sessionId);let state=ensureState(sessionId);if(effort==null){delete state.effort;return}let raw=String(effort).trim().toLowerCase();if(!raw){delete state.effort;return}return raw==="auto"||raw==="unset"?(state.effort="auto","auto"):raw==="x-high"||raw==="x_high"?(state.effort="xhigh","xhigh"):raw==="low"||raw==="medium"||raw==="high"||raw==="max"||raw==="xhigh"||raw==="ultra"?(state.effort=raw,raw):state.effort}function normalizeRoleEffortKey(role){let raw=String(role||"").trim().toLowerCase().replace(/[_\s-]+/g,"");if(!raw)return null;let aliases={main:"mainLoop",mainloop:"mainLoop",primary:"mainLoop",summary:"summarize",compact:"summarize",memory:"searchMemory",search:"searchMemory",quick:"quickSummary",bg:"background",plan:"planner",review:"reviewer",verify:"verifier",agent:"fallback",subagent:"fallback"},known=["mainLoop","summarize","extract","classify","searchMemory","quickSummary","background","planner","reviewer","judge","verifier","fallback"];if(known.includes(raw))return raw;for(let k of known)if(k.toLowerCase()===raw)return k;return aliases[raw]??null}function setSessionRoleEffortOverride(role,effort,sessionId){let key=normalizeRoleEffortKey(role);if(!key)return;effort!=null&&String(effort).trim()!==""&&ensureSessionProviderPinned(sessionId);let state=ensureState(sessionId),map3={...state.roleEfforts??{}};if(effort==null||String(effort).trim()===""){delete map3[key],state.roleEfforts=map3,key==="mainLoop"&&delete state.effort;return}let raw=String(effort).trim().toLowerCase(),pinned;if(raw==="auto"||raw==="unset")pinned="auto";else if(raw==="x-high"||raw==="x_high")pinned="xhigh";else if(raw==="low"||raw==="medium"||raw==="high"||raw==="max"||raw==="xhigh"||raw==="ultra")pinned=raw;else return map3[key];return map3[key]=pinned,state.roleEfforts=map3,key==="mainLoop"&&setSessionEffortOverride(pinned,sessionId),pinned}function setSessionExecutionSpeed(speed,sessionId){let state=ensureState(sessionId);if(speed==null||String(speed).trim()===""){delete state.executionSpeed;return}let raw=String(speed).trim().toLowerCase();if(raw==="clear"||raw==="default"||raw==="env"||raw==="unset"){delete state.executionSpeed;return}return raw==="grok"||raw==="turbo"||raw==="fast"||raw==="speed"?(state.executionSpeed="grok","grok"):raw==="balanced"||raw==="auto"||raw==="normal"?(state.executionSpeed="balanced","balanced"):raw==="quality"||raw==="high"||raw==="deep"?(state.executionSpeed="quality","quality"):state.executionSpeed}var EMPTY_COMBO,activeSessionId,sessionStates,SESSION_ROUTE_STATE_ENV,SESSION_ROUTE_HANDOFF_ENV,COMBO_KEYS,sessionProviderResolver,init_sessionComboRouting=__esm({"src/utils/model/sessionComboRouting.ts"(){EMPTY_COMBO={},activeSessionId="default",sessionStates=new Map;__name(emptyState,"emptyState");__name(ensureState,"ensureState");__name(normalizeSessionId,"normalizeSessionId");SESSION_ROUTE_STATE_ENV="CLAVUE_SESSION_ROUTE_STATE",SESSION_ROUTE_HANDOFF_ENV="CLAVUE_PAGER_ROUTE_HANDOFF",COMBO_KEYS=new Set(["primaryModel","smallFastModel","subagentModel","planModel","reviewModel","exploreModel","generalModel","guideModel","teamModel"]);__name(isSafeSessionId,"isSafeSessionId");__name(hydrateSessionRouteStateFromEnv,"hydrateSessionRouteStateFromEnv");__name(getSessionProviderProfileId,"getSessionProviderProfileId");__name(clearModelLinePins,"clearModelLinePins");sessionProviderResolver=null;__name(setSessionProviderResolver,"setSessionProviderResolver");__name(ensureSessionProviderPinned,"ensureSessionProviderPinned");__name(clearSessionOverlaysForUnboundProfiles,"clearSessionOverlaysForUnboundProfiles");hydrateSessionRouteStateFromEnv();__name(setSessionModelOverride,"setSessionModelOverride");__name(setSessionEffortOverride,"setSessionEffortOverride");__name(normalizeRoleEffortKey,"normalizeRoleEffortKey");__name(setSessionRoleEffortOverride,"setSessionRoleEffortOverride");__name(setSessionExecutionSpeed,"setSessionExecutionSpeed")}});function normalizeValue2(value){return String(value??"").trim()}function completeProviderRoutingSlotsFromPrimary(rawRouting,baseRouting={}){let presetId=normalizeValue2(rawRouting.presetId||baseRouting.presetId),primaryModel=normalizeValue2(rawRouting.primaryModel)||normalizeValue2(baseRouting.primaryModel),slotFallback=(presetId==="provider_default"||presetId==="custom")&&normalizeValue2(rawRouting.primaryModel).length>0?primaryModel:"",subagentModel=normalizeValue2(rawRouting.subagentModel)||normalizeValue2(baseRouting.subagentModel)||slotFallback,generalModel=normalizeValue2(rawRouting.generalModel)||normalizeValue2(baseRouting.generalModel)||subagentModel,planModel=normalizeValue2(rawRouting.planModel)||normalizeValue2(baseRouting.planModel)||primaryModel,exploreModel=normalizeValue2(rawRouting.exploreModel)||normalizeValue2(baseRouting.exploreModel)||generalModel,teamModel=normalizeValue2(rawRouting.teamModel)||normalizeValue2(baseRouting.teamModel)||generalModel,guideModel=normalizeValue2(rawRouting.guideModel)||normalizeValue2(baseRouting.guideModel)||planModel;return{primaryModel,subagentModel,smallFastModel:normalizeValue2(rawRouting.smallFastModel)||normalizeValue2(baseRouting.smallFastModel)||"",planModel,exploreModel,generalModel,teamModel,guideModel,reviewModel:normalizeValue2(rawRouting.reviewModel)||normalizeValue2(baseRouting.reviewModel)||generalModel}}function inferProviderModelFamily(model){let normalizedModel=normalizeValue2(model).toLowerCase();return normalizedModel?normalizedModel.includes("claude")?"claude":normalizedModel.startsWith("gpt-")||normalizedModel.startsWith("o1")||normalizedModel.startsWith("o3")||normalizedModel.startsWith("o4")||normalizedModel.includes("codex")?"openai":normalizedModel.startsWith("gemini-")?"gemini":normalizedModel.startsWith("grok-")?"grok":normalizedModel.startsWith("deepseek-")?"deepseek":normalizedModel.startsWith("qwen")?"qwen":normalizedModel.startsWith("kimi-")?"kimi":normalizedModel.startsWith("swe-")?"swe":normalizedModel.startsWith("glm-")?"glm":normalizedModel.startsWith("lingsi-")?"lingsi":"unknown":"unknown"}function isAnthropicMessagesCompatibleFamily(family){return family==="claude"||family==="deepseek"||family==="qwen"||family==="kimi"||family==="swe"||family==="glm"||family==="lingsi"}function getProviderModeSlotValues(routing){let primaryModel=normalizeValue2(routing?.primaryModel),executionModel=normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel)||primaryModel,fastModel=normalizeValue2(routing?.smallFastModel)||executionModel||primaryModel,planModel=normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)||primaryModel;return{primaryModel,haikuModel:fastModel||executionModel||primaryModel,sonnetModel:executionModel||primaryModel,opusModel:planModel||primaryModel}}function getProviderModeRawSlotValues(routing){return{primary:normalizeValue2(routing?.primaryModel),haiku:normalizeValue2(routing?.smallFastModel),sonnet:normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel),opus:normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)}}function getConfiguredFamilies(routing){let slotValues=getProviderModeSlotValues(routing);return new Set(Object.values(slotValues).map(model=>inferProviderModelFamily(model)).filter(family=>family!=="unknown"))}function localize(language,english,chinese){return language==="zh"?chinese:english}function isProviderModelModeId(value){return VALID_PROVIDER_MODEL_MODES.has(value)}function getProviderModelModeDefinition(modeId){return PROVIDER_MODEL_MODE_DEFINITIONS[modeId]}function getDefaultProviderModelModeForProviderPreset(providerId){return providerId==="anthropic"||providerId==="glm"||providerId==="minimax"?"anthropic_native":providerId==="kimi"?"openai_native":"hybrid_compatible"}function getProviderModelModeForProfile(profile){let explicitMode=normalizeValue2(profile?.modelMode);if(isProviderModelModeId(explicitMode))return explicitMode;let presetId=normalizeValue2(profile?.modelRouting?.presetId);if(presetId==="claude_code_heritage")return"anthropic_native";if(presetId==="gpt_5_5_max"||presetId==="gpt_5_4_codex"||presetId==="gpt_5_1_stable"||presetId==="gpt_5_3_codex")return"openai_native";let configuredFamilies=getConfiguredFamilies(profile?.modelRouting);return configuredFamilies.size===1?configuredFamilies.has("claude")?"anthropic_native":configuredFamilies.has("openai")?"openai_native":"hybrid_compatible":configuredFamilies.size>1?"hybrid_compatible":getDefaultProviderModelModeForProviderPreset(profile?.providerId)}function getProviderModeSlotDefinition(modeId,slot){return getProviderModelModeDefinition(modeId).slotDefinitions[slot]}function getProviderModeAllowedModels(modeId,slot){return[...getProviderModeSlotDefinition(modeId,slot).allowedModels??[]]}function isProviderModelCompatibleWithMode(modeId,model){let normalizedModel=normalizeValue2(model);if(!normalizedModel)return!1;getProviderModelModeDefinition(modeId);let family=inferProviderModelFamily(normalizedModel);return modeId==="anthropic_native"?isAnthropicMessagesCompatibleFamily(family):modeId==="openai_native"?family==="openai":!0}function getProviderModeAllowedModelsForRole(modeId,role){switch(role){case"primary":return getProviderModeAllowedModels(modeId,"primary");case"subagent":return getProviderModeAllowedModels(modeId,"sonnet");case"fast":return getProviderModeAllowedModels(modeId,"haiku");case"plan":return getProviderModeAllowedModels(modeId,"opus")}}function createDefaultProviderModeSlotValues(modeId){if(modeId==="hybrid_compatible")return{primaryModel:"gpt-5.5",haikuModel:"deepseek-v4-flash",sonnetModel:"deepseek-v4-pro",opusModel:"gpt-5.5"};let definition=getProviderModelModeDefinition(modeId);return{primaryModel:definition.slotDefinitions.primary.defaultModel,haikuModel:definition.slotDefinitions.haiku.defaultModel,sonnetModel:definition.slotDefinitions.sonnet.defaultModel,opusModel:definition.slotDefinitions.opus.defaultModel}}function validateProviderModeRouting(modeId,routing,{language="en",requireExplicitHybridSelections=!1}={}){let definition=getProviderModelModeDefinition(modeId),rawSlotValues=getProviderModeRawSlotValues(routing),issues=[];for(let slot of PROVIDER_MODE_SLOT_ORDER){let model=rawSlotValues[slot],slotDefinition=definition.slotDefinitions[slot],normalizedModel=normalizeValue2(model),allowedModels=slotDefinition.allowedModels??[];if(!normalizedModel){requireExplicitHybridSelections&&slotDefinition.requireExplicitSelection===!0&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required for ${definition.label} mode.`,`${definition.label} \u6A21\u5F0F\u4E0B\u5FC5\u987B\u8BBE\u7F6E${slotDefinition.label}\u3002`)});continue}allowedModels.length>0&&!allowedModels.includes(normalizedModel)&&requireExplicitHybridSelections&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required to be explicitly set for this hybrid selection flow.`,`${slotDefinition.label} \u5728\u6B64\u7279\u6B8A\u6DF7\u5408\u9009\u62E9\u6D41\u7A0B\u4E2D\u9700\u8981\u660E\u786E\u8BBE\u7F6E\u3002`)})}return issues}function filterProviderModeAutoRepairCandidates(modeId,roles,candidates){let definition=getProviderModelModeDefinition(modeId),uniqueCandidates=[...new Set(candidates.map(candidate=>candidate.trim()))].filter(Boolean).filter(candidate=>isProviderModelCompatibleWithMode(modeId,candidate)),allowedSets=roles.map(role=>getProviderModeAllowedModelsForRole(modeId,role)).filter(models=>models.length>0).map(models=>new Set(models));return allowedSets.length===0?uniqueCandidates:uniqueCandidates.filter(candidate=>allowedSets.every(allowedModels=>allowedModels.has(candidate)))}var PROVIDER_MODE_SLOT_ORDER,PROVIDER_MODEL_MODE_DEFINITIONS,VALID_PROVIDER_MODEL_MODES,init_providerModes=__esm({"src/utils/providerModes.ts"(){__name(normalizeValue2,"normalizeValue");__name(completeProviderRoutingSlotsFromPrimary,"completeProviderRoutingSlotsFromPrimary");PROVIDER_MODE_SLOT_ORDER=["primary","haiku","sonnet","opus"];__name(inferProviderModelFamily,"inferProviderModelFamily");__name(isAnthropicMessagesCompatibleFamily,"isAnthropicMessagesCompatibleFamily");__name(getProviderModeSlotValues,"getProviderModeSlotValues");__name(getProviderModeRawSlotValues,"getProviderModeRawSlotValues");__name(getConfiguredFamilies,"getConfiguredFamilies");PROVIDER_MODEL_MODE_DEFINITIONS={anthropic_native:{id:"anthropic_native",label:"Anthropic-native",description:"Claude-family mode. Keep routing on Anthropic-compatible Claude models and validate native tool calling on that family.",providerPresetIds:["anthropic","openrouter","glm","minimax","custom"],routingPresetIds:["claude_code_heritage"],defaultRoutingPresetId:"claude_code_heritage",slotDefinitions:{primary:{label:"\u542F\u52A8\u6A21\u578B",description:"Main session workhorse model for Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},haiku:{label:"\u8F7B\u91CF\u6A21\u578B",description:"Fast-response helper slot for Anthropic-native mode.",placeholder:"claude-haiku-4-5",defaultModel:"claude-haiku-4-5"},sonnet:{label:"\u4E2D\u5EA6\u6A21\u578B",description:"Execution slot for day-to-day coding and subagent work in Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},opus:{label:"\u8BA1\u7B97\u6A21\u578B",description:"Planning and guidance slot for Anthropic-native mode.",placeholder:"claude-opus-4-6",defaultModel:"claude-opus-4-6"}}},openai_native:{id:"openai_native",label:"OpenAI-native",description:"GPT/Codex-family mode. Keep routing on GPT/Codex models and validate the Responses compatibility route on that family.",providerPresetIds:["kimi","openrouter","custom"],routingPresetIds:["gpt_5_5_max","gpt_5_4_codex","gpt_5_1_stable","gpt_5_3_codex"],defaultRoutingPresetId:"gpt_5_5_max",slotDefinitions:{primary:{label:"\u542F\u52A8\u6A21\u578B",description:"Main session workhorse model for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]},haiku:{label:"\u8F7B\u91CF\u6A21\u578B",description:"Fast-response helper slot for OpenAI-native mode.",placeholder:"gpt-5.3-codex",defaultModel:"gpt-5.3-codex",recommendedModels:["gpt-5.3-codex","gpt-5.4","gpt-5.1"]},sonnet:{label:"\u4E2D\u5EA6\u6A21\u578B",description:"Execution slot for day-to-day coding and subagent work in OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.3-codex","gpt-5.4","gpt-5.1"]},opus:{label:"\u8BA1\u7B97\u6A21\u578B",description:"Planning and guidance slot for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]}}},hybrid_compatible:{id:"hybrid_compatible",label:"Hybrid-compatible",description:"Mixed-family mode. Supports all major model families via custom/OpenAI-compatible gateways (gpt-5.*, claude-*, gemini-*, grok-*, kimi-*, swe-*, glm-*, lingsi-* etc.). Model names are matched by prefix for maximum flexibility with user-managed endpoints.",providerPresetIds:["custom","openrouter"],routingPresetIds:["custom","gpt55_deepseek_combo","deepseek_gpt_combo","grok_current"],defaultRoutingPresetId:"gpt55_deepseek_combo",slotDefinitions:{primary:{label:"\u542F\u52A8\u6A21\u578B",description:"Main session slot. For custom providers: accepts any model string (gpt-5.*, claude-*, gemini-*, grok-* etc.). Prefix matching is used for routing.",placeholder:"gemini-3-5-flash-high",defaultModel:"gpt-5.5",requireExplicitSelection:!1},haiku:{label:"\u8F7B\u91CF\u6A21\u578B",description:"Fast helper slot. For custom providers: any fast model via prefix (e.g. gpt-5.3-*, gemini-3-5-flash, claude-haiku-*)",placeholder:"gemini-3-5-flash",defaultModel:"gpt-5.3-codex",requireExplicitSelection:!1},sonnet:{label:"\u4E2D\u5EA6\u6A21\u578B",description:"Execution slot. For custom providers: any strong model via prefix matching (gpt-5.5-*, claude-sonnet-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-sonnet-4-6",requireExplicitSelection:!1},opus:{label:"\u8BA1\u7B97\u6A21\u578B",description:"Planning slot. For custom providers: any top-tier model via prefix (gpt-5.5-*, claude-opus-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-opus-4-6",requireExplicitSelection:!1}}}},VALID_PROVIDER_MODEL_MODES=new Set(Object.keys(PROVIDER_MODEL_MODE_DEFINITIONS));__name(localize,"localize");__name(isProviderModelModeId,"isProviderModelModeId");__name(getProviderModelModeDefinition,"getProviderModelModeDefinition");__name(getDefaultProviderModelModeForProviderPreset,"getDefaultProviderModelModeForProviderPreset");__name(getProviderModelModeForProfile,"getProviderModelModeForProfile");__name(getProviderModeSlotDefinition,"getProviderModeSlotDefinition");__name(getProviderModeAllowedModels,"getProviderModeAllowedModels");__name(isProviderModelCompatibleWithMode,"isProviderModelCompatibleWithMode");__name(getProviderModeAllowedModelsForRole,"getProviderModeAllowedModelsForRole");__name(createDefaultProviderModeSlotValues,"createDefaultProviderModeSlotValues");__name(validateProviderModeRouting,"validateProviderModeRouting");__name(filterProviderModeAutoRepairCandidates,"filterProviderModeAutoRepairCandidates")}});function normalizeValue3(value){return String(value||"").trim()}function getConfiguredFamilies2(routing){let models=[routing?.primaryModel,routing?.subagentModel,routing?.smallFastModel,routing?.planModel,routing?.exploreModel,routing?.generalModel,routing?.teamModel,routing?.guideModel];return new Set(models.map(model=>inferProviderModelFamily(model)).filter(family=>family!=="unknown"))}function getConfiguredStrategyId(profile){let strategyId=normalizeValue3(profile?.modelRouting?.presetId);return strategyId==="provider_default"||strategyId==="claude_code_heritage"||strategyId==="gpt_5_5_max"||strategyId==="gpt_5_4_codex"||strategyId==="gpt_5_1_stable"||strategyId==="gpt_5_3_codex"||strategyId==="gpt55_deepseek_combo"||strategyId==="deepseek_gpt_combo"||strategyId==="custom"?strategyId:"unknown"}function inferProviderExperienceFamily(profile){return getProviderModelModeForProfile(profile)}function isGptFamilyModel(model){let normalized=String(model??"").trim().toLowerCase();return!normalized||normalized.includes("codex")?!1:/^gpt-5(?:[.-]|$)/.test(normalized)||/^gpt-6(?:[.-]|$)/.test(normalized)}function getHomogeneousSlotPerformanceWarning(profile,{language="en"}={}){let routing=profile?.modelRouting;if(!routing)return null;let slotValues=getProviderModeSlotValues(routing),configuredModels=[routing.primaryModel,routing.smallFastModel,slotValues.haikuModel,slotValues.sonnetModel,slotValues.opusModel].map(value=>String(value??"").trim()).filter(Boolean);if(configuredModels.length===0)return null;let uniqueModels=[...new Set(configuredModels)];if(uniqueModels.length!==1||!isGptFamilyModel(uniqueModels[0]))return null;let model=uniqueModels[0];return language==="zh"?`[WARN] \u6240\u6709 provider \u69FD\u4F4D\u5F53\u524D\u90FD\u8DEF\u7531\u5230 ${model}\u3002\u5206\u7C7B\u5668\u3001\u538B\u7F29\u548C\u5B50\u4EE3\u7406\u65E0\u6CD5\u4F7F\u7528\u66F4\u5FEB\u6A21\u578B\uFF1B\u5982\u9700\u63D0\u901F\u8BF7\u901A\u8FC7 /provider \u914D\u7F6E\u4E0D\u540C\u69FD\u4F4D\uFF0C\u6216\u7528 /effort \u663E\u5F0F\u9009\u62E9\u63A8\u7406\u7B49\u7EA7\u3002Clavue \u4E0D\u4F1A\u81EA\u52A8\u8986\u76D6\u4F60\u7684 effort \u8BBE\u7F6E\u3002`:`[WARN] Every provider slot currently routes to ${model}. Classifiers, compaction, and subagents cannot use a faster model. Reconfigure slots via /provider or choose an explicit effort tier with /effort. Clavue will not override your effort settings automatically.`}function getProviderLocalValidationWarnings(profile,{language="en"}={}){if(!profile)return[];let modeId=inferProviderExperienceFamily(profile),strategyId=getConfiguredStrategyId(profile),configuredFamilies=getConfiguredFamilies2(profile.modelRouting),warnings=validateProviderModeRouting(modeId,profile.modelRouting,{language,requireExplicitHybridSelections:!1}).filter(issue2=>issue2.level==="warn"||issue2.level==="error").map(issue2=>`[WARN] ${issue2.message}`);strategyId==="claude_code_heritage"&&configuredFamilies.has("openai")&&warnings.push(language==="zh"?"[WARN] Anthropic-native heritage \u8DEF\u7531\u5E94\u4F18\u5148\u4FDD\u6301\u5728 Claude family \u5185\u3002\u82E5\u8981\u5207\u6362\u5230 GPT family\uFF0C\u8BF7\u6539\u7528 OpenAI-native \u7B56\u7565\u3002":"[WARN] Anthropic-native heritage routing should stay in the Claude family. Switch to an OpenAI-native strategy if the GPT family is intentional."),(strategyId==="gpt_5_4_codex"||strategyId==="gpt_5_1_stable"||strategyId==="gpt_5_3_codex")&&configuredFamilies.has("claude")&&warnings.push(language==="zh"?"[WARN] OpenAI-native \u8DEF\u7531\u7B56\u7565\u5F53\u524D\u6DF7\u5165\u4E86 Claude family \u6A21\u578B\u3002\u82E5\u8FD9\u662F\u6709\u610F\u884C\u4E3A\uFF0C\u8BF7\u6539\u7528 Custom routing\u3002":"[WARN] The OpenAI-native routing strategy is mixed with Claude-family models. Use Custom routing if this blend is intentional."),strategyId==="custom"&&configuredFamilies.size>1&&warnings.push(language==="zh"?"[WARN] Custom routing \u5F53\u524D\u8DE8\u8D8A\u591A\u4E2A model family\u3002\u8BF7\u5728\u4F9D\u8D56\u539F\u751F\u5DE5\u4F5C\u6D41\u524D\u91CD\u65B0\u9A8C\u8BC1\u8FD9\u6761\u8DEF\u7531\u3002":"[WARN] Custom routing spans multiple model families. Revalidate the route before relying on native workflows."),normalizeValue3(profile.providerId)==="anthropic"&&modeId==="openai_native"&&warnings.push(language==="zh"?"[WARN] \u5F53\u524D\u4F7F\u7528\u5B98\u65B9 Anthropic preset\uFF0C\u4F46\u8DEF\u7531\u7B56\u7565\u662F OpenAI-native\u3002\u8FD9\u901A\u5E38\u610F\u5473\u7740 provider preset \u4E0E\u6A21\u578B\u5BB6\u65CF\u610F\u56FE\u4E0D\u4E00\u81F4\u3002":"[WARN] The official Anthropic preset is paired with an OpenAI-native routing strategy. This usually means the provider preset and model-family intent are misaligned.");let homogeneousSlotWarning=getHomogeneousSlotPerformanceWarning(profile,{language});return homogeneousSlotWarning&&warnings.push(homogeneousSlotWarning),warnings}var CURRENT_PROVIDER_PROFILE_ID,init_providerProfileMetadata=__esm({"src/utils/providerProfileMetadata.ts"(){init_providerModes();CURRENT_PROVIDER_PROFILE_ID="__current_provider__";__name(normalizeValue3,"normalizeValue");__name(getConfiguredFamilies2,"getConfiguredFamilies");__name(getConfiguredStrategyId,"getConfiguredStrategyId");__name(inferProviderExperienceFamily,"inferProviderExperienceFamily");__name(isGptFamilyModel,"isGptFamilyModel");__name(getHomogeneousSlotPerformanceWarning,"getHomogeneousSlotPerformanceWarning");__name(getProviderLocalValidationWarnings,"getProviderLocalValidationWarnings")}});function isPlaceholderProviderCredential(value){let normalizedValue=value.trim().toLowerCase();return normalizedValue?PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES.has(normalizedValue)?!0:/^your[-_\s]?[a-z0-9_-]*(api[-_\s]?key|auth[-_\s]?token|key|token)[a-z0-9_-]*$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?your[-_a-z0-9]*here$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?(test|example|placeholder|dummy|fake)$/iu.test(normalizedValue)||/^(test|example|placeholder|dummy|fake)[-_]?(api[-_]?key|auth[-_]?token|token)$/iu.test(normalizedValue):!1}var PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES,init_providerCredentials=__esm({"src/utils/providerCredentials.ts"(){PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES=new Set(["your_api_key","your-api-key","your_api_key_here","your-api-key-here","your_key","your-key","your_key_here","your-key-here","your api key","your api key here","your key","your key here","your_token","your-token","your_token_here","your-token-here","your auth token","your auth token here","api_key","api-key","api_key_here","api-key-here","auth_token","auth-token","auth_token_here","auth-token-here","token_here","token-here","placeholder","<api_key>","<api-key>","<your_api_key>","<your-api-key>","<token>","<your_token>","<your-token>"]);__name(isPlaceholderProviderCredential,"isPlaceholderProviderCredential")}});function normalizeProviderBaseUrl(value){let trimmedValue=String(value??"").trim();return trimmedValue?trimmedValue.replace(/\/v1(?:\/messages|\/responses)?\/?$/i,"").replace(/\/+$/,""):""}function extractRawProviderHost(value){let match=String(value).trim().match(/^(?:https?:\/\/)?([^/:?#\s]+)/i);return String(match?.[1]??"").trim().toLowerCase().replace(/^\[|\]$/g,"")}function isValidIpv4Host(host){return/^\d{1,3}(?:\.\d{1,3}){3}$/.test(host)?host.split(".").every(part=>{let n2=Number(part);return Number.isInteger(n2)&&n2>=0&&n2<=255}):!1}function validateProviderBaseUrl(value){let normalized=normalizeProviderBaseUrl(value);if(!normalized)return{ok:!1,normalized:"",error:"Provider base URL is required (e.g. https://api.example.com)."};if(/^[a-z][a-z0-9+.-]*:\/\//i.test(normalized)&&!/^https?:\/\//i.test(normalized))return{ok:!1,normalized,error:`Provider base URL must use http or https (got ${normalized.split("://")[0]}://).`};if(!/^https?:\/\//i.test(normalized)){let bareHost=extractRawProviderHost(normalized);if(!bareHost.includes(".")&&bareHost!=="localhost"&&!isValidIpv4Host(bareHost))return{ok:!1,normalized,error:"API URL must start with http:// or https://, or be a full domain (e.g. api.example.com)."};normalized=`https://${normalized}`}let rawHost=extractRawProviderHost(normalized);if(!rawHost)return{ok:!1,normalized,error:"Provider base URL is missing a hostname."};if(/^\d+$/.test(rawHost))return{ok:!1,normalized,error:`Provider base URL host looks truncated (${rawHost}). Use a full hostname or IPv4 address.`};if(/^\d+(?:\.\d+){1,2}$/.test(rawHost))return{ok:!1,normalized,error:`Provider base URL host looks like an incomplete IP (${rawHost}).`};let parsed;try{parsed=new URL(normalized)}catch{return{ok:!1,normalized,error:`Invalid provider base URL: ${normalized}`}}if(parsed.protocol!=="http:"&&parsed.protocol!=="https:")return{ok:!1,normalized,error:`Provider base URL must use http or https (got ${parsed.protocol}).`};let host=String(parsed.hostname||"").trim().toLowerCase();return host?isValidIpv4Host(rawHost)||isValidIpv4Host(host)?{ok:!0,normalized}:host==="localhost"||host==="::1"||rawHost==="localhost"?{ok:!0,normalized}:!/[a-z]/i.test(rawHost)||rawHost.length<2?{ok:!1,normalized,error:`Provider base URL host is not a valid hostname (${rawHost}).`}:rawHost.startsWith(".")||rawHost.endsWith(".")||rawHost.includes("..")?{ok:!1,normalized,error:`Provider base URL host is malformed (${rawHost}).`}:{ok:!0,normalized}:{ok:!1,normalized,error:"Provider base URL is missing a hostname."}}function assertValidProviderBaseUrl(value){let result2=validateProviderBaseUrl(value);if(!result2.ok)throw new Error(result2.error||"Invalid provider base URL.");return result2.normalized}var init_providerRuntimeCore=__esm({"src/utils/providerRuntimeCore.ts"(){__name(normalizeProviderBaseUrl,"normalizeProviderBaseUrl");__name(extractRawProviderHost,"extractRawProviderHost");__name(isValidIpv4Host,"isValidIpv4Host");__name(validateProviderBaseUrl,"validateProviderBaseUrl");__name(assertValidProviderBaseUrl,"assertValidProviderBaseUrl")}});function applyModelSlot(profile,model,slot,dependencies){if(!model)return;let prefix=`ANTHROPIC_DEFAULT_${slot.toUpperCase()}_MODEL`;process.env[prefix]=model;let name=dependencies.getModelDisplayName(model,slot),description=dependencies.getModelDescription(model,slot);name&&(process.env[`${prefix}_NAME`]=name),description&&(process.env[`${prefix}_DESCRIPTION`]=description);let capabilities=dependencies.serializeCapabilities(profile,model);capabilities&&(process.env[`${prefix}_SUPPORTED_CAPABILITIES`]=capabilities)}function applyProviderProfileToProcessEnv(profile,dependencies){for(let key of providerEnvKeys)delete process.env[key];if(dependencies.clearCaches(),!profile)return;let baseUrlValidation=dependencies.validateBaseUrl(profile.baseUrl);if(!baseUrlValidation.ok)throw new Error(baseUrlValidation.error||"Invalid provider base URL \u2014 refusing to apply route.");process.env.ANTHROPIC_BASE_URL=baseUrlValidation.normalized,process.env.CLAVUE_API_DIALECT=dependencies.normalizeDialect(profile),profile.authType==="auth_token"?process.env.ANTHROPIC_AUTH_TOKEN=profile.credential:process.env.ANTHROPIC_API_KEY=profile.credential;let routing=profile.modelRouting;if(routing.primaryModel){process.env.ANTHROPIC_MODEL=routing.primaryModel,process.env.ANTHROPIC_CUSTOM_MODEL_OPTION=routing.primaryModel;let name=dependencies.getModelDisplayName(routing.primaryModel,"primary"),description=dependencies.getModelDescription(routing.primaryModel,"primary");name&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_NAME=name),description&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION=description)}routing.smallFastModel&&(process.env.ANTHROPIC_SMALL_FAST_MODEL=routing.smallFastModel),routing.subagentModel&&routing.subagentModel!=="inherit"&&(process.env.CLAUDE_CODE_SUBAGENT_MODEL=routing.subagentModel);let slots=dependencies.getSlotDefaults(routing);applyModelSlot(profile,slots.opusModel,"opus",dependencies),applyModelSlot(profile,slots.sonnetModel,"sonnet",dependencies),applyModelSlot(profile,slots.haikuModel,"haiku",dependencies)}var providerEnvKeys,init_providerProfileProcessEnv=__esm({"src/utils/providerProfileProcessEnv.ts"(){providerEnvKeys=["ANTHROPIC_API_KEY","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_BASE_URL","ANTHROPIC_MODEL","ANTHROPIC_SMALL_FAST_MODEL","ANTHROPIC_CUSTOM_MODEL_OPTION","ANTHROPIC_CUSTOM_MODEL_OPTION_NAME","ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_OPUS_MODEL_NAME","ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION","ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL_NAME","ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION","ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES","ANTHROPIC_DEFAULT_HAIKU_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME","ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION","ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES","CLAUDE_CODE_SUBAGENT_MODEL","CLAVUE_API_DIALECT","MYCLAUDE_API_DIALECT","CLAUDE_CODE_API_DIALECT","CLAUDE_CODE_PROVIDER_DIALECT","CLAUDE_CODE_USE_BEDROCK","CLAUDE_CODE_USE_VERTEX","CLAUDE_CODE_USE_FOUNDRY"];__name(applyModelSlot,"applyModelSlot");__name(applyProviderProfileToProcessEnv,"applyProviderProfileToProcessEnv")}});function slotFields(slot){switch(slot){case"primary":return["primaryModel"];case"haiku":return["smallFastModel"];case"sonnet":return["subagentModel","generalModel","exploreModel","teamModel"];case"opus":return["planModel","guideModel"]}}function modeSlotCurrentModel(routing,slot){for(let field of slotFields(slot)){let value=String(routing[field]??"").trim();if(value)return value}return""}function appendEmptyHybridModeSlotIssues(issues,routing){for(let slot of["primary","haiku","sonnet","opus"])!issues.some(issue2=>issue2.slot===slot)&&!modeSlotCurrentModel(routing,slot)&&issues.push({level:"error",slot,message:`\u6DF7\u5408\u7EC4\u5408\u7684 ${slot} \u69FD\u4F4D\u4E3A\u7A7A\u3002`})}function fillEmptySlotFromPrimary(routing,slot,fallbackModel){let model=fallbackModel.trim();if(!model)return routing;let next={...routing};for(let field of slotFields(slot))String(next[field]??"").trim()||(next[field]=model);return next}function repairProviderRoutingSlots(routing,issues,defaultPrimary){let next={...routing},repaired=!1,messages=[],primary=routing.primaryModel.trim();for(let issue2 of issues){if(!issue2.slot){messages.push(issue2.message);continue}let current=modeSlotCurrentModel(routing,issue2.slot);if(current){messages.push(`[WARN] ${issue2.message}\uFF08\u4FDD\u7559\u5F53\u524D ${issue2.slot} = ${current}\uFF0C\u672A\u5F3A\u5236\u5207\u6362\u7EC4\u5408\uFF09`);continue}if(issue2.slot==="primary"){if(!defaultPrimary){messages.push(`[ERROR] ${issue2.message}\uFF1B\u4E3B\u6A21\u578B\u4E3A\u7A7A\u4E14\u65E0\u53EF\u7528\u9ED8\u8BA4\u503C\uFF0C\u8BF7\u7528\u6237\u81EA\u884C\u8BBE\u7F6E\u3002`);continue}next={...next,primaryModel:defaultPrimary},repaired=!0,messages.push(`[REPAIRED] primary \u5DF2\u586B\u5165 ${defaultPrimary}\uFF08\u4EC5\u8865\u4E3B\u6A21\u578B\uFF0C\u672A\u5207\u6362\u6574\u5957\u7EC4\u5408\uFF09`);continue}let fallback=primary||next.primaryModel.trim();if(!fallback){messages.push(`[ERROR] ${issue2.message}\uFF1B\u4E3B\u6A21\u578B\u4E0D\u53EF\u7528\uFF0C\u65E0\u6CD5\u5BF9 ${issue2.slot} \u505A\u7EC4\u5408\u5185\u515C\u5E95\uFF0C\u8BF7\u7528\u6237\u81EA\u884C\u5904\u7406\u3002`);continue}let before2=modeSlotCurrentModel(next,issue2.slot);next=fillEmptySlotFromPrimary(next,issue2.slot,fallback),modeSlotCurrentModel(next,issue2.slot)!==before2&&(repaired=!0,messages.push(`[REPAIRED] ${issue2.slot} \u7A7A\u69FD\u4F4D\u5DF2\u515C\u5E95\u5230\u4E3B\u6A21\u578B ${fallback}\uFF08\u7EC4\u5408\u914D\u7F6E\u672A\u6574\u4F53\u5207\u6362\uFF09`))}return{routing:next,repaired,messages}}var init_providerRoutingRepair=__esm({"src/utils/providerRoutingRepair.ts"(){__name(slotFields,"slotFields");__name(modeSlotCurrentModel,"modeSlotCurrentModel");__name(appendEmptyHybridModeSlotIssues,"appendEmptyHybridModeSlotIssues");__name(fillEmptySlotFromPrimary,"fillEmptySlotFromPrimary");__name(repairProviderRoutingSlots,"repairProviderRoutingSlots")}});function getRequestUrl(input){try{return input instanceof Request?new URL(input.url):new URL(String(input))}catch{return null}}function isOpenAIChatCompletionsModel(model){let m2=String(model??"").trim().toLowerCase();return m2?!!(m2.startsWith("gpt-image-")||m2.startsWith("gemini-")||m2.includes("gemini")||m2.startsWith("grok-")||m2.includes("grok")||m2.startsWith("deepseek-")||m2.includes("deepseek")||m2.startsWith("minimax")||m2.includes("minimax")||m2.startsWith("kimi")||m2.includes("kimi")||m2.startsWith("qwen")||m2.includes("qwen")||/^glm(?:[-_.]|$)/i.test(m2)||/(?:^|[^a-z])glm(?:[-_.\d]|$)/i.test(m2)||m2==="auto"||m2.startsWith("clavue")):!1}function getUpstreamApiPathForTransport(_model,transport){switch(transport){case"openai_chat_completions":return OPENAI_CHAT_COMPLETIONS_PATH;case"openai_responses":return OPENAI_RESPONSES_PATH;default:return ANTHROPIC_MESSAGES_PATH}}function normalizePathname(path10){let trimmed=String(path10??"").trim();if(!trimmed)return trimmed;if(trimmed.startsWith("http://")||trimmed.startsWith("https://"))try{return new URL(trimmed).pathname||trimmed}catch{return trimmed}return trimmed.startsWith("/")?trimmed:`/${trimmed}`}function isGptResponsesPrimaryModel(model){let m2=String(model??"").trim().toLowerCase();return!m2||m2.startsWith("gpt-image-")?!1:!!(m2.includes("gpt-5")||/^gpt-5(?:[.-]|$)/.test(m2)||m2.startsWith("codex-")||/(^|[^a-z])codex(?:[-_.]|$)/.test(m2))}function isOpenAIResponsesPath(path10){let p=String(path10??"");return p===OPENAI_RESPONSES_PATH||p.endsWith("/responses")||/\/v1\/responses\/?$/i.test(p)}function toChatCompletionsUrl(upstreamUrl){let u2=new URL(upstreamUrl),path10=u2.pathname||"";return/\/responses\/?$/i.test(path10)?u2.pathname=path10.replace(/\/responses\/?$/i,"/chat/completions"):path10.endsWith(OPENAI_RESPONSES_PATH)?u2.pathname=path10.slice(0,-OPENAI_RESPONSES_PATH.length)+OPENAI_CHAT_COMPLETIONS_PATH:u2.pathname=OPENAI_CHAT_COMPLETIONS_PATH,u2.toString()}function canRescueResponsesToChatCompletions(model){if(isGptResponsesPrimaryModel(model)||isOpenAIChatCompletionsModel(model))return!0;let m2=String(model??"").trim().toLowerCase();return m2==="auto"||m2.startsWith("clavue")}function shouldFallbackGptResponsesToChatCompletions(input){if(!isOpenAIResponsesPath(input.upstreamPath)||!canRescueResponsesToChatCompletions(input.model))return!1;let status=Number(input.status)||0;if(status===404||status===405||status===501||status===502||status===503||status===504||status>=500)return!0;if(status===400||status===422||status===403){let t2=String(input.errorBody??"").toLowerCase();return t2?t2.includes("/v1/responses")||t2.includes("responses")||t2.includes("not found")||t2.includes("not supported")||t2.includes("unsupported")||t2.includes("unknown path")||t2.includes("no route")||t2.includes("invalid url")||t2.includes("endpoint")||t2.includes("does not exist")||t2.includes("method not allowed"):!1}return!1}function inferTransportFromUpstreamPath(path10){let pathname=normalizePathname(String(path10??""));return pathname?pathname===OPENAI_CHAT_COMPLETIONS_PATH||pathname.endsWith("/chat/completions")?"openai_chat_completions":pathname===OPENAI_RESPONSES_PATH||pathname.endsWith("/responses")?"openai_responses":pathname===ANTHROPIC_MESSAGES_PATH||pathname.endsWith("/messages")?"anthropic_messages":null:null}function resolveUpstreamRequestRoute(input){let override=String(input.upstreamPathOverride??"").trim();if(override){let path11=normalizePathname(override),transport=inferTransportFromUpstreamPath(path11)??input.transport;return{transport,path:path11,requestShape:transport,reason:`Fusion/endpoint path override \u2192 ${path11} (${transport})`}}let path10=getUpstreamApiPathForTransport(input.model,input.transport);return{transport:input.transport,path:path10,requestShape:input.transport,reason:input.transportReason?.trim()||`transport=${input.transport} \u2192 ${path10}`}}var OPENAI_RESPONSES_PATH,OPENAI_CHAT_COMPLETIONS_PATH,ANTHROPIC_MESSAGES_PATH,init_paths=__esm({"src/services/api/responsesAdapter/paths.ts"(){OPENAI_RESPONSES_PATH="/v1/responses",OPENAI_CHAT_COMPLETIONS_PATH="/v1/chat/completions",ANTHROPIC_MESSAGES_PATH="/v1/messages";__name(getRequestUrl,"getRequestUrl");__name(isOpenAIChatCompletionsModel,"isOpenAIChatCompletionsModel");__name(getUpstreamApiPathForTransport,"getUpstreamApiPathForTransport");__name(normalizePathname,"normalizePathname");__name(isGptResponsesPrimaryModel,"isGptResponsesPrimaryModel");__name(isOpenAIResponsesPath,"isOpenAIResponsesPath");__name(toChatCompletionsUrl,"toChatCompletionsUrl");__name(canRescueResponsesToChatCompletions,"canRescueResponsesToChatCompletions");__name(shouldFallbackGptResponsesToChatCompletions,"shouldFallbackGptResponsesToChatCompletions");__name(inferTransportFromUpstreamPath,"inferTransportFromUpstreamPath");__name(resolveUpstreamRequestRoute,"resolveUpstreamRequestRoute")}});var ENTER_PLAN_MODE_TOOL_NAME,init_constants6=__esm({"src/tools/EnterPlanModeTool/constants.ts"(){ENTER_PLAN_MODE_TOOL_NAME="EnterPlanMode"}});var SEND_MESSAGE_TOOL_NAME,init_constants7=__esm({"src/tools/SendMessageTool/constants.ts"(){SEND_MESSAGE_TOOL_NAME="SendMessage"}});var TASK_CREATE_TOOL_NAME,init_constants8=__esm({"src/tools/TaskCreateTool/constants.ts"(){TASK_CREATE_TOOL_NAME="TaskCreate"}});var TASK_GET_TOOL_NAME,init_constants9=__esm({"src/tools/TaskGetTool/constants.ts"(){TASK_GET_TOOL_NAME="TaskGet"}});var TASK_LIST_TOOL_NAME,init_constants10=__esm({"src/tools/TaskListTool/constants.ts"(){TASK_LIST_TOOL_NAME="TaskList"}});var TASK_UPDATE_TOOL_NAME,init_constants11=__esm({"src/tools/TaskUpdateTool/constants.ts"(){TASK_UPDATE_TOOL_NAME="TaskUpdate"}});var TEAM_CREATE_TOOL_NAME,init_constants12=__esm({"src/tools/TeamCreateTool/constants.ts"(){TEAM_CREATE_TOOL_NAME="TeamCreate"}});var TEAM_DELETE_TOOL_NAME,init_constants13=__esm({"src/tools/TeamDeleteTool/constants.ts"(){TEAM_DELETE_TOOL_NAME="TeamDelete"}});var TODO_WRITE_TOOL_NAME,init_constants14=__esm({"src/tools/TodoWriteTool/constants.ts"(){TODO_WRITE_TOOL_NAME="TodoWrite"}});function membershipAuthUrl(path10){let base=MEMBERSHIP_DEFAULT_API_BASE.replace(/\/+$/,""),p=path10.startsWith("/")?path10:`/${path10}`;return`${base}${p}`}function isMembershipProductModel(model){let m2=String(model??"").trim().toLowerCase();return m2?MEMBERSHIP_PRODUCT_MODELS.includes(m2):!1}function isClavueCloudMembershipBaseUrl(baseUrl){let raw=String(baseUrl??"").trim();if(!raw)return!1;let hostnameOf=__name(value=>{try{let withScheme=/:\/\//.test(value)?value:`https://${value}`;return new URL(withScheme).hostname.toLowerCase()}catch{return null}},"hostnameOf"),host=hostnameOf(raw);if(!host)return/api\.clavue\.com/i.test(raw);if(host==="api.clavue.com"||host.endsWith(".api.clavue.com"))return!0;let configuredHost=hostnameOf(MEMBERSHIP_DEFAULT_API_BASE);return!!(configuredHost&&host===configuredHost)}function isClavueCloudProfileRouteId(routeId){let id=String(routeId??"").trim().toLowerCase();return id?id===MEMBERSHIP_CLOUD_PROFILE_ID||id.startsWith(`${MEMBERSHIP_CLOUD_PROFILE_ID}:`):!1}var MEMBERSHIP_DEFAULT_API_BASE,MEMBERSHIP_WEB_ORIGIN,MEMBERSHIP_CLOUD_PROFILE_ID,MEMBERSHIP_CLOUD_PROFILE_NAME,MEMBERSHIP_OPENAI_BASE_URL,MEMBERSHIP_PRODUCT_MODELS,MEMBERSHIP_DEFAULT_PRIMARY_MODEL,MEMBERSHIP_DEFAULT_FAST_MODEL,MEMBERSHIP_DEFAULT_PLAN_MODEL,MEMBERSHIP_DEFAULT_REVIEW_MODEL,MEMBERSHIP_CLIENT_ID,init_config=__esm({"src/services/membership/config.ts"(){MEMBERSHIP_DEFAULT_API_BASE=process.env.CLAVUE_MEMBERSHIP_API_BASE?.trim()||process.env.IMUX_MEMBERSHIP_API_BASE?.trim()||"https://api.clavue.com",MEMBERSHIP_WEB_ORIGIN=process.env.CLAVUE_MEMBERSHIP_WEB_ORIGIN?.trim()||process.env.IMUX_APP_URL?.trim()||"https://www.clavue.com",MEMBERSHIP_CLOUD_PROFILE_ID="clavue-cloud",MEMBERSHIP_CLOUD_PROFILE_NAME="Clavue Cloud",MEMBERSHIP_OPENAI_BASE_URL=MEMBERSHIP_DEFAULT_API_BASE,MEMBERSHIP_PRODUCT_MODELS=["auto","clavue","clavue-2.1","clavue-2.1-fast","clavue-2.1-pro","clavue-2.1-rev"],MEMBERSHIP_DEFAULT_PRIMARY_MODEL="auto",MEMBERSHIP_DEFAULT_FAST_MODEL="clavue-2.1-fast",MEMBERSHIP_DEFAULT_PLAN_MODEL="clavue-2.1-pro",MEMBERSHIP_DEFAULT_REVIEW_MODEL="clavue-2.1-rev",MEMBERSHIP_CLIENT_ID="clavue-cli";__name(membershipAuthUrl,"membershipAuthUrl");__name(isMembershipProductModel,"isMembershipProductModel");__name(isClavueCloudMembershipBaseUrl,"isClavueCloudMembershipBaseUrl");__name(isClavueCloudProfileRouteId,"isClavueCloudProfileRouteId")}});function normalizeDialectMode(value){let normalized=String(value??"").trim().toLowerCase();return normalized==="openai"||normalized==="responses"||normalized==="openai_responses"?"openai_responses":"anthropic"}function getConfiguredApiDialectMode(){return normalizeDialectMode(process.env.CLAVUE_API_DIALECT??process.env.MYCLAUDE_API_DIALECT??process.env.CLAUDE_CODE_API_DIALECT??process.env.CLAUDE_CODE_PROVIDER_DIALECT)}function getModelTransportPreference(model){let normalizedModel=String(model??"").trim().toLowerCase();if(!normalizedModel)return"unknown";for(let rule of MODEL_TRANSPORT_PREFERENCE_RULES)if(rule.patterns.some(pattern=>pattern.test(normalizedModel)))return rule.preference;return"unknown"}function supportsOpenAIResponsesAdapterModel(model){return getModelTransportPreference(model)==="openai_responses"}var MODEL_TRANSPORT_PREFERENCE_RULES,init_openaiResponsesConfig=__esm({"src/utils/model/openaiResponsesConfig.ts"(){MODEL_TRANSPORT_PREFERENCE_RULES=[{preference:"anthropic_messages",patterns:[/^lingsi-/,/^swe-/]},{preference:"openai_chat_completions",patterns:[/^gpt-image-/]},{preference:"openai_responses",patterns:[/^gpt-\d+(?:[.-]\d+)*(?:$|[-_.])/,/^codex-/,/codex/]},{preference:"openai_chat_completions",patterns:[/^deepseek-/,/deepseek/,/^gemini-/,/^grok-/,/grok/,/^minimax/i,/minimax/i,/^glm[-_.]?\d/i,/^glm-/i,/^kimi/i,/^qwen/i,/qwen/,/^auto$/,/^clavue(?:-|$)/]}];__name(normalizeDialectMode,"normalizeDialectMode");__name(getConfiguredApiDialectMode,"getConfiguredApiDialectMode");__name(getModelTransportPreference,"getModelTransportPreference");__name(supportsOpenAIResponsesAdapterModel,"supportsOpenAIResponsesAdapterModel")}});function defaultsToAnthropicMessagesModel(model){return getModelTransportPreference(model??void 0)==="anthropic_messages"}function isGatewayGpt5PreferMessagesModel(model){let normalized=String(model??"").trim().toLowerCase();return!normalized.startsWith("gpt-5")||normalized.includes("5.5")||normalized.includes("5.6")||normalized.includes("5.7")?!1:!normalized.includes("codex")}function getModelFamily(model){if(!model)return"other";let m2=model.toLowerCase().trim();return m2.includes("claude")?"claude":m2.includes("gemini")?"gemini":m2.includes("grok")?"grok":m2.includes("deepseek")?"deepseek":m2.includes("minimax")?"minimax":m2.includes("glm")?"glm":m2.includes("kimi")?"kimi":m2.includes("qwen")?"qwen":m2.startsWith("gpt-image-")?"other":m2.includes("gpt")||m2.includes("codex")||m2.includes("o1")||m2.includes("o3")||m2.includes("o4")?"openai":"other"}function isOpenAICompatibleChatFamily(model){let normalized=String(model??"").trim().toLowerCase();if(!normalized)return!1;if(normalized.startsWith("gpt-image-")||normalized==="auto"||normalized.startsWith("clavue")||getModelTransportPreference(normalized)==="openai_chat_completions")return!0;let family=getModelFamily(model);return family==="deepseek"||family==="gemini"||family==="grok"||family==="minimax"||family==="glm"||family==="kimi"||family==="qwen"||modelFamilyIsDeepSeek(String(model??""))}function getFamilyShaping(model,runtimeProviderKind){let family=getModelFamily(model);return family==="claude"?"claude":family==="openai"?"gpt_codex":runtimeProviderKind!=="first_party"?"provider_native":"generic"}function getReasoningDiscipline(qualityTier,familyShaping,model){return qualityTier==="blocked"||qualityTier==="chat_only"||qualityTier==="degraded"?{planDiscipline:"required",verificationDiscipline:"required",recoveryMode:"strict"}:familyShaping==="gpt_codex"||modelFamilyIsDeepSeek(model)?{planDiscipline:"optional",verificationDiscipline:"required",recoveryMode:"normal"}:{planDiscipline:"optional",verificationDiscipline:"recommended",recoveryMode:"normal"}}function resolveCodingRoutePolicyCore(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.apiDialectMode==="openai_responses"||input.apiDialectMode==="anthropic"?input.apiDialectMode:"anthropic",runtimeProviderKind=input.runtimeProviderKind??"gateway",coreNativeWorkflowToolNames=input.coreNativeWorkflowToolNames??DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES,familyShaping=getFamilyShaping(normalizedModel,runtimeProviderKind),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),warnings=[],repairHints=[],qualityReason=[],supportsResponses=input.supportsResponsesAdapter===!0,hasAnthropicToolUse=snapshot?.anthropicToolUse===!0,hasFullResponses=supportsResponses&&snapshot?.responsesArrayInputReachable===!0&&snapshot?.responsesToolChoiceAuto===!0&&snapshot?.responsesToolChoiceRequired===!0&&snapshot?.responsesToolChoiceNamed===!0,hasReachableChat=snapshot?.anthropicMessagesReachable===!0||snapshot?.responsesArrayInputReachable===!0,isFirstPartyClaudeAssumedNative=runtimeProviderKind==="first_party"&&familyShaping==="claude"&&!snapshot,isAnthropicDialectClaudeAssumed=dialectMode==="anthropic"&&familyShaping==="claude"&&!snapshot,isAnthropicMessagesRouteAssumed=dialectMode==="anthropic"&&runtimeProviderKind!=="first_party"&&!snapshot,defaultsToMessages=runtimeProviderKind!=="first_party"&&defaultsToAnthropicMessagesModel(normalizedModel),family=getModelFamily(normalizedModel),gatewayGpt5PrefersMessages=dialectMode==="openai_responses"&&runtimeProviderKind==="gateway"&&family==="openai"&&isGatewayGpt5PreferMessagesModel(normalizedModel),usesNativeOpenAICompatibleChat=runtimeProviderKind!=="first_party"&&dialectMode==="openai_responses"&&isOpenAICompatibleChatFamily(normalizedModel),transport="anthropic_messages",transportReason="Anthropic messages is the default API dialect unless openai_responses is explicitly selected.";defaultsToMessages?(transport="anthropic_messages",transportReason="This provider-native model family defaults to /v1/messages instead of the OpenAI Responses adapter.",dialectMode==="openai_responses"&&warnings.push("The active model family is configured to stay on /v1/messages by default; use a GPT/Codex or Gemini/Grok route for the OpenAI-compatible adapter.")):dialectMode==="anthropic"?(transport="anthropic_messages",transportReason="Explicit anthropic dialect override keeps the runtime on /v1/messages.",hasFullResponses&&!hasAnthropicToolUse&&warnings.push("Responses compatibility is verified, but the active dialect override is forcing /v1/messages.")):usesNativeOpenAICompatibleChat?(transport="openai_chat_completions",transportReason=family==="deepseek"||modelFamilyIsDeepSeek(normalizedModel)?"Explicit OpenAI-compatible dialect routes DeepSeek through native /v1/chat/completions with provider prefix-cache usage telemetry and without OpenAI Responses stateful cache.":`Explicit OpenAI-compatible dialect routes ${family} through native /v1/chat/completions without OpenAI Responses stateful cache.`):gatewayGpt5PrefersMessages&&snapshot?.responsesArrayInputReachable===!1&&snapshot?.anthropicMessagesReachable===!0?(transport="anthropic_messages",transportReason="Gateway GPT-5.x falls back to /v1/messages because validation showed /v1/responses is unavailable."):dialectMode==="openai_responses"&&(transport="openai_responses",transportReason="Explicit OpenAI-compatible dialect routes this GPT/Codex family through native /v1/responses.",supportsResponses||warnings.push("The active model family is not known to behave well on the Responses adapter."));let qualityTier="compatible";hasAnthropicToolUse?runtimeProviderKind==="first_party"&&familyShaping==="claude"?(qualityTier="native",qualityReason.push("Anthropic-native tool_use is available on a first-party Claude route.")):(qualityTier="compatible",qualityReason.push("Anthropic-native tool_use is available on the active provider route.")):isFirstPartyClaudeAssumedNative?(qualityTier="native",qualityReason.push("First-party Anthropic Claude routes are trusted as native on first launch.")):hasFullResponses?(qualityTier="compatible",qualityReason.push("Responses function calling is available on the active provider route.")):isAnthropicDialectClaudeAssumed?(qualityTier="compatible",qualityReason.push("Anthropic / Claude-compatible routes are trusted for full Clavue coding workflows.")):isAnthropicMessagesRouteAssumed||defaultsToMessages&&transport==="anthropic_messages"?(qualityTier="compatible",qualityReason.push("Provider-native messages routes are trusted for full Clavue coding workflows.")):transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat?(qualityTier="compatible",qualityReason.push(modelFamilyIsDeepSeek(normalizedModel)?"DeepSeek is routed through the active OpenAI-compatible chat/completions profile with full Clavue tool support.":"This provider family is routed through native OpenAI-compatible chat/completions with full Clavue tool support.")):gatewayGpt5PrefersMessages&&transport==="openai_responses"?(qualityTier="compatible",qualityReason.push("OpenAI GPT-5.x routes use native /v1/responses for the OpenAI-compatible dialect.")):gatewayGpt5PrefersMessages&&transport==="anthropic_messages"?(qualityTier="compatible",qualityReason.push("Gateway GPT-5.x fell back to /v1/messages because /v1/responses was unavailable.")):hasReachableChat?(qualityTier="compatible",qualityReason.push("The active provider route is reachable and trusted for full Clavue coding workflows.")):(qualityTier="compatible",qualityReason.push("Configured provider routes are trusted for full Clavue coding workflows. Permission mode controls execution approval, not provider validation snapshots."));let baseWorkflowMode=qualityTier==="native"?"full_native":"compat_native",operatorTrust=runtimeProviderKind==="first_party"?"explicitly_trusted":"configured",baseCapabilityStatus=hasAnthropicToolUse||hasFullResponses||hasReachableChat?"verified":isFirstPartyClaudeAssumedNative||isAnthropicDialectClaudeAssumed||isAnthropicMessagesRouteAssumed||transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat||gatewayGpt5PrefersMessages&&transport==="openai_responses"?"assumed":"unknown",baseWorkflowToolPolicy=baseCapabilityStatus==="verified"||baseWorkflowMode==="full_native"?"full":"cautious",providerHealth=input.providerHealth??null,healthTier=providerHealth?.healthTier??"healthy",capabilityStatus=providerHealth?.capabilityStatus??(healthTier==="broken"?"failed":healthTier==="degraded"?"stale":baseCapabilityStatus),workflowToolPolicy=providerHealth?.workflowToolPolicy??(healthTier==="broken"?"blocked":healthTier==="degraded"?"direct_only":healthTier==="warning"&&baseWorkflowToolPolicy==="full"?"cautious":baseWorkflowToolPolicy),workflowMode=workflowToolPolicy==="blocked"?"chat_only":workflowToolPolicy==="direct_only"?"strict_compat":baseWorkflowMode,forcedToolNames=workflowMode==="compat_native"&&(workflowToolPolicy==="full"||workflowToolPolicy==="cautious")?[...coreNativeWorkflowToolNames]:[],blockedToolNames=workflowToolPolicy==="direct_only"||workflowToolPolicy==="blocked"?[...coreNativeWorkflowToolNames]:[],certificationRef=providerHealth?.certificationRef;for(let warning of providerHealth?.warnings??[])warnings.push(warning);for(let repairHint of providerHealth?.repairHints??[])repairHints.push(repairHint);if(input.editReliability&&input.editReliability.model===normalizedModel&&!isEditReliabilityRoutingDisabled()){let assessment=assessEditReliabilityForRouting(input.editReliability);assessment.demote&&(warnings.push(`Edit reliability: ${assessment.reason}. Ordering only \u2014 disable with CLAVUE_EDIT_RELIABILITY_ROUTING=0.`),repairHints.push("Review per-model edit failures with /editstats; consider a stronger model for mutation-heavy tasks."))}let disciplineQualityTier=healthTier==="broken"?"blocked":healthTier==="degraded"?"degraded":qualityTier;return disciplineQualityTier!==qualityTier&&qualityReason.push(`Provider health ${healthTier} downgrades qualityTier from ${qualityTier} to ${disciplineQualityTier}.`),{routeId,model:normalizedModel,transport,transportReason,qualityTier:disciplineQualityTier,qualityReason,workflowMode,forcedToolNames,blockedToolNames,operatorTrust,capabilityStatus,workflowToolPolicy,healthTier,certificationRef,familyShaping,warnings,repairHints,...getReasoningDiscipline(disciplineQualityTier,familyShaping,normalizedModel)}}function modelFamilyIsDeepSeek(model){let normalized=model.trim().toLowerCase();return normalized.startsWith("deepseek-")||normalized.includes("deepseek")}function isEditReliabilityRoutingDisabled(env5=process.env){let flag=String(env5.CLAVUE_EDIT_RELIABILITY_ROUTING??"1").trim().toLowerCase();return flag==="0"||flag==="false"||flag==="off"||flag==="no"}function wilsonLowerBound(failures,attempts){if(attempts<=0)return 0;let z=1.645,z2=z*z,p=Math.min(1,Math.max(0,failures/attempts)),denominator=1+z2/attempts,center=p+z2/(2*attempts),spread4=z*Math.sqrt(p*(1-p)/attempts+z2/(4*attempts*attempts));return Math.max(0,(center-spread4)/denominator)}function resolveReliabilityOptions(options){let env5=options?.env??process.env,envMin=Number.parseInt(String(env5.CLAVUE_EDIT_RELIABILITY_MIN_SAMPLES??"").trim(),10),envThreshold=Number.parseFloat(String(env5.CLAVUE_EDIT_RELIABILITY_FAILURE_THRESHOLD??"").trim()),minAttempts=options?.minAttempts??(Number.isFinite(envMin)&&envMin>0?envMin:EDIT_RELIABILITY_MIN_ATTEMPTS_DEFAULT),failureThreshold=options?.failureThreshold??(Number.isFinite(envThreshold)&&envThreshold>0&&envThreshold<1?envThreshold:EDIT_RELIABILITY_FAILURE_LOWER_BOUND_TARGET_DEFAULT);return{minAttempts,failureThreshold,env:env5}}function assessEditReliabilityForRouting(reading,options){let{minAttempts,failureThreshold}=resolveReliabilityOptions(options),attempts=Math.max(0,Math.trunc(reading.attempts)),finalFailures=Math.max(0,Math.trunc(reading.finalFailures)),finalFailureRate=attempts>0?finalFailures/attempts:0,failureLowerBound=wilsonLowerBound(finalFailures,attempts),eligible2=attempts>=minAttempts,demote=eligible2&&failureLowerBound>=failureThreshold,pct=__name(value=>`${Math.round(value*100)}%`,"pct"),reason=eligible2?demote?`edit reliability: ${reading.model} final-failure rate ${pct(finalFailureRate)} over ${attempts} edit episodes (95% lower bound ${pct(failureLowerBound)} \u2265 ${pct(failureThreshold)}) \u2014 deprioritized for mutation tasks`:`edit reliability: ${reading.model} final-failure rate ${pct(finalFailureRate)} over ${attempts} edit episodes \u2014 within tolerance`:`edit reliability: ${reading.model} has ${attempts}/${minAttempts} edit episodes \u2014 below sample threshold, no routing influence`;return{model:reading.model,eligible:eligible2,demote,attempts,finalFailureRate,failureLowerBound,minAttempts,failureThreshold,reason}}var DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES,EDIT_RELIABILITY_MIN_ATTEMPTS_DEFAULT,EDIT_RELIABILITY_FAILURE_LOWER_BOUND_TARGET_DEFAULT,init_codingRoutePolicyCore=__esm({"src/utils/model/codingRoutePolicyCore.ts"(){init_openaiResponsesConfig();DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES=["EnterPlanMode","SendMessage","TaskCreate","TaskGet","TaskList","TaskOutput","TaskUpdate","TeamCreate","TeamDelete","TodoWrite"];__name(defaultsToAnthropicMessagesModel,"defaultsToAnthropicMessagesModel");__name(isGatewayGpt5PreferMessagesModel,"isGatewayGpt5PreferMessagesModel");__name(getModelFamily,"getModelFamily");__name(isOpenAICompatibleChatFamily,"isOpenAICompatibleChatFamily");__name(getFamilyShaping,"getFamilyShaping");__name(getReasoningDiscipline,"getReasoningDiscipline");__name(resolveCodingRoutePolicyCore,"resolveCodingRoutePolicyCore");__name(modelFamilyIsDeepSeek,"modelFamilyIsDeepSeek");EDIT_RELIABILITY_MIN_ATTEMPTS_DEFAULT=20,EDIT_RELIABILITY_FAILURE_LOWER_BOUND_TARGET_DEFAULT=.25;__name(isEditReliabilityRoutingDisabled,"isEditReliabilityRoutingDisabled");__name(wilsonLowerBound,"wilsonLowerBound");__name(resolveReliabilityOptions,"resolveReliabilityOptions");__name(assessEditReliabilityForRouting,"assessEditReliabilityForRouting")}});function modelFamilyKey(model){let m2=String(model||"").toLowerCase();return m2?/claude|anthropic|sonnet|opus|haiku/.test(m2)?"claude":/gpt|o1|o3|o4|codex|openai/.test(m2)?"openai":/gemini|google/.test(m2)?"google":/deepseek/.test(m2)?"deepseek":/grok|xai/.test(m2)?"xai":/\bglm\b|chatglm|zhipu/.test(m2)||m2.startsWith("glm-")?"glm":/qwen|qwq|tongyi|dashscope/.test(m2)?"qwen":/kimi|moonshot/.test(m2)?"kimi":/minimax|abab|m2\./.test(m2)||m2.includes("minimax")?"minimax":/yi-|01-ai|yi1/.test(m2)?"yi":/mistral|mixtral|codestral/.test(m2)?"mistral":/llama|meta-llama|codellama/.test(m2)?"llama":/clavue/.test(m2)?"clavue":/ollama|lmstudio|vllm|local-/.test(m2)?"local":m2.split(/[-/_.]/)[0]||"unknown":"unknown"}var init_modelRolesCore=__esm({"src/utils/model/modelRolesCore.ts"(){__name(modelFamilyKey,"modelFamilyKey")}});function isEditFailureReasonCode(value){return typeof value=="string"&&EDIT_FAILURE_REASON_CODES.includes(value)}var EDIT_FAILURE_REASON_CODES,init_editRepairProfiles=__esm({"src/tools/FileEditTool/editRepairProfiles.ts"(){init_modelRolesCore();EDIT_FAILURE_REASON_CODES=["not_found","multiple_matches","whitespace_drift","truncated_anchor","escape_mismatch","file_changed","file_not_read","file_missing"];__name(isEditFailureReasonCode,"isEditFailureReasonCode")}});import fs2 from"node:fs";function createEditOutcomeTracker(){let pending=new Set,keyOf=__name((model,filePath)=>`${model}\0${filePath}`,"keyOf");return{note(model,filePath,ok){let key=keyOf(model,filePath);return ok?pending.has(key)?(pending.delete(key),"retry_success"):"first_try_success":(pending.add(key),"failure")},reset(){pending.clear()}}}function parseEditReliabilityLine(line){let trimmed=line.trim();if(!trimmed.startsWith("{"))return null;try{let parsed=JSON.parse(trimmed);return parsed.schema!==EDIT_RELIABILITY_SCHEMA||typeof parsed.model!="string"||typeof parsed.filePath!="string"||typeof parsed.ok!="boolean"?null:(parsed.reasonCode!==void 0&&!isEditFailureReasonCode(parsed.reasonCode)&&delete parsed.reasonCode,parsed)}catch{return null}}function readEditReliabilityEvents(ledgerPath,options){let maxBytes=Math.max(1024,Math.min(8388608,options?.maxBytes??DEFAULT_TAIL_BYTES)),source="";try{let stat4=fs2.statSync(ledgerPath),start=Math.max(0,stat4.size-maxBytes),fd=fs2.openSync(ledgerPath,"r");try{let buffer=Buffer.allocUnsafe(stat4.size-start);fs2.readSync(fd,buffer,0,buffer.length,start),source=buffer.toString("utf8")}finally{fs2.closeSync(fd)}}catch{return[]}let events=[],lines=source.split(/\r?\n/);for(let line of lines){let record2=parseEditReliabilityLine(line);record2&&events.push(record2)}return events}function aggregateEditReliabilityEvents(events){let byModel=new Map,openChains=new Map,statsFor=__name((model,family)=>{let stats=byModel.get(model);return stats||(stats={model,family:family||modelFamilyKey(model),firstTrySuccesses:0,retriedSuccesses:0,finalFailures:0,failureEvents:0,repairedSuccesses:0,reasonCounts:{}},byModel.set(model,stats)),stats},"statsFor");for(let event of events){let stats=statsFor(event.model,event.family),chainKey=`${event.model}\0${event.filePath}`;if(!event.ok){stats.failureEvents+=1,event.reasonCode&&(stats.reasonCounts[event.reasonCode]=(stats.reasonCounts[event.reasonCode]??0)+1),openChains.set(chainKey,{model:event.model});continue}openChains.has(chainKey)?(openChains.delete(chainKey),stats.retriedSuccesses+=1):stats.firstTrySuccesses+=1,event.repairRung&&(stats.repairedSuccesses+=1)}for(let{model}of openChains.values()){let stats=byModel.get(model);stats&&(stats.finalFailures+=1)}return[...byModel.values()].map(stats=>{let episodes=stats.firstTrySuccesses+stats.retriedSuccesses+stats.finalFailures;return{...stats,episodes,firstTryRate:episodes>0?stats.firstTrySuccesses/episodes:null,finalFailureRate:episodes>0?stats.finalFailures/episodes:null}}).sort((a2,b)=>b.episodes-a2.episodes||a2.model.localeCompare(b.model))}function readEditReliabilityStats(ledgerPath,options){return aggregateEditReliabilityEvents(readEditReliabilityEvents(ledgerPath,options))}function toEditReliabilityReading(stats){return{model:stats.model,attempts:stats.episodes,firstTrySuccesses:stats.firstTrySuccesses,retriedSuccesses:stats.retriedSuccesses,finalFailures:stats.finalFailures}}var EDIT_RELIABILITY_SCHEMA,DEFAULT_TAIL_BYTES,init_editReliabilityCore=__esm({"src/services/editReliability/editReliabilityCore.ts"(){init_editRepairProfiles();init_modelRolesCore();EDIT_RELIABILITY_SCHEMA="clavue_edit_reliability_v1";__name(createEditOutcomeTracker,"createEditOutcomeTracker");__name(parseEditReliabilityLine,"parseEditReliabilityLine");DEFAULT_TAIL_BYTES=512*1024;__name(readEditReliabilityEvents,"readEditReliabilityEvents");__name(aggregateEditReliabilityEvents,"aggregateEditReliabilityEvents");__name(readEditReliabilityStats,"readEditReliabilityStats");__name(toEditReliabilityReading,"toEditReliabilityReading")}});import path9 from"node:path";function isEditReliabilityLedgerDisabled(){return isEnvTruthy(process.env.CLAVUE_DISABLE_EDIT_RELIABILITY)||isEnvDefinedFalsy(process.env.CLAVUE_EDIT_RELIABILITY)}function resolveEditReliabilityLedgerPath(){let override=process.env.CLAVUE_EDIT_RELIABILITY_LEDGER_PATH?.trim();return override?path9.resolve(override):path9.join(getCwd(),".clavue","edit-reliability.jsonl")}function getEditReliabilityStatsCached(options){if(isEditReliabilityLedgerDisabled())return[];let ledgerPath=resolveEditReliabilityLedgerPath(),now2=options?.now??Date.now();if(statsCache&&statsCache.key===ledgerPath&&now2-statsCache.readAt<STATS_CACHE_TTL_MS)return statsCache.stats;let stats=[];try{stats=readEditReliabilityStats(ledgerPath)}catch(error40){logForDebugging("[EditReliability] failed to read: "+(error40 instanceof Error?error40.message:String(error40)),{level:"debug"})}return statsCache={key:ledgerPath,readAt:now2,stats},stats}function getEditReliabilityReadingForModel(model){let normalized=String(model??"").trim();if(!normalized)return null;let stats=getEditReliabilityStatsCached().find(row=>row.model===normalized);return stats?toEditReliabilityReading(stats):null}var STATS_CACHE_TTL_MS,outcomeTracker,statsCache,init_editReliabilityLedger=__esm({"src/services/editReliability/editReliabilityLedger.ts"(){init_cwd2();init_debug();init_envUtils();init_editReliabilityCore();STATS_CACHE_TTL_MS=5e3,outcomeTracker=createEditOutcomeTracker();__name(isEditReliabilityLedgerDisabled,"isEditReliabilityLedgerDisabled");__name(resolveEditReliabilityLedgerPath,"resolveEditReliabilityLedgerPath");__name(getEditReliabilityStatsCached,"getEditReliabilityStatsCached");__name(getEditReliabilityReadingForModel,"getEditReliabilityReadingForModel")}});function normalize3(raw,allowed){let value=String(raw??"").trim().toLowerCase();if(value)return allowed.has(value)?value:void 0}function getWorkflowDisciplinePreferencesFromEnv(env5=process.env){return{planDiscipline:normalize3(env5.CLAVUE_PLAN_DISCIPLINE??env5.MYCLAUDE_PLAN_DISCIPLINE,PLAN_DISCIPLINE_VALUES),verificationDiscipline:normalize3(env5.CLAVUE_VERIFICATION_DISCIPLINE??env5.MYCLAUDE_VERIFICATION_DISCIPLINE,VERIFICATION_DISCIPLINE_VALUES),recoveryMode:normalize3(env5.CLAVUE_RECOVERY_MODE??env5.MYCLAUDE_RECOVERY_MODE,RECOVERY_MODE_VALUES)}}function applyWorkflowDisciplinePreferences(routeDerived,preferences){return{planDiscipline:preferences.planDiscipline??routeDerived.planDiscipline,verificationDiscipline:preferences.verificationDiscipline??routeDerived.verificationDiscipline,recoveryMode:preferences.recoveryMode??routeDerived.recoveryMode}}var PLAN_DISCIPLINE_VALUES,VERIFICATION_DISCIPLINE_VALUES,RECOVERY_MODE_VALUES,init_workflowDisciplinePreferences=__esm({"src/utils/model/workflowDisciplinePreferences.ts"(){PLAN_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),VERIFICATION_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),RECOVERY_MODE_VALUES=new Set(["strict","normal","off"]);__name(normalize3,"normalize");__name(getWorkflowDisciplinePreferencesFromEnv,"getWorkflowDisciplinePreferencesFromEnv");__name(applyWorkflowDisciplinePreferences,"applyWorkflowDisciplinePreferences")}});var init_classify=__esm({"src/services/providerHealth/classify.ts"(){}});function createProviderHealthLedger(events=[]){return{events:[...events].sort((a2,b)=>a2.atMs-b.atMs)}}function getProviderHealthSnapshot(ledger,options){let nowMs=options.nowMs??Date.now(),windowMs=options.windowMs??DEFAULT_PROVIDER_HEALTH_WINDOW_MS,windowStartMs=nowMs-windowMs,routeEvents=ledger.events.filter(event=>event.routeId===options.routeId&&event.atMs>=windowStartMs).sort((a2,b)=>a2.atMs-b.atMs);if(routeEvents.length===0)return null;let lastRecoveryIndex=findLastIndex2(routeEvents,event=>event.type==="provider_recovered"),activeEvents=lastRecoveryIndex>=0?routeEvents.slice(lastRecoveryIndex+1):routeEvents;if(activeEvents.length===0)return{healthTier:"healthy",capabilityStatus:"verified",workflowToolPolicy:"full",warnings:[],repairHints:["Provider route recovered in the current health window."],certificationRef:routeEvents[lastRecoveryIndex]?.certificationRef};if(activeEvents.find(event=>event.failureClass==="auth"))return buildSnapshot({healthTier:"broken",capabilityStatus:"failed",workflowToolPolicy:"blocked",warning:"Provider authentication failed for this route.",repairHint:"Repair the provider credential or selected profile, then rerun provider doctor.",certificationRef:latestCertificationRef(activeEvents)});let classCounts=countFailureClasses(activeEvents),strongestToolFailure=strongestCount(classCounts.filter(item=>TOOL_FAILURE_CLASSES.has(item.failureClass)));if(strongestToolFailure&&strongestToolFailure.count>=3)return buildSnapshot({healthTier:"degraded",capabilityStatus:"stale",workflowToolPolicy:"direct_only",warning:failureWarning(strongestToolFailure,"repeated"),repairHint:"Workflow orchestration tools are downgraded for this route; preserve direct repo tools and rerun provider certification before restoring workflow mode.",certificationRef:latestCertificationRef(activeEvents)});if(strongestToolFailure&&strongestToolFailure.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:failureWarning(strongestToolFailure,"second"),repairHint:"Keep workflow tools visible but treat provider tool-calling as unproven until certification passes.",certificationRef:latestCertificationRef(activeEvents)});let streamFailures=classCounts.find(item=>item.failureClass==="stream");if(streamFailures&&streamFailures.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider stream parsing failures were observed.",repairHint:"Prefer cautious workflow use and rerun provider doctor to confirm the streaming contract.",certificationRef:latestCertificationRef(activeEvents)});let cacheFailures=classCounts.find(item=>item.failureClass==="cache");return cacheFailures&&cacheFailures.count>=2?buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider cache or previous_response_id anchor failures were observed.",repairHint:"Disable stateful cache assumptions for this route until certification confirms support.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="overflow")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider context overflow was observed on this route.",repairHint:"Use strict recovery for the turn, compact context, then retry with a smaller request.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="rate_limit")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider rate limiting was observed on this route.",repairHint:"Back off or switch provider route; do not infer a permanent capability failure from rate limiting alone.",certificationRef:latestCertificationRef(activeEvents)}):buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider route emitted a recoverable health warning.",repairHint:"Continue on direct repo tools when possible and record another provider health event if the route fails again.",certificationRef:latestCertificationRef(activeEvents)})}function buildSnapshot({healthTier,capabilityStatus,workflowToolPolicy,warning,repairHint,certificationRef}){return{healthTier,capabilityStatus,workflowToolPolicy,warnings:[warning],repairHints:[repairHint],...certificationRef?{certificationRef}:{}}}function countFailureClasses(events){let counts=new Map;for(let event of events)event.failureClass!=="recovered"&&counts.set(event.failureClass,(counts.get(event.failureClass)??0)+1);return[...counts.entries()].map(([failureClass,count3])=>({failureClass,count:count3}))}function strongestCount(items){let strongest=null;for(let item of items)(!strongest||item.count>strongest.count)&&(strongest=item);return strongest}function failureWarning(item,label){let readableClass=item.failureClass.replaceAll("_"," ");return label==="second"?`Provider route emitted a second ${readableClass} failure in the health window.`:`Provider route emitted repeated ${readableClass} failures in the health window.`}function latestCertificationRef(events){return[...events].reverse().find(event=>event.certificationRef)?.certificationRef}function findLastIndex2(values2,predicate){for(let index=values2.length-1;index>=0;index-=1)if(predicate(values2[index]))return index;return-1}var DEFAULT_PROVIDER_HEALTH_WINDOW_MS,TOOL_FAILURE_CLASSES,init_ledger=__esm({"src/services/providerHealth/ledger.ts"(){init_classify();DEFAULT_PROVIDER_HEALTH_WINDOW_MS=900*1e3,TOOL_FAILURE_CLASSES=new Set(["tool_schema","tool_call","tool_result"]);__name(createProviderHealthLedger,"createProviderHealthLedger");__name(getProviderHealthSnapshot,"getProviderHealthSnapshot");__name(buildSnapshot,"buildSnapshot");__name(countFailureClasses,"countFailureClasses");__name(strongestCount,"strongestCount");__name(failureWarning,"failureWarning");__name(latestCertificationRef,"latestCertificationRef");__name(findLastIndex2,"findLastIndex")}});function isProviderHealthLedgerEnabled(){return process.env.CLAVUE_ROUTE_HEALTH_LEDGER!=="0"}function getProviderRouteHealthSnapshot(routeId){if(!isProviderHealthLedgerEnabled())return null;let normalizedRouteId=String(routeId??"").trim();return normalizedRouteId?getProviderHealthSnapshot(runtimeLedger,{routeId:normalizedRouteId}):null}var runtimeLedger,init_runtime=__esm({"src/services/providerHealth/runtime.ts"(){init_ledger();runtimeLedger=createProviderHealthLedger();__name(isProviderHealthLedgerEnabled,"isProviderHealthLedgerEnabled");__name(getProviderRouteHealthSnapshot,"getProviderRouteHealthSnapshot")}});function isOfficialAnthropicBaseUrl(baseUrl){let normalizedBaseUrl=String(baseUrl??"").trim();if(!normalizedBaseUrl)return isFirstPartyAnthropicBaseUrl();try{let host=new URL(normalizedBaseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}function inferRuntimeProviderKind(input){if(input.runtimeProviderKind)return input.runtimeProviderKind;if(typeof input.baseUrl=="string"&&input.baseUrl.trim())return isOfficialAnthropicBaseUrl(input.baseUrl)?"first_party":"gateway";switch(getAPIProvider()){case"bedrock":return"bedrock";case"vertex":return"vertex";case"foundry":return"foundry";default:return isFirstPartyAnthropicBaseUrl()?"first_party":"gateway"}}function resolveCodingRoutePolicy(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.fusionEndpointDialect??input.apiDialectMode??getConfiguredApiDialectMode(),runtimeProviderKind=inferRuntimeProviderKind(input),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),providerHealth=input.providerHealth===void 0?getProviderRouteHealthSnapshot(routeId):input.providerHealth,decision=resolveCodingRoutePolicyCore({model:normalizedModel,snapshot,routeId,apiDialectMode:dialectMode,runtimeProviderKind,supportsResponsesAdapter:supportsOpenAIResponsesAdapterModel(normalizedModel),coreNativeWorkflowToolNames:[...CORE_NATIVE_WORKFLOW_TOOL_NAMES],providerHealth,editReliability:safeEditReliabilityReading(normalizedModel)}),preferences=getWorkflowDisciplinePreferencesFromEnv(),overridden=applyWorkflowDisciplinePreferences(decision,preferences),withDiscipline={...decision,planDiscipline:overridden.planDiscipline,verificationDiscipline:overridden.verificationDiscipline,recoveryMode:overridden.recoveryMode};return(isClavueCloudMembershipBaseUrl(input.baseUrl)||isClavueCloudProfileRouteId(routeId)||isClavueCloudProfileRouteId(input.routeId))&&withDiscipline.transport!=="openai_chat_completions"?{...withDiscipline,transport:"openai_chat_completions",transportReason:"Clavue Cloud membership proxy only implements /v1/chat/completions (never /v1/responses)."}:withDiscipline}function safeEditReliabilityReading(model){if(!model||isEditReliabilityRoutingDisabled())return null;try{return getEditReliabilityReadingForModel(model)}catch{return null}}var CORE_NATIVE_WORKFLOW_TOOL_NAMES,init_codingRoutePolicy=__esm({"src/utils/model/codingRoutePolicy.ts"(){init_constants6();init_constants7();init_constants8();init_constants9();init_constants10();init_constants4();init_constants11();init_constants12();init_constants13();init_constants14();init_config();init_codingRoutePolicyCore();init_editReliabilityLedger();init_providers();init_openaiResponsesConfig();init_workflowDisciplinePreferences();init_runtime();CORE_NATIVE_WORKFLOW_TOOL_NAMES=new Set([ENTER_PLAN_MODE_TOOL_NAME,SEND_MESSAGE_TOOL_NAME,TASK_CREATE_TOOL_NAME,TASK_GET_TOOL_NAME,TASK_LIST_TOOL_NAME,TASK_OUTPUT_TOOL_NAME,TASK_UPDATE_TOOL_NAME,TEAM_CREATE_TOOL_NAME,TEAM_DELETE_TOOL_NAME,TODO_WRITE_TOOL_NAME]);__name(isOfficialAnthropicBaseUrl,"isOfficialAnthropicBaseUrl");__name(inferRuntimeProviderKind,"inferRuntimeProviderKind");__name(resolveCodingRoutePolicy,"resolveCodingRoutePolicy");__name(safeEditReliabilityReading,"safeEditReliabilityReading")}});function createFallbackStorage(primary,secondary){return{name:`${primary.name}-with-${secondary.name}-fallback`,read(){let result2=primary.read();return result2??(secondary.read()||{})},async readAsync(){let result2=await primary.readAsync();return result2??(await secondary.readAsync()||{})},update(data){let primaryDataBefore=primary.read(),result2=primary.update(data);if(result2.success)return primaryDataBefore===null&&secondary.delete(),result2;let fallbackResult=secondary.update(data);return fallbackResult.success?(primaryDataBefore!==null&&primary.delete(),{success:!0,warning:fallbackResult.warning}):{success:!1}},delete(){let primarySuccess=primary.delete(),secondarySuccess=secondary.delete();return primarySuccess||secondarySuccess}}}var init_fallbackStorage=__esm({"src/utils/secureStorage/fallbackStorage.ts"(){__name(createFallbackStorage,"createFallbackStorage")}});async function doReadAsync(){try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),{stdout,code}=await execFileNoThrow("security",["find-generic-password","-a",username,"-w","-s",storageServiceName],{useCwd:!1,preserveOutputOnError:!1});if(code===0&&stdout)return jsonParse(stdout.trim())}catch{}return null}var SECURITY_STDIN_LINE_LIMIT,macOsKeychainStorage,init_macOsKeychainStorage=__esm({"src/utils/secureStorage/macOsKeychainStorage.ts"(){init_execa();init_debug();init_envUtils();init_execFileNoThrow();init_execFileNoThrowPortable();init_slowOperations();init_macOsKeychainHelpers();SECURITY_STDIN_LINE_LIMIT=4032,macOsKeychainStorage={name:"keychain",read(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),result2=execSyncWithDefaults(`security find-generic-password -a "${username}" -w -s "${storageServiceName}"`);if(result2){let data=jsonParse(result2);return keychainCacheState.cache={data,cachedAt:Date.now()},data}}catch{}return prev.data!==null?(logForDebugging("[keychain] read failed; serving stale cache",{level:"warn"}),keychainCacheState.cache={data:prev.data,cachedAt:Date.now()},prev.data):(keychainCacheState.cache={data:null,cachedAt:Date.now()},null)},async readAsync(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;if(keychainCacheState.readInFlight)return keychainCacheState.readInFlight;let gen=keychainCacheState.generation,promise2=doReadAsync().then(data=>{if(gen===keychainCacheState.generation){data===null&&prev.data!==null&&logForDebugging("[keychain] readAsync failed; serving stale cache",{level:"warn"});let next=data??prev.data;return keychainCacheState.cache={data:next,cachedAt:Date.now()},keychainCacheState.readInFlight=null,next}return data});return keychainCacheState.readInFlight=promise2,promise2},update(data){clearKeychainCache();try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),jsonString=jsonStringify(data),hexValue=Buffer.from(jsonString,"utf-8").toString("hex"),command=`add-generic-password -U -a "${username}" -s "${storageServiceName}" -X "${hexValue}"
187
+ `);let{connect:connect3}=await proxyResponsePromise;if(req.emit("proxyConnect",connect3),this.emit("proxyConnect",connect3,req),connect3.statusCode===200)return req.once("socket",resume),opts.secureEndpoint?(debug2("Upgrading socket connection to TLS"),tls.connect({...omit3(setServernameFromNonIpHost(opts),"host","path","port"),socket})):socket;throw socket.destroy(),new Error(`Proxy authentication failed with status ${connect3.statusCode} after retry`)}};HttpsProxyAgent2.protocols=["http","https"];__name(resume,"resume");__name(omit3,"omit")}});var getCACertificates,init_caCerts=__esm({"src/utils/caCerts.ts"(){init_memoize();init_debug();init_envUtils();init_fsOperations();getCACertificates=memoize_default(()=>{let useSystemCA=hasNodeOption("--use-system-ca")||hasNodeOption("--use-openssl-ca"),extraCertsPath=process.env.NODE_EXTRA_CA_CERTS;if(logForDebugging(`CA certs: useSystemCA=${useSystemCA}, extraCertsPath=${extraCertsPath}`),!useSystemCA&&!extraCertsPath)return;let tls2=__require("tls"),certs=[];if(useSystemCA){let getCACerts=tls2.getCACertificates,systemCAs=getCACerts?.("system");if(systemCAs&&systemCAs.length>0)certs.push(...systemCAs),logForDebugging(`CA certs: Loaded ${certs.length} system CA certificates (--use-system-ca)`);else if(!getCACerts&&!extraCertsPath){logForDebugging("CA certs: --use-system-ca set but system CA API unavailable, deferring to runtime");return}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base (--use-system-ca fallback)`)}else certs.push(...tls2.rootCertificates),logForDebugging(`CA certs: Loaded ${certs.length} bundled root certificates as base`);if(extraCertsPath)try{let extraCert=getFsImplementation().readFileSync(extraCertsPath,{encoding:"utf8"});certs.push(extraCert),logForDebugging(`CA certs: Appended extra certificates from NODE_EXTRA_CA_CERTS (${extraCertsPath})`)}catch(error40){logForDebugging(`CA certs: Failed to read NODE_EXTRA_CA_CERTS file (${extraCertsPath}): ${error40}`,{level:"error"})}return certs.length>0?certs:void 0})}});import{Agent as HttpsAgent2}from"https";var getMTLSConfig,getMTLSAgent,init_mtls=__esm({"src/utils/mtls.ts"(){init_memoize();init_caCerts();init_debug();init_fsOperations();getMTLSConfig=memoize_default(()=>{let config2={};if(process.env.CLAUDE_CODE_CLIENT_CERT)try{config2.cert=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_CERT,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client certificate from CLAUDE_CODE_CLIENT_CERT")}catch(error40){logForDebugging(`mTLS: Failed to load client certificate: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY)try{config2.key=getFsImplementation().readFileSync(process.env.CLAUDE_CODE_CLIENT_KEY,{encoding:"utf8"}),logForDebugging("mTLS: Loaded client key from CLAUDE_CODE_CLIENT_KEY")}catch(error40){logForDebugging(`mTLS: Failed to load client key: ${error40}`,{level:"error"})}if(process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE&&(config2.passphrase=process.env.CLAUDE_CODE_CLIENT_KEY_PASSPHRASE,logForDebugging("mTLS: Using client key passphrase")),Object.keys(config2).length!==0)return config2}),getMTLSAgent=memoize_default(()=>{let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates();if(!mtlsConfig&&!caCerts)return;let agentOptions={...mtlsConfig,...caCerts&&{ca:caCerts},keepAlive:!0};return logForDebugging("mTLS: Creating HTTPS agent with custom certificates"),new HttpsAgent2(agentOptions)})}});function getAddressFamily(options){switch(options.family){case 0:case 4:case 6:return options.family;case"IPv6":return 6;case"IPv4":case void 0:return 4;default:throw new Error(`Unsupported address family: ${options.family}`)}}function getProxyUrl(env5=process.env){return env5.https_proxy||env5.HTTPS_PROXY||env5.http_proxy||env5.HTTP_PROXY}function createHttpsProxyAgent(proxyUrl,extra={}){let mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),agentOptions={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};return isEnvTruthy(process.env.CLAUDE_CODE_PROXY_RESOLVES_HOSTS)&&(agentOptions.lookup=(hostname2,options,callback)=>{callback(null,hostname2,getAddressFamily(options))}),new HttpsProxyAgent2(proxyUrl,{...agentOptions,...extra})}async function getAWSClientProxyConfig(){let proxyUrl=getProxyUrl();if(!proxyUrl)return{};let[{NodeHttpHandler},{defaultProvider}]=await Promise.all([import("@smithy/node-http-handler"),import("@aws-sdk/credential-provider-node")]),agent=createHttpsProxyAgent(proxyUrl),requestHandler=new NodeHttpHandler({httpAgent:agent,httpsAgent:agent});return{requestHandler,credentials:defaultProvider({clientConfig:{requestHandler}})}}var getProxyAgent,init_proxy=__esm({"src/utils/proxy.ts"(){init_dist3();init_memoize();init_caCerts();init_debug();init_envUtils();init_mtls();__name(getAddressFamily,"getAddressFamily");__name(getProxyUrl,"getProxyUrl");__name(createHttpsProxyAgent,"createHttpsProxyAgent");getProxyAgent=memoize_default(uri=>{let undiciMod=__require("undici"),mtlsConfig=getMTLSConfig(),caCerts=getCACertificates(),proxyOptions={httpProxy:uri,httpsProxy:uri,noProxy:process.env.NO_PROXY||process.env.no_proxy};if(mtlsConfig||caCerts){let tlsOpts={...mtlsConfig&&{cert:mtlsConfig.cert,key:mtlsConfig.key,passphrase:mtlsConfig.passphrase},...caCerts&&{ca:caCerts}};proxyOptions.connect=tlsOpts,proxyOptions.requestTls=tlsOpts}return new undiciMod.EnvHttpProxyAgent(proxyOptions)});__name(getAWSClientProxyConfig,"getAWSClientProxyConfig")}});function findFirstMatch(profiles,substring){return profiles.find(p=>p.includes(substring))??null}async function createBedrockClient(){let{BedrockClient}=await import("@aws-sdk/client-bedrock"),region=getAWSRegion(),skipAuth=isEnvTruthy(process.env.CLAUDE_CODE_SKIP_BEDROCK_AUTH),clientConfig={region,...process.env.ANTHROPIC_BEDROCK_BASE_URL&&{endpoint:process.env.ANTHROPIC_BEDROCK_BASE_URL},...await getAWSClientProxyConfig(),...skipAuth&&{requestHandler:new(await import("@smithy/node-http-handler")).NodeHttpHandler,httpAuthSchemes:[{schemeId:"smithy.api#noAuth",identityProvider:__name(()=>async()=>({}),"identityProvider"),signer:new(await import("@smithy/core")).NoAuthSigner}],httpAuthSchemeProvider:__name(()=>[{schemeId:"smithy.api#noAuth"}],"httpAuthSchemeProvider")}};if(!skipAuth&&!process.env.AWS_BEARER_TOKEN_BEDROCK){let cachedCredentials=await refreshAndGetAwsCredentials();if(cachedCredentials){let credentials=cachedCredentials;clientConfig.credentials={accessKeyId:credentials.accessKeyId,secretAccessKey:credentials.secretAccessKey,sessionToken:credentials.sessionToken}}}return new BedrockClient(clientConfig)}var getBedrockInferenceProfiles,getInferenceProfileBackingModel,init_bedrock=__esm({"src/utils/model/bedrock.ts"(){init_memoize();init_auth();init_envUtils();init_log3();init_proxy();getBedrockInferenceProfiles=memoize_default(async function(){let[client2,{ListInferenceProfilesCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),allProfiles=[],nextToken;try{do{let command=new ListInferenceProfilesCommand({...nextToken&&{nextToken},typeEquals:"SYSTEM_DEFINED"}),response=await client2.send(command);response.inferenceProfileSummaries&&allProfiles.push(...response.inferenceProfileSummaries),nextToken=response.nextToken}while(nextToken);return allProfiles.filter(profile=>profile.inferenceProfileId?.includes("anthropic")).map(profile=>profile.inferenceProfileId).filter(Boolean)}catch(error40){throw logError2(error40),error40}});__name(findFirstMatch,"findFirstMatch");__name(createBedrockClient,"createBedrockClient");getInferenceProfileBackingModel=memoize_default(async function(profileId){try{let[client2,{GetInferenceProfileCommand}]=await Promise.all([createBedrockClient(),import("@aws-sdk/client-bedrock")]),command=new GetInferenceProfileCommand({inferenceProfileIdentifier:profileId}),response=await client2.send(command);if(!response.models||response.models.length===0)return null;let primaryModel=response.models[0];if(!primaryModel?.modelArn)return null;let lastSlashIndex=primaryModel.modelArn.lastIndexOf("/");return lastSlashIndex>=0?primaryModel.modelArn.substring(lastSlashIndex+1):primaryModel.modelArn}catch(error40){return logError2(error40),null}})}});var CLAUDE_3_7_SONNET_CONFIG,CLAUDE_3_5_V2_SONNET_CONFIG,CLAUDE_3_5_HAIKU_CONFIG,CLAUDE_HAIKU_4_5_CONFIG,CLAUDE_SONNET_4_CONFIG,CLAUDE_SONNET_4_5_CONFIG,CLAUDE_OPUS_4_CONFIG,CLAUDE_OPUS_4_1_CONFIG,CLAUDE_OPUS_4_5_CONFIG,CLAUDE_OPUS_4_6_CONFIG,CLAUDE_OPUS_4_7_CONFIG,CLAUDE_OPUS_4_8_CONFIG,CLAUDE_SONNET_4_6_CONFIG,ALL_MODEL_CONFIGS,CANONICAL_MODEL_IDS,CANONICAL_ID_TO_KEY,init_configs=__esm({"src/utils/model/configs.ts"(){CLAUDE_3_7_SONNET_CONFIG={firstParty:"claude-3-7-sonnet-20250219",bedrock:"us.anthropic.\u0063laude-3-7-sonnet-20250219-v1:0",vertex:"claude-3-7-sonnet@20250219",foundry:"claude-3-7-sonnet"},CLAUDE_3_5_V2_SONNET_CONFIG={firstParty:"claude-3-5-sonnet-20241022",bedrock:"anthropic.\u0063laude-3-5-sonnet-20241022-v2:0",vertex:"claude-3-5-sonnet-v2@20241022",foundry:"claude-3-5-sonnet"},CLAUDE_3_5_HAIKU_CONFIG={firstParty:"claude-3-5-haiku-20241022",bedrock:"us.anthropic.\u0063laude-3-5-haiku-20241022-v1:0",vertex:"claude-3-5-haiku@20241022",foundry:"claude-3-5-haiku"},CLAUDE_HAIKU_4_5_CONFIG={firstParty:"claude-haiku-4-5-20251001",bedrock:"us.anthropic.\u0063laude-haiku-4-5-20251001-v1:0",vertex:"claude-haiku-4-5@20251001",foundry:"claude-haiku-4-5"},CLAUDE_SONNET_4_CONFIG={firstParty:"claude-sonnet-4-20250514",bedrock:"us.anthropic.\u0063laude-sonnet-4-20250514-v1:0",vertex:"claude-sonnet-4@20250514",foundry:"claude-sonnet-4"},CLAUDE_SONNET_4_5_CONFIG={firstParty:"claude-sonnet-4-5-20250929",bedrock:"us.anthropic.\u0063laude-sonnet-4-5-20250929-v1:0",vertex:"claude-sonnet-4-5@20250929",foundry:"claude-sonnet-4-5"},CLAUDE_OPUS_4_CONFIG={firstParty:"claude-opus-4-20250514",bedrock:"us.anthropic.\u0063laude-opus-4-20250514-v1:0",vertex:"claude-opus-4@20250514",foundry:"claude-opus-4"},CLAUDE_OPUS_4_1_CONFIG={firstParty:"claude-opus-4-1-20250805",bedrock:"us.anthropic.\u0063laude-opus-4-1-20250805-v1:0",vertex:"claude-opus-4-1@20250805",foundry:"claude-opus-4-1"},CLAUDE_OPUS_4_5_CONFIG={firstParty:"claude-opus-4-5-20251101",bedrock:"us.anthropic.\u0063laude-opus-4-5-20251101-v1:0",vertex:"claude-opus-4-5@20251101",foundry:"claude-opus-4-5"},CLAUDE_OPUS_4_6_CONFIG={firstParty:"claude-opus-4-6",bedrock:"us.anthropic.\u0063laude-opus-4-6-v1",vertex:"claude-opus-4-6",foundry:"claude-opus-4-6"},CLAUDE_OPUS_4_7_CONFIG={firstParty:"claude-opus-4-7",bedrock:"us.anthropic.\u0063laude-opus-4-7-v1",vertex:"claude-opus-4-7",foundry:"claude-opus-4-7"},CLAUDE_OPUS_4_8_CONFIG={firstParty:"claude-opus-4-8",bedrock:"us.anthropic.\u0063laude-opus-4-8-v1",vertex:"claude-opus-4-8",foundry:"claude-opus-4-8"},CLAUDE_SONNET_4_6_CONFIG={firstParty:"claude-sonnet-4-6",bedrock:"us.anthropic.\u0063laude-sonnet-4-6",vertex:"claude-sonnet-4-6",foundry:"claude-sonnet-4-6"},ALL_MODEL_CONFIGS={haiku35:CLAUDE_3_5_HAIKU_CONFIG,haiku45:CLAUDE_HAIKU_4_5_CONFIG,sonnet35:CLAUDE_3_5_V2_SONNET_CONFIG,sonnet37:CLAUDE_3_7_SONNET_CONFIG,sonnet40:CLAUDE_SONNET_4_CONFIG,sonnet45:CLAUDE_SONNET_4_5_CONFIG,sonnet46:CLAUDE_SONNET_4_6_CONFIG,opus40:CLAUDE_OPUS_4_CONFIG,opus41:CLAUDE_OPUS_4_1_CONFIG,opus45:CLAUDE_OPUS_4_5_CONFIG,opus46:CLAUDE_OPUS_4_6_CONFIG,opus47:CLAUDE_OPUS_4_7_CONFIG,opus48:CLAUDE_OPUS_4_8_CONFIG},CANONICAL_MODEL_IDS=Object.values(ALL_MODEL_CONFIGS).map(c3=>c3.firstParty),CANONICAL_ID_TO_KEY=Object.fromEntries(Object.entries(ALL_MODEL_CONFIGS).map(([key,cfg])=>[cfg.firstParty,key]))}});function getAPIProvider(){return isEnvTruthy(process.env.CLAUDE_CODE_USE_BEDROCK)?"bedrock":isEnvTruthy(process.env.CLAUDE_CODE_USE_VERTEX)?"vertex":isEnvTruthy(process.env.CLAUDE_CODE_USE_FOUNDRY)?"foundry":"firstParty"}function isFirstPartyAnthropicBaseUrl(){let baseUrl=process.env.ANTHROPIC_BASE_URL;if(!baseUrl)return!0;try{let host=new URL(baseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}var init_providers=__esm({"src/utils/model/providers.ts"(){init_envUtils();__name(getAPIProvider,"getAPIProvider");__name(isFirstPartyAnthropicBaseUrl,"isFirstPartyAnthropicBaseUrl")}});function getBuiltinModelStrings(provider){let out={};for(let key of MODEL_KEYS)out[key]=ALL_MODEL_CONFIGS[key][provider];return out}async function getBedrockModelStrings(){let fallback=getBuiltinModelStrings("bedrock"),profiles;try{profiles=await getBedrockInferenceProfiles()}catch(error40){return logError2(error40),fallback}if(!profiles?.length)return fallback;let out={};for(let key of MODEL_KEYS){let needle=ALL_MODEL_CONFIGS[key].firstParty;out[key]=findFirstMatch(profiles,needle)||fallback[key]}return out}function resolveOverriddenModel(modelId){let overrides;try{overrides=getInitialSettings().modelOverrides}catch{return modelId}if(!overrides)return modelId;for(let[canonicalId,override]of Object.entries(overrides))if(override===modelId)return canonicalId;return modelId}function resetModelStringsCache(){modelStringsCacheGeneration+=1,resetModelStrings()}var MODEL_KEYS,modelStringsCacheGeneration,updateBedrockModelStrings,init_modelStrings=__esm({"src/utils/model/modelStrings.ts"(){init_state();init_log3();init_sequential();init_settings2();init_bedrock();init_configs();init_providers();MODEL_KEYS=Object.keys(ALL_MODEL_CONFIGS);__name(getBuiltinModelStrings,"getBuiltinModelStrings");__name(getBedrockModelStrings,"getBedrockModelStrings");__name(resolveOverriddenModel,"resolveOverriddenModel");modelStringsCacheGeneration=0,updateBedrockModelStrings=sequential(async()=>{if(getModelStrings()!==null||getAPIProvider()!=="bedrock")return;let generation=modelStringsCacheGeneration;try{let ms=await getBedrockModelStrings();if(generation!==modelStringsCacheGeneration||getAPIProvider()!=="bedrock"||getModelStrings()!==null)return;setModelStrings(ms)}catch(error40){logError2(error40)}});__name(resetModelStringsCache,"resetModelStringsCache")}});var init_billing=__esm({"src/utils/billing.ts"(){init_auth();init_config3();init_envUtils()}});function getMockSubscriptionType(){return!mockEnabled||process.env.USER_TYPE!=="ant"?null:mockSubscriptionType||DEFAULT_MOCK_SUBSCRIPTION}function shouldUseMockSubscription(){return mockEnabled&&mockSubscriptionType!==null&&process.env.USER_TYPE==="ant"}var mockEnabled,mockSubscriptionType,DEFAULT_MOCK_SUBSCRIPTION,init_mockRateLimits=__esm({"src/services/mockRateLimits.ts"(){init_billing();mockEnabled=!1,mockSubscriptionType=null,DEFAULT_MOCK_SUBSCRIPTION="max";__name(getMockSubscriptionType,"getMockSubscriptionType");__name(shouldUseMockSubscription,"shouldUseMockSubscription")}});var init_getOauthProfile=__esm({"src/services/oauth/getOauthProfile.ts"(){init_oauth();init_auth();init_config3();init_log3()}});function shouldUseClaudeAIAuth(scopes){return!!scopes?.includes(CLAUDE_AI_INFERENCE_SCOPE)}var init_client2=__esm({"src/services/oauth/client.ts"(){init_analytics();init_oauth();init_auth();init_config3();init_debug();init_getOauthProfile();__name(shouldUseClaudeAIAuth,"shouldUseClaudeAIAuth")}});import{mkdirSync as mkdirSync2,writeFileSync as writeFileSync3}from"fs";function maybePersistTokenForSubprocesses(path10,token,tokenName){if(isEnvTruthy(process.env.CLAUDE_CODE_REMOTE))try{mkdirSync2(CCR_TOKEN_DIR,{recursive:!0,mode:448}),writeFileSync3(path10,token,{encoding:"utf8",mode:384}),logForDebugging(`Persisted ${tokenName} to ${path10} for subprocess access`)}catch(error40){logForDebugging(`Failed to persist ${tokenName} to disk (non-fatal): ${errorMessage(error40)}`,{level:"error"})}}function readTokenFromWellKnownFile(path10,tokenName){try{let token=getFsImplementation().readFileSync(path10,{encoding:"utf8"}).trim();return token?(logForDebugging(`Read ${tokenName} from well-known file ${path10}`),token):null}catch(error40){return isENOENT(error40)||logForDebugging(`Failed to read ${tokenName} from ${path10}: ${errorMessage(error40)}`,{level:"debug"}),null}}function getCredentialFromFd({envVar,wellKnownPath,label,getCached,setCached}){let cached2=getCached();if(cached2!==void 0)return cached2;let fdEnv=process.env[envVar];if(!fdEnv){let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}let fd=parseInt(fdEnv,10);if(Number.isNaN(fd))return logForDebugging(`${envVar} must be a valid file descriptor number, got: ${fdEnv}`,{level:"error"}),setCached(null),null;try{let fsOps=getFsImplementation(),fdPath=process.platform==="darwin"||process.platform==="freebsd"?`/dev/fd/${fd}`:`/proc/self/fd/${fd}`,token=fsOps.readFileSync(fdPath,{encoding:"utf8"}).trim();return token?(logForDebugging(`Successfully read ${label} from file descriptor ${fd}`),setCached(token),maybePersistTokenForSubprocesses(wellKnownPath,token,label),token):(logForDebugging(`File descriptor contained empty ${label}`,{level:"error"}),setCached(null),null)}catch(error40){logForDebugging(`Failed to read ${label} from file descriptor ${fd}: ${errorMessage(error40)}`,{level:"error"});let fromFile2=readTokenFromWellKnownFile(wellKnownPath,label);return setCached(fromFile2),fromFile2}}function getOAuthTokenFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_OAUTH_TOKEN_FILE_DESCRIPTOR",wellKnownPath:CCR_OAUTH_TOKEN_PATH,label:"OAuth token",getCached:getOauthTokenFromFd,setCached:setOauthTokenFromFd})}function getApiKeyFromFileDescriptor(){return getCredentialFromFd({envVar:"CLAUDE_CODE_API_KEY_FILE_DESCRIPTOR",wellKnownPath:CCR_API_KEY_PATH,label:"API key",getCached:getApiKeyFromFd,setCached:setApiKeyFromFd})}var CCR_TOKEN_DIR,CCR_OAUTH_TOKEN_PATH,CCR_API_KEY_PATH,CCR_SESSION_INGRESS_TOKEN_PATH,init_authFileDescriptor=__esm({"src/utils/authFileDescriptor.ts"(){init_state();init_debug();init_envUtils();init_errors2();init_fsOperations();CCR_TOKEN_DIR="/home/claude/.\u0063laude/remote",CCR_OAUTH_TOKEN_PATH=`${CCR_TOKEN_DIR}/.oauth_token`,CCR_API_KEY_PATH=`${CCR_TOKEN_DIR}/.api_key`,CCR_SESSION_INGRESS_TOKEN_PATH=`${CCR_TOKEN_DIR}/.session_ingress_token`;__name(maybePersistTokenForSubprocesses,"maybePersistTokenForSubprocesses");__name(readTokenFromWellKnownFile,"readTokenFromWellKnownFile");__name(getCredentialFromFd,"getCredentialFromFd");__name(getOAuthTokenFromFileDescriptor,"getOAuthTokenFromFileDescriptor");__name(getApiKeyFromFileDescriptor,"getApiKeyFromFileDescriptor")}});import{createHash}from"crypto";import{userInfo}from"os";function getMacOsKeychainStorageServiceName(serviceSuffix=""){let configDir=getClaudeConfigHomeDir(),dirHash=!process.env.CLAVUE_CONFIG_DIR?"":`-${createHash("sha256").update(configDir).digest("hex").substring(0,8)}`;return`Claude Code${getOauthConfig().OAUTH_FILE_SUFFIX}${serviceSuffix}${dirHash}`}function getUsername(){try{return process.env.USER||userInfo().username}catch{return"claude-code-user"}}function clearKeychainCache(){keychainCacheState.cache={data:null,cachedAt:0},keychainCacheState.generation++,keychainCacheState.readInFlight=null}var CREDENTIALS_SERVICE_SUFFIX,KEYCHAIN_CACHE_TTL_MS,keychainCacheState,init_macOsKeychainHelpers=__esm({"src/utils/secureStorage/macOsKeychainHelpers.ts"(){init_oauth();init_envUtils();CREDENTIALS_SERVICE_SUFFIX="-credentials";__name(getMacOsKeychainStorageServiceName,"getMacOsKeychainStorageServiceName");__name(getUsername,"getUsername");KEYCHAIN_CACHE_TTL_MS=3e4,keychainCacheState={cache:{data:null,cachedAt:0},generation:0,readInFlight:null};__name(clearKeychainCache,"clearKeychainCache")}});function normalizeApiKeyForConfig(apiKey){return apiKey.slice(-20)}var init_authPortable=__esm({"src/utils/authPortable.ts"(){init_envUtils();init_macOsKeychainHelpers();__name(normalizeApiKeyForConfig,"normalizeApiKeyForConfig")}});function isValidAwsStsOutput(obj){if(!obj||typeof obj!="object")return!1;let output=obj;if(!output.Credentials||typeof output.Credentials!="object")return!1;let credentials=output.Credentials;return typeof credentials.AccessKeyId=="string"&&typeof credentials.SecretAccessKey=="string"&&typeof credentials.SessionToken=="string"&&credentials.AccessKeyId.length>0&&credentials.SecretAccessKey.length>0&&credentials.SessionToken.length>0}async function checkStsCallerIdentity(){let{STSClient,GetCallerIdentityCommand}=await import("@aws-sdk/client-sts");await new STSClient().send(new GetCallerIdentityCommand({}))}async function clearAwsIniCache(){try{logForDebugging("Clearing AWS credential provider cache");let{fromIni}=await import("@aws-sdk/credential-providers");await fromIni({ignoreCache:!0})(),logForDebugging("AWS credential provider cache refreshed")}catch{logForDebugging("Failed to clear AWS credential cache (this is expected if no credentials are configured)")}}var init_aws=__esm({"src/utils/aws.ts"(){init_debug();__name(isValidAwsStsOutput,"isValidAwsStsOutput");__name(checkStsCallerIdentity,"checkStsCallerIdentity");__name(clearAwsIniCache,"clearAwsIniCache")}});var AwsAuthStatusManager,init_awsAuthStatusManager=__esm({"src/utils/awsAuthStatusManager.ts"(){init_signal();AwsAuthStatusManager=class _AwsAuthStatusManager{static{__name(this,"AwsAuthStatusManager")}static instance=null;status={isAuthenticating:!1,output:[]};changed=createSignal();static getInstance(){return _AwsAuthStatusManager.instance||(_AwsAuthStatusManager.instance=new _AwsAuthStatusManager),_AwsAuthStatusManager.instance}getStatus(){return{...this.status,output:[...this.status.output]}}startAuthentication(){this.status={isAuthenticating:!0,output:[]},this.changed.emit(this.getStatus())}addOutput(line){this.status.output.push(line),this.changed.emit(this.getStatus())}setError(error40){this.status.error=error40,this.changed.emit(this.getStatus())}endAuthentication(success2){success2?this.status={isAuthenticating:!1,output:[]}:this.status.isAuthenticating=!1,this.changed.emit(this.getStatus())}subscribe=this.changed.subscribe;static reset(){_AwsAuthStatusManager.instance&&(_AwsAuthStatusManager.instance.changed.clear(),_AwsAuthStatusManager.instance=null)}}}});var CLAUDE_CODE_20250219_BETA_HEADER,INTERLEAVED_THINKING_BETA_HEADER,CONTEXT_1M_BETA_HEADER,CONTEXT_MANAGEMENT_BETA_HEADER,STRUCTURED_OUTPUTS_BETA_HEADER,WEB_SEARCH_BETA_HEADER,TOOL_SEARCH_BETA_HEADER_3P,PROMPT_CACHING_SCOPE_BETA_HEADER,REDACT_THINKING_BETA_HEADER,TOKEN_EFFICIENT_TOOLS_BETA_HEADER,SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER,CLI_INTERNAL_BETA_HEADER,BEDROCK_EXTRA_PARAMS_HEADERS,init_betas=__esm({"src/constants/betas.ts"(){CLAUDE_CODE_20250219_BETA_HEADER="claude-code-20250219",INTERLEAVED_THINKING_BETA_HEADER="interleaved-thinking-2025-05-14",CONTEXT_1M_BETA_HEADER="context-1m-2025-08-07",CONTEXT_MANAGEMENT_BETA_HEADER="context-management-2025-06-27",STRUCTURED_OUTPUTS_BETA_HEADER="structured-outputs-2025-12-15",WEB_SEARCH_BETA_HEADER="web-search-2025-03-05",TOOL_SEARCH_BETA_HEADER_3P="tool-search-tool-2025-10-19",PROMPT_CACHING_SCOPE_BETA_HEADER="prompt-caching-scope-2026-01-05",REDACT_THINKING_BETA_HEADER="redact-thinking-2026-02-12",TOKEN_EFFICIENT_TOOLS_BETA_HEADER="token-efficient-tools-2026-03-28",SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER="",CLI_INTERNAL_BETA_HEADER=process.env.USER_TYPE==="ant"?"cli-internal-2026-02-09":"",BEDROCK_EXTRA_PARAMS_HEADERS=new Set([INTERLEAVED_THINKING_BETA_HEADER,CONTEXT_1M_BETA_HEADER,TOOL_SEARCH_BETA_HEADER_3P])}});function parseVersion(raw){if(!raw)return null;let parts=raw.split("-").map(part=>Number.parseInt(part,10));return parts.some(part=>Number.isNaN(part))?null:(parts[1]!==void 0&&parts[1]>=2e7&&(parts[1]=0),{major:parts[0]??0,minor:parts[1]??0})}function parseClaudeModelIdentity(model){let normalized=String(model??"").trim().toLowerCase();if(!normalized)return null;let modern=/claude-(opus|sonnet|haiku)-([0-9]+(?:-[0-9]+)?)/.exec(normalized);if(modern?.[1]&&modern[2]){let version2=parseVersion(modern[2]);return version2?{family:modern[1],version:version2}:null}let legacy=/claude-([0-9]+(?:-[0-9]+)?)-(opus|sonnet|haiku)/.exec(normalized);if(legacy?.[1]&&legacy[2]){let version2=parseVersion(legacy[1]);return version2?{family:legacy[2],version:version2}:null}return null}function getClaudeCanonicalModelName(model){let identity4=parseClaudeModelIdentity(model);if(!identity4||identity4.version.major<4)return null;let version2=identity4.version.minor===0?String(identity4.version.major):`${identity4.version.major}-${identity4.version.minor}`;return`claude-${identity4.family}-${version2}`}var init_claudeModelProfiles=__esm({"src/utils/model/claudeModelProfiles.ts"(){__name(parseVersion,"parseVersion");__name(parseClaudeModelIdentity,"parseClaudeModelIdentity");__name(getClaudeCanonicalModelName,"getClaudeCanonicalModelName")}});var cooldownTriggered,cooldownExpired,onCooldownTriggered,onCooldownExpired,overageRejection,onFastModeOverageRejection,orgFastModeChange,onOrgFastModeChanged,init_fastMode=__esm({"src/utils/fastMode.ts"(){init_oauth();init_growthbook();init_state();init_analytics();init_auth();init_bundledMode();init_config3();init_debug();init_envUtils();init_model();init_providers();init_privacyLevel();init_settings2();init_signal();cooldownTriggered=createSignal(),cooldownExpired=createSignal(),onCooldownTriggered=cooldownTriggered.subscribe,onCooldownExpired=cooldownExpired.subscribe,overageRejection=createSignal(),onFastModeOverageRejection=overageRejection.subscribe,orgFastModeChange=createSignal(),onOrgFastModeChanged=orgFastModeChange.subscribe}});var COST_TIER_3_15,COST_TIER_15_75,COST_TIER_5_25,COST_HAIKU_35,COST_HAIKU_45,MODEL_COSTS,init_modelCost=__esm({"src/utils/modelCost.ts"(){init_analytics();init_state();init_fastMode();init_configs();init_model();COST_TIER_3_15={inputTokens:3,outputTokens:15,promptCacheWriteTokens:3.75,promptCacheReadTokens:.3,webSearchRequests:.01},COST_TIER_15_75={inputTokens:15,outputTokens:75,promptCacheWriteTokens:18.75,promptCacheReadTokens:1.5,webSearchRequests:.01},COST_TIER_5_25={inputTokens:5,outputTokens:25,promptCacheWriteTokens:6.25,promptCacheReadTokens:.5,webSearchRequests:.01},COST_HAIKU_35={inputTokens:.8,outputTokens:4,promptCacheWriteTokens:1,promptCacheReadTokens:.08,webSearchRequests:.01},COST_HAIKU_45={inputTokens:1,outputTokens:5,promptCacheWriteTokens:1.25,promptCacheReadTokens:.1,webSearchRequests:.01},MODEL_COSTS={[firstPartyNameToCanonical(CLAUDE_3_5_HAIKU_CONFIG.firstParty)]:COST_HAIKU_35,[firstPartyNameToCanonical(CLAUDE_HAIKU_4_5_CONFIG.firstParty)]:COST_HAIKU_45,[firstPartyNameToCanonical(CLAUDE_3_5_V2_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_3_7_SONNET_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_5_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_SONNET_4_6_CONFIG.firstParty)]:COST_TIER_3_15,[firstPartyNameToCanonical(CLAUDE_OPUS_4_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_1_CONFIG.firstParty)]:COST_TIER_15_75,[firstPartyNameToCanonical(CLAUDE_OPUS_4_5_CONFIG.firstParty)]:COST_TIER_5_25,[firstPartyNameToCanonical(CLAUDE_OPUS_4_6_CONFIG.firstParty)]:COST_TIER_5_25}}});var init_aliases=__esm({"src/utils/model/aliases.ts"(){}});var init_modelAllowlist=__esm({"src/utils/model/modelAllowlist.ts"(){init_settings2();init_aliases();init_model();init_modelStrings()}});var init_antModels=__esm({"src/utils/model/antModels.ts"(){init_growthbook()}});function firstPartyNameToCanonical(name){name=name.toLowerCase();let claudeCanonical=getClaudeCanonicalModelName(name);if(claudeCanonical)return claudeCanonical;if(name.includes("claude-3-7-sonnet"))return"claude-3-7-sonnet";if(name.includes("claude-3-5-sonnet"))return"claude-3-5-sonnet";if(name.includes("claude-3-5-haiku"))return"claude-3-5-haiku";if(name.includes("claude-3-opus"))return"claude-3-opus";if(name.includes("claude-3-sonnet"))return"claude-3-sonnet";if(name.includes("claude-3-haiku"))return"claude-3-haiku";let match=name.match(/(claude-(\d+-\d+-)?\w+)/);return match&&match[1]?match[1]:name}function getCanonicalName(fullModelName){return firstPartyNameToCanonical(resolveOverriddenModel(fullModelName))}var init_model=__esm({"src/utils/model/model.ts"(){init_state();init_auth();init_context();init_envUtils();init_modelStrings();init_configs();init_claudeModelProfiles();init_modelCost();init_settings2();init_providers();init_figures2();init_modelAllowlist();init_aliases();init_antModels();init_stringUtils();__name(firstPartyNameToCanonical,"firstPartyNameToCanonical");__name(getCanonicalName,"getCanonicalName")}});var init_providerModelProfiles=__esm({"src/utils/model/providerModelProfiles.ts"(){init_claudeModelProfiles()}});var APP_NAME,APP_VERSION_FALLBACK,APP_VERSION,APP_WORDMARK,APP_BRAND_LOCKUP,init_branding=__esm({"src/constants/branding.ts"(){APP_NAME="Clavue",APP_VERSION_FALLBACK="10.12.13",APP_VERSION=typeof MACRO<"u"?"10.12.13":APP_VERSION_FALLBACK,APP_WORDMARK=`/${APP_NAME.toLowerCase()}`,APP_BRAND_LOCKUP=`\u9F8D ${APP_NAME.toUpperCase()}`}});function clear3PModelCapabilityOverrideCache(){get3PModelCapabilityOverride.cache?.clear?.()}var TIERS,get3PModelCapabilityOverride,init_modelSupportOverrides=__esm({"src/utils/model/modelSupportOverrides.ts"(){init_memoize();init_providers();TIERS=[{modelEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES"},{modelEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL",capabilitiesEnvVar:"ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES"}],get3PModelCapabilityOverride=memoize_default((model,capability)=>{if(getAPIProvider()==="firstParty")return;let m2=model.toLowerCase();for(let tier of TIERS){let pinned=process.env[tier.modelEnvVar],capabilities=process.env[tier.capabilitiesEnvVar];if(!(!pinned||capabilities===void 0)&&m2===pinned.toLowerCase())return capabilities.toLowerCase().split(",").map(s2=>s2.trim()).includes(capability)}},(model,capability)=>`${model.toLowerCase()}:${capability}`);__name(clear3PModelCapabilityOverrideCache,"clear3PModelCapabilityOverrideCache")}});function emptyState(){return{combo:{...EMPTY_COMBO},roleEfforts:{}}}function ensureState(sessionId){let id=normalizeSessionId(sessionId),state=sessionStates.get(id);return state||(state=emptyState(),sessionStates.set(id,state)),state}function normalizeSessionId(sessionId){return String(sessionId??"").trim()||activeSessionId||"default"}function isSafeSessionId(value){return typeof value=="string"&&value.length>0&&value.length<=256&&!/[\u0000-\u001f\u007f]/.test(value)}function hydrateSessionRouteStateFromEnv(env5=process.env){let raw=env5[SESSION_ROUTE_STATE_ENV],handoff=env5[SESSION_ROUTE_HANDOFF_ENV]==="1";if(delete env5[SESSION_ROUTE_STATE_ENV],delete env5[SESSION_ROUTE_HANDOFF_ENV],!(!handoff||!raw))try{let envelope=JSON.parse(raw),id=String(envelope.sessionId??"").trim();if(!isSafeSessionId(id)||!envelope.state||typeof envelope.state!="object")return;let state=envelope.state,combo={};if(state.combo&&typeof state.combo=="object")for(let[key,value]of Object.entries(state.combo))COMBO_KEYS.has(key)&&typeof value=="string"&&value.trim()&&(combo[key]=value.trim());let restored={combo,roleEfforts:{}};if(typeof state.providerProfileId=="string"&&state.providerProfileId.trim()&&(restored.providerProfileId=state.providerProfileId.trim()),sessionStates.set(id,restored),typeof state.model=="string"&&setSessionModelOverride(state.model,id),typeof state.effort=="string"&&setSessionEffortOverride(state.effort,id),state.roleEfforts&&typeof state.roleEfforts=="object")for(let[role,effort]of Object.entries(state.roleEfforts))typeof effort=="string"&&setSessionRoleEffortOverride(role,effort,id);typeof state.executionSpeed=="string"&&setSessionExecutionSpeed(state.executionSpeed,id),activeSessionId=id}catch{}}function getSessionProviderProfileId(sessionId){let id=ensureState(sessionId).providerProfileId;return id&&id.trim()?id.trim():void 0}function clearModelLinePins(state){state.combo={...EMPTY_COMBO},delete state.model,delete state.effort,state.roleEfforts={}}function setSessionProviderResolver(resolver){sessionProviderResolver=resolver}function ensureSessionProviderPinned(sessionId,explicitProfileId){let state=ensureState(sessionId??void 0);if(state.providerProfileId&&state.providerProfileId.trim())return;let id=String(explicitProfileId??"").trim();if(!id&&sessionProviderResolver)try{id=String(sessionProviderResolver(sessionId??void 0)??"").trim()}catch{id=""}if(!id)try{let mod=(init_providerProfiles(),__toCommonJS(providerProfiles_exports));id=String(mod.getResolvedCurrentProviderProfile?.(sessionId??void 0)?.id||mod.getActiveProviderProfileId?.()||"").trim()}catch{id=""}id&&(state.providerProfileId=id)}function clearSessionOverlaysForUnboundProfiles(){for(let state of sessionStates.values())state.providerProfileId&&state.providerProfileId.trim()||clearModelLinePins(state)}function setSessionModelOverride(model,sessionId){ensureSessionProviderPinned(sessionId);let state=ensureState(sessionId),value=String(model??"").trim();!value||value==="default"?delete state.model:state.model=value}function setSessionEffortOverride(effort,sessionId){effort!=null&&ensureSessionProviderPinned(sessionId);let state=ensureState(sessionId);if(effort==null){delete state.effort;return}let raw=String(effort).trim().toLowerCase();if(!raw){delete state.effort;return}return raw==="auto"||raw==="unset"?(state.effort="auto","auto"):raw==="x-high"||raw==="x_high"?(state.effort="xhigh","xhigh"):raw==="low"||raw==="medium"||raw==="high"||raw==="max"||raw==="xhigh"||raw==="ultra"?(state.effort=raw,raw):state.effort}function normalizeRoleEffortKey(role){let raw=String(role||"").trim().toLowerCase().replace(/[_\s-]+/g,"");if(!raw)return null;let aliases={main:"mainLoop",mainloop:"mainLoop",primary:"mainLoop",summary:"summarize",compact:"summarize",memory:"searchMemory",search:"searchMemory",quick:"quickSummary",bg:"background",plan:"planner",review:"reviewer",verify:"verifier",agent:"fallback",subagent:"fallback"},known=["mainLoop","summarize","extract","classify","searchMemory","quickSummary","background","planner","reviewer","judge","verifier","fallback"];if(known.includes(raw))return raw;for(let k of known)if(k.toLowerCase()===raw)return k;return aliases[raw]??null}function setSessionRoleEffortOverride(role,effort,sessionId){let key=normalizeRoleEffortKey(role);if(!key)return;effort!=null&&String(effort).trim()!==""&&ensureSessionProviderPinned(sessionId);let state=ensureState(sessionId),map3={...state.roleEfforts??{}};if(effort==null||String(effort).trim()===""){delete map3[key],state.roleEfforts=map3,key==="mainLoop"&&delete state.effort;return}let raw=String(effort).trim().toLowerCase(),pinned;if(raw==="auto"||raw==="unset")pinned="auto";else if(raw==="x-high"||raw==="x_high")pinned="xhigh";else if(raw==="low"||raw==="medium"||raw==="high"||raw==="max"||raw==="xhigh"||raw==="ultra")pinned=raw;else return map3[key];return map3[key]=pinned,state.roleEfforts=map3,key==="mainLoop"&&setSessionEffortOverride(pinned,sessionId),pinned}function setSessionExecutionSpeed(speed,sessionId){let state=ensureState(sessionId);if(speed==null||String(speed).trim()===""){delete state.executionSpeed;return}let raw=String(speed).trim().toLowerCase();if(raw==="clear"||raw==="default"||raw==="env"||raw==="unset"){delete state.executionSpeed;return}return raw==="grok"||raw==="turbo"||raw==="fast"||raw==="speed"?(state.executionSpeed="grok","grok"):raw==="balanced"||raw==="auto"||raw==="normal"?(state.executionSpeed="balanced","balanced"):raw==="quality"||raw==="high"||raw==="deep"?(state.executionSpeed="quality","quality"):state.executionSpeed}var EMPTY_COMBO,activeSessionId,sessionStates,SESSION_ROUTE_STATE_ENV,SESSION_ROUTE_HANDOFF_ENV,COMBO_KEYS,sessionProviderResolver,init_sessionComboRouting=__esm({"src/utils/model/sessionComboRouting.ts"(){EMPTY_COMBO={},activeSessionId="default",sessionStates=new Map;__name(emptyState,"emptyState");__name(ensureState,"ensureState");__name(normalizeSessionId,"normalizeSessionId");SESSION_ROUTE_STATE_ENV="CLAVUE_SESSION_ROUTE_STATE",SESSION_ROUTE_HANDOFF_ENV="CLAVUE_PAGER_ROUTE_HANDOFF",COMBO_KEYS=new Set(["primaryModel","smallFastModel","subagentModel","planModel","reviewModel","exploreModel","generalModel","guideModel","teamModel"]);__name(isSafeSessionId,"isSafeSessionId");__name(hydrateSessionRouteStateFromEnv,"hydrateSessionRouteStateFromEnv");__name(getSessionProviderProfileId,"getSessionProviderProfileId");__name(clearModelLinePins,"clearModelLinePins");sessionProviderResolver=null;__name(setSessionProviderResolver,"setSessionProviderResolver");__name(ensureSessionProviderPinned,"ensureSessionProviderPinned");__name(clearSessionOverlaysForUnboundProfiles,"clearSessionOverlaysForUnboundProfiles");hydrateSessionRouteStateFromEnv();__name(setSessionModelOverride,"setSessionModelOverride");__name(setSessionEffortOverride,"setSessionEffortOverride");__name(normalizeRoleEffortKey,"normalizeRoleEffortKey");__name(setSessionRoleEffortOverride,"setSessionRoleEffortOverride");__name(setSessionExecutionSpeed,"setSessionExecutionSpeed")}});function normalizeValue2(value){return String(value??"").trim()}function completeProviderRoutingSlotsFromPrimary(rawRouting,baseRouting={}){let presetId=normalizeValue2(rawRouting.presetId||baseRouting.presetId),primaryModel=normalizeValue2(rawRouting.primaryModel)||normalizeValue2(baseRouting.primaryModel),slotFallback=(presetId==="provider_default"||presetId==="custom")&&normalizeValue2(rawRouting.primaryModel).length>0?primaryModel:"",subagentModel=normalizeValue2(rawRouting.subagentModel)||normalizeValue2(baseRouting.subagentModel)||slotFallback,generalModel=normalizeValue2(rawRouting.generalModel)||normalizeValue2(baseRouting.generalModel)||subagentModel,planModel=normalizeValue2(rawRouting.planModel)||normalizeValue2(baseRouting.planModel)||primaryModel,exploreModel=normalizeValue2(rawRouting.exploreModel)||normalizeValue2(baseRouting.exploreModel)||generalModel,teamModel=normalizeValue2(rawRouting.teamModel)||normalizeValue2(baseRouting.teamModel)||generalModel,guideModel=normalizeValue2(rawRouting.guideModel)||normalizeValue2(baseRouting.guideModel)||planModel;return{primaryModel,subagentModel,smallFastModel:normalizeValue2(rawRouting.smallFastModel)||normalizeValue2(baseRouting.smallFastModel)||"",planModel,exploreModel,generalModel,teamModel,guideModel,reviewModel:normalizeValue2(rawRouting.reviewModel)||normalizeValue2(baseRouting.reviewModel)||generalModel}}function inferProviderModelFamily(model){let normalizedModel=normalizeValue2(model).toLowerCase();return normalizedModel?normalizedModel.includes("claude")?"claude":normalizedModel.startsWith("gpt-")||normalizedModel.startsWith("o1")||normalizedModel.startsWith("o3")||normalizedModel.startsWith("o4")||normalizedModel.includes("codex")?"openai":normalizedModel.startsWith("gemini-")?"gemini":normalizedModel.startsWith("grok-")?"grok":normalizedModel.startsWith("deepseek-")?"deepseek":normalizedModel.startsWith("qwen")?"qwen":normalizedModel.startsWith("kimi-")?"kimi":normalizedModel.startsWith("swe-")?"swe":normalizedModel.startsWith("glm-")?"glm":normalizedModel.startsWith("lingsi-")?"lingsi":"unknown":"unknown"}function isAnthropicMessagesCompatibleFamily(family){return family==="claude"||family==="deepseek"||family==="qwen"||family==="kimi"||family==="swe"||family==="glm"||family==="lingsi"}function getProviderModeSlotValues(routing){let primaryModel=normalizeValue2(routing?.primaryModel),executionModel=normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel)||primaryModel,fastModel=normalizeValue2(routing?.smallFastModel)||executionModel||primaryModel,planModel=normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)||primaryModel;return{primaryModel,haikuModel:fastModel||executionModel||primaryModel,sonnetModel:executionModel||primaryModel,opusModel:planModel||primaryModel}}function getProviderModeRawSlotValues(routing){return{primary:normalizeValue2(routing?.primaryModel),haiku:normalizeValue2(routing?.smallFastModel),sonnet:normalizeValue2(routing?.generalModel)||normalizeValue2(routing?.subagentModel),opus:normalizeValue2(routing?.planModel)||normalizeValue2(routing?.guideModel)}}function getConfiguredFamilies(routing){let slotValues=getProviderModeSlotValues(routing);return new Set(Object.values(slotValues).map(model=>inferProviderModelFamily(model)).filter(family=>family!=="unknown"))}function localize(language,english,chinese){return language==="zh"?chinese:english}function isProviderModelModeId(value){return VALID_PROVIDER_MODEL_MODES.has(value)}function getProviderModelModeDefinition(modeId){return PROVIDER_MODEL_MODE_DEFINITIONS[modeId]}function getDefaultProviderModelModeForProviderPreset(providerId){return providerId==="anthropic"||providerId==="glm"||providerId==="minimax"?"anthropic_native":providerId==="kimi"?"openai_native":"hybrid_compatible"}function getProviderModelModeForProfile(profile){let explicitMode=normalizeValue2(profile?.modelMode);if(isProviderModelModeId(explicitMode))return explicitMode;let presetId=normalizeValue2(profile?.modelRouting?.presetId);if(presetId==="claude_code_heritage")return"anthropic_native";if(presetId==="gpt_5_5_max"||presetId==="gpt_5_4_codex"||presetId==="gpt_5_1_stable"||presetId==="gpt_5_3_codex")return"openai_native";let configuredFamilies=getConfiguredFamilies(profile?.modelRouting);return configuredFamilies.size===1?configuredFamilies.has("claude")?"anthropic_native":configuredFamilies.has("openai")?"openai_native":"hybrid_compatible":configuredFamilies.size>1?"hybrid_compatible":getDefaultProviderModelModeForProviderPreset(profile?.providerId)}function getProviderModeSlotDefinition(modeId,slot){return getProviderModelModeDefinition(modeId).slotDefinitions[slot]}function getProviderModeAllowedModels(modeId,slot){return[...getProviderModeSlotDefinition(modeId,slot).allowedModels??[]]}function isProviderModelCompatibleWithMode(modeId,model){let normalizedModel=normalizeValue2(model);if(!normalizedModel)return!1;getProviderModelModeDefinition(modeId);let family=inferProviderModelFamily(normalizedModel);return modeId==="anthropic_native"?isAnthropicMessagesCompatibleFamily(family):modeId==="openai_native"?family==="openai":!0}function getProviderModeAllowedModelsForRole(modeId,role){switch(role){case"primary":return getProviderModeAllowedModels(modeId,"primary");case"subagent":return getProviderModeAllowedModels(modeId,"sonnet");case"fast":return getProviderModeAllowedModels(modeId,"haiku");case"plan":return getProviderModeAllowedModels(modeId,"opus")}}function createDefaultProviderModeSlotValues(modeId){if(modeId==="hybrid_compatible")return{primaryModel:"gpt-5.5",haikuModel:"deepseek-v4-flash",sonnetModel:"deepseek-v4-pro",opusModel:"gpt-5.5"};let definition=getProviderModelModeDefinition(modeId);return{primaryModel:definition.slotDefinitions.primary.defaultModel,haikuModel:definition.slotDefinitions.haiku.defaultModel,sonnetModel:definition.slotDefinitions.sonnet.defaultModel,opusModel:definition.slotDefinitions.opus.defaultModel}}function validateProviderModeRouting(modeId,routing,{language="en",requireExplicitHybridSelections=!1}={}){let definition=getProviderModelModeDefinition(modeId),rawSlotValues=getProviderModeRawSlotValues(routing),issues=[];for(let slot of PROVIDER_MODE_SLOT_ORDER){let model=rawSlotValues[slot],slotDefinition=definition.slotDefinitions[slot],normalizedModel=normalizeValue2(model),allowedModels=slotDefinition.allowedModels??[];if(!normalizedModel){requireExplicitHybridSelections&&slotDefinition.requireExplicitSelection===!0&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required for ${definition.label} mode.`,`${definition.label} \u6A21\u5F0F\u4E0B\u5FC5\u987B\u8BBE\u7F6E${slotDefinition.label}\u3002`)});continue}allowedModels.length>0&&!allowedModels.includes(normalizedModel)&&requireExplicitHybridSelections&&issues.push({level:"error",slot,message:localize(language,`${slotDefinition.label} is required to be explicitly set for this hybrid selection flow.`,`${slotDefinition.label} \u5728\u6B64\u7279\u6B8A\u6DF7\u5408\u9009\u62E9\u6D41\u7A0B\u4E2D\u9700\u8981\u660E\u786E\u8BBE\u7F6E\u3002`)})}return issues}function filterProviderModeAutoRepairCandidates(modeId,roles,candidates){let definition=getProviderModelModeDefinition(modeId),uniqueCandidates=[...new Set(candidates.map(candidate=>candidate.trim()))].filter(Boolean).filter(candidate=>isProviderModelCompatibleWithMode(modeId,candidate)),allowedSets=roles.map(role=>getProviderModeAllowedModelsForRole(modeId,role)).filter(models=>models.length>0).map(models=>new Set(models));return allowedSets.length===0?uniqueCandidates:uniqueCandidates.filter(candidate=>allowedSets.every(allowedModels=>allowedModels.has(candidate)))}var PROVIDER_MODE_SLOT_ORDER,PROVIDER_MODEL_MODE_DEFINITIONS,VALID_PROVIDER_MODEL_MODES,init_providerModes=__esm({"src/utils/providerModes.ts"(){__name(normalizeValue2,"normalizeValue");__name(completeProviderRoutingSlotsFromPrimary,"completeProviderRoutingSlotsFromPrimary");PROVIDER_MODE_SLOT_ORDER=["primary","haiku","sonnet","opus"];__name(inferProviderModelFamily,"inferProviderModelFamily");__name(isAnthropicMessagesCompatibleFamily,"isAnthropicMessagesCompatibleFamily");__name(getProviderModeSlotValues,"getProviderModeSlotValues");__name(getProviderModeRawSlotValues,"getProviderModeRawSlotValues");__name(getConfiguredFamilies,"getConfiguredFamilies");PROVIDER_MODEL_MODE_DEFINITIONS={anthropic_native:{id:"anthropic_native",label:"Anthropic-native",description:"Claude-family mode. Keep routing on Anthropic-compatible Claude models and validate native tool calling on that family.",providerPresetIds:["anthropic","openrouter","glm","minimax","custom"],routingPresetIds:["claude_code_heritage"],defaultRoutingPresetId:"claude_code_heritage",slotDefinitions:{primary:{label:"\u542F\u52A8\u6A21\u578B",description:"Main session workhorse model for Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},haiku:{label:"\u8F7B\u91CF\u6A21\u578B",description:"Fast-response helper slot for Anthropic-native mode.",placeholder:"claude-haiku-4-5",defaultModel:"claude-haiku-4-5"},sonnet:{label:"\u4E2D\u5EA6\u6A21\u578B",description:"Execution slot for day-to-day coding and subagent work in Anthropic-native mode.",placeholder:"claude-sonnet-4-6",defaultModel:"claude-sonnet-4-6"},opus:{label:"\u8BA1\u7B97\u6A21\u578B",description:"Planning and guidance slot for Anthropic-native mode.",placeholder:"claude-opus-4-6",defaultModel:"claude-opus-4-6"}}},openai_native:{id:"openai_native",label:"OpenAI-native",description:"GPT/Codex-family mode. Keep routing on GPT/Codex models and validate the Responses compatibility route on that family.",providerPresetIds:["kimi","openrouter","custom"],routingPresetIds:["gpt_5_5_max","gpt_5_4_codex","gpt_5_1_stable","gpt_5_3_codex"],defaultRoutingPresetId:"gpt_5_5_max",slotDefinitions:{primary:{label:"\u542F\u52A8\u6A21\u578B",description:"Main session workhorse model for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]},haiku:{label:"\u8F7B\u91CF\u6A21\u578B",description:"Fast-response helper slot for OpenAI-native mode.",placeholder:"gpt-5.3-codex",defaultModel:"gpt-5.3-codex",recommendedModels:["gpt-5.3-codex","gpt-5.4","gpt-5.1"]},sonnet:{label:"\u4E2D\u5EA6\u6A21\u578B",description:"Execution slot for day-to-day coding and subagent work in OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.3-codex","gpt-5.4","gpt-5.1"]},opus:{label:"\u8BA1\u7B97\u6A21\u578B",description:"Planning and guidance slot for OpenAI-native mode.",placeholder:"gpt-5.5",defaultModel:"gpt-5.5",recommendedModels:["gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.1"]}}},hybrid_compatible:{id:"hybrid_compatible",label:"Hybrid-compatible",description:"Mixed-family mode. Supports all major model families via custom/OpenAI-compatible gateways (gpt-5.*, claude-*, gemini-*, grok-*, kimi-*, swe-*, glm-*, lingsi-* etc.). Model names are matched by prefix for maximum flexibility with user-managed endpoints.",providerPresetIds:["custom","openrouter"],routingPresetIds:["custom","gpt55_deepseek_combo","deepseek_gpt_combo","grok_current"],defaultRoutingPresetId:"gpt55_deepseek_combo",slotDefinitions:{primary:{label:"\u542F\u52A8\u6A21\u578B",description:"Main session slot. For custom providers: accepts any model string (gpt-5.*, claude-*, gemini-*, grok-* etc.). Prefix matching is used for routing.",placeholder:"gemini-3-5-flash-high",defaultModel:"gpt-5.5",requireExplicitSelection:!1},haiku:{label:"\u8F7B\u91CF\u6A21\u578B",description:"Fast helper slot. For custom providers: any fast model via prefix (e.g. gpt-5.3-*, gemini-3-5-flash, claude-haiku-*)",placeholder:"gemini-3-5-flash",defaultModel:"gpt-5.3-codex",requireExplicitSelection:!1},sonnet:{label:"\u4E2D\u5EA6\u6A21\u578B",description:"Execution slot. For custom providers: any strong model via prefix matching (gpt-5.5-*, claude-sonnet-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-sonnet-4-6",requireExplicitSelection:!1},opus:{label:"\u8BA1\u7B97\u6A21\u578B",description:"Planning slot. For custom providers: any top-tier model via prefix (gpt-5.5-*, claude-opus-*, gemini-*, grok-*)",placeholder:"gemini-3-5-flash-high",defaultModel:"claude-opus-4-6",requireExplicitSelection:!1}}}},VALID_PROVIDER_MODEL_MODES=new Set(Object.keys(PROVIDER_MODEL_MODE_DEFINITIONS));__name(localize,"localize");__name(isProviderModelModeId,"isProviderModelModeId");__name(getProviderModelModeDefinition,"getProviderModelModeDefinition");__name(getDefaultProviderModelModeForProviderPreset,"getDefaultProviderModelModeForProviderPreset");__name(getProviderModelModeForProfile,"getProviderModelModeForProfile");__name(getProviderModeSlotDefinition,"getProviderModeSlotDefinition");__name(getProviderModeAllowedModels,"getProviderModeAllowedModels");__name(isProviderModelCompatibleWithMode,"isProviderModelCompatibleWithMode");__name(getProviderModeAllowedModelsForRole,"getProviderModeAllowedModelsForRole");__name(createDefaultProviderModeSlotValues,"createDefaultProviderModeSlotValues");__name(validateProviderModeRouting,"validateProviderModeRouting");__name(filterProviderModeAutoRepairCandidates,"filterProviderModeAutoRepairCandidates")}});function normalizeValue3(value){return String(value||"").trim()}function getConfiguredFamilies2(routing){let models=[routing?.primaryModel,routing?.subagentModel,routing?.smallFastModel,routing?.planModel,routing?.exploreModel,routing?.generalModel,routing?.teamModel,routing?.guideModel];return new Set(models.map(model=>inferProviderModelFamily(model)).filter(family=>family!=="unknown"))}function getConfiguredStrategyId(profile){let strategyId=normalizeValue3(profile?.modelRouting?.presetId);return strategyId==="provider_default"||strategyId==="claude_code_heritage"||strategyId==="gpt_5_5_max"||strategyId==="gpt_5_4_codex"||strategyId==="gpt_5_1_stable"||strategyId==="gpt_5_3_codex"||strategyId==="gpt55_deepseek_combo"||strategyId==="deepseek_gpt_combo"||strategyId==="custom"?strategyId:"unknown"}function inferProviderExperienceFamily(profile){return getProviderModelModeForProfile(profile)}function isGptFamilyModel(model){let normalized=String(model??"").trim().toLowerCase();return!normalized||normalized.includes("codex")?!1:/^gpt-5(?:[.-]|$)/.test(normalized)||/^gpt-6(?:[.-]|$)/.test(normalized)}function getHomogeneousSlotPerformanceWarning(profile,{language="en"}={}){let routing=profile?.modelRouting;if(!routing)return null;let slotValues=getProviderModeSlotValues(routing),configuredModels=[routing.primaryModel,routing.smallFastModel,slotValues.haikuModel,slotValues.sonnetModel,slotValues.opusModel].map(value=>String(value??"").trim()).filter(Boolean);if(configuredModels.length===0)return null;let uniqueModels=[...new Set(configuredModels)];if(uniqueModels.length!==1||!isGptFamilyModel(uniqueModels[0]))return null;let model=uniqueModels[0];return language==="zh"?`[WARN] \u6240\u6709 provider \u69FD\u4F4D\u5F53\u524D\u90FD\u8DEF\u7531\u5230 ${model}\u3002\u5206\u7C7B\u5668\u3001\u538B\u7F29\u548C\u5B50\u4EE3\u7406\u65E0\u6CD5\u4F7F\u7528\u66F4\u5FEB\u6A21\u578B\uFF1B\u5982\u9700\u63D0\u901F\u8BF7\u901A\u8FC7 /provider \u914D\u7F6E\u4E0D\u540C\u69FD\u4F4D\uFF0C\u6216\u7528 /effort \u663E\u5F0F\u9009\u62E9\u63A8\u7406\u7B49\u7EA7\u3002Clavue \u4E0D\u4F1A\u81EA\u52A8\u8986\u76D6\u4F60\u7684 effort \u8BBE\u7F6E\u3002`:`[WARN] Every provider slot currently routes to ${model}. Classifiers, compaction, and subagents cannot use a faster model. Reconfigure slots via /provider or choose an explicit effort tier with /effort. Clavue will not override your effort settings automatically.`}function getProviderLocalValidationWarnings(profile,{language="en"}={}){if(!profile)return[];let modeId=inferProviderExperienceFamily(profile),strategyId=getConfiguredStrategyId(profile),configuredFamilies=getConfiguredFamilies2(profile.modelRouting),warnings=validateProviderModeRouting(modeId,profile.modelRouting,{language,requireExplicitHybridSelections:!1}).filter(issue2=>issue2.level==="warn"||issue2.level==="error").map(issue2=>`[WARN] ${issue2.message}`);strategyId==="claude_code_heritage"&&configuredFamilies.has("openai")&&warnings.push(language==="zh"?"[WARN] Anthropic-native heritage \u8DEF\u7531\u5E94\u4F18\u5148\u4FDD\u6301\u5728 Claude family \u5185\u3002\u82E5\u8981\u5207\u6362\u5230 GPT family\uFF0C\u8BF7\u6539\u7528 OpenAI-native \u7B56\u7565\u3002":"[WARN] Anthropic-native heritage routing should stay in the Claude family. Switch to an OpenAI-native strategy if the GPT family is intentional."),(strategyId==="gpt_5_4_codex"||strategyId==="gpt_5_1_stable"||strategyId==="gpt_5_3_codex")&&configuredFamilies.has("claude")&&warnings.push(language==="zh"?"[WARN] OpenAI-native \u8DEF\u7531\u7B56\u7565\u5F53\u524D\u6DF7\u5165\u4E86 Claude family \u6A21\u578B\u3002\u82E5\u8FD9\u662F\u6709\u610F\u884C\u4E3A\uFF0C\u8BF7\u6539\u7528 Custom routing\u3002":"[WARN] The OpenAI-native routing strategy is mixed with Claude-family models. Use Custom routing if this blend is intentional."),strategyId==="custom"&&configuredFamilies.size>1&&warnings.push(language==="zh"?"[WARN] Custom routing \u5F53\u524D\u8DE8\u8D8A\u591A\u4E2A model family\u3002\u8BF7\u5728\u4F9D\u8D56\u539F\u751F\u5DE5\u4F5C\u6D41\u524D\u91CD\u65B0\u9A8C\u8BC1\u8FD9\u6761\u8DEF\u7531\u3002":"[WARN] Custom routing spans multiple model families. Revalidate the route before relying on native workflows."),normalizeValue3(profile.providerId)==="anthropic"&&modeId==="openai_native"&&warnings.push(language==="zh"?"[WARN] \u5F53\u524D\u4F7F\u7528\u5B98\u65B9 Anthropic preset\uFF0C\u4F46\u8DEF\u7531\u7B56\u7565\u662F OpenAI-native\u3002\u8FD9\u901A\u5E38\u610F\u5473\u7740 provider preset \u4E0E\u6A21\u578B\u5BB6\u65CF\u610F\u56FE\u4E0D\u4E00\u81F4\u3002":"[WARN] The official Anthropic preset is paired with an OpenAI-native routing strategy. This usually means the provider preset and model-family intent are misaligned.");let homogeneousSlotWarning=getHomogeneousSlotPerformanceWarning(profile,{language});return homogeneousSlotWarning&&warnings.push(homogeneousSlotWarning),warnings}var CURRENT_PROVIDER_PROFILE_ID,init_providerProfileMetadata=__esm({"src/utils/providerProfileMetadata.ts"(){init_providerModes();CURRENT_PROVIDER_PROFILE_ID="__current_provider__";__name(normalizeValue3,"normalizeValue");__name(getConfiguredFamilies2,"getConfiguredFamilies");__name(getConfiguredStrategyId,"getConfiguredStrategyId");__name(inferProviderExperienceFamily,"inferProviderExperienceFamily");__name(isGptFamilyModel,"isGptFamilyModel");__name(getHomogeneousSlotPerformanceWarning,"getHomogeneousSlotPerformanceWarning");__name(getProviderLocalValidationWarnings,"getProviderLocalValidationWarnings")}});function isPlaceholderProviderCredential(value){let normalizedValue=value.trim().toLowerCase();return normalizedValue?PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES.has(normalizedValue)?!0:/^your[-_\s]?[a-z0-9_-]*(api[-_\s]?key|auth[-_\s]?token|key|token)[a-z0-9_-]*$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?your[-_a-z0-9]*here$/iu.test(normalizedValue)||/^(sk|sk-ant|sk-proj|sk-or|sk-[a-z0-9_-]+)[-_]?(test|example|placeholder|dummy|fake)$/iu.test(normalizedValue)||/^(test|example|placeholder|dummy|fake)[-_]?(api[-_]?key|auth[-_]?token|token)$/iu.test(normalizedValue):!1}var PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES,init_providerCredentials=__esm({"src/utils/providerCredentials.ts"(){PLACEHOLDER_PROVIDER_CREDENTIAL_EXACT_VALUES=new Set(["your_api_key","your-api-key","your_api_key_here","your-api-key-here","your_key","your-key","your_key_here","your-key-here","your api key","your api key here","your key","your key here","your_token","your-token","your_token_here","your-token-here","your auth token","your auth token here","api_key","api-key","api_key_here","api-key-here","auth_token","auth-token","auth_token_here","auth-token-here","token_here","token-here","placeholder","<api_key>","<api-key>","<your_api_key>","<your-api-key>","<token>","<your_token>","<your-token>"]);__name(isPlaceholderProviderCredential,"isPlaceholderProviderCredential")}});function normalizeProviderBaseUrl(value){let trimmedValue=String(value??"").trim();return trimmedValue?trimmedValue.replace(/\/v1(?:\/messages|\/responses)?\/?$/i,"").replace(/\/+$/,""):""}function extractRawProviderHost(value){let match=String(value).trim().match(/^(?:https?:\/\/)?([^/:?#\s]+)/i);return String(match?.[1]??"").trim().toLowerCase().replace(/^\[|\]$/g,"")}function isValidIpv4Host(host){return/^\d{1,3}(?:\.\d{1,3}){3}$/.test(host)?host.split(".").every(part=>{let n2=Number(part);return Number.isInteger(n2)&&n2>=0&&n2<=255}):!1}function validateProviderBaseUrl(value){let normalized=normalizeProviderBaseUrl(value);if(!normalized)return{ok:!1,normalized:"",error:"Provider base URL is required (e.g. https://api.example.com)."};if(/^[a-z][a-z0-9+.-]*:\/\//i.test(normalized)&&!/^https?:\/\//i.test(normalized))return{ok:!1,normalized,error:`Provider base URL must use http or https (got ${normalized.split("://")[0]}://).`};if(!/^https?:\/\//i.test(normalized)){let bareHost=extractRawProviderHost(normalized);if(!bareHost.includes(".")&&bareHost!=="localhost"&&!isValidIpv4Host(bareHost))return{ok:!1,normalized,error:"API URL must start with http:// or https://, or be a full domain (e.g. api.example.com)."};normalized=`https://${normalized}`}let rawHost=extractRawProviderHost(normalized);if(!rawHost)return{ok:!1,normalized,error:"Provider base URL is missing a hostname."};if(/^\d+$/.test(rawHost))return{ok:!1,normalized,error:`Provider base URL host looks truncated (${rawHost}). Use a full hostname or IPv4 address.`};if(/^\d+(?:\.\d+){1,2}$/.test(rawHost))return{ok:!1,normalized,error:`Provider base URL host looks like an incomplete IP (${rawHost}).`};let parsed;try{parsed=new URL(normalized)}catch{return{ok:!1,normalized,error:`Invalid provider base URL: ${normalized}`}}if(parsed.protocol!=="http:"&&parsed.protocol!=="https:")return{ok:!1,normalized,error:`Provider base URL must use http or https (got ${parsed.protocol}).`};let host=String(parsed.hostname||"").trim().toLowerCase();return host?isValidIpv4Host(rawHost)||isValidIpv4Host(host)?{ok:!0,normalized}:host==="localhost"||host==="::1"||rawHost==="localhost"?{ok:!0,normalized}:!/[a-z]/i.test(rawHost)||rawHost.length<2?{ok:!1,normalized,error:`Provider base URL host is not a valid hostname (${rawHost}).`}:rawHost.startsWith(".")||rawHost.endsWith(".")||rawHost.includes("..")?{ok:!1,normalized,error:`Provider base URL host is malformed (${rawHost}).`}:{ok:!0,normalized}:{ok:!1,normalized,error:"Provider base URL is missing a hostname."}}function assertValidProviderBaseUrl(value){let result2=validateProviderBaseUrl(value);if(!result2.ok)throw new Error(result2.error||"Invalid provider base URL.");return result2.normalized}var init_providerRuntimeCore=__esm({"src/utils/providerRuntimeCore.ts"(){__name(normalizeProviderBaseUrl,"normalizeProviderBaseUrl");__name(extractRawProviderHost,"extractRawProviderHost");__name(isValidIpv4Host,"isValidIpv4Host");__name(validateProviderBaseUrl,"validateProviderBaseUrl");__name(assertValidProviderBaseUrl,"assertValidProviderBaseUrl")}});function applyModelSlot(profile,model,slot,dependencies){if(!model)return;let prefix=`ANTHROPIC_DEFAULT_${slot.toUpperCase()}_MODEL`;process.env[prefix]=model;let name=dependencies.getModelDisplayName(model,slot),description=dependencies.getModelDescription(model,slot);name&&(process.env[`${prefix}_NAME`]=name),description&&(process.env[`${prefix}_DESCRIPTION`]=description);let capabilities=dependencies.serializeCapabilities(profile,model);capabilities&&(process.env[`${prefix}_SUPPORTED_CAPABILITIES`]=capabilities)}function applyProviderProfileToProcessEnv(profile,dependencies){for(let key of providerEnvKeys)delete process.env[key];if(dependencies.clearCaches(),!profile)return;let baseUrlValidation=dependencies.validateBaseUrl(profile.baseUrl);if(!baseUrlValidation.ok)throw new Error(baseUrlValidation.error||"Invalid provider base URL \u2014 refusing to apply route.");process.env.ANTHROPIC_BASE_URL=baseUrlValidation.normalized,process.env.CLAVUE_API_DIALECT=dependencies.normalizeDialect(profile),profile.authType==="auth_token"?process.env.ANTHROPIC_AUTH_TOKEN=profile.credential:process.env.ANTHROPIC_API_KEY=profile.credential;let routing=profile.modelRouting;if(routing.primaryModel){process.env.ANTHROPIC_MODEL=routing.primaryModel,process.env.ANTHROPIC_CUSTOM_MODEL_OPTION=routing.primaryModel;let name=dependencies.getModelDisplayName(routing.primaryModel,"primary"),description=dependencies.getModelDescription(routing.primaryModel,"primary");name&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_NAME=name),description&&(process.env.ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION=description)}routing.smallFastModel&&(process.env.ANTHROPIC_SMALL_FAST_MODEL=routing.smallFastModel),routing.subagentModel&&routing.subagentModel!=="inherit"&&(process.env.CLAUDE_CODE_SUBAGENT_MODEL=routing.subagentModel);let slots=dependencies.getSlotDefaults(routing);applyModelSlot(profile,slots.opusModel,"opus",dependencies),applyModelSlot(profile,slots.sonnetModel,"sonnet",dependencies),applyModelSlot(profile,slots.haikuModel,"haiku",dependencies)}var providerEnvKeys,init_providerProfileProcessEnv=__esm({"src/utils/providerProfileProcessEnv.ts"(){providerEnvKeys=["ANTHROPIC_API_KEY","ANTHROPIC_AUTH_TOKEN","ANTHROPIC_BASE_URL","ANTHROPIC_MODEL","ANTHROPIC_SMALL_FAST_MODEL","ANTHROPIC_CUSTOM_MODEL_OPTION","ANTHROPIC_CUSTOM_MODEL_OPTION_NAME","ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION","ANTHROPIC_DEFAULT_OPUS_MODEL","ANTHROPIC_DEFAULT_OPUS_MODEL_NAME","ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION","ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES","ANTHROPIC_DEFAULT_SONNET_MODEL","ANTHROPIC_DEFAULT_SONNET_MODEL_NAME","ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION","ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES","ANTHROPIC_DEFAULT_HAIKU_MODEL","ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME","ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION","ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES","CLAUDE_CODE_SUBAGENT_MODEL","CLAVUE_API_DIALECT","MYCLAUDE_API_DIALECT","CLAUDE_CODE_API_DIALECT","CLAUDE_CODE_PROVIDER_DIALECT","CLAUDE_CODE_USE_BEDROCK","CLAUDE_CODE_USE_VERTEX","CLAUDE_CODE_USE_FOUNDRY"];__name(applyModelSlot,"applyModelSlot");__name(applyProviderProfileToProcessEnv,"applyProviderProfileToProcessEnv")}});function slotFields(slot){switch(slot){case"primary":return["primaryModel"];case"haiku":return["smallFastModel"];case"sonnet":return["subagentModel","generalModel","exploreModel","teamModel"];case"opus":return["planModel","guideModel"]}}function modeSlotCurrentModel(routing,slot){for(let field of slotFields(slot)){let value=String(routing[field]??"").trim();if(value)return value}return""}function appendEmptyHybridModeSlotIssues(issues,routing){for(let slot of["primary","haiku","sonnet","opus"])!issues.some(issue2=>issue2.slot===slot)&&!modeSlotCurrentModel(routing,slot)&&issues.push({level:"error",slot,message:`\u6DF7\u5408\u7EC4\u5408\u7684 ${slot} \u69FD\u4F4D\u4E3A\u7A7A\u3002`})}function fillEmptySlotFromPrimary(routing,slot,fallbackModel){let model=fallbackModel.trim();if(!model)return routing;let next={...routing};for(let field of slotFields(slot))String(next[field]??"").trim()||(next[field]=model);return next}function repairProviderRoutingSlots(routing,issues,defaultPrimary){let next={...routing},repaired=!1,messages=[],primary=routing.primaryModel.trim();for(let issue2 of issues){if(!issue2.slot){messages.push(issue2.message);continue}let current=modeSlotCurrentModel(routing,issue2.slot);if(current){messages.push(`[WARN] ${issue2.message}\uFF08\u4FDD\u7559\u5F53\u524D ${issue2.slot} = ${current}\uFF0C\u672A\u5F3A\u5236\u5207\u6362\u7EC4\u5408\uFF09`);continue}if(issue2.slot==="primary"){if(!defaultPrimary){messages.push(`[ERROR] ${issue2.message}\uFF1B\u4E3B\u6A21\u578B\u4E3A\u7A7A\u4E14\u65E0\u53EF\u7528\u9ED8\u8BA4\u503C\uFF0C\u8BF7\u7528\u6237\u81EA\u884C\u8BBE\u7F6E\u3002`);continue}next={...next,primaryModel:defaultPrimary},repaired=!0,messages.push(`[REPAIRED] primary \u5DF2\u586B\u5165 ${defaultPrimary}\uFF08\u4EC5\u8865\u4E3B\u6A21\u578B\uFF0C\u672A\u5207\u6362\u6574\u5957\u7EC4\u5408\uFF09`);continue}let fallback=primary||next.primaryModel.trim();if(!fallback){messages.push(`[ERROR] ${issue2.message}\uFF1B\u4E3B\u6A21\u578B\u4E0D\u53EF\u7528\uFF0C\u65E0\u6CD5\u5BF9 ${issue2.slot} \u505A\u7EC4\u5408\u5185\u515C\u5E95\uFF0C\u8BF7\u7528\u6237\u81EA\u884C\u5904\u7406\u3002`);continue}let before2=modeSlotCurrentModel(next,issue2.slot);next=fillEmptySlotFromPrimary(next,issue2.slot,fallback),modeSlotCurrentModel(next,issue2.slot)!==before2&&(repaired=!0,messages.push(`[REPAIRED] ${issue2.slot} \u7A7A\u69FD\u4F4D\u5DF2\u515C\u5E95\u5230\u4E3B\u6A21\u578B ${fallback}\uFF08\u7EC4\u5408\u914D\u7F6E\u672A\u6574\u4F53\u5207\u6362\uFF09`))}return{routing:next,repaired,messages}}var init_providerRoutingRepair=__esm({"src/utils/providerRoutingRepair.ts"(){__name(slotFields,"slotFields");__name(modeSlotCurrentModel,"modeSlotCurrentModel");__name(appendEmptyHybridModeSlotIssues,"appendEmptyHybridModeSlotIssues");__name(fillEmptySlotFromPrimary,"fillEmptySlotFromPrimary");__name(repairProviderRoutingSlots,"repairProviderRoutingSlots")}});function getRequestUrl(input){try{return input instanceof Request?new URL(input.url):new URL(String(input))}catch{return null}}function isOpenAIChatCompletionsModel(model){let m2=String(model??"").trim().toLowerCase();return m2?!!(m2.startsWith("gpt-image-")||m2.startsWith("gemini-")||m2.includes("gemini")||m2.startsWith("grok-")||m2.includes("grok")||m2.startsWith("deepseek-")||m2.includes("deepseek")||m2.startsWith("minimax")||m2.includes("minimax")||m2.startsWith("kimi")||m2.includes("kimi")||m2.startsWith("qwen")||m2.includes("qwen")||/^glm(?:[-_.]|$)/i.test(m2)||/(?:^|[^a-z])glm(?:[-_.\d]|$)/i.test(m2)||m2==="auto"||m2.startsWith("clavue")):!1}function getUpstreamApiPathForTransport(_model,transport){switch(transport){case"openai_chat_completions":return OPENAI_CHAT_COMPLETIONS_PATH;case"openai_responses":return OPENAI_RESPONSES_PATH;default:return ANTHROPIC_MESSAGES_PATH}}function normalizePathname(path10){let trimmed=String(path10??"").trim();if(!trimmed)return trimmed;if(trimmed.startsWith("http://")||trimmed.startsWith("https://"))try{return new URL(trimmed).pathname||trimmed}catch{return trimmed}return trimmed.startsWith("/")?trimmed:`/${trimmed}`}function isGptResponsesPrimaryModel(model){let m2=String(model??"").trim().toLowerCase();return!m2||m2.startsWith("gpt-image-")?!1:!!(m2.includes("gpt-5")||/^gpt-5(?:[.-]|$)/.test(m2)||m2.startsWith("codex-")||/(^|[^a-z])codex(?:[-_.]|$)/.test(m2))}function isOpenAIResponsesPath(path10){let p=String(path10??"");return p===OPENAI_RESPONSES_PATH||p.endsWith("/responses")||/\/v1\/responses\/?$/i.test(p)}function toChatCompletionsUrl(upstreamUrl){let u2=new URL(upstreamUrl),path10=u2.pathname||"";return/\/responses\/?$/i.test(path10)?u2.pathname=path10.replace(/\/responses\/?$/i,"/chat/completions"):path10.endsWith(OPENAI_RESPONSES_PATH)?u2.pathname=path10.slice(0,-OPENAI_RESPONSES_PATH.length)+OPENAI_CHAT_COMPLETIONS_PATH:u2.pathname=OPENAI_CHAT_COMPLETIONS_PATH,u2.toString()}function canRescueResponsesToChatCompletions(model){if(isGptResponsesPrimaryModel(model)||isOpenAIChatCompletionsModel(model))return!0;let m2=String(model??"").trim().toLowerCase();return m2==="auto"||m2.startsWith("clavue")}function shouldFallbackGptResponsesToChatCompletions(input){if(!isOpenAIResponsesPath(input.upstreamPath)||!canRescueResponsesToChatCompletions(input.model))return!1;let status=Number(input.status)||0;if(status===404||status===405||status===501||status===502||status===503||status===504||status>=500)return!0;if(status===400||status===422||status===403){let t2=String(input.errorBody??"").toLowerCase();return t2?t2.includes("/v1/responses")||t2.includes("responses")||t2.includes("not found")||t2.includes("not supported")||t2.includes("unsupported")||t2.includes("unknown path")||t2.includes("no route")||t2.includes("invalid url")||t2.includes("endpoint")||t2.includes("does not exist")||t2.includes("method not allowed"):!1}return!1}function inferTransportFromUpstreamPath(path10){let pathname=normalizePathname(String(path10??""));return pathname?pathname===OPENAI_CHAT_COMPLETIONS_PATH||pathname.endsWith("/chat/completions")?"openai_chat_completions":pathname===OPENAI_RESPONSES_PATH||pathname.endsWith("/responses")?"openai_responses":pathname===ANTHROPIC_MESSAGES_PATH||pathname.endsWith("/messages")?"anthropic_messages":null:null}function resolveUpstreamRequestRoute(input){let override=String(input.upstreamPathOverride??"").trim();if(override){let path11=normalizePathname(override),transport=inferTransportFromUpstreamPath(path11)??input.transport;return{transport,path:path11,requestShape:transport,reason:`Fusion/endpoint path override \u2192 ${path11} (${transport})`}}let path10=getUpstreamApiPathForTransport(input.model,input.transport);return{transport:input.transport,path:path10,requestShape:input.transport,reason:input.transportReason?.trim()||`transport=${input.transport} \u2192 ${path10}`}}var OPENAI_RESPONSES_PATH,OPENAI_CHAT_COMPLETIONS_PATH,ANTHROPIC_MESSAGES_PATH,init_paths=__esm({"src/services/api/responsesAdapter/paths.ts"(){OPENAI_RESPONSES_PATH="/v1/responses",OPENAI_CHAT_COMPLETIONS_PATH="/v1/chat/completions",ANTHROPIC_MESSAGES_PATH="/v1/messages";__name(getRequestUrl,"getRequestUrl");__name(isOpenAIChatCompletionsModel,"isOpenAIChatCompletionsModel");__name(getUpstreamApiPathForTransport,"getUpstreamApiPathForTransport");__name(normalizePathname,"normalizePathname");__name(isGptResponsesPrimaryModel,"isGptResponsesPrimaryModel");__name(isOpenAIResponsesPath,"isOpenAIResponsesPath");__name(toChatCompletionsUrl,"toChatCompletionsUrl");__name(canRescueResponsesToChatCompletions,"canRescueResponsesToChatCompletions");__name(shouldFallbackGptResponsesToChatCompletions,"shouldFallbackGptResponsesToChatCompletions");__name(inferTransportFromUpstreamPath,"inferTransportFromUpstreamPath");__name(resolveUpstreamRequestRoute,"resolveUpstreamRequestRoute")}});var ENTER_PLAN_MODE_TOOL_NAME,init_constants6=__esm({"src/tools/EnterPlanModeTool/constants.ts"(){ENTER_PLAN_MODE_TOOL_NAME="EnterPlanMode"}});var SEND_MESSAGE_TOOL_NAME,init_constants7=__esm({"src/tools/SendMessageTool/constants.ts"(){SEND_MESSAGE_TOOL_NAME="SendMessage"}});var TASK_CREATE_TOOL_NAME,init_constants8=__esm({"src/tools/TaskCreateTool/constants.ts"(){TASK_CREATE_TOOL_NAME="TaskCreate"}});var TASK_GET_TOOL_NAME,init_constants9=__esm({"src/tools/TaskGetTool/constants.ts"(){TASK_GET_TOOL_NAME="TaskGet"}});var TASK_LIST_TOOL_NAME,init_constants10=__esm({"src/tools/TaskListTool/constants.ts"(){TASK_LIST_TOOL_NAME="TaskList"}});var TASK_UPDATE_TOOL_NAME,init_constants11=__esm({"src/tools/TaskUpdateTool/constants.ts"(){TASK_UPDATE_TOOL_NAME="TaskUpdate"}});var TEAM_CREATE_TOOL_NAME,init_constants12=__esm({"src/tools/TeamCreateTool/constants.ts"(){TEAM_CREATE_TOOL_NAME="TeamCreate"}});var TEAM_DELETE_TOOL_NAME,init_constants13=__esm({"src/tools/TeamDeleteTool/constants.ts"(){TEAM_DELETE_TOOL_NAME="TeamDelete"}});var TODO_WRITE_TOOL_NAME,init_constants14=__esm({"src/tools/TodoWriteTool/constants.ts"(){TODO_WRITE_TOOL_NAME="TodoWrite"}});function membershipAuthUrl(path10){let base=MEMBERSHIP_DEFAULT_API_BASE.replace(/\/+$/,""),p=path10.startsWith("/")?path10:`/${path10}`;return`${base}${p}`}function isMembershipProductModel(model){let m2=String(model??"").trim().toLowerCase();return m2?MEMBERSHIP_PRODUCT_MODELS.includes(m2):!1}function isClavueCloudMembershipBaseUrl(baseUrl){let raw=String(baseUrl??"").trim();if(!raw)return!1;let hostnameOf=__name(value=>{try{let withScheme=/:\/\//.test(value)?value:`https://${value}`;return new URL(withScheme).hostname.toLowerCase()}catch{return null}},"hostnameOf"),host=hostnameOf(raw);if(!host)return/api\.clavue\.com/i.test(raw);if(host==="api.clavue.com"||host.endsWith(".api.clavue.com"))return!0;let configuredHost=hostnameOf(MEMBERSHIP_DEFAULT_API_BASE);return!!(configuredHost&&host===configuredHost)}function isClavueCloudProfileRouteId(routeId){let id=String(routeId??"").trim().toLowerCase();return id?id===MEMBERSHIP_CLOUD_PROFILE_ID||id.startsWith(`${MEMBERSHIP_CLOUD_PROFILE_ID}:`):!1}var MEMBERSHIP_DEFAULT_API_BASE,MEMBERSHIP_WEB_ORIGIN,MEMBERSHIP_CLOUD_PROFILE_ID,MEMBERSHIP_CLOUD_PROFILE_NAME,MEMBERSHIP_OPENAI_BASE_URL,MEMBERSHIP_PRODUCT_MODELS,MEMBERSHIP_DEFAULT_PRIMARY_MODEL,MEMBERSHIP_DEFAULT_FAST_MODEL,MEMBERSHIP_DEFAULT_PLAN_MODEL,MEMBERSHIP_DEFAULT_REVIEW_MODEL,MEMBERSHIP_CLIENT_ID,init_config=__esm({"src/services/membership/config.ts"(){MEMBERSHIP_DEFAULT_API_BASE=process.env.CLAVUE_MEMBERSHIP_API_BASE?.trim()||process.env.IMUX_MEMBERSHIP_API_BASE?.trim()||"https://api.clavue.com",MEMBERSHIP_WEB_ORIGIN=process.env.CLAVUE_MEMBERSHIP_WEB_ORIGIN?.trim()||process.env.IMUX_APP_URL?.trim()||"https://www.clavue.com",MEMBERSHIP_CLOUD_PROFILE_ID="clavue-cloud",MEMBERSHIP_CLOUD_PROFILE_NAME="Clavue Cloud",MEMBERSHIP_OPENAI_BASE_URL=MEMBERSHIP_DEFAULT_API_BASE,MEMBERSHIP_PRODUCT_MODELS=["auto","clavue","clavue-2.1","clavue-2.1-fast","clavue-2.1-pro","clavue-2.1-rev"],MEMBERSHIP_DEFAULT_PRIMARY_MODEL="auto",MEMBERSHIP_DEFAULT_FAST_MODEL="clavue-2.1-fast",MEMBERSHIP_DEFAULT_PLAN_MODEL="clavue-2.1-pro",MEMBERSHIP_DEFAULT_REVIEW_MODEL="clavue-2.1-rev",MEMBERSHIP_CLIENT_ID="clavue-cli";__name(membershipAuthUrl,"membershipAuthUrl");__name(isMembershipProductModel,"isMembershipProductModel");__name(isClavueCloudMembershipBaseUrl,"isClavueCloudMembershipBaseUrl");__name(isClavueCloudProfileRouteId,"isClavueCloudProfileRouteId")}});function normalizeDialectMode(value){let normalized=String(value??"").trim().toLowerCase();return normalized==="openai"||normalized==="responses"||normalized==="openai_responses"?"openai_responses":"anthropic"}function getConfiguredApiDialectMode(){return normalizeDialectMode(process.env.CLAVUE_API_DIALECT??process.env.MYCLAUDE_API_DIALECT??process.env.CLAUDE_CODE_API_DIALECT??process.env.CLAUDE_CODE_PROVIDER_DIALECT)}function getModelTransportPreference(model){let normalizedModel=String(model??"").trim().toLowerCase();if(!normalizedModel)return"unknown";for(let rule of MODEL_TRANSPORT_PREFERENCE_RULES)if(rule.patterns.some(pattern=>pattern.test(normalizedModel)))return rule.preference;return"unknown"}function supportsOpenAIResponsesAdapterModel(model){return getModelTransportPreference(model)==="openai_responses"}var MODEL_TRANSPORT_PREFERENCE_RULES,init_openaiResponsesConfig=__esm({"src/utils/model/openaiResponsesConfig.ts"(){MODEL_TRANSPORT_PREFERENCE_RULES=[{preference:"anthropic_messages",patterns:[/^lingsi-/,/^swe-/]},{preference:"openai_chat_completions",patterns:[/^gpt-image-/]},{preference:"openai_responses",patterns:[/^gpt-\d+(?:[.-]\d+)*(?:$|[-_.])/,/^codex-/,/codex/]},{preference:"openai_chat_completions",patterns:[/^deepseek-/,/deepseek/,/^gemini-/,/^grok-/,/grok/,/^minimax/i,/minimax/i,/^glm[-_.]?\d/i,/^glm-/i,/^kimi/i,/^qwen/i,/qwen/,/^auto$/,/^clavue(?:-|$)/]}];__name(normalizeDialectMode,"normalizeDialectMode");__name(getConfiguredApiDialectMode,"getConfiguredApiDialectMode");__name(getModelTransportPreference,"getModelTransportPreference");__name(supportsOpenAIResponsesAdapterModel,"supportsOpenAIResponsesAdapterModel")}});function defaultsToAnthropicMessagesModel(model){return getModelTransportPreference(model??void 0)==="anthropic_messages"}function isGatewayGpt5PreferMessagesModel(model){let normalized=String(model??"").trim().toLowerCase();return!normalized.startsWith("gpt-5")||normalized.includes("5.5")||normalized.includes("5.6")||normalized.includes("5.7")?!1:!normalized.includes("codex")}function getModelFamily(model){if(!model)return"other";let m2=model.toLowerCase().trim();return m2.includes("claude")?"claude":m2.includes("gemini")?"gemini":m2.includes("grok")?"grok":m2.includes("deepseek")?"deepseek":m2.includes("minimax")?"minimax":m2.includes("glm")?"glm":m2.includes("kimi")?"kimi":m2.includes("qwen")?"qwen":m2.startsWith("gpt-image-")?"other":m2.includes("gpt")||m2.includes("codex")||m2.includes("o1")||m2.includes("o3")||m2.includes("o4")?"openai":"other"}function isOpenAICompatibleChatFamily(model){let normalized=String(model??"").trim().toLowerCase();if(!normalized)return!1;if(normalized.startsWith("gpt-image-")||normalized==="auto"||normalized.startsWith("clavue")||getModelTransportPreference(normalized)==="openai_chat_completions")return!0;let family=getModelFamily(model);return family==="deepseek"||family==="gemini"||family==="grok"||family==="minimax"||family==="glm"||family==="kimi"||family==="qwen"||modelFamilyIsDeepSeek(String(model??""))}function getFamilyShaping(model,runtimeProviderKind){let family=getModelFamily(model);return family==="claude"?"claude":family==="openai"?"gpt_codex":runtimeProviderKind!=="first_party"?"provider_native":"generic"}function getReasoningDiscipline(qualityTier,familyShaping,model){return qualityTier==="blocked"||qualityTier==="chat_only"||qualityTier==="degraded"?{planDiscipline:"required",verificationDiscipline:"required",recoveryMode:"strict"}:familyShaping==="gpt_codex"||modelFamilyIsDeepSeek(model)?{planDiscipline:"optional",verificationDiscipline:"required",recoveryMode:"normal"}:{planDiscipline:"optional",verificationDiscipline:"recommended",recoveryMode:"normal"}}function resolveCodingRoutePolicyCore(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.apiDialectMode==="openai_responses"||input.apiDialectMode==="anthropic"?input.apiDialectMode:"anthropic",runtimeProviderKind=input.runtimeProviderKind??"gateway",coreNativeWorkflowToolNames=input.coreNativeWorkflowToolNames??DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES,familyShaping=getFamilyShaping(normalizedModel,runtimeProviderKind),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),warnings=[],repairHints=[],qualityReason=[],supportsResponses=input.supportsResponsesAdapter===!0,hasAnthropicToolUse=snapshot?.anthropicToolUse===!0,hasFullResponses=supportsResponses&&snapshot?.responsesArrayInputReachable===!0&&snapshot?.responsesToolChoiceAuto===!0&&snapshot?.responsesToolChoiceRequired===!0&&snapshot?.responsesToolChoiceNamed===!0,hasReachableChat=snapshot?.anthropicMessagesReachable===!0||snapshot?.responsesArrayInputReachable===!0,isFirstPartyClaudeAssumedNative=runtimeProviderKind==="first_party"&&familyShaping==="claude"&&!snapshot,isAnthropicDialectClaudeAssumed=dialectMode==="anthropic"&&familyShaping==="claude"&&!snapshot,isAnthropicMessagesRouteAssumed=dialectMode==="anthropic"&&runtimeProviderKind!=="first_party"&&!snapshot,defaultsToMessages=runtimeProviderKind!=="first_party"&&defaultsToAnthropicMessagesModel(normalizedModel),family=getModelFamily(normalizedModel),gatewayGpt5PrefersMessages=dialectMode==="openai_responses"&&runtimeProviderKind==="gateway"&&family==="openai"&&isGatewayGpt5PreferMessagesModel(normalizedModel),usesNativeOpenAICompatibleChat=runtimeProviderKind!=="first_party"&&dialectMode==="openai_responses"&&isOpenAICompatibleChatFamily(normalizedModel),transport="anthropic_messages",transportReason="Anthropic messages is the default API dialect unless openai_responses is explicitly selected.";defaultsToMessages?(transport="anthropic_messages",transportReason="This provider-native model family defaults to /v1/messages instead of the OpenAI Responses adapter.",dialectMode==="openai_responses"&&warnings.push("The active model family is configured to stay on /v1/messages by default; use a GPT/Codex or Gemini/Grok route for the OpenAI-compatible adapter.")):dialectMode==="anthropic"?(transport="anthropic_messages",transportReason="Explicit anthropic dialect override keeps the runtime on /v1/messages.",hasFullResponses&&!hasAnthropicToolUse&&warnings.push("Responses compatibility is verified, but the active dialect override is forcing /v1/messages.")):usesNativeOpenAICompatibleChat?(transport="openai_chat_completions",transportReason=family==="deepseek"||modelFamilyIsDeepSeek(normalizedModel)?"Explicit OpenAI-compatible dialect routes DeepSeek through native /v1/chat/completions with provider prefix-cache usage telemetry and without OpenAI Responses stateful cache.":`Explicit OpenAI-compatible dialect routes ${family} through native /v1/chat/completions without OpenAI Responses stateful cache.`):gatewayGpt5PrefersMessages&&snapshot?.responsesArrayInputReachable===!1&&snapshot?.anthropicMessagesReachable===!0?(transport="anthropic_messages",transportReason="Gateway GPT-5.x falls back to /v1/messages because validation showed /v1/responses is unavailable."):dialectMode==="openai_responses"&&(transport="openai_responses",transportReason="Explicit OpenAI-compatible dialect routes this GPT/Codex family through native /v1/responses.",supportsResponses||warnings.push("The active model family is not known to behave well on the Responses adapter."));let qualityTier="compatible";hasAnthropicToolUse?runtimeProviderKind==="first_party"&&familyShaping==="claude"?(qualityTier="native",qualityReason.push("Anthropic-native tool_use is available on a first-party Claude route.")):(qualityTier="compatible",qualityReason.push("Anthropic-native tool_use is available on the active provider route.")):isFirstPartyClaudeAssumedNative?(qualityTier="native",qualityReason.push("First-party Anthropic Claude routes are trusted as native on first launch.")):hasFullResponses?(qualityTier="compatible",qualityReason.push("Responses function calling is available on the active provider route.")):isAnthropicDialectClaudeAssumed?(qualityTier="compatible",qualityReason.push("Anthropic / Claude-compatible routes are trusted for full Clavue coding workflows.")):isAnthropicMessagesRouteAssumed||defaultsToMessages&&transport==="anthropic_messages"?(qualityTier="compatible",qualityReason.push("Provider-native messages routes are trusted for full Clavue coding workflows.")):transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat?(qualityTier="compatible",qualityReason.push(modelFamilyIsDeepSeek(normalizedModel)?"DeepSeek is routed through the active OpenAI-compatible chat/completions profile with full Clavue tool support.":"This provider family is routed through native OpenAI-compatible chat/completions with full Clavue tool support.")):gatewayGpt5PrefersMessages&&transport==="openai_responses"?(qualityTier="compatible",qualityReason.push("OpenAI GPT-5.x routes use native /v1/responses for the OpenAI-compatible dialect.")):gatewayGpt5PrefersMessages&&transport==="anthropic_messages"?(qualityTier="compatible",qualityReason.push("Gateway GPT-5.x fell back to /v1/messages because /v1/responses was unavailable.")):hasReachableChat?(qualityTier="compatible",qualityReason.push("The active provider route is reachable and trusted for full Clavue coding workflows.")):(qualityTier="compatible",qualityReason.push("Configured provider routes are trusted for full Clavue coding workflows. Permission mode controls execution approval, not provider validation snapshots."));let baseWorkflowMode=qualityTier==="native"?"full_native":"compat_native",operatorTrust=runtimeProviderKind==="first_party"?"explicitly_trusted":"configured",baseCapabilityStatus=hasAnthropicToolUse||hasFullResponses||hasReachableChat?"verified":isFirstPartyClaudeAssumedNative||isAnthropicDialectClaudeAssumed||isAnthropicMessagesRouteAssumed||transport==="openai_chat_completions"&&usesNativeOpenAICompatibleChat||gatewayGpt5PrefersMessages&&transport==="openai_responses"?"assumed":"unknown",baseWorkflowToolPolicy=baseCapabilityStatus==="verified"||baseWorkflowMode==="full_native"?"full":"cautious",providerHealth=input.providerHealth??null,healthTier=providerHealth?.healthTier??"healthy",capabilityStatus=providerHealth?.capabilityStatus??(healthTier==="broken"?"failed":healthTier==="degraded"?"stale":baseCapabilityStatus),workflowToolPolicy=providerHealth?.workflowToolPolicy??(healthTier==="broken"?"blocked":healthTier==="degraded"?"direct_only":healthTier==="warning"&&baseWorkflowToolPolicy==="full"?"cautious":baseWorkflowToolPolicy),workflowMode=workflowToolPolicy==="blocked"?"chat_only":workflowToolPolicy==="direct_only"?"strict_compat":baseWorkflowMode,forcedToolNames=workflowMode==="compat_native"&&(workflowToolPolicy==="full"||workflowToolPolicy==="cautious")?[...coreNativeWorkflowToolNames]:[],blockedToolNames=workflowToolPolicy==="direct_only"||workflowToolPolicy==="blocked"?[...coreNativeWorkflowToolNames]:[],certificationRef=providerHealth?.certificationRef;for(let warning of providerHealth?.warnings??[])warnings.push(warning);for(let repairHint of providerHealth?.repairHints??[])repairHints.push(repairHint);if(input.editReliability&&input.editReliability.model===normalizedModel&&!isEditReliabilityRoutingDisabled()){let assessment=assessEditReliabilityForRouting(input.editReliability);assessment.demote&&(warnings.push(`Edit reliability: ${assessment.reason}. Ordering only \u2014 disable with CLAVUE_EDIT_RELIABILITY_ROUTING=0.`),repairHints.push("Review per-model edit failures with /editstats; consider a stronger model for mutation-heavy tasks."))}let disciplineQualityTier=healthTier==="broken"?"blocked":healthTier==="degraded"?"degraded":qualityTier;return disciplineQualityTier!==qualityTier&&qualityReason.push(`Provider health ${healthTier} downgrades qualityTier from ${qualityTier} to ${disciplineQualityTier}.`),{routeId,model:normalizedModel,transport,transportReason,qualityTier:disciplineQualityTier,qualityReason,workflowMode,forcedToolNames,blockedToolNames,operatorTrust,capabilityStatus,workflowToolPolicy,healthTier,certificationRef,familyShaping,warnings,repairHints,...getReasoningDiscipline(disciplineQualityTier,familyShaping,normalizedModel)}}function modelFamilyIsDeepSeek(model){let normalized=model.trim().toLowerCase();return normalized.startsWith("deepseek-")||normalized.includes("deepseek")}function isEditReliabilityRoutingDisabled(env5=process.env){let flag=String(env5.CLAVUE_EDIT_RELIABILITY_ROUTING??"1").trim().toLowerCase();return flag==="0"||flag==="false"||flag==="off"||flag==="no"}function wilsonLowerBound(failures,attempts){if(attempts<=0)return 0;let z=1.645,z2=z*z,p=Math.min(1,Math.max(0,failures/attempts)),denominator=1+z2/attempts,center=p+z2/(2*attempts),spread4=z*Math.sqrt(p*(1-p)/attempts+z2/(4*attempts*attempts));return Math.max(0,(center-spread4)/denominator)}function resolveReliabilityOptions(options){let env5=options?.env??process.env,envMin=Number.parseInt(String(env5.CLAVUE_EDIT_RELIABILITY_MIN_SAMPLES??"").trim(),10),envThreshold=Number.parseFloat(String(env5.CLAVUE_EDIT_RELIABILITY_FAILURE_THRESHOLD??"").trim()),minAttempts=options?.minAttempts??(Number.isFinite(envMin)&&envMin>0?envMin:EDIT_RELIABILITY_MIN_ATTEMPTS_DEFAULT),failureThreshold=options?.failureThreshold??(Number.isFinite(envThreshold)&&envThreshold>0&&envThreshold<1?envThreshold:EDIT_RELIABILITY_FAILURE_LOWER_BOUND_TARGET_DEFAULT);return{minAttempts,failureThreshold,env:env5}}function assessEditReliabilityForRouting(reading,options){let{minAttempts,failureThreshold}=resolveReliabilityOptions(options),attempts=Math.max(0,Math.trunc(reading.attempts)),finalFailures=Math.max(0,Math.trunc(reading.finalFailures)),finalFailureRate=attempts>0?finalFailures/attempts:0,failureLowerBound=wilsonLowerBound(finalFailures,attempts),eligible2=attempts>=minAttempts,demote=eligible2&&failureLowerBound>=failureThreshold,pct=__name(value=>`${Math.round(value*100)}%`,"pct"),reason=eligible2?demote?`edit reliability: ${reading.model} final-failure rate ${pct(finalFailureRate)} over ${attempts} edit episodes (95% lower bound ${pct(failureLowerBound)} \u2265 ${pct(failureThreshold)}) \u2014 deprioritized for mutation tasks`:`edit reliability: ${reading.model} final-failure rate ${pct(finalFailureRate)} over ${attempts} edit episodes \u2014 within tolerance`:`edit reliability: ${reading.model} has ${attempts}/${minAttempts} edit episodes \u2014 below sample threshold, no routing influence`;return{model:reading.model,eligible:eligible2,demote,attempts,finalFailureRate,failureLowerBound,minAttempts,failureThreshold,reason}}var DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES,EDIT_RELIABILITY_MIN_ATTEMPTS_DEFAULT,EDIT_RELIABILITY_FAILURE_LOWER_BOUND_TARGET_DEFAULT,init_codingRoutePolicyCore=__esm({"src/utils/model/codingRoutePolicyCore.ts"(){init_openaiResponsesConfig();DEFAULT_CORE_NATIVE_WORKFLOW_TOOL_NAMES=["EnterPlanMode","SendMessage","TaskCreate","TaskGet","TaskList","TaskOutput","TaskUpdate","TeamCreate","TeamDelete","TodoWrite"];__name(defaultsToAnthropicMessagesModel,"defaultsToAnthropicMessagesModel");__name(isGatewayGpt5PreferMessagesModel,"isGatewayGpt5PreferMessagesModel");__name(getModelFamily,"getModelFamily");__name(isOpenAICompatibleChatFamily,"isOpenAICompatibleChatFamily");__name(getFamilyShaping,"getFamilyShaping");__name(getReasoningDiscipline,"getReasoningDiscipline");__name(resolveCodingRoutePolicyCore,"resolveCodingRoutePolicyCore");__name(modelFamilyIsDeepSeek,"modelFamilyIsDeepSeek");EDIT_RELIABILITY_MIN_ATTEMPTS_DEFAULT=20,EDIT_RELIABILITY_FAILURE_LOWER_BOUND_TARGET_DEFAULT=.25;__name(isEditReliabilityRoutingDisabled,"isEditReliabilityRoutingDisabled");__name(wilsonLowerBound,"wilsonLowerBound");__name(resolveReliabilityOptions,"resolveReliabilityOptions");__name(assessEditReliabilityForRouting,"assessEditReliabilityForRouting")}});function modelFamilyKey(model){let m2=String(model||"").toLowerCase();return m2?/claude|anthropic|sonnet|opus|haiku/.test(m2)?"claude":/gpt|o1|o3|o4|codex|openai/.test(m2)?"openai":/gemini|google/.test(m2)?"google":/deepseek/.test(m2)?"deepseek":/grok|xai/.test(m2)?"xai":/\bglm\b|chatglm|zhipu/.test(m2)||m2.startsWith("glm-")?"glm":/qwen|qwq|tongyi|dashscope/.test(m2)?"qwen":/kimi|moonshot/.test(m2)?"kimi":/minimax|abab|m2\./.test(m2)||m2.includes("minimax")?"minimax":/yi-|01-ai|yi1/.test(m2)?"yi":/mistral|mixtral|codestral/.test(m2)?"mistral":/llama|meta-llama|codellama/.test(m2)?"llama":/clavue/.test(m2)?"clavue":/ollama|lmstudio|vllm|local-/.test(m2)?"local":m2.split(/[-/_.]/)[0]||"unknown":"unknown"}var init_modelRolesCore=__esm({"src/utils/model/modelRolesCore.ts"(){__name(modelFamilyKey,"modelFamilyKey")}});function isEditFailureReasonCode(value){return typeof value=="string"&&EDIT_FAILURE_REASON_CODES.includes(value)}var EDIT_FAILURE_REASON_CODES,init_editRepairProfiles=__esm({"src/tools/FileEditTool/editRepairProfiles.ts"(){init_modelRolesCore();EDIT_FAILURE_REASON_CODES=["not_found","multiple_matches","whitespace_drift","truncated_anchor","escape_mismatch","file_changed","file_not_read","file_missing"];__name(isEditFailureReasonCode,"isEditFailureReasonCode")}});import fs2 from"node:fs";function createEditOutcomeTracker(){let pending=new Set,keyOf=__name((model,filePath)=>`${model}\0${filePath}`,"keyOf");return{note(model,filePath,ok){let key=keyOf(model,filePath);return ok?pending.has(key)?(pending.delete(key),"retry_success"):"first_try_success":(pending.add(key),"failure")},reset(){pending.clear()}}}function parseEditReliabilityLine(line){let trimmed=line.trim();if(!trimmed.startsWith("{"))return null;try{let parsed=JSON.parse(trimmed);return parsed.schema!==EDIT_RELIABILITY_SCHEMA||typeof parsed.model!="string"||typeof parsed.filePath!="string"||typeof parsed.ok!="boolean"?null:(parsed.reasonCode!==void 0&&!isEditFailureReasonCode(parsed.reasonCode)&&delete parsed.reasonCode,parsed)}catch{return null}}function readEditReliabilityEvents(ledgerPath,options){let maxBytes=Math.max(1024,Math.min(8388608,options?.maxBytes??DEFAULT_TAIL_BYTES)),source="";try{let stat4=fs2.statSync(ledgerPath),start=Math.max(0,stat4.size-maxBytes),fd=fs2.openSync(ledgerPath,"r");try{let buffer=Buffer.allocUnsafe(stat4.size-start);fs2.readSync(fd,buffer,0,buffer.length,start),source=buffer.toString("utf8")}finally{fs2.closeSync(fd)}}catch{return[]}let events=[],lines=source.split(/\r?\n/);for(let line of lines){let record2=parseEditReliabilityLine(line);record2&&events.push(record2)}return events}function aggregateEditReliabilityEvents(events){let byModel=new Map,openChains=new Map,statsFor=__name((model,family)=>{let stats=byModel.get(model);return stats||(stats={model,family:family||modelFamilyKey(model),firstTrySuccesses:0,retriedSuccesses:0,finalFailures:0,failureEvents:0,repairedSuccesses:0,reasonCounts:{}},byModel.set(model,stats)),stats},"statsFor");for(let event of events){let stats=statsFor(event.model,event.family),chainKey=`${event.model}\0${event.filePath}`;if(!event.ok){stats.failureEvents+=1,event.reasonCode&&(stats.reasonCounts[event.reasonCode]=(stats.reasonCounts[event.reasonCode]??0)+1),openChains.set(chainKey,{model:event.model});continue}openChains.has(chainKey)?(openChains.delete(chainKey),stats.retriedSuccesses+=1):stats.firstTrySuccesses+=1,event.repairRung&&(stats.repairedSuccesses+=1)}for(let{model}of openChains.values()){let stats=byModel.get(model);stats&&(stats.finalFailures+=1)}return[...byModel.values()].map(stats=>{let episodes=stats.firstTrySuccesses+stats.retriedSuccesses+stats.finalFailures;return{...stats,episodes,firstTryRate:episodes>0?stats.firstTrySuccesses/episodes:null,finalFailureRate:episodes>0?stats.finalFailures/episodes:null}}).sort((a2,b)=>b.episodes-a2.episodes||a2.model.localeCompare(b.model))}function readEditReliabilityStats(ledgerPath,options){return aggregateEditReliabilityEvents(readEditReliabilityEvents(ledgerPath,options))}function toEditReliabilityReading(stats){return{model:stats.model,attempts:stats.episodes,firstTrySuccesses:stats.firstTrySuccesses,retriedSuccesses:stats.retriedSuccesses,finalFailures:stats.finalFailures}}var EDIT_RELIABILITY_SCHEMA,DEFAULT_TAIL_BYTES,init_editReliabilityCore=__esm({"src/services/editReliability/editReliabilityCore.ts"(){init_editRepairProfiles();init_modelRolesCore();EDIT_RELIABILITY_SCHEMA="clavue_edit_reliability_v1";__name(createEditOutcomeTracker,"createEditOutcomeTracker");__name(parseEditReliabilityLine,"parseEditReliabilityLine");DEFAULT_TAIL_BYTES=512*1024;__name(readEditReliabilityEvents,"readEditReliabilityEvents");__name(aggregateEditReliabilityEvents,"aggregateEditReliabilityEvents");__name(readEditReliabilityStats,"readEditReliabilityStats");__name(toEditReliabilityReading,"toEditReliabilityReading")}});import path9 from"node:path";function isEditReliabilityLedgerDisabled(){return isEnvTruthy(process.env.CLAVUE_DISABLE_EDIT_RELIABILITY)||isEnvDefinedFalsy(process.env.CLAVUE_EDIT_RELIABILITY)}function resolveEditReliabilityLedgerPath(){let override=process.env.CLAVUE_EDIT_RELIABILITY_LEDGER_PATH?.trim();return override?path9.resolve(override):path9.join(getCwd(),".clavue","edit-reliability.jsonl")}function getEditReliabilityStatsCached(options){if(isEditReliabilityLedgerDisabled())return[];let ledgerPath=resolveEditReliabilityLedgerPath(),now2=options?.now??Date.now();if(statsCache&&statsCache.key===ledgerPath&&now2-statsCache.readAt<STATS_CACHE_TTL_MS)return statsCache.stats;let stats=[];try{stats=readEditReliabilityStats(ledgerPath)}catch(error40){logForDebugging("[EditReliability] failed to read: "+(error40 instanceof Error?error40.message:String(error40)),{level:"debug"})}return statsCache={key:ledgerPath,readAt:now2,stats},stats}function getEditReliabilityReadingForModel(model){let normalized=String(model??"").trim();if(!normalized)return null;let stats=getEditReliabilityStatsCached().find(row=>row.model===normalized);return stats?toEditReliabilityReading(stats):null}var STATS_CACHE_TTL_MS,outcomeTracker,statsCache,init_editReliabilityLedger=__esm({"src/services/editReliability/editReliabilityLedger.ts"(){init_cwd2();init_debug();init_envUtils();init_editReliabilityCore();STATS_CACHE_TTL_MS=5e3,outcomeTracker=createEditOutcomeTracker();__name(isEditReliabilityLedgerDisabled,"isEditReliabilityLedgerDisabled");__name(resolveEditReliabilityLedgerPath,"resolveEditReliabilityLedgerPath");__name(getEditReliabilityStatsCached,"getEditReliabilityStatsCached");__name(getEditReliabilityReadingForModel,"getEditReliabilityReadingForModel")}});function normalize3(raw,allowed){let value=String(raw??"").trim().toLowerCase();if(value)return allowed.has(value)?value:void 0}function getWorkflowDisciplinePreferencesFromEnv(env5=process.env){return{planDiscipline:normalize3(env5.CLAVUE_PLAN_DISCIPLINE??env5.MYCLAUDE_PLAN_DISCIPLINE,PLAN_DISCIPLINE_VALUES),verificationDiscipline:normalize3(env5.CLAVUE_VERIFICATION_DISCIPLINE??env5.MYCLAUDE_VERIFICATION_DISCIPLINE,VERIFICATION_DISCIPLINE_VALUES),recoveryMode:normalize3(env5.CLAVUE_RECOVERY_MODE??env5.MYCLAUDE_RECOVERY_MODE,RECOVERY_MODE_VALUES)}}function applyWorkflowDisciplinePreferences(routeDerived,preferences){return{planDiscipline:preferences.planDiscipline??routeDerived.planDiscipline,verificationDiscipline:preferences.verificationDiscipline??routeDerived.verificationDiscipline,recoveryMode:preferences.recoveryMode??routeDerived.recoveryMode}}var PLAN_DISCIPLINE_VALUES,VERIFICATION_DISCIPLINE_VALUES,RECOVERY_MODE_VALUES,init_workflowDisciplinePreferences=__esm({"src/utils/model/workflowDisciplinePreferences.ts"(){PLAN_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),VERIFICATION_DISCIPLINE_VALUES=new Set(["required","recommended","optional"]),RECOVERY_MODE_VALUES=new Set(["strict","normal","off"]);__name(normalize3,"normalize");__name(getWorkflowDisciplinePreferencesFromEnv,"getWorkflowDisciplinePreferencesFromEnv");__name(applyWorkflowDisciplinePreferences,"applyWorkflowDisciplinePreferences")}});var init_classify=__esm({"src/services/providerHealth/classify.ts"(){}});function createProviderHealthLedger(events=[]){return{events:[...events].sort((a2,b)=>a2.atMs-b.atMs)}}function getProviderHealthSnapshot(ledger,options){let nowMs=options.nowMs??Date.now(),windowMs=options.windowMs??DEFAULT_PROVIDER_HEALTH_WINDOW_MS,windowStartMs=nowMs-windowMs,routeEvents=ledger.events.filter(event=>event.routeId===options.routeId&&event.atMs>=windowStartMs).sort((a2,b)=>a2.atMs-b.atMs);if(routeEvents.length===0)return null;let lastRecoveryIndex=findLastIndex2(routeEvents,event=>event.type==="provider_recovered"),activeEvents=lastRecoveryIndex>=0?routeEvents.slice(lastRecoveryIndex+1):routeEvents;if(activeEvents.length===0)return{healthTier:"healthy",capabilityStatus:"verified",workflowToolPolicy:"full",warnings:[],repairHints:["Provider route recovered in the current health window."],certificationRef:routeEvents[lastRecoveryIndex]?.certificationRef};if(activeEvents.find(event=>event.failureClass==="auth"))return buildSnapshot({healthTier:"broken",capabilityStatus:"failed",workflowToolPolicy:"blocked",warning:"Provider authentication failed for this route.",repairHint:"Repair the provider credential or selected profile, then rerun provider doctor.",certificationRef:latestCertificationRef(activeEvents)});let classCounts=countFailureClasses(activeEvents),strongestToolFailure=strongestCount(classCounts.filter(item=>TOOL_FAILURE_CLASSES.has(item.failureClass)));if(strongestToolFailure&&strongestToolFailure.count>=3)return buildSnapshot({healthTier:"degraded",capabilityStatus:"stale",workflowToolPolicy:"direct_only",warning:failureWarning(strongestToolFailure,"repeated"),repairHint:"Workflow orchestration tools are downgraded for this route; preserve direct repo tools and rerun provider certification before restoring workflow mode.",certificationRef:latestCertificationRef(activeEvents)});if(strongestToolFailure&&strongestToolFailure.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:failureWarning(strongestToolFailure,"second"),repairHint:"Keep workflow tools visible but treat provider tool-calling as unproven until certification passes.",certificationRef:latestCertificationRef(activeEvents)});let streamFailures=classCounts.find(item=>item.failureClass==="stream");if(streamFailures&&streamFailures.count>=2)return buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider stream parsing failures were observed.",repairHint:"Prefer cautious workflow use and rerun provider doctor to confirm the streaming contract.",certificationRef:latestCertificationRef(activeEvents)});let cacheFailures=classCounts.find(item=>item.failureClass==="cache");return cacheFailures&&cacheFailures.count>=2?buildSnapshot({healthTier:"warning",capabilityStatus:"stale",workflowToolPolicy:"cautious",warning:"Repeated provider cache or previous_response_id anchor failures were observed.",repairHint:"Disable stateful cache assumptions for this route until certification confirms support.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="overflow")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider context overflow was observed on this route.",repairHint:"Use strict recovery for the turn, compact context, then retry with a smaller request.",certificationRef:latestCertificationRef(activeEvents)}):classCounts.find(item=>item.failureClass==="rate_limit")?buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider rate limiting was observed on this route.",repairHint:"Back off or switch provider route; do not infer a permanent capability failure from rate limiting alone.",certificationRef:latestCertificationRef(activeEvents)}):buildSnapshot({healthTier:"warning",capabilityStatus:"assumed",workflowToolPolicy:"cautious",warning:"Provider route emitted a recoverable health warning.",repairHint:"Continue on direct repo tools when possible and record another provider health event if the route fails again.",certificationRef:latestCertificationRef(activeEvents)})}function buildSnapshot({healthTier,capabilityStatus,workflowToolPolicy,warning,repairHint,certificationRef}){return{healthTier,capabilityStatus,workflowToolPolicy,warnings:[warning],repairHints:[repairHint],...certificationRef?{certificationRef}:{}}}function countFailureClasses(events){let counts=new Map;for(let event of events)event.failureClass!=="recovered"&&counts.set(event.failureClass,(counts.get(event.failureClass)??0)+1);return[...counts.entries()].map(([failureClass,count3])=>({failureClass,count:count3}))}function strongestCount(items){let strongest=null;for(let item of items)(!strongest||item.count>strongest.count)&&(strongest=item);return strongest}function failureWarning(item,label){let readableClass=item.failureClass.replaceAll("_"," ");return label==="second"?`Provider route emitted a second ${readableClass} failure in the health window.`:`Provider route emitted repeated ${readableClass} failures in the health window.`}function latestCertificationRef(events){return[...events].reverse().find(event=>event.certificationRef)?.certificationRef}function findLastIndex2(values2,predicate){for(let index=values2.length-1;index>=0;index-=1)if(predicate(values2[index]))return index;return-1}var DEFAULT_PROVIDER_HEALTH_WINDOW_MS,TOOL_FAILURE_CLASSES,init_ledger=__esm({"src/services/providerHealth/ledger.ts"(){init_classify();DEFAULT_PROVIDER_HEALTH_WINDOW_MS=900*1e3,TOOL_FAILURE_CLASSES=new Set(["tool_schema","tool_call","tool_result"]);__name(createProviderHealthLedger,"createProviderHealthLedger");__name(getProviderHealthSnapshot,"getProviderHealthSnapshot");__name(buildSnapshot,"buildSnapshot");__name(countFailureClasses,"countFailureClasses");__name(strongestCount,"strongestCount");__name(failureWarning,"failureWarning");__name(latestCertificationRef,"latestCertificationRef");__name(findLastIndex2,"findLastIndex")}});function isProviderHealthLedgerEnabled(){return process.env.CLAVUE_ROUTE_HEALTH_LEDGER!=="0"}function getProviderRouteHealthSnapshot(routeId){if(!isProviderHealthLedgerEnabled())return null;let normalizedRouteId=String(routeId??"").trim();return normalizedRouteId?getProviderHealthSnapshot(runtimeLedger,{routeId:normalizedRouteId}):null}var runtimeLedger,init_runtime=__esm({"src/services/providerHealth/runtime.ts"(){init_ledger();runtimeLedger=createProviderHealthLedger();__name(isProviderHealthLedgerEnabled,"isProviderHealthLedgerEnabled");__name(getProviderRouteHealthSnapshot,"getProviderRouteHealthSnapshot")}});function isOfficialAnthropicBaseUrl(baseUrl){let normalizedBaseUrl=String(baseUrl??"").trim();if(!normalizedBaseUrl)return isFirstPartyAnthropicBaseUrl();try{let host=new URL(normalizedBaseUrl).host,allowedHosts=["api.anthropic.com"];return process.env.USER_TYPE==="ant"&&allowedHosts.push("api-staging.anthropic.com"),allowedHosts.includes(host)}catch{return!1}}function inferRuntimeProviderKind(input){if(input.runtimeProviderKind)return input.runtimeProviderKind;if(typeof input.baseUrl=="string"&&input.baseUrl.trim())return isOfficialAnthropicBaseUrl(input.baseUrl)?"first_party":"gateway";switch(getAPIProvider()){case"bedrock":return"bedrock";case"vertex":return"vertex";case"foundry":return"foundry";default:return isFirstPartyAnthropicBaseUrl()?"first_party":"gateway"}}function resolveCodingRoutePolicy(input){let normalizedModel=String(input.model??"").trim(),snapshot=input.snapshot??null,dialectMode=input.fusionEndpointDialect??input.apiDialectMode??getConfiguredApiDialectMode(),runtimeProviderKind=inferRuntimeProviderKind(input),routeId=input.routeId??[runtimeProviderKind,normalizedModel||"provider-default"].join(":"),providerHealth=input.providerHealth===void 0?getProviderRouteHealthSnapshot(routeId):input.providerHealth,decision=resolveCodingRoutePolicyCore({model:normalizedModel,snapshot,routeId,apiDialectMode:dialectMode,runtimeProviderKind,supportsResponsesAdapter:supportsOpenAIResponsesAdapterModel(normalizedModel),coreNativeWorkflowToolNames:[...CORE_NATIVE_WORKFLOW_TOOL_NAMES],providerHealth,editReliability:safeEditReliabilityReading(normalizedModel)}),preferences=getWorkflowDisciplinePreferencesFromEnv(),overridden=applyWorkflowDisciplinePreferences(decision,preferences),withDiscipline={...decision,planDiscipline:overridden.planDiscipline,verificationDiscipline:overridden.verificationDiscipline,recoveryMode:overridden.recoveryMode};return(isClavueCloudMembershipBaseUrl(input.baseUrl)||isClavueCloudProfileRouteId(routeId)||isClavueCloudProfileRouteId(input.routeId))&&withDiscipline.transport!=="openai_chat_completions"?{...withDiscipline,transport:"openai_chat_completions",transportReason:"Clavue Cloud membership proxy only implements /v1/chat/completions (never /v1/responses)."}:withDiscipline}function safeEditReliabilityReading(model){if(!model||isEditReliabilityRoutingDisabled())return null;try{return getEditReliabilityReadingForModel(model)}catch{return null}}var CORE_NATIVE_WORKFLOW_TOOL_NAMES,init_codingRoutePolicy=__esm({"src/utils/model/codingRoutePolicy.ts"(){init_constants6();init_constants7();init_constants8();init_constants9();init_constants10();init_constants4();init_constants11();init_constants12();init_constants13();init_constants14();init_config();init_codingRoutePolicyCore();init_editReliabilityLedger();init_providers();init_openaiResponsesConfig();init_workflowDisciplinePreferences();init_runtime();CORE_NATIVE_WORKFLOW_TOOL_NAMES=new Set([ENTER_PLAN_MODE_TOOL_NAME,SEND_MESSAGE_TOOL_NAME,TASK_CREATE_TOOL_NAME,TASK_GET_TOOL_NAME,TASK_LIST_TOOL_NAME,TASK_OUTPUT_TOOL_NAME,TASK_UPDATE_TOOL_NAME,TEAM_CREATE_TOOL_NAME,TEAM_DELETE_TOOL_NAME,TODO_WRITE_TOOL_NAME]);__name(isOfficialAnthropicBaseUrl,"isOfficialAnthropicBaseUrl");__name(inferRuntimeProviderKind,"inferRuntimeProviderKind");__name(resolveCodingRoutePolicy,"resolveCodingRoutePolicy");__name(safeEditReliabilityReading,"safeEditReliabilityReading")}});function createFallbackStorage(primary,secondary){return{name:`${primary.name}-with-${secondary.name}-fallback`,read(){let result2=primary.read();return result2??(secondary.read()||{})},async readAsync(){let result2=await primary.readAsync();return result2??(await secondary.readAsync()||{})},update(data){let primaryDataBefore=primary.read(),result2=primary.update(data);if(result2.success)return primaryDataBefore===null&&secondary.delete(),result2;let fallbackResult=secondary.update(data);return fallbackResult.success?(primaryDataBefore!==null&&primary.delete(),{success:!0,warning:fallbackResult.warning}):{success:!1}},delete(){let primarySuccess=primary.delete(),secondarySuccess=secondary.delete();return primarySuccess||secondarySuccess}}}var init_fallbackStorage=__esm({"src/utils/secureStorage/fallbackStorage.ts"(){__name(createFallbackStorage,"createFallbackStorage")}});async function doReadAsync(){try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),{stdout,code}=await execFileNoThrow("security",["find-generic-password","-a",username,"-w","-s",storageServiceName],{useCwd:!1,preserveOutputOnError:!1});if(code===0&&stdout)return jsonParse(stdout.trim())}catch{}return null}var SECURITY_STDIN_LINE_LIMIT,macOsKeychainStorage,init_macOsKeychainStorage=__esm({"src/utils/secureStorage/macOsKeychainStorage.ts"(){init_execa();init_debug();init_envUtils();init_execFileNoThrow();init_execFileNoThrowPortable();init_slowOperations();init_macOsKeychainHelpers();SECURITY_STDIN_LINE_LIMIT=4032,macOsKeychainStorage={name:"keychain",read(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),result2=execSyncWithDefaults(`security find-generic-password -a "${username}" -w -s "${storageServiceName}"`);if(result2){let data=jsonParse(result2);return keychainCacheState.cache={data,cachedAt:Date.now()},data}}catch{}return prev.data!==null?(logForDebugging("[keychain] read failed; serving stale cache",{level:"warn"}),keychainCacheState.cache={data:prev.data,cachedAt:Date.now()},prev.data):(keychainCacheState.cache={data:null,cachedAt:Date.now()},null)},async readAsync(){let prev=keychainCacheState.cache;if(Date.now()-prev.cachedAt<KEYCHAIN_CACHE_TTL_MS)return prev.data;if(keychainCacheState.readInFlight)return keychainCacheState.readInFlight;let gen=keychainCacheState.generation,promise2=doReadAsync().then(data=>{if(gen===keychainCacheState.generation){data===null&&prev.data!==null&&logForDebugging("[keychain] readAsync failed; serving stale cache",{level:"warn"});let next=data??prev.data;return keychainCacheState.cache={data:next,cachedAt:Date.now()},keychainCacheState.readInFlight=null,next}return data});return keychainCacheState.readInFlight=promise2,promise2},update(data){clearKeychainCache();try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername(),jsonString=jsonStringify(data),hexValue=Buffer.from(jsonString,"utf-8").toString("hex"),command=`add-generic-password -U -a "${username}" -s "${storageServiceName}" -X "${hexValue}"
188
188
  `,result2;return command.length<=SECURITY_STDIN_LINE_LIMIT?result2=execaSync("security",["-i"],{input:command,stdio:["pipe","pipe","pipe"],reject:!1}):(logForDebugging(`Keychain payload (${jsonString.length}B JSON) exceeds security -i stdin limit; using argv`,{level:"warn"}),result2=execaSync("security",["add-generic-password","-U","-a",username,"-s",storageServiceName,"-X",hexValue],{stdio:["ignore","pipe","pipe"],reject:!1})),result2.exitCode!==0?{success:!1}:(keychainCacheState.cache={data,cachedAt:Date.now()},{success:!0})}catch{return{success:!1}}},delete(){clearKeychainCache();try{let storageServiceName=getMacOsKeychainStorageServiceName(CREDENTIALS_SERVICE_SUFFIX),username=getUsername();return execSyncWithDefaults(`security delete-generic-password -a "${username}" -s "${storageServiceName}"`),!0}catch{return!1}}};__name(doReadAsync,"doReadAsync")}});import{chmodSync as chmodSync3}from"fs";import{join as join15}from"path";function getStoragePath(){let storageDir=getClaudeConfigHomeDir();return{storageDir,storagePath:join15(storageDir,".credentials.json")}}function ensurePrivateStorageDir(storageDir){try{getFsImplementation().mkdirSync(storageDir,{mode:448})}catch(e2){if(getErrnoCode(e2)!=="EEXIST")throw e2}if(process.platform!=="win32")try{chmodSync3(storageDir,448)}catch{}}var plainTextStorage,init_plainTextStorage=__esm({"src/utils/secureStorage/plainTextStorage.ts"(){init_envUtils();init_errors2();init_fsOperations();init_slowOperations();__name(getStoragePath,"getStoragePath");__name(ensurePrivateStorageDir,"ensurePrivateStorageDir");plainTextStorage={name:"plaintext",read(){let{storagePath}=getStoragePath();try{let data=getFsImplementation().readFileSync(storagePath,{encoding:"utf8"});return jsonParse(data)}catch{return null}},async readAsync(){let{storagePath}=getStoragePath();try{let data=await getFsImplementation().readFile(storagePath,{encoding:"utf8"});return jsonParse(data)}catch{return null}},update(data){try{let{storageDir,storagePath}=getStoragePath();return ensurePrivateStorageDir(storageDir),writeFileSync(storagePath,jsonStringify(data),{encoding:"utf8",flush:!1}),chmodSync3(storagePath,384),{success:!0,warning:"Warning: Storing credentials in plaintext."}}catch{return{success:!1}}},delete(){let{storagePath}=getStoragePath();try{return getFsImplementation().unlinkSync(storagePath),!0}catch(e2){return getErrnoCode(e2)==="ENOENT"}}}}});function getSecureStorage(){return process.platform==="darwin"&&shouldUseMacOSKeychain()?createFallbackStorage(macOsKeychainStorage,plainTextStorage):plainTextStorage}var init_secureStorage=__esm({"src/utils/secureStorage/index.ts"(){init_fallbackStorage();init_envUtils();init_macOsKeychainStorage();init_plainTextStorage();__name(getSecureStorage,"getSecureStorage")}});var officialAutoCombo_exports={};__export(officialAutoCombo_exports,{CLAVUE_CLOUD_AUTO_PRESET_ID:()=>CLAVUE_CLOUD_AUTO_PRESET_ID,OFFICIAL_AUTO_COMBO:()=>OFFICIAL_AUTO_COMBO,OFFICIAL_AUTO_ROLE_MAP:()=>OFFICIAL_AUTO_ROLE_MAP,buildOfficialAutoModelRouting:()=>buildOfficialAutoModelRouting,ensureOfficialAutoOnCloudProfile:()=>ensureOfficialAutoOnCloudProfile,formatOfficialAutoModelsLine:()=>formatOfficialAutoModelsLine,isOfficialAutoRouting:()=>isOfficialAutoRouting,isOfficialCloudAutoProfile:()=>isOfficialCloudAutoProfile,listOfficialProductModels:()=>listOfficialProductModels,officialAutoOnboardingBullets:()=>officialAutoOnboardingBullets});function buildOfficialAutoModelRouting(){let s2=OFFICIAL_AUTO_COMBO.slots;return{presetId:"custom",primaryModel:s2.primary,generalModel:s2.general,subagentModel:s2.subagent,smallFastModel:s2.smallFast,exploreModel:s2.explore,planModel:s2.plan,guideModel:s2.guide,teamModel:s2.team,reviewModel:s2.review}}function isOfficialAutoRouting(routing){if(!routing)return!1;let primary=String(routing.primaryModel||"").trim().toLowerCase();if(primary!=="auto"&&primary!==MEMBERSHIP_DEFAULT_PRIMARY_MODEL)return!1;let slots=[routing.primaryModel,routing.smallFastModel,routing.planModel,routing.subagentModel,routing.exploreModel,routing.generalModel,routing.teamModel,routing.guideModel,routing.reviewModel];for(let m2 of slots)if(!(!m2||!String(m2).trim())&&!isMembershipProductModel(String(m2)))return!1;return!0}function isOfficialCloudAutoProfile(profile){return!profile||profile.id!==MEMBERSHIP_CLOUD_PROFILE_ID?!1:isOfficialAutoRouting(profile.modelRouting)}function formatOfficialAutoModelsLine(routing,locale="zh-CN"){if(!isOfficialAutoRouting(routing))return null;let zh=locale==="zh-CN",light=String(routing?.smallFastModel||"").trim(),plan=String(routing?.planModel||"").trim(),agent=String(routing?.subagentModel||"").trim(),parts=[zh?"Auto\uFF08\u5B98\u65B9\u7EC4\u5408\uFF09":"Auto (official combo)"];return light&&light.toLowerCase()!=="auto"&&parts.push(zh?`\u8F7B\u91CF:${light}`:`light:${light}`),agent&&agent.toLowerCase()!=="auto"&&agent!==light&&parts.push(zh?`\u5B50\u4EE3\u7406:${agent}`:`agent:${agent}`),plan&&plan.toLowerCase()!=="auto"&&plan!==light&&parts.push(zh?`\u5F3A\u6A21:${plan}`:`plan:${plan}`),parts.join(" \xB7 ")}function officialAutoOnboardingBullets(locale){return locale==="zh-CN"?["\u9009 Auto \u5373\u53EF\uFF1A\u4E3B\u5FAA\u73AF auto \xB7 Scout/\u5B50\u4EE3\u7406 clavue-2.1-fast \xB7 \u65B9\u6848 clavue-2.1-pro \xB7 \u5BA1\u67E5 clavue-2.1-rev","\u9AD8\u9891\u89D2\u8272\u8D70\u5FEB\u6C60\uFF1B\u65B9\u6848/\u5BA1\u67E5\u7528\u4E13\u7528\u5F3A\u6A21 \u2014 \u66F4\u7701\u989D\u5EA6\u3001\u66F4\u5FEB\u51FA\u7ED3\u679C","\u65E0\u9700\u7406\u89E3\u7EC4\u5408\u77E9\u9635\uFF1B\u5B98\u65B9\u4EA7\u54C1\u6A21\u578B\u5DF2\u66FF\u4F60\u6392\u597D","\u989D\u5EA6\u4E0D\u8DB3\u65F6\u53EF /account switch \u5207\u7B2C\u4E09\u65B9\uFF0C\u4E0D\u5F71\u54CD Auto \u914D\u65B9\u672C\u8EAB"]:["Pick Auto: main=auto \xB7 scout/agent=clavue-2.1-fast \xB7 plan=clavue-2.1-pro \xB7 review=clavue-2.1-rev","High-volume roles use the fast pool; plan/review use specialized premium models","No combo matrix to learn \u2014 official product models are pre-wired","If quota is low, /account switch to BYOK without relearning routing"]}function listOfficialProductModels(){return MEMBERSHIP_PRODUCT_MODELS}function ensureOfficialAutoOnCloudProfile(options){try{let{getProviderProfiles:getProviderProfiles2,saveProviderProfile:saveProviderProfile2,activateProviderProfile:activateProviderProfile2}=(init_providerProfiles(),__toCommonJS(providerProfiles_exports)),cloud=getProviderProfiles2().find(p=>p.id===MEMBERSHIP_CLOUD_PROFILE_ID);if(!cloud)return null;let next=saveProviderProfile2({...cloud,model:MEMBERSHIP_DEFAULT_PRIMARY_MODEL,modelRouting:buildOfficialAutoModelRouting()});return options?.activate&&activateProviderProfile2(MEMBERSHIP_CLOUD_PROFILE_ID)||next}catch{return null}}var CLAVUE_CLOUD_AUTO_PRESET_ID,OFFICIAL_AUTO_ROLE_MAP,OFFICIAL_AUTO_COMBO,init_officialAutoCombo=__esm({"src/services/membership/officialAutoCombo.ts"(){init_config();CLAVUE_CLOUD_AUTO_PRESET_ID="clavue_cloud_auto",OFFICIAL_AUTO_ROLE_MAP=[{role:"primary",slots:["primary","general"],product:MEMBERSHIP_DEFAULT_PRIMARY_MODEL,pool:"balanced",goal:{zh:"\u4E3B\u5FAA\u73AF\u6267\u884C \xB7 \u9ED8\u8BA4\u5747\u8861",en:"Main loop \xB7 balanced default"}},{role:"scout",slots:["smallFast","explore"],product:MEMBERSHIP_DEFAULT_FAST_MODEL,pool:"fast",goal:{zh:"\u4FA6\u5BDF/\u8F7B\u91CF\u8BFB \xB7 \u4F4E\u5EF6\u8FDF\u9AD8\u541E\u5410",en:"Scout / light read \xB7 low latency"}},{role:"plan",slots:["plan"],product:MEMBERSHIP_DEFAULT_PLAN_MODEL,pool:"premium",goal:{zh:"\u65B9\u6848\u8BBE\u8BA1 \xB7 clavue-2.1-pro (laguna-s-2.1)",en:"Planning \xB7 clavue-2.1-pro (laguna-s-2.1)"}},{role:"review",slots:["review"],product:MEMBERSHIP_DEFAULT_REVIEW_MODEL,pool:"premium",goal:{zh:"\u5BA1\u67E5/\u6279\u5224 \xB7 clavue-2.1-rev (gemma4:26b-a4b)",en:"Review / critique \xB7 clavue-2.1-rev (gemma4:26b-a4b)"}},{role:"subagent",slots:["subagent","guide"],product:MEMBERSHIP_DEFAULT_FAST_MODEL,pool:"fast",goal:{zh:"\u5B50\u4EE3\u7406/\u5F15\u5BFC \xB7 \u9AD8\u9891\u8C03\u7528\u8D70\u5FEB\u6C60",en:"Subagent / guide \xB7 high-volume fast pool"}}],OFFICIAL_AUTO_COMBO={presetId:CLAVUE_CLOUD_AUTO_PRESET_ID,label:{en:"Auto (recommended)",zh:"Auto\uFF08\u63A8\u8350\uFF09"},pitch:{en:"One setting \xB7 5-role composition \xB7 official Cloud models only \xB7 speed on scout/agent \xB7 quality on plan/review",zh:"\u4E00\u6B21\u8BBE\u5B9A \xB7 \u4E94\u89D2\u8272\u7EC4\u5408 \xB7 \u4EC5\u5B98\u65B9 Cloud \xB7 \u4FA6\u5BDF/\u5B50\u4EE3\u7406\u8D70\u5FEB \xB7 \u65B9\u6848/\u5BA1\u67E5\u8D70\u5F3A"},slots:{primary:MEMBERSHIP_DEFAULT_PRIMARY_MODEL,general:MEMBERSHIP_DEFAULT_PRIMARY_MODEL,team:MEMBERSHIP_DEFAULT_PRIMARY_MODEL,smallFast:MEMBERSHIP_DEFAULT_FAST_MODEL,explore:MEMBERSHIP_DEFAULT_FAST_MODEL,subagent:MEMBERSHIP_DEFAULT_FAST_MODEL,guide:MEMBERSHIP_DEFAULT_FAST_MODEL,plan:MEMBERSHIP_DEFAULT_PLAN_MODEL,review:MEMBERSHIP_DEFAULT_REVIEW_MODEL},modelsLineExample:"auto \xB7 light:clavue-2.1-fast \xB7 plan:clavue-2.1-pro \xB7 review:clavue-2.1-rev"};__name(buildOfficialAutoModelRouting,"buildOfficialAutoModelRouting");__name(isOfficialAutoRouting,"isOfficialAutoRouting");__name(isOfficialCloudAutoProfile,"isOfficialCloudAutoProfile");__name(formatOfficialAutoModelsLine,"formatOfficialAutoModelsLine");__name(officialAutoOnboardingBullets,"officialAutoOnboardingBullets");__name(listOfficialProductModels,"listOfficialProductModels");__name(ensureOfficialAutoOnCloudProfile,"ensureOfficialAutoOnCloudProfile")}});var providerProfiles_exports={};__export(providerProfiles_exports,{COMPATIBLE_EXTERNAL_PROVIDER_IMPORT_ENABLED:()=>COMPATIBLE_EXTERNAL_PROVIDER_IMPORT_ENABLED,COMPATIBLE_EXTERNAL_PROVIDER_SOURCE_IDS:()=>COMPATIBLE_EXTERNAL_PROVIDER_SOURCE_IDS,CURRENT_PROVIDER_PROFILE_ID:()=>CURRENT_PROVIDER_PROFILE_ID,DEFAULT_PROVIDER_ROUTE_DIAGNOSTIC_MODELS:()=>DEFAULT_PROVIDER_ROUTE_DIAGNOSTIC_MODELS,PROVIDER_MODEL_CATALOG:()=>PROVIDER_MODEL_CATALOG,PROVIDER_MODEL_ROUTING_PRESETS:()=>PROVIDER_MODEL_ROUTING_PRESETS,PROVIDER_PRESETS:()=>PROVIDER_PRESETS,__resetOrphanActiveProviderHealForTests:()=>__resetOrphanActiveProviderHealForTests,activateCurrentProviderProfile:()=>activateCurrentProviderProfile,activateFusionConfig:()=>activateFusionConfig,activateProviderProfile:()=>activateProviderProfile,allocateUniqueProviderProfileName:()=>allocateUniqueProviderProfileName,applyProviderProfileToProcess:()=>applyProviderProfileToProcess,assertProviderProfileActivatable:()=>assertProviderProfileActivatable,attemptAutoRepairProviderProfile:()=>attemptAutoRepairProviderProfile,clearActiveProviderConfiguration:()=>clearActiveProviderConfiguration,cloneProviderProfile:()=>cloneProviderProfile,createCustomProviderModelRouting:()=>createCustomProviderModelRouting,createProviderDraftFromPreset:()=>createProviderDraftFromPreset,createProviderModelRoutingFromPreset:()=>createProviderModelRoutingFromPreset,deleteFusionConfig:()=>deleteFusionConfig,deleteProviderProfile:()=>deleteProviderProfile,describeProviderPrimaryUpstreamPath:()=>describeProviderPrimaryUpstreamPath,extractMaxInputTokensFromModelsPayload:()=>extractMaxInputTokensFromModelsPayload,findProviderProfiles:()=>findProviderProfiles,getActiveFusionConfig:()=>getActiveFusionConfig,getActiveFusionConfigId:()=>getActiveFusionConfigId,getActiveFusionEndpointForModel:()=>getActiveFusionEndpointForModel,getActiveProviderProfileId:()=>getActiveProviderProfileId,getCachedProviderCapabilitySnapshot:()=>getCachedProviderCapabilitySnapshot,getCredentialLabel:()=>getCredentialLabel,getCurrentProviderProfile:()=>getCurrentProviderProfile,getFusionConfigById:()=>getFusionConfigById,getFusionConfigs:()=>getFusionConfigs,getProviderCapabilitySnapshotFreshness:()=>getProviderCapabilitySnapshotFreshness,getProviderModelCatalogEntry:()=>getProviderModelCatalogEntry,getProviderModelMaxInputTokens:()=>getProviderModelMaxInputTokens,getProviderModelRoutingPreset:()=>getProviderModelRoutingPreset,getProviderModelSlotDefaults:()=>getProviderModelSlotDefaults,getProviderPreset:()=>getProviderPreset,getProviderProfileById:()=>getProviderProfileById,getProviderProfiles:()=>getProviderProfiles,getProviderSlotModelsFromRouting:()=>getProviderSlotModelsFromRouting,getResolvedCurrentProviderProfile:()=>getResolvedCurrentProviderProfile,getSavedActiveProviderProfile:()=>getSavedActiveProviderProfile,hasProviderCredentialConfigured:()=>hasProviderCredentialConfigured,healUserSettingsEnvToProfile:()=>healUserSettingsEnvToProfile,importCompatibleExternalProviderProfiles:()=>importCompatibleExternalProviderProfiles,inferProviderApiDialectMode:()=>inferProviderApiDialectMode,inferProviderPresetId:()=>inferProviderPresetId,inspectProviderModelRoute:()=>inspectProviderModelRoute,inspectProviderModelRoutes:()=>inspectProviderModelRoutes,isFusionModeActive:()=>isFusionModeActive,markProviderOnboardingComplete:()=>markProviderOnboardingComplete,maskCredential:()=>maskCredential,normalizeProviderModelRouting:()=>normalizeProviderModelRouting,providerProfileToAgentEnv:()=>providerProfileToAgentEnv,refreshProviderModelContextWindow:()=>refreshProviderModelContextWindow,repairProviderProfileRoutingForMode:()=>repairProviderProfileRoutingForMode,resolveFusionEndpointForModel:()=>resolveFusionEndpointForModel,resolveHealedActiveProviderProfileId:()=>resolveHealedActiveProviderProfileId,saveFusionConfig:()=>saveFusionConfig,saveProviderProfile:()=>saveProviderProfile,validateProviderProfile:()=>validateProviderProfile});import{createHash as createHash2,randomUUID as randomUUID2}from"crypto";import{existsSync as existsSync2,readFileSync as readFileSync6,renameSync as renameSync2,unlinkSync as unlinkSync2,writeFileSync as writeFileSync4}from"fs";import{homedir as homedir5}from"os";import{join as join16,resolve as resolve7}from"path";function writeFileSyncAtomic(filePath,content){let tmpPath=filePath+"."+process.pid+"."+Date.now().toString(36)+"."+randomUUID2().slice(0,8)+".tmp";try{writeFileSync4(tmpPath,content,"utf8"),renameSync2(tmpPath,filePath)}catch(error40){try{unlinkSync2(tmpPath)}catch{}throw error40}}function normalizeProviderPanelSelection(value){if(!value||typeof value!="object")return;let raw=value,preset=raw.preset,strategy=raw.strategy,judgeMemberId=typeof raw.judgeMemberId=="string"?raw.judgeMemberId.trim():"";if(!(preset!=="budget"&&preset!=="balanced"&&preset!=="frontier"||strategy!=="first_to_finish"&&strategy!=="majority_vote"&&strategy!=="union"&&strategy!=="longest"&&strategy!=="best_score"&&strategy!=="judge_synthesis"||!judgeMemberId))return{preset,strategy,judgeMemberId}}function routeKeysForProviderValidationRoles(roles){let keys2=roles.flatMap(role=>{switch(role){case"primary":return["slot:primary","role:mainloop"];case"subagent":return["slot:subagent","slot:sonnet","role:fallback"];case"fast":return["slot:smallfast","slot:haiku","role:background"];case"plan":return["slot:plan","slot:opus","role:planner"]}});return[...new Set(keys2)]}function shouldAutoImportCompatibleExternalProviderProfiles(){return!1}function normalizeAnthropicBaseUrl(value){let trimmedValue=String(value??"").trim();return trimmedValue?trimmedValue.replace(/\/v1(?:\/messages)?\/?$/i,"").replace(/\/+$/,""):""}function stripTomlComment(line){let result2="",quote=null,escaped=!1;for(let char of line){if(quote){if(result2+=char,quote==='"'&&char==="\\"&&!escaped){escaped=!0;continue}char===quote&&!escaped&&(quote=null),escaped=!1;continue}if(char==='"'||char==="'"){quote=char,result2+=char;continue}if(char==="#")break;result2+=char}return result2.trim()}function parseTomlPathSegments(value){let segments=[],current="",quote=null;for(let char of value){if(quote){char===quote?quote=null:current+=char;continue}if(char==='"'||char==="'"){quote=char;continue}if(char==="."){let segment=current.trim();segment&&segments.push(segment),current="";continue}current+=char}let tail2=current.trim();return tail2&&segments.push(tail2),segments}function parseTomlStringValue(value){let trimmed=stripTomlComment(value);if(!trimmed)return"";if(trimmed.startsWith('"')&&trimmed.endsWith('"'))try{return JSON.parse(trimmed)}catch{return trimmed.slice(1,-1)}return trimmed.startsWith("'")&&trimmed.endsWith("'")?trimmed.slice(1,-1):trimmed}function getVerifiedCapabilitiesForModel(model){let normalizedModel=model.trim().toLowerCase();if(!normalizedModel)return[];let capabilities=VERIFIED_MODEL_CAPABILITIES.get(normalizedModel);return capabilities?[...capabilities]:[]}function getCapabilitiesFromProviderSnapshot(model,snapshot){if(!model.trim().toLowerCase())return[];let capabilities=new Set,verifiedCapabilities=getVerifiedCapabilitiesForModel(model);if(snapshot.responsesReasoningMedium){capabilities.add("effort"),capabilities.add("thinking");for(let capability of verifiedCapabilities)capability==="adaptive_thinking"&&capabilities.add(capability)}return snapshot.responsesReasoningXHigh&&capabilities.add("max_effort"),[...capabilities]}function serializeCapabilitiesForModel(profile,model){if(profile){let snapshot=getProviderCapabilitySnapshot(profile,model,{allowStale:!0});if(snapshot){let cachedCapabilities=getCapabilitiesFromProviderSnapshot(model,snapshot);return cachedCapabilities.length>0?cachedCapabilities.join(","):void 0}}let transportPreference=getModelTransportPreference(model);if(transportPreference==="openai_responses"||transportPreference==="openai_chat_completions")return;let capabilities=getVerifiedCapabilitiesForModel(model);return capabilities.length>0?capabilities.join(","):void 0}function normalizeAuthType(value){return value==="auth_token"?"auth_token":"api_key"}function getProviderSlotModelsFromRouting(routing){let values2=getProviderModeSlotValues(routing??{});return[values2.primaryModel,values2.haikuModel,values2.sonnetModel,values2.opusModel].map(model=>String(model??"").trim()).filter(Boolean)}function inferProviderApiDialectMode(modelMode,models){return modelMode==="anthropic_native"?"anthropic":modelMode==="openai_native"||models.some(model=>{let preference=getModelTransportPreference(model);return preference==="openai_responses"||preference==="openai_chat_completions"})?"openai_responses":"anthropic"}function describeProviderPrimaryUpstreamPath(profile){let primaryModel=String(profile.modelRouting.primaryModel??"").trim();if(!primaryModel)return"/v1/messages";let apiDialectMode=profile.apiDialectMode??inferProviderApiDialectMode(profile.modelMode,getProviderSlotModelsFromRouting(profile.modelRouting)),fusionEndpoint=getActiveFusionEndpointForModel(primaryModel,["slot:primary","role:mainloop"]),fusionEndpointDialect=fusionEndpoint?.apiDialectMode??null,decision=resolveCodingRoutePolicy({model:primaryModel,apiDialectMode,fusionEndpointDialect});return fusionEndpoint?.upstreamPathOverride||getUpstreamApiPathForTransport(primaryModel,decision.transport)}function normalizeProviderApiDialectMode(value,modelMode,modelRouting){return value==="anthropic"||value==="openai_responses"?value:inferProviderApiDialectMode(modelMode,getProviderSlotModelsFromRouting(modelRouting))}function normalizeProviderId(value,baseUrl){return value==="custom"||value==="anthropic"||value==="openrouter"||value==="glm"||value==="minimax"||value==="kimi"||value==="xai"||value==="gemini"?value:inferProviderPresetId(baseUrl)??"custom"}function normalizeModelRoutingPresetId(value){return value==="provider_default"||value==="claude_code_heritage"||value==="gpt_5_5_max"||value==="gpt_5_4_codex"||value==="gpt_5_1_stable"||value==="gpt_5_3_codex"||value==="gpt55_deepseek_combo"||value==="deepseek_gpt_combo"||value==="grok_current"||value==="grok_45_composer_combo"||value==="minimax_m3"||value==="kimi_k26"||value==="deepseek_v4_pro"||value==="glm_52"||value==="qwen36_gateway"||value==="custom"?value:"provider_default"}function normalizeModelValue(value){if(typeof value!="string")return"";let m2=value.trim();return m2?(/^gork(?=[-_.]|$)/i.test(m2)&&(m2=m2.replace(/^gork/i,"grok")),m2):""}function inferModelRoutingPresetId(routing){for(let preset of PROVIDER_MODEL_ROUTING_PRESETS)if(preset.routing.primaryModel===routing.primaryModel&&preset.routing.subagentModel===routing.subagentModel&&preset.routing.smallFastModel===routing.smallFastModel&&preset.routing.planModel===routing.planModel&&preset.routing.exploreModel===routing.exploreModel&&preset.routing.generalModel===routing.generalModel&&preset.routing.teamModel===routing.teamModel&&preset.routing.guideModel===routing.guideModel&&preset.routing.reviewModel===routing.reviewModel)return preset.id;return"custom"}function normalizeProviderModelRouting(value){if(!value||typeof value!="object")return createProviderModelRoutingFromPreset("provider_default");let raw=value,presetId=normalizeModelRoutingPresetId(raw.presetId),base=getProviderModelRoutingPreset(presetId).routing,normalized=completeProviderRoutingSlotsFromPrimary({presetId,primaryModel:normalizeModelValue(raw.primaryModel),subagentModel:normalizeModelValue(raw.subagentModel),smallFastModel:normalizeModelValue(raw.smallFastModel),planModel:normalizeModelValue(raw.planModel),exploreModel:normalizeModelValue(raw.exploreModel),generalModel:normalizeModelValue(raw.generalModel),teamModel:normalizeModelValue(raw.teamModel),guideModel:normalizeModelValue(raw.guideModel),reviewModel:normalizeModelValue(raw.reviewModel)},base);return{presetId:presetId==="provider_default"?inferModelRoutingPresetId(normalized):presetId,...normalized}}function normalizeProviderProfileProvenance(value){if(!value||typeof value!="object")return{kind:"manual"};let raw=value;return raw.kind==="synthetic_current_env"?{kind:"synthetic_current_env"}:raw.kind==="current_env_adopted"?{kind:"current_env_adopted",adoptedAt:typeof raw.adoptedAt=="number"&&Number.isFinite(raw.adoptedAt)?raw.adoptedAt:Date.now()}:raw.kind==="imported"&&(raw.sourceId==="ccjk"||raw.sourceId==="zcf")?{kind:"imported",sourceId:raw.sourceId,importedAt:typeof raw.importedAt=="number"&&Number.isFinite(raw.importedAt)?raw.importedAt:Date.now(),externalProfileId:typeof raw.externalProfileId=="string"&&raw.externalProfileId.trim()||void 0}:{kind:"manual"}}function normalizeProviderSecretRecord(value){if(!value||typeof value!="object")return null;let raw=value,credential=typeof raw.credential=="string"?raw.credential.trim():"";return credential?{credential,authType:raw.authType==="auth_token"?"auth_token":raw.authType==="api_key"?"api_key":void 0}:null}function getStoredProviderSecretRecords(){let stored=getSecureStorage().read()?.providerProfiles;return!stored||typeof stored!="object"?{}:Object.fromEntries(Object.entries(stored).map(([profileId,value])=>{let normalizedId=profileId.trim(),normalizedValue=normalizeProviderSecretRecord(value);return normalizedId&&normalizedValue?[normalizedId,normalizedValue]:null}).filter(entry=>entry!==null))}function areProviderSecretMapsEqual(left,right){let leftKeys=Object.keys(left).sort(),rightKeys=Object.keys(right).sort();if(leftKeys.length!==rightKeys.length)return!1;for(let index=0;index<leftKeys.length;index+=1){let leftKey=leftKeys[index],rightKey=rightKeys[index];if(leftKey!==rightKey)return!1;let leftValue=left[leftKey],rightValue=right[rightKey];if(!leftValue||!rightValue||leftValue.credential!==rightValue.credential||leftValue.authType!==rightValue.authType)return!1}return!0}function persistProviderSecrets(profiles,options){let secureStorage=getSecureStorage(),existingData=secureStorage.read()??{},currentSecrets=getStoredProviderSecretRecords(),nextSecrets={...currentSecrets};for(let removedId of options?.removedProfileIds??[]){let id=String(removedId||"").trim();id&&delete nextSecrets[id]}for(let profile of profiles){let id=profile.id.trim(),credential=profile.credential.trim();id&&(!credential||isPlaceholderProviderCredential(credential)||(nextSecrets[id]={credential,authType:normalizeAuthType(profile.authType)}))}if(areProviderSecretMapsEqual(currentSecrets,nextSecrets))return;if(!secureStorage.update({...existingData,providerProfiles:Object.keys(nextSecrets).length>0?nextSecrets:void 0}).success)throw new Error("Failed to persist provider credentials to secure storage")}function scrubStoredProviderProfile(profile){let{credential:_credential,...rest2}=profile;return rest2}function normalizeProviderProfile(value,providerSecrets={}){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"",name=typeof raw.name=="string"?raw.name.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:""),secretRecord=id?providerSecrets[id]:void 0,credential=secretRecord?.credential??(typeof raw.credential=="string"?raw.credential.trim():"");if(!id||!name||!baseUrl)return null;let safeCredential=isPlaceholderProviderCredential(credential)?"":credential,createdAt=typeof raw.createdAt=="number"&&Number.isFinite(raw.createdAt)?raw.createdAt:Date.now(),updatedAt=typeof raw.updatedAt=="number"&&Number.isFinite(raw.updatedAt)?raw.updatedAt:createdAt,providerId=normalizeProviderId(raw.providerId,baseUrl),modelRouting=normalizeProviderModelRouting(raw.modelRouting),modelMode=getProviderModelModeForProfile({providerId,modelMode:typeof raw.modelMode=="string"?raw.modelMode:void 0,modelRouting});return{id,name,providerId,modelMode,baseUrl,authType:normalizeAuthType(secretRecord?.authType??raw.authType),credential:safeCredential,modelRouting,provenance:normalizeProviderProfileProvenance(raw.provenance),geminiHighAmplification:raw.geminiHighAmplification==="full"||raw.geminiHighAmplification==="light"||raw.geminiHighAmplification==="off"?raw.geminiHighAmplification:void 0,apiDialectMode:normalizeProviderApiDialectMode(raw.apiDialectMode,modelMode,modelRouting),providerPanel:normalizeProviderPanelSelection(raw.providerPanel),createdAt,updatedAt}}function buildCompatibleExternalProviderRouting(profile){let primaryModel=normalizeModelValue(profile.primaryModel),haikuModel=normalizeModelValue(profile.defaultHaikuModel),sonnetModel=normalizeModelValue(profile.defaultSonnetModel),opusModel=normalizeModelValue(profile.defaultOpusModel),executionModel=sonnetModel||primaryModel;return normalizeProviderModelRouting({presetId:"custom",primaryModel,subagentModel:executionModel&&executionModel!==primaryModel?executionModel:"",smallFastModel:haikuModel,planModel:opusModel||primaryModel,exploreModel:executionModel,generalModel:executionModel,teamModel:executionModel,guideModel:opusModel||primaryModel,reviewModel:""})}function repairProviderProfileRoutingForMode(profile){let providerId=normalizeProviderId(profile.providerId,profile.baseUrl),routing=normalizeProviderModelRouting(profile.modelRouting),modelMode=getProviderModelModeForProfile({providerId,modelMode:profile.modelMode,modelRouting:routing}),issues=validateProviderModeRouting(modelMode,profile.modelRouting,{language:"zh",requireExplicitHybridSelections:modelMode==="hybrid_compatible"}).filter(issue2=>issue2.level==="error");if(modelMode==="hybrid_compatible"&&appendEmptyHybridModeSlotIssues(issues,profile.modelRouting),issues.length===0)return{profile:{...profile,providerId,modelMode,modelRouting:routing},repaired:!1,messages:[]};let seedPrimary=createDefaultProviderModeSlotValues(modelMode).primaryModel,repair=repairProviderRoutingSlots(routing,issues,seedPrimary);if(!repair.repaired)return{profile:{...profile,providerId,modelMode,modelRouting:routing},repaired:!1,messages:[...issues.map(issue2=>issue2.message),...repair.messages,"\u7EC4\u5408\u6A21\u578B\u914D\u7F6E\u672A\u6574\u4F53\u5207\u6362\uFF1B\u8BF7\u68C0\u67E5\u5BF9\u5E94\u69FD\u4F4D\u6216\u4E3B\u6A21\u578B\u540E\u91CD\u8BD5\u3002"]};let repairedRouting={...repair.routing,presetId:inferModelRoutingPresetId({primaryModel:repair.routing.primaryModel,subagentModel:repair.routing.subagentModel,smallFastModel:repair.routing.smallFastModel,planModel:repair.routing.planModel,exploreModel:repair.routing.exploreModel,generalModel:repair.routing.generalModel,teamModel:repair.routing.teamModel,guideModel:repair.routing.guideModel,reviewModel:repair.routing.reviewModel})};return{profile:{...profile,providerId,modelMode,modelRouting:repairedRouting},repaired:!0,messages:repair.messages}}function createProviderProfileFromCompatibleExternalProfile(profileId,profile,sourceId){let id=profileId.trim(),name=String(profile.name||profileId).trim(),baseUrl=normalizeAnthropicBaseUrl(profile.baseUrl),credential=String(profile.apiKey||"").trim(),authType=profile.authType==="auth_token"?"auth_token":"api_key";if(!id||!name||!baseUrl||!credential||isPlaceholderProviderCredential(credential))return null;let now2=Date.now(),rawProfile={id,name,providerId:normalizeProviderId(void 0,baseUrl),modelMode:getProviderModelModeForProfile({providerId:normalizeProviderId(void 0,baseUrl),modelRouting:buildCompatibleExternalProviderRouting(profile)}),baseUrl,authType,credential,modelRouting:buildCompatibleExternalProviderRouting(profile),provenance:{kind:"imported",sourceId,importedAt:now2,externalProfileId:id},createdAt:now2,updatedAt:now2};return repairProviderProfileRoutingForMode(rawProfile).profile}function loadCompatibleExternalProviderConfig(configPath,sourceId){if(!existsSync2(configPath))return null;let content="";try{content=readFileSync6(configPath,"utf8")}catch{return null}let rawProfiles=new Map,activeProfileId="",currentPath=[];for(let rawLine of content.split(/\r?\n/u)){let line=stripTomlComment(rawLine);if(!line)continue;if(line.startsWith("[")&&line.endsWith("]")){currentPath=parseTomlPathSegments(line.slice(1,-1).trim());continue}let separatorIndex=line.indexOf("=");if(separatorIndex===-1)continue;let key=line.slice(0,separatorIndex).trim().replace(/^['"]|['"]$/g,""),value=parseTomlStringValue(rawLine.slice(separatorIndex+1));if(currentPath.length===1&&currentPath[0]==="claudeCode"){key==="currentProfile"&&(activeProfileId=value.trim());continue}if(currentPath.length<3||currentPath[0]!=="claudeCode"||currentPath[1]!=="profiles")continue;let profileKey=currentPath.slice(2).join(".").trim();if(!profileKey)continue;let currentProfile=rawProfiles.get(profileKey)??{};(key==="name"||key==="authType"||key==="apiKey"||key==="baseUrl"||key==="primaryModel"||key==="defaultHaikuModel"||key==="defaultSonnetModel"||key==="defaultOpusModel")&&(currentProfile[key]=value,rawProfiles.set(profileKey,currentProfile))}let profiles=[...rawProfiles.entries()].map(([profileId,profile])=>createProviderProfileFromCompatibleExternalProfile(profileId,profile,sourceId)).filter(profile=>profile!==null);return profiles.length===0&&!activeProfileId?null:{activeProfileId:activeProfileId||void 0,profiles}}function loadCompatibleExternalProviderProfiles(options){if(!COMPATIBLE_EXTERNAL_PROVIDER_IMPORT_ENABLED)return{activeProfileId:void 0,profiles:[]};let profiles=[],seenIds=new Set,activeProfileId;for(let source of COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS){if(options?.sourceId&&source.sourceId!==options.sourceId)continue;let loaded=loadCompatibleExternalProviderConfig(source.path,source.sourceId);if(loaded){!activeProfileId&&loaded.activeProfileId&&(activeProfileId=loaded.activeProfileId);for(let profile of loaded.profiles){let normalizedId=profile.id.trim().toLowerCase();!normalizedId||seenIds.has(normalizedId)||(seenIds.add(normalizedId),profiles.push(profile))}}}return{activeProfileId,profiles}}function applyCompatibleExternalProviderImport(externalConfig){let discoveredProfiles=externalConfig.profiles;if(discoveredProfiles.length===0&&!externalConfig.activeProfileId)return{discoveredProfiles,importedProfiles:[],skippedProfiles:[],activeProfileId:externalConfig.activeProfileId,syncedActiveProfile:null};let currentConfig=getProviderConfig(),storedProfiles=getStoredProviderProfiles(),storedProfileIds=new Set(storedProfiles.map(profile=>profile.id.trim().toLowerCase())),storedProfileNames=new Set(storedProfiles.map(profile=>profile.name.trim().toLowerCase())),externalProfileIds=new Set(discoveredProfiles.map(profile=>profile.id.trim())),importedProfiles=discoveredProfiles.filter(profile=>{let normalizedId=profile.id.trim().toLowerCase(),normalizedName=profile.name.trim().toLowerCase();return normalizedId&&!storedProfileIds.has(normalizedId)&&!storedProfileNames.has(normalizedName)}),skippedProfiles=discoveredProfiles.filter(profile=>!importedProfiles.some(imported=>imported.id===profile.id)),currentStoredActiveProfileId=getStoredActiveProviderProfileId(currentConfig),importedActiveProfileId=String(externalConfig.activeProfileId||"").trim(),shouldSyncExternalActiveProfile=!!importedActiveProfileId&&externalProfileIds.has(importedActiveProfileId)&&(!currentStoredActiveProfileId||externalProfileIds.has(currentStoredActiveProfileId))&&currentStoredActiveProfileId!==importedActiveProfileId;if(importedProfiles.length===0&&!shouldSyncExternalActiveProfile)return{discoveredProfiles,importedProfiles,skippedProfiles,activeProfileId:importedActiveProfileId||void 0,syncedActiveProfile:null};let nextProfiles=[...storedProfiles,...importedProfiles];updateProviderConfig(nextProfiles,shouldSyncExternalActiveProfile?importedActiveProfileId:getStoredActiveProviderProfileId(currentConfig)||void 0);let syncedActiveProfile=null;return shouldSyncExternalActiveProfile&&(!getCurrentProviderProfile()||externalProfileIds.has(currentStoredActiveProfileId))&&(syncedActiveProfile=nextProfiles.find(profile=>profile.id===importedActiveProfileId)??null,syncedActiveProfile&&(writeUserSettingsUpdate(syncedActiveProfile),applyProviderProfileToProcess(syncedActiveProfile))),{discoveredProfiles,importedProfiles,skippedProfiles,activeProfileId:importedActiveProfileId||void 0,syncedActiveProfile}}function escapeTomlBasicString(value){return value.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function updateCompatibleExternalProviderCurrentProfile(profileId){if(!COMPATIBLE_EXTERNAL_PROVIDER_IMPORT_ENABLED)return;let nextProfileId=String(profileId||"").trim();for(let source of COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS){if(!existsSync2(source.path)||nextProfileId&&!loadCompatibleExternalProviderConfig(source.path,source.sourceId)?.profiles.some(profile=>profile.id===nextProfileId))continue;let content="";try{content=readFileSync6(source.path,"utf8")}catch{continue}let lines=content.split(/\r?\n/u),output=[],currentPath=[],hasClaudeCodeSection=!1,replaced=!1;for(let line of lines){let normalizedLine=stripTomlComment(line),isSection=normalizedLine.startsWith("[")&&normalizedLine.endsWith("]");if(hasClaudeCodeSection&&currentPath.length===1&&currentPath[0]==="claudeCode"&&isSection&&!replaced&&(output.push(`currentProfile = "${escapeTomlBasicString(nextProfileId)}"`),replaced=!0),isSection){currentPath=parseTomlPathSegments(normalizedLine.slice(1,-1).trim()),currentPath.length===1&&currentPath[0]==="claudeCode"&&(hasClaudeCodeSection=!0),output.push(line);continue}if(currentPath.length===1&&currentPath[0]==="claudeCode"){let separatorIndex=normalizedLine.indexOf("=");if(separatorIndex!==-1&&normalizedLine.slice(0,separatorIndex).trim().replace(/^['"]|['"]$/g,"")==="currentProfile"){output.push(`currentProfile = "${escapeTomlBasicString(nextProfileId)}"`),replaced=!0;continue}}output.push(line)}if(hasClaudeCodeSection&&currentPath.length===1&&currentPath[0]==="claudeCode"&&!replaced&&(output.push(`currentProfile = "${escapeTomlBasicString(nextProfileId)}"`),replaced=!0),!hasClaudeCodeSection)continue;let nextContent=output.join(`
189
189
  `);if(nextContent!==content)try{writeFileSyncAtomic(source.path,nextContent)}catch{}}}function getProviderConfig(){return ensureNormalizedProviderBaseUrlsMigrated(),getGlobalConfig()}function getStoredProviderProfileRecords(config2){return Array.isArray(config2.clavueProviderProfiles)?config2.clavueProviderProfiles:Array.isArray(config2.my\u0063laudeProviderProfiles)?config2.my\u0063laudeProviderProfiles:[]}function getStoredActiveProviderProfileId(config2){let activeProfileId=typeof config2.clavueActiveProviderProfileId=="string"?config2.clavueActiveProviderProfileId.trim():"";return activeProfileId||(typeof config2.my\u0063laudeActiveProviderProfileId=="string"?config2.my\u0063laudeActiveProviderProfileId.trim():"")}function resolveHealedActiveProviderProfileId(activeId,profiles,env5={}){let trimmedActive=String(activeId||"").trim();if(!trimmedActive||trimmedActive===CURRENT_PROVIDER_PROFILE_ID)return trimmedActive||void 0;if(profiles.some(profile=>profile.id===trimmedActive))return trimmedActive;let envBaseUrl=normalizeAnthropicBaseUrl(env5.baseUrl),envPrimary=String(env5.primaryModel||"").trim();if(!envBaseUrl)return;let withHost=profiles.filter(profile=>normalizeAnthropicBaseUrl(profile.baseUrl)===envBaseUrl).sort((a2,b)=>(b.updatedAt||0)-(a2.updatedAt||0));return withHost.find(profile=>{let primary=(profile.modelRouting?.primaryModel||profile.modelRouting?.generalModel||"").trim();return!envPrimary||primary===envPrimary})?.id||withHost[0]?.id}function healOrphanActiveProviderProfileId(){if(!hasHealedOrphanActiveProviderProfileId){hasHealedOrphanActiveProviderProfileId=!0;try{let config2=getProviderConfig(),activeId=getStoredActiveProviderProfileId(config2);if(!activeId||activeId===CURRENT_PROVIDER_PROFILE_ID)return;let profiles=getStoredProviderProfiles();if(profiles.some(profile=>profile.id===activeId))return;let settingsEnv=getSettingsEnv(),envBaseUrl=settingsEnv.ANTHROPIC_BASE_URL?.trim()||process.env.ANTHROPIC_BASE_URL?.trim(),envPrimary=settingsEnv.ANTHROPIC_MODEL?.trim()||process.env.ANTHROPIC_MODEL?.trim(),nextActiveId=resolveHealedActiveProviderProfileId(activeId,profiles,{baseUrl:envBaseUrl,primaryModel:envPrimary}),healed=nextActiveId?profiles.find(profile=>profile.id===nextActiveId):void 0;saveGlobalConfig(current=>({...current,clavueActiveProviderProfileId:nextActiveId||void 0})),healed&&(writeUserSettingsUpdate(healed),applyProviderProfileToProcess(healed))}catch{}}}function getStoredProviderCapabilityCache(config2){return config2.clavueProviderCapabilityCache&&typeof config2.clavueProviderCapabilityCache=="object"?config2.clavueProviderCapabilityCache:config2.my\u0063laudeProviderCapabilityCache&&typeof config2.my\u0063laudeProviderCapabilityCache=="object"?config2.my\u0063laudeProviderCapabilityCache:void 0}function ensureNormalizedProviderBaseUrlsMigrated(){hasMigratedNormalizedProviderBaseUrls||(hasMigratedNormalizedProviderBaseUrls=!0,migrateNormalizedProviderBaseUrls())}function getStoredProviderProfiles(){let config2=getProviderConfig(),providerSecrets=getStoredProviderSecretRecords();return getStoredProviderProfileRecords(config2).map(profile=>normalizeProviderProfile(profile,providerSecrets)).filter(profile=>profile!==null)}function ensureCompatibleExternalProviderProfilesImported(){hasAttemptedCompatibleExternalProviderImport||(hasAttemptedCompatibleExternalProviderImport=!0,shouldAutoImportCompatibleExternalProviderProfiles()&&applyCompatibleExternalProviderImport(loadCompatibleExternalProviderProfiles()))}function buildProviderCredentialFingerprint(profile){return createHash2("sha256").update([normalizeAnthropicBaseUrl(profile.baseUrl),profile.authType,profile.credential.trim()].join("\0")).digest("hex").slice(0,24)}function buildProviderCapabilityCacheKey(profile,model){return`${buildProviderCredentialFingerprint(profile)}:${normalizeModelValue(model).toLowerCase()}`}function createEmptyProviderCapabilitySnapshot(profile,model){return{version:PROVIDER_CAPABILITY_CACHE_VERSION,key:buildProviderCapabilityCacheKey(profile,model),model:normalizeModelValue(model),baseUrl:normalizeAnthropicBaseUrl(profile.baseUrl),authType:profile.authType,credentialFingerprint:buildProviderCredentialFingerprint(profile),checkedAt:Date.now(),compatibilityChecked:!1,anthropicMessagesReachable:!1,anthropicToolUse:!1,responsesArrayInputReachable:!1,responsesToolChoiceAuto:!1,responsesToolChoiceRequired:!1,responsesToolChoiceNamed:!1,responsesReasoningMedium:!1,responsesReasoningXHigh:!1}}function normalizeProviderCapabilitySnapshot(value){if(!value||typeof value!="object")return null;let raw=value,key=typeof raw.key=="string"?raw.key.trim():"",model=typeof raw.model=="string"?raw.model.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:""),credentialFingerprint=typeof raw.credentialFingerprint=="string"?raw.credentialFingerprint.trim():"";if(raw.version!==PROVIDER_CAPABILITY_CACHE_VERSION||!key||!model||!baseUrl||!credentialFingerprint)return null;let optionalString=__name(input=>typeof input=="string"&&input.trim()?input.trim():void 0,"optionalString");return{version:PROVIDER_CAPABILITY_CACHE_VERSION,key,model,baseUrl,authType:normalizeAuthType(raw.authType),credentialFingerprint,checkedAt:typeof raw.checkedAt=="number"&&Number.isFinite(raw.checkedAt)?raw.checkedAt:Date.now(),compatibilityChecked:raw.compatibilityChecked===!0,anthropicMessagesReachable:raw.anthropicMessagesReachable===!0,anthropicToolUse:raw.anthropicToolUse===!0,responsesArrayInputReachable:raw.responsesArrayInputReachable===!0,responsesToolChoiceAuto:raw.responsesToolChoiceAuto===!0,responsesToolChoiceRequired:raw.responsesToolChoiceRequired===!0,responsesToolChoiceNamed:raw.responsesToolChoiceNamed===!0,responsesReasoningMedium:raw.responsesReasoningMedium===!0,responsesReasoningXHigh:raw.responsesReasoningXHigh===!0,messagesError:optionalString(raw.messagesError),responsesAccessError:optionalString(raw.responsesAccessError),responsesAutoError:optionalString(raw.responsesAutoError),responsesRequiredError:optionalString(raw.responsesRequiredError),responsesNamedError:optionalString(raw.responsesNamedError),responsesReasoningMediumError:optionalString(raw.responsesReasoningMediumError),responsesReasoningXHighError:optionalString(raw.responsesReasoningXHighError)}}function getProviderCapabilityCache(){let rawCache=getStoredProviderCapabilityCache(getProviderConfig());return!rawCache||typeof rawCache!="object"?{}:Object.fromEntries(Object.entries(rawCache).map(([key,value])=>{let normalized=normalizeProviderCapabilitySnapshot(value);return normalized?[key,normalized]:null}).filter(entry=>entry!==null))}function saveProviderCapabilitySnapshot(snapshot){saveGlobalConfig(current=>{let existingCache=current&&typeof current=="object"&&!Array.isArray(current)&&typeof current.clavueProviderCapabilityCache=="object"&&current.clavueProviderCapabilityCache!==null?{...current.clavueProviderCapabilityCache}:{};return existingCache[snapshot.key]=snapshot,{...current,clavueProviderCapabilityCache:existingCache}})}function upsertProviderCapabilitySnapshot(profile,model,patch){let key=buildProviderCapabilityCacheKey(profile,model),nextSnapshot={...getProviderCapabilityCache()[key]??createEmptyProviderCapabilitySnapshot(profile,model),...patch,version:PROVIDER_CAPABILITY_CACHE_VERSION,key,model:normalizeModelValue(model),baseUrl:normalizeAnthropicBaseUrl(profile.baseUrl),authType:profile.authType,credentialFingerprint:buildProviderCredentialFingerprint(profile),checkedAt:Date.now()};return saveProviderCapabilitySnapshot(nextSnapshot),nextSnapshot}function getProviderCapabilitySnapshot(profile,model,{allowStale=!1}={}){let cacheKey=buildProviderCapabilityCacheKey(profile,model),snapshot=getProviderCapabilityCache()[cacheKey];return!snapshot||!allowStale&&Date.now()-snapshot.checkedAt>PROVIDER_CAPABILITY_CACHE_TTL_MS?null:snapshot}function getCachedProviderCapabilitySnapshot(profile,model,options={}){return getProviderCapabilitySnapshot(profile,model,options)}function getProviderCapabilitySnapshotFreshness(snapshot){return snapshot?Date.now()-snapshot.checkedAt>PROVIDER_CAPABILITY_CACHE_TTL_MS?"stale":"fresh":"none"}function getProviderModelMaxInputTokens(model){try{let profile=getResolvedCurrentProviderProfile();return profile?getProviderCapabilitySnapshot(profile,model,{allowStale:!0})?.maxInputTokens:void 0}catch{return}}function extractMaxInputTokensFromModelsPayload(payload,modelId){let want=String(modelId||"").trim().toLowerCase();if(!want)return null;let wantBare=want.includes("/")?want.slice(want.lastIndexOf("/")+1):want,root2=payload&&typeof payload=="object"?payload:null,data=Array.isArray(root2?.data)?root2.data:Array.isArray(payload)?payload:null;if(!data)return null;for(let raw of data){if(!raw||typeof raw!="object")continue;let entry=raw,id=String(entry.id??"").trim().toLowerCase();if(!id)continue;let idBare=id.includes("/")?id.slice(id.lastIndexOf("/")+1):id;if(id!==want&&idBare!==wantBare&&!id.endsWith(`/${wantBare}`))continue;let caps=entry.capabilities&&typeof entry.capabilities=="object"?entry.capabilities:null,candidates=[entry.context_window,entry.contextWindow,entry.context_length,entry.contextLength,entry.max_input_tokens,entry.maxInputTokens,entry.max_model_len,entry.maxModelLen,caps?.context_window,caps?.max_input_tokens];for(let c3 of candidates){let n2=typeof c3=="number"?c3:typeof c3=="string"?Number(c3):NaN;if(Number.isFinite(n2)&&n2>=1e3)return Math.floor(n2)}}return null}async function refreshProviderModelContextWindow(model,options={}){let profile=options.profile??(()=>{try{return getResolvedCurrentProviderProfile()}catch{return null}})(),modelId=String(model||"").trim();if(!profile?.baseUrl||!modelId)return null;let cacheKey=buildProviderCapabilityCacheKey(profile,modelId);if(!options.force){let existing=getProviderCapabilitySnapshot(profile,modelId,{allowStale:!1});if(existing?.maxInputTokens&&existing.maxInputTokens>=1e3)return existing.maxInputTokens}let inflight2=contextWindowRefreshInflight.get(cacheKey);if(inflight2)return inflight2;let run=(async()=>{try{let modelsUrl=`${normalizeAnthropicBaseUrl(profile.baseUrl)}/v1/models`,headers=shouldValidateViaOpenAIResponses(profile)||normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting)!=="anthropic"?buildResponsesValidationHeaders(profile):buildValidationHeaders(profile),resp=await(options.fetchImpl??fetch)(modelsUrl,{method:"GET",headers,signal:options.signal});if(!resp.ok)return null;let body=await resp.json(),ctx=extractMaxInputTokensFromModelsPayload(body,modelId);return ctx==null?null:(upsertProviderCapabilitySnapshot(profile,modelId,{maxInputTokens:ctx}),ctx)}catch{return null}finally{contextWindowRefreshInflight.delete(cacheKey)}})();return contextWindowRefreshInflight.set(cacheKey,run),run}function getSettingsEnv(){return getSettingsForSource("userSettings")?.env??{}}function buildSettingsEnvUpdate(profile){if(!profile)return{ANTHROPIC_BASE_URL:void 0,ANTHROPIC_API_KEY:void 0,ANTHROPIC_AUTH_TOKEN:void 0,ANTHROPIC_MODEL:void 0,ANTHROPIC_SMALL_FAST_MODEL:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_NAME:void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION:void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES:void 0,CLAUDE_CODE_SUBAGENT_MODEL:void 0,CLAVUE_API_DIALECT:void 0,MYCLAUDE_API_DIALECT:void 0,CLAUDE_CODE_API_DIALECT:void 0,CLAUDE_CODE_PROVIDER_DIALECT:void 0,CLAUDE_CODE_USE_BEDROCK:void 0,CLAUDE_CODE_USE_VERTEX:void 0,CLAUDE_CODE_USE_FOUNDRY:void 0};let routing=profile.modelRouting,slotDefaults=getProviderModelSlotDefaults(routing);return{ANTHROPIC_BASE_URL:assertValidProviderBaseUrl(profile.baseUrl),ANTHROPIC_API_KEY:void 0,ANTHROPIC_AUTH_TOKEN:void 0,ANTHROPIC_MODEL:routing.primaryModel||void 0,ANTHROPIC_SMALL_FAST_MODEL:routing.smallFastModel||void 0,ANTHROPIC_CUSTOM_MODEL_OPTION:routing.primaryModel||void 0,ANTHROPIC_CUSTOM_MODEL_OPTION_NAME:getProviderModelDisplayName(routing.primaryModel,"primary"),ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION:getProviderModelDescription(routing.primaryModel,"primary"),ANTHROPIC_DEFAULT_OPUS_MODEL:slotDefaults.opusModel||void 0,ANTHROPIC_DEFAULT_OPUS_MODEL_NAME:getProviderModelDisplayName(slotDefaults.opusModel,"opus"),ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.opusModel,"opus"),ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.opusModel),ANTHROPIC_DEFAULT_SONNET_MODEL:slotDefaults.sonnetModel||void 0,ANTHROPIC_DEFAULT_SONNET_MODEL_NAME:getProviderModelDisplayName(slotDefaults.sonnetModel,"sonnet"),ANTHROPIC_DEFAULT_SONNET_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.sonnetModel,"sonnet"),ANTHROPIC_DEFAULT_SONNET_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.sonnetModel),ANTHROPIC_DEFAULT_HAIKU_MODEL:slotDefaults.haikuModel||void 0,ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME:getProviderModelDisplayName(slotDefaults.haikuModel,"haiku"),ANTHROPIC_DEFAULT_HAIKU_MODEL_DESCRIPTION:getProviderModelDescription(slotDefaults.haikuModel,"haiku"),ANTHROPIC_DEFAULT_HAIKU_MODEL_SUPPORTED_CAPABILITIES:serializeCapabilitiesForModel(profile,slotDefaults.haikuModel),CLAUDE_CODE_SUBAGENT_MODEL:routing.subagentModel&&routing.subagentModel!=="inherit"?routing.subagentModel:void 0,CLAVUE_API_DIALECT:normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting),MYCLAUDE_API_DIALECT:void 0,CLAUDE_CODE_API_DIALECT:void 0,CLAUDE_CODE_PROVIDER_DIALECT:void 0,CLAUDE_CODE_USE_BEDROCK:void 0,CLAUDE_CODE_USE_VERTEX:void 0,CLAUDE_CODE_USE_FOUNDRY:void 0}}function buildSettingsModelUpdate(profile){let primaryModel=profile?.modelRouting.primaryModel.trim();return primaryModel||void 0}function writeUserSettingsUpdate(profile){profile&&assertValidProviderBaseUrl(profile.baseUrl);let envUpdate=buildSettingsEnvUpdate(profile);updateSettingsForSource("userSettings",{env:envUpdate,model:buildSettingsModelUpdate(profile)})}function healUserSettingsEnvToProfile(profile){writeUserSettingsUpdate(profile)}function updateProviderConfig(profiles,activeProviderId,options){let existingRecords=getStoredProviderProfileRecords(getProviderConfig());if(profiles.length===0&&existingRecords.length>0&&options?.allowEmptyWipe!==!0){logForDebugging("updateProviderConfig: refusing empty provider profile wipe over non-empty store",{level:"error"}),persistProviderSecrets(profiles,{removedProfileIds:options?.removedProfileIds}),activeProviderId!==void 0&&saveGlobalConfig(current=>({...current,clavueActiveProviderProfileId:activeProviderId||void 0}));return}persistProviderSecrets(profiles,{removedProfileIds:options?.removedProfileIds}),saveGlobalConfig(current=>({...current,clavueProviderProfiles:profiles.length>0?profiles.map(scrubStoredProviderProfile):void 0,clavueActiveProviderProfileId:activeProviderId||void 0}))}function inferProviderPresetId(baseUrl){let normalizedBaseUrl=normalizeAnthropicBaseUrl(baseUrl);return normalizedBaseUrl?PROVIDER_PRESETS.find(preset=>preset.id!=="custom"&&normalizeAnthropicBaseUrl(preset.baseUrl)===normalizedBaseUrl)?.id??"custom":null}function getProviderModelCatalogEntry(model){let normalizedModel=model.trim().toLowerCase();if(normalizedModel)return PROVIDER_MODEL_CATALOG.find(entry=>entry.id.toLowerCase()===normalizedModel)}function getProviderModelDisplayName(model,slot){let entry=getProviderModelCatalogEntry(model);if(entry)switch(slot){case"primary":return entry.name;case"opus":return`${entry.name} \xB7 Planning`;case"sonnet":return`${entry.name} \xB7 Execution`;case"haiku":return`${entry.name} \xB7 Fast`}}function getProviderModelDescription(model,slot){let entry=getProviderModelCatalogEntry(model);if(!entry)return;let capabilitySuffix=entry.capabilities.length>0?` Supports ${entry.capabilities.join(", ")}.`:"";switch(slot){case"primary":return`${entry.description}.${capabilitySuffix}`.trim();case"opus":return`Configured planning / Opus slot routed to ${entry.name}.${capabilitySuffix}`.trim();case"sonnet":return`Configured execution / Sonnet slot routed to ${entry.name}.${capabilitySuffix}`.trim();case"haiku":return`Configured fast / Haiku slot routed to ${entry.name}.${capabilitySuffix}`.trim()}}function getProviderPreset(id){return PROVIDER_PRESETS.find(preset=>preset.id===id)??PROVIDER_PRESETS[0]}function getProviderModelRoutingPreset(id){return PROVIDER_MODEL_ROUTING_PRESETS.find(preset=>preset.id===id)??PROVIDER_MODEL_ROUTING_PRESETS[0]}function getProviderProfiles(){return ensureCompatibleExternalProviderProfilesImported(),getStoredProviderProfiles()}function importCompatibleExternalProviderProfiles(options){options?.sourceId||(hasAttemptedCompatibleExternalProviderImport=!0);let sourceId=options?.sourceId;if(!COMPATIBLE_EXTERNAL_PROVIDER_IMPORT_ENABLED)return{sourceId:sourceId??"all",discoveredProfiles:[],importedProfiles:[],skippedProfiles:[],activeProfileId:void 0,syncedActiveProfile:null};let applied=applyCompatibleExternalProviderImport(loadCompatibleExternalProviderProfiles({sourceId}));return{sourceId:sourceId??"all",...applied}}function getProviderProfileById(profileId){return getProviderProfiles().find(profile=>profile.id===profileId.trim())??null}function findProviderProfiles(query){let normalizedQuery=query.trim().toLowerCase();if(!normalizedQuery)return[];let profiles=getProviderProfiles(),exactMatches=profiles.filter(profile=>{let name=profile.name.trim().toLowerCase(),id=profile.id.trim().toLowerCase();return name===normalizedQuery||id===normalizedQuery});return exactMatches.length>0?exactMatches:profiles.filter(profile=>{let name=profile.name.trim().toLowerCase(),id=profile.id.trim().toLowerCase(),baseUrl=profile.baseUrl.trim().toLowerCase();return name.includes(normalizedQuery)||id.includes(normalizedQuery)||baseUrl.includes(normalizedQuery)})}function getActiveProviderProfileId(){return ensureCompatibleExternalProviderProfilesImported(),healOrphanActiveProviderProfileId(),getStoredActiveProviderProfileId(getProviderConfig())||void 0}function getSavedActiveProviderProfile(){let activeProfileId=getActiveProviderProfileId();return activeProfileId?getProviderProfiles().find(profile=>profile.id===activeProfileId)??null:null}function __resetOrphanActiveProviderHealForTests(){hasHealedOrphanActiveProviderProfileId=!1}function getCurrentProviderProfile(){let env5={...getSettingsEnv(),...process.env},credential=env5.ANTHROPIC_AUTH_TOKEN?.trim()??env5.ANTHROPIC_API_KEY?.trim()??"",authType=env5.ANTHROPIC_AUTH_TOKEN?"auth_token":"api_key",baseUrl=normalizeAnthropicBaseUrl(env5.ANTHROPIC_BASE_URL?.trim())||"https://api.anthropic.com";if(!credential||isPlaceholderProviderCredential(credential))return null;let providerId=inferProviderPresetId(baseUrl)??"custom",currentRouting={primaryModel:env5.ANTHROPIC_MODEL?.trim()??"",subagentModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??"",smallFastModel:env5.ANTHROPIC_SMALL_FAST_MODEL?.trim()??"",planModel:env5.ANTHROPIC_DEFAULT_OPUS_MODEL?.trim()??env5.ANTHROPIC_MODEL?.trim()??"",exploreModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",generalModel:env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",teamModel:env5.CLAUDE_CODE_SUBAGENT_MODEL?.trim()??env5.ANTHROPIC_DEFAULT_SONNET_MODEL?.trim()??"",guideModel:env5.ANTHROPIC_DEFAULT_OPUS_MODEL?.trim()??env5.ANTHROPIC_MODEL?.trim()??""};return{id:CURRENT_PROVIDER_PROFILE_ID,name:"Current API config",providerId,modelMode:getProviderModelModeForProfile({providerId,modelRouting:{presetId:inferModelRoutingPresetId(currentRouting),...currentRouting}}),baseUrl,authType,credential,modelRouting:{presetId:inferModelRoutingPresetId(currentRouting),...currentRouting},provenance:{kind:"synthetic_current_env"},createdAt:Date.now(),updatedAt:Date.now()}}function getResolvedCurrentProviderProfile(sessionId){let sid=sessionId==null?void 0:String(sessionId).trim()||void 0;try{let sessionProfileId=getSessionProviderProfileId(sid);if(sessionProfileId){let fromSession=getProviderProfiles().find(p=>p.id===sessionProfileId);if(fromSession)return fromSession}}catch{}return getSavedActiveProviderProfile()??getCurrentProviderProfile()}function hasProviderCredentialConfigured(){return getResolvedCurrentProviderProfile()!==null}function providerProfileToAgentEnv(profile){let out={},baseUrlValidation=validateProviderBaseUrl(profile.baseUrl);if(!baseUrlValidation.ok)throw new Error(baseUrlValidation.error||"Invalid provider base URL \u2014 refusing session route.");out.ANTHROPIC_BASE_URL=baseUrlValidation.normalized,out.CLAVUE_API_DIALECT=normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting),profile.authType==="auth_token"?out.ANTHROPIC_AUTH_TOKEN=profile.credential:out.ANTHROPIC_API_KEY=profile.credential;let routing=profile.modelRouting;routing.primaryModel&&(out.ANTHROPIC_MODEL=routing.primaryModel,out.ANTHROPIC_CUSTOM_MODEL_OPTION=routing.primaryModel),routing.smallFastModel&&(out.ANTHROPIC_SMALL_FAST_MODEL=routing.smallFastModel),routing.subagentModel&&routing.subagentModel!=="inherit"&&(out.CLAUDE_CODE_SUBAGENT_MODEL=routing.subagentModel);let slots=getProviderModelSlotDefaults(routing);return slots.opusModel&&(out.ANTHROPIC_DEFAULT_OPUS_MODEL=slots.opusModel),slots.sonnetModel&&(out.ANTHROPIC_DEFAULT_SONNET_MODEL=slots.sonnetModel),slots.haikuModel&&(out.ANTHROPIC_DEFAULT_HAIKU_MODEL=slots.haikuModel),out}function getCredentialLabel(authType){return authType==="auth_token"?"Access Token":"API Key"}function maskCredential(credential){let trimmed=credential.trim();return trimmed.length<=8?"*".repeat(Math.max(trimmed.length,4)):`${trimmed.slice(0,4)}...${trimmed.slice(-4)}`}function createProviderDraftFromPreset(presetId){let preset=getProviderPreset(presetId),now2=Date.now();return{id:randomUUID2(),name:preset.name,providerId:preset.id,modelMode:getDefaultProviderModelModeForProviderPreset(preset.id),baseUrl:preset.baseUrl,authType:preset.authType,credential:"",modelRouting:createProviderModelRoutingFromPreset("provider_default"),provenance:{kind:"manual"},createdAt:now2,updatedAt:now2}}function allocateUniqueProviderProfileName(preferredName,options){let base=preferredName.trim()||"combo-copy",taken=new Set([...options?.existingNames??getProviderProfiles().map(p=>p.name)].map(name=>name.trim().toLowerCase()));if(!taken.has(base.toLowerCase()))return base;let firstCopy=`${base} copy`;if(!taken.has(firstCopy.toLowerCase()))return firstCopy;for(let i3=2;i3<1e3;i3++){let candidate=`${base} copy ${i3}`;if(!taken.has(candidate.toLowerCase()))return candidate}return`${base} copy ${randomUUID2().slice(0,8)}`}function cloneProviderProfile(sourceProfileId,options={}){let sourceId=sourceProfileId.trim(),source=getProviderProfileById(sourceId)??getProviderProfiles().find(p=>p.id===sourceId);if(!source)throw new Error(`Provider profile not found: ${sourceId}`);let credential=source.credential.trim();if(!credential)throw new Error("Source profile has no credential; cannot clone.");if(isPlaceholderProviderCredential(credential))throw new Error("Source profile credential looks like a placeholder.");let preferredName=options.name?.trim()||allocateUniqueProviderProfileName(`${source.name.trim()||"combo"} copy`),name=allocateUniqueProviderProfileName(preferredName),now2=Date.now(),draft={...source,id:randomUUID2(),name,credential,modelRouting:normalizeProviderModelRouting({...source.modelRouting}),provenance:{kind:"manual"},createdAt:now2,updatedAt:now2};return options.save===!1?draft:saveProviderProfile(draft,{activate:options.activate===!0})}function createProviderModelRoutingFromPreset(presetId){return{...getProviderModelRoutingPreset(presetId).routing}}function createCustomProviderModelRouting(values2){let primaryModel=(values2.primaryModel||"").trim(),subagentModel=(values2.sonnetModel??values2.subagentModel??"").trim(),smallFastModel=(values2.haikuModel??values2.smallFastModel??"").trim(),opusModel=(values2.opusModel??"").trim(),reviewModel=(values2.reviewModel??"").trim(),executionModel=subagentModel||primaryModel;return{presetId:"custom",primaryModel,subagentModel,smallFastModel,planModel:opusModel||primaryModel,exploreModel:executionModel,generalModel:executionModel,teamModel:executionModel,guideModel:opusModel||primaryModel,reviewModel}}function getProviderModelSlotDefaults(routing){let slotValues=getProviderModeSlotValues(routing);return{opusModel:slotValues.opusModel,sonnetModel:slotValues.sonnetModel,haikuModel:slotValues.haikuModel}}function getValidationRoleLabel(role,_language){return role==="primary"?"Primary":role==="plan"?"Opus":role==="subagent"?"Sonnet":"Haiku"}function formatValidationRoles(roles,language){return roles.map(role=>getValidationRoleLabel(role,language)).join(", ")}function getAutoRepairCandidates(profile,roles,failedModel,routing){let primaryModel=String(routing.primaryModel||"").trim();return!primaryModel||roles.includes("primary")||primaryModel===failedModel?[]:filterProviderModeAutoRepairCandidates(profile.modelMode,roles,[primaryModel])}function getRepairTargets(validation){return Array.isArray(validation.details)?validation.details.filter(detail=>detail.status==="error"||detail.kind==="compatibility"&&detail.status==="warn"&&detail.repairable===!0):[]}function applyAutoRepairRouting(routing,roles,model){let nextRouting={...routing},normalizedModel=String(model||"").trim();return roles.includes("primary")&&(nextRouting.primaryModel=normalizedModel),roles.includes("subagent")&&(nextRouting.subagentModel=normalizedModel,nextRouting.exploreModel=normalizedModel,nextRouting.generalModel=normalizedModel,nextRouting.teamModel=normalizedModel),roles.includes("fast")&&(nextRouting.smallFastModel=normalizedModel),roles.includes("plan")&&(nextRouting.planModel=normalizedModel,nextRouting.guideModel=normalizedModel),nextRouting.presetId=inferModelRoutingPresetId({primaryModel:nextRouting.primaryModel,subagentModel:nextRouting.subagentModel,smallFastModel:nextRouting.smallFastModel,planModel:nextRouting.planModel,exploreModel:nextRouting.exploreModel,generalModel:nextRouting.generalModel,teamModel:nextRouting.teamModel,guideModel:nextRouting.guideModel}),nextRouting}function cloneProfileWithRouting(profile,routing){return{...profile,modelRouting:normalizeProviderModelRouting(routing),updatedAt:Date.now()}}function buildValidationHeaders(profile){let headers={"content-type":"application/json","anthropic-version":"2023-06-01"};return profile.authType==="auth_token"?headers.authorization=`Bearer ${profile.credential}`:headers["x-api-key"]=profile.credential,headers}function extractValidationErrorMessage(raw){try{let parsed=JSON.parse(raw);if(typeof parsed?.error?.message=="string")return parsed.error.message;if(typeof parsed?.message=="string")return parsed.message}catch{}return String(raw||"").trim()}function buildResponsesValidationHeaders(profile){let headers={"content-type":"application/json",authorization:`Bearer ${profile.credential}`};return profile.authType==="api_key"&&(headers["x-api-key"]=profile.credential),headers}function shouldValidateViaOpenAIResponses(profile){let dialectMode=normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting);return dialectMode==="anthropic"?!1:dialectMode==="openai_responses"}function shouldProbeNativeToolCalling(profile,model){let normalizedBaseUrl=normalizeAnthropicBaseUrl(profile.baseUrl),normalizedModel=String(model||"").trim().toLowerCase();return normalizedBaseUrl!==normalizeAnthropicBaseUrl("https://api.anthropic.com")||!normalizedModel.includes("claude")}function hasAnthropicToolUseBlock(raw,toolName){try{let parsed=JSON.parse(raw);return Array.isArray(parsed?.content)&&parsed.content.some(block=>!!block&&typeof block=="object"&&block.type==="tool_use"&&block.name===toolName)}catch{return!1}}function hasResponsesFunctionCall(raw,toolName){try{let parsed=JSON.parse(raw);return Array.isArray(parsed?.output)&&parsed.output.some(block=>!!block&&typeof block=="object"&&block.type==="function_call"&&block.name===toolName)}catch{return!1}}function createResponsesValidationInput(text){return[{role:"user",content:[{type:"input_text",text}]}]}function createResponsesValidationTool(toolName){return{type:"function",name:toolName,description:"Compatibility probe for OpenAI Responses native function calling.",parameters:{type:"object",properties:{name:{type:"string"}},required:["name"],additionalProperties:!1},strict:!0}}async function postResponsesValidationRequest(profile,body){let controller=new AbortController,timeout=setTimeout(()=>controller.abort(),15e3);try{let response=await fetch(`${normalizeAnthropicBaseUrl(profile.baseUrl)}/v1/responses`,{method:"POST",headers:buildResponsesValidationHeaders(profile),body:JSON.stringify(body),signal:controller.signal});return{ok:response.ok,status:response.status,raw:await response.text()}}finally{clearTimeout(timeout)}}async function runResponsesValidationAttempts(profile,body,evaluate){let lastResult={ok:!1,status:0,raw:""};for(let attemptIndex=0;attemptIndex<PROVIDER_RESPONSES_STABILITY_ATTEMPTS;attemptIndex+=1)if(lastResult=await postResponsesValidationRequest(profile,body).catch(error40=>({ok:!1,status:0,raw:error40 instanceof Error?error40.message:String(error40)})),!evaluate(lastResult))return lastResult;return lastResult}function buildAccessValidationDetail(status,model,roles,language,message){let roleLabel=formatValidationRoles(roles,language);return{status,kind:"access",repairable:!1,line:language==="zh"?`[${status.toUpperCase()}] ${roleLabel} -> ${model} \xB7 ${message}`:`[${status.toUpperCase()}] ${roleLabel} -> ${model} \xB7 ${message}`,model,roles}}function buildResponsesCompatibilityDetailFromSnapshot(snapshot,model,roles,language,apiDialectMode){let roleLabel=formatValidationRoles(roles,language),routeKeys=routeKeysForProviderValidationRoles(roles),fusionEndpointDialect=getActiveFusionEndpointForModel(model,routeKeys)?.apiDialectMode??null,decision=resolveCodingRoutePolicy({model,baseUrl:snapshot.baseUrl,snapshot,apiDialectMode,fusionEndpointDialect}),supportedModes=[snapshot.responsesToolChoiceAuto?"auto":null,snapshot.responsesToolChoiceRequired?"required":null,snapshot.responsesToolChoiceNamed?"named":null].filter(value=>value!==null),missingModes=[snapshot.responsesToolChoiceAuto?null:"auto",snapshot.responsesToolChoiceRequired?null:"required",snapshot.responsesToolChoiceNamed?null:"named"].filter(value=>value!==null),supportSummary=supportedModes.length>0?` supported=${supportedModes.join(",")}`:"",missingSummary=missingModes.length>0?` missing=${missingModes.join(",")}`:"",reasonSummary=decision.qualityReason[0]??decision.transportReason;if(decision.qualityTier==="native"||decision.qualityTier==="compatible"){let upstreamPath=getUpstreamApiPathForTransport(model,decision.transport),transportLine=decision.transport==="openai_chat_completions"?language==="zh"?`\u901A\u8FC7 OpenAI chat/completions \u539F\u751F\u8DEF\u7531\u8FD0\u884C\uFF08${upstreamPath}\uFF0Cworkflow=${decision.workflowMode}\uFF09`:`running through the OpenAI chat/completions native route (${upstreamPath}, workflow=${decision.workflowMode})`:decision.transport==="openai_responses"?language==="zh"?`\u901A\u8FC7 OpenAI Responses \u7F16\u7801\u8DEF\u7531\u8FD0\u884C\uFF08${upstreamPath}\uFF0Cworkflow=${decision.workflowMode}\uFF09`:`running through the OpenAI Responses coding route (${upstreamPath}, workflow=${decision.workflowMode})`:language==="zh"?`Anthropic \u539F\u751F tool_use \u53EF\u7528\uFF08${upstreamPath}\uFF0Cworkflow=${decision.workflowMode}\uFF09`:`Anthropic native tool_use available (${upstreamPath}, workflow=${decision.workflowMode})`;return{status:"ok",kind:"compatibility",repairable:!1,line:language==="zh"?`[OK] ${roleLabel} -> ${model} \xB7 ${transportLine} \xB7 ${reasonSummary}`:`[OK] ${roleLabel} -> ${model} \xB7 ${transportLine} \xB7 ${reasonSummary}`,model,roles}}return decision.qualityTier==="degraded"?{status:"warn",kind:"compatibility",repairable:!0,line:language==="zh"?`[WARN] ${roleLabel} -> ${model} \xB7 coding route degraded (workflow=${decision.workflowMode}).${supportSummary}${missingSummary} \xB7 ${reasonSummary}`:`[WARN] ${roleLabel} -> ${model} \xB7 coding route degraded (workflow=${decision.workflowMode}).${supportSummary}${missingSummary} \xB7 ${reasonSummary}`,model,roles}:{status:"warn",kind:"compatibility",repairable:!0,line:language==="zh"?`[WARN] ${roleLabel} -> ${model} \xB7 chat-only route (workflow=${decision.workflowMode}) \xB7 ${reasonSummary}`:`[WARN] ${roleLabel} -> ${model} \xB7 chat-only route (workflow=${decision.workflowMode}) \xB7 ${reasonSummary}`,model,roles}}function getEffortLevelsFromSnapshot(snapshot){return snapshot?snapshot.responsesReasoningXHigh?["low","medium","high","max"]:snapshot.responsesReasoningMedium?["low","medium","high"]:[]:[]}function getRouteInspectionTransport(decision){return decision.qualityTier==="native"||decision.qualityTier==="compatible"?decision.transport==="openai_chat_completions"?"chat_completions_full":decision.transport==="openai_responses"?"responses_full":"anthropic":decision.qualityTier==="degraded"?"responses_partial":decision.qualityTier==="chat_only"?"chat_only":"unreachable"}function getRouteTransportLabel(decision,upstreamPath,language){return decision.transport==="openai_chat_completions"?language==="zh"?`OpenAI chat/completions \u539F\u751F\u8DEF\u7531\uFF08${upstreamPath}\uFF09`:`OpenAI chat/completions native route (${upstreamPath})`:decision.transport==="openai_responses"?language==="zh"?`OpenAI Responses \u7F16\u7801\u8DEF\u7531\uFF08${upstreamPath}\uFF09`:`OpenAI Responses coding route (${upstreamPath})`:language==="zh"?`Anthropic \u539F\u751F tool_use\uFF08${upstreamPath}\uFF09`:`Anthropic native tool_use (${upstreamPath})`}function getRecommendedRouteModelStatus(model){return model==="gpt-5.5"||model==="gpt-5.4"?"recommended":"supported"}function buildProviderModelRouteInspection(model,baseUrl,snapshot,language,apiDialectMode,routeKeys=[]){let normalizedModel=String(model||"").trim(),effortLevels=getEffortLevelsFromSnapshot(snapshot),fusionEndpoint=getActiveFusionEndpointForModel(normalizedModel,routeKeys),fusionEndpointDialect=fusionEndpoint?.apiDialectMode??null,decision=resolveCodingRoutePolicy({model:normalizedModel,baseUrl:snapshot?.baseUrl??baseUrl,snapshot,apiDialectMode,fusionEndpointDialect:fusionEndpoint?.apiDialectMode??null}),upstreamPath=fusionEndpoint?.upstreamPathOverride||getUpstreamApiPathForTransport(normalizedModel,decision.transport),transport=getRouteInspectionTransport(decision),error40=snapshot?.responsesAccessError??snapshot?.responsesRequiredError??snapshot?.responsesNamedError??snapshot?.responsesAutoError??snapshot?.messagesError,effortSuffix=effortLevels.length>0?` \xB7 effort ${effortLevels.join("/")}`:"",workflowSuffix=` \xB7 workflow ${decision.workflowMode}`,truthSuffix=` \xB7 trust ${decision.operatorTrust} \xB7 capability ${decision.capabilityStatus} \xB7 tools ${decision.workflowToolPolicy} \xB7 health ${decision.healthTier}`,certificationSuffix=decision.certificationRef?` \xB7 cert ${decision.certificationRef}`:"",linePrefix=decision.qualityTier==="compatible"&&getRecommendedRouteModelStatus(normalizedModel)==="recommended"?"RECOMMENDED":decision.qualityTier==="native"||decision.qualityTier==="compatible"?"SUPPORTED":decision.qualityTier==="degraded"?"CONDITIONAL":"AVOID";if(decision.qualityTier==="native"||decision.qualityTier==="compatible"){let transportLabel=getRouteTransportLabel(decision,upstreamPath,language);return{model:normalizedModel,status:getRecommendedRouteModelStatus(normalizedModel),transport,policyTransport:decision.transport,upstreamPath,effortLevels,qualityTier:decision.qualityTier,workflowMode:decision.workflowMode,operatorTrust:decision.operatorTrust,capabilityStatus:decision.capabilityStatus,workflowToolPolicy:decision.workflowToolPolicy,healthTier:decision.healthTier,...decision.certificationRef?{certificationRef:decision.certificationRef}:{},transportReason:decision.transportReason,line:language==="zh"?`[${linePrefix}] ${normalizedModel} \xB7 ${transportLabel}${effortSuffix}${workflowSuffix}${truthSuffix}${certificationSuffix}`:`[${linePrefix}] ${normalizedModel} \xB7 ${transportLabel}${effortSuffix}${workflowSuffix}${truthSuffix}${certificationSuffix}`}}return{model:normalizedModel,status:decision.qualityTier==="degraded"?"conditional":"avoid",transport,policyTransport:decision.transport,upstreamPath,effortLevels,qualityTier:decision.qualityTier,workflowMode:decision.workflowMode,operatorTrust:decision.operatorTrust,capabilityStatus:decision.capabilityStatus,workflowToolPolicy:decision.workflowToolPolicy,healthTier:decision.healthTier,...decision.certificationRef?{certificationRef:decision.certificationRef}:{},transportReason:decision.transportReason,error:error40,line:language==="zh"?`[${linePrefix}] ${normalizedModel} \xB7 ${upstreamPath} \xB7 ${decision.qualityReason[0]??decision.transportReason}${effortSuffix}${workflowSuffix}${truthSuffix}${certificationSuffix}${error40?`: ${error40}`:""}`:`[${linePrefix}] ${normalizedModel} \xB7 ${upstreamPath} \xB7 ${decision.qualityReason[0]??decision.transportReason}${effortSuffix}${workflowSuffix}${truthSuffix}${certificationSuffix}${error40?`: ${error40}`:""}`}}async function probeModelAccess(profile,model,roles,language){let cachedSnapshot=getProviderCapabilitySnapshot(profile,model);if(cachedSnapshot){if(cachedSnapshot.anthropicMessagesReachable||cachedSnapshot.responsesArrayInputReachable)return buildAccessValidationDetail("ok",model,roles,language,language==="zh"?"\u6A21\u578B\u53EF\u8BBF\u95EE":"model reachable");let cachedError=cachedSnapshot.responsesAccessError??cachedSnapshot.messagesError;if(cachedError&&cachedSnapshot.compatibilityChecked)return buildAccessValidationDetail("error",model,roles,language,cachedError)}let controller=new AbortController,timeout=setTimeout(()=>controller.abort(),15e3),roleLabel=formatValidationRoles(roles,language),useResponsesValidation=shouldValidateViaOpenAIResponses(profile),responsesAccessToolName="access_probe",url3=useResponsesValidation?`${normalizeAnthropicBaseUrl(profile.baseUrl)}/v1/responses`:`${normalizeAnthropicBaseUrl(profile.baseUrl)}/v1/messages`;try{let accessResult=useResponsesValidation?await runResponsesValidationAttempts(profile,{model,input:createResponsesValidationInput(`Call ${responsesAccessToolName} exactly once with name "alpha". Do not answer with plain text.`),tool_choice:"required",max_output_tokens:64,store:!1,tools:[createResponsesValidationTool(responsesAccessToolName)]},result2=>result2.ok):{ok:!1,status:0,raw:""},response=useResponsesValidation?null:await fetch(url3,{method:"POST",headers:buildValidationHeaders(profile),body:JSON.stringify({model,max_tokens:1,messages:[{role:"user",content:[{type:"text",text:"ping"}]}]}),signal:controller.signal}),raw=useResponsesValidation?accessResult.raw:await response.text();if(useResponsesValidation?accessResult.ok:response.ok){upsertProviderCapabilitySnapshot(profile,model,{...useResponsesValidation?{responsesArrayInputReachable:!0,responsesAccessError:void 0}:{anthropicMessagesReachable:!0,messagesError:void 0}});try{await refreshProviderModelContextWindow(model,{force:!0,profile,signal:controller.signal})}catch{}return{status:"ok",kind:"access",repairable:!1,line:language==="zh"?`[OK] ${roleLabel} -> ${model} \xB7 \u6A21\u578B\u53EF\u8BBF\u95EE`:`[OK] ${roleLabel} -> ${model} \xB7 model reachable`,model,roles}}let failureStatus=useResponsesValidation?accessResult.status:response.status,message=extractValidationErrorMessage(raw)||`HTTP ${failureStatus}`,lowered=`${failureStatus} ${message}`.toLowerCase(),isHardFailure=failureStatus===400||failureStatus===401||failureStatus===403||failureStatus===404||lowered.includes("model")||lowered.includes("not found")||lowered.includes("does not exist")||lowered.includes("unauthorized");return upsertProviderCapabilitySnapshot(profile,model,{...useResponsesValidation?{responsesArrayInputReachable:!1,responsesAccessError:message}:{anthropicMessagesReachable:!1,messagesError:message}}),{status:isHardFailure?"error":"warn",kind:"access",repairable:!1,line:`[${isHardFailure?"ERROR":"WARN"}] ${roleLabel} -> ${model} \xB7 ${message}`,model,roles}}catch(error40){let detail=error40 instanceof Error?error40.message:String(error40);return upsertProviderCapabilitySnapshot(profile,model,{...useResponsesValidation?{responsesArrayInputReachable:!1,responsesAccessError:detail}:{anthropicMessagesReachable:!1,messagesError:detail}}),{status:"warn",kind:"access",repairable:!1,line:`[WARN] ${roleLabel} -> ${model} \xB7 ${detail}`,model,roles}}finally{clearTimeout(timeout)}}async function probeNativeToolCallingCompatibility(profile,model,roles,language){if(!shouldProbeNativeToolCalling(profile,model))return null;let cachedSnapshot=getProviderCapabilitySnapshot(profile,model);if(cachedSnapshot?.compatibilityChecked)return buildResponsesCompatibilityDetailFromSnapshot(cachedSnapshot,model,roles,language,normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting));let roleLabel=formatValidationRoles(roles,language),useResponsesValidation=shouldValidateViaOpenAIResponses(profile),anthropicProbeToolName="ToolCompatibilityProbe",url3=`${normalizeAnthropicBaseUrl(profile.baseUrl)}/v1/messages`;if(!useResponsesValidation){let anthropicController=new AbortController,anthropicTimeout=setTimeout(()=>anthropicController.abort(),15e3);try{let response=await fetch(url3,{method:"POST",headers:buildValidationHeaders(profile),body:JSON.stringify({model,max_tokens:64,tool_choice:{type:"tool",name:anthropicProbeToolName},tools:[{name:anthropicProbeToolName,description:"Compatibility probe for Anthropic-style native tool calling.",input_schema:{type:"object",properties:{name:{type:"string"}},required:["name"],additionalProperties:!1}}],messages:[{role:"user",content:[{type:"text",text:`Call ${anthropicProbeToolName} exactly once with name "alpha". Do not answer with plain text.`}]}]}),signal:anthropicController.signal}),raw=await response.text();if(!response.ok){let message=extractValidationErrorMessage(raw)||`HTTP ${response.status}`;return{status:"warn",kind:"compatibility",repairable:!1,line:language==="zh"?`[WARN] ${roleLabel} -> ${model} \xB7 \u65E0\u6CD5\u786E\u8BA4 Anthropic \u539F\u751F\u5DE5\u5177\u8C03\u7528\u517C\u5BB9\u6027\uFF1A${message}`:`[WARN] ${roleLabel} -> ${model} \xB7 could not verify Anthropic native tool calling: ${message}`,model,roles}}if(hasAnthropicToolUseBlock(raw,anthropicProbeToolName))return upsertProviderCapabilitySnapshot(profile,model,{compatibilityChecked:!0,anthropicMessagesReachable:!0,anthropicToolUse:!0,messagesError:void 0}),{status:"ok",kind:"compatibility",repairable:!1,line:language==="zh"?`[OK] ${roleLabel} -> ${model} \xB7 Anthropic \u539F\u751F tool_use \u53EF\u7528`:`[OK] ${roleLabel} -> ${model} \xB7 Anthropic native tool_use available`,model,roles};let isClaudeModel=String(model||"").toLowerCase().includes("claude"),effectiveToolUse=!!isClaudeModel;if(upsertProviderCapabilitySnapshot(profile,model,{compatibilityChecked:!0,anthropicMessagesReachable:!0,anthropicToolUse:effectiveToolUse,messagesError:effectiveToolUse?void 0:extractValidationErrorMessage(raw)||void 0}),effectiveToolUse&&isClaudeModel)return{status:"ok",kind:"compatibility",repairable:!1,line:language==="zh"?`[OK] ${roleLabel} -> ${model} \xB7 Anthropic / Claude \u517C\u5BB9\u7AEF\u70B9\uFF08\u6309 claude \u6A21\u578B\u540D\u4E50\u89C2\u542F\u7528 tool_use\uFF09`:`[OK] ${roleLabel} -> ${model} \xB7 Anthropic/Claude-compatible (optimistic tool_use based on claude model name)`,model,roles}}catch(error40){let detail=error40 instanceof Error?error40.message:String(error40);return upsertProviderCapabilitySnapshot(profile,model,{compatibilityChecked:!0,anthropicToolUse:!1,messagesError:detail}),{status:"warn",kind:"compatibility",repairable:!1,line:language==="zh"?`[WARN] ${roleLabel} -> ${model} \xB7 Anthropic \u539F\u751F\u5DE5\u5177\u8C03\u7528\u63A2\u6D4B\u5931\u8D25\uFF1A${detail}`:`[WARN] ${roleLabel} -> ${model} \xB7 Anthropic native tool-calling probe failed: ${detail}`,model,roles}}finally{clearTimeout(anthropicTimeout)}}let responsesProbeToolName="tool_compatibility_probe",probePrompt=`Call ${responsesProbeToolName} exactly once with name "alpha". Do not answer with plain text.`,toolDefinition=createResponsesValidationTool(responsesProbeToolName),nextSnapshot=getProviderCapabilitySnapshot(profile,model,{allowStale:!0})??createEmptyProviderCapabilitySnapshot(profile,model),accessResponse=await runResponsesValidationAttempts(profile,{model,input:createResponsesValidationInput(probePrompt),tool_choice:"required",max_output_tokens:64,store:!1,tools:[toolDefinition]},result2=>result2.ok&&hasResponsesFunctionCall(result2.raw,responsesProbeToolName));if(nextSnapshot.responsesArrayInputReachable=accessResponse.ok,nextSnapshot.responsesAccessError=accessResponse.ok?void 0:extractValidationErrorMessage(accessResponse.raw)||accessResponse.raw,accessResponse.ok){let toolProbeEntries=[["responsesToolChoiceAuto",void 0,"responsesAutoError"],["responsesToolChoiceRequired","required","responsesRequiredError"],["responsesToolChoiceNamed",{type:"function",name:responsesProbeToolName},"responsesNamedError"]];for(let[field,toolChoice,errorField]of toolProbeEntries){let response=await runResponsesValidationAttempts(profile,{model,input:createResponsesValidationInput(probePrompt),...toolChoice!==void 0?{tool_choice:toolChoice}:{},max_output_tokens:64,store:!1,tools:[toolDefinition]},result2=>result2.ok&&hasResponsesFunctionCall(result2.raw,responsesProbeToolName)),supported=response.ok&&hasResponsesFunctionCall(response.raw,responsesProbeToolName);nextSnapshot[field]=supported,nextSnapshot[errorField]=supported?void 0:extractValidationErrorMessage(response.raw)||response.raw}let reasoningProbeEntries=[["responsesReasoningMedium","medium","responsesReasoningMediumError"],["responsesReasoningXHigh","xhigh","responsesReasoningXHighError"]];for(let[field,effort,errorField]of reasoningProbeEntries){let response=await runResponsesValidationAttempts(profile,{model,input:createResponsesValidationInput(probePrompt),tool_choice:"required",max_output_tokens:64,store:!1,reasoning:{effort},tools:[toolDefinition]},result2=>result2.ok&&hasResponsesFunctionCall(result2.raw,responsesProbeToolName)),supported=response.ok&&hasResponsesFunctionCall(response.raw,responsesProbeToolName);nextSnapshot[field]=supported,nextSnapshot[errorField]=supported?void 0:extractValidationErrorMessage(response.raw)||response.raw}}let savedSnapshot=upsertProviderCapabilitySnapshot(profile,model,{...nextSnapshot,compatibilityChecked:!0});return buildResponsesCompatibilityDetailFromSnapshot(savedSnapshot,model,roles,language,normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting))}async function probeModelAvailability(profile,model,roles,language){let access=await probeModelAccess(profile,model,roles,language);if(access.status!=="ok")return{access,compatibility:null,status:access.status};let compatibility=await probeNativeToolCallingCompatibility(profile,model,roles,language);return compatibility&&compatibility.status!=="ok"?{access,compatibility,status:compatibility.status}:{access,compatibility,status:"ok"}}async function validateProviderProfile(profile,{language="en",probe=!0}={}){if(!profile)return{status:"error",evidenceSource:probe?"live_probe":"configured_only",lines:[language==="zh"?"[ERROR] \u5F53\u524D\u6CA1\u6709\u53EF\u9A8C\u8BC1\u7684\u4F9B\u5E94\u5546\u914D\u7F6E\u3002":"[ERROR] No active provider configuration is available to validate."]};let rolesByModel=new Map,routing=normalizeProviderModelRouting(profile.modelRouting);for(let[role,model]of[["primary",routing.primaryModel],["subagent",routing.subagentModel],["fast",routing.smallFastModel],["plan",routing.planModel]]){let normalizedModel=String(model||"").trim();if(!normalizedModel)continue;let existingRoles=rolesByModel.get(normalizedModel)??[];existingRoles.push(role),rolesByModel.set(normalizedModel,existingRoles)}if(rolesByModel.size===0)return{status:"warn",evidenceSource:"configured_only",lines:[...getProviderLocalValidationWarnings(profile,{language}),language==="zh"?"[WARN] \u5F53\u524D\u914D\u7F6E\u6CA1\u6709\u663E\u5F0F\u6A21\u578B\u8DEF\u7531\uFF0C\u5C06\u7EE7\u7EED\u4F7F\u7528\u4F9B\u5E94\u5546\u9ED8\u8BA4\u6A21\u578B\u3002":"[WARN] No explicit model routing is configured. The provider default will be used."]};let localWarnings=getProviderLocalValidationWarnings(profile,{language}),results=[],cachedSnapshotCount=0,configuredOnlyCount=0;for(let[model,roles]of rolesByModel.entries()){let snapshot=probe?null:getProviderCapabilitySnapshot(profile,model,{allowStale:!0});if(snapshot){cachedSnapshotCount+=1;let reachable=snapshot.anthropicMessagesReachable||snapshot.responsesArrayInputReachable,freshness=getProviderCapabilitySnapshotFreshness(snapshot),cachedEvidence=freshness==="stale"?language==="zh"?"\u8FC7\u671F\u7F13\u5B58\u80FD\u529B\u5FEB\u7167\uFF1B\u8BF7\u8FD0\u884C provider validate \u5B9E\u65F6\u63A2\u6D4B":"stale cached capability snapshot; run provider validate for a live probe":language==="zh"?"\u7F13\u5B58\u80FD\u529B\u5FEB\u7167\uFF1B\u672A\u8FD0\u884C\u5B9E\u65F6\u63A2\u6D4B":"cached capability snapshot; live probe not run",cachedError=snapshot.responsesAccessError??snapshot.messagesError;results.push(buildAccessValidationDetail(reachable?freshness==="stale"?"warn":"ok":"error",model,roles,language,reachable?language==="zh"?`\u6A21\u578B\u53EF\u8BBF\u95EE\uFF08${cachedEvidence}\uFF09`:`model reachable (${cachedEvidence})`:`${cachedError??(language==="zh"?"\u6A21\u578B\u4E0D\u53EF\u8BBF\u95EE":"model unreachable")} (${cachedEvidence})`)),snapshot.compatibilityChecked&&results.push(buildResponsesCompatibilityDetailFromSnapshot(snapshot,model,roles,language,normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting)));continue}if(!probe){configuredOnlyCount+=1,results.push(buildAccessValidationDetail("warn",model,roles,language,language==="zh"?"\u5C1A\u672A\u9A8C\u8BC1\uFF1B\u8FD0\u884C provider validate \u8FDB\u884C\u5B9E\u65F6\u63A2\u6D4B":"not validated yet; run provider validate for a live probe"));continue}let probeResult=await probeModelAvailability(profile,model,roles,language);results.push(probeResult.access),probeResult.compatibility&&results.push(probeResult.compatibility)}return results.some(result2=>result2.status==="error")?{status:"error",evidenceSource:probe?"live_probe":cachedSnapshotCount>0&&configuredOnlyCount>0?"mixed_cached_and_configured":cachedSnapshotCount>0?"cached_snapshot":"configured_only",lines:[...localWarnings,...results.map(result2=>result2.line)],details:results}:localWarnings.length>0||results.some(result2=>result2.status==="warn")?{status:"warn",evidenceSource:probe?"live_probe":cachedSnapshotCount>0&&configuredOnlyCount>0?"mixed_cached_and_configured":cachedSnapshotCount>0?"cached_snapshot":"configured_only",lines:[...localWarnings,...results.map(result2=>result2.line)],details:results}:{status:"ok",evidenceSource:probe?"live_probe":"cached_snapshot",lines:results.map(result2=>result2.line),details:results}}async function inspectProviderModelRoute(profile,model,{language="en",probe=!0}={}){let normalizedModel=String(model||"").trim();if(!profile||!normalizedModel)return{model:normalizedModel,status:"avoid",transport:"unreachable",policyTransport:"anthropic_messages",upstreamPath:"/v1/messages",effortLevels:[],qualityTier:"blocked",workflowMode:"chat_only",operatorTrust:"untrusted",capabilityStatus:"failed",workflowToolPolicy:"blocked",healthTier:"broken",transportReason:"No provider configuration is available to inspect.",line:language==="zh"?`[AVOID] ${normalizedModel||"unknown"} \xB7 \u5F53\u524D\u6CA1\u6709\u53EF\u68C0\u67E5\u7684\u4F9B\u5E94\u5546\u914D\u7F6E`:`[AVOID] ${normalizedModel||"unknown"} \xB7 no provider configuration is available to inspect`};let snapshot=getProviderCapabilitySnapshot(profile,normalizedModel);return!snapshot&&probe&&(await probeModelAvailability(profile,normalizedModel,["primary"],language),snapshot=getProviderCapabilitySnapshot(profile,normalizedModel,{allowStale:!0})),buildProviderModelRouteInspection(normalizedModel,profile.baseUrl,snapshot,language,normalizeProviderApiDialectMode(profile.apiDialectMode,profile.modelMode,profile.modelRouting))}async function inspectProviderModelRoutes(profile,models=DEFAULT_PROVIDER_ROUTE_DIAGNOSTIC_MODELS,{language="en",probe=!0}={}){let uniqueModels=[...new Set(models.map(model=>String(model||"").trim()))].filter(Boolean),results=[];for(let model of uniqueModels)results.push(await inspectProviderModelRoute(profile,model,{language,probe}));return results}async function attemptAutoRepairProviderProfile(profile,{language="en",persist=!0}={}){let originalValidation=await validateProviderProfile(profile,{language});if(!profile||originalValidation.status!=="error"&&originalValidation.status!=="warn")return{repaired:!1,profile,validation:originalValidation,originalValidation,repairLines:[]};let nextRouting={...normalizeProviderModelRouting(profile.modelRouting)},changed=!1,repairLines=[],probeCache=new Map,failedDetails=getRepairTargets(originalValidation);for(let detail of failedDetails){let roles=Array.isArray(detail.roles)?detail.roles:[];if(roles.length===0)continue;let candidates=getAutoRepairCandidates(profile,roles,detail.model,nextRouting),replacement=null;for(let candidate of candidates){let probe=probeCache.get(candidate);if(probe||(probe=await probeModelAvailability(profile,candidate,roles,language),probeCache.set(candidate,probe)),probe.status==="ok"){replacement=candidate;break}}replacement&&(nextRouting=applyAutoRepairRouting(nextRouting,roles,replacement),changed=!0,repairLines.push(language==="zh"?`[REPAIRED] ${formatValidationRoles(roles,language)} -> ${replacement} \xB7 \u66FF\u6362 ${detail.model}`:`[REPAIRED] ${formatValidationRoles(roles,language)} -> ${replacement} \xB7 replaced ${detail.model}`))}if(!changed)return{repaired:!1,profile,validation:originalValidation,originalValidation,repairLines};let repairedProfile=cloneProfileWithRouting(profile,nextRouting),repairedValidation=await validateProviderProfile(repairedProfile,{language});return repairedValidation.status==="error"||getRepairTargets(repairedValidation).length>0?{repaired:!1,profile,validation:originalValidation,originalValidation,repairLines}:(persist&&profile.id&&profile.id!==CURRENT_PROVIDER_PROFILE_ID?saveProviderProfile(repairedProfile,{activate:!0}):persist&&applyProviderProfileToProcess(repairedProfile),{repaired:!0,profile:repairedProfile,validation:repairedValidation,originalValidation,repairLines})}function applyProviderProfileToProcess(profile){applyProviderProfileToProcessEnv(profile,{clearCaches:__name(()=>{clear3PModelCapabilityOverrideCache(),clearBetasCaches(),resetModelStringsCache()},"clearCaches"),validateBaseUrl:validateProviderBaseUrl,normalizeDialect:__name(value=>normalizeProviderApiDialectMode(value.apiDialectMode,value.modelMode,value.modelRouting),"normalizeDialect"),getSlotDefaults:getProviderModelSlotDefaults,getModelDisplayName:getProviderModelDisplayName,getModelDescription:getProviderModelDescription,serializeCapabilities:serializeCapabilitiesForModel})}function clearActiveProviderConfiguration(){writeUserSettingsUpdate(null),applyProviderProfileToProcess(null),updateProviderConfig(getProviderProfiles(),void 0),updateCompatibleExternalProviderCurrentProfile(void 0)}function activateCurrentProviderProfile(){let currentProfile=getCurrentProviderProfile();return currentProfile?(updateProviderConfig(getProviderProfiles(),void 0),applyProviderProfileToProcess(currentProfile),updateCompatibleExternalProviderCurrentProfile(void 0),currentProfile):null}function assertProviderProfileActivatable(profile){assertValidProviderBaseUrl(profile.baseUrl);let credential=String(profile.credential??"").trim();if(!credential||isPlaceholderProviderCredential(credential))throw new Error(`Cannot activate provider profile "${profile.name||profile.id}" without a stored API key/token. Set the key in /provider, or choose another line.`)}function activateProviderProfile(profileId){let profiles=getProviderProfiles(),profile=profiles.find(candidate=>candidate.id===profileId.trim());if(!profile)return null;if(profile.id==="clavue-cloud")try{let{buildOfficialAutoModelRouting:buildOfficialAutoModelRouting2,isOfficialAutoRouting:isOfficialAutoRouting2}=(init_officialAutoCombo(),__toCommonJS(officialAutoCombo_exports));isOfficialAutoRouting2(profile.modelRouting)||(profile={...profile,modelRouting:buildOfficialAutoModelRouting2(),updatedAt:Date.now()})}catch{}assertProviderProfileActivatable(profile);let normalizedBaseUrl=assertValidProviderBaseUrl(profile.baseUrl),safeProfile=profile.baseUrl===normalizedBaseUrl?profile:{...profile,baseUrl:normalizedBaseUrl},nextProfiles=profiles.map(p=>p.id===safeProfile.id?safeProfile:p);return updateProviderConfig(nextProfiles,safeProfile.id),writeUserSettingsUpdate(safeProfile),applyProviderProfileToProcess(safeProfile),updateCompatibleExternalProviderCurrentProfile(safeProfile.id),clearSessionOverlaysForUnboundProfiles(),safeProfile}function saveProviderProfile(profile,options){let credential=profile.credential.trim();if(!credential)throw new Error("Provider credential is required.");if(isPlaceholderProviderCredential(credential))throw new Error("Provider credential looks like a placeholder.");let normalizedBaseUrl=assertValidProviderBaseUrl(profile.baseUrl),normalizedProfile={...profile,name:profile.name.trim(),baseUrl:normalizedBaseUrl,credential,modelMode:getProviderModelModeForProfile({providerId:normalizeProviderId(profile.providerId,normalizedBaseUrl),modelMode:profile.modelMode,modelRouting:profile.modelRouting}),modelRouting:normalizeProviderModelRouting(profile.modelRouting),authType:normalizeAuthType(profile.authType),providerId:normalizeProviderId(profile.providerId,normalizedBaseUrl),apiDialectMode:normalizeProviderApiDialectMode(profile.apiDialectMode,getProviderModelModeForProfile({providerId:normalizeProviderId(profile.providerId,normalizedBaseUrl),modelMode:profile.modelMode,modelRouting:profile.modelRouting}),profile.modelRouting),provenance:profile.provenance?.kind==="synthetic_current_env"?{kind:"current_env_adopted",adoptedAt:Date.now()}:normalizeProviderProfileProvenance(profile.provenance),updatedAt:Date.now()},profiles=getProviderProfiles(),index=profiles.findIndex(existingProfile=>existingProfile.id===normalizedProfile.id),nextProfiles=[...profiles];index>=0?nextProfiles[index]={...normalizedProfile,createdAt:nextProfiles[index]?.createdAt??normalizedProfile.createdAt}:nextProfiles.push(normalizedProfile);let currentActiveProviderId=getActiveProviderProfileId(),shouldActivate=options?.activate===!0||currentActiveProviderId===normalizedProfile.id;return shouldActivate&&assertProviderProfileActivatable(normalizedProfile),updateProviderConfig(nextProfiles,shouldActivate?normalizedProfile.id:currentActiveProviderId),shouldActivate&&(writeUserSettingsUpdate(normalizedProfile),applyProviderProfileToProcess(normalizedProfile),updateCompatibleExternalProviderCurrentProfile(normalizedProfile.id)),normalizedProfile}function deleteProviderProfile(profileId){let targetId=profileId.trim(),profiles=getProviderProfiles().filter(profile=>profile.id!==targetId),currentActiveProviderId=getActiveProviderProfileId(),nextActiveProviderId=currentActiveProviderId===targetId?void 0:currentActiveProviderId;updateProviderConfig(profiles,nextActiveProviderId,{removedProfileIds:targetId?[targetId]:[],allowEmptyWipe:profiles.length===0}),currentActiveProviderId===profileId&&(writeUserSettingsUpdate(null),applyProviderProfileToProcess(null),updateCompatibleExternalProviderCurrentProfile(nextActiveProviderId))}function migrateNormalizedProviderBaseUrls(){let globalConfigChanged=!1,settingsChanged=!1,globalConfig2=getGlobalConfig()??{},secureStorage=getSecureStorage(),existingStorageData=secureStorage.read()??{},currentProviderSecrets=getStoredProviderSecretRecords(),nextProviderSecrets={...currentProviderSecrets},providerSecretsChanged=!1,nextProfiles=(Array.isArray(globalConfig2.clavueProviderProfiles)?globalConfig2.clavueProviderProfiles:[]).map(profile=>{if(!profile||typeof profile!="object")return profile;let nextProfile={...profile},nextBaseUrl=normalizeAnthropicBaseUrl(profile.baseUrl);nextBaseUrl&&nextBaseUrl!==profile.baseUrl&&(globalConfigChanged=!0,nextProfile.baseUrl=nextBaseUrl);let profileId=typeof profile.id=="string"?profile.id.trim():"",legacyCredential=typeof profile.credential=="string"?profile.credential.trim():"";if(profileId&&legacyCredential){let nextSecret={credential:legacyCredential,authType:normalizeAuthType(profile.authType)},currentSecret=currentProviderSecrets[profileId];(!currentSecret||currentSecret.credential!==nextSecret.credential||currentSecret.authType!==nextSecret.authType)&&(nextProviderSecrets[profileId]=nextSecret,providerSecretsChanged=!0),delete nextProfile.credential,globalConfigChanged=!0}return nextProfile});if(providerSecretsChanged&&!secureStorage.update({...existingStorageData,providerProfiles:Object.keys(nextProviderSecrets).length>0?nextProviderSecrets:void 0}).success)return;globalConfigChanged&&saveGlobalConfig(current=>({...current,clavueProviderProfiles:nextProfiles}));let settingsEnv=getSettingsEnv(),normalizedEnvBaseUrl=normalizeAnthropicBaseUrl(settingsEnv.ANTHROPIC_BASE_URL),settingsEnvUpdate={};settingsEnv.ANTHROPIC_BASE_URL&&normalizedEnvBaseUrl&&normalizedEnvBaseUrl!==settingsEnv.ANTHROPIC_BASE_URL&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_BASE_URL=normalizedEnvBaseUrl),settingsEnv.ANTHROPIC_API_KEY&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_API_KEY=void 0),settingsEnv.ANTHROPIC_AUTH_TOKEN&&(settingsChanged=!0,settingsEnvUpdate.ANTHROPIC_AUTH_TOKEN=void 0),settingsChanged&&updateSettingsForSource("userSettings",{env:settingsEnvUpdate});let liveBaseUrl=normalizeAnthropicBaseUrl(process.env.ANTHROPIC_BASE_URL);process.env.ANTHROPIC_BASE_URL&&liveBaseUrl&&liveBaseUrl!==process.env.ANTHROPIC_BASE_URL&&(process.env.ANTHROPIC_BASE_URL=liveBaseUrl)}function getStoredFusionEndpointSecrets(){let stored=getSecureStorage().read()?.fusionEndpointSecrets;return!stored||typeof stored!="object"?{}:Object.fromEntries(Object.entries(stored).map(([endpointId,value])=>{let normalizedId=endpointId.trim(),normalizedValue=normalizeProviderSecretRecord(value);return normalizedId&&normalizedValue?[normalizedId,normalizedValue]:null}).filter(entry=>entry!==null))}function persistFusionEndpointSecrets(endpoints){let secureStorage=getSecureStorage(),existingData=secureStorage.read()??{},currentSecrets=getStoredFusionEndpointSecrets(),nextSecrets=Object.fromEntries(endpoints.map(endpoint=>{let id=endpoint.id.trim(),credential=endpoint.credential.trim();return!id||!credential||isPlaceholderProviderCredential(credential)?null:[id,{credential,authType:normalizeAuthType(endpoint.authType)}]}).filter(entry=>entry!==null));if(areProviderSecretMapsEqual(currentSecrets,nextSecrets))return;if(!secureStorage.update({...existingData,fusionEndpointSecrets:Object.keys(nextSecrets).length>0?nextSecrets:void 0}).success)throw new Error("Failed to persist fusion endpoint credentials to secure storage")}function scrubStoredFusionConfig(config2){return{...config2,endpoints:config2.endpoints.map(endpoint=>{let{credential:_credential,...rest2}=endpoint;return rest2})}}function normalizeFusionEndpoint(value,secrets){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"",baseUrl=normalizeAnthropicBaseUrl(typeof raw.baseUrl=="string"?raw.baseUrl:"");if(!id||!baseUrl)return null;let apiDialectMode=typeof raw.apiDialectMode=="string"&&(raw.apiDialectMode==="anthropic"||raw.apiDialectMode==="openai_responses")?raw.apiDialectMode:null,upstreamPathOverride=typeof raw.upstreamPathOverride=="string"&&["/v1/messages","/v1/responses","/v1/chat/completions",""].includes(raw.upstreamPathOverride)?raw.upstreamPathOverride:"",modelPrefixes=Array.isArray(raw.modelPrefixes)?raw.modelPrefixes.map(prefix=>typeof prefix=="string"?prefix.trim():"").filter(Boolean):[],routeKeys=Array.isArray(raw.routeKeys)?raw.routeKeys.map(key=>typeof key=="string"?key.trim().toLowerCase():"").filter(Boolean):[],secret=secrets[id],credential=secret?.credential??"";return{id,name:typeof raw.name=="string"?raw.name.trim():id,baseUrl,authType:normalizeAuthType(secret?.authType??(typeof raw.authType=="string"?raw.authType:void 0)),credential,modelPrefixes,...routeKeys.length>0&&{routeKeys},apiDialectMode,upstreamPathOverride}}function normalizeFusionConfig(value,secrets){if(!value||typeof value!="object")return null;let raw=value,id=typeof raw.id=="string"?raw.id.trim():"";if(!id)return null;let endpoints=Array.isArray(raw.endpoints)?raw.endpoints.map(endpoint=>normalizeFusionEndpoint(endpoint,secrets)).filter(entry=>entry!==null):[];return{id,name:typeof raw.name=="string"?raw.name.trim():id,endpoints,createdAt:typeof raw.createdAt=="number"&&Number.isFinite(raw.createdAt)?raw.createdAt:Date.now(),updatedAt:typeof raw.updatedAt=="number"&&Number.isFinite(raw.updatedAt)?raw.updatedAt:Date.now()}}function getStoredFusionConfigs(){let config2=getProviderConfig(),secrets=getStoredFusionEndpointSecrets();return(Array.isArray(config2.clavueFusionConfigs)?config2.clavueFusionConfigs:[]).map(raw=>normalizeFusionConfig(raw,secrets)).filter(entry=>entry!==null)}function getStoredActiveFusionConfigId(){let config2=getProviderConfig();return typeof config2.clavueActiveFusionConfigId=="string"?config2.clavueActiveFusionConfigId.trim():""}function updateFusionConfigState(configs,activeConfigId){persistFusionEndpointSecrets(configs.flatMap(config2=>config2.endpoints)),saveGlobalConfig(current=>({...current,clavueFusionConfigs:configs.length>0?configs.map(scrubStoredFusionConfig):void 0,clavueActiveFusionConfigId:activeConfigId||void 0}))}function getFusionConfigs(){return getStoredFusionConfigs()}function getFusionConfigById(configId){return getFusionConfigs().find(config2=>config2.id===configId.trim())??null}function saveFusionConfig(config2,options){let normalizedEndpoints=config2.endpoints.map(endpoint=>{let credential=endpoint.credential.trim();if(!credential)throw new Error(`Fusion endpoint "${endpoint.name||endpoint.id}" requires a credential.`);if(isPlaceholderProviderCredential(credential))throw new Error(`Fusion endpoint "${endpoint.name||endpoint.id}" credential looks like a placeholder.`);return{...endpoint,name:endpoint.name.trim(),baseUrl:normalizeAnthropicBaseUrl(endpoint.baseUrl),credential,modelPrefixes:endpoint.modelPrefixes.map(prefix=>prefix.trim()).filter(Boolean),routeKeys:endpoint.routeKeys?.map(key=>key.trim().toLowerCase()).filter(Boolean)??[],authType:normalizeAuthType(endpoint.authType),apiDialectMode:endpoint.apiDialectMode==="anthropic"||endpoint.apiDialectMode==="openai_responses"?endpoint.apiDialectMode:null,upstreamPathOverride:["/v1/messages","/v1/responses","/v1/chat/completions",""].includes(endpoint.upstreamPathOverride)?endpoint.upstreamPathOverride:""}}),normalizedConfig={id:config2.id.trim(),name:config2.name.trim(),endpoints:normalizedEndpoints,createdAt:config2.createdAt||Date.now(),updatedAt:Date.now()},configs=getFusionConfigs(),index=configs.findIndex(existing=>existing.id===normalizedConfig.id),nextConfigs=[...configs];index>=0?nextConfigs[index]={...normalizedConfig,createdAt:nextConfigs[index]?.createdAt??normalizedConfig.createdAt}:nextConfigs.push(normalizedConfig);let currentActiveId=getStoredActiveFusionConfigId(),shouldActivate=options?.activate===!0||currentActiveId===normalizedConfig.id;return updateFusionConfigState(nextConfigs,shouldActivate?normalizedConfig.id:currentActiveId),normalizedConfig}function deleteFusionConfig(configId){let configs=getFusionConfigs().filter(config2=>config2.id!==configId),currentActiveId=getStoredActiveFusionConfigId();updateFusionConfigState(configs,currentActiveId===configId?void 0:currentActiveId)}function getActiveFusionConfigId(){return getStoredActiveFusionConfigId()||void 0}function getActiveFusionConfig(){let activeId=getActiveFusionConfigId();return activeId?getFusionConfigById(activeId):null}function activateFusionConfig(configId){let config2=getFusionConfigById(configId);return config2?(updateFusionConfigState(getFusionConfigs(),config2.id),config2):null}function resolveFusionEndpointForModel(config2,model,routeKeys=[]){let normalizedModel=model.trim().toLowerCase(),normalizedRouteKeys=routeKeys.map(key=>key.trim().toLowerCase()).filter(Boolean);if(!normalizedModel&&normalizedRouteKeys.length===0)return null;if(normalizedRouteKeys.length>0)for(let routeKey of normalizedRouteKeys){let routeMatch=config2.endpoints.find(endpoint=>(endpoint.routeKeys??[]).some(key=>key.trim().toLowerCase()===routeKey))??null;if(routeMatch)return routeMatch}if(!normalizedModel)return null;let bestMatch=null,bestPrefixLen=-1;for(let endpoint of config2.endpoints){for(let prefix of endpoint.modelPrefixes){let normalizedPrefix=prefix.toLowerCase();normalizedModel.startsWith(normalizedPrefix)&&normalizedPrefix.length>bestPrefixLen&&(bestPrefixLen=normalizedPrefix.length,bestMatch=endpoint)}endpoint.modelPrefixes.length===0&&bestMatch===null&&(bestMatch=endpoint)}return bestMatch}function isFusionModeActive(){return getActiveFusionConfigId()!==void 0}function getActiveFusionEndpointForModel(model,routeKeys=[]){try{let config2=getActiveFusionConfig();return config2?resolveFusionEndpointForModel(config2,model,routeKeys):null}catch{return null}}function markProviderOnboardingComplete(){saveGlobalConfig(current=>({...current,hasCompletedOnboarding:!0,lastOnboardingVersion:APP_VERSION}))}var hasMigratedNormalizedProviderBaseUrls,hasHealedOrphanActiveProviderProfileId,DEFAULT_PROVIDER_ROUTE_DIAGNOSTIC_MODELS,PROVIDER_PRESETS,PROVIDER_MODEL_ROUTING_PRESETS,PROVIDER_MODEL_CATALOG,PROVIDER_CAPABILITY_CACHE_TTL_MS,PROVIDER_CAPABILITY_CACHE_VERSION,PROVIDER_RESPONSES_STABILITY_ATTEMPTS,COMPATIBLE_EXTERNAL_PROVIDER_SOURCE_IDS,COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS,COMPATIBLE_EXTERNAL_PROVIDER_IMPORT_ENABLED,hasAttemptedCompatibleExternalProviderImport,VERIFIED_MODEL_CAPABILITIES,contextWindowRefreshInflight,init_providerProfiles=__esm({"src/utils/providerProfiles.ts"(){init_branding();init_betas2();init_debug();init_config3();init_modelSupportOverrides();init_modelStrings();init_sessionComboRouting();init_providerProfileMetadata();init_providerCredentials();init_providerRuntimeCore();init_providerProfileProcessEnv();init_providerModes();init_providerRoutingRepair();init_paths();init_codingRoutePolicy();init_openaiResponsesConfig();init_settings2();init_secureStorage();__name(writeFileSyncAtomic,"writeFileSyncAtomic");__name(normalizeProviderPanelSelection,"normalizeProviderPanelSelection");__name(routeKeysForProviderValidationRoles,"routeKeysForProviderValidationRoles");hasMigratedNormalizedProviderBaseUrls=!1,hasHealedOrphanActiveProviderProfileId=!1,DEFAULT_PROVIDER_ROUTE_DIAGNOSTIC_MODELS=["gpt-5.6-max","gpt-5.6-ultra","gpt-5.5","gpt-5.4","gpt-5.3-codex","gpt-5.3-codex-spark","grok-4.3","grok-4.5","grok-build-0.1","grok-composer-2.5-fast","deepseek-reasoner"],PROVIDER_PRESETS=[{id:"custom",name:"\u81EA\u5B9A\u4E49\u914D\u7F6E",description:"\u624B\u52A8\u586B\u5199\u4EFB\u610F\u517C\u5BB9 API URL \u548C\u5BC6\u94A5",baseUrl:"",authType:"api_key"},{id:"anthropic",name:"Anthropic",description:"\u5B98\u65B9 Anthropic API",baseUrl:"https://api.anthropic.com",authType:"api_key"},{id:"openrouter",name:"OpenRouter",description:"OpenRouter Anthropic \u517C\u5BB9\u5165\u53E3",baseUrl:"https://openrouter.ai/api/anthropic",authType:"api_key"},{id:"glm",name:"GLM",description:"\u667A\u8C31 AI Claude \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://open.bigmodel.cn/api/anthropic",authType:"auth_token"},{id:"minimax",name:"MiniMax",description:"MiniMax Claude \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://api.minimaxi.com/anthropic",authType:"auth_token"},{id:"kimi",name:"Kimi",description:"Moonshot Kimi Coding \u63A5\u53E3",baseUrl:"https://api.kimi.com/coding/",authType:"auth_token"},{id:"xai",name:"xAI (Grok)",description:"xAI Grok OpenAI \u517C\u5BB9\u63A5\u53E3",baseUrl:"https://api.x.ai/v1",authType:"api_key"},{id:"gemini",name:"Google Gemini",description:"Google Gemini\uFF08\u7EDF\u4E00\u8D70 OpenAI \u517C\u5BB9\u7AEF\u70B9 + \u4E13\u7528\u540E\u5904\u7406\uFF0C\u652F\u6301 gemini-3-5-flash / gemini-3-5-flash-high \u7B49\u5168\u7CFB\u5217\uFF0C\u9AD8\u9636\u53D8\u4F53\u81EA\u52A8\u542F\u7528\u66F4\u5F3A reasoning \u63D0\u53D6\uFF09",baseUrl:"https://generativelanguage.googleapis.com/v1beta/openai/",authType:"api_key"}],PROVIDER_MODEL_ROUTING_PRESETS=[{id:"provider_default",name:"Provider defaults",description:"Keep the provider defaults for all slots. Override individual models only when needed.",routing:{presetId:"provider_default",primaryModel:"",subagentModel:"",smallFastModel:"",planModel:"",exploreModel:"",generalModel:"",teamModel:"",guideModel:"",reviewModel:""}},{id:"claude_code_heritage",name:"Anthropic-native heritage",description:"Anthropic-native default path with Sonnet for execution, Haiku for fast work, and Opus for planning.",routing:{presetId:"claude_code_heritage",primaryModel:"claude-sonnet-4-6",subagentModel:"claude-sonnet-4-6",smallFastModel:"claude-haiku-4-5",planModel:"claude-opus-4-6",exploreModel:"claude-sonnet-4-6",generalModel:"claude-sonnet-4-6",teamModel:"claude-sonnet-4-6",guideModel:"claude-opus-4-6",reviewModel:""}},{id:"gpt_5_5_max",name:"GPT-5.5 max capability",description:"Primary, workhorse, team, and planning slots on GPT-5.5 with GPT-5.3 Codex kept for fast helper work.",routing:{presetId:"gpt_5_5_max",primaryModel:"gpt-5.5",subagentModel:"gpt-5.5",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.5",exploreModel:"gpt-5.5",generalModel:"gpt-5.5",teamModel:"gpt-5.5",guideModel:"gpt-5.5",reviewModel:""}},{id:"gpt_5_4_codex",name:"GPT-5.4 + GPT-5.3 Codex",description:"Primary slot on GPT-5.4. Sonnet and Haiku slots on GPT-5.3 Codex.",routing:{presetId:"gpt_5_4_codex",primaryModel:"gpt-5.4",subagentModel:"gpt-5.3-codex",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.4",exploreModel:"gpt-5.3-codex",generalModel:"gpt-5.3-codex",teamModel:"gpt-5.3-codex",guideModel:"gpt-5.4",reviewModel:""}},{id:"gpt_5_1_stable",name:"GPT-5.1 stable",description:"Use GPT-5.1 across the primary, Haiku, Sonnet, and Opus slots.",routing:{presetId:"gpt_5_1_stable",primaryModel:"gpt-5.1",subagentModel:"gpt-5.1",smallFastModel:"gpt-5.1",planModel:"gpt-5.1",exploreModel:"gpt-5.1",generalModel:"gpt-5.1",teamModel:"gpt-5.1",guideModel:"gpt-5.1",reviewModel:""}},{id:"gpt_5_3_codex",name:"GPT-5.3 Codex everywhere",description:"Run the primary, Haiku, Sonnet, and Opus slots on GPT-5.3 Codex.",routing:{presetId:"gpt_5_3_codex",primaryModel:"gpt-5.3-codex",subagentModel:"gpt-5.3-codex",smallFastModel:"gpt-5.3-codex",planModel:"gpt-5.3-codex",exploreModel:"gpt-5.3-codex",generalModel:"gpt-5.3-codex",teamModel:"gpt-5.3-codex",guideModel:"gpt-5.3-codex",reviewModel:""}},{id:"grok_current",name:"Grok 4.5 native coding route",description:"xAI Grok via OpenAI-compatible /v1/chat/completions: grok-4.5 primary/plan/judge, grok-build-0.1 workhorse, grok-composer-2.5-fast scout/smallFast.",routing:{presetId:"grok_current",primaryModel:"grok-4.5",subagentModel:"grok-build-0.1",smallFastModel:"grok-composer-2.5-fast",planModel:"grok-4.5",exploreModel:"grok-build-0.1",generalModel:"grok-composer-2.5-fast",teamModel:"grok-build-0.1",guideModel:"grok-4.5",reviewModel:"grok-build-0.1"}},{id:"grok_45_composer_combo",name:"Grok 4.5 + Composer scout combo",description:"Mainline-friendly Grok combo: grok-4.5 executor/plan/judge, composer-2.5-fast scout/extract, build-0.1 explore/review. Pair with a cross-family review slot when 1+1>2 is required.",routing:{presetId:"grok_45_composer_combo",primaryModel:"grok-4.5",subagentModel:"grok-build-0.1",smallFastModel:"grok-composer-2.5-fast",planModel:"grok-4.5",exploreModel:"grok-build-0.1",generalModel:"grok-composer-2.5-fast",teamModel:"grok-build-0.1",guideModel:"grok-4.5",reviewModel:"grok-4.5"}},{id:"minimax_m3",name:"MiniMax M3 coding route",description:"All slots on MiniMax-M3 via OpenAI chat/completions (gateway-native tool_calls).",routing:{presetId:"minimax_m3",primaryModel:"MiniMax-M3",subagentModel:"MiniMax-M3",smallFastModel:"MiniMax-M3",planModel:"MiniMax-M3",exploreModel:"MiniMax-M3",generalModel:"MiniMax-M3",teamModel:"MiniMax-M3",guideModel:"MiniMax-M3",reviewModel:"MiniMax-M3"}},{id:"kimi_k26",name:"Kimi K2.6 coding route",description:"All slots on Kimi-K2.6 via OpenAI chat/completions.",routing:{presetId:"kimi_k26",primaryModel:"Kimi-K2.6",subagentModel:"Kimi-K2.6",smallFastModel:"Kimi-K2.6",planModel:"Kimi-K2.6",exploreModel:"Kimi-K2.6",generalModel:"Kimi-K2.6",teamModel:"Kimi-K2.6",guideModel:"Kimi-K2.6",reviewModel:"Kimi-K2.6"}},{id:"deepseek_v4_pro",name:"DeepSeek V4 Pro coding route",description:"DeepSeek v4 Pro primary with v4 Flash helpers for scout/smallFast efficiency.",routing:{presetId:"deepseek_v4_pro",primaryModel:"deepseek-v4-pro",subagentModel:"deepseek-v4-pro",smallFastModel:"deepseek-v4-flash",planModel:"deepseek-v4-pro",exploreModel:"deepseek-v4-flash",generalModel:"deepseek-v4-flash",teamModel:"deepseek-v4-pro",guideModel:"deepseek-v4-pro",reviewModel:"deepseek-v4-pro"}},{id:"glm_52",name:"GLM-5.2 coding route",description:"All slots on GLM-5.2 via OpenAI chat/completions.",routing:{presetId:"glm_52",primaryModel:"GLM-5.2",subagentModel:"GLM-5.2",smallFastModel:"GLM-5.2",planModel:"GLM-5.2",exploreModel:"GLM-5.2",generalModel:"GLM-5.2",teamModel:"GLM-5.2",guideModel:"GLM-5.2",reviewModel:"GLM-5.2"}},{id:"qwen36_gateway",name:"Qwen3.6 gateway route (chat-first)",description:"Qwen3.6 35B-A3B primary + 27B helpers. Native tools require gateway tool-call-parser; otherwise use as chat/plan only or pair tools with another family.",routing:{presetId:"qwen36_gateway",primaryModel:"qwen3.6:35b-a3b",subagentModel:"qwen3.6:27b",smallFastModel:"qwen3.6:27b",planModel:"qwen3.6:35b-a3b",exploreModel:"qwen3.6:27b",generalModel:"qwen3.6:27b",teamModel:"qwen3.6:27b",guideModel:"qwen3.6:35b-a3b",reviewModel:"qwen3.6:35b-a3b"}},{id:"gpt55_deepseek_combo",name:"GPT-5.5 + DeepSeek 6-layer combo",description:"6-layer model: GPT-5.5 as primary/compute (plan+guide), DeepSeek v4 Flash lightweight (smallFast+general), DeepSeek v4 Pro medium/team (subagent+explore+team), Codex review. Quality-first combo route; grow lightweight share only when verification stays strong. This uses DeepSeek Flash for helper slots, not Codex Spark/DSpark aliases.",routing:{presetId:"gpt55_deepseek_combo",primaryModel:"gpt-5.5",subagentModel:"deepseek-v4-pro",smallFastModel:"deepseek-v4-flash",planModel:"gpt-5.5",exploreModel:"deepseek-v4-pro",generalModel:"deepseek-v4-flash",teamModel:"deepseek-v4-pro",guideModel:"gpt-5.5",reviewModel:"codex-auto-review"}},{id:"deepseek_gpt_combo",name:"DeepSeek efficient combo",description:"DeepSeek v4 Pro primary with DeepSeek v4 Flash for high-volume helper, summary, extract, verification, and team work. GPT-5.5 remains reserved for planning/guide augmentation.",routing:{presetId:"deepseek_gpt_combo",primaryModel:"deepseek-v4-pro",subagentModel:"deepseek-v4-flash",smallFastModel:"deepseek-v4-flash",planModel:"gpt-5.5",exploreModel:"deepseek-v4-flash",generalModel:"deepseek-v4-flash",teamModel:"deepseek-v4-flash",guideModel:"gpt-5.5",reviewModel:"codex-auto-review"}},{id:"custom",name:"Custom model routing",description:"Set primary, Haiku, Sonnet, and Opus slots yourself. Derived roles update automatically.",routing:{presetId:"custom",primaryModel:"",subagentModel:"",smallFastModel:"",planModel:"",exploreModel:"",generalModel:"",teamModel:"",guideModel:"",reviewModel:""}}],PROVIDER_MODEL_CATALOG=[{id:"gpt-5.6-max",name:"GPT-5.6 Max",description:"Provider-described strongest GPT-5.6 family model; usable in any configured model slot without changing Clavue orchestration policy",verified:!1,capabilities:["effort","thinking","max_effort","tool_use"]},{id:"gpt-5.6-ultra",name:"GPT-5.6 Ultra",description:"Provider-described GPT-5.6 variant with internal parallel-agent execution; treated as one model endpoint and usable in any configured slot",verified:!1,capabilities:["effort","thinking","max_effort","tool_use"]},{id:"gpt-5.5",name:"GPT-5.5",description:"Maximum-capability GPT route for validated OpenAI Responses-compatible coding gateways",verified:!1,capabilities:["effort","thinking","adaptive_thinking","max_effort"]},{id:"gpt-5.4",name:"GPT-5.4",description:"Probe-required Primary slot model on Anthropic-compatible GPT gateways",verified:!1,capabilities:["effort","thinking","adaptive_thinking"]},{id:"gpt-5.3-codex",name:"GPT-5.3 Codex",description:"Gateway-dependent execution model; only use it after this provider validates stable native tool calling",verified:!1,capabilities:["effort","thinking"]},{id:"gpt-5.3-codex-spark",name:"GPT-5.3 Codex Spark",description:"Experimental Codex route; only use it when this provider explicitly validates support",verified:!1,capabilities:["effort","thinking"]},{id:"gpt-5.1",name:"GPT-5.1",description:"Provider-dependent fallback when a gateway does not fully expose GPT-5.4",verified:!1,capabilities:["effort","thinking","adaptive_thinking"]},{id:"claude-sonnet-4-6",name:"Claude Sonnet 4.6",description:"Native Anthropic everyday coding model",verified:!0,capabilities:["thinking","adaptive_thinking"]},{id:"claude-opus-4-6",name:"Claude Opus 4.6",description:"Native Anthropic highest-capability model",verified:!0,capabilities:["thinking","adaptive_thinking"]},{id:"claude-haiku-4-5",name:"Claude Haiku 4.5",description:"Native Anthropic fast-response model for the Haiku slot",verified:!0,capabilities:[]},{id:"grok-4.3",name:"Grok 4.3",description:"xAI Grok 4.3 \u2014 long-context reasoning; chat/completions with reasoning_effort none|low|medium|high",verified:!0,capabilities:["vision","tool_use","thinking","effort"]},{id:"grok-4.5",name:"Grok 4.5",description:"xAI Grok 4.5 \u2014 flagship coding/reasoning on /v1/chat/completions; native tool_calls + reasoning_content",verified:!0,capabilities:["vision","tool_use","thinking","effort"]},{id:"grok-build-0.1",name:"Grok Build 0.1",description:"xAI Grok Build 0.1 \u2014 agentic coding workhorse for explore/subagent/team slots",verified:!0,capabilities:["tool_use","thinking"]},{id:"grok-composer-2.5-fast",name:"Grok Composer 2.5 Fast",description:"xAI Grok Composer 2.5 Fast \u2014 scout/smallFast/extract helper with native function tools",verified:!0,capabilities:["tool_use","thinking"]},{id:"grok-4",name:"Grok 4",description:"xAI Grok 4 - frontier reasoning model",verified:!1,capabilities:["vision","tool_use","thinking"]},{id:"gemini-1.5-flash",name:"Gemini 1.5 Flash",description:"Google Gemini 1.5 Flash - fast, long-context",verified:!1,capabilities:["vision","tool_use","long_context"]},{id:"gemini-2.0-flash",name:"Gemini 2.0 Flash",description:"Google Gemini 2.0 Flash (experimental)",verified:!1,capabilities:["vision","tool_use"]},{id:"gemini-3-5-flash",name:"Gemini 3.5 Flash",description:"Google Gemini 3.5 Flash - fast, high-capability",verified:!1,capabilities:["vision","tool_use","long_context","adaptive_thinking"]},{id:"gemini-3-5-flash-high",name:"Gemini 3.5 Flash (High)",description:"Google Gemini 3.5 Flash High - maximized reasoning mode",verified:!1,capabilities:["vision","tool_use","long_context","adaptive_thinking","thinking","effort"]},{id:"MiniMax-M3",name:"MiniMax M3",description:"MiniMax M3 on OpenAI chat/completions; native tool_calls (gateway may emit concatenated arg JSON \u2014 Clavue recovers)",verified:!0,capabilities:["tool_use"]},{id:"Kimi-K2.6",name:"Kimi K2.6",description:"Moonshot Kimi K2.6 on OpenAI chat/completions; tool ids may use functions.name:index form",verified:!0,capabilities:["tool_use"]},{id:"deepseek-v4-pro",name:"DeepSeek V4 Pro",description:"DeepSeek V4 Pro on chat/completions with reasoning_content replay for tool loops",verified:!0,capabilities:["tool_use","thinking"]},{id:"deepseek-v4-flash",name:"DeepSeek V4 Flash",description:"DeepSeek V4 Flash lightweight scout/smallFast helper",verified:!0,capabilities:["tool_use","thinking"]},{id:"GLM-5.2",name:"GLM 5.2",description:"Zhipu GLM-5.2 on OpenAI chat/completions (also works on /v1/messages gateways)",verified:!0,capabilities:["tool_use"]},{id:"glm-5.2",name:"glm-5.2",description:"Lowercase alias for GLM-5.2",verified:!0,capabilities:["tool_use"]},{id:"qwen3.6:35b-a3b",name:"Qwen3.6 35B-A3B",description:"Qwen3.6 MoE \u2014 chat OK; native tools require gateway --tool-call-parser (otherwise tool routes 400)",verified:!0,capabilities:["tool_use"]},{id:"qwen3.6:27b",name:"Qwen3.6 27B",description:"Qwen3.6 27B \u2014 chat OK; native tools require gateway --tool-call-parser",verified:!0,capabilities:["tool_use"]}],PROVIDER_CAPABILITY_CACHE_TTL_MS=3600*1e3,PROVIDER_CAPABILITY_CACHE_VERSION=3,PROVIDER_RESPONSES_STABILITY_ATTEMPTS=2,COMPATIBLE_EXTERNAL_PROVIDER_SOURCE_IDS=["ccjk","zcf"],COMPATIBLE_EXTERNAL_PROVIDER_CONFIG_PATHS=[{sourceId:"ccjk",path:join16(homedir5(),".ccjk","config.toml")},{sourceId:"zcf",path:join16(homedir5(),".ufomiao","zcf","config.toml")}],COMPATIBLE_EXTERNAL_PROVIDER_IMPORT_ENABLED=!1,hasAttemptedCompatibleExternalProviderImport=!1;__name(shouldAutoImportCompatibleExternalProviderProfiles,"shouldAutoImportCompatibleExternalProviderProfiles");__name(normalizeAnthropicBaseUrl,"normalizeAnthropicBaseUrl");__name(stripTomlComment,"stripTomlComment");__name(parseTomlPathSegments,"parseTomlPathSegments");__name(parseTomlStringValue,"parseTomlStringValue");VERIFIED_MODEL_CAPABILITIES=new Map([["gpt-5.5",["effort","thinking","adaptive_thinking","max_effort"]],["gpt-5.4",["effort","thinking","adaptive_thinking"]],["gpt-5.1",["effort","thinking","adaptive_thinking"]],["gpt-5.3-codex",["effort","thinking"]]]);__name(getVerifiedCapabilitiesForModel,"getVerifiedCapabilitiesForModel");__name(getCapabilitiesFromProviderSnapshot,"getCapabilitiesFromProviderSnapshot");__name(serializeCapabilitiesForModel,"serializeCapabilitiesForModel");__name(normalizeAuthType,"normalizeAuthType");__name(getProviderSlotModelsFromRouting,"getProviderSlotModelsFromRouting");__name(inferProviderApiDialectMode,"inferProviderApiDialectMode");__name(describeProviderPrimaryUpstreamPath,"describeProviderPrimaryUpstreamPath");__name(normalizeProviderApiDialectMode,"normalizeProviderApiDialectMode");__name(normalizeProviderId,"normalizeProviderId");__name(normalizeModelRoutingPresetId,"normalizeModelRoutingPresetId");__name(normalizeModelValue,"normalizeModelValue");__name(inferModelRoutingPresetId,"inferModelRoutingPresetId");__name(normalizeProviderModelRouting,"normalizeProviderModelRouting");__name(normalizeProviderProfileProvenance,"normalizeProviderProfileProvenance");__name(normalizeProviderSecretRecord,"normalizeProviderSecretRecord");__name(getStoredProviderSecretRecords,"getStoredProviderSecretRecords");__name(areProviderSecretMapsEqual,"areProviderSecretMapsEqual");__name(persistProviderSecrets,"persistProviderSecrets");__name(scrubStoredProviderProfile,"scrubStoredProviderProfile");__name(normalizeProviderProfile,"normalizeProviderProfile");__name(buildCompatibleExternalProviderRouting,"buildCompatibleExternalProviderRouting");__name(repairProviderProfileRoutingForMode,"repairProviderProfileRoutingForMode");__name(createProviderProfileFromCompatibleExternalProfile,"createProviderProfileFromCompatibleExternalProfile");__name(loadCompatibleExternalProviderConfig,"loadCompatibleExternalProviderConfig");__name(loadCompatibleExternalProviderProfiles,"loadCompatibleExternalProviderProfiles");__name(applyCompatibleExternalProviderImport,"applyCompatibleExternalProviderImport");__name(escapeTomlBasicString,"escapeTomlBasicString");__name(updateCompatibleExternalProviderCurrentProfile,"updateCompatibleExternalProviderCurrentProfile");__name(getProviderConfig,"getProviderConfig");__name(getStoredProviderProfileRecords,"getStoredProviderProfileRecords");__name(getStoredActiveProviderProfileId,"getStoredActiveProviderProfileId");__name(resolveHealedActiveProviderProfileId,"resolveHealedActiveProviderProfileId");__name(healOrphanActiveProviderProfileId,"healOrphanActiveProviderProfileId");__name(getStoredProviderCapabilityCache,"getStoredProviderCapabilityCache");__name(ensureNormalizedProviderBaseUrlsMigrated,"ensureNormalizedProviderBaseUrlsMigrated");__name(getStoredProviderProfiles,"getStoredProviderProfiles");__name(ensureCompatibleExternalProviderProfilesImported,"ensureCompatibleExternalProviderProfilesImported");__name(buildProviderCredentialFingerprint,"buildProviderCredentialFingerprint");__name(buildProviderCapabilityCacheKey,"buildProviderCapabilityCacheKey");__name(createEmptyProviderCapabilitySnapshot,"createEmptyProviderCapabilitySnapshot");__name(normalizeProviderCapabilitySnapshot,"normalizeProviderCapabilitySnapshot");__name(getProviderCapabilityCache,"getProviderCapabilityCache");__name(saveProviderCapabilitySnapshot,"saveProviderCapabilitySnapshot");__name(upsertProviderCapabilitySnapshot,"upsertProviderCapabilitySnapshot");__name(getProviderCapabilitySnapshot,"getProviderCapabilitySnapshot");__name(getCachedProviderCapabilitySnapshot,"getCachedProviderCapabilitySnapshot");__name(getProviderCapabilitySnapshotFreshness,"getProviderCapabilitySnapshotFreshness");__name(getProviderModelMaxInputTokens,"getProviderModelMaxInputTokens");__name(extractMaxInputTokensFromModelsPayload,"extractMaxInputTokensFromModelsPayload");contextWindowRefreshInflight=new Map;__name(refreshProviderModelContextWindow,"refreshProviderModelContextWindow");__name(getSettingsEnv,"getSettingsEnv");__name(buildSettingsEnvUpdate,"buildSettingsEnvUpdate");__name(buildSettingsModelUpdate,"buildSettingsModelUpdate");__name(writeUserSettingsUpdate,"writeUserSettingsUpdate");__name(healUserSettingsEnvToProfile,"healUserSettingsEnvToProfile");__name(updateProviderConfig,"updateProviderConfig");__name(inferProviderPresetId,"inferProviderPresetId");__name(getProviderModelCatalogEntry,"getProviderModelCatalogEntry");__name(getProviderModelDisplayName,"getProviderModelDisplayName");__name(getProviderModelDescription,"getProviderModelDescription");__name(getProviderPreset,"getProviderPreset");__name(getProviderModelRoutingPreset,"getProviderModelRoutingPreset");__name(getProviderProfiles,"getProviderProfiles");__name(importCompatibleExternalProviderProfiles,"importCompatibleExternalProviderProfiles");__name(getProviderProfileById,"getProviderProfileById");__name(findProviderProfiles,"findProviderProfiles");__name(getActiveProviderProfileId,"getActiveProviderProfileId");__name(getSavedActiveProviderProfile,"getSavedActiveProviderProfile");__name(__resetOrphanActiveProviderHealForTests,"__resetOrphanActiveProviderHealForTests");__name(getCurrentProviderProfile,"getCurrentProviderProfile");__name(getResolvedCurrentProviderProfile,"getResolvedCurrentProviderProfile");setSessionProviderResolver(sessionId=>{try{return getResolvedCurrentProviderProfile(sessionId)?.id}catch{return}});__name(hasProviderCredentialConfigured,"hasProviderCredentialConfigured");__name(providerProfileToAgentEnv,"providerProfileToAgentEnv");__name(getCredentialLabel,"getCredentialLabel");__name(maskCredential,"maskCredential");__name(createProviderDraftFromPreset,"createProviderDraftFromPreset");__name(allocateUniqueProviderProfileName,"allocateUniqueProviderProfileName");__name(cloneProviderProfile,"cloneProviderProfile");__name(createProviderModelRoutingFromPreset,"createProviderModelRoutingFromPreset");__name(createCustomProviderModelRouting,"createCustomProviderModelRouting");__name(getProviderModelSlotDefaults,"getProviderModelSlotDefaults");__name(getValidationRoleLabel,"getValidationRoleLabel");__name(formatValidationRoles,"formatValidationRoles");__name(getAutoRepairCandidates,"getAutoRepairCandidates");__name(getRepairTargets,"getRepairTargets");__name(applyAutoRepairRouting,"applyAutoRepairRouting");__name(cloneProfileWithRouting,"cloneProfileWithRouting");__name(buildValidationHeaders,"buildValidationHeaders");__name(extractValidationErrorMessage,"extractValidationErrorMessage");__name(buildResponsesValidationHeaders,"buildResponsesValidationHeaders");__name(shouldValidateViaOpenAIResponses,"shouldValidateViaOpenAIResponses");__name(shouldProbeNativeToolCalling,"shouldProbeNativeToolCalling");__name(hasAnthropicToolUseBlock,"hasAnthropicToolUseBlock");__name(hasResponsesFunctionCall,"hasResponsesFunctionCall");__name(createResponsesValidationInput,"createResponsesValidationInput");__name(createResponsesValidationTool,"createResponsesValidationTool");__name(postResponsesValidationRequest,"postResponsesValidationRequest");__name(runResponsesValidationAttempts,"runResponsesValidationAttempts");__name(buildAccessValidationDetail,"buildAccessValidationDetail");__name(buildResponsesCompatibilityDetailFromSnapshot,"buildResponsesCompatibilityDetailFromSnapshot");__name(getEffortLevelsFromSnapshot,"getEffortLevelsFromSnapshot");__name(getRouteInspectionTransport,"getRouteInspectionTransport");__name(getRouteTransportLabel,"getRouteTransportLabel");__name(getRecommendedRouteModelStatus,"getRecommendedRouteModelStatus");__name(buildProviderModelRouteInspection,"buildProviderModelRouteInspection");__name(probeModelAccess,"probeModelAccess");__name(probeNativeToolCallingCompatibility,"probeNativeToolCallingCompatibility");__name(probeModelAvailability,"probeModelAvailability");__name(validateProviderProfile,"validateProviderProfile");__name(inspectProviderModelRoute,"inspectProviderModelRoute");__name(inspectProviderModelRoutes,"inspectProviderModelRoutes");__name(attemptAutoRepairProviderProfile,"attemptAutoRepairProviderProfile");__name(applyProviderProfileToProcess,"applyProviderProfileToProcess");__name(clearActiveProviderConfiguration,"clearActiveProviderConfiguration");__name(activateCurrentProviderProfile,"activateCurrentProviderProfile");__name(assertProviderProfileActivatable,"assertProviderProfileActivatable");__name(activateProviderProfile,"activateProviderProfile");__name(saveProviderProfile,"saveProviderProfile");__name(deleteProviderProfile,"deleteProviderProfile");__name(migrateNormalizedProviderBaseUrls,"migrateNormalizedProviderBaseUrls");__name(getStoredFusionEndpointSecrets,"getStoredFusionEndpointSecrets");__name(persistFusionEndpointSecrets,"persistFusionEndpointSecrets");__name(scrubStoredFusionConfig,"scrubStoredFusionConfig");__name(normalizeFusionEndpoint,"normalizeFusionEndpoint");__name(normalizeFusionConfig,"normalizeFusionConfig");__name(getStoredFusionConfigs,"getStoredFusionConfigs");__name(getStoredActiveFusionConfigId,"getStoredActiveFusionConfigId");__name(updateFusionConfigState,"updateFusionConfigState");__name(getFusionConfigs,"getFusionConfigs");__name(getFusionConfigById,"getFusionConfigById");__name(saveFusionConfig,"saveFusionConfig");__name(deleteFusionConfig,"deleteFusionConfig");__name(getActiveFusionConfigId,"getActiveFusionConfigId");__name(getActiveFusionConfig,"getActiveFusionConfig");__name(activateFusionConfig,"activateFusionConfig");__name(resolveFusionEndpointForModel,"resolveFusionEndpointForModel");__name(isFusionModeActive,"isFusionModeActive");__name(getActiveFusionEndpointForModel,"getActiveFusionEndpointForModel");__name(markProviderOnboardingComplete,"markProviderOnboardingComplete")}});var init_reviewModelConfig=__esm({"src/utils/reviewModelConfig.ts"(){init_config3();init_providerProfiles()}});var init_client3=__esm({"src/services/api/client.ts"(){init_sdk();init_reviewModelConfig();init_providerProfiles();init_auth();init_http2();init_model();init_providers();init_proxy();init_state();init_oauth();init_debug();init_envUtils();init_openaiResponsesAdapter()}});import{readFileSync as readFileSync7}from"fs";var ModelCapabilitySchema,CacheFileSchema,loadCache,init_modelCapabilities=__esm({"src/utils/model/modelCapabilities.ts"(){init_memoize();init_v4();init_oauth();init_client3();init_auth();init_debug();init_envUtils();init_json();init_lazySchema();init_privacyLevel();init_slowOperations();init_providers();ModelCapabilitySchema=lazySchema(()=>external_exports.object({id:external_exports.string(),max_input_tokens:external_exports.number().optional(),max_tokens:external_exports.number().optional()}).strip()),CacheFileSchema=lazySchema(()=>external_exports.object({models:external_exports.array(ModelCapabilitySchema()),timestamp:external_exports.number()})),loadCache=memoize_default(path10=>{try{let raw=readFileSync7(path10,"utf-8"),parsed=CacheFileSchema().safeParse(safeParseJSON(raw,!1));return parsed.success?parsed.data.models:null}catch{return null}},path10=>path10)}});var MEMBERSHIP_PRODUCT_CAPABILITIES,byProduct,init_productModelCapabilities=__esm({"src/services/membership/productModelCapabilities.ts"(){init_config();MEMBERSHIP_PRODUCT_CAPABILITIES=[{productId:"auto",upstreamModel:"qwen3.6:35b-a3b",pool:"balanced",contextWindow:16e3,defaultOutputTokens:4e3,maxOutputTokens:8e3,roles:["primary","general","team"]},{productId:"clavue-2.1-fast",upstreamModel:"qwen3.6:35b-a3b",pool:"fast",contextWindow:16e3,defaultOutputTokens:3e3,maxOutputTokens:6e3,roles:["scout","explore","subagent","guide","smallFast"]},{productId:"clavue",upstreamModel:"qwen3.6:27b",pool:"premium",contextWindow:8e3,defaultOutputTokens:2e3,maxOutputTokens:4e3,roles:["general"]},{productId:"clavue-2.1",upstreamModel:"qwen3.6:27b",pool:"premium",contextWindow:8e3,defaultOutputTokens:2e3,maxOutputTokens:4e3,roles:["general"]},{productId:"clavue-2.1-pro",upstreamModel:"laguna-s-2.1",pool:"premium",contextWindow:4e3,defaultOutputTokens:1200,maxOutputTokens:2e3,roles:["plan"]},{productId:"clavue-2.1-rev",upstreamModel:"gemma4:26b-a4b",pool:"premium",contextWindow:8e3,defaultOutputTokens:2e3,maxOutputTokens:4e3,roles:["review"]}],byProduct=new Map(MEMBERSHIP_PRODUCT_CAPABILITIES.map(c3=>[c3.productId.toLowerCase(),c3]))}});function is1mContextDisabled(){return isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_1M_CONTEXT)}function has1mContext(model){return is1mContextDisabled()?!1:/\[1m\]/i.test(model)}var init_context=__esm({"src/utils/context.ts"(){init_betas();init_config3();init_envUtils();init_model();init_claudeModelProfiles();init_providerModelProfiles();init_modelCapabilities();init_providerProfiles();init_antModels();init_productModelCapabilities();__name(is1mContextDisabled,"is1mContextDisabled");__name(has1mContext,"has1mContext")}});function modelSupportsISP(model){let supported3P=get3PModelCapabilityOverride(model,"interleaved_thinking");if(supported3P!==void 0)return supported3P;let canonical=getCanonicalName(model),provider=getAPIProvider();return provider==="foundry"?!0:provider==="firstParty"?!canonical.includes("claude-3-"):canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")}function vertexModelSupportsWebSearch(model){let canonical=getCanonicalName(model);return canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")||canonical.includes("claude-haiku-4")}function modelSupportsContextManagement(model){let canonical=getCanonicalName(model),provider=getAPIProvider();return provider==="foundry"?!0:provider==="firstParty"?!canonical.includes("claude-3-"):canonical.includes("claude-opus-4")||canonical.includes("claude-sonnet-4")||canonical.includes("claude-haiku-4")}function modelSupportsStructuredOutputs(model){let canonical=getCanonicalName(model),provider=getAPIProvider();return provider!=="firstParty"&&provider!=="foundry"?!1:canonical.includes("claude-sonnet-4-6")||canonical.includes("claude-sonnet-4-5")||canonical.includes("claude-opus-4-1")||canonical.includes("claude-opus-4-5")||canonical.includes("claude-opus-4-6")||canonical.includes("claude-haiku-4-5")}function shouldIncludeFirstPartyOnlyBetas(){return(getAPIProvider()==="firstParty"||getAPIProvider()==="foundry")&&!isEnvTruthy(process.env.CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS)}function clearBetasCaches(){getAllModelBetas.cache?.clear?.(),getModelBetas.cache?.clear?.(),getBedrockExtraBodyParamsBetas.cache?.clear?.()}var getAllModelBetas,getModelBetas,getBedrockExtraBodyParamsBetas,init_betas2=__esm({"src/utils/betas.ts"(){init_memoize();init_growthbook();init_state();init_betas();init_oauth();init_auth();init_context();init_envUtils();init_model();init_modelSupportOverrides();init_providers();init_settings2();__name(modelSupportsISP,"modelSupportsISP");__name(vertexModelSupportsWebSearch,"vertexModelSupportsWebSearch");__name(modelSupportsContextManagement,"modelSupportsContextManagement");__name(modelSupportsStructuredOutputs,"modelSupportsStructuredOutputs");__name(shouldIncludeFirstPartyOnlyBetas,"shouldIncludeFirstPartyOnlyBetas");getAllModelBetas=memoize_default(model=>{let betaHeaders=[],isHaiku=getCanonicalName(model).includes("haiku"),provider=getAPIProvider(),includeFirstPartyOnlyBetas=shouldIncludeFirstPartyOnlyBetas();isHaiku||(betaHeaders.push(CLAUDE_CODE_20250219_BETA_HEADER),process.env.USER_TYPE==="ant"&&process.env.CLAUDE_CODE_ENTRYPOINT==="cli"&&CLI_INTERNAL_BETA_HEADER&&betaHeaders.push(CLI_INTERNAL_BETA_HEADER)),isClaudeAISubscriber()&&betaHeaders.push(OAUTH_BETA_HEADER),has1mContext(model)&&betaHeaders.push(CONTEXT_1M_BETA_HEADER),!isEnvTruthy(process.env.DISABLE_INTERLEAVED_THINKING)&&modelSupportsISP(model)&&betaHeaders.push(INTERLEAVED_THINKING_BETA_HEADER),includeFirstPartyOnlyBetas&&modelSupportsISP(model)&&!getIsNonInteractiveSession()&&getInitialSettings().showThinkingSummaries!==!0&&betaHeaders.push(REDACT_THINKING_BETA_HEADER),SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER&&process.env.USER_TYPE==="ant"&&includeFirstPartyOnlyBetas&&!isEnvDefinedFalsy(process.env.USE_CONNECTOR_TEXT_SUMMARIZATION)&&(isEnvTruthy(process.env.USE_CONNECTOR_TEXT_SUMMARIZATION)||getFeatureValue_CACHED_MAY_BE_STALE("tengu_slate_prism",!1))&&betaHeaders.push(SUMMARIZE_CONNECTOR_TEXT_BETA_HEADER);let contextManagementEnabled=modelSupportsContextManagement(model);shouldIncludeFirstPartyOnlyBetas()&&contextManagementEnabled&&betaHeaders.push(CONTEXT_MANAGEMENT_BETA_HEADER);let strictToolsEnabled=checkStatsigFeatureGate_CACHED_MAY_BE_STALE("tengu_tool_pear"),tokenEfficientToolsEnabled=!strictToolsEnabled&&getFeatureValue_CACHED_MAY_BE_STALE("tengu_amber_json_tools",!1);return includeFirstPartyOnlyBetas&&modelSupportsStructuredOutputs(model)&&strictToolsEnabled&&betaHeaders.push(STRUCTURED_OUTPUTS_BETA_HEADER),process.env.USER_TYPE==="ant"&&includeFirstPartyOnlyBetas&&tokenEfficientToolsEnabled&&betaHeaders.push(TOKEN_EFFICIENT_TOOLS_BETA_HEADER),provider==="vertex"&&vertexModelSupportsWebSearch(model)&&betaHeaders.push(WEB_SEARCH_BETA_HEADER),provider==="foundry"&&betaHeaders.push(WEB_SEARCH_BETA_HEADER),includeFirstPartyOnlyBetas&&betaHeaders.push(PROMPT_CACHING_SCOPE_BETA_HEADER),process.env.ANTHROPIC_BETAS&&betaHeaders.push(...process.env.ANTHROPIC_BETAS.split(",").map(_=>_.trim()).filter(Boolean)),betaHeaders}),getModelBetas=memoize_default(model=>{let modelBetas=getAllModelBetas(model);return getAPIProvider()==="bedrock"?modelBetas.filter(b=>!BEDROCK_EXTRA_PARAMS_HEADERS.has(b)):modelBetas}),getBedrockExtraBodyParamsBetas=memoize_default(model=>getAllModelBetas(model).filter(b=>BEDROCK_EXTRA_PARAMS_HEADERS.has(b)));__name(clearBetasCaches,"clearBetasCaches")}});var require_polyfills=__commonJS({"../../node_modules/graceful-fs/polyfills.js"(exports2,module2){var constants4=__require("constants"),origCwd=process.cwd,cwd2=null,platform2=process.env.GRACEFUL_FS_PLATFORM||process.platform;process.cwd=function(){return cwd2||(cwd2=origCwd.call(process)),cwd2};try{process.cwd()}catch{}typeof process.chdir=="function"&&(chdir=process.chdir,process.chdir=function(d){cwd2=null,chdir.call(process,d)},Object.setPrototypeOf&&Object.setPrototypeOf(process.chdir,chdir));var chdir;module2.exports=patch;function patch(fs4){constants4.hasOwnProperty("O_SYMLINK")&&process.version.match(/^v0\.6\.[0-2]|^v0\.5\./)&&patchLchmod(fs4),fs4.lutimes||patchLutimes(fs4),fs4.chown=chownFix(fs4.chown),fs4.fchown=chownFix(fs4.fchown),fs4.lchown=chownFix(fs4.lchown),fs4.chmod=chmodFix(fs4.chmod),fs4.fchmod=chmodFix(fs4.fchmod),fs4.lchmod=chmodFix(fs4.lchmod),fs4.chownSync=chownFixSync(fs4.chownSync),fs4.fchownSync=chownFixSync(fs4.fchownSync),fs4.lchownSync=chownFixSync(fs4.lchownSync),fs4.chmodSync=chmodFixSync(fs4.chmodSync),fs4.fchmodSync=chmodFixSync(fs4.fchmodSync),fs4.lchmodSync=chmodFixSync(fs4.lchmodSync),fs4.stat=statFix(fs4.stat),fs4.fstat=statFix(fs4.fstat),fs4.lstat=statFix(fs4.lstat),fs4.statSync=statFixSync(fs4.statSync),fs4.fstatSync=statFixSync(fs4.fstatSync),fs4.lstatSync=statFixSync(fs4.lstatSync),fs4.chmod&&!fs4.lchmod&&(fs4.lchmod=function(path10,mode,cb){cb&&process.nextTick(cb)},fs4.lchmodSync=function(){}),fs4.chown&&!fs4.lchown&&(fs4.lchown=function(path10,uid,gid,cb){cb&&process.nextTick(cb)},fs4.lchownSync=function(){}),platform2==="win32"&&(fs4.rename=typeof fs4.rename!="function"?fs4.rename:(function(fs$rename){function rename(from,to,cb){var start=Date.now(),backoff=0;fs$rename(from,to,__name(function CB(er){if(er&&(er.code==="EACCES"||er.code==="EPERM"||er.code==="EBUSY")&&Date.now()-start<6e4){setTimeout(function(){fs4.stat(to,function(stater,st){stater&&stater.code==="ENOENT"?fs$rename(from,to,CB):cb(er)})},backoff),backoff<100&&(backoff+=10);return}cb&&cb(er)},"CB"))}return __name(rename,"rename"),Object.setPrototypeOf&&Object.setPrototypeOf(rename,fs$rename),rename})(fs4.rename)),fs4.read=typeof fs4.read!="function"?fs4.read:(function(fs$read){function read(fd,buffer,offset,length,position,callback_){var callback;if(callback_&&typeof callback_=="function"){var eagCounter=0;callback=__name(function(er,_,__){if(er&&er.code==="EAGAIN"&&eagCounter<10)return eagCounter++,fs$read.call(fs4,fd,buffer,offset,length,position,callback);callback_.apply(this,arguments)},"callback")}return fs$read.call(fs4,fd,buffer,offset,length,position,callback)}return __name(read,"read"),Object.setPrototypeOf&&Object.setPrototypeOf(read,fs$read),read})(fs4.read),fs4.readSync=typeof fs4.readSync!="function"?fs4.readSync:(function(fs$readSync){return function(fd,buffer,offset,length,position){for(var eagCounter=0;;)try{return fs$readSync.call(fs4,fd,buffer,offset,length,position)}catch(er){if(er.code==="EAGAIN"&&eagCounter<10){eagCounter++;continue}throw er}}})(fs4.readSync);function patchLchmod(fs5){fs5.lchmod=function(path10,mode,callback){fs5.open(path10,constants4.O_WRONLY|constants4.O_SYMLINK,mode,function(err,fd){if(err){callback&&callback(err);return}fs5.fchmod(fd,mode,function(err2){fs5.close(fd,function(err22){callback&&callback(err2||err22)})})})},fs5.lchmodSync=function(path10,mode){var fd=fs5.openSync(path10,constants4.O_WRONLY|constants4.O_SYMLINK,mode),threw=!0,ret;try{ret=fs5.fchmodSync(fd,mode),threw=!1}finally{if(threw)try{fs5.closeSync(fd)}catch{}else fs5.closeSync(fd)}return ret}}__name(patchLchmod,"patchLchmod");function patchLutimes(fs5){constants4.hasOwnProperty("O_SYMLINK")&&fs5.futimes?(fs5.lutimes=function(path10,at2,mt,cb){fs5.open(path10,constants4.O_SYMLINK,function(er,fd){if(er){cb&&cb(er);return}fs5.futimes(fd,at2,mt,function(er2){fs5.close(fd,function(er22){cb&&cb(er2||er22)})})})},fs5.lutimesSync=function(path10,at2,mt){var fd=fs5.openSync(path10,constants4.O_SYMLINK),ret,threw=!0;try{ret=fs5.futimesSync(fd,at2,mt),threw=!1}finally{if(threw)try{fs5.closeSync(fd)}catch{}else fs5.closeSync(fd)}return ret}):fs5.futimes&&(fs5.lutimes=function(_a2,_b,_c,cb){cb&&process.nextTick(cb)},fs5.lutimesSync=function(){})}__name(patchLutimes,"patchLutimes");function chmodFix(orig){return orig&&function(target,mode,cb){return orig.call(fs4,target,mode,function(er){chownErOk(er)&&(er=null),cb&&cb.apply(this,arguments)})}}__name(chmodFix,"chmodFix");function chmodFixSync(orig){return orig&&function(target,mode){try{return orig.call(fs4,target,mode)}catch(er){if(!chownErOk(er))throw er}}}__name(chmodFixSync,"chmodFixSync");function chownFix(orig){return orig&&function(target,uid,gid,cb){return orig.call(fs4,target,uid,gid,function(er){chownErOk(er)&&(er=null),cb&&cb.apply(this,arguments)})}}__name(chownFix,"chownFix");function chownFixSync(orig){return orig&&function(target,uid,gid){try{return orig.call(fs4,target,uid,gid)}catch(er){if(!chownErOk(er))throw er}}}__name(chownFixSync,"chownFixSync");function statFix(orig){return orig&&function(target,options,cb){typeof options=="function"&&(cb=options,options=null);function callback(er,stats){stats&&(stats.uid<0&&(stats.uid+=4294967296),stats.gid<0&&(stats.gid+=4294967296)),cb&&cb.apply(this,arguments)}return __name(callback,"callback"),options?orig.call(fs4,target,options,callback):orig.call(fs4,target,callback)}}__name(statFix,"statFix");function statFixSync(orig){return orig&&function(target,options){var stats=options?orig.call(fs4,target,options):orig.call(fs4,target);return stats&&(stats.uid<0&&(stats.uid+=4294967296),stats.gid<0&&(stats.gid+=4294967296)),stats}}__name(statFixSync,"statFixSync");function chownErOk(er){if(!er||er.code==="ENOSYS")return!0;var nonroot=!process.getuid||process.getuid()!==0;return!!(nonroot&&(er.code==="EINVAL"||er.code==="EPERM"))}__name(chownErOk,"chownErOk")}__name(patch,"patch")}});var require_legacy_streams=__commonJS({"../../node_modules/graceful-fs/legacy-streams.js"(exports2,module2){var Stream4=__require("stream").Stream;module2.exports=legacy;function legacy(fs4){return{ReadStream,WriteStream};function ReadStream(path10,options){if(!(this instanceof ReadStream))return new ReadStream(path10,options);Stream4.call(this);var self2=this;this.path=path10,this.fd=null,this.readable=!0,this.paused=!1,this.flags="r",this.mode=438,this.bufferSize=64*1024,options=options||{};for(var keys2=Object.keys(options),index=0,length=keys2.length;index<length;index++){var key=keys2[index];this[key]=options[key]}if(this.encoding&&this.setEncoding(this.encoding),this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.end===void 0)this.end=1/0;else if(typeof this.end!="number")throw TypeError("end must be a Number");if(this.start>this.end)throw new Error("start must be <= end");this.pos=this.start}if(this.fd!==null){process.nextTick(function(){self2._read()});return}fs4.open(this.path,this.flags,this.mode,function(err,fd){if(err){self2.emit("error",err),self2.readable=!1;return}self2.fd=fd,self2.emit("open",fd),self2._read()})}function WriteStream(path10,options){if(!(this instanceof WriteStream))return new WriteStream(path10,options);Stream4.call(this),this.path=path10,this.fd=null,this.writable=!0,this.flags="w",this.encoding="binary",this.mode=438,this.bytesWritten=0,options=options||{};for(var keys2=Object.keys(options),index=0,length=keys2.length;index<length;index++){var key=keys2[index];this[key]=options[key]}if(this.start!==void 0){if(typeof this.start!="number")throw TypeError("start must be a Number");if(this.start<0)throw new Error("start must be >= zero");this.pos=this.start}this.busy=!1,this._queue=[],this.fd===null&&(this._open=fs4.open,this._queue.push([this._open,this.path,this.flags,this.mode,void 0]),this.flush())}}__name(legacy,"legacy")}});var require_clone=__commonJS({"../../node_modules/graceful-fs/clone.js"(exports2,module2){"use strict";module2.exports=clone5;var getPrototypeOf2=Object.getPrototypeOf||function(obj){return obj.__proto__};function clone5(obj){if(obj===null||typeof obj!="object")return obj;if(obj instanceof Object)var copy={__proto__:getPrototypeOf2(obj)};else var copy=Object.create(null);return Object.getOwnPropertyNames(obj).forEach(function(key){Object.defineProperty(copy,key,Object.getOwnPropertyDescriptor(obj,key))}),copy}__name(clone5,"clone")}});var require_graceful_fs=__commonJS({"../../node_modules/graceful-fs/graceful-fs.js"(exports2,module2){var fs4=__require("fs"),polyfills3=require_polyfills(),legacy=require_legacy_streams(),clone5=require_clone(),util4=__require("util"),gracefulQueue,previousSymbol;typeof Symbol=="function"&&typeof Symbol.for=="function"?(gracefulQueue=Symbol.for("graceful-fs.queue"),previousSymbol=Symbol.for("graceful-fs.previous")):(gracefulQueue="___graceful-fs.queue",previousSymbol="___graceful-fs.previous");function noop8(){}__name(noop8,"noop");function publishQueue(context,queue2){Object.defineProperty(context,gracefulQueue,{get:__name(function(){return queue2},"get")})}__name(publishQueue,"publishQueue");var debug3=noop8;util4.debuglog?debug3=util4.debuglog("gfs4"):/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&(debug3=__name(function(){var m2=util4.format.apply(util4,arguments);m2="GFS4: "+m2.split(/\n/).join(`
190
190
  GFS4: `),console.error(m2)},"debug"));fs4[gracefulQueue]||(queue=global[gracefulQueue]||[],publishQueue(fs4,queue),fs4.close=(function(fs$close){function close(fd,cb){return fs$close.call(fs4,fd,function(err){err||resetQueue(),typeof cb=="function"&&cb.apply(this,arguments)})}return __name(close,"close"),Object.defineProperty(close,previousSymbol,{value:fs$close}),close})(fs4.close),fs4.closeSync=(function(fs$closeSync){function closeSync3(fd){fs$closeSync.apply(fs4,arguments),resetQueue()}return __name(closeSync3,"closeSync"),Object.defineProperty(closeSync3,previousSymbol,{value:fs$closeSync}),closeSync3})(fs4.closeSync),/\bgfs4\b/i.test(process.env.NODE_DEBUG||"")&&process.on("exit",function(){debug3(fs4[gracefulQueue]),__require("assert").equal(fs4[gracefulQueue].length,0)}));var queue;global[gracefulQueue]||publishQueue(global,fs4[gracefulQueue]);module2.exports=patch(clone5(fs4));process.env.TEST_GRACEFUL_FS_GLOBAL_PATCH&&!fs4.__patched&&(module2.exports=patch(fs4),fs4.__patched=!0);function patch(fs5){polyfills3(fs5),fs5.gracefulify=patch,fs5.createReadStream=createReadStream3,fs5.createWriteStream=createWriteStream3;var fs$readFile=fs5.readFile;fs5.readFile=readFile4;function readFile4(path10,options,cb){return typeof options=="function"&&(cb=options,options=null),go$readFile(path10,options,cb);function go$readFile(path11,options2,cb2,startTime){return fs$readFile(path11,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$readFile,[path11,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments)})}__name(go$readFile,"go$readFile")}__name(readFile4,"readFile");var fs$writeFile=fs5.writeFile;fs5.writeFile=writeFile2;function writeFile2(path10,data,options,cb){return typeof options=="function"&&(cb=options,options=null),go$writeFile(path10,data,options,cb);function go$writeFile(path11,data2,options2,cb2,startTime){return fs$writeFile(path11,data2,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$writeFile,[path11,data2,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments)})}__name(go$writeFile,"go$writeFile")}__name(writeFile2,"writeFile");var fs$appendFile=fs5.appendFile;fs$appendFile&&(fs5.appendFile=appendFile3);function appendFile3(path10,data,options,cb){return typeof options=="function"&&(cb=options,options=null),go$appendFile(path10,data,options,cb);function go$appendFile(path11,data2,options2,cb2,startTime){return fs$appendFile(path11,data2,options2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$appendFile,[path11,data2,options2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments)})}__name(go$appendFile,"go$appendFile")}__name(appendFile3,"appendFile");var fs$copyFile=fs5.copyFile;fs$copyFile&&(fs5.copyFile=copyFile);function copyFile(src,dest,flags,cb){return typeof flags=="function"&&(cb=flags,flags=0),go$copyFile(src,dest,flags,cb);function go$copyFile(src2,dest2,flags2,cb2,startTime){return fs$copyFile(src2,dest2,flags2,function(err){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$copyFile,[src2,dest2,flags2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments)})}__name(go$copyFile,"go$copyFile")}__name(copyFile,"copyFile");var fs$readdir=fs5.readdir;fs5.readdir=readdir3;var noReaddirOptionVersions=/^v[0-5]\./;function readdir3(path10,options,cb){typeof options=="function"&&(cb=options,options=null);var go$readdir=noReaddirOptionVersions.test(process.version)?__name(function(path11,options2,cb2,startTime){return fs$readdir(path11,fs$readdirCallback(path11,options2,cb2,startTime))},"go$readdir"):__name(function(path11,options2,cb2,startTime){return fs$readdir(path11,options2,fs$readdirCallback(path11,options2,cb2,startTime))},"go$readdir");return go$readdir(path10,options,cb);function fs$readdirCallback(path11,options2,cb2,startTime){return function(err,files){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$readdir,[path11,options2,cb2],err,startTime||Date.now(),Date.now()]):(files&&files.sort&&files.sort(),typeof cb2=="function"&&cb2.call(this,err,files))}}}if(__name(readdir3,"readdir"),process.version.substr(0,4)==="v0.8"){var legStreams=legacy(fs5);ReadStream=legStreams.ReadStream,WriteStream=legStreams.WriteStream}var fs$ReadStream=fs5.ReadStream;fs$ReadStream&&(ReadStream.prototype=Object.create(fs$ReadStream.prototype),ReadStream.prototype.open=ReadStream$open);var fs$WriteStream=fs5.WriteStream;fs$WriteStream&&(WriteStream.prototype=Object.create(fs$WriteStream.prototype),WriteStream.prototype.open=WriteStream$open),Object.defineProperty(fs5,"ReadStream",{get:__name(function(){return ReadStream},"get"),set:__name(function(val){ReadStream=val},"set"),enumerable:!0,configurable:!0}),Object.defineProperty(fs5,"WriteStream",{get:__name(function(){return WriteStream},"get"),set:__name(function(val){WriteStream=val},"set"),enumerable:!0,configurable:!0});var FileReadStream=ReadStream;Object.defineProperty(fs5,"FileReadStream",{get:__name(function(){return FileReadStream},"get"),set:__name(function(val){FileReadStream=val},"set"),enumerable:!0,configurable:!0});var FileWriteStream=WriteStream;Object.defineProperty(fs5,"FileWriteStream",{get:__name(function(){return FileWriteStream},"get"),set:__name(function(val){FileWriteStream=val},"set"),enumerable:!0,configurable:!0});function ReadStream(path10,options){return this instanceof ReadStream?(fs$ReadStream.apply(this,arguments),this):ReadStream.apply(Object.create(ReadStream.prototype),arguments)}__name(ReadStream,"ReadStream");function ReadStream$open(){var that=this;open2(that.path,that.flags,that.mode,function(err,fd){err?(that.autoClose&&that.destroy(),that.emit("error",err)):(that.fd=fd,that.emit("open",fd),that.read())})}__name(ReadStream$open,"ReadStream$open");function WriteStream(path10,options){return this instanceof WriteStream?(fs$WriteStream.apply(this,arguments),this):WriteStream.apply(Object.create(WriteStream.prototype),arguments)}__name(WriteStream,"WriteStream");function WriteStream$open(){var that=this;open2(that.path,that.flags,that.mode,function(err,fd){err?(that.destroy(),that.emit("error",err)):(that.fd=fd,that.emit("open",fd))})}__name(WriteStream$open,"WriteStream$open");function createReadStream3(path10,options){return new fs5.ReadStream(path10,options)}__name(createReadStream3,"createReadStream");function createWriteStream3(path10,options){return new fs5.WriteStream(path10,options)}__name(createWriteStream3,"createWriteStream");var fs$open=fs5.open;fs5.open=open2;function open2(path10,flags,mode,cb){return typeof mode=="function"&&(cb=mode,mode=null),go$open(path10,flags,mode,cb);function go$open(path11,flags2,mode2,cb2,startTime){return fs$open(path11,flags2,mode2,function(err,fd){err&&(err.code==="EMFILE"||err.code==="ENFILE")?enqueue([go$open,[path11,flags2,mode2,cb2],err,startTime||Date.now(),Date.now()]):typeof cb2=="function"&&cb2.apply(this,arguments)})}__name(go$open,"go$open")}return __name(open2,"open"),fs5}__name(patch,"patch");function enqueue(elem){debug3("ENQUEUE",elem[0].name,elem[1]),fs4[gracefulQueue].push(elem),retry()}__name(enqueue,"enqueue");var retryTimer;function resetQueue(){for(var now2=Date.now(),i3=0;i3<fs4[gracefulQueue].length;++i3)fs4[gracefulQueue][i3].length>2&&(fs4[gracefulQueue][i3][3]=now2,fs4[gracefulQueue][i3][4]=now2);retry()}__name(resetQueue,"resetQueue");function retry(){if(clearTimeout(retryTimer),retryTimer=void 0,fs4[gracefulQueue].length!==0){var elem=fs4[gracefulQueue].shift(),fn=elem[0],args=elem[1],err=elem[2],startTime=elem[3],lastTime=elem[4];if(startTime===void 0)debug3("RETRY",fn.name,args),fn.apply(null,args);else if(Date.now()-startTime>=6e4){debug3("TIMEOUT",fn.name,args);var cb=args.pop();typeof cb=="function"&&cb.call(null,err)}else{var sinceAttempt=Date.now()-lastTime,sinceStart=Math.max(lastTime-startTime,1),desiredDelay=Math.min(sinceStart*1.2,100);sinceAttempt>=desiredDelay?(debug3("RETRY",fn.name,args),fn.apply(null,args.concat([startTime]))):fs4[gracefulQueue].push(elem)}retryTimer===void 0&&(retryTimer=setTimeout(retry,0))}}__name(retry,"retry")}});var require_retry_operation=__commonJS({"../../node_modules/retry/lib/retry_operation.js"(exports2,module2){function RetryOperation(timeouts,options){typeof options=="boolean"&&(options={forever:options}),this._originalTimeouts=JSON.parse(JSON.stringify(timeouts)),this._timeouts=timeouts,this._options=options||{},this._maxRetryTime=options&&options.maxRetryTime||1/0,this._fn=null,this._errors=[],this._attempts=1,this._operationTimeout=null,this._operationTimeoutCb=null,this._timeout=null,this._operationStart=null,this._options.forever&&(this._cachedTimeouts=this._timeouts.slice(0))}__name(RetryOperation,"RetryOperation");module2.exports=RetryOperation;RetryOperation.prototype.reset=function(){this._attempts=1,this._timeouts=this._originalTimeouts};RetryOperation.prototype.stop=function(){this._timeout&&clearTimeout(this._timeout),this._timeouts=[],this._cachedTimeouts=null};RetryOperation.prototype.retry=function(err){if(this._timeout&&clearTimeout(this._timeout),!err)return!1;var currentTime=new Date().getTime();if(err&&currentTime-this._operationStart>=this._maxRetryTime)return this._errors.unshift(new Error("RetryOperation timeout occurred")),!1;this._errors.push(err);var timeout=this._timeouts.shift();if(timeout===void 0)if(this._cachedTimeouts)this._errors.splice(this._errors.length-1,this._errors.length),this._timeouts=this._cachedTimeouts.slice(0),timeout=this._timeouts.shift();else return!1;var self2=this,timer=setTimeout(function(){self2._attempts++,self2._operationTimeoutCb&&(self2._timeout=setTimeout(function(){self2._operationTimeoutCb(self2._attempts)},self2._operationTimeout),self2._options.unref&&self2._timeout.unref()),self2._fn(self2._attempts)},timeout);return this._options.unref&&timer.unref(),!0};RetryOperation.prototype.attempt=function(fn,timeoutOps){this._fn=fn,timeoutOps&&(timeoutOps.timeout&&(this._operationTimeout=timeoutOps.timeout),timeoutOps.cb&&(this._operationTimeoutCb=timeoutOps.cb));var self2=this;this._operationTimeoutCb&&(this._timeout=setTimeout(function(){self2._operationTimeoutCb()},self2._operationTimeout)),this._operationStart=new Date().getTime(),this._fn(this._attempts)};RetryOperation.prototype.try=function(fn){console.log("Using RetryOperation.try() is deprecated"),this.attempt(fn)};RetryOperation.prototype.start=function(fn){console.log("Using RetryOperation.start() is deprecated"),this.attempt(fn)};RetryOperation.prototype.start=RetryOperation.prototype.try;RetryOperation.prototype.errors=function(){return this._errors};RetryOperation.prototype.attempts=function(){return this._attempts};RetryOperation.prototype.mainError=function(){if(this._errors.length===0)return null;for(var counts={},mainError=null,mainErrorCount=0,i3=0;i3<this._errors.length;i3++){var error40=this._errors[i3],message=error40.message,count3=(counts[message]||0)+1;counts[message]=count3,count3>=mainErrorCount&&(mainError=error40,mainErrorCount=count3)}return mainError}}});var require_retry=__commonJS({"../../node_modules/retry/lib/retry.js"(exports2){var RetryOperation=require_retry_operation();exports2.operation=function(options){var timeouts=exports2.timeouts(options);return new RetryOperation(timeouts,{forever:options&&options.forever,unref:options&&options.unref,maxRetryTime:options&&options.maxRetryTime})};exports2.timeouts=function(options){if(options instanceof Array)return[].concat(options);var opts={retries:10,factor:2,minTimeout:1*1e3,maxTimeout:1/0,randomize:!1};for(var key in options)opts[key]=options[key];if(opts.minTimeout>opts.maxTimeout)throw new Error("minTimeout is greater than maxTimeout");for(var timeouts=[],i3=0;i3<opts.retries;i3++)timeouts.push(this.createTimeout(i3,opts));return options&&options.forever&&!timeouts.length&&timeouts.push(this.createTimeout(i3,opts)),timeouts.sort(function(a2,b){return a2-b}),timeouts};exports2.createTimeout=function(attempt2,opts){var random2=opts.randomize?Math.random()+1:1,timeout=Math.round(random2*opts.minTimeout*Math.pow(opts.factor,attempt2));return timeout=Math.min(timeout,opts.maxTimeout),timeout};exports2.wrap=function(obj,options,methods){if(options instanceof Array&&(methods=options,options=null),!methods){methods=[];for(var key in obj)typeof obj[key]=="function"&&methods.push(key)}for(var i3=0;i3<methods.length;i3++){var method2=methods[i3],original=obj[method2];obj[method2]=__name(function(original2){var op=exports2.operation(options),args=Array.prototype.slice.call(arguments,1),callback=args.pop();args.push(function(err){op.retry(err)||(err&&(arguments[0]=op.mainError()),callback.apply(this,arguments))}),op.attempt(function(){original2.apply(obj,args)})},"retryWrapper").bind(obj,original),obj[method2].options=options}}}});var require_retry2=__commonJS({"../../node_modules/retry/index.js"(exports2,module2){module2.exports=require_retry()}});var require_signals=__commonJS({"../../node_modules/proper-lockfile/node_modules/signal-exit/signals.js"(exports2,module2){module2.exports=["SIGABRT","SIGALRM","SIGHUP","SIGINT","SIGTERM"];process.platform!=="win32"&&module2.exports.push("SIGVTALRM","SIGXCPU","SIGXFSZ","SIGUSR2","SIGTRAP","SIGSYS","SIGQUIT","SIGIOT");process.platform==="linux"&&module2.exports.push("SIGIO","SIGPOLL","SIGPWR","SIGSTKFLT","SIGUNUSED")}});var require_signal_exit=__commonJS({"../../node_modules/proper-lockfile/node_modules/signal-exit/index.js"(exports2,module2){var process13=global.process,processOk2=__name(function(process14){return process14&&typeof process14=="object"&&typeof process14.removeListener=="function"&&typeof process14.emit=="function"&&typeof process14.reallyExit=="function"&&typeof process14.listeners=="function"&&typeof process14.kill=="function"&&typeof process14.pid=="number"&&typeof process14.on=="function"},"processOk");processOk2(process13)?(assert3=__require("assert"),signals2=require_signals(),isWin=/^win/i.test(process13.platform),EE=__require("events"),typeof EE!="function"&&(EE=EE.EventEmitter),process13.__signal_exit_emitter__?emitter=process13.__signal_exit_emitter__:(emitter=process13.__signal_exit_emitter__=new EE,emitter.count=0,emitter.emitted={}),emitter.infinite||(emitter.setMaxListeners(1/0),emitter.infinite=!0),module2.exports=function(cb,opts){if(!processOk2(global.process))return function(){};assert3.equal(typeof cb,"function","a callback must be provided for exit handler"),loaded===!1&&load2();var ev="exit";opts&&opts.alwaysLast&&(ev="afterexit");var remove2=__name(function(){emitter.removeListener(ev,cb),emitter.listeners("exit").length===0&&emitter.listeners("afterexit").length===0&&unload2()},"remove");return emitter.on(ev,cb),remove2},unload2=__name(function(){!loaded||!processOk2(global.process)||(loaded=!1,signals2.forEach(function(sig){try{process13.removeListener(sig,sigListeners[sig])}catch{}}),process13.emit=originalProcessEmit,process13.reallyExit=originalProcessReallyExit,emitter.count-=1)},"unload"),module2.exports.unload=unload2,emit=__name(function(event,code,signal){emitter.emitted[event]||(emitter.emitted[event]=!0,emitter.emit(event,code,signal))},"emit"),sigListeners={},signals2.forEach(function(sig){sigListeners[sig]=__name(function(){if(processOk2(global.process)){var listeners=process13.listeners(sig);listeners.length===emitter.count&&(unload2(),emit("exit",null,sig),emit("afterexit",null,sig),isWin&&sig==="SIGHUP"&&(sig="SIGINT"),process13.kill(process13.pid,sig))}},"listener")}),module2.exports.signals=function(){return signals2},loaded=!1,load2=__name(function(){loaded||!processOk2(global.process)||(loaded=!0,emitter.count+=1,signals2=signals2.filter(function(sig){try{return process13.on(sig,sigListeners[sig]),!0}catch{return!1}}),process13.emit=processEmit,process13.reallyExit=processReallyExit)},"load"),module2.exports.load=load2,originalProcessReallyExit=process13.reallyExit,processReallyExit=__name(function(code){processOk2(global.process)&&(process13.exitCode=code||0,emit("exit",process13.exitCode,null),emit("afterexit",process13.exitCode,null),originalProcessReallyExit.call(process13,process13.exitCode))},"processReallyExit"),originalProcessEmit=process13.emit,processEmit=__name(function(ev,arg){if(ev==="exit"&&processOk2(global.process)){arg!==void 0&&(process13.exitCode=arg);var ret=originalProcessEmit.apply(this,arguments);return emit("exit",process13.exitCode,null),emit("afterexit",process13.exitCode,null),ret}else return originalProcessEmit.apply(this,arguments)},"processEmit")):module2.exports=function(){return function(){}};var assert3,signals2,isWin,EE,emitter,unload2,emit,sigListeners,loaded,load2,originalProcessReallyExit,processReallyExit,originalProcessEmit,processEmit}});var require_mtime_precision=__commonJS({"../../node_modules/proper-lockfile/lib/mtime-precision.js"(exports2,module2){"use strict";var cacheSymbol=Symbol();function probe(file2,fs4,callback){let cachedPrecision=fs4[cacheSymbol];if(cachedPrecision)return fs4.stat(file2,(err,stat4)=>{if(err)return callback(err);callback(null,stat4.mtime,cachedPrecision)});let mtime=new Date(Math.ceil(Date.now()/1e3)*1e3+5);fs4.utimes(file2,mtime,mtime,err=>{if(err)return callback(err);fs4.stat(file2,(err2,stat4)=>{if(err2)return callback(err2);let precision=stat4.mtime.getTime()%1e3===0?"s":"ms";Object.defineProperty(fs4,cacheSymbol,{value:precision}),callback(null,stat4.mtime,precision)})})}__name(probe,"probe");function getMtime(precision){let now2=Date.now();return precision==="s"&&(now2=Math.ceil(now2/1e3)*1e3),new Date(now2)}__name(getMtime,"getMtime");module2.exports.probe=probe;module2.exports.getMtime=getMtime}});var require_lockfile=__commonJS({"../../node_modules/proper-lockfile/lib/lockfile.js"(exports2,module2){"use strict";var path10=__require("path"),fs4=require_graceful_fs(),retry=require_retry2(),onExit2=require_signal_exit(),mtimePrecision=require_mtime_precision(),locks={};function getLockFile(file2,options){return options.lockfilePath||`${file2}.lock`}__name(getLockFile,"getLockFile");function resolveCanonicalPath(file2,options,callback){if(!options.realpath)return callback(null,path10.resolve(file2));options.fs.realpath(file2,callback)}__name(resolveCanonicalPath,"resolveCanonicalPath");function acquireLock(file2,options,callback){let lockfilePath=getLockFile(file2,options);options.fs.mkdir(lockfilePath,err=>{if(!err)return mtimePrecision.probe(lockfilePath,options.fs,(err2,mtime,mtimePrecision2)=>{if(err2)return options.fs.rmdir(lockfilePath,()=>{}),callback(err2);callback(null,mtime,mtimePrecision2)});if(err.code!=="EEXIST")return callback(err);if(options.stale<=0)return callback(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:file2}));options.fs.stat(lockfilePath,(err2,stat4)=>{if(err2)return err2.code==="ENOENT"?acquireLock(file2,{...options,stale:0},callback):callback(err2);if(!isLockStale(stat4,options))return callback(Object.assign(new Error("Lock file is already being held"),{code:"ELOCKED",file:file2}));removeLock(file2,options,err3=>{if(err3)return callback(err3);acquireLock(file2,{...options,stale:0},callback)})})})}__name(acquireLock,"acquireLock");function isLockStale(stat4,options){return stat4.mtime.getTime()<Date.now()-options.stale}__name(isLockStale,"isLockStale");function removeLock(file2,options,callback){options.fs.rmdir(getLockFile(file2,options),err=>{if(err&&err.code!=="ENOENT")return callback(err);callback()})}__name(removeLock,"removeLock");function updateLock(file2,options){let lock3=locks[file2];lock3.updateTimeout||(lock3.updateDelay=lock3.updateDelay||options.update,lock3.updateTimeout=setTimeout(()=>{lock3.updateTimeout=null,options.fs.stat(lock3.lockfilePath,(err,stat4)=>{let isOverThreshold=lock3.lastUpdate+options.stale<Date.now();if(err)return err.code==="ENOENT"||isOverThreshold?setLockAsCompromised(file2,lock3,Object.assign(err,{code:"ECOMPROMISED"})):(lock3.updateDelay=1e3,updateLock(file2,options));if(!(lock3.mtime.getTime()===stat4.mtime.getTime()))return setLockAsCompromised(file2,lock3,Object.assign(new Error("Unable to update lock within the stale threshold"),{code:"ECOMPROMISED"}));let mtime=mtimePrecision.getMtime(lock3.mtimePrecision);options.fs.utimes(lock3.lockfilePath,mtime,mtime,err2=>{let isOverThreshold2=lock3.lastUpdate+options.stale<Date.now();if(!lock3.released){if(err2)return err2.code==="ENOENT"||isOverThreshold2?setLockAsCompromised(file2,lock3,Object.assign(err2,{code:"ECOMPROMISED"})):(lock3.updateDelay=1e3,updateLock(file2,options));lock3.mtime=mtime,lock3.lastUpdate=Date.now(),lock3.updateDelay=null,updateLock(file2,options)}})})},lock3.updateDelay),lock3.updateTimeout.unref&&lock3.updateTimeout.unref())}__name(updateLock,"updateLock");function setLockAsCompromised(file2,lock3,err){lock3.released=!0,lock3.updateTimeout&&clearTimeout(lock3.updateTimeout),locks[file2]===lock3&&delete locks[file2],lock3.options.onCompromised(err)}__name(setLockAsCompromised,"setLockAsCompromised");function lock2(file2,options,callback){options={stale:1e4,update:null,realpath:!0,retries:0,fs:fs4,onCompromised:__name(err=>{throw err},"onCompromised"),...options},options.retries=options.retries||0,options.retries=typeof options.retries=="number"?{retries:options.retries}:options.retries,options.stale=Math.max(options.stale||0,2e3),options.update=options.update==null?options.stale/2:options.update||0,options.update=Math.max(Math.min(options.update,options.stale/2),1e3),resolveCanonicalPath(file2,options,(err,file3)=>{if(err)return callback(err);let operation=retry.operation(options.retries);operation.attempt(()=>{acquireLock(file3,options,(err2,mtime,mtimePrecision2)=>{if(operation.retry(err2))return;if(err2)return callback(operation.mainError());let lock3=locks[file3]={lockfilePath:getLockFile(file3,options),mtime,mtimePrecision:mtimePrecision2,options,lastUpdate:Date.now()};updateLock(file3,options),callback(null,releasedCallback=>{if(lock3.released)return releasedCallback&&releasedCallback(Object.assign(new Error("Lock is already released"),{code:"ERELEASED"}));unlock(file3,{...options,realpath:!1},releasedCallback)})})})})}__name(lock2,"lock");function unlock(file2,options,callback){options={fs:fs4,realpath:!0,...options},resolveCanonicalPath(file2,options,(err,file3)=>{if(err)return callback(err);let lock3=locks[file3];if(!lock3)return callback(Object.assign(new Error("Lock is not acquired/owned by you"),{code:"ENOTACQUIRED"}));lock3.updateTimeout&&clearTimeout(lock3.updateTimeout),lock3.released=!0,delete locks[file3],removeLock(file3,options,callback)})}__name(unlock,"unlock");function check2(file2,options,callback){options={stale:1e4,realpath:!0,fs:fs4,...options},options.stale=Math.max(options.stale||0,2e3),resolveCanonicalPath(file2,options,(err,file3)=>{if(err)return callback(err);options.fs.stat(getLockFile(file3,options),(err2,stat4)=>err2?err2.code==="ENOENT"?callback(null,!1):callback(err2):callback(null,!isLockStale(stat4,options)))})}__name(check2,"check");function getLocks(){return locks}__name(getLocks,"getLocks");onExit2(()=>{for(let file2 in locks){let options=locks[file2].options;try{options.fs.rmdirSync(getLockFile(file2,options))}catch{}}});module2.exports.lock=lock2;module2.exports.unlock=unlock;module2.exports.check=check2;module2.exports.getLocks=getLocks}});var require_adapter=__commonJS({"../../node_modules/proper-lockfile/lib/adapter.js"(exports2,module2){"use strict";var fs4=require_graceful_fs();function createSyncFs(fs5){let methods=["mkdir","realpath","stat","rmdir","utimes"],newFs={...fs5};return methods.forEach(method2=>{newFs[method2]=(...args)=>{let callback=args.pop(),ret;try{ret=fs5[`${method2}Sync`](...args)}catch(err){return callback(err)}callback(null,ret)}}),newFs}__name(createSyncFs,"createSyncFs");function toPromise(method2){return(...args)=>new Promise((resolve9,reject2)=>{args.push((err,result2)=>{err?reject2(err):resolve9(result2)}),method2(...args)})}__name(toPromise,"toPromise");function toSync(method2){return(...args)=>{let err,result2;if(args.push((_err,_result)=>{err=_err,result2=_result}),method2(...args),err)throw err;return result2}}__name(toSync,"toSync");function toSyncOptions(options){if(options={...options},options.fs=createSyncFs(options.fs||fs4),typeof options.retries=="number"&&options.retries>0||options.retries&&typeof options.retries.retries=="number"&&options.retries.retries>0)throw Object.assign(new Error("Cannot use retries with the sync api"),{code:"ESYNC"});return options}__name(toSyncOptions,"toSyncOptions");module2.exports={toPromise,toSync,toSyncOptions}}});var require_proper_lockfile=__commonJS({"../../node_modules/proper-lockfile/index.js"(exports2,module2){"use strict";var lockfile=require_lockfile(),{toPromise,toSync,toSyncOptions}=require_adapter();async function lock2(file2,options){let release=await toPromise(lockfile.lock)(file2,options);return toPromise(release)}__name(lock2,"lock");function lockSync2(file2,options){let release=toSync(lockfile.lock)(file2,toSyncOptions(options));return toSync(release)}__name(lockSync2,"lockSync");function unlock(file2,options){return toPromise(lockfile.unlock)(file2,options)}__name(unlock,"unlock");function unlockSync(file2,options){return toSync(lockfile.unlock)(file2,toSyncOptions(options))}__name(unlockSync,"unlockSync");function check2(file2,options){return toPromise(lockfile.check)(file2,options)}__name(check2,"check");function checkSync(file2,options){return toSync(lockfile.check)(file2,toSyncOptions(options))}__name(checkSync,"checkSync");module2.exports=lock2;module2.exports.lock=lock2;module2.exports.unlock=unlock;module2.exports.lockSync=lockSync2;module2.exports.unlockSync=unlockSync;module2.exports.check=check2;module2.exports.checkSync=checkSync}});function getLockfile(){return _lockfile||(_lockfile=require_proper_lockfile()),_lockfile}function lockSync(file2,options){return getLockfile().lockSync(file2,options)}var _lockfile,init_lockfile=__esm({"src/utils/lockfile.ts"(){__name(getLockfile,"getLockfile");__name(lockSync,"lockSync")}});function getLegacyApiKeyPrefetchResult(){return legacyApiKeyPrefetch}var legacyApiKeyPrefetch,init_keychainPrefetch=__esm({"src/utils/secureStorage/keychainPrefetch.ts"(){init_envUtils();init_macOsKeychainHelpers();legacyApiKeyPrefetch=null;__name(getLegacyApiKeyPrefetchResult,"getLegacyApiKeyPrefetchResult")}});function sleep2(ms,signal,opts){return new Promise((resolve9,reject2)=>{if(signal?.aborted){opts?.throwOnAbort||opts?.abortError?reject2(opts.abortError?.()??new Error("aborted")):resolve9();return}let timer=setTimeout((signal2,onAbort2,resolve10)=>{signal2?.removeEventListener("abort",onAbort2),resolve10()},ms,signal,onAbort,resolve9);function onAbort(){clearTimeout(timer),opts?.throwOnAbort||opts?.abortError?reject2(opts.abortError?.()??new Error("aborted")):resolve9()}__name(onAbort,"onAbort"),signal?.addEventListener("abort",onAbort,{once:!0}),opts?.unref&&timer.unref()})}var init_sleep2=__esm({"src/utils/sleep.ts"(){__name(sleep2,"sleep")}});var init_toolSchemaCache=__esm({"src/utils/toolSchemaCache.ts"(){}});var require_extend=__commonJS({"../../node_modules/extend/index.js"(exports2,module2){"use strict";var hasOwn2=Object.prototype.hasOwnProperty,toStr=Object.prototype.toString,defineProperty2=Object.defineProperty,gOPD=Object.getOwnPropertyDescriptor,isArray4=__name(function(arr){return typeof Array.isArray=="function"?Array.isArray(arr):toStr.call(arr)==="[object Array]"},"isArray"),isPlainObject5=__name(function(obj){if(!obj||toStr.call(obj)!=="[object Object]")return!1;var hasOwnConstructor=hasOwn2.call(obj,"constructor"),hasIsPrototypeOf=obj.constructor&&obj.constructor.prototype&&hasOwn2.call(obj.constructor.prototype,"isPrototypeOf");if(obj.constructor&&!hasOwnConstructor&&!hasIsPrototypeOf)return!1;var key;for(key in obj);return typeof key>"u"||hasOwn2.call(obj,key)},"isPlainObject"),setProperty2=__name(function(target,options){defineProperty2&&options.name==="__proto__"?defineProperty2(target,options.name,{enumerable:!0,configurable:!0,value:options.newValue,writable:!0}):target[options.name]=options.newValue},"setProperty"),getProperty=__name(function(obj,name){if(name==="__proto__")if(hasOwn2.call(obj,name)){if(gOPD)return gOPD(obj,name).value}else return;return obj[name]},"getProperty");module2.exports=__name(function extend3(){var options,name,src,copy,copyIsArray,clone5,target=arguments[0],i3=1,length=arguments.length,deep=!1;for(typeof target=="boolean"&&(deep=target,target=arguments[1]||{},i3=2),(target==null||typeof target!="object"&&typeof target!="function")&&(target={});i3<length;++i3)if(options=arguments[i3],options!=null)for(name in options)src=getProperty(target,name),copy=getProperty(options,name),target!==copy&&(deep&&copy&&(isPlainObject5(copy)||(copyIsArray=isArray4(copy)))?(copyIsArray?(copyIsArray=!1,clone5=src&&isArray4(src)?src:[]):clone5=src&&isPlainObject5(src)?src:{},setProperty2(target,{name,newValue:extend3(deep,clone5,copy)})):typeof copy<"u"&&setProperty2(target,{name,newValue:copy}));return target},"extend")}});var require_package=__commonJS({"../../node_modules/gaxios/package.json"(exports2,module2){module2.exports={name:"gaxios",version:"7.2.0",description:"A simple common HTTP client specifically for Google APIs and services.",main:"build/cjs/src/index.js",types:"build/cjs/src/index.d.ts",files:["build/"],exports:{".":{import:{types:"./build/esm/src/index.d.ts",default:"./build/esm/src/index.js"},require:{types:"./build/cjs/src/index.d.ts",default:"./build/cjs/src/index.js"}}},scripts:{lint:"gts check --no-inline-config",test:"c8 mocha build/esm/test","presystem-test":"npm run compile","system-test":"mocha build/esm/system-test --timeout 80000",compile:"tsc -b ./tsconfig.json ./tsconfig.cjs.json && node utils/enable-esm.mjs",fix:"gts fix",prepare:"npm run compile",pretest:"npm run compile",webpack:"webpack","prebrowser-test":"npm run compile","browser-test":"node build/browser-test/browser-test-runner.js",docs:"jsdoc -c .jsdoc.js","samples-test":"cd samples/ && npm link ../ && npm test && cd ../",prelint:"cd samples; npm link ../; npm install",clean:"gts clean"},repository:{type:"git",directory:"core/packages/gaxios",url:"https://github.com/googleapis/google-cloud-node.git"},keywords:["google"],engines:{node:">=18"},author:"Google, LLC",license:"Apache-2.0",devDependencies:{"@babel/plugin-proposal-private-methods":"^7.18.6","@types/cors":"^2.8.6","@types/express":"^5.0.0","@types/extend":"^3.0.1","@types/mocha":"^10.0.10","@types/multiparty":"4.2.1","@types/mv":"^2.1.0","@types/ncp":"^2.0.8","@types/node":"^24.0.0","@types/sinon":"^21.0.0","@types/tmp":"^0.2.6",assert:"^2.0.0",browserify:"^17.0.0",c8:"^10.1.3",cors:"^2.8.5",express:"^5.0.0",gts:"^6.0.2","is-docker":"^3.0.0",jsdoc:"^4.0.4","jsdoc-fresh":"^5.0.0","jsdoc-region-tag":"^4.0.0",karma:"^6.0.0","karma-chrome-launcher":"^3.0.0","karma-coverage":"^2.0.0","karma-firefox-launcher":"^2.0.0","karma-mocha":"^2.0.0","karma-remap-coverage":"^0.1.5","karma-sourcemap-loader":"^0.4.0","karma-webpack":"^5.0.1",mocha:"^11.1.0",multiparty:"^4.2.1",mv:"^2.1.1",ncp:"^2.0.0",nock:"14.0.5","null-loader":"^4.0.1","pack-n-play":"^4.0.0",puppeteer:"^24.0.0",sinon:"21.0.3","stream-browserify":"^3.0.0",tmp:"0.2.6","ts-loader":"^9.5.2",typescript:"5.8.3","undici-types":"^7.24.1",webpack:"^5.97.1","webpack-cli":"^6.0.1"},dependencies:{extend:"^3.0.2","https-proxy-agent":"^7.0.1","node-fetch":"^3.3.2"},homepage:"https://github.com/googleapis/google-cloud-node/tree/main/core/packages/gaxios"}}});var require_util=__commonJS({"../../node_modules/gaxios/build/cjs/src/util.cjs"(exports2,module2){"use strict";var pkg=require_package();module2.exports={pkg}}});var require_common2=__commonJS({"../../node_modules/gaxios/build/cjs/src/common.js"(exports2){"use strict";var __importDefault=exports2&&exports2.__importDefault||function(mod){return mod&&mod.__esModule?mod:{default:mod}};Object.defineProperty(exports2,"__esModule",{value:!0});exports2.GaxiosError=exports2.GAXIOS_ERROR_SYMBOL=void 0;exports2.defaultErrorRedactor=defaultErrorRedactor;var extend_1=__importDefault(require_extend()),util_cjs_1=__importDefault(require_util()),pkg=util_cjs_1.default.pkg;exports2.GAXIOS_ERROR_SYMBOL=Symbol.for(`${pkg.name}-gaxios-error`);var GaxiosError=class _GaxiosError extends Error{static{__name(this,"GaxiosError")}config;response;code;status;error;[exports2.GAXIOS_ERROR_SYMBOL]=pkg.version;static[Symbol.hasInstance](instance){return instance&&typeof instance=="object"&&exports2.GAXIOS_ERROR_SYMBOL in instance&&instance[exports2.GAXIOS_ERROR_SYMBOL]===pkg.version?!0:Function.prototype[Symbol.hasInstance].call(_GaxiosError,instance)}constructor(message,config2,response,cause){if(super(message,{cause}),this.config=config2,this.response=response,this.error=cause instanceof Error?cause:void 0,this.config=(0,extend_1.default)(!0,{},config2),this.response&&(this.response.config=(0,extend_1.default)(!0,{},this.response.config)),this.response){try{this.response.data=translateData(this.config.responseType,this.response?.bodyUsed?this.response?.data:void 0)}catch{}this.status=this.response.status}cause instanceof DOMException?this.code=cause.name:cause&&typeof cause=="object"&&"code"in cause&&(typeof cause.code=="string"||typeof cause.code=="number")&&(this.code=cause.code)}static extractAPIErrorFromResponse(res,defaultErrorMessage="The request failed"){let message=defaultErrorMessage;if(typeof res.data=="string"&&(message=res.data),res.data&&typeof res.data=="object"&&"error"in res.data&&res.data.error&&!res.ok){if(typeof res.data.error=="string")return{message:res.data.error,code:res.status,status:res.statusText};if(typeof res.data.error=="object"){message="message"in res.data.error&&typeof res.data.error.message=="string"?res.data.error.message:message;let status="status"in res.data.error&&typeof res.data.error.status=="string"?res.data.error.status:res.statusText,code="code"in res.data.error&&typeof res.data.error.code=="number"?res.data.error.code:res.status;if("errors"in res.data.error&&Array.isArray(res.data.error.errors)){let errorMessages=[];for(let e2 of res.data.error.errors)typeof e2=="object"&&"message"in e2&&typeof e2.message=="string"&&errorMessages.push(e2.message);return Object.assign({message:errorMessages.join(`