@capgo/cli 7.70.0 → 7.71.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +2 -2
- package/dist/package.json +1 -1
- package/dist/src/sdk.js +2 -2
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -134,7 +134,7 @@ tell application "System Events" to get value of property list item "CFBundleNam
|
|
|
134
134
|
|| ${$} === "boolean" || ${J} === null`).assign(G,P0._`[${J}]`)}}}function uW0({gen:D,parentData:Y,parentDataProperty:X},Q){D.if(P0._`${Y} !== undefined`,()=>D.assign(P0._`${Y}[${X}]`,Q))}function uz(D,Y,X,Q=T7.Correct){let J=Q===T7.Correct?P0.operators.EQ:P0.operators.NEQ,W;switch(D){case"null":return P0._`${Y} ${J} null`;case"array":W=P0._`Array.isArray(${Y})`;break;case"object":W=P0._`${Y} && typeof ${Y} == "object" && !Array.isArray(${Y})`;break;case"integer":W=$(P0._`!(${Y} % 1) && !isNaN(${Y})`);break;case"number":W=$();break;default:return P0._`typeof ${Y} ${J} ${D}`}return Q===T7.Correct?W:(0,P0.not)(W);function $(G=P0.nil){return(0,P0.and)(P0._`typeof ${Y} == "number"`,G,X?P0._`isFinite(${Y})`:P0.nil)}}Yk.checkDataType=uz;function mz(D,Y,X,Q){if(D.length===1)return uz(D[0],Y,X,Q);let J,W=(0,tb.toHash)(D);if(W.array&&W.object){let $=P0._`typeof ${Y} != "object"`;J=W.null?$:P0._`!${Y} || ${$}`,delete W.null,delete W.array,delete W.object}else J=P0.nil;if(W.number)delete W.integer;for(let $ in W)J=(0,P0.and)(J,uz($,Y,X,Q));return J}Yk.checkDataTypes=mz;var mW0={message:({schema:D})=>`must be ${D}`,params:({schema:D,schemaValue:Y})=>typeof D=="string"?P0._`{type: ${D}}`:P0._`{type: ${Y}}`};function cz(D){let Y=cW0(D);(0,vW0.reportError)(Y,mW0)}Yk.reportTypeError=cz;function cW0(D){let{gen:Y,data:X,schema:Q}=D,J=(0,tb.schemaRefOrVal)(D,Q,"type");return{gen:Y,keyword:"type",data:X,schema:Q.type,schemaCode:J,schemaValue:J,parentSchema:Q,params:{},it:D}}});var $k=T((Jk)=>{Object.defineProperty(Jk,"__esModule",{value:!0});Jk.assignDefaults=void 0;var S7=x0(),aW0=p0();function oW0(D,Y){let{properties:X,items:Q}=D.schema;if(Y==="object"&&X)for(let J in X)Qk(D,J,X[J].default);else if(Y==="array"&&Array.isArray(Q))Q.forEach((J,W)=>Qk(D,W,J.default))}Jk.assignDefaults=oW0;function Qk(D,Y,X){let{gen:Q,compositeRule:J,data:W,opts:$}=D;if(X===void 0)return;let G=S7._`${W}${(0,S7.getProperty)(Y)}`;if(J){(0,aW0.checkStrictMode)(D,`default is ignored for: ${G}`);return}let B=S7._`${G} === undefined`;if($.useDefaults==="empty")B=S7._`${B} || ${G} === null || ${G} === ""`;Q.if(B,S7._`${G} = ${(0,S7.stringify)(X)}`)}});var A6=T((Hk)=>{Object.defineProperty(Hk,"__esModule",{value:!0});Hk.validateUnion=Hk.validateArray=Hk.usePattern=Hk.callValidateCode=Hk.schemaProperties=Hk.allSchemaProperties=Hk.noPropertyInData=Hk.propertyInData=Hk.isOwnProperty=Hk.hasPropFunc=Hk.reportMissingProp=Hk.checkMissingProp=Hk.checkReportMissingProp=void 0;var U1=x0(),lz=p0(),AD=C9(),sW0=p0();function tW0(D,Y){let{gen:X,data:Q,it:J}=D;X.if(pz(X,Q,Y,J.opts.ownProperties),()=>{D.setParams({missingProperty:U1._`${Y}`},!0),D.error()})}Hk.checkReportMissingProp=tW0;function eW0({gen:D,data:Y,it:{opts:X}},Q,J){return(0,U1.or)(...Q.map((W)=>(0,U1.and)(pz(D,Y,W,X.ownProperties),U1._`${J} = ${W}`)))}Hk.checkMissingProp=eW0;function D$0(D,Y){D.setParams({missingProperty:Y},!0),D.error()}Hk.reportMissingProp=D$0;function Gk(D){return D.scopeValue("func",{ref:Object.prototype.hasOwnProperty,code:U1._`Object.prototype.hasOwnProperty`})}Hk.hasPropFunc=Gk;function dz(D,Y,X){return U1._`${Gk(D)}.call(${Y}, ${X})`}Hk.isOwnProperty=dz;function Y$0(D,Y,X,Q){let J=U1._`${Y}${(0,U1.getProperty)(X)} !== undefined`;return Q?U1._`${J} && ${dz(D,Y,X)}`:J}Hk.propertyInData=Y$0;function pz(D,Y,X,Q){let J=U1._`${Y}${(0,U1.getProperty)(X)} === undefined`;return Q?(0,U1.or)(J,(0,U1.not)(dz(D,Y,X))):J}Hk.noPropertyInData=pz;function Bk(D){return D?Object.keys(D).filter((Y)=>Y!=="__proto__"):[]}Hk.allSchemaProperties=Bk;function X$0(D,Y){return Bk(Y).filter((X)=>!(0,lz.alwaysValidSchema)(D,Y[X]))}Hk.schemaProperties=X$0;function Q$0({schemaCode:D,data:Y,it:{gen:X,topSchemaRef:Q,schemaPath:J,errorPath:W},it:$},G,B,H){let F=H?U1._`${D}, ${Y}, ${Q}${J}`:Y,K=[[AD.default.instancePath,(0,U1.strConcat)(AD.default.instancePath,W)],[AD.default.parentData,$.parentData],[AD.default.parentDataProperty,$.parentDataProperty],[AD.default.rootData,AD.default.rootData]];if($.opts.dynamicRef)K.push([AD.default.dynamicAnchors,AD.default.dynamicAnchors]);let U=U1._`${F}, ${X.object(...K)}`;return B!==U1.nil?U1._`${G}.call(${B}, ${U})`:U1._`${G}(${U})`}Hk.callValidateCode=Q$0;var J$0=U1._`new RegExp`;function W$0({gen:D,it:{opts:Y}},X){let Q=Y.unicodeRegExp?"u":"",{regExp:J}=Y.code,W=J(X,Q);return D.scopeValue("pattern",{key:W.toString(),ref:W,code:U1._`${J.code==="new RegExp"?J$0:(0,sW0.useFunc)(D,J)}(${X}, ${Q})`})}Hk.usePattern=W$0;function $$0(D){let{gen:Y,data:X,keyword:Q,it:J}=D,W=Y.name("valid");if(J.allErrors){let G=Y.let("valid",!0);return $(()=>Y.assign(G,!1)),G}return Y.var(W,!0),$(()=>Y.break()),W;function $(G){let B=Y.const("len",U1._`${X}.length`);Y.forRange("i",0,B,(H)=>{D.subschema({keyword:Q,dataProp:H,dataPropType:lz.Type.Num},W),Y.if((0,U1.not)(W),G)})}}Hk.validateArray=$$0;function G$0(D){let{gen:Y,schema:X,keyword:Q,it:J}=D;if(!Array.isArray(X))throw Error("ajv implementation error");if(X.some((B)=>(0,lz.alwaysValidSchema)(J,B))&&!J.opts.unevaluated)return;let $=Y.let("valid",!1),G=Y.name("_valid");Y.block(()=>X.forEach((B,H)=>{let F=D.subschema({keyword:Q,schemaProp:H,compositeRule:!0},G);if(Y.assign($,U1._`${$} || ${G}`),!D.mergeValidEvaluated(F,G))Y.if((0,U1.not)($))})),D.result($,()=>D.reset(),()=>D.error(!0))}Hk.validateUnion=G$0});var wk=T((zk)=>{Object.defineProperty(zk,"__esModule",{value:!0});zk.validateKeywordUsage=zk.validSchemaType=zk.funcKeywordCode=zk.macroKeywordCode=void 0;var y8=x0(),S5=C9(),N$0=A6(),A$0=rY();function Z$0(D,Y){let{gen:X,keyword:Q,schema:J,parentSchema:W,it:$}=D,G=Y.macro.call($.self,J,W,$),B=Kk(X,Q,G);if($.opts.validateSchema!==!1)$.self.validateSchema(G,!0);let H=X.name("valid");D.subschema({schema:G,schemaPath:y8.nil,errSchemaPath:`${$.errSchemaPath}/${Q}`,topSchemaRef:B,compositeRule:!0},H),D.pass(H,()=>D.error(!0))}zk.macroKeywordCode=Z$0;function E$0(D,Y){var X;let{gen:Q,keyword:J,schema:W,parentSchema:$,$data:G,it:B}=D;j$0(B,Y);let H=!G&&Y.compile?Y.compile.call(B.self,W,$,B):Y.validate,F=Kk(Q,J,H),K=Q.let("valid");D.block$data(K,U),D.ok((X=Y.valid)!==null&&X!==void 0?X:K);function U(){if(Y.errors===!1){if(V(),Y.modifying)qk(D);L(()=>D.error())}else{let O=Y.async?z():w();if(Y.modifying)qk(D);L(()=>R$0(D,O))}}function z(){let O=Q.let("ruleErrs",null);return Q.try(()=>V(y8._`await `),(A)=>Q.assign(K,!1).if(y8._`${A} instanceof ${B.ValidationError}`,()=>Q.assign(O,y8._`${A}.errors`),()=>Q.throw(A))),O}function w(){let O=y8._`${F}.errors`;return Q.assign(O,null),V(y8.nil),O}function V(O=Y.async?y8._`await `:y8.nil){let A=B.opts.passContext?S5.default.this:S5.default.self,M=!(("compile"in Y)&&!G||Y.schema===!1);Q.assign(K,y8._`${O}${(0,N$0.callValidateCode)(D,F,A,M)}`,Y.modifying)}function L(O){var A;Q.if((0,y8.not)((A=Y.valid)!==null&&A!==void 0?A:K),O)}}zk.funcKeywordCode=E$0;function qk(D){let{gen:Y,data:X,it:Q}=D;Y.if(Q.parentData,()=>Y.assign(X,y8._`${Q.parentData}[${Q.parentDataProperty}]`))}function R$0(D,Y){let{gen:X}=D;X.if(y8._`Array.isArray(${Y})`,()=>{X.assign(S5.default.vErrors,y8._`${S5.default.vErrors} === null ? ${Y} : ${S5.default.vErrors}.concat(${Y})`).assign(S5.default.errors,y8._`${S5.default.vErrors}.length`),(0,A$0.extendErrors)(D)},()=>D.error())}function j$0({schemaEnv:D},Y){if(Y.async&&!D.$async)throw Error("async keyword in sync schema")}function Kk(D,Y,X){if(X===void 0)throw Error(`keyword "${Y}" failed to compile`);return D.scopeValue("keyword",typeof X=="function"?{ref:X}:{ref:X,code:(0,y8.stringify)(X)})}function T$0(D,Y,X=!1){return!Y.length||Y.some((Q)=>Q==="array"?Array.isArray(D):Q==="object"?D&&typeof D=="object"&&!Array.isArray(D):typeof D==Q||X&&typeof D>"u")}zk.validSchemaType=T$0;function S$0({schema:D,opts:Y,self:X,errSchemaPath:Q},J,W){if(Array.isArray(J.keyword)?!J.keyword.includes(W):J.keyword!==W)throw Error("ajv implementation error");let $=J.dependencies;if($===null||$===void 0?void 0:$.some((G)=>!Object.prototype.hasOwnProperty.call(D,G)))throw Error(`parent schema must have dependencies of ${W}: ${$.join(",")}`);if(J.validateSchema){if(!J.validateSchema(D[W])){let B=`keyword "${W}" value is invalid at path "${Q}": `+X.errorsText(J.validateSchema.errors);if(Y.validateSchema==="log")X.logger.error(B);else throw Error(B)}}}zk.validateKeywordUsage=S$0});var Ok=T((Lk)=>{Object.defineProperty(Lk,"__esModule",{value:!0});Lk.extendSubschemaMode=Lk.extendSubschemaData=Lk.getSubschema=void 0;var W9=x0(),Vk=p0();function x$0(D,{keyword:Y,schemaProp:X,schema:Q,schemaPath:J,errSchemaPath:W,topSchemaRef:$}){if(Y!==void 0&&Q!==void 0)throw Error('both "keyword" and "schema" passed, only one allowed');if(Y!==void 0){let G=D.schema[Y];return X===void 0?{schema:G,schemaPath:W9._`${D.schemaPath}${(0,W9.getProperty)(Y)}`,errSchemaPath:`${D.errSchemaPath}/${Y}`}:{schema:G[X],schemaPath:W9._`${D.schemaPath}${(0,W9.getProperty)(Y)}${(0,W9.getProperty)(X)}`,errSchemaPath:`${D.errSchemaPath}/${Y}/${(0,Vk.escapeFragment)(X)}`}}if(Q!==void 0){if(J===void 0||W===void 0||$===void 0)throw Error('"schemaPath", "errSchemaPath" and "topSchemaRef" are required with "schema"');return{schema:Q,schemaPath:J,topSchemaRef:$,errSchemaPath:W}}throw Error('either "keyword" or "schema" must be passed')}Lk.getSubschema=x$0;function _$0(D,Y,{dataProp:X,dataPropType:Q,data:J,dataTypes:W,propertyName:$}){if(J!==void 0&&X!==void 0)throw Error('both "data" and "dataProp" passed, only one allowed');let{gen:G}=Y;if(X!==void 0){let{errorPath:H,dataPathArr:F,opts:K}=Y,U=G.let("data",W9._`${Y.data}${(0,W9.getProperty)(X)}`,!0);B(U),D.errorPath=W9.str`${H}${(0,Vk.getErrorPath)(X,Q,K.jsPropertySyntax)}`,D.parentDataProperty=W9._`${X}`,D.dataPathArr=[...F,D.parentDataProperty]}if(J!==void 0){let H=J instanceof W9.Name?J:G.let("data",J,!0);if(B(H),$!==void 0)D.propertyName=$}if(W)D.dataTypes=W;function B(H){D.data=H,D.dataLevel=Y.dataLevel+1,D.dataTypes=[],Y.definedProperties=new Set,D.parentData=Y.data,D.dataNames=[...Y.dataNames,H]}}Lk.extendSubschemaData=_$0;function b$0(D,{jtdDiscriminator:Y,jtdMetadata:X,compositeRule:Q,createErrors:J,allErrors:W}){if(Q!==void 0)D.compositeRule=Q;if(J!==void 0)D.createErrors=J;if(W!==void 0)D.allErrors=W;D.jtdDiscriminator=Y,D.jtdMetadata=X}Lk.extendSubschemaMode=b$0});var nz=T((EI0,Nk)=>{Nk.exports=function D(Y,X){if(Y===X)return!0;if(Y&&X&&typeof Y=="object"&&typeof X=="object"){if(Y.constructor!==X.constructor)return!1;var Q,J,W;if(Array.isArray(Y)){if(Q=Y.length,Q!=X.length)return!1;for(J=Q;J--!==0;)if(!D(Y[J],X[J]))return!1;return!0}if(Y.constructor===RegExp)return Y.source===X.source&&Y.flags===X.flags;if(Y.valueOf!==Object.prototype.valueOf)return Y.valueOf()===X.valueOf();if(Y.toString!==Object.prototype.toString)return Y.toString()===X.toString();if(W=Object.keys(Y),Q=W.length,Q!==Object.keys(X).length)return!1;for(J=Q;J--!==0;)if(!Object.prototype.hasOwnProperty.call(X,W[J]))return!1;for(J=Q;J--!==0;){var $=W[J];if(!D(Y[$],X[$]))return!1}return!0}return Y!==Y&&X!==X}});var Zk=T((RI0,Ak)=>{var ZD=Ak.exports=function(D,Y,X){if(typeof Y=="function")X=Y,Y={};X=Y.cb||X;var Q=typeof X=="function"?X:X.pre||function(){},J=X.post||function(){};G$(Y,Q,J,D,"",D)};ZD.keywords={additionalItems:!0,items:!0,contains:!0,additionalProperties:!0,propertyNames:!0,not:!0,if:!0,then:!0,else:!0};ZD.arrayKeywords={items:!0,allOf:!0,anyOf:!0,oneOf:!0};ZD.propsKeywords={$defs:!0,definitions:!0,properties:!0,patternProperties:!0,dependencies:!0};ZD.skipKeywords={default:!0,enum:!0,const:!0,required:!0,maximum:!0,minimum:!0,exclusiveMaximum:!0,exclusiveMinimum:!0,multipleOf:!0,maxLength:!0,minLength:!0,pattern:!0,format:!0,maxItems:!0,minItems:!0,uniqueItems:!0,maxProperties:!0,minProperties:!0};function G$(D,Y,X,Q,J,W,$,G,B,H){if(Q&&typeof Q=="object"&&!Array.isArray(Q)){Y(Q,J,W,$,G,B,H);for(var F in Q){var K=Q[F];if(Array.isArray(K)){if(F in ZD.arrayKeywords)for(var U=0;U<K.length;U++)G$(D,Y,X,K[U],J+"/"+F+"/"+U,W,J,F,Q,U)}else if(F in ZD.propsKeywords){if(K&&typeof K=="object")for(var z in K)G$(D,Y,X,K[z],J+"/"+F+"/"+y$0(z),W,J,F,Q,z)}else if(F in ZD.keywords||D.allKeys&&!(F in ZD.skipKeywords))G$(D,Y,X,K,J+"/"+F,W,J,F,Q)}X(Q,J,W,$,G,B,H)}}function y$0(D){return D.replace(/~/g,"~0").replace(/\//g,"~1")}});var oY=T((Tk)=>{Object.defineProperty(Tk,"__esModule",{value:!0});Tk.getSchemaRefs=Tk.resolveUrl=Tk.normalizeId=Tk._getFullPath=Tk.getFullPath=Tk.inlineRef=void 0;var f$0=p0(),h$0=nz(),g$0=Zk(),u$0=new Set(["type","format","pattern","maxLength","minLength","maxProperties","minProperties","maxItems","minItems","maximum","minimum","uniqueItems","multipleOf","required","enum","const"]);function m$0(D,Y=!0){if(typeof D=="boolean")return!0;if(Y===!0)return!iz(D);if(!Y)return!1;return Ek(D)<=Y}Tk.inlineRef=m$0;var c$0=new Set(["$ref","$recursiveRef","$recursiveAnchor","$dynamicRef","$dynamicAnchor"]);function iz(D){for(let Y in D){if(c$0.has(Y))return!0;let X=D[Y];if(Array.isArray(X)&&X.some(iz))return!0;if(typeof X=="object"&&iz(X))return!0}return!1}function Ek(D){let Y=0;for(let X in D){if(X==="$ref")return 1/0;if(Y++,u$0.has(X))continue;if(typeof D[X]=="object")(0,f$0.eachItem)(D[X],(Q)=>Y+=Ek(Q));if(Y===1/0)return 1/0}return Y}function Rk(D,Y="",X){if(X!==!1)Y=P7(Y);let Q=D.parse(Y);return jk(D,Q)}Tk.getFullPath=Rk;function jk(D,Y){return D.serialize(Y).split("#")[0]+"#"}Tk._getFullPath=jk;var l$0=/#\/?$/;function P7(D){return D?D.replace(l$0,""):""}Tk.normalizeId=P7;function d$0(D,Y,X){return X=P7(X),D.resolve(Y,X)}Tk.resolveUrl=d$0;var p$0=/^[a-z_][-a-z0-9._]*$/i;function n$0(D,Y){if(typeof D=="boolean")return{};let{schemaId:X,uriResolver:Q}=this.opts,J=P7(D[X]||Y),W={"":J},$=Rk(Q,J,!1),G={},B=new Set;return g$0(D,{allKeys:!0},(K,U,z,w)=>{if(w===void 0)return;let V=$+U,L=W[w];if(typeof K[X]=="string")L=O.call(this,K[X]);A.call(this,K.$anchor),A.call(this,K.$dynamicAnchor),W[U]=L;function O(M){let E=this.opts.uriResolver.resolve;if(M=P7(L?E(L,M):M),B.has(M))throw F(M);B.add(M);let j=this.refs[M];if(typeof j=="string")j=this.refs[j];if(typeof j=="object")H(K,j.schema,M);else if(M!==P7(V))if(M[0]==="#")H(K,G[M],M),G[M]=K;else this.refs[M]=V;return M}function A(M){if(typeof M=="string"){if(!p$0.test(M))throw Error(`invalid anchor "${M}"`);O.call(this,`#${M}`)}}}),G;function H(K,U,z){if(U!==void 0&&!h$0(K,U))throw F(z)}function F(K){return Error(`reference "${K}" resolves to more than one schema`)}}Tk.getSchemaRefs=n$0});var eY=T((ck)=>{Object.defineProperty(ck,"__esModule",{value:!0});ck.getData=ck.KeywordCxt=ck.validateFunctionCode=void 0;var _k=pb(),Pk=aY(),az=gz(),B$=aY(),t$0=$k(),tY=wk(),rz=Ok(),z0=x0(),Z0=C9(),e$0=oY(),x9=p0(),sY=rY();function DG0(D){if(vk(D)){if(yk(D),kk(D)){QG0(D);return}}bk(D,()=>(0,_k.topBoolOrEmptySchema)(D))}ck.validateFunctionCode=DG0;function bk({gen:D,validateName:Y,schema:X,schemaEnv:Q,opts:J},W){if(J.code.es5)D.func(Y,z0._`${Z0.default.data}, ${Z0.default.valCxt}`,Q.$async,()=>{D.code(z0._`"use strict"; ${Ik(X,J)}`),XG0(D,J),D.code(W)});else D.func(Y,z0._`${Z0.default.data}, ${YG0(J)}`,Q.$async,()=>D.code(Ik(X,J)).code(W))}function YG0(D){return z0._`{${Z0.default.instancePath}="", ${Z0.default.parentData}, ${Z0.default.parentDataProperty}, ${Z0.default.rootData}=${Z0.default.data}${D.dynamicRef?z0._`, ${Z0.default.dynamicAnchors}={}`:z0.nil}}={}`}function XG0(D,Y){D.if(Z0.default.valCxt,()=>{if(D.var(Z0.default.instancePath,z0._`${Z0.default.valCxt}.${Z0.default.instancePath}`),D.var(Z0.default.parentData,z0._`${Z0.default.valCxt}.${Z0.default.parentData}`),D.var(Z0.default.parentDataProperty,z0._`${Z0.default.valCxt}.${Z0.default.parentDataProperty}`),D.var(Z0.default.rootData,z0._`${Z0.default.valCxt}.${Z0.default.rootData}`),Y.dynamicRef)D.var(Z0.default.dynamicAnchors,z0._`${Z0.default.valCxt}.${Z0.default.dynamicAnchors}`)},()=>{if(D.var(Z0.default.instancePath,z0._`""`),D.var(Z0.default.parentData,z0._`undefined`),D.var(Z0.default.parentDataProperty,z0._`undefined`),D.var(Z0.default.rootData,Z0.default.data),Y.dynamicRef)D.var(Z0.default.dynamicAnchors,z0._`{}`)})}function QG0(D){let{schema:Y,opts:X,gen:Q}=D;bk(D,()=>{if(X.$comment&&Y.$comment)hk(D);if(BG0(D),Q.let(Z0.default.vErrors,null),Q.let(Z0.default.errors,0),X.unevaluated)JG0(D);fk(D),qG0(D)});return}function JG0(D){let{gen:Y,validateName:X}=D;D.evaluated=Y.const("evaluated",z0._`${X}.evaluated`),Y.if(z0._`${D.evaluated}.dynamicProps`,()=>Y.assign(z0._`${D.evaluated}.props`,z0._`undefined`)),Y.if(z0._`${D.evaluated}.dynamicItems`,()=>Y.assign(z0._`${D.evaluated}.items`,z0._`undefined`))}function Ik(D,Y){let X=typeof D=="object"&&D[Y.schemaId];return X&&(Y.code.source||Y.code.process)?z0._`/*# sourceURL=${X} */`:z0.nil}function WG0(D,Y){if(vk(D)){if(yk(D),kk(D)){$G0(D,Y);return}}(0,_k.boolOrEmptySchema)(D,Y)}function kk({schema:D,self:Y}){if(typeof D=="boolean")return!D;for(let X in D)if(Y.RULES.all[X])return!0;return!1}function vk(D){return typeof D.schema!="boolean"}function $G0(D,Y){let{schema:X,gen:Q,opts:J}=D;if(J.$comment&&X.$comment)hk(D);HG0(D),FG0(D);let W=Q.const("_errs",Z0.default.errors);fk(D,W),Q.var(Y,z0._`${W} === ${Z0.default.errors}`)}function yk(D){(0,x9.checkUnknownRules)(D),GG0(D)}function fk(D,Y){if(D.opts.jtd)return Ck(D,[],!1,Y);let X=(0,Pk.getSchemaTypes)(D.schema),Q=(0,Pk.coerceAndCheckDataType)(D,X);Ck(D,X,!Q,Y)}function GG0(D){let{schema:Y,errSchemaPath:X,opts:Q,self:J}=D;if(Y.$ref&&Q.ignoreKeywordsWithRef&&(0,x9.schemaHasRulesButRef)(Y,J.RULES))J.logger.warn(`$ref: keywords ignored in schema at path "${X}"`)}function BG0(D){let{schema:Y,opts:X}=D;if(Y.default!==void 0&&X.useDefaults&&X.strictSchema)(0,x9.checkStrictMode)(D,"default is ignored in the schema root")}function HG0(D){let Y=D.schema[D.opts.schemaId];if(Y)D.baseId=(0,e$0.resolveUrl)(D.opts.uriResolver,D.baseId,Y)}function FG0(D){if(D.schema.$async&&!D.schemaEnv.$async)throw Error("async schema in sync schema")}function hk({gen:D,schemaEnv:Y,schema:X,errSchemaPath:Q,opts:J}){let W=X.$comment;if(J.$comment===!0)D.code(z0._`${Z0.default.self}.logger.log(${W})`);else if(typeof J.$comment=="function"){let $=z0.str`${Q}/$comment`,G=D.scopeValue("root",{ref:Y.root});D.code(z0._`${Z0.default.self}.opts.$comment(${W}, ${$}, ${G}.schema)`)}}function qG0(D){let{gen:Y,schemaEnv:X,validateName:Q,ValidationError:J,opts:W}=D;if(X.$async)Y.if(z0._`${Z0.default.errors} === 0`,()=>Y.return(Z0.default.data),()=>Y.throw(z0._`new ${J}(${Z0.default.vErrors})`));else{if(Y.assign(z0._`${Q}.errors`,Z0.default.vErrors),W.unevaluated)KG0(D);Y.return(z0._`${Z0.default.errors} === 0`)}}function KG0({gen:D,evaluated:Y,props:X,items:Q}){if(X instanceof z0.Name)D.assign(z0._`${Y}.props`,X);if(Q instanceof z0.Name)D.assign(z0._`${Y}.items`,Q)}function Ck(D,Y,X,Q){let{gen:J,schema:W,data:$,allErrors:G,opts:B,self:H}=D,{RULES:F}=H;if(W.$ref&&(B.ignoreKeywordsWithRef||!(0,x9.schemaHasRulesButRef)(W,F))){J.block(()=>uk(D,"$ref",F.all.$ref.definition));return}if(!B.jtd)zG0(D,Y);J.block(()=>{for(let U of F.rules)K(U);K(F.post)});function K(U){if(!(0,az.shouldUseGroup)(W,U))return;if(U.type){if(J.if((0,B$.checkDataType)(U.type,$,B.strictNumbers)),xk(D,U),Y.length===1&&Y[0]===U.type&&X)J.else(),(0,B$.reportTypeError)(D);J.endIf()}else xk(D,U);if(!G)J.if(z0._`${Z0.default.errors} === ${Q||0}`)}}function xk(D,Y){let{gen:X,schema:Q,opts:{useDefaults:J}}=D;if(J)(0,t$0.assignDefaults)(D,Y.type);X.block(()=>{for(let W of Y.rules)if((0,az.shouldUseRule)(Q,W))uk(D,W.keyword,W.definition,Y.type)})}function zG0(D,Y){if(D.schemaEnv.meta||!D.opts.strictTypes)return;if(UG0(D,Y),!D.opts.allowUnionTypes)wG0(D,Y);VG0(D,D.dataTypes)}function UG0(D,Y){if(!Y.length)return;if(!D.dataTypes.length){D.dataTypes=Y;return}Y.forEach((X)=>{if(!gk(D.dataTypes,X))oz(D,`type "${X}" not allowed by context "${D.dataTypes.join(",")}"`)}),MG0(D,Y)}function wG0(D,Y){if(Y.length>1&&!(Y.length===2&&Y.includes("null")))oz(D,"use allowUnionTypes to allow union type keyword")}function VG0(D,Y){let X=D.self.RULES.all;for(let Q in X){let J=X[Q];if(typeof J=="object"&&(0,az.shouldUseRule)(D.schema,J)){let{type:W}=J.definition;if(W.length&&!W.some(($)=>LG0(Y,$)))oz(D,`missing type "${W.join(",")}" for keyword "${Q}"`)}}}function LG0(D,Y){return D.includes(Y)||Y==="number"&&D.includes("integer")}function gk(D,Y){return D.includes(Y)||Y==="integer"&&D.includes("number")}function MG0(D,Y){let X=[];for(let Q of D.dataTypes)if(gk(Y,Q))X.push(Q);else if(Y.includes("integer")&&Q==="number")X.push("integer");D.dataTypes=X}function oz(D,Y){let X=D.schemaEnv.baseId+D.errSchemaPath;Y+=` at "${X}" (strictTypes)`,(0,x9.checkStrictMode)(D,Y,D.opts.strictTypes)}class sz{constructor(D,Y,X){if((0,tY.validateKeywordUsage)(D,Y,X),this.gen=D.gen,this.allErrors=D.allErrors,this.keyword=X,this.data=D.data,this.schema=D.schema[X],this.$data=Y.$data&&D.opts.$data&&this.schema&&this.schema.$data,this.schemaValue=(0,x9.schemaRefOrVal)(D,this.schema,X,this.$data),this.schemaType=Y.schemaType,this.parentSchema=D.schema,this.params={},this.it=D,this.def=Y,this.$data)this.schemaCode=D.gen.const("vSchema",mk(this.$data,D));else if(this.schemaCode=this.schemaValue,!(0,tY.validSchemaType)(this.schema,Y.schemaType,Y.allowUndefined))throw Error(`${X} value must be ${JSON.stringify(Y.schemaType)}`);if("code"in Y?Y.trackErrors:Y.errors!==!1)this.errsCount=D.gen.const("_errs",Z0.default.errors)}result(D,Y,X){this.failResult((0,z0.not)(D),Y,X)}failResult(D,Y,X){if(this.gen.if(D),X)X();else this.error();if(Y){if(this.gen.else(),Y(),this.allErrors)this.gen.endIf()}else if(this.allErrors)this.gen.endIf();else this.gen.else()}pass(D,Y){this.failResult((0,z0.not)(D),void 0,Y)}fail(D){if(D===void 0){if(this.error(),!this.allErrors)this.gen.if(!1);return}if(this.gen.if(D),this.error(),this.allErrors)this.gen.endIf();else this.gen.else()}fail$data(D){if(!this.$data)return this.fail(D);let{schemaCode:Y}=this;this.fail(z0._`${Y} !== undefined && (${(0,z0.or)(this.invalid$data(),D)})`)}error(D,Y,X){if(Y){this.setParams(Y),this._error(D,X),this.setParams({});return}this._error(D,X)}_error(D,Y){(D?sY.reportExtraError:sY.reportError)(this,this.def.error,Y)}$dataError(){(0,sY.reportError)(this,this.def.$dataError||sY.keyword$DataError)}reset(){if(this.errsCount===void 0)throw Error('add "trackErrors" to keyword definition');(0,sY.resetErrorsCount)(this.gen,this.errsCount)}ok(D){if(!this.allErrors)this.gen.if(D)}setParams(D,Y){if(Y)Object.assign(this.params,D);else this.params=D}block$data(D,Y,X=z0.nil){this.gen.block(()=>{this.check$data(D,X),Y()})}check$data(D=z0.nil,Y=z0.nil){if(!this.$data)return;let{gen:X,schemaCode:Q,schemaType:J,def:W}=this;if(X.if((0,z0.or)(z0._`${Q} === undefined`,Y)),D!==z0.nil)X.assign(D,!0);if(J.length||W.validateSchema){if(X.elseIf(this.invalid$data()),this.$dataError(),D!==z0.nil)X.assign(D,!1)}X.else()}invalid$data(){let{gen:D,schemaCode:Y,schemaType:X,def:Q,it:J}=this;return(0,z0.or)(W(),$());function W(){if(X.length){if(!(Y instanceof z0.Name))throw Error("ajv implementation error");let G=Array.isArray(X)?X:[X];return z0._`${(0,B$.checkDataTypes)(G,Y,J.opts.strictNumbers,B$.DataType.Wrong)}`}return z0.nil}function $(){if(Q.validateSchema){let G=D.scopeValue("validate$data",{ref:Q.validateSchema});return z0._`!${G}(${Y})`}return z0.nil}}subschema(D,Y){let X=(0,rz.getSubschema)(this.it,D);(0,rz.extendSubschemaData)(X,this.it,D),(0,rz.extendSubschemaMode)(X,D);let Q={...this.it,...X,items:void 0,props:void 0};return WG0(Q,Y),Q}mergeEvaluated(D,Y){let{it:X,gen:Q}=this;if(!X.opts.unevaluated)return;if(X.props!==!0&&D.props!==void 0)X.props=x9.mergeEvaluated.props(Q,D.props,X.props,Y);if(X.items!==!0&&D.items!==void 0)X.items=x9.mergeEvaluated.items(Q,D.items,X.items,Y)}mergeValidEvaluated(D,Y){let{it:X,gen:Q}=this;if(X.opts.unevaluated&&(X.props!==!0||X.items!==!0))return Q.if(Y,()=>this.mergeEvaluated(D,z0.Name)),!0}}ck.KeywordCxt=sz;function uk(D,Y,X,Q){let J=new sz(D,X,Y);if("code"in X)X.code(J,Q);else if(J.$data&&X.validate)(0,tY.funcKeywordCode)(J,X);else if("macro"in X)(0,tY.macroKeywordCode)(J,X);else if(X.compile||X.validate)(0,tY.funcKeywordCode)(J,X)}var OG0=/^\/(?:[^~]|~0|~1)*$/,NG0=/^([0-9]+)(#|\/(?:[^~]|~0|~1)*)?$/;function mk(D,{dataLevel:Y,dataNames:X,dataPathArr:Q}){let J,W;if(D==="")return Z0.default.rootData;if(D[0]==="/"){if(!OG0.test(D))throw Error(`Invalid JSON-pointer: ${D}`);J=D,W=Z0.default.rootData}else{let H=NG0.exec(D);if(!H)throw Error(`Invalid JSON-pointer: ${D}`);let F=+H[1];if(J=H[2],J==="#"){if(F>=Y)throw Error(B("property/index",F));return Q[Y-F]}if(F>Y)throw Error(B("data",F));if(W=X[Y-F],!J)return W}let $=W,G=J.split("/");for(let H of G)if(H)W=z0._`${W}${(0,z0.getProperty)((0,x9.unescapeJsonPointer)(H))}`,$=z0._`${$} && ${W}`;return $;function B(H,F){return`Cannot access ${H} ${F} levels up, current level is ${Y}`}}ck.getData=mk});var H$=T((pk)=>{Object.defineProperty(pk,"__esModule",{value:!0});class dk extends Error{constructor(D){super("validation failed");this.errors=D,this.ajv=this.validation=!0}}pk.default=dk});var DX=T((ik)=>{Object.defineProperty(ik,"__esModule",{value:!0});var tz=oY();class nk extends Error{constructor(D,Y,X,Q){super(Q||`can't resolve reference ${X} from id ${Y}`);this.missingRef=(0,tz.resolveUrl)(D,Y,X),this.missingSchema=(0,tz.normalizeId)((0,tz.getFullPath)(D,this.missingRef))}}ik.default=nk});var q$=T((ok)=>{Object.defineProperty(ok,"__esModule",{value:!0});ok.resolveSchema=ok.getCompilingSchema=ok.resolveRef=ok.compileSchema=ok.SchemaEnv=void 0;var u6=x0(),jG0=H$(),P5=C9(),m6=oY(),rk=p0(),TG0=eY();class YX{constructor(D){var Y;this.refs={},this.dynamicAnchors={};let X;if(typeof D.schema=="object")X=D.schema;this.schema=D.schema,this.schemaId=D.schemaId,this.root=D.root||this,this.baseId=(Y=D.baseId)!==null&&Y!==void 0?Y:(0,m6.normalizeId)(X===null||X===void 0?void 0:X[D.schemaId||"$id"]),this.schemaPath=D.schemaPath,this.localRefs=D.localRefs,this.meta=D.meta,this.$async=X===null||X===void 0?void 0:X.$async,this.refs={}}}ok.SchemaEnv=YX;function DU(D){let Y=ak.call(this,D);if(Y)return Y;let X=(0,m6.getFullPath)(this.opts.uriResolver,D.root.baseId),{es5:Q,lines:J}=this.opts.code,{ownProperties:W}=this.opts,$=new u6.CodeGen(this.scope,{es5:Q,lines:J,ownProperties:W}),G;if(D.$async)G=$.scopeValue("Error",{ref:jG0.default,code:u6._`require("ajv/dist/runtime/validation_error").default`});let B=$.scopeName("validate");D.validateName=B;let H={gen:$,allErrors:this.opts.allErrors,data:P5.default.data,parentData:P5.default.parentData,parentDataProperty:P5.default.parentDataProperty,dataNames:[P5.default.data],dataPathArr:[u6.nil],dataLevel:0,dataTypes:[],definedProperties:new Set,topSchemaRef:$.scopeValue("schema",this.opts.code.source===!0?{ref:D.schema,code:(0,u6.stringify)(D.schema)}:{ref:D.schema}),validateName:B,ValidationError:G,schema:D.schema,schemaEnv:D,rootId:X,baseId:D.baseId||X,schemaPath:u6.nil,errSchemaPath:D.schemaPath||(this.opts.jtd?"":"#"),errorPath:u6._`""`,opts:this.opts,self:this},F;try{this._compilations.add(D),(0,TG0.validateFunctionCode)(H),$.optimize(this.opts.code.optimize);let K=$.toString();if(F=`${$.scopeRefs(P5.default.scope)}return ${K}`,this.opts.code.process)F=this.opts.code.process(F,D);let z=Function(`${P5.default.self}`,`${P5.default.scope}`,F)(this,this.scope.get());if(this.scope.value(B,{ref:z}),z.errors=null,z.schema=D.schema,z.schemaEnv=D,D.$async)z.$async=!0;if(this.opts.code.source===!0)z.source={validateName:B,validateCode:K,scopeValues:$._values};if(this.opts.unevaluated){let{props:w,items:V}=H;if(z.evaluated={props:w instanceof u6.Name?void 0:w,items:V instanceof u6.Name?void 0:V,dynamicProps:w instanceof u6.Name,dynamicItems:V instanceof u6.Name},z.source)z.source.evaluated=(0,u6.stringify)(z.evaluated)}return D.validate=z,D}catch(K){if(delete D.validate,delete D.validateName,F)this.logger.error("Error compiling schema, function code:",F);throw K}finally{this._compilations.delete(D)}}ok.compileSchema=DU;function SG0(D,Y,X){var Q;X=(0,m6.resolveUrl)(this.opts.uriResolver,Y,X);let J=D.refs[X];if(J)return J;let W=CG0.call(this,D,X);if(W===void 0){let $=(Q=D.localRefs)===null||Q===void 0?void 0:Q[X],{schemaId:G}=this.opts;if($)W=new YX({schema:$,schemaId:G,root:D,baseId:Y})}if(W===void 0)return;return D.refs[X]=PG0.call(this,W)}ok.resolveRef=SG0;function PG0(D){if((0,m6.inlineRef)(D.schema,this.opts.inlineRefs))return D.schema;return D.validate?D:DU.call(this,D)}function ak(D){for(let Y of this._compilations)if(IG0(Y,D))return Y}ok.getCompilingSchema=ak;function IG0(D,Y){return D.schema===Y.schema&&D.root===Y.root&&D.baseId===Y.baseId}function CG0(D,Y){let X;while(typeof(X=this.refs[Y])=="string")Y=X;return X||this.schemas[Y]||F$.call(this,D,Y)}function F$(D,Y){let X=this.opts.uriResolver.parse(Y),Q=(0,m6._getFullPath)(this.opts.uriResolver,X),J=(0,m6.getFullPath)(this.opts.uriResolver,D.baseId,void 0);if(Object.keys(D.schema).length>0&&Q===J)return ez.call(this,X,D);let W=(0,m6.normalizeId)(Q),$=this.refs[W]||this.schemas[W];if(typeof $=="string"){let G=F$.call(this,D,$);if(typeof(G===null||G===void 0?void 0:G.schema)!=="object")return;return ez.call(this,X,G)}if(typeof($===null||$===void 0?void 0:$.schema)!=="object")return;if(!$.validate)DU.call(this,$);if(W===(0,m6.normalizeId)(Y)){let{schema:G}=$,{schemaId:B}=this.opts,H=G[B];if(H)J=(0,m6.resolveUrl)(this.opts.uriResolver,J,H);return new YX({schema:G,schemaId:B,root:D,baseId:J})}return ez.call(this,X,$)}ok.resolveSchema=F$;var xG0=new Set(["properties","patternProperties","enum","dependencies","definitions"]);function ez(D,{baseId:Y,schema:X,root:Q}){var J;if(((J=D.fragment)===null||J===void 0?void 0:J[0])!=="/")return;for(let G of D.fragment.slice(1).split("/")){if(typeof X==="boolean")return;let B=X[(0,rk.unescapeFragment)(G)];if(B===void 0)return;X=B;let H=typeof X==="object"&&X[this.opts.schemaId];if(!xG0.has(G)&&H)Y=(0,m6.resolveUrl)(this.opts.uriResolver,Y,H)}let W;if(typeof X!="boolean"&&X.$ref&&!(0,rk.schemaHasRulesButRef)(X,this.RULES)){let G=(0,m6.resolveUrl)(this.opts.uriResolver,Y,X.$ref);W=F$.call(this,Q,G)}let{schemaId:$}=this.opts;if(W=W||new YX({schema:X,schemaId:$,root:Q,baseId:Y}),W.schema!==W.root.schema)return W;return}});var tk=T((CI0,yG0)=>{yG0.exports={$id:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#",description:"Meta-schema for $data reference (JSON AnySchema extension proposal)",type:"object",required:["$data"],properties:{$data:{type:"string",anyOf:[{format:"relative-json-pointer"},{format:"json-pointer"}]}},additionalProperties:!1}});var XU=T((xI0,Xv)=>{var fG0=RegExp.prototype.test.bind(/^[\da-f]{8}-[\da-f]{4}-[\da-f]{4}-[\da-f]{4}-[\da-f]{12}$/iu),Dv=RegExp.prototype.test.bind(/^(?:(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d{2}|[1-9]\d|\d)$/u);function YU(D){let Y="",X=0,Q=0;for(Q=0;Q<D.length;Q++){if(X=D[Q].charCodeAt(0),X===48)continue;if(!(X>=48&&X<=57||X>=65&&X<=70||X>=97&&X<=102))return"";Y+=D[Q];break}for(Q+=1;Q<D.length;Q++){if(X=D[Q].charCodeAt(0),!(X>=48&&X<=57||X>=65&&X<=70||X>=97&&X<=102))return"";Y+=D[Q]}return Y}var hG0=RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);function ek(D){return D.length=0,!0}function gG0(D,Y,X){if(D.length){let Q=YU(D);if(Q!=="")Y.push(Q);else return X.error=!0,!1;D.length=0}return!0}function uG0(D){let Y=0,X={error:!1,address:"",zone:""},Q=[],J=[],W=!1,$=!1,G=gG0;for(let B=0;B<D.length;B++){let H=D[B];if(H==="["||H==="]")continue;if(H===":"){if(W===!0)$=!0;if(!G(J,Q,X))break;if(++Y>7){X.error=!0;break}if(B>0&&D[B-1]===":")W=!0;Q.push(":");continue}else if(H==="%"){if(!G(J,Q,X))break;G=ek}else{J.push(H);continue}}if(J.length)if(G===ek)X.zone=J.join("");else if($)Q.push(J.join(""));else Q.push(YU(J));return X.address=Q.join(""),X}function Yv(D){if(mG0(D,":")<2)return{host:D,isIPV6:!1};let Y=uG0(D);if(!Y.error){let{address:X,address:Q}=Y;if(Y.zone)X+="%"+Y.zone,Q+="%25"+Y.zone;return{host:X,isIPV6:!0,escapedHost:Q}}else return{host:D,isIPV6:!1}}function mG0(D,Y){let X=0;for(let Q=0;Q<D.length;Q++)if(D[Q]===Y)X++;return X}function cG0(D){let Y=D,X=[],Q=-1,J=0;while(J=Y.length){if(J===1)if(Y===".")break;else if(Y==="/"){X.push("/");break}else{X.push(Y);break}else if(J===2){if(Y[0]==="."){if(Y[1]===".")break;else if(Y[1]==="/"){Y=Y.slice(2);continue}}else if(Y[0]==="/"){if(Y[1]==="."||Y[1]==="/"){X.push("/");break}}}else if(J===3){if(Y==="/.."){if(X.length!==0)X.pop();X.push("/");break}}if(Y[0]==="."){if(Y[1]==="."){if(Y[2]==="/"){Y=Y.slice(3);continue}}else if(Y[1]==="/"){Y=Y.slice(2);continue}}else if(Y[0]==="/"){if(Y[1]==="."){if(Y[2]==="/"){Y=Y.slice(2);continue}else if(Y[2]==="."){if(Y[3]==="/"){if(Y=Y.slice(3),X.length!==0)X.pop();continue}}}}if((Q=Y.indexOf("/",1))===-1){X.push(Y);break}else X.push(Y.slice(0,Q)),Y=Y.slice(Q)}return X.join("")}function lG0(D,Y){let X=Y!==!0?escape:unescape;if(D.scheme!==void 0)D.scheme=X(D.scheme);if(D.userinfo!==void 0)D.userinfo=X(D.userinfo);if(D.host!==void 0)D.host=X(D.host);if(D.path!==void 0)D.path=X(D.path);if(D.query!==void 0)D.query=X(D.query);if(D.fragment!==void 0)D.fragment=X(D.fragment);return D}function dG0(D){let Y=[];if(D.userinfo!==void 0)Y.push(D.userinfo),Y.push("@");if(D.host!==void 0){let X=unescape(D.host);if(!Dv(X)){let Q=Yv(X);if(Q.isIPV6===!0)X=`[${Q.escapedHost}]`;else X=D.host}Y.push(X)}if(typeof D.port==="number"||typeof D.port==="string")Y.push(":"),Y.push(String(D.port));return Y.length?Y.join(""):void 0}Xv.exports={nonSimpleDomain:hG0,recomposeAuthority:dG0,normalizeComponentEncoding:lG0,removeDotSegments:cG0,isIPv4:Dv,isUUID:fG0,normalizeIPv6:Yv,stringArrayToHexStripped:YU}});var Gv=T((_I0,$v)=>{var{isUUID:pG0}=XU(),nG0=/([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu,iG0=["http","https","ws","wss","urn","urn:uuid"];function rG0(D){return iG0.indexOf(D)!==-1}function QU(D){if(D.secure===!0)return!0;else if(D.secure===!1)return!1;else if(D.scheme)return D.scheme.length===3&&(D.scheme[0]==="w"||D.scheme[0]==="W")&&(D.scheme[1]==="s"||D.scheme[1]==="S")&&(D.scheme[2]==="s"||D.scheme[2]==="S");else return!1}function Qv(D){if(!D.host)D.error=D.error||"HTTP URIs must have a host.";return D}function Jv(D){let Y=String(D.scheme).toLowerCase()==="https";if(D.port===(Y?443:80)||D.port==="")D.port=void 0;if(!D.path)D.path="/";return D}function aG0(D){return D.secure=QU(D),D.resourceName=(D.path||"/")+(D.query?"?"+D.query:""),D.path=void 0,D.query=void 0,D}function oG0(D){if(D.port===(QU(D)?443:80)||D.port==="")D.port=void 0;if(typeof D.secure==="boolean")D.scheme=D.secure?"wss":"ws",D.secure=void 0;if(D.resourceName){let[Y,X]=D.resourceName.split("?");D.path=Y&&Y!=="/"?Y:void 0,D.query=X,D.resourceName=void 0}return D.fragment=void 0,D}function sG0(D,Y){if(!D.path)return D.error="URN can not be parsed",D;let X=D.path.match(nG0);if(X){let Q=Y.scheme||D.scheme||"urn";D.nid=X[1].toLowerCase(),D.nss=X[2];let J=`${Q}:${Y.nid||D.nid}`,W=JU(J);if(D.path=void 0,W)D=W.parse(D,Y)}else D.error=D.error||"URN can not be parsed.";return D}function tG0(D,Y){if(D.nid===void 0)throw Error("URN without nid cannot be serialized");let X=Y.scheme||D.scheme||"urn",Q=D.nid.toLowerCase(),J=`${X}:${Y.nid||Q}`,W=JU(J);if(W)D=W.serialize(D,Y);let $=D,G=D.nss;return $.path=`${Q||Y.nid}:${G}`,Y.skipEscape=!0,$}function eG0(D,Y){let X=D;if(X.uuid=X.nss,X.nss=void 0,!Y.tolerant&&(!X.uuid||!pG0(X.uuid)))X.error=X.error||"UUID is not valid.";return X}function DB0(D){let Y=D;return Y.nss=(D.uuid||"").toLowerCase(),Y}var Wv={scheme:"http",domainHost:!0,parse:Qv,serialize:Jv},YB0={scheme:"https",domainHost:Wv.domainHost,parse:Qv,serialize:Jv},K$={scheme:"ws",domainHost:!0,parse:aG0,serialize:oG0},XB0={scheme:"wss",domainHost:K$.domainHost,parse:K$.parse,serialize:K$.serialize},QB0={scheme:"urn",parse:sG0,serialize:tG0,skipNormalize:!0},JB0={scheme:"urn:uuid",parse:eG0,serialize:DB0,skipNormalize:!0},z$={http:Wv,https:YB0,ws:K$,wss:XB0,urn:QB0,"urn:uuid":JB0};Object.setPrototypeOf(z$,null);function JU(D){return D&&(z$[D]||z$[D.toLowerCase()])||void 0}$v.exports={wsIsSecure:QU,SCHEMES:z$,isValidSchemeName:rG0,getSchemeHandler:JU}});var Fv=T((bI0,w$)=>{var{normalizeIPv6:WB0,removeDotSegments:XX,recomposeAuthority:$B0,normalizeComponentEncoding:U$,isIPv4:GB0,nonSimpleDomain:BB0}=XU(),{SCHEMES:HB0,getSchemeHandler:Bv}=Gv();function FB0(D,Y){if(typeof D==="string")D=$9(_9(D,Y),Y);else if(typeof D==="object")D=_9($9(D,Y),Y);return D}function qB0(D,Y,X){let Q=X?Object.assign({scheme:"null"},X):{scheme:"null"},J=Hv(_9(D,Q),_9(Y,Q),Q,!0);return Q.skipEscape=!0,$9(J,Q)}function Hv(D,Y,X,Q){let J={};if(!Q)D=_9($9(D,X),X),Y=_9($9(Y,X),X);if(X=X||{},!X.tolerant&&Y.scheme)J.scheme=Y.scheme,J.userinfo=Y.userinfo,J.host=Y.host,J.port=Y.port,J.path=XX(Y.path||""),J.query=Y.query;else{if(Y.userinfo!==void 0||Y.host!==void 0||Y.port!==void 0)J.userinfo=Y.userinfo,J.host=Y.host,J.port=Y.port,J.path=XX(Y.path||""),J.query=Y.query;else{if(!Y.path)if(J.path=D.path,Y.query!==void 0)J.query=Y.query;else J.query=D.query;else{if(Y.path[0]==="/")J.path=XX(Y.path);else{if((D.userinfo!==void 0||D.host!==void 0||D.port!==void 0)&&!D.path)J.path="/"+Y.path;else if(!D.path)J.path=Y.path;else J.path=D.path.slice(0,D.path.lastIndexOf("/")+1)+Y.path;J.path=XX(J.path)}J.query=Y.query}J.userinfo=D.userinfo,J.host=D.host,J.port=D.port}J.scheme=D.scheme}return J.fragment=Y.fragment,J}function KB0(D,Y,X){if(typeof D==="string")D=unescape(D),D=$9(U$(_9(D,X),!0),{...X,skipEscape:!0});else if(typeof D==="object")D=$9(U$(D,!0),{...X,skipEscape:!0});if(typeof Y==="string")Y=unescape(Y),Y=$9(U$(_9(Y,X),!0),{...X,skipEscape:!0});else if(typeof Y==="object")Y=$9(U$(Y,!0),{...X,skipEscape:!0});return D.toLowerCase()===Y.toLowerCase()}function $9(D,Y){let X={host:D.host,scheme:D.scheme,userinfo:D.userinfo,port:D.port,path:D.path,query:D.query,nid:D.nid,nss:D.nss,uuid:D.uuid,fragment:D.fragment,reference:D.reference,resourceName:D.resourceName,secure:D.secure,error:""},Q=Object.assign({},Y),J=[],W=Bv(Q.scheme||X.scheme);if(W&&W.serialize)W.serialize(X,Q);if(X.path!==void 0)if(!Q.skipEscape){if(X.path=escape(X.path),X.scheme!==void 0)X.path=X.path.split("%3A").join(":")}else X.path=unescape(X.path);if(Q.reference!=="suffix"&&X.scheme)J.push(X.scheme,":");let $=$B0(X);if($!==void 0){if(Q.reference!=="suffix")J.push("//");if(J.push($),X.path&&X.path[0]!=="/")J.push("/")}if(X.path!==void 0){let G=X.path;if(!Q.absolutePath&&(!W||!W.absolutePath))G=XX(G);if($===void 0&&G[0]==="/"&&G[1]==="/")G="/%2F"+G.slice(2);J.push(G)}if(X.query!==void 0)J.push("?",X.query);if(X.fragment!==void 0)J.push("#",X.fragment);return J.join("")}var zB0=/^(?:([^#/:?]+):)?(?:\/\/((?:([^#/?@]*)@)?(\[[^#/?\]]+\]|[^#/:?]*)(?::(\d*))?))?([^#?]*)(?:\?([^#]*))?(?:#((?:.|[\n\r])*))?/u;function _9(D,Y){let X=Object.assign({},Y),Q={scheme:void 0,userinfo:void 0,host:"",port:void 0,path:"",query:void 0,fragment:void 0},J=!1;if(X.reference==="suffix")if(X.scheme)D=X.scheme+":"+D;else D="//"+D;let W=D.match(zB0);if(W){if(Q.scheme=W[1],Q.userinfo=W[3],Q.host=W[4],Q.port=parseInt(W[5],10),Q.path=W[6]||"",Q.query=W[7],Q.fragment=W[8],isNaN(Q.port))Q.port=W[5];if(Q.host)if(GB0(Q.host)===!1){let B=WB0(Q.host);Q.host=B.host.toLowerCase(),J=B.isIPV6}else J=!0;if(Q.scheme===void 0&&Q.userinfo===void 0&&Q.host===void 0&&Q.port===void 0&&Q.query===void 0&&!Q.path)Q.reference="same-document";else if(Q.scheme===void 0)Q.reference="relative";else if(Q.fragment===void 0)Q.reference="absolute";else Q.reference="uri";if(X.reference&&X.reference!=="suffix"&&X.reference!==Q.reference)Q.error=Q.error||"URI is not a "+X.reference+" reference.";let $=Bv(X.scheme||Q.scheme);if(!X.unicodeSupport&&(!$||!$.unicodeSupport)){if(Q.host&&(X.domainHost||$&&$.domainHost)&&J===!1&&BB0(Q.host))try{Q.host=URL.domainToASCII(Q.host.toLowerCase())}catch(G){Q.error=Q.error||"Host's domain name can not be converted to ASCII: "+G}}if(!$||$&&!$.skipNormalize){if(D.indexOf("%")!==-1){if(Q.scheme!==void 0)Q.scheme=unescape(Q.scheme);if(Q.host!==void 0)Q.host=unescape(Q.host)}if(Q.path)Q.path=escape(unescape(Q.path));if(Q.fragment)Q.fragment=encodeURI(decodeURIComponent(Q.fragment))}if($&&$.parse)$.parse(Q,X)}else Q.error=Q.error||"URI can not be parsed.";return Q}var WU={SCHEMES:HB0,normalize:FB0,resolve:qB0,resolveComponent:Hv,equal:KB0,serialize:$9,parse:_9};w$.exports=WU;w$.exports.default=WU;w$.exports.fastUri=WU});var zv=T((Kv)=>{Object.defineProperty(Kv,"__esModule",{value:!0});var qv=Fv();qv.code='require("ajv/dist/runtime/uri").default';Kv.default=qv});var Av=T((b9)=>{Object.defineProperty(b9,"__esModule",{value:!0});b9.CodeGen=b9.Name=b9.nil=b9.stringify=b9.str=b9._=b9.KeywordCxt=void 0;var wB0=eY();Object.defineProperty(b9,"KeywordCxt",{enumerable:!0,get:function(){return wB0.KeywordCxt}});var I7=x0();Object.defineProperty(b9,"_",{enumerable:!0,get:function(){return I7._}});Object.defineProperty(b9,"str",{enumerable:!0,get:function(){return I7.str}});Object.defineProperty(b9,"stringify",{enumerable:!0,get:function(){return I7.stringify}});Object.defineProperty(b9,"nil",{enumerable:!0,get:function(){return I7.nil}});Object.defineProperty(b9,"Name",{enumerable:!0,get:function(){return I7.Name}});Object.defineProperty(b9,"CodeGen",{enumerable:!0,get:function(){return I7.CodeGen}});var VB0=H$(),Mv=DX(),LB0=hz(),QX=q$(),MB0=x0(),JX=oY(),V$=aY(),GU=p0(),Uv=tk(),OB0=zv(),Ov=(D,Y)=>new RegExp(D,Y);Ov.code="new RegExp";var NB0=["removeAdditional","useDefaults","coerceTypes"],AB0=new Set(["validate","serialize","parse","wrapper","root","schema","keyword","pattern","formats","validate$data","func","obj","Error"]),ZB0={errorDataPath:"",format:"`validateFormats: false` can be used instead.",nullable:'"nullable" keyword is supported by default.',jsonPointers:"Deprecated jsPropertySyntax can be used instead.",extendRefs:"Deprecated ignoreKeywordsWithRef can be used instead.",missingRefs:"Pass empty schema with $id that should be ignored to ajv.addSchema.",processCode:"Use option `code: {process: (code, schemaEnv: object) => string}`",sourceCode:"Use option `code: {source: true}`",strictDefaults:"It is default now, see option `strict`.",strictKeywords:"It is default now, see option `strict`.",uniqueItems:'"uniqueItems" keyword is always validated.',unknownFormats:"Disable strict mode or pass `true` to `ajv.addFormat` (or `formats` option).",cache:"Map is used as cache, schema object as key.",serialize:"Map is used as cache, schema object as key.",ajvErrors:"It is default now."},EB0={ignoreKeywordsWithRef:"",jsPropertySyntax:"",unicode:'"minLength"/"maxLength" account for unicode characters by default.'},wv=200;function RB0(D){var Y,X,Q,J,W,$,G,B,H,F,K,U,z,w,V,L,O,A,M,E,j,I,x,y,C;let c=D.strict,S=(Y=D.code)===null||Y===void 0?void 0:Y.optimize,p=S===!0||S===void 0?1:S||0,u=(Q=(X=D.code)===null||X===void 0?void 0:X.regExp)!==null&&Q!==void 0?Q:Ov,J0=(J=D.uriResolver)!==null&&J!==void 0?J:OB0.default;return{strictSchema:($=(W=D.strictSchema)!==null&&W!==void 0?W:c)!==null&&$!==void 0?$:!0,strictNumbers:(B=(G=D.strictNumbers)!==null&&G!==void 0?G:c)!==null&&B!==void 0?B:!0,strictTypes:(F=(H=D.strictTypes)!==null&&H!==void 0?H:c)!==null&&F!==void 0?F:"log",strictTuples:(U=(K=D.strictTuples)!==null&&K!==void 0?K:c)!==null&&U!==void 0?U:"log",strictRequired:(w=(z=D.strictRequired)!==null&&z!==void 0?z:c)!==null&&w!==void 0?w:!1,code:D.code?{...D.code,optimize:p,regExp:u}:{optimize:p,regExp:u},loopRequired:(V=D.loopRequired)!==null&&V!==void 0?V:wv,loopEnum:(L=D.loopEnum)!==null&&L!==void 0?L:wv,meta:(O=D.meta)!==null&&O!==void 0?O:!0,messages:(A=D.messages)!==null&&A!==void 0?A:!0,inlineRefs:(M=D.inlineRefs)!==null&&M!==void 0?M:!0,schemaId:(E=D.schemaId)!==null&&E!==void 0?E:"$id",addUsedSchema:(j=D.addUsedSchema)!==null&&j!==void 0?j:!0,validateSchema:(I=D.validateSchema)!==null&&I!==void 0?I:!0,validateFormats:(x=D.validateFormats)!==null&&x!==void 0?x:!0,unicodeRegExp:(y=D.unicodeRegExp)!==null&&y!==void 0?y:!0,int32range:(C=D.int32range)!==null&&C!==void 0?C:!0,uriResolver:J0}}class L${constructor(D={}){this.schemas={},this.refs={},this.formats={},this._compilations=new Set,this._loading={},this._cache=new Map,D=this.opts={...D,...RB0(D)};let{es5:Y,lines:X}=this.opts.code;this.scope=new MB0.ValueScope({scope:{},prefixes:AB0,es5:Y,lines:X}),this.logger=CB0(D.logger);let Q=D.validateFormats;if(D.validateFormats=!1,this.RULES=(0,LB0.getRules)(),Vv.call(this,ZB0,D,"NOT SUPPORTED"),Vv.call(this,EB0,D,"DEPRECATED","warn"),this._metaOpts=PB0.call(this),D.formats)TB0.call(this);if(this._addVocabularies(),this._addDefaultMetaSchema(),D.keywords)SB0.call(this,D.keywords);if(typeof D.meta=="object")this.addMetaSchema(D.meta);jB0.call(this),D.validateFormats=Q}_addVocabularies(){this.addKeyword("$async")}_addDefaultMetaSchema(){let{$data:D,meta:Y,schemaId:X}=this.opts,Q=Uv;if(X==="id")Q={...Uv},Q.id=Q.$id,delete Q.$id;if(Y&&D)this.addMetaSchema(Q,Q[X],!1)}defaultMeta(){let{meta:D,schemaId:Y}=this.opts;return this.opts.defaultMeta=typeof D=="object"?D[Y]||D:void 0}validate(D,Y){let X;if(typeof D=="string"){if(X=this.getSchema(D),!X)throw Error(`no schema with key or ref "${D}"`)}else X=this.compile(D);let Q=X(Y);if(!("$async"in X))this.errors=X.errors;return Q}compile(D,Y){let X=this._addSchema(D,Y);return X.validate||this._compileSchemaEnv(X)}compileAsync(D,Y){if(typeof this.opts.loadSchema!="function")throw Error("options.loadSchema should be a function");let{loadSchema:X}=this.opts;return Q.call(this,D,Y);async function Q(H,F){await J.call(this,H.$schema);let K=this._addSchema(H,F);return K.validate||W.call(this,K)}async function J(H){if(H&&!this.getSchema(H))await Q.call(this,{$ref:H},!0)}async function W(H){try{return this._compileSchemaEnv(H)}catch(F){if(!(F instanceof Mv.default))throw F;return $.call(this,F),await G.call(this,F.missingSchema),W.call(this,H)}}function $({missingSchema:H,missingRef:F}){if(this.refs[H])throw Error(`AnySchema ${H} is loaded but ${F} cannot be resolved`)}async function G(H){let F=await B.call(this,H);if(!this.refs[H])await J.call(this,F.$schema);if(!this.refs[H])this.addSchema(F,H,Y)}async function B(H){let F=this._loading[H];if(F)return F;try{return await(this._loading[H]=X(H))}finally{delete this._loading[H]}}}addSchema(D,Y,X,Q=this.opts.validateSchema){if(Array.isArray(D)){for(let W of D)this.addSchema(W,void 0,X,Q);return this}let J;if(typeof D==="object"){let{schemaId:W}=this.opts;if(J=D[W],J!==void 0&&typeof J!="string")throw Error(`schema ${W} must be string`)}return Y=(0,JX.normalizeId)(Y||J),this._checkUnique(Y),this.schemas[Y]=this._addSchema(D,X,Y,Q,!0),this}addMetaSchema(D,Y,X=this.opts.validateSchema){return this.addSchema(D,Y,!0,X),this}validateSchema(D,Y){if(typeof D=="boolean")return!0;let X;if(X=D.$schema,X!==void 0&&typeof X!="string")throw Error("$schema must be a string");if(X=X||this.opts.defaultMeta||this.defaultMeta(),!X)return this.logger.warn("meta-schema not available"),this.errors=null,!0;let Q=this.validate(X,D);if(!Q&&Y){let J="schema is invalid: "+this.errorsText();if(this.opts.validateSchema==="log")this.logger.error(J);else throw Error(J)}return Q}getSchema(D){let Y;while(typeof(Y=Lv.call(this,D))=="string")D=Y;if(Y===void 0){let{schemaId:X}=this.opts,Q=new QX.SchemaEnv({schema:{},schemaId:X});if(Y=QX.resolveSchema.call(this,Q,D),!Y)return;this.refs[D]=Y}return Y.validate||this._compileSchemaEnv(Y)}removeSchema(D){if(D instanceof RegExp)return this._removeAllSchemas(this.schemas,D),this._removeAllSchemas(this.refs,D),this;switch(typeof D){case"undefined":return this._removeAllSchemas(this.schemas),this._removeAllSchemas(this.refs),this._cache.clear(),this;case"string":{let Y=Lv.call(this,D);if(typeof Y=="object")this._cache.delete(Y.schema);return delete this.schemas[D],delete this.refs[D],this}case"object":{let Y=D;this._cache.delete(Y);let X=D[this.opts.schemaId];if(X)X=(0,JX.normalizeId)(X),delete this.schemas[X],delete this.refs[X];return this}default:throw Error("ajv.removeSchema: invalid parameter")}}addVocabulary(D){for(let Y of D)this.addKeyword(Y);return this}addKeyword(D,Y){let X;if(typeof D=="string"){if(X=D,typeof Y=="object")this.logger.warn("these parameters are deprecated, see docs for addKeyword"),Y.keyword=X}else if(typeof D=="object"&&Y===void 0){if(Y=D,X=Y.keyword,Array.isArray(X)&&!X.length)throw Error("addKeywords: keyword must be string or non-empty array")}else throw Error("invalid addKeywords parameters");if(_B0.call(this,X,Y),!Y)return(0,GU.eachItem)(X,(J)=>$U.call(this,J)),this;kB0.call(this,Y);let Q={...Y,type:(0,V$.getJSONTypes)(Y.type),schemaType:(0,V$.getJSONTypes)(Y.schemaType)};return(0,GU.eachItem)(X,Q.type.length===0?(J)=>$U.call(this,J,Q):(J)=>Q.type.forEach((W)=>$U.call(this,J,Q,W))),this}getKeyword(D){let Y=this.RULES.all[D];return typeof Y=="object"?Y.definition:!!Y}removeKeyword(D){let{RULES:Y}=this;delete Y.keywords[D],delete Y.all[D];for(let X of Y.rules){let Q=X.rules.findIndex((J)=>J.keyword===D);if(Q>=0)X.rules.splice(Q,1)}return this}addFormat(D,Y){if(typeof Y=="string")Y=new RegExp(Y);return this.formats[D]=Y,this}errorsText(D=this.errors,{separator:Y=", ",dataVar:X="data"}={}){if(!D||D.length===0)return"No errors";return D.map((Q)=>`${X}${Q.instancePath} ${Q.message}`).reduce((Q,J)=>Q+Y+J)}$dataMetaSchema(D,Y){let X=this.RULES.all;D=JSON.parse(JSON.stringify(D));for(let Q of Y){let J=Q.split("/").slice(1),W=D;for(let $ of J)W=W[$];for(let $ in X){let G=X[$];if(typeof G!="object")continue;let{$data:B}=G.definition,H=W[$];if(B&&H)W[$]=Nv(H)}}return D}_removeAllSchemas(D,Y){for(let X in D){let Q=D[X];if(!Y||Y.test(X)){if(typeof Q=="string")delete D[X];else if(Q&&!Q.meta)this._cache.delete(Q.schema),delete D[X]}}}_addSchema(D,Y,X,Q=this.opts.validateSchema,J=this.opts.addUsedSchema){let W,{schemaId:$}=this.opts;if(typeof D=="object")W=D[$];else if(this.opts.jtd)throw Error("schema must be object");else if(typeof D!="boolean")throw Error("schema must be object or boolean");let G=this._cache.get(D);if(G!==void 0)return G;X=(0,JX.normalizeId)(W||X);let B=JX.getSchemaRefs.call(this,D,X);if(G=new QX.SchemaEnv({schema:D,schemaId:$,meta:Y,baseId:X,localRefs:B}),this._cache.set(G.schema,G),J&&!X.startsWith("#")){if(X)this._checkUnique(X);this.refs[X]=G}if(Q)this.validateSchema(D,!0);return G}_checkUnique(D){if(this.schemas[D]||this.refs[D])throw Error(`schema with key or id "${D}" already exists`)}_compileSchemaEnv(D){if(D.meta)this._compileMetaSchema(D);else QX.compileSchema.call(this,D);if(!D.validate)throw Error("ajv implementation error");return D.validate}_compileMetaSchema(D){let Y=this.opts;this.opts=this._metaOpts;try{QX.compileSchema.call(this,D)}finally{this.opts=Y}}}L$.ValidationError=VB0.default;L$.MissingRefError=Mv.default;b9.default=L$;function Vv(D,Y,X,Q="error"){for(let J in D){let W=J;if(W in Y)this.logger[Q](`${X}: option ${J}. ${D[W]}`)}}function Lv(D){return D=(0,JX.normalizeId)(D),this.schemas[D]||this.refs[D]}function jB0(){let D=this.opts.schemas;if(!D)return;if(Array.isArray(D))this.addSchema(D);else for(let Y in D)this.addSchema(D[Y],Y)}function TB0(){for(let D in this.opts.formats){let Y=this.opts.formats[D];if(Y)this.addFormat(D,Y)}}function SB0(D){if(Array.isArray(D)){this.addVocabulary(D);return}this.logger.warn("keywords option as map is deprecated, pass array");for(let Y in D){let X=D[Y];if(!X.keyword)X.keyword=Y;this.addKeyword(X)}}function PB0(){let D={...this.opts};for(let Y of NB0)delete D[Y];return D}var IB0={log(){},warn(){},error(){}};function CB0(D){if(D===!1)return IB0;if(D===void 0)return console;if(D.log&&D.warn&&D.error)return D;throw Error("logger must implement log, warn and error methods")}var xB0=/^[a-z_$][a-z0-9_$:-]*$/i;function _B0(D,Y){let{RULES:X}=this;if((0,GU.eachItem)(D,(Q)=>{if(X.keywords[Q])throw Error(`Keyword ${Q} is already defined`);if(!xB0.test(Q))throw Error(`Keyword ${Q} has invalid name`)}),!Y)return;if(Y.$data&&!(("code"in Y)||("validate"in Y)))throw Error('$data keyword must have "code" or "validate" function')}function $U(D,Y,X){var Q;let J=Y===null||Y===void 0?void 0:Y.post;if(X&&J)throw Error('keyword with "post" flag cannot have "type"');let{RULES:W}=this,$=J?W.post:W.rules.find(({type:B})=>B===X);if(!$)$={type:X,rules:[]},W.rules.push($);if(W.keywords[D]=!0,!Y)return;let G={keyword:D,definition:{...Y,type:(0,V$.getJSONTypes)(Y.type),schemaType:(0,V$.getJSONTypes)(Y.schemaType)}};if(Y.before)bB0.call(this,$,G,Y.before);else $.rules.push(G);W.all[D]=G,(Q=Y.implements)===null||Q===void 0||Q.forEach((B)=>this.addKeyword(B))}function bB0(D,Y,X){let Q=D.rules.findIndex((J)=>J.keyword===X);if(Q>=0)D.rules.splice(Q,0,Y);else D.rules.push(Y),this.logger.warn(`rule ${X} is not defined`)}function kB0(D){let{metaSchema:Y}=D;if(Y===void 0)return;if(D.$data&&this.opts.$data)Y=Nv(Y);D.validateSchema=this.compile(Y,!0)}var vB0={$ref:"https://raw.githubusercontent.com/ajv-validator/ajv/master/lib/refs/data.json#"};function Nv(D){return{anyOf:[D,vB0]}}});var Ev=T((Zv)=>{Object.defineProperty(Zv,"__esModule",{value:!0});var hB0={keyword:"id",code(){throw Error('NOT SUPPORTED: keyword "id", use "$id" for schema ID')}};Zv.default=hB0});var Iv=T((Sv)=>{Object.defineProperty(Sv,"__esModule",{value:!0});Sv.callRef=Sv.getValidate=void 0;var uB0=DX(),Rv=A6(),r8=x0(),C7=C9(),jv=q$(),M$=p0(),mB0={keyword:"$ref",schemaType:"string",code(D){let{gen:Y,schema:X,it:Q}=D,{baseId:J,schemaEnv:W,validateName:$,opts:G,self:B}=Q,{root:H}=W;if((X==="#"||X==="#/")&&J===H.baseId)return K();let F=jv.resolveRef.call(B,H,J,X);if(F===void 0)throw new uB0.default(Q.opts.uriResolver,J,X);if(F instanceof jv.SchemaEnv)return U(F);return z(F);function K(){if(W===H)return O$(D,$,W,W.$async);let w=Y.scopeValue("root",{ref:H});return O$(D,r8._`${w}.validate`,H,H.$async)}function U(w){let V=Tv(D,w);O$(D,V,w,w.$async)}function z(w){let V=Y.scopeValue("schema",G.code.source===!0?{ref:w,code:(0,r8.stringify)(w)}:{ref:w}),L=Y.name("valid"),O=D.subschema({schema:w,dataTypes:[],schemaPath:r8.nil,topSchemaRef:V,errSchemaPath:X},L);D.mergeEvaluated(O),D.ok(L)}}};function Tv(D,Y){let{gen:X}=D;return Y.validate?X.scopeValue("validate",{ref:Y.validate}):r8._`${X.scopeValue("wrapper",{ref:Y})}.validate`}Sv.getValidate=Tv;function O$(D,Y,X,Q){let{gen:J,it:W}=D,{allErrors:$,schemaEnv:G,opts:B}=W,H=B.passContext?C7.default.this:r8.nil;if(Q)F();else K();function F(){if(!G.$async)throw Error("async schema referenced by sync schema");let w=J.let("valid");J.try(()=>{if(J.code(r8._`await ${(0,Rv.callValidateCode)(D,Y,H)}`),z(Y),!$)J.assign(w,!0)},(V)=>{if(J.if(r8._`!(${V} instanceof ${W.ValidationError})`,()=>J.throw(V)),U(V),!$)J.assign(w,!1)}),D.ok(w)}function K(){D.result((0,Rv.callValidateCode)(D,Y,H),()=>z(Y),()=>U(Y))}function U(w){let V=r8._`${w}.errors`;J.assign(C7.default.vErrors,r8._`${C7.default.vErrors} === null ? ${V} : ${C7.default.vErrors}.concat(${V})`),J.assign(C7.default.errors,r8._`${C7.default.vErrors}.length`)}function z(w){var V;if(!W.opts.unevaluated)return;let L=(V=X===null||X===void 0?void 0:X.validate)===null||V===void 0?void 0:V.evaluated;if(W.props!==!0)if(L&&!L.dynamicProps){if(L.props!==void 0)W.props=M$.mergeEvaluated.props(J,L.props,W.props)}else{let O=J.var("props",r8._`${w}.evaluated.props`);W.props=M$.mergeEvaluated.props(J,O,W.props,r8.Name)}if(W.items!==!0)if(L&&!L.dynamicItems){if(L.items!==void 0)W.items=M$.mergeEvaluated.items(J,L.items,W.items)}else{let O=J.var("items",r8._`${w}.evaluated.items`);W.items=M$.mergeEvaluated.items(J,O,W.items,r8.Name)}}}Sv.callRef=O$;Sv.default=mB0});var xv=T((Cv)=>{Object.defineProperty(Cv,"__esModule",{value:!0});var dB0=Ev(),pB0=Iv(),nB0=["$schema","$id","$defs","$vocabulary",{keyword:"$comment"},"definitions",dB0.default,pB0.default];Cv.default=nB0});var bv=T((_v)=>{Object.defineProperty(_v,"__esModule",{value:!0});var N$=x0(),ED=N$.operators,A$={maximum:{okStr:"<=",ok:ED.LTE,fail:ED.GT},minimum:{okStr:">=",ok:ED.GTE,fail:ED.LT},exclusiveMaximum:{okStr:"<",ok:ED.LT,fail:ED.GTE},exclusiveMinimum:{okStr:">",ok:ED.GT,fail:ED.LTE}},rB0={message:({keyword:D,schemaCode:Y})=>N$.str`must be ${A$[D].okStr} ${Y}`,params:({keyword:D,schemaCode:Y})=>N$._`{comparison: ${A$[D].okStr}, limit: ${Y}}`},aB0={keyword:Object.keys(A$),type:"number",schemaType:"number",$data:!0,error:rB0,code(D){let{keyword:Y,data:X,schemaCode:Q}=D;D.fail$data(N$._`${X} ${A$[Y].fail} ${Q} || isNaN(${X})`)}};_v.default=aB0});var vv=T((kv)=>{Object.defineProperty(kv,"__esModule",{value:!0});var WX=x0(),sB0={message:({schemaCode:D})=>WX.str`must be multiple of ${D}`,params:({schemaCode:D})=>WX._`{multipleOf: ${D}}`},tB0={keyword:"multipleOf",type:"number",schemaType:"number",$data:!0,error:sB0,code(D){let{gen:Y,data:X,schemaCode:Q,it:J}=D,W=J.opts.multipleOfPrecision,$=Y.let("res"),G=W?WX._`Math.abs(Math.round(${$}) - ${$}) > 1e-${W}`:WX._`${$} !== parseInt(${$})`;D.fail$data(WX._`(${Q} === 0 || (${$} = ${X}/${Q}, ${G}))`)}};kv.default=tB0});var hv=T((fv)=>{Object.defineProperty(fv,"__esModule",{value:!0});function yv(D){let Y=D.length,X=0,Q=0,J;while(Q<Y)if(X++,J=D.charCodeAt(Q++),J>=55296&&J<=56319&&Q<Y){if(J=D.charCodeAt(Q),(J&64512)===56320)Q++}return X}fv.default=yv;yv.code='require("ajv/dist/runtime/ucs2length").default'});var uv=T((gv)=>{Object.defineProperty(gv,"__esModule",{value:!0});var I5=x0(),YH0=p0(),XH0=hv(),QH0={message({keyword:D,schemaCode:Y}){let X=D==="maxLength"?"more":"fewer";return I5.str`must NOT have ${X} than ${Y} characters`},params:({schemaCode:D})=>I5._`{limit: ${D}}`},JH0={keyword:["maxLength","minLength"],type:"string",schemaType:"number",$data:!0,error:QH0,code(D){let{keyword:Y,data:X,schemaCode:Q,it:J}=D,W=Y==="maxLength"?I5.operators.GT:I5.operators.LT,$=J.opts.unicode===!1?I5._`${X}.length`:I5._`${(0,YH0.useFunc)(D.gen,XH0.default)}(${X})`;D.fail$data(I5._`${$} ${W} ${Q}`)}};gv.default=JH0});var cv=T((mv)=>{Object.defineProperty(mv,"__esModule",{value:!0});var $H0=A6(),Z$=x0(),GH0={message:({schemaCode:D})=>Z$.str`must match pattern "${D}"`,params:({schemaCode:D})=>Z$._`{pattern: ${D}}`},BH0={keyword:"pattern",type:"string",schemaType:"string",$data:!0,error:GH0,code(D){let{data:Y,$data:X,schema:Q,schemaCode:J,it:W}=D,$=W.opts.unicodeRegExp?"u":"",G=X?Z$._`(new RegExp(${J}, ${$}))`:(0,$H0.usePattern)(D,Q);D.fail$data(Z$._`!${G}.test(${Y})`)}};mv.default=BH0});var dv=T((lv)=>{Object.defineProperty(lv,"__esModule",{value:!0});var $X=x0(),FH0={message({keyword:D,schemaCode:Y}){let X=D==="maxProperties"?"more":"fewer";return $X.str`must NOT have ${X} than ${Y} properties`},params:({schemaCode:D})=>$X._`{limit: ${D}}`},qH0={keyword:["maxProperties","minProperties"],type:"object",schemaType:"number",$data:!0,error:FH0,code(D){let{keyword:Y,data:X,schemaCode:Q}=D,J=Y==="maxProperties"?$X.operators.GT:$X.operators.LT;D.fail$data($X._`Object.keys(${X}).length ${J} ${Q}`)}};lv.default=qH0});var nv=T((pv)=>{Object.defineProperty(pv,"__esModule",{value:!0});var GX=A6(),BX=x0(),zH0=p0(),UH0={message:({params:{missingProperty:D}})=>BX.str`must have required property '${D}'`,params:({params:{missingProperty:D}})=>BX._`{missingProperty: ${D}}`},wH0={keyword:"required",type:"object",schemaType:"array",$data:!0,error:UH0,code(D){let{gen:Y,schema:X,schemaCode:Q,data:J,$data:W,it:$}=D,{opts:G}=$;if(!W&&X.length===0)return;let B=X.length>=G.loopRequired;if($.allErrors)H();else F();if(G.strictRequired){let z=D.parentSchema.properties,{definedProperties:w}=D.it;for(let V of X)if((z===null||z===void 0?void 0:z[V])===void 0&&!w.has(V)){let L=$.schemaEnv.baseId+$.errSchemaPath,O=`required property "${V}" is not defined at "${L}" (strictRequired)`;(0,zH0.checkStrictMode)($,O,$.opts.strictRequired)}}function H(){if(B||W)D.block$data(BX.nil,K);else for(let z of X)(0,GX.checkReportMissingProp)(D,z)}function F(){let z=Y.let("missing");if(B||W){let w=Y.let("valid",!0);D.block$data(w,()=>U(z,w)),D.ok(w)}else Y.if((0,GX.checkMissingProp)(D,X,z)),(0,GX.reportMissingProp)(D,z),Y.else()}function K(){Y.forOf("prop",Q,(z)=>{D.setParams({missingProperty:z}),Y.if((0,GX.noPropertyInData)(Y,J,z,G.ownProperties),()=>D.error())})}function U(z,w){D.setParams({missingProperty:z}),Y.forOf(z,Q,()=>{Y.assign(w,(0,GX.propertyInData)(Y,J,z,G.ownProperties)),Y.if((0,BX.not)(w),()=>{D.error(),Y.break()})},BX.nil)}}};pv.default=wH0});var rv=T((iv)=>{Object.defineProperty(iv,"__esModule",{value:!0});var HX=x0(),LH0={message({keyword:D,schemaCode:Y}){let X=D==="maxItems"?"more":"fewer";return HX.str`must NOT have ${X} than ${Y} items`},params:({schemaCode:D})=>HX._`{limit: ${D}}`},MH0={keyword:["maxItems","minItems"],type:"array",schemaType:"number",$data:!0,error:LH0,code(D){let{keyword:Y,data:X,schemaCode:Q}=D,J=Y==="maxItems"?HX.operators.GT:HX.operators.LT;D.fail$data(HX._`${X}.length ${J} ${Q}`)}};iv.default=MH0});var E$=T((ov)=>{Object.defineProperty(ov,"__esModule",{value:!0});var av=nz();av.code='require("ajv/dist/runtime/equal").default';ov.default=av});var tv=T((sv)=>{Object.defineProperty(sv,"__esModule",{value:!0});var BU=aY(),K8=x0(),AH0=p0(),ZH0=E$(),EH0={message:({params:{i:D,j:Y}})=>K8.str`must NOT have duplicate items (items ## ${Y} and ${D} are identical)`,params:({params:{i:D,j:Y}})=>K8._`{i: ${D}, j: ${Y}}`},RH0={keyword:"uniqueItems",type:"array",schemaType:"boolean",$data:!0,error:EH0,code(D){let{gen:Y,data:X,$data:Q,schema:J,parentSchema:W,schemaCode:$,it:G}=D;if(!Q&&!J)return;let B=Y.let("valid"),H=W.items?(0,BU.getSchemaTypes)(W.items):[];D.block$data(B,F,K8._`${$} === false`),D.ok(B);function F(){let w=Y.let("i",K8._`${X}.length`),V=Y.let("j");D.setParams({i:w,j:V}),Y.assign(B,!0),Y.if(K8._`${w} > 1`,()=>(K()?U:z)(w,V))}function K(){return H.length>0&&!H.some((w)=>w==="object"||w==="array")}function U(w,V){let L=Y.name("item"),O=(0,BU.checkDataTypes)(H,L,G.opts.strictNumbers,BU.DataType.Wrong),A=Y.const("indices",K8._`{}`);Y.for(K8._`;${w}--;`,()=>{if(Y.let(L,K8._`${X}[${w}]`),Y.if(O,K8._`continue`),H.length>1)Y.if(K8._`typeof ${L} == "string"`,K8._`${L} += "_"`);Y.if(K8._`typeof ${A}[${L}] == "number"`,()=>{Y.assign(V,K8._`${A}[${L}]`),D.error(),Y.assign(B,!1).break()}).code(K8._`${A}[${L}] = ${w}`)})}function z(w,V){let L=(0,AH0.useFunc)(Y,ZH0.default),O=Y.name("outer");Y.label(O).for(K8._`;${w}--;`,()=>Y.for(K8._`${V} = ${w}; ${V}--;`,()=>Y.if(K8._`${L}(${X}[${w}], ${X}[${V}])`,()=>{D.error(),Y.assign(B,!1).break(O)})))}}};sv.default=RH0});var Dy=T((ev)=>{Object.defineProperty(ev,"__esModule",{value:!0});var HU=x0(),TH0=p0(),SH0=E$(),PH0={message:"must be equal to constant",params:({schemaCode:D})=>HU._`{allowedValue: ${D}}`},IH0={keyword:"const",$data:!0,error:PH0,code(D){let{gen:Y,data:X,$data:Q,schemaCode:J,schema:W}=D;if(Q||W&&typeof W=="object")D.fail$data(HU._`!${(0,TH0.useFunc)(Y,SH0.default)}(${X}, ${J})`);else D.fail(HU._`${W} !== ${X}`)}};ev.default=IH0});var Xy=T((Yy)=>{Object.defineProperty(Yy,"__esModule",{value:!0});var FX=x0(),xH0=p0(),_H0=E$(),bH0={message:"must be equal to one of the allowed values",params:({schemaCode:D})=>FX._`{allowedValues: ${D}}`},kH0={keyword:"enum",schemaType:"array",$data:!0,error:bH0,code(D){let{gen:Y,data:X,$data:Q,schema:J,schemaCode:W,it:$}=D;if(!Q&&J.length===0)throw Error("enum must have non-empty array");let G=J.length>=$.opts.loopEnum,B,H=()=>B!==null&&B!==void 0?B:B=(0,xH0.useFunc)(Y,_H0.default),F;if(G||Q)F=Y.let("valid"),D.block$data(F,K);else{if(!Array.isArray(J))throw Error("ajv implementation error");let z=Y.const("vSchema",W);F=(0,FX.or)(...J.map((w,V)=>U(z,V)))}D.pass(F);function K(){Y.assign(F,!1),Y.forOf("v",W,(z)=>Y.if(FX._`${H()}(${X}, ${z})`,()=>Y.assign(F,!0).break()))}function U(z,w){let V=J[w];return typeof V==="object"&&V!==null?FX._`${H()}(${X}, ${z}[${w}])`:FX._`${X} === ${V}`}}};Yy.default=kH0});var Jy=T((Qy)=>{Object.defineProperty(Qy,"__esModule",{value:!0});var yH0=bv(),fH0=vv(),hH0=uv(),gH0=cv(),uH0=dv(),mH0=nv(),cH0=rv(),lH0=tv(),dH0=Dy(),pH0=Xy(),nH0=[yH0.default,fH0.default,hH0.default,gH0.default,uH0.default,mH0.default,cH0.default,lH0.default,{keyword:"type",schemaType:["string","array"]},{keyword:"nullable",schemaType:"boolean"},dH0.default,pH0.default];Qy.default=nH0});var qU=T(($y)=>{Object.defineProperty($y,"__esModule",{value:!0});$y.validateAdditionalItems=void 0;var C5=x0(),FU=p0(),rH0={message:({params:{len:D}})=>C5.str`must NOT have more than ${D} items`,params:({params:{len:D}})=>C5._`{limit: ${D}}`},aH0={keyword:"additionalItems",type:"array",schemaType:["boolean","object"],before:"uniqueItems",error:rH0,code(D){let{parentSchema:Y,it:X}=D,{items:Q}=Y;if(!Array.isArray(Q)){(0,FU.checkStrictMode)(X,'"additionalItems" is ignored when "items" is not an array of schemas');return}Wy(D,Q)}};function Wy(D,Y){let{gen:X,schema:Q,data:J,keyword:W,it:$}=D;$.items=!0;let G=X.const("len",C5._`${J}.length`);if(Q===!1)D.setParams({len:Y.length}),D.pass(C5._`${G} <= ${Y.length}`);else if(typeof Q=="object"&&!(0,FU.alwaysValidSchema)($,Q)){let H=X.var("valid",C5._`${G} <= ${Y.length}`);X.if((0,C5.not)(H),()=>B(H)),D.ok(H)}function B(H){X.forRange("i",Y.length,G,(F)=>{if(D.subschema({keyword:W,dataProp:F,dataPropType:FU.Type.Num},H),!$.allErrors)X.if((0,C5.not)(H),()=>X.break())})}}$y.validateAdditionalItems=Wy;$y.default=aH0});var KU=T((Fy)=>{Object.defineProperty(Fy,"__esModule",{value:!0});Fy.validateTuple=void 0;var By=x0(),R$=p0(),sH0=A6(),tH0={keyword:"items",type:"array",schemaType:["object","array","boolean"],before:"uniqueItems",code(D){let{schema:Y,it:X}=D;if(Array.isArray(Y))return Hy(D,"additionalItems",Y);if(X.items=!0,(0,R$.alwaysValidSchema)(X,Y))return;D.ok((0,sH0.validateArray)(D))}};function Hy(D,Y,X=D.schema){let{gen:Q,parentSchema:J,data:W,keyword:$,it:G}=D;if(F(J),G.opts.unevaluated&&X.length&&G.items!==!0)G.items=R$.mergeEvaluated.items(Q,X.length,G.items);let B=Q.name("valid"),H=Q.const("len",By._`${W}.length`);X.forEach((K,U)=>{if((0,R$.alwaysValidSchema)(G,K))return;Q.if(By._`${H} > ${U}`,()=>D.subschema({keyword:$,schemaProp:U,dataProp:U},B)),D.ok(B)});function F(K){let{opts:U,errSchemaPath:z}=G,w=X.length,V=w===K.minItems&&(w===K.maxItems||K[Y]===!1);if(U.strictTuples&&!V){let L=`"${$}" is ${w}-tuple, but minItems or maxItems/${Y} are not specified or different at path "${z}"`;(0,R$.checkStrictMode)(G,L,U.strictTuples)}}}Fy.validateTuple=Hy;Fy.default=tH0});var zy=T((Ky)=>{Object.defineProperty(Ky,"__esModule",{value:!0});var D20=KU(),Y20={keyword:"prefixItems",type:"array",schemaType:["array"],before:"uniqueItems",code:(D)=>(0,D20.validateTuple)(D,"items")};Ky.default=Y20});var Vy=T((wy)=>{Object.defineProperty(wy,"__esModule",{value:!0});var Uy=x0(),Q20=p0(),J20=A6(),W20=qU(),$20={message:({params:{len:D}})=>Uy.str`must NOT have more than ${D} items`,params:({params:{len:D}})=>Uy._`{limit: ${D}}`},G20={keyword:"items",type:"array",schemaType:["object","boolean"],before:"uniqueItems",error:$20,code(D){let{schema:Y,parentSchema:X,it:Q}=D,{prefixItems:J}=X;if(Q.items=!0,(0,Q20.alwaysValidSchema)(Q,Y))return;if(J)(0,W20.validateAdditionalItems)(D,J);else D.ok((0,J20.validateArray)(D))}};wy.default=G20});var My=T((Ly)=>{Object.defineProperty(Ly,"__esModule",{value:!0});var Z6=x0(),j$=p0(),H20={message:({params:{min:D,max:Y}})=>Y===void 0?Z6.str`must contain at least ${D} valid item(s)`:Z6.str`must contain at least ${D} and no more than ${Y} valid item(s)`,params:({params:{min:D,max:Y}})=>Y===void 0?Z6._`{minContains: ${D}}`:Z6._`{minContains: ${D}, maxContains: ${Y}}`},F20={keyword:"contains",type:"array",schemaType:["object","boolean"],before:"uniqueItems",trackErrors:!0,error:H20,code(D){let{gen:Y,schema:X,parentSchema:Q,data:J,it:W}=D,$,G,{minContains:B,maxContains:H}=Q;if(W.opts.next)$=B===void 0?1:B,G=H;else $=1;let F=Y.const("len",Z6._`${J}.length`);if(D.setParams({min:$,max:G}),G===void 0&&$===0){(0,j$.checkStrictMode)(W,'"minContains" == 0 without "maxContains": "contains" keyword ignored');return}if(G!==void 0&&$>G){(0,j$.checkStrictMode)(W,'"minContains" > "maxContains" is always invalid'),D.fail();return}if((0,j$.alwaysValidSchema)(W,X)){let V=Z6._`${F} >= ${$}`;if(G!==void 0)V=Z6._`${V} && ${F} <= ${G}`;D.pass(V);return}W.items=!0;let K=Y.name("valid");if(G===void 0&&$===1)z(K,()=>Y.if(K,()=>Y.break()));else if($===0){if(Y.let(K,!0),G!==void 0)Y.if(Z6._`${J}.length > 0`,U)}else Y.let(K,!1),U();D.result(K,()=>D.reset());function U(){let V=Y.name("_valid"),L=Y.let("count",0);z(V,()=>Y.if(V,()=>w(L)))}function z(V,L){Y.forRange("i",0,F,(O)=>{D.subschema({keyword:"contains",dataProp:O,dataPropType:j$.Type.Num,compositeRule:!0},V),L()})}function w(V){if(Y.code(Z6._`${V}++`),G===void 0)Y.if(Z6._`${V} >= ${$}`,()=>Y.assign(K,!0).break());else if(Y.if(Z6._`${V} > ${G}`,()=>Y.assign(K,!1).break()),$===1)Y.assign(K,!0);else Y.if(Z6._`${V} >= ${$}`,()=>Y.assign(K,!0))}}};Ly.default=F20});var Ry=T((Ay)=>{Object.defineProperty(Ay,"__esModule",{value:!0});Ay.validateSchemaDeps=Ay.validatePropertyDeps=Ay.error=void 0;var zU=x0(),K20=p0(),qX=A6();Ay.error={message:({params:{property:D,depsCount:Y,deps:X}})=>{let Q=Y===1?"property":"properties";return zU.str`must have ${Q} ${X} when property ${D} is present`},params:({params:{property:D,depsCount:Y,deps:X,missingProperty:Q}})=>zU._`{property: ${D},
|
|
135
135
|
missingProperty: ${Q},
|
|
136
136
|
depsCount: ${Y},
|
|
137
|
-
deps: ${X}}`};var z20={keyword:"dependencies",type:"object",schemaType:"object",error:Ay.error,code(D){let[Y,X]=U20(D);Oy(D,Y),Ny(D,X)}};function U20({schema:D}){let Y={},X={};for(let Q in D){if(Q==="__proto__")continue;let J=Array.isArray(D[Q])?Y:X;J[Q]=D[Q]}return[Y,X]}function Oy(D,Y=D.schema){let{gen:X,data:Q,it:J}=D;if(Object.keys(Y).length===0)return;let W=X.let("missing");for(let $ in Y){let G=Y[$];if(G.length===0)continue;let B=(0,qX.propertyInData)(X,Q,$,J.opts.ownProperties);if(D.setParams({property:$,depsCount:G.length,deps:G.join(", ")}),J.allErrors)X.if(B,()=>{for(let H of G)(0,qX.checkReportMissingProp)(D,H)});else X.if(zU._`${B} && (${(0,qX.checkMissingProp)(D,G,W)})`),(0,qX.reportMissingProp)(D,W),X.else()}}Ay.validatePropertyDeps=Oy;function Ny(D,Y=D.schema){let{gen:X,data:Q,keyword:J,it:W}=D,$=X.name("valid");for(let G in Y){if((0,K20.alwaysValidSchema)(W,Y[G]))continue;X.if((0,qX.propertyInData)(X,Q,G,W.opts.ownProperties),()=>{let B=D.subschema({keyword:J,schemaProp:G},$);D.mergeValidEvaluated(B,$)},()=>X.var($,!0)),D.ok($)}}Ay.validateSchemaDeps=Ny;Ay.default=z20});var Sy=T((Ty)=>{Object.defineProperty(Ty,"__esModule",{value:!0});var jy=x0(),L20=p0(),M20={message:"property name must be valid",params:({params:D})=>jy._`{propertyName: ${D.propertyName}}`},O20={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:M20,code(D){let{gen:Y,schema:X,data:Q,it:J}=D;if((0,L20.alwaysValidSchema)(J,X))return;let W=Y.name("valid");Y.forIn("key",Q,($)=>{D.setParams({propertyName:$}),D.subschema({keyword:"propertyNames",data:$,dataTypes:["string"],propertyName:$,compositeRule:!0},W),Y.if((0,jy.not)(W),()=>{if(D.error(!0),!J.allErrors)Y.break()})}),D.ok(W)}};Ty.default=O20});var UU=T((Py)=>{Object.defineProperty(Py,"__esModule",{value:!0});var T$=A6(),c6=x0(),A20=C9(),S$=p0(),Z20={message:"must NOT have additional properties",params:({params:D})=>c6._`{additionalProperty: ${D.additionalProperty}}`},E20={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Z20,code(D){let{gen:Y,schema:X,parentSchema:Q,data:J,errsCount:W,it:$}=D;if(!W)throw Error("ajv implementation error");let{allErrors:G,opts:B}=$;if($.props=!0,B.removeAdditional!=="all"&&(0,S$.alwaysValidSchema)($,X))return;let H=(0,T$.allSchemaProperties)(Q.properties),F=(0,T$.allSchemaProperties)(Q.patternProperties);K(),D.ok(c6._`${W} === ${A20.default.errors}`);function K(){Y.forIn("key",J,(L)=>{if(!H.length&&!F.length)w(L);else Y.if(U(L),()=>w(L))})}function U(L){let O;if(H.length>8){let A=(0,S$.schemaRefOrVal)($,Q.properties,"properties");O=(0,T$.isOwnProperty)(Y,A,L)}else if(H.length)O=(0,c6.or)(...H.map((A)=>c6._`${L} === ${A}`));else O=c6.nil;if(F.length)O=(0,c6.or)(O,...F.map((A)=>c6._`${(0,T$.usePattern)(D,A)}.test(${L})`));return(0,c6.not)(O)}function z(L){Y.code(c6._`delete ${J}[${L}]`)}function w(L){if(B.removeAdditional==="all"||B.removeAdditional&&X===!1){z(L);return}if(X===!1){if(D.setParams({additionalProperty:L}),D.error(),!G)Y.break();return}if(typeof X=="object"&&!(0,S$.alwaysValidSchema)($,X)){let O=Y.name("valid");if(B.removeAdditional==="failing")V(L,O,!1),Y.if((0,c6.not)(O),()=>{D.reset(),z(L)});else if(V(L,O),!G)Y.if((0,c6.not)(O),()=>Y.break())}}function V(L,O,A){let M={keyword:"additionalProperties",dataProp:L,dataPropType:S$.Type.Str};if(A===!1)Object.assign(M,{compositeRule:!0,createErrors:!1,allErrors:!1});D.subschema(M,O)}}};Py.default=E20});var _y=T((xy)=>{Object.defineProperty(xy,"__esModule",{value:!0});var j20=eY(),Iy=A6(),wU=p0(),Cy=UU(),T20={keyword:"properties",type:"object",schemaType:"object",code(D){let{gen:Y,schema:X,parentSchema:Q,data:J,it:W}=D;if(W.opts.removeAdditional==="all"&&Q.additionalProperties===void 0)Cy.default.code(new j20.KeywordCxt(W,Cy.default,"additionalProperties"));let $=(0,Iy.allSchemaProperties)(X);for(let K of $)W.definedProperties.add(K);if(W.opts.unevaluated&&$.length&&W.props!==!0)W.props=wU.mergeEvaluated.props(Y,(0,wU.toHash)($),W.props);let G=$.filter((K)=>!(0,wU.alwaysValidSchema)(W,X[K]));if(G.length===0)return;let B=Y.name("valid");for(let K of G){if(H(K))F(K);else{if(Y.if((0,Iy.propertyInData)(Y,J,K,W.opts.ownProperties)),F(K),!W.allErrors)Y.else().var(B,!0);Y.endIf()}D.it.definedProperties.add(K),D.ok(B)}function H(K){return W.opts.useDefaults&&!W.compositeRule&&X[K].default!==void 0}function F(K){D.subschema({keyword:"properties",schemaProp:K,dataProp:K},B)}}};xy.default=T20});var fy=T((yy)=>{Object.defineProperty(yy,"__esModule",{value:!0});var by=A6(),P$=x0(),ky=p0(),vy=p0(),P20={keyword:"patternProperties",type:"object",schemaType:"object",code(D){let{gen:Y,schema:X,data:Q,parentSchema:J,it:W}=D,{opts:$}=W,G=(0,by.allSchemaProperties)(X),B=G.filter((V)=>(0,ky.alwaysValidSchema)(W,X[V]));if(G.length===0||B.length===G.length&&(!W.opts.unevaluated||W.props===!0))return;let H=$.strictSchema&&!$.allowMatchingProperties&&J.properties,F=Y.name("valid");if(W.props!==!0&&!(W.props instanceof P$.Name))W.props=(0,vy.evaluatedPropsToName)(Y,W.props);let{props:K}=W;U();function U(){for(let V of G){if(H)z(V);if(W.allErrors)w(V);else Y.var(F,!0),w(V),Y.if(F)}}function z(V){for(let L in H)if(new RegExp(V).test(L))(0,ky.checkStrictMode)(W,`property ${L} matches pattern ${V} (use allowMatchingProperties)`)}function w(V){Y.forIn("key",Q,(L)=>{Y.if(P$._`${(0,by.usePattern)(D,V)}.test(${L})`,()=>{let O=B.includes(V);if(!O)D.subschema({keyword:"patternProperties",schemaProp:V,dataProp:L,dataPropType:vy.Type.Str},F);if(W.opts.unevaluated&&K!==!0)Y.assign(P$._`${K}[${L}]`,!0);else if(!O&&!W.allErrors)Y.if((0,P$.not)(F),()=>Y.break())})})}}};yy.default=P20});var gy=T((hy)=>{Object.defineProperty(hy,"__esModule",{value:!0});var C20=p0(),x20={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(D){let{gen:Y,schema:X,it:Q}=D;if((0,C20.alwaysValidSchema)(Q,X)){D.fail();return}let J=Y.name("valid");D.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),D.failResult(J,()=>D.reset(),()=>D.error())},error:{message:"must NOT be valid"}};hy.default=x20});var my=T((uy)=>{Object.defineProperty(uy,"__esModule",{value:!0});var b20=A6(),k20={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:b20.validateUnion,error:{message:"must match a schema in anyOf"}};uy.default=k20});var ly=T((cy)=>{Object.defineProperty(cy,"__esModule",{value:!0});var I$=x0(),y20=p0(),f20={message:"must match exactly one schema in oneOf",params:({params:D})=>I$._`{passingSchemas: ${D.passing}}`},h20={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:f20,code(D){let{gen:Y,schema:X,parentSchema:Q,it:J}=D;if(!Array.isArray(X))throw Error("ajv implementation error");if(J.opts.discriminator&&Q.discriminator)return;let W=X,$=Y.let("valid",!1),G=Y.let("passing",null),B=Y.name("_valid");D.setParams({passing:G}),Y.block(H),D.result($,()=>D.reset(),()=>D.error(!0));function H(){W.forEach((F,K)=>{let U;if((0,y20.alwaysValidSchema)(J,F))Y.var(B,!0);else U=D.subschema({keyword:"oneOf",schemaProp:K,compositeRule:!0},B);if(K>0)Y.if(I$._`${B} && ${$}`).assign($,!1).assign(G,I$._`[${G}, ${K}]`).else();Y.if(B,()=>{if(Y.assign($,!0),Y.assign(G,K),U)D.mergeEvaluated(U,I$.Name)})})}}};cy.default=h20});var py=T((dy)=>{Object.defineProperty(dy,"__esModule",{value:!0});var u20=p0(),m20={keyword:"allOf",schemaType:"array",code(D){let{gen:Y,schema:X,it:Q}=D;if(!Array.isArray(X))throw Error("ajv implementation error");let J=Y.name("valid");X.forEach((W,$)=>{if((0,u20.alwaysValidSchema)(Q,W))return;let G=D.subschema({keyword:"allOf",schemaProp:$},J);D.ok(J),D.mergeEvaluated(G)})}};dy.default=m20});var ay=T((ry)=>{Object.defineProperty(ry,"__esModule",{value:!0});var C$=x0(),iy=p0(),l20={message:({params:D})=>C$.str`must match "${D.ifClause}" schema`,params:({params:D})=>C$._`{failingKeyword: ${D.ifClause}}`},d20={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:l20,code(D){let{gen:Y,parentSchema:X,it:Q}=D;if(X.then===void 0&&X.else===void 0)(0,iy.checkStrictMode)(Q,'"if" without "then" and "else" is ignored');let J=ny(Q,"then"),W=ny(Q,"else");if(!J&&!W)return;let $=Y.let("valid",!0),G=Y.name("_valid");if(B(),D.reset(),J&&W){let F=Y.let("ifClause");D.setParams({ifClause:F}),Y.if(G,H("then",F),H("else",F))}else if(J)Y.if(G,H("then"));else Y.if((0,C$.not)(G),H("else"));D.pass($,()=>D.error(!0));function B(){let F=D.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);D.mergeEvaluated(F)}function H(F,K){return()=>{let U=D.subschema({keyword:F},G);if(Y.assign($,G),D.mergeValidEvaluated(U,$),K)Y.assign(K,C$._`${F}`);else D.setParams({ifClause:F})}}}};function ny(D,Y){let X=D.schema[Y];return X!==void 0&&!(0,iy.alwaysValidSchema)(D,X)}ry.default=d20});var sy=T((oy)=>{Object.defineProperty(oy,"__esModule",{value:!0});var n20=p0(),i20={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:D,parentSchema:Y,it:X}){if(Y.if===void 0)(0,n20.checkStrictMode)(X,`"${D}" without "if" is ignored`)}};oy.default=i20});var ey=T((ty)=>{Object.defineProperty(ty,"__esModule",{value:!0});var a20=qU(),o20=zy(),s20=KU(),t20=Vy(),e20=My(),DF0=Ry(),YF0=Sy(),XF0=UU(),QF0=_y(),JF0=fy(),WF0=gy(),$F0=my(),GF0=ly(),BF0=py(),HF0=ay(),FF0=sy();function qF0(D=!1){let Y=[WF0.default,$F0.default,GF0.default,BF0.default,HF0.default,FF0.default,YF0.default,XF0.default,DF0.default,QF0.default,JF0.default];if(D)Y.push(o20.default,t20.default);else Y.push(a20.default,s20.default);return Y.push(e20.default),Y}ty.default=qF0});var Yf=T((Df)=>{Object.defineProperty(Df,"__esModule",{value:!0});var m1=x0(),zF0={message:({schemaCode:D})=>m1.str`must match format "${D}"`,params:({schemaCode:D})=>m1._`{format: ${D}}`},UF0={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:zF0,code(D,Y){let{gen:X,data:Q,$data:J,schema:W,schemaCode:$,it:G}=D,{opts:B,errSchemaPath:H,schemaEnv:F,self:K}=G;if(!B.validateFormats)return;if(J)U();else z();function U(){let w=X.scopeValue("formats",{ref:K.formats,code:B.code.formats}),V=X.const("fDef",m1._`${w}[${$}]`),L=X.let("fType"),O=X.let("format");X.if(m1._`typeof ${V} == "object" && !(${V} instanceof RegExp)`,()=>X.assign(L,m1._`${V}.type || "string"`).assign(O,m1._`${V}.validate`),()=>X.assign(L,m1._`"string"`).assign(O,V)),D.fail$data((0,m1.or)(A(),M()));function A(){if(B.strictSchema===!1)return m1.nil;return m1._`${$} && !${O}`}function M(){let E=F.$async?m1._`(${V}.async ? await ${O}(${Q}) : ${O}(${Q}))`:m1._`${O}(${Q})`,j=m1._`(typeof ${O} == "function" ? ${E} : ${O}.test(${Q}))`;return m1._`${O} && ${O} !== true && ${L} === ${Y} && !${j}`}}function z(){let w=K.formats[W];if(!w){A();return}if(w===!0)return;let[V,L,O]=M(w);if(V===Y)D.pass(E());function A(){if(B.strictSchema===!1){K.logger.warn(j());return}throw Error(j());function j(){return`unknown format "${W}" ignored in schema at path "${H}"`}}function M(j){let I=j instanceof RegExp?(0,m1.regexpCode)(j):B.code.formats?m1._`${B.code.formats}${(0,m1.getProperty)(W)}`:void 0,x=X.scopeValue("formats",{key:W,ref:j,code:I});if(typeof j=="object"&&!(j instanceof RegExp))return[j.type||"string",j.validate,m1._`${x}.validate`];return["string",j,x]}function E(){if(typeof w=="object"&&!(w instanceof RegExp)&&w.async){if(!F.$async)throw Error("async format in sync schema");return m1._`await ${O}(${Q})`}return typeof L=="function"?m1._`${O}(${Q})`:m1._`${O}.test(${Q})`}}}};Df.default=UF0});var Qf=T((Xf)=>{Object.defineProperty(Xf,"__esModule",{value:!0});var VF0=Yf(),LF0=[VF0.default];Xf.default=LF0});var $f=T((Jf)=>{Object.defineProperty(Jf,"__esModule",{value:!0});Jf.contentVocabulary=Jf.metadataVocabulary=void 0;Jf.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Jf.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Hf=T((Bf)=>{Object.defineProperty(Bf,"__esModule",{value:!0});var NF0=xv(),AF0=Jy(),ZF0=ey(),EF0=Qf(),Gf=$f(),RF0=[NF0.default,AF0.default,(0,ZF0.default)(),EF0.default,Gf.metadataVocabulary,Gf.contentVocabulary];Bf.default=RF0});var zf=T((qf)=>{Object.defineProperty(qf,"__esModule",{value:!0});qf.DiscrError=void 0;var Ff;(function(D){D.Tag="tag",D.Mapping="mapping"})(Ff||(qf.DiscrError=Ff={}))});var Vf=T((wf)=>{Object.defineProperty(wf,"__esModule",{value:!0});var x7=x0(),VU=zf(),Uf=q$(),TF0=DX(),SF0=p0(),PF0={message:({params:{discrError:D,tagName:Y}})=>D===VU.DiscrError.Tag?`tag "${Y}" must be string`:`value of tag "${Y}" must be in oneOf`,params:({params:{discrError:D,tag:Y,tagName:X}})=>x7._`{error: ${D}, tag: ${X}, tagValue: ${Y}}`},IF0={keyword:"discriminator",type:"object",schemaType:"object",error:PF0,code(D){let{gen:Y,data:X,schema:Q,parentSchema:J,it:W}=D,{oneOf:$}=J;if(!W.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Q.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Q.mapping)throw Error("discriminator: mapping is not supported");if(!$)throw Error("discriminator: requires oneOf keyword");let B=Y.let("valid",!1),H=Y.const("tag",x7._`${X}${(0,x7.getProperty)(G)}`);Y.if(x7._`typeof ${H} == "string"`,()=>F(),()=>D.error(!1,{discrError:VU.DiscrError.Tag,tag:H,tagName:G})),D.ok(B);function F(){let z=U();Y.if(!1);for(let w in z)Y.elseIf(x7._`${H} === ${w}`),Y.assign(B,K(z[w]));Y.else(),D.error(!1,{discrError:VU.DiscrError.Mapping,tag:H,tagName:G}),Y.endIf()}function K(z){let w=Y.name("valid"),V=D.subschema({keyword:"oneOf",schemaProp:z},w);return D.mergeEvaluated(V,x7.Name),w}function U(){var z;let w={},V=O(J),L=!0;for(let E=0;E<$.length;E++){let j=$[E];if((j===null||j===void 0?void 0:j.$ref)&&!(0,SF0.schemaHasRulesButRef)(j,W.self.RULES)){let x=j.$ref;if(j=Uf.resolveRef.call(W.self,W.schemaEnv.root,W.baseId,x),j instanceof Uf.SchemaEnv)j=j.schema;if(j===void 0)throw new TF0.default(W.opts.uriResolver,W.baseId,x)}let I=(z=j===null||j===void 0?void 0:j.properties)===null||z===void 0?void 0:z[G];if(typeof I!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${G}"`);L=L&&(V||O(j)),A(I,E)}if(!L)throw Error(`discriminator: "${G}" must be required`);return w;function O({required:E}){return Array.isArray(E)&&E.includes(G)}function A(E,j){if(E.const)M(E.const,j);else if(E.enum)for(let I of E.enum)M(I,j);else throw Error(`discriminator: "properties/${G}" must have "const" or "enum"`)}function M(E,j){if(typeof E!="string"||E in w)throw Error(`discriminator: "${G}" values must be unique strings`);w[E]=j}}}};wf.default=IF0});var Lf=T((SC0,xF0)=>{xF0.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var MU=T((a8,LU)=>{Object.defineProperty(a8,"__esModule",{value:!0});a8.MissingRefError=a8.ValidationError=a8.CodeGen=a8.Name=a8.nil=a8.stringify=a8.str=a8._=a8.KeywordCxt=a8.Ajv=void 0;var _F0=Av(),bF0=Hf(),kF0=Vf(),Mf=Lf(),vF0=["/properties"],x$="http://json-schema.org/draft-07/schema";class KX extends _F0.default{_addVocabularies(){if(super._addVocabularies(),bF0.default.forEach((D)=>this.addVocabulary(D)),this.opts.discriminator)this.addKeyword(kF0.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let D=this.opts.$data?this.$dataMetaSchema(Mf,vF0):Mf;this.addMetaSchema(D,x$,!1),this.refs["http://json-schema.org/schema"]=x$}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(x$)?x$:void 0)}}a8.Ajv=KX;LU.exports=a8=KX;LU.exports.Ajv=KX;Object.defineProperty(a8,"__esModule",{value:!0});a8.default=KX;var yF0=eY();Object.defineProperty(a8,"KeywordCxt",{enumerable:!0,get:function(){return yF0.KeywordCxt}});var _7=x0();Object.defineProperty(a8,"_",{enumerable:!0,get:function(){return _7._}});Object.defineProperty(a8,"str",{enumerable:!0,get:function(){return _7.str}});Object.defineProperty(a8,"stringify",{enumerable:!0,get:function(){return _7.stringify}});Object.defineProperty(a8,"nil",{enumerable:!0,get:function(){return _7.nil}});Object.defineProperty(a8,"Name",{enumerable:!0,get:function(){return _7.Name}});Object.defineProperty(a8,"CodeGen",{enumerable:!0,get:function(){return _7.CodeGen}});var fF0=H$();Object.defineProperty(a8,"ValidationError",{enumerable:!0,get:function(){return fF0.default}});var hF0=DX();Object.defineProperty(a8,"MissingRefError",{enumerable:!0,get:function(){return hF0.default}})});var Pf=T((Tf)=>{Object.defineProperty(Tf,"__esModule",{value:!0});Tf.formatNames=Tf.fastFormats=Tf.fullFormats=void 0;function G9(D,Y){return{validate:D,compare:Y}}Tf.fullFormats={date:G9(Zf,ZU),time:G9(NU(!0),EU),"date-time":G9(Of(!0),Rf),"iso-time":G9(NU(),Ef),"iso-date-time":G9(Of(),jf),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:nF0,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:eF0,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:iF0,int32:{type:"number",validate:oF0},int64:{type:"number",validate:sF0},float:{type:"number",validate:Af},double:{type:"number",validate:Af},password:!0,binary:!0};Tf.fastFormats={...Tf.fullFormats,date:G9(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,ZU),time:G9(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,EU),"date-time":G9(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Rf),"iso-time":G9(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ef),"iso-date-time":G9(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,jf),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Tf.formatNames=Object.keys(Tf.fullFormats);function mF0(D){return D%4===0&&(D%100!==0||D%400===0)}var cF0=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,lF0=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Zf(D){let Y=cF0.exec(D);if(!Y)return!1;let X=+Y[1],Q=+Y[2],J=+Y[3];return Q>=1&&Q<=12&&J>=1&&J<=(Q===2&&mF0(X)?29:lF0[Q])}function ZU(D,Y){if(!(D&&Y))return;if(D>Y)return 1;if(D<Y)return-1;return 0}var OU=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function NU(D){return function(X){let Q=OU.exec(X);if(!Q)return!1;let J=+Q[1],W=+Q[2],$=+Q[3],G=Q[4],B=Q[5]==="-"?-1:1,H=+(Q[6]||0),F=+(Q[7]||0);if(H>23||F>59||D&&!G)return!1;if(J<=23&&W<=59&&$<60)return!0;let K=W-F*B,U=J-H*B-(K<0?1:0);return(U===23||U===-1)&&(K===59||K===-1)&&$<61}}function EU(D,Y){if(!(D&&Y))return;let X=new Date("2020-01-01T"+D).valueOf(),Q=new Date("2020-01-01T"+Y).valueOf();if(!(X&&Q))return;return X-Q}function Ef(D,Y){if(!(D&&Y))return;let X=OU.exec(D),Q=OU.exec(Y);if(!(X&&Q))return;if(D=X[1]+X[2]+X[3],Y=Q[1]+Q[2]+Q[3],D>Y)return 1;if(D<Y)return-1;return 0}var AU=/t|\s/i;function Of(D){let Y=NU(D);return function(Q){let J=Q.split(AU);return J.length===2&&Zf(J[0])&&Y(J[1])}}function Rf(D,Y){if(!(D&&Y))return;let X=new Date(D).valueOf(),Q=new Date(Y).valueOf();if(!(X&&Q))return;return X-Q}function jf(D,Y){if(!(D&&Y))return;let[X,Q]=D.split(AU),[J,W]=Y.split(AU),$=ZU(X,J);if($===void 0)return;return $||EU(Q,W)}var dF0=/\/|:/,pF0=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function nF0(D){return dF0.test(D)&&pF0.test(D)}var Nf=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function iF0(D){return Nf.lastIndex=0,Nf.test(D)}var rF0=-2147483648,aF0=2147483647;function oF0(D){return Number.isInteger(D)&&D<=aF0&&D>=rF0}function sF0(D){return Number.isInteger(D)}function Af(){return!0}var tF0=/[^\\]\\Z/;function eF0(D){if(tF0.test(D))return!1;try{return new RegExp(D),!0}catch(Y){return!1}}});var Cf=T((If)=>{Object.defineProperty(If,"__esModule",{value:!0});If.formatLimitDefinition=void 0;var Yq0=MU(),l6=x0(),RD=l6.operators,_$={formatMaximum:{okStr:"<=",ok:RD.LTE,fail:RD.GT},formatMinimum:{okStr:">=",ok:RD.GTE,fail:RD.LT},formatExclusiveMaximum:{okStr:"<",ok:RD.LT,fail:RD.GTE},formatExclusiveMinimum:{okStr:">",ok:RD.GT,fail:RD.LTE}},Xq0={message:({keyword:D,schemaCode:Y})=>l6.str`should be ${_$[D].okStr} ${Y}`,params:({keyword:D,schemaCode:Y})=>l6._`{comparison: ${_$[D].okStr}, limit: ${Y}}`};If.formatLimitDefinition={keyword:Object.keys(_$),type:"string",schemaType:"string",$data:!0,error:Xq0,code(D){let{gen:Y,data:X,schemaCode:Q,keyword:J,it:W}=D,{opts:$,self:G}=W;if(!$.validateFormats)return;let B=new Yq0.KeywordCxt(W,G.RULES.all.format.definition,"format");if(B.$data)H();else F();function H(){let U=Y.scopeValue("formats",{ref:G.formats,code:$.code.formats}),z=Y.const("fmt",l6._`${U}[${B.schemaCode}]`);D.fail$data((0,l6.or)(l6._`typeof ${z} != "object"`,l6._`${z} instanceof RegExp`,l6._`typeof ${z}.compare != "function"`,K(z)))}function F(){let U=B.schema,z=G.formats[U];if(!z||z===!0)return;if(typeof z!="object"||z instanceof RegExp||typeof z.compare!="function")throw Error(`"${J}": format "${U}" does not define "compare" function`);let w=Y.scopeValue("formats",{key:U,ref:z,code:$.code.formats?l6._`${$.code.formats}${(0,l6.getProperty)(U)}`:void 0});D.fail$data(K(w))}function K(U){return l6._`${U}.compare(${X}, ${Q}) ${_$[J].fail} 0`}},dependencies:["format"]};var Qq0=(D)=>{return D.addKeyword(If.formatLimitDefinition),D};If.default=Qq0});var kf=T((zX,bf)=>{Object.defineProperty(zX,"__esModule",{value:!0});var b7=Pf(),Wq0=Cf(),TU=x0(),xf=new TU.Name("fullFormats"),$q0=new TU.Name("fastFormats"),SU=(D,Y={keywords:!0})=>{if(Array.isArray(Y))return _f(D,Y,b7.fullFormats,xf),D;let[X,Q]=Y.mode==="fast"?[b7.fastFormats,$q0]:[b7.fullFormats,xf],J=Y.formats||b7.formatNames;if(_f(D,J,X,Q),Y.keywords)(0,Wq0.default)(D);return D};SU.get=(D,Y="full")=>{let Q=(Y==="fast"?b7.fastFormats:b7.fullFormats)[D];if(!Q)throw Error(`Unknown format "${D}"`);return Q};function _f(D,Y,X,Q){var J,W;(J=(W=D.opts.code).formats)!==null&&J!==void 0||(W.formats=TU._`require("ajv-formats/dist/formats").${Q}`);for(let $ of Y)D.addFormat($,X[$])}bf.exports=zX=SU;Object.defineProperty(zX,"__esModule",{value:!0});zX.default=SU});import{exit as pU}from"node:process";var Kw=y1(qw(),1),{program:l1,createCommand:Iq0,createArgument:Cq0,createOption:xq0,CommanderError:_q0,InvalidArgumentError:bq0,InvalidOptionArgumentError:kq0,Command:vq0,Argument:yq0,Option:fq0,Help:hq0}=Kw.default;var f8={name:"@capgo/cli",version:"7.70.0",type:"module",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLI#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/CLI.git"},bugs:{url:"https://github.com/Cap-go/CLI/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js",require:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsc --noEmit",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js","generate-docs":"node dist/index.js generate-docs README.md","test:bundle":"bun test/test-bundle.mjs","test:functional":"bun test/test-functional.mjs","test:semver":"bun test/test-semver-validation.mjs","test:version-edge-cases":"bun test/test-version-validation.mjs","test:regex":"bun test/test-regex-validation.mjs","test:upload":"bun test/test-upload-validation.mjs","test:credentials":"bun test/test-credentials.mjs","test:credentials-validation":"bun test/test-credentials-validation.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh",test:"bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:credentials && bun run test:credentials-validation && bun run test:version-detection"},devDependencies:{"@antfu/eslint-config":"^6.1.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.4","@capacitor/cli":"^8.0.0","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^0.11.0","@modelcontextprotocol/sdk":"^1.0.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.6","@supabase/supabase-js":"^2.79.0","@types/adm-zip":"^0.5.7","@types/node":"^24","@types/prettyjson":"^0.0.33","@types/tmp":"^0.2.6","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.16","ci-info":"^4.3.1",commander:"^14.0.2",eslint:"^9.38.0","git-format-staged":"3.1.3",husky:"^9.1.7","is-wsl":"^3.1.0",micromatch:"^4.0.8",open:"^11.0.0",prettyjson:"^1.2.5",tmp:"^0.2.5","tus-js-client":"^4.3.1",typescript:"^5.9.3",zod:"^3.24.0"}};import{existsSync as BS,readFileSync as HS}from"node:fs";var z8=y1(a$(),1),f7=y1(s$(),1);import{stdin as jw,stdout as Tw}from"node:process";import*as v9 from"node:readline";import Vw from"node:readline";import{Writable as sh}from"node:stream";function th({onlyFirst:D=!1}={}){let Y=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(Y,D?void 0:"g")}var eh=th();function Sw(D){if(typeof D!="string")throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(eh,"")}function Pw(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var Iw={exports:{}};(function(D){var Y={};D.exports=Y,Y.eastAsianWidth=function(Q){var J=Q.charCodeAt(0),W=Q.length==2?Q.charCodeAt(1):0,$=J;return 55296<=J&&J<=56319&&56320<=W&&W<=57343&&(J&=1023,W&=1023,$=J<<10|W,$+=65536),$==12288||65281<=$&&$<=65376||65504<=$&&$<=65510?"F":$==8361||65377<=$&&$<=65470||65474<=$&&$<=65479||65482<=$&&$<=65487||65490<=$&&$<=65495||65498<=$&&$<=65500||65512<=$&&$<=65518?"H":4352<=$&&$<=4447||4515<=$&&$<=4519||4602<=$&&$<=4607||9001<=$&&$<=9002||11904<=$&&$<=11929||11931<=$&&$<=12019||12032<=$&&$<=12245||12272<=$&&$<=12283||12289<=$&&$<=12350||12353<=$&&$<=12438||12441<=$&&$<=12543||12549<=$&&$<=12589||12593<=$&&$<=12686||12688<=$&&$<=12730||12736<=$&&$<=12771||12784<=$&&$<=12830||12832<=$&&$<=12871||12880<=$&&$<=13054||13056<=$&&$<=19903||19968<=$&&$<=42124||42128<=$&&$<=42182||43360<=$&&$<=43388||44032<=$&&$<=55203||55216<=$&&$<=55238||55243<=$&&$<=55291||63744<=$&&$<=64255||65040<=$&&$<=65049||65072<=$&&$<=65106||65108<=$&&$<=65126||65128<=$&&$<=65131||110592<=$&&$<=110593||127488<=$&&$<=127490||127504<=$&&$<=127546||127552<=$&&$<=127560||127568<=$&&$<=127569||131072<=$&&$<=194367||177984<=$&&$<=196605||196608<=$&&$<=262141?"W":32<=$&&$<=126||162<=$&&$<=163||165<=$&&$<=166||$==172||$==175||10214<=$&&$<=10221||10629<=$&&$<=10630?"Na":$==161||$==164||167<=$&&$<=168||$==170||173<=$&&$<=174||176<=$&&$<=180||182<=$&&$<=186||188<=$&&$<=191||$==198||$==208||215<=$&&$<=216||222<=$&&$<=225||$==230||232<=$&&$<=234||236<=$&&$<=237||$==240||242<=$&&$<=243||247<=$&&$<=250||$==252||$==254||$==257||$==273||$==275||$==283||294<=$&&$<=295||$==299||305<=$&&$<=307||$==312||319<=$&&$<=322||$==324||328<=$&&$<=331||$==333||338<=$&&$<=339||358<=$&&$<=359||$==363||$==462||$==464||$==466||$==468||$==470||$==472||$==474||$==476||$==593||$==609||$==708||$==711||713<=$&&$<=715||$==717||$==720||728<=$&&$<=731||$==733||$==735||768<=$&&$<=879||913<=$&&$<=929||931<=$&&$<=937||945<=$&&$<=961||963<=$&&$<=969||$==1025||1040<=$&&$<=1103||$==1105||$==8208||8211<=$&&$<=8214||8216<=$&&$<=8217||8220<=$&&$<=8221||8224<=$&&$<=8226||8228<=$&&$<=8231||$==8240||8242<=$&&$<=8243||$==8245||$==8251||$==8254||$==8308||$==8319||8321<=$&&$<=8324||$==8364||$==8451||$==8453||$==8457||$==8467||$==8470||8481<=$&&$<=8482||$==8486||$==8491||8531<=$&&$<=8532||8539<=$&&$<=8542||8544<=$&&$<=8555||8560<=$&&$<=8569||$==8585||8592<=$&&$<=8601||8632<=$&&$<=8633||$==8658||$==8660||$==8679||$==8704||8706<=$&&$<=8707||8711<=$&&$<=8712||$==8715||$==8719||$==8721||$==8725||$==8730||8733<=$&&$<=8736||$==8739||$==8741||8743<=$&&$<=8748||$==8750||8756<=$&&$<=8759||8764<=$&&$<=8765||$==8776||$==8780||$==8786||8800<=$&&$<=8801||8804<=$&&$<=8807||8810<=$&&$<=8811||8814<=$&&$<=8815||8834<=$&&$<=8835||8838<=$&&$<=8839||$==8853||$==8857||$==8869||$==8895||$==8978||9312<=$&&$<=9449||9451<=$&&$<=9547||9552<=$&&$<=9587||9600<=$&&$<=9615||9618<=$&&$<=9621||9632<=$&&$<=9633||9635<=$&&$<=9641||9650<=$&&$<=9651||9654<=$&&$<=9655||9660<=$&&$<=9661||9664<=$&&$<=9665||9670<=$&&$<=9672||$==9675||9678<=$&&$<=9681||9698<=$&&$<=9701||$==9711||9733<=$&&$<=9734||$==9737||9742<=$&&$<=9743||9748<=$&&$<=9749||$==9756||$==9758||$==9792||$==9794||9824<=$&&$<=9825||9827<=$&&$<=9829||9831<=$&&$<=9834||9836<=$&&$<=9837||$==9839||9886<=$&&$<=9887||9918<=$&&$<=9919||9924<=$&&$<=9933||9935<=$&&$<=9953||$==9955||9960<=$&&$<=9983||$==10045||$==10071||10102<=$&&$<=10111||11093<=$&&$<=11097||12872<=$&&$<=12879||57344<=$&&$<=63743||65024<=$&&$<=65039||$==65533||127232<=$&&$<=127242||127248<=$&&$<=127277||127280<=$&&$<=127337||127344<=$&&$<=127386||917760<=$&&$<=917999||983040<=$&&$<=1048573||1048576<=$&&$<=1114109?"A":"N"},Y.characterLength=function(Q){var J=this.eastAsianWidth(Q);return J=="F"||J=="W"||J=="A"?2:1};function X(Q){return Q.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}Y.length=function(Q){for(var J=X(Q),W=0,$=0;$<J.length;$++)W=W+this.characterLength(J[$]);return W},Y.slice=function(Q,J,W){textLen=Y.length(Q),J=J||0,W=W||1,J<0&&(J=textLen+J),W<0&&(W=textLen+W);for(var $="",G=0,B=X(Q),H=0;H<B.length;H++){var F=B[H],K=Y.length(F);if(G>=J-(K==2?1:0))if(G+K<=W)$+=F;else break;G+=K}return $}})(Iw);var Dg=Iw.exports,Yg=Pw(Dg),Xg=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},Qg=Pw(Xg);function h7(D,Y={}){if(typeof D!="string"||D.length===0||(Y={ambiguousIsNarrow:!0,...Y},D=Sw(D),D.length===0))return 0;D=D.replace(Qg()," ");let X=Y.ambiguousIsNarrow?1:2,Q=0;for(let J of D){let W=J.codePointAt(0);if(W<=31||W>=127&&W<=159||W>=768&&W<=879)continue;switch(Yg.eastAsianWidth(J)){case"F":case"W":Q+=2;break;case"A":Q+=X;break;default:Q+=1}}return Q}var t$=10,Lw=(D=0)=>(Y)=>`\x1B[${Y+D}m`,Mw=(D=0)=>(Y)=>`\x1B[${38+D};5;${Y}m`,Ow=(D=0)=>(Y,X,Q)=>`\x1B[${38+D};2;${Y};${X};${Q}m`,w1={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(w1.modifier);var Jg=Object.keys(w1.color),Wg=Object.keys(w1.bgColor);[...Jg,...Wg];function $g(){let D=new Map;for(let[Y,X]of Object.entries(w1)){for(let[Q,J]of Object.entries(X))w1[Q]={open:`\x1B[${J[0]}m`,close:`\x1B[${J[1]}m`},X[Q]=w1[Q],D.set(J[0],J[1]);Object.defineProperty(w1,Y,{value:X,enumerable:!1})}return Object.defineProperty(w1,"codes",{value:D,enumerable:!1}),w1.color.close="\x1B[39m",w1.bgColor.close="\x1B[49m",w1.color.ansi=Lw(),w1.color.ansi256=Mw(),w1.color.ansi16m=Ow(),w1.bgColor.ansi=Lw(t$),w1.bgColor.ansi256=Mw(t$),w1.bgColor.ansi16m=Ow(t$),Object.defineProperties(w1,{rgbToAnsi256:{value:(Y,X,Q)=>Y===X&&X===Q?Y<8?16:Y>248?231:Math.round((Y-8)/247*24)+232:16+36*Math.round(Y/255*5)+6*Math.round(X/255*5)+Math.round(Q/255*5),enumerable:!1},hexToRgb:{value:(Y)=>{let X=/[a-f\d]{6}|[a-f\d]{3}/i.exec(Y.toString(16));if(!X)return[0,0,0];let[Q]=X;Q.length===3&&(Q=[...Q].map((W)=>W+W).join(""));let J=Number.parseInt(Q,16);return[J>>16&255,J>>8&255,J&255]},enumerable:!1},hexToAnsi256:{value:(Y)=>w1.rgbToAnsi256(...w1.hexToRgb(Y)),enumerable:!1},ansi256ToAnsi:{value:(Y)=>{if(Y<8)return 30+Y;if(Y<16)return 90+(Y-8);let X,Q,J;if(Y>=232)X=((Y-232)*10+8)/255,Q=X,J=X;else{Y-=16;let G=Y%36;X=Math.floor(Y/36)/5,Q=Math.floor(G/6)/5,J=G%6/5}let W=Math.max(X,Q,J)*2;if(W===0)return 30;let $=30+(Math.round(J)<<2|Math.round(Q)<<1|Math.round(X));return W===2&&($+=60),$},enumerable:!1},rgbToAnsi:{value:(Y,X,Q)=>w1.ansi256ToAnsi(w1.rgbToAnsi256(Y,X,Q)),enumerable:!1},hexToAnsi:{value:(Y)=>w1.ansi256ToAnsi(w1.hexToAnsi256(Y)),enumerable:!1}}),w1}var Gg=$g(),RX=new Set(["\x1B",""]),Bg=39,YG="\x07",Cw="[",Hg="]",xw="m",XG=`${Hg}8;;`,Nw=(D)=>`${RX.values().next().value}${Cw}${D}${xw}`,Aw=(D)=>`${RX.values().next().value}${XG}${D}${YG}`,Fg=(D)=>D.split(" ").map((Y)=>h7(Y)),e$=(D,Y,X)=>{let Q=[...Y],J=!1,W=!1,$=h7(Sw(D[D.length-1]));for(let[G,B]of Q.entries()){let H=h7(B);if($+H<=X?D[D.length-1]+=B:(D.push(B),$=0),RX.has(B)&&(J=!0,W=Q.slice(G+1).join("").startsWith(XG)),J){W?B===YG&&(J=!1,W=!1):B===xw&&(J=!1);continue}$+=H,$===X&&G<Q.length-1&&(D.push(""),$=0)}!$&&D[D.length-1].length>0&&D.length>1&&(D[D.length-2]+=D.pop())},qg=(D)=>{let Y=D.split(" "),X=Y.length;for(;X>0&&!(h7(Y[X-1])>0);)X--;return X===Y.length?D:Y.slice(0,X).join(" ")+Y.slice(X).join("")},Kg=(D,Y,X={})=>{if(X.trim!==!1&&D.trim()==="")return"";let Q="",J,W,$=Fg(D),G=[""];for(let[H,F]of D.split(" ").entries()){X.trim!==!1&&(G[G.length-1]=G[G.length-1].trimStart());let K=h7(G[G.length-1]);if(H!==0&&(K>=Y&&(X.wordWrap===!1||X.trim===!1)&&(G.push(""),K=0),(K>0||X.trim===!1)&&(G[G.length-1]+=" ",K++)),X.hard&&$[H]>Y){let U=Y-K,z=1+Math.floor(($[H]-U-1)/Y);Math.floor(($[H]-1)/Y)<z&&G.push(""),e$(G,F,Y);continue}if(K+$[H]>Y&&K>0&&$[H]>0){if(X.wordWrap===!1&&K<Y){e$(G,F,Y);continue}G.push("")}if(K+$[H]>Y&&X.wordWrap===!1){e$(G,F,Y);continue}G[G.length-1]+=F}X.trim!==!1&&(G=G.map((H)=>qg(H)));let B=[...G.join(`
|
|
137
|
+
deps: ${X}}`};var z20={keyword:"dependencies",type:"object",schemaType:"object",error:Ay.error,code(D){let[Y,X]=U20(D);Oy(D,Y),Ny(D,X)}};function U20({schema:D}){let Y={},X={};for(let Q in D){if(Q==="__proto__")continue;let J=Array.isArray(D[Q])?Y:X;J[Q]=D[Q]}return[Y,X]}function Oy(D,Y=D.schema){let{gen:X,data:Q,it:J}=D;if(Object.keys(Y).length===0)return;let W=X.let("missing");for(let $ in Y){let G=Y[$];if(G.length===0)continue;let B=(0,qX.propertyInData)(X,Q,$,J.opts.ownProperties);if(D.setParams({property:$,depsCount:G.length,deps:G.join(", ")}),J.allErrors)X.if(B,()=>{for(let H of G)(0,qX.checkReportMissingProp)(D,H)});else X.if(zU._`${B} && (${(0,qX.checkMissingProp)(D,G,W)})`),(0,qX.reportMissingProp)(D,W),X.else()}}Ay.validatePropertyDeps=Oy;function Ny(D,Y=D.schema){let{gen:X,data:Q,keyword:J,it:W}=D,$=X.name("valid");for(let G in Y){if((0,K20.alwaysValidSchema)(W,Y[G]))continue;X.if((0,qX.propertyInData)(X,Q,G,W.opts.ownProperties),()=>{let B=D.subschema({keyword:J,schemaProp:G},$);D.mergeValidEvaluated(B,$)},()=>X.var($,!0)),D.ok($)}}Ay.validateSchemaDeps=Ny;Ay.default=z20});var Sy=T((Ty)=>{Object.defineProperty(Ty,"__esModule",{value:!0});var jy=x0(),L20=p0(),M20={message:"property name must be valid",params:({params:D})=>jy._`{propertyName: ${D.propertyName}}`},O20={keyword:"propertyNames",type:"object",schemaType:["object","boolean"],error:M20,code(D){let{gen:Y,schema:X,data:Q,it:J}=D;if((0,L20.alwaysValidSchema)(J,X))return;let W=Y.name("valid");Y.forIn("key",Q,($)=>{D.setParams({propertyName:$}),D.subschema({keyword:"propertyNames",data:$,dataTypes:["string"],propertyName:$,compositeRule:!0},W),Y.if((0,jy.not)(W),()=>{if(D.error(!0),!J.allErrors)Y.break()})}),D.ok(W)}};Ty.default=O20});var UU=T((Py)=>{Object.defineProperty(Py,"__esModule",{value:!0});var T$=A6(),c6=x0(),A20=C9(),S$=p0(),Z20={message:"must NOT have additional properties",params:({params:D})=>c6._`{additionalProperty: ${D.additionalProperty}}`},E20={keyword:"additionalProperties",type:["object"],schemaType:["boolean","object"],allowUndefined:!0,trackErrors:!0,error:Z20,code(D){let{gen:Y,schema:X,parentSchema:Q,data:J,errsCount:W,it:$}=D;if(!W)throw Error("ajv implementation error");let{allErrors:G,opts:B}=$;if($.props=!0,B.removeAdditional!=="all"&&(0,S$.alwaysValidSchema)($,X))return;let H=(0,T$.allSchemaProperties)(Q.properties),F=(0,T$.allSchemaProperties)(Q.patternProperties);K(),D.ok(c6._`${W} === ${A20.default.errors}`);function K(){Y.forIn("key",J,(L)=>{if(!H.length&&!F.length)w(L);else Y.if(U(L),()=>w(L))})}function U(L){let O;if(H.length>8){let A=(0,S$.schemaRefOrVal)($,Q.properties,"properties");O=(0,T$.isOwnProperty)(Y,A,L)}else if(H.length)O=(0,c6.or)(...H.map((A)=>c6._`${L} === ${A}`));else O=c6.nil;if(F.length)O=(0,c6.or)(O,...F.map((A)=>c6._`${(0,T$.usePattern)(D,A)}.test(${L})`));return(0,c6.not)(O)}function z(L){Y.code(c6._`delete ${J}[${L}]`)}function w(L){if(B.removeAdditional==="all"||B.removeAdditional&&X===!1){z(L);return}if(X===!1){if(D.setParams({additionalProperty:L}),D.error(),!G)Y.break();return}if(typeof X=="object"&&!(0,S$.alwaysValidSchema)($,X)){let O=Y.name("valid");if(B.removeAdditional==="failing")V(L,O,!1),Y.if((0,c6.not)(O),()=>{D.reset(),z(L)});else if(V(L,O),!G)Y.if((0,c6.not)(O),()=>Y.break())}}function V(L,O,A){let M={keyword:"additionalProperties",dataProp:L,dataPropType:S$.Type.Str};if(A===!1)Object.assign(M,{compositeRule:!0,createErrors:!1,allErrors:!1});D.subschema(M,O)}}};Py.default=E20});var _y=T((xy)=>{Object.defineProperty(xy,"__esModule",{value:!0});var j20=eY(),Iy=A6(),wU=p0(),Cy=UU(),T20={keyword:"properties",type:"object",schemaType:"object",code(D){let{gen:Y,schema:X,parentSchema:Q,data:J,it:W}=D;if(W.opts.removeAdditional==="all"&&Q.additionalProperties===void 0)Cy.default.code(new j20.KeywordCxt(W,Cy.default,"additionalProperties"));let $=(0,Iy.allSchemaProperties)(X);for(let K of $)W.definedProperties.add(K);if(W.opts.unevaluated&&$.length&&W.props!==!0)W.props=wU.mergeEvaluated.props(Y,(0,wU.toHash)($),W.props);let G=$.filter((K)=>!(0,wU.alwaysValidSchema)(W,X[K]));if(G.length===0)return;let B=Y.name("valid");for(let K of G){if(H(K))F(K);else{if(Y.if((0,Iy.propertyInData)(Y,J,K,W.opts.ownProperties)),F(K),!W.allErrors)Y.else().var(B,!0);Y.endIf()}D.it.definedProperties.add(K),D.ok(B)}function H(K){return W.opts.useDefaults&&!W.compositeRule&&X[K].default!==void 0}function F(K){D.subschema({keyword:"properties",schemaProp:K,dataProp:K},B)}}};xy.default=T20});var fy=T((yy)=>{Object.defineProperty(yy,"__esModule",{value:!0});var by=A6(),P$=x0(),ky=p0(),vy=p0(),P20={keyword:"patternProperties",type:"object",schemaType:"object",code(D){let{gen:Y,schema:X,data:Q,parentSchema:J,it:W}=D,{opts:$}=W,G=(0,by.allSchemaProperties)(X),B=G.filter((V)=>(0,ky.alwaysValidSchema)(W,X[V]));if(G.length===0||B.length===G.length&&(!W.opts.unevaluated||W.props===!0))return;let H=$.strictSchema&&!$.allowMatchingProperties&&J.properties,F=Y.name("valid");if(W.props!==!0&&!(W.props instanceof P$.Name))W.props=(0,vy.evaluatedPropsToName)(Y,W.props);let{props:K}=W;U();function U(){for(let V of G){if(H)z(V);if(W.allErrors)w(V);else Y.var(F,!0),w(V),Y.if(F)}}function z(V){for(let L in H)if(new RegExp(V).test(L))(0,ky.checkStrictMode)(W,`property ${L} matches pattern ${V} (use allowMatchingProperties)`)}function w(V){Y.forIn("key",Q,(L)=>{Y.if(P$._`${(0,by.usePattern)(D,V)}.test(${L})`,()=>{let O=B.includes(V);if(!O)D.subschema({keyword:"patternProperties",schemaProp:V,dataProp:L,dataPropType:vy.Type.Str},F);if(W.opts.unevaluated&&K!==!0)Y.assign(P$._`${K}[${L}]`,!0);else if(!O&&!W.allErrors)Y.if((0,P$.not)(F),()=>Y.break())})})}}};yy.default=P20});var gy=T((hy)=>{Object.defineProperty(hy,"__esModule",{value:!0});var C20=p0(),x20={keyword:"not",schemaType:["object","boolean"],trackErrors:!0,code(D){let{gen:Y,schema:X,it:Q}=D;if((0,C20.alwaysValidSchema)(Q,X)){D.fail();return}let J=Y.name("valid");D.subschema({keyword:"not",compositeRule:!0,createErrors:!1,allErrors:!1},J),D.failResult(J,()=>D.reset(),()=>D.error())},error:{message:"must NOT be valid"}};hy.default=x20});var my=T((uy)=>{Object.defineProperty(uy,"__esModule",{value:!0});var b20=A6(),k20={keyword:"anyOf",schemaType:"array",trackErrors:!0,code:b20.validateUnion,error:{message:"must match a schema in anyOf"}};uy.default=k20});var ly=T((cy)=>{Object.defineProperty(cy,"__esModule",{value:!0});var I$=x0(),y20=p0(),f20={message:"must match exactly one schema in oneOf",params:({params:D})=>I$._`{passingSchemas: ${D.passing}}`},h20={keyword:"oneOf",schemaType:"array",trackErrors:!0,error:f20,code(D){let{gen:Y,schema:X,parentSchema:Q,it:J}=D;if(!Array.isArray(X))throw Error("ajv implementation error");if(J.opts.discriminator&&Q.discriminator)return;let W=X,$=Y.let("valid",!1),G=Y.let("passing",null),B=Y.name("_valid");D.setParams({passing:G}),Y.block(H),D.result($,()=>D.reset(),()=>D.error(!0));function H(){W.forEach((F,K)=>{let U;if((0,y20.alwaysValidSchema)(J,F))Y.var(B,!0);else U=D.subschema({keyword:"oneOf",schemaProp:K,compositeRule:!0},B);if(K>0)Y.if(I$._`${B} && ${$}`).assign($,!1).assign(G,I$._`[${G}, ${K}]`).else();Y.if(B,()=>{if(Y.assign($,!0),Y.assign(G,K),U)D.mergeEvaluated(U,I$.Name)})})}}};cy.default=h20});var py=T((dy)=>{Object.defineProperty(dy,"__esModule",{value:!0});var u20=p0(),m20={keyword:"allOf",schemaType:"array",code(D){let{gen:Y,schema:X,it:Q}=D;if(!Array.isArray(X))throw Error("ajv implementation error");let J=Y.name("valid");X.forEach((W,$)=>{if((0,u20.alwaysValidSchema)(Q,W))return;let G=D.subschema({keyword:"allOf",schemaProp:$},J);D.ok(J),D.mergeEvaluated(G)})}};dy.default=m20});var ay=T((ry)=>{Object.defineProperty(ry,"__esModule",{value:!0});var C$=x0(),iy=p0(),l20={message:({params:D})=>C$.str`must match "${D.ifClause}" schema`,params:({params:D})=>C$._`{failingKeyword: ${D.ifClause}}`},d20={keyword:"if",schemaType:["object","boolean"],trackErrors:!0,error:l20,code(D){let{gen:Y,parentSchema:X,it:Q}=D;if(X.then===void 0&&X.else===void 0)(0,iy.checkStrictMode)(Q,'"if" without "then" and "else" is ignored');let J=ny(Q,"then"),W=ny(Q,"else");if(!J&&!W)return;let $=Y.let("valid",!0),G=Y.name("_valid");if(B(),D.reset(),J&&W){let F=Y.let("ifClause");D.setParams({ifClause:F}),Y.if(G,H("then",F),H("else",F))}else if(J)Y.if(G,H("then"));else Y.if((0,C$.not)(G),H("else"));D.pass($,()=>D.error(!0));function B(){let F=D.subschema({keyword:"if",compositeRule:!0,createErrors:!1,allErrors:!1},G);D.mergeEvaluated(F)}function H(F,K){return()=>{let U=D.subschema({keyword:F},G);if(Y.assign($,G),D.mergeValidEvaluated(U,$),K)Y.assign(K,C$._`${F}`);else D.setParams({ifClause:F})}}}};function ny(D,Y){let X=D.schema[Y];return X!==void 0&&!(0,iy.alwaysValidSchema)(D,X)}ry.default=d20});var sy=T((oy)=>{Object.defineProperty(oy,"__esModule",{value:!0});var n20=p0(),i20={keyword:["then","else"],schemaType:["object","boolean"],code({keyword:D,parentSchema:Y,it:X}){if(Y.if===void 0)(0,n20.checkStrictMode)(X,`"${D}" without "if" is ignored`)}};oy.default=i20});var ey=T((ty)=>{Object.defineProperty(ty,"__esModule",{value:!0});var a20=qU(),o20=zy(),s20=KU(),t20=Vy(),e20=My(),DF0=Ry(),YF0=Sy(),XF0=UU(),QF0=_y(),JF0=fy(),WF0=gy(),$F0=my(),GF0=ly(),BF0=py(),HF0=ay(),FF0=sy();function qF0(D=!1){let Y=[WF0.default,$F0.default,GF0.default,BF0.default,HF0.default,FF0.default,YF0.default,XF0.default,DF0.default,QF0.default,JF0.default];if(D)Y.push(o20.default,t20.default);else Y.push(a20.default,s20.default);return Y.push(e20.default),Y}ty.default=qF0});var Yf=T((Df)=>{Object.defineProperty(Df,"__esModule",{value:!0});var m1=x0(),zF0={message:({schemaCode:D})=>m1.str`must match format "${D}"`,params:({schemaCode:D})=>m1._`{format: ${D}}`},UF0={keyword:"format",type:["number","string"],schemaType:"string",$data:!0,error:zF0,code(D,Y){let{gen:X,data:Q,$data:J,schema:W,schemaCode:$,it:G}=D,{opts:B,errSchemaPath:H,schemaEnv:F,self:K}=G;if(!B.validateFormats)return;if(J)U();else z();function U(){let w=X.scopeValue("formats",{ref:K.formats,code:B.code.formats}),V=X.const("fDef",m1._`${w}[${$}]`),L=X.let("fType"),O=X.let("format");X.if(m1._`typeof ${V} == "object" && !(${V} instanceof RegExp)`,()=>X.assign(L,m1._`${V}.type || "string"`).assign(O,m1._`${V}.validate`),()=>X.assign(L,m1._`"string"`).assign(O,V)),D.fail$data((0,m1.or)(A(),M()));function A(){if(B.strictSchema===!1)return m1.nil;return m1._`${$} && !${O}`}function M(){let E=F.$async?m1._`(${V}.async ? await ${O}(${Q}) : ${O}(${Q}))`:m1._`${O}(${Q})`,j=m1._`(typeof ${O} == "function" ? ${E} : ${O}.test(${Q}))`;return m1._`${O} && ${O} !== true && ${L} === ${Y} && !${j}`}}function z(){let w=K.formats[W];if(!w){A();return}if(w===!0)return;let[V,L,O]=M(w);if(V===Y)D.pass(E());function A(){if(B.strictSchema===!1){K.logger.warn(j());return}throw Error(j());function j(){return`unknown format "${W}" ignored in schema at path "${H}"`}}function M(j){let I=j instanceof RegExp?(0,m1.regexpCode)(j):B.code.formats?m1._`${B.code.formats}${(0,m1.getProperty)(W)}`:void 0,x=X.scopeValue("formats",{key:W,ref:j,code:I});if(typeof j=="object"&&!(j instanceof RegExp))return[j.type||"string",j.validate,m1._`${x}.validate`];return["string",j,x]}function E(){if(typeof w=="object"&&!(w instanceof RegExp)&&w.async){if(!F.$async)throw Error("async format in sync schema");return m1._`await ${O}(${Q})`}return typeof L=="function"?m1._`${O}(${Q})`:m1._`${O}.test(${Q})`}}}};Df.default=UF0});var Qf=T((Xf)=>{Object.defineProperty(Xf,"__esModule",{value:!0});var VF0=Yf(),LF0=[VF0.default];Xf.default=LF0});var $f=T((Jf)=>{Object.defineProperty(Jf,"__esModule",{value:!0});Jf.contentVocabulary=Jf.metadataVocabulary=void 0;Jf.metadataVocabulary=["title","description","default","deprecated","readOnly","writeOnly","examples"];Jf.contentVocabulary=["contentMediaType","contentEncoding","contentSchema"]});var Hf=T((Bf)=>{Object.defineProperty(Bf,"__esModule",{value:!0});var NF0=xv(),AF0=Jy(),ZF0=ey(),EF0=Qf(),Gf=$f(),RF0=[NF0.default,AF0.default,(0,ZF0.default)(),EF0.default,Gf.metadataVocabulary,Gf.contentVocabulary];Bf.default=RF0});var zf=T((qf)=>{Object.defineProperty(qf,"__esModule",{value:!0});qf.DiscrError=void 0;var Ff;(function(D){D.Tag="tag",D.Mapping="mapping"})(Ff||(qf.DiscrError=Ff={}))});var Vf=T((wf)=>{Object.defineProperty(wf,"__esModule",{value:!0});var x7=x0(),VU=zf(),Uf=q$(),TF0=DX(),SF0=p0(),PF0={message:({params:{discrError:D,tagName:Y}})=>D===VU.DiscrError.Tag?`tag "${Y}" must be string`:`value of tag "${Y}" must be in oneOf`,params:({params:{discrError:D,tag:Y,tagName:X}})=>x7._`{error: ${D}, tag: ${X}, tagValue: ${Y}}`},IF0={keyword:"discriminator",type:"object",schemaType:"object",error:PF0,code(D){let{gen:Y,data:X,schema:Q,parentSchema:J,it:W}=D,{oneOf:$}=J;if(!W.opts.discriminator)throw Error("discriminator: requires discriminator option");let G=Q.propertyName;if(typeof G!="string")throw Error("discriminator: requires propertyName");if(Q.mapping)throw Error("discriminator: mapping is not supported");if(!$)throw Error("discriminator: requires oneOf keyword");let B=Y.let("valid",!1),H=Y.const("tag",x7._`${X}${(0,x7.getProperty)(G)}`);Y.if(x7._`typeof ${H} == "string"`,()=>F(),()=>D.error(!1,{discrError:VU.DiscrError.Tag,tag:H,tagName:G})),D.ok(B);function F(){let z=U();Y.if(!1);for(let w in z)Y.elseIf(x7._`${H} === ${w}`),Y.assign(B,K(z[w]));Y.else(),D.error(!1,{discrError:VU.DiscrError.Mapping,tag:H,tagName:G}),Y.endIf()}function K(z){let w=Y.name("valid"),V=D.subschema({keyword:"oneOf",schemaProp:z},w);return D.mergeEvaluated(V,x7.Name),w}function U(){var z;let w={},V=O(J),L=!0;for(let E=0;E<$.length;E++){let j=$[E];if((j===null||j===void 0?void 0:j.$ref)&&!(0,SF0.schemaHasRulesButRef)(j,W.self.RULES)){let x=j.$ref;if(j=Uf.resolveRef.call(W.self,W.schemaEnv.root,W.baseId,x),j instanceof Uf.SchemaEnv)j=j.schema;if(j===void 0)throw new TF0.default(W.opts.uriResolver,W.baseId,x)}let I=(z=j===null||j===void 0?void 0:j.properties)===null||z===void 0?void 0:z[G];if(typeof I!="object")throw Error(`discriminator: oneOf subschemas (or referenced schemas) must have "properties/${G}"`);L=L&&(V||O(j)),A(I,E)}if(!L)throw Error(`discriminator: "${G}" must be required`);return w;function O({required:E}){return Array.isArray(E)&&E.includes(G)}function A(E,j){if(E.const)M(E.const,j);else if(E.enum)for(let I of E.enum)M(I,j);else throw Error(`discriminator: "properties/${G}" must have "const" or "enum"`)}function M(E,j){if(typeof E!="string"||E in w)throw Error(`discriminator: "${G}" values must be unique strings`);w[E]=j}}}};wf.default=IF0});var Lf=T((SC0,xF0)=>{xF0.exports={$schema:"http://json-schema.org/draft-07/schema#",$id:"http://json-schema.org/draft-07/schema#",title:"Core schema meta-schema",definitions:{schemaArray:{type:"array",minItems:1,items:{$ref:"#"}},nonNegativeInteger:{type:"integer",minimum:0},nonNegativeIntegerDefault0:{allOf:[{$ref:"#/definitions/nonNegativeInteger"},{default:0}]},simpleTypes:{enum:["array","boolean","integer","null","number","object","string"]},stringArray:{type:"array",items:{type:"string"},uniqueItems:!0,default:[]}},type:["object","boolean"],properties:{$id:{type:"string",format:"uri-reference"},$schema:{type:"string",format:"uri"},$ref:{type:"string",format:"uri-reference"},$comment:{type:"string"},title:{type:"string"},description:{type:"string"},default:!0,readOnly:{type:"boolean",default:!1},examples:{type:"array",items:!0},multipleOf:{type:"number",exclusiveMinimum:0},maximum:{type:"number"},exclusiveMaximum:{type:"number"},minimum:{type:"number"},exclusiveMinimum:{type:"number"},maxLength:{$ref:"#/definitions/nonNegativeInteger"},minLength:{$ref:"#/definitions/nonNegativeIntegerDefault0"},pattern:{type:"string",format:"regex"},additionalItems:{$ref:"#"},items:{anyOf:[{$ref:"#"},{$ref:"#/definitions/schemaArray"}],default:!0},maxItems:{$ref:"#/definitions/nonNegativeInteger"},minItems:{$ref:"#/definitions/nonNegativeIntegerDefault0"},uniqueItems:{type:"boolean",default:!1},contains:{$ref:"#"},maxProperties:{$ref:"#/definitions/nonNegativeInteger"},minProperties:{$ref:"#/definitions/nonNegativeIntegerDefault0"},required:{$ref:"#/definitions/stringArray"},additionalProperties:{$ref:"#"},definitions:{type:"object",additionalProperties:{$ref:"#"},default:{}},properties:{type:"object",additionalProperties:{$ref:"#"},default:{}},patternProperties:{type:"object",additionalProperties:{$ref:"#"},propertyNames:{format:"regex"},default:{}},dependencies:{type:"object",additionalProperties:{anyOf:[{$ref:"#"},{$ref:"#/definitions/stringArray"}]}},propertyNames:{$ref:"#"},const:!0,enum:{type:"array",items:!0,minItems:1,uniqueItems:!0},type:{anyOf:[{$ref:"#/definitions/simpleTypes"},{type:"array",items:{$ref:"#/definitions/simpleTypes"},minItems:1,uniqueItems:!0}]},format:{type:"string"},contentMediaType:{type:"string"},contentEncoding:{type:"string"},if:{$ref:"#"},then:{$ref:"#"},else:{$ref:"#"},allOf:{$ref:"#/definitions/schemaArray"},anyOf:{$ref:"#/definitions/schemaArray"},oneOf:{$ref:"#/definitions/schemaArray"},not:{$ref:"#"}},default:!0}});var MU=T((a8,LU)=>{Object.defineProperty(a8,"__esModule",{value:!0});a8.MissingRefError=a8.ValidationError=a8.CodeGen=a8.Name=a8.nil=a8.stringify=a8.str=a8._=a8.KeywordCxt=a8.Ajv=void 0;var _F0=Av(),bF0=Hf(),kF0=Vf(),Mf=Lf(),vF0=["/properties"],x$="http://json-schema.org/draft-07/schema";class KX extends _F0.default{_addVocabularies(){if(super._addVocabularies(),bF0.default.forEach((D)=>this.addVocabulary(D)),this.opts.discriminator)this.addKeyword(kF0.default)}_addDefaultMetaSchema(){if(super._addDefaultMetaSchema(),!this.opts.meta)return;let D=this.opts.$data?this.$dataMetaSchema(Mf,vF0):Mf;this.addMetaSchema(D,x$,!1),this.refs["http://json-schema.org/schema"]=x$}defaultMeta(){return this.opts.defaultMeta=super.defaultMeta()||(this.getSchema(x$)?x$:void 0)}}a8.Ajv=KX;LU.exports=a8=KX;LU.exports.Ajv=KX;Object.defineProperty(a8,"__esModule",{value:!0});a8.default=KX;var yF0=eY();Object.defineProperty(a8,"KeywordCxt",{enumerable:!0,get:function(){return yF0.KeywordCxt}});var _7=x0();Object.defineProperty(a8,"_",{enumerable:!0,get:function(){return _7._}});Object.defineProperty(a8,"str",{enumerable:!0,get:function(){return _7.str}});Object.defineProperty(a8,"stringify",{enumerable:!0,get:function(){return _7.stringify}});Object.defineProperty(a8,"nil",{enumerable:!0,get:function(){return _7.nil}});Object.defineProperty(a8,"Name",{enumerable:!0,get:function(){return _7.Name}});Object.defineProperty(a8,"CodeGen",{enumerable:!0,get:function(){return _7.CodeGen}});var fF0=H$();Object.defineProperty(a8,"ValidationError",{enumerable:!0,get:function(){return fF0.default}});var hF0=DX();Object.defineProperty(a8,"MissingRefError",{enumerable:!0,get:function(){return hF0.default}})});var Pf=T((Tf)=>{Object.defineProperty(Tf,"__esModule",{value:!0});Tf.formatNames=Tf.fastFormats=Tf.fullFormats=void 0;function G9(D,Y){return{validate:D,compare:Y}}Tf.fullFormats={date:G9(Zf,ZU),time:G9(NU(!0),EU),"date-time":G9(Of(!0),Rf),"iso-time":G9(NU(),Ef),"iso-date-time":G9(Of(),jf),duration:/^P(?!$)((\d+Y)?(\d+M)?(\d+D)?(T(?=\d)(\d+H)?(\d+M)?(\d+S)?)?|(\d+W)?)$/,uri:nF0,"uri-reference":/^(?:[a-z][a-z0-9+\-.]*:)?(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'"()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'"()*+,;=:@]|%[0-9a-f]{2})*)*)?(?:\?(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'"()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i,"uri-template":/^(?:(?:[^\x00-\x20"'<>%\\^`{|}]|%[0-9a-f]{2})|\{[+#./;?&=,!@|]?(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?(?:,(?:[a-z0-9_]|%[0-9a-f]{2})+(?::[1-9][0-9]{0,3}|\*)?)*\})*$/i,url:/^(?:https?|ftp):\/\/(?:\S+(?::\S*)?@)?(?:(?!(?:10|127)(?:\.\d{1,3}){3})(?!(?:169\.254|192\.168)(?:\.\d{1,3}){2})(?!172\.(?:1[6-9]|2\d|3[0-1])(?:\.\d{1,3}){2})(?:[1-9]\d?|1\d\d|2[01]\d|22[0-3])(?:\.(?:1?\d{1,2}|2[0-4]\d|25[0-5])){2}(?:\.(?:[1-9]\d?|1\d\d|2[0-4]\d|25[0-4]))|(?:(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)(?:\.(?:[a-z0-9\u{00a1}-\u{ffff}]+-)*[a-z0-9\u{00a1}-\u{ffff}]+)*(?:\.(?:[a-z\u{00a1}-\u{ffff}]{2,})))(?::\d{2,5})?(?:\/[^\s]*)?$/iu,email:/^[a-z0-9!#$%&'*+/=?^_`{|}~-]+(?:\.[a-z0-9!#$%&'*+/=?^_`{|}~-]+)*@(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\.)+[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/i,hostname:/^(?=.{1,253}\.?$)[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[-0-9a-z]{0,61}[0-9a-z])?)*\.?$/i,ipv4:/^(?:(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)\.){3}(?:25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)$/,ipv6:/^((([0-9a-f]{1,4}:){7}([0-9a-f]{1,4}|:))|(([0-9a-f]{1,4}:){6}(:[0-9a-f]{1,4}|((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){5}(((:[0-9a-f]{1,4}){1,2})|:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3})|:))|(([0-9a-f]{1,4}:){4}(((:[0-9a-f]{1,4}){1,3})|((:[0-9a-f]{1,4})?:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){3}(((:[0-9a-f]{1,4}){1,4})|((:[0-9a-f]{1,4}){0,2}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){2}(((:[0-9a-f]{1,4}){1,5})|((:[0-9a-f]{1,4}){0,3}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(([0-9a-f]{1,4}:){1}(((:[0-9a-f]{1,4}){1,6})|((:[0-9a-f]{1,4}){0,4}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:))|(:(((:[0-9a-f]{1,4}){1,7})|((:[0-9a-f]{1,4}){0,5}:((25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)(\.(25[0-5]|2[0-4]\d|1\d\d|[1-9]?\d)){3}))|:)))$/i,regex:eF0,uuid:/^(?:urn:uuid:)?[0-9a-f]{8}-(?:[0-9a-f]{4}-){3}[0-9a-f]{12}$/i,"json-pointer":/^(?:\/(?:[^~/]|~0|~1)*)*$/,"json-pointer-uri-fragment":/^#(?:\/(?:[a-z0-9_\-.!$&'()*+,;:=@]|%[0-9a-f]{2}|~0|~1)*)*$/i,"relative-json-pointer":/^(?:0|[1-9][0-9]*)(?:#|(?:\/(?:[^~/]|~0|~1)*)*)$/,byte:iF0,int32:{type:"number",validate:oF0},int64:{type:"number",validate:sF0},float:{type:"number",validate:Af},double:{type:"number",validate:Af},password:!0,binary:!0};Tf.fastFormats={...Tf.fullFormats,date:G9(/^\d\d\d\d-[0-1]\d-[0-3]\d$/,ZU),time:G9(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,EU),"date-time":G9(/^\d\d\d\d-[0-1]\d-[0-3]\dt(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)$/i,Rf),"iso-time":G9(/^(?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,Ef),"iso-date-time":G9(/^\d\d\d\d-[0-1]\d-[0-3]\d[t\s](?:[0-2]\d:[0-5]\d:[0-5]\d|23:59:60)(?:\.\d+)?(?:z|[+-]\d\d(?::?\d\d)?)?$/i,jf),uri:/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/)?[^\s]*$/i,"uri-reference":/^(?:(?:[a-z][a-z0-9+\-.]*:)?\/?\/)?(?:[^\\\s#][^\s#]*)?(?:#[^\\\s]*)?$/i,email:/^[a-z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?(?:\.[a-z0-9](?:[a-z0-9-]{0,61}[a-z0-9])?)*$/i};Tf.formatNames=Object.keys(Tf.fullFormats);function mF0(D){return D%4===0&&(D%100!==0||D%400===0)}var cF0=/^(\d\d\d\d)-(\d\d)-(\d\d)$/,lF0=[0,31,28,31,30,31,30,31,31,30,31,30,31];function Zf(D){let Y=cF0.exec(D);if(!Y)return!1;let X=+Y[1],Q=+Y[2],J=+Y[3];return Q>=1&&Q<=12&&J>=1&&J<=(Q===2&&mF0(X)?29:lF0[Q])}function ZU(D,Y){if(!(D&&Y))return;if(D>Y)return 1;if(D<Y)return-1;return 0}var OU=/^(\d\d):(\d\d):(\d\d(?:\.\d+)?)(z|([+-])(\d\d)(?::?(\d\d))?)?$/i;function NU(D){return function(X){let Q=OU.exec(X);if(!Q)return!1;let J=+Q[1],W=+Q[2],$=+Q[3],G=Q[4],B=Q[5]==="-"?-1:1,H=+(Q[6]||0),F=+(Q[7]||0);if(H>23||F>59||D&&!G)return!1;if(J<=23&&W<=59&&$<60)return!0;let K=W-F*B,U=J-H*B-(K<0?1:0);return(U===23||U===-1)&&(K===59||K===-1)&&$<61}}function EU(D,Y){if(!(D&&Y))return;let X=new Date("2020-01-01T"+D).valueOf(),Q=new Date("2020-01-01T"+Y).valueOf();if(!(X&&Q))return;return X-Q}function Ef(D,Y){if(!(D&&Y))return;let X=OU.exec(D),Q=OU.exec(Y);if(!(X&&Q))return;if(D=X[1]+X[2]+X[3],Y=Q[1]+Q[2]+Q[3],D>Y)return 1;if(D<Y)return-1;return 0}var AU=/t|\s/i;function Of(D){let Y=NU(D);return function(Q){let J=Q.split(AU);return J.length===2&&Zf(J[0])&&Y(J[1])}}function Rf(D,Y){if(!(D&&Y))return;let X=new Date(D).valueOf(),Q=new Date(Y).valueOf();if(!(X&&Q))return;return X-Q}function jf(D,Y){if(!(D&&Y))return;let[X,Q]=D.split(AU),[J,W]=Y.split(AU),$=ZU(X,J);if($===void 0)return;return $||EU(Q,W)}var dF0=/\/|:/,pF0=/^(?:[a-z][a-z0-9+\-.]*:)(?:\/?\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:]|%[0-9a-f]{2})*@)?(?:\[(?:(?:(?:(?:[0-9a-f]{1,4}:){6}|::(?:[0-9a-f]{1,4}:){5}|(?:[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){4}|(?:(?:[0-9a-f]{1,4}:){0,1}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){3}|(?:(?:[0-9a-f]{1,4}:){0,2}[0-9a-f]{1,4})?::(?:[0-9a-f]{1,4}:){2}|(?:(?:[0-9a-f]{1,4}:){0,3}[0-9a-f]{1,4})?::[0-9a-f]{1,4}:|(?:(?:[0-9a-f]{1,4}:){0,4}[0-9a-f]{1,4})?::)(?:[0-9a-f]{1,4}:[0-9a-f]{1,4}|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?))|(?:(?:[0-9a-f]{1,4}:){0,5}[0-9a-f]{1,4})?::[0-9a-f]{1,4}|(?:(?:[0-9a-f]{1,4}:){0,6}[0-9a-f]{1,4})?::)|[Vv][0-9a-f]+\.[a-z0-9\-._~!$&'()*+,;=:]+)\]|(?:(?:25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(?:25[0-5]|2[0-4]\d|[01]?\d\d?)|(?:[a-z0-9\-._~!$&'()*+,;=]|%[0-9a-f]{2})*)(?::\d*)?(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*|\/(?:(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)?|(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})+(?:\/(?:[a-z0-9\-._~!$&'()*+,;=:@]|%[0-9a-f]{2})*)*)(?:\?(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?(?:#(?:[a-z0-9\-._~!$&'()*+,;=:@/?]|%[0-9a-f]{2})*)?$/i;function nF0(D){return dF0.test(D)&&pF0.test(D)}var Nf=/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/gm;function iF0(D){return Nf.lastIndex=0,Nf.test(D)}var rF0=-2147483648,aF0=2147483647;function oF0(D){return Number.isInteger(D)&&D<=aF0&&D>=rF0}function sF0(D){return Number.isInteger(D)}function Af(){return!0}var tF0=/[^\\]\\Z/;function eF0(D){if(tF0.test(D))return!1;try{return new RegExp(D),!0}catch(Y){return!1}}});var Cf=T((If)=>{Object.defineProperty(If,"__esModule",{value:!0});If.formatLimitDefinition=void 0;var Yq0=MU(),l6=x0(),RD=l6.operators,_$={formatMaximum:{okStr:"<=",ok:RD.LTE,fail:RD.GT},formatMinimum:{okStr:">=",ok:RD.GTE,fail:RD.LT},formatExclusiveMaximum:{okStr:"<",ok:RD.LT,fail:RD.GTE},formatExclusiveMinimum:{okStr:">",ok:RD.GT,fail:RD.LTE}},Xq0={message:({keyword:D,schemaCode:Y})=>l6.str`should be ${_$[D].okStr} ${Y}`,params:({keyword:D,schemaCode:Y})=>l6._`{comparison: ${_$[D].okStr}, limit: ${Y}}`};If.formatLimitDefinition={keyword:Object.keys(_$),type:"string",schemaType:"string",$data:!0,error:Xq0,code(D){let{gen:Y,data:X,schemaCode:Q,keyword:J,it:W}=D,{opts:$,self:G}=W;if(!$.validateFormats)return;let B=new Yq0.KeywordCxt(W,G.RULES.all.format.definition,"format");if(B.$data)H();else F();function H(){let U=Y.scopeValue("formats",{ref:G.formats,code:$.code.formats}),z=Y.const("fmt",l6._`${U}[${B.schemaCode}]`);D.fail$data((0,l6.or)(l6._`typeof ${z} != "object"`,l6._`${z} instanceof RegExp`,l6._`typeof ${z}.compare != "function"`,K(z)))}function F(){let U=B.schema,z=G.formats[U];if(!z||z===!0)return;if(typeof z!="object"||z instanceof RegExp||typeof z.compare!="function")throw Error(`"${J}": format "${U}" does not define "compare" function`);let w=Y.scopeValue("formats",{key:U,ref:z,code:$.code.formats?l6._`${$.code.formats}${(0,l6.getProperty)(U)}`:void 0});D.fail$data(K(w))}function K(U){return l6._`${U}.compare(${X}, ${Q}) ${_$[J].fail} 0`}},dependencies:["format"]};var Qq0=(D)=>{return D.addKeyword(If.formatLimitDefinition),D};If.default=Qq0});var kf=T((zX,bf)=>{Object.defineProperty(zX,"__esModule",{value:!0});var b7=Pf(),Wq0=Cf(),TU=x0(),xf=new TU.Name("fullFormats"),$q0=new TU.Name("fastFormats"),SU=(D,Y={keywords:!0})=>{if(Array.isArray(Y))return _f(D,Y,b7.fullFormats,xf),D;let[X,Q]=Y.mode==="fast"?[b7.fastFormats,$q0]:[b7.fullFormats,xf],J=Y.formats||b7.formatNames;if(_f(D,J,X,Q),Y.keywords)(0,Wq0.default)(D);return D};SU.get=(D,Y="full")=>{let Q=(Y==="fast"?b7.fastFormats:b7.fullFormats)[D];if(!Q)throw Error(`Unknown format "${D}"`);return Q};function _f(D,Y,X,Q){var J,W;(J=(W=D.opts.code).formats)!==null&&J!==void 0||(W.formats=TU._`require("ajv-formats/dist/formats").${Q}`);for(let $ of Y)D.addFormat($,X[$])}bf.exports=zX=SU;Object.defineProperty(zX,"__esModule",{value:!0});zX.default=SU});import{exit as pU}from"node:process";var Kw=y1(qw(),1),{program:l1,createCommand:Iq0,createArgument:Cq0,createOption:xq0,CommanderError:_q0,InvalidArgumentError:bq0,InvalidOptionArgumentError:kq0,Command:vq0,Argument:yq0,Option:fq0,Help:hq0}=Kw.default;var f8={name:"@capgo/cli",version:"7.71.0",type:"module",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLI#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/CLI.git"},bugs:{url:"https://github.com/Cap-go/CLI/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js",require:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsc --noEmit",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js","generate-docs":"node dist/index.js generate-docs README.md","test:bundle":"bun test/test-bundle.mjs","test:functional":"bun test/test-functional.mjs","test:semver":"bun test/test-semver-validation.mjs","test:version-edge-cases":"bun test/test-version-validation.mjs","test:regex":"bun test/test-regex-validation.mjs","test:upload":"bun test/test-upload-validation.mjs","test:credentials":"bun test/test-credentials.mjs","test:credentials-validation":"bun test/test-credentials-validation.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh",test:"bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:credentials && bun run test:credentials-validation && bun run test:version-detection"},devDependencies:{"@antfu/eslint-config":"^6.1.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.4","@capacitor/cli":"^8.0.0","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^0.11.0","@modelcontextprotocol/sdk":"^1.0.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.6","@supabase/supabase-js":"^2.79.0","@types/adm-zip":"^0.5.7","@types/node":"^24","@types/prettyjson":"^0.0.33","@types/tmp":"^0.2.6","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.16","ci-info":"^4.3.1",commander:"^14.0.2",eslint:"^9.38.0","git-format-staged":"3.1.3",husky:"^9.1.7","is-wsl":"^3.1.0",micromatch:"^4.0.8",open:"^11.0.0",prettyjson:"^1.2.5",tmp:"^0.2.5","tus-js-client":"^4.3.1",typescript:"^5.9.3",zod:"^3.24.0"}};import{existsSync as BS,readFileSync as HS}from"node:fs";var z8=y1(a$(),1),f7=y1(s$(),1);import{stdin as jw,stdout as Tw}from"node:process";import*as v9 from"node:readline";import Vw from"node:readline";import{Writable as sh}from"node:stream";function th({onlyFirst:D=!1}={}){let Y=["[\\u001B\\u009B][[\\]()#;?]*(?:(?:(?:(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]+)*|[a-zA-Z\\d]+(?:;[-a-zA-Z\\d\\/#&.:=?%@~_]*)*)?(?:\\u0007|\\u001B\\u005C|\\u009C))","(?:(?:\\d{1,4}(?:;\\d{0,4})*)?[\\dA-PR-TZcf-nq-uy=><~]))"].join("|");return new RegExp(Y,D?void 0:"g")}var eh=th();function Sw(D){if(typeof D!="string")throw TypeError(`Expected a \`string\`, got \`${typeof D}\``);return D.replace(eh,"")}function Pw(D){return D&&D.__esModule&&Object.prototype.hasOwnProperty.call(D,"default")?D.default:D}var Iw={exports:{}};(function(D){var Y={};D.exports=Y,Y.eastAsianWidth=function(Q){var J=Q.charCodeAt(0),W=Q.length==2?Q.charCodeAt(1):0,$=J;return 55296<=J&&J<=56319&&56320<=W&&W<=57343&&(J&=1023,W&=1023,$=J<<10|W,$+=65536),$==12288||65281<=$&&$<=65376||65504<=$&&$<=65510?"F":$==8361||65377<=$&&$<=65470||65474<=$&&$<=65479||65482<=$&&$<=65487||65490<=$&&$<=65495||65498<=$&&$<=65500||65512<=$&&$<=65518?"H":4352<=$&&$<=4447||4515<=$&&$<=4519||4602<=$&&$<=4607||9001<=$&&$<=9002||11904<=$&&$<=11929||11931<=$&&$<=12019||12032<=$&&$<=12245||12272<=$&&$<=12283||12289<=$&&$<=12350||12353<=$&&$<=12438||12441<=$&&$<=12543||12549<=$&&$<=12589||12593<=$&&$<=12686||12688<=$&&$<=12730||12736<=$&&$<=12771||12784<=$&&$<=12830||12832<=$&&$<=12871||12880<=$&&$<=13054||13056<=$&&$<=19903||19968<=$&&$<=42124||42128<=$&&$<=42182||43360<=$&&$<=43388||44032<=$&&$<=55203||55216<=$&&$<=55238||55243<=$&&$<=55291||63744<=$&&$<=64255||65040<=$&&$<=65049||65072<=$&&$<=65106||65108<=$&&$<=65126||65128<=$&&$<=65131||110592<=$&&$<=110593||127488<=$&&$<=127490||127504<=$&&$<=127546||127552<=$&&$<=127560||127568<=$&&$<=127569||131072<=$&&$<=194367||177984<=$&&$<=196605||196608<=$&&$<=262141?"W":32<=$&&$<=126||162<=$&&$<=163||165<=$&&$<=166||$==172||$==175||10214<=$&&$<=10221||10629<=$&&$<=10630?"Na":$==161||$==164||167<=$&&$<=168||$==170||173<=$&&$<=174||176<=$&&$<=180||182<=$&&$<=186||188<=$&&$<=191||$==198||$==208||215<=$&&$<=216||222<=$&&$<=225||$==230||232<=$&&$<=234||236<=$&&$<=237||$==240||242<=$&&$<=243||247<=$&&$<=250||$==252||$==254||$==257||$==273||$==275||$==283||294<=$&&$<=295||$==299||305<=$&&$<=307||$==312||319<=$&&$<=322||$==324||328<=$&&$<=331||$==333||338<=$&&$<=339||358<=$&&$<=359||$==363||$==462||$==464||$==466||$==468||$==470||$==472||$==474||$==476||$==593||$==609||$==708||$==711||713<=$&&$<=715||$==717||$==720||728<=$&&$<=731||$==733||$==735||768<=$&&$<=879||913<=$&&$<=929||931<=$&&$<=937||945<=$&&$<=961||963<=$&&$<=969||$==1025||1040<=$&&$<=1103||$==1105||$==8208||8211<=$&&$<=8214||8216<=$&&$<=8217||8220<=$&&$<=8221||8224<=$&&$<=8226||8228<=$&&$<=8231||$==8240||8242<=$&&$<=8243||$==8245||$==8251||$==8254||$==8308||$==8319||8321<=$&&$<=8324||$==8364||$==8451||$==8453||$==8457||$==8467||$==8470||8481<=$&&$<=8482||$==8486||$==8491||8531<=$&&$<=8532||8539<=$&&$<=8542||8544<=$&&$<=8555||8560<=$&&$<=8569||$==8585||8592<=$&&$<=8601||8632<=$&&$<=8633||$==8658||$==8660||$==8679||$==8704||8706<=$&&$<=8707||8711<=$&&$<=8712||$==8715||$==8719||$==8721||$==8725||$==8730||8733<=$&&$<=8736||$==8739||$==8741||8743<=$&&$<=8748||$==8750||8756<=$&&$<=8759||8764<=$&&$<=8765||$==8776||$==8780||$==8786||8800<=$&&$<=8801||8804<=$&&$<=8807||8810<=$&&$<=8811||8814<=$&&$<=8815||8834<=$&&$<=8835||8838<=$&&$<=8839||$==8853||$==8857||$==8869||$==8895||$==8978||9312<=$&&$<=9449||9451<=$&&$<=9547||9552<=$&&$<=9587||9600<=$&&$<=9615||9618<=$&&$<=9621||9632<=$&&$<=9633||9635<=$&&$<=9641||9650<=$&&$<=9651||9654<=$&&$<=9655||9660<=$&&$<=9661||9664<=$&&$<=9665||9670<=$&&$<=9672||$==9675||9678<=$&&$<=9681||9698<=$&&$<=9701||$==9711||9733<=$&&$<=9734||$==9737||9742<=$&&$<=9743||9748<=$&&$<=9749||$==9756||$==9758||$==9792||$==9794||9824<=$&&$<=9825||9827<=$&&$<=9829||9831<=$&&$<=9834||9836<=$&&$<=9837||$==9839||9886<=$&&$<=9887||9918<=$&&$<=9919||9924<=$&&$<=9933||9935<=$&&$<=9953||$==9955||9960<=$&&$<=9983||$==10045||$==10071||10102<=$&&$<=10111||11093<=$&&$<=11097||12872<=$&&$<=12879||57344<=$&&$<=63743||65024<=$&&$<=65039||$==65533||127232<=$&&$<=127242||127248<=$&&$<=127277||127280<=$&&$<=127337||127344<=$&&$<=127386||917760<=$&&$<=917999||983040<=$&&$<=1048573||1048576<=$&&$<=1114109?"A":"N"},Y.characterLength=function(Q){var J=this.eastAsianWidth(Q);return J=="F"||J=="W"||J=="A"?2:1};function X(Q){return Q.match(/[\uD800-\uDBFF][\uDC00-\uDFFF]|[^\uD800-\uDFFF]/g)||[]}Y.length=function(Q){for(var J=X(Q),W=0,$=0;$<J.length;$++)W=W+this.characterLength(J[$]);return W},Y.slice=function(Q,J,W){textLen=Y.length(Q),J=J||0,W=W||1,J<0&&(J=textLen+J),W<0&&(W=textLen+W);for(var $="",G=0,B=X(Q),H=0;H<B.length;H++){var F=B[H],K=Y.length(F);if(G>=J-(K==2?1:0))if(G+K<=W)$+=F;else break;G+=K}return $}})(Iw);var Dg=Iw.exports,Yg=Pw(Dg),Xg=function(){return/\uD83C\uDFF4\uDB40\uDC67\uDB40\uDC62(?:\uDB40\uDC77\uDB40\uDC6C\uDB40\uDC73|\uDB40\uDC73\uDB40\uDC63\uDB40\uDC74|\uDB40\uDC65\uDB40\uDC6E\uDB40\uDC67)\uDB40\uDC7F|(?:\uD83E\uDDD1\uD83C\uDFFF\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFF\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFE])|(?:\uD83E\uDDD1\uD83C\uDFFE\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFE\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFD\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFD\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFC\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFC\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|(?:\uD83E\uDDD1\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1|\uD83D\uDC69\uD83C\uDFFB\u200D\uD83E\uDD1D\u200D(?:\uD83D[\uDC68\uDC69]))(?:\uD83C[\uDFFC-\uDFFF])|\uD83D\uDC68(?:\uD83C\uDFFB(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFC-\uDFFF])|[\u2695\u2696\u2708]\uFE0F|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))?|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFF]))|\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D)?\uD83D\uDC68|(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFE])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB-\uDFFD\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83E\uDD1D\u200D\uD83D\uDC68(?:\uD83C[\uDFFB\uDFFD-\uDFFF])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])\uFE0F|\u200D(?:(?:\uD83D[\uDC68\uDC69])\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D[\uDC66\uDC67])|\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC)?|(?:\uD83D\uDC69(?:\uD83C\uDFFB\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|(?:\uD83C[\uDFFC-\uDFFF])\u200D\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69]))|\uD83E\uDDD1(?:\uD83C[\uDFFB-\uDFFF])\u200D\uD83E\uDD1D\u200D\uD83E\uDDD1)(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67]))|\uD83D\uDC69(?:\u200D(?:\u2764\uFE0F\u200D(?:\uD83D\uDC8B\u200D(?:\uD83D[\uDC68\uDC69])|\uD83D[\uDC68\uDC69])|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83E\uDDD1(?:\u200D(?:\uD83E\uDD1D\u200D\uD83E\uDDD1|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFF\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFE\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFD\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFC\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C\uDFFB\u200D(?:\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD]))|\uD83D\uDC69\u200D\uD83D\uDC66\u200D\uD83D\uDC66|\uD83D\uDC69\u200D\uD83D\uDC69\u200D(?:\uD83D[\uDC66\uDC67])|\uD83D\uDC69\u200D\uD83D\uDC67\u200D(?:\uD83D[\uDC66\uDC67])|(?:\uD83D\uDC41\uFE0F\u200D\uD83D\uDDE8|\uD83E\uDDD1(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDC69(?:\uD83C\uDFFF\u200D[\u2695\u2696\u2708]|\uD83C\uDFFE\u200D[\u2695\u2696\u2708]|\uD83C\uDFFD\u200D[\u2695\u2696\u2708]|\uD83C\uDFFC\u200D[\u2695\u2696\u2708]|\uD83C\uDFFB\u200D[\u2695\u2696\u2708]|\u200D[\u2695\u2696\u2708])|\uD83D\uDE36\u200D\uD83C\uDF2B|\uD83C\uDFF3\uFE0F\u200D\u26A7|\uD83D\uDC3B\u200D\u2744|(?:(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF])\u200D[\u2640\u2642]|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])\u200D[\u2640\u2642]|\uD83C\uDFF4\u200D\u2620|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])\u200D[\u2640\u2642]|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u2600-\u2604\u260E\u2611\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26B0\u26B1\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0\u26F1\u26F4\u26F7\u26F8\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u3030\u303D\u3297\u3299]|\uD83C[\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]|\uD83D[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3])\uFE0F|\uD83C\uDFF3\uFE0F\u200D\uD83C\uDF08|\uD83D\uDC69\u200D\uD83D\uDC67|\uD83D\uDC69\u200D\uD83D\uDC66|\uD83D\uDE35\u200D\uD83D\uDCAB|\uD83D\uDE2E\u200D\uD83D\uDCA8|\uD83D\uDC15\u200D\uD83E\uDDBA|\uD83E\uDDD1(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83D\uDC69(?:\uD83C\uDFFF|\uD83C\uDFFE|\uD83C\uDFFD|\uD83C\uDFFC|\uD83C\uDFFB)?|\uD83C\uDDFD\uD83C\uDDF0|\uD83C\uDDF6\uD83C\uDDE6|\uD83C\uDDF4\uD83C\uDDF2|\uD83D\uDC08\u200D\u2B1B|\u2764\uFE0F\u200D(?:\uD83D\uDD25|\uD83E\uDE79)|\uD83D\uDC41\uFE0F|\uD83C\uDFF3\uFE0F|\uD83C\uDDFF(?:\uD83C[\uDDE6\uDDF2\uDDFC])|\uD83C\uDDFE(?:\uD83C[\uDDEA\uDDF9])|\uD83C\uDDFC(?:\uD83C[\uDDEB\uDDF8])|\uD83C\uDDFB(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA])|\uD83C\uDDFA(?:\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF])|\uD83C\uDDF9(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF])|\uD83C\uDDF8(?:\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF])|\uD83C\uDDF7(?:\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC])|\uD83C\uDDF5(?:\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE])|\uD83C\uDDF3(?:\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF])|\uD83C\uDDF2(?:\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF])|\uD83C\uDDF1(?:\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE])|\uD83C\uDDF0(?:\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF])|\uD83C\uDDEF(?:\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5])|\uD83C\uDDEE(?:\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9])|\uD83C\uDDED(?:\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA])|\uD83C\uDDEC(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE])|\uD83C\uDDEB(?:\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7])|\uD83C\uDDEA(?:\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA])|\uD83C\uDDE9(?:\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF])|\uD83C\uDDE8(?:\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF])|\uD83C\uDDE7(?:\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF])|\uD83C\uDDE6(?:\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF])|[#\*0-9]\uFE0F\u20E3|\u2764\uFE0F|(?:\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD])(?:\uD83C[\uDFFB-\uDFFF])|(?:\u26F9|\uD83C[\uDFCB\uDFCC]|\uD83D\uDD75)(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|\uD83C\uDFF4|(?:[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5])(?:\uD83C[\uDFFB-\uDFFF])|(?:[\u261D\u270C\u270D]|\uD83D[\uDD74\uDD90])(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])|[\u270A\u270B]|\uD83C[\uDF85\uDFC2\uDFC7]|\uD83D[\uDC08\uDC15\uDC3B\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE2E\uDE35\uDE36\uDE4C\uDE4F\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1C\uDD1E\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5]|\uD83C[\uDFC3\uDFC4\uDFCA]|\uD83D[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6]|\uD83E[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD]|\uD83D\uDC6F|\uD83E[\uDD3C\uDDDE\uDDDF]|[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0D\uDD0E\uDD10-\uDD17\uDD1D\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78\uDD7A-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCB\uDDD0\uDDE0-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6]|(?:[\u231A\u231B\u23E9-\u23EC\u23F0\u23F3\u25FD\u25FE\u2614\u2615\u2648-\u2653\u267F\u2693\u26A1\u26AA\u26AB\u26BD\u26BE\u26C4\u26C5\u26CE\u26D4\u26EA\u26F2\u26F3\u26F5\u26FA\u26FD\u2705\u270A\u270B\u2728\u274C\u274E\u2753-\u2755\u2757\u2795-\u2797\u27B0\u27BF\u2B1B\u2B1C\u2B50\u2B55]|\uD83C[\uDC04\uDCCF\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF93\uDFA0-\uDFCA\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF4\uDFF8-\uDFFF]|\uD83D[\uDC00-\uDC3E\uDC40\uDC42-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDD7A\uDD95\uDD96\uDDA4\uDDFB-\uDE4F\uDE80-\uDEC5\uDECC\uDED0-\uDED2\uDED5-\uDED7\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])|(?:[#\*0-9\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23E9-\u23F3\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB-\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u261D\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692-\u2697\u2699\u269B\u269C\u26A0\u26A1\u26A7\u26AA\u26AB\u26B0\u26B1\u26BD\u26BE\u26C4\u26C5\u26C8\u26CE\u26CF\u26D1\u26D3\u26D4\u26E9\u26EA\u26F0-\u26F5\u26F7-\u26FA\u26FD\u2702\u2705\u2708-\u270D\u270F\u2712\u2714\u2716\u271D\u2721\u2728\u2733\u2734\u2744\u2747\u274C\u274E\u2753-\u2755\u2757\u2763\u2764\u2795-\u2797\u27A1\u27B0\u27BF\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B50\u2B55\u3030\u303D\u3297\u3299]|\uD83C[\uDC04\uDCCF\uDD70\uDD71\uDD7E\uDD7F\uDD8E\uDD91-\uDD9A\uDDE6-\uDDFF\uDE01\uDE02\uDE1A\uDE2F\uDE32-\uDE3A\uDE50\uDE51\uDF00-\uDF21\uDF24-\uDF93\uDF96\uDF97\uDF99-\uDF9B\uDF9E-\uDFF0\uDFF3-\uDFF5\uDFF7-\uDFFF]|\uD83D[\uDC00-\uDCFD\uDCFF-\uDD3D\uDD49-\uDD4E\uDD50-\uDD67\uDD6F\uDD70\uDD73-\uDD7A\uDD87\uDD8A-\uDD8D\uDD90\uDD95\uDD96\uDDA4\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA-\uDE4F\uDE80-\uDEC5\uDECB-\uDED2\uDED5-\uDED7\uDEE0-\uDEE5\uDEE9\uDEEB\uDEEC\uDEF0\uDEF3-\uDEFC\uDFE0-\uDFEB]|\uD83E[\uDD0C-\uDD3A\uDD3C-\uDD45\uDD47-\uDD78\uDD7A-\uDDCB\uDDCD-\uDDFF\uDE70-\uDE74\uDE78-\uDE7A\uDE80-\uDE86\uDE90-\uDEA8\uDEB0-\uDEB6\uDEC0-\uDEC2\uDED0-\uDED6])\uFE0F|(?:[\u261D\u26F9\u270A-\u270D]|\uD83C[\uDF85\uDFC2-\uDFC4\uDFC7\uDFCA-\uDFCC]|\uD83D[\uDC42\uDC43\uDC46-\uDC50\uDC66-\uDC78\uDC7C\uDC81-\uDC83\uDC85-\uDC87\uDC8F\uDC91\uDCAA\uDD74\uDD75\uDD7A\uDD90\uDD95\uDD96\uDE45-\uDE47\uDE4B-\uDE4F\uDEA3\uDEB4-\uDEB6\uDEC0\uDECC]|\uD83E[\uDD0C\uDD0F\uDD18-\uDD1F\uDD26\uDD30-\uDD39\uDD3C-\uDD3E\uDD77\uDDB5\uDDB6\uDDB8\uDDB9\uDDBB\uDDCD-\uDDCF\uDDD1-\uDDDD])/g},Qg=Pw(Xg);function h7(D,Y={}){if(typeof D!="string"||D.length===0||(Y={ambiguousIsNarrow:!0,...Y},D=Sw(D),D.length===0))return 0;D=D.replace(Qg()," ");let X=Y.ambiguousIsNarrow?1:2,Q=0;for(let J of D){let W=J.codePointAt(0);if(W<=31||W>=127&&W<=159||W>=768&&W<=879)continue;switch(Yg.eastAsianWidth(J)){case"F":case"W":Q+=2;break;case"A":Q+=X;break;default:Q+=1}}return Q}var t$=10,Lw=(D=0)=>(Y)=>`\x1B[${Y+D}m`,Mw=(D=0)=>(Y)=>`\x1B[${38+D};5;${Y}m`,Ow=(D=0)=>(Y,X,Q)=>`\x1B[${38+D};2;${Y};${X};${Q}m`,w1={modifier:{reset:[0,0],bold:[1,22],dim:[2,22],italic:[3,23],underline:[4,24],overline:[53,55],inverse:[7,27],hidden:[8,28],strikethrough:[9,29]},color:{black:[30,39],red:[31,39],green:[32,39],yellow:[33,39],blue:[34,39],magenta:[35,39],cyan:[36,39],white:[37,39],blackBright:[90,39],gray:[90,39],grey:[90,39],redBright:[91,39],greenBright:[92,39],yellowBright:[93,39],blueBright:[94,39],magentaBright:[95,39],cyanBright:[96,39],whiteBright:[97,39]},bgColor:{bgBlack:[40,49],bgRed:[41,49],bgGreen:[42,49],bgYellow:[43,49],bgBlue:[44,49],bgMagenta:[45,49],bgCyan:[46,49],bgWhite:[47,49],bgBlackBright:[100,49],bgGray:[100,49],bgGrey:[100,49],bgRedBright:[101,49],bgGreenBright:[102,49],bgYellowBright:[103,49],bgBlueBright:[104,49],bgMagentaBright:[105,49],bgCyanBright:[106,49],bgWhiteBright:[107,49]}};Object.keys(w1.modifier);var Jg=Object.keys(w1.color),Wg=Object.keys(w1.bgColor);[...Jg,...Wg];function $g(){let D=new Map;for(let[Y,X]of Object.entries(w1)){for(let[Q,J]of Object.entries(X))w1[Q]={open:`\x1B[${J[0]}m`,close:`\x1B[${J[1]}m`},X[Q]=w1[Q],D.set(J[0],J[1]);Object.defineProperty(w1,Y,{value:X,enumerable:!1})}return Object.defineProperty(w1,"codes",{value:D,enumerable:!1}),w1.color.close="\x1B[39m",w1.bgColor.close="\x1B[49m",w1.color.ansi=Lw(),w1.color.ansi256=Mw(),w1.color.ansi16m=Ow(),w1.bgColor.ansi=Lw(t$),w1.bgColor.ansi256=Mw(t$),w1.bgColor.ansi16m=Ow(t$),Object.defineProperties(w1,{rgbToAnsi256:{value:(Y,X,Q)=>Y===X&&X===Q?Y<8?16:Y>248?231:Math.round((Y-8)/247*24)+232:16+36*Math.round(Y/255*5)+6*Math.round(X/255*5)+Math.round(Q/255*5),enumerable:!1},hexToRgb:{value:(Y)=>{let X=/[a-f\d]{6}|[a-f\d]{3}/i.exec(Y.toString(16));if(!X)return[0,0,0];let[Q]=X;Q.length===3&&(Q=[...Q].map((W)=>W+W).join(""));let J=Number.parseInt(Q,16);return[J>>16&255,J>>8&255,J&255]},enumerable:!1},hexToAnsi256:{value:(Y)=>w1.rgbToAnsi256(...w1.hexToRgb(Y)),enumerable:!1},ansi256ToAnsi:{value:(Y)=>{if(Y<8)return 30+Y;if(Y<16)return 90+(Y-8);let X,Q,J;if(Y>=232)X=((Y-232)*10+8)/255,Q=X,J=X;else{Y-=16;let G=Y%36;X=Math.floor(Y/36)/5,Q=Math.floor(G/6)/5,J=G%6/5}let W=Math.max(X,Q,J)*2;if(W===0)return 30;let $=30+(Math.round(J)<<2|Math.round(Q)<<1|Math.round(X));return W===2&&($+=60),$},enumerable:!1},rgbToAnsi:{value:(Y,X,Q)=>w1.ansi256ToAnsi(w1.rgbToAnsi256(Y,X,Q)),enumerable:!1},hexToAnsi:{value:(Y)=>w1.ansi256ToAnsi(w1.hexToAnsi256(Y)),enumerable:!1}}),w1}var Gg=$g(),RX=new Set(["\x1B",""]),Bg=39,YG="\x07",Cw="[",Hg="]",xw="m",XG=`${Hg}8;;`,Nw=(D)=>`${RX.values().next().value}${Cw}${D}${xw}`,Aw=(D)=>`${RX.values().next().value}${XG}${D}${YG}`,Fg=(D)=>D.split(" ").map((Y)=>h7(Y)),e$=(D,Y,X)=>{let Q=[...Y],J=!1,W=!1,$=h7(Sw(D[D.length-1]));for(let[G,B]of Q.entries()){let H=h7(B);if($+H<=X?D[D.length-1]+=B:(D.push(B),$=0),RX.has(B)&&(J=!0,W=Q.slice(G+1).join("").startsWith(XG)),J){W?B===YG&&(J=!1,W=!1):B===xw&&(J=!1);continue}$+=H,$===X&&G<Q.length-1&&(D.push(""),$=0)}!$&&D[D.length-1].length>0&&D.length>1&&(D[D.length-2]+=D.pop())},qg=(D)=>{let Y=D.split(" "),X=Y.length;for(;X>0&&!(h7(Y[X-1])>0);)X--;return X===Y.length?D:Y.slice(0,X).join(" ")+Y.slice(X).join("")},Kg=(D,Y,X={})=>{if(X.trim!==!1&&D.trim()==="")return"";let Q="",J,W,$=Fg(D),G=[""];for(let[H,F]of D.split(" ").entries()){X.trim!==!1&&(G[G.length-1]=G[G.length-1].trimStart());let K=h7(G[G.length-1]);if(H!==0&&(K>=Y&&(X.wordWrap===!1||X.trim===!1)&&(G.push(""),K=0),(K>0||X.trim===!1)&&(G[G.length-1]+=" ",K++)),X.hard&&$[H]>Y){let U=Y-K,z=1+Math.floor(($[H]-U-1)/Y);Math.floor(($[H]-1)/Y)<z&&G.push(""),e$(G,F,Y);continue}if(K+$[H]>Y&&K>0&&$[H]>0){if(X.wordWrap===!1&&K<Y){e$(G,F,Y);continue}G.push("")}if(K+$[H]>Y&&X.wordWrap===!1){e$(G,F,Y);continue}G[G.length-1]+=F}X.trim!==!1&&(G=G.map((H)=>qg(H)));let B=[...G.join(`
|
|
138
138
|
`)];for(let[H,F]of B.entries()){if(Q+=F,RX.has(F)){let{groups:U}=new RegExp(`(?:\\${Cw}(?<code>\\d+)m|\\${XG}(?<uri>.*)${YG})`).exec(B.slice(H).join(""))||{groups:{}};if(U.code!==void 0){let z=Number.parseFloat(U.code);J=z===Bg?void 0:z}else U.uri!==void 0&&(W=U.uri.length===0?void 0:U.uri)}let K=Gg.codes.get(Number(J));B[H+1]===`
|
|
139
139
|
`?(W&&(Q+=Aw("")),J&&K&&(Q+=Nw(K))):F===`
|
|
140
140
|
`&&(J&&K&&(Q+=Nw(J)),W&&(Q+=Aw(W)))}return Q};function Zw(D,Y,X){return String(D).normalize().replace(/\r\n/g,`
|
|
@@ -284,7 +284,7 @@ All packages are compatible with channel "${$}"`)}return{finalCompatibility:B.fi
|
|
|
284
284
|
`)+`
|
|
285
285
|
`,Q.join(";").toLowerCase(),J].join(`
|
|
286
286
|
`)}async function qP(D,Y,X){let Q=await kJ(D),J=e2(X,Y);return[YY,B5(Y),J,Q].join(`
|
|
287
|
-
`)}async function XF(D,Y,X){let Q=t2(D),J=await F5("AWS4"+X,Q),W=await F5(J,Y),$=await F5(W,"s3");return await F5($,"aws4_request")}function QF(D,Y,X){return`${D}/${e2(Y,X)}`}async function F5(D,Y){let X=new TextEncoder,Q=await crypto.subtle.importKey("raw",D instanceof Uint8Array?D:X.encode(D),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign","verify"]),J=await crypto.subtle.sign("HMAC",Q,Y instanceof Uint8Array?Y:X.encode(Y));return new Uint8Array(J)}async function KP(D){if(!D.accessKey)throw new $5;if(!D.secretKey)throw new e3;if(D.expirySeconds<1||D.expirySeconds>604800)throw new bJ;let Y=new Date(D.date);Y.setSeconds(Y.getSeconds()+D.expirySeconds);let X=QF(D.accessKey,D.region,D.date),Q=B5(D.date),J={"X-Amz-Algorithm":YY,"X-Amz-Credential":X,"X-Amz-Date":Q,key:D.objectKey,...D.fields},W=[{bucket:D.bucket},{key:D.objectKey},{"X-Amz-Algorithm":YY},{"X-Amz-Credential":X},{"X-Amz-Date":Q}];if(D.conditions)W.push(...D.conditions);for(let[z,w]of Object.entries(D.fields||{})){if(["key","X-Amz-Algorithm","X-Amz-Credential","X-Amz-Date"].includes(z))continue;W.push({[z]:w})}let $={expiration:Y.toISOString(),conditions:W},G=new TextEncoder().encode(JSON.stringify($)),B=btoa(String.fromCharCode(...G));J.policy=B;let H=B,F=await XF(D.date,D.region,D.secretKey),K=DY(await F5(F,H)).toLowerCase();return J["X-Amz-Signature"]=K,{url:`${D.protocol}//${D.host}/${D.bucket}`,fields:J}}var u90=["Content-Type","Cache-Control","Content-Disposition","Content-Encoding","Content-Language","Expires","x-amz-checksum-sha256","x-amz-grant-full-control","x-amz-grant-read","x-amz-grant-read-acp","x-amz-grant-write-acp","x-amz-server-side-encryption","x-amz-storage-class","x-amz-website-redirect-location","x-amz-server-side-encryption-customer-algorithm","x-amz-server-side-encryption-customer-key","x-amz-server-side-encryption-customer-key-MD5","x-amz-server-side-encryption-aws-kms-key-id","x-amz-server-side-encryption-context","x-amz-server-side-encryption-bucket-key-enabled","x-amz-request-payer","x-amz-tagging","x-amz-object-lock-mode","x-amz-object-lock-retain-until-date","x-amz-object-lock-legal-hold","x-amz-expected-bucket-owner"],m90=5242880,c90=5368709120,JF=5497558138880;class vJ{host;port;protocol;accessKey;#D;sessionToken;defaultBucket;region;userAgent="s3-lite-client";pathStyle;pathPrefix;constructor({endPoint:D,useSSL:Y,port:X,pathPrefix:Q,...J}){if(/^https?:\/\//i.test(D)){if(Y!==void 0||X!==void 0||Q!==void 0)throw new x8("useSSL/port/pathPrefix cannot be specified if endPoint is a URL.");try{let $=new URL(D);if(D=$.hostname,Y=$.protocol==="https:",X=$.port?parseInt($.port,10):Y?443:80,$.pathname&&$.pathname!=="/")Q=$.pathname.endsWith("/")?$.pathname.slice(0,-1):$.pathname}catch{throw new _J(`Invalid endPoint URL: ${D}`)}}if(typeof D!=="string"||D.length===0)throw new _J(`Invalid endPoint: ${D}`);if(Y===void 0)Y=!0;if(X!==void 0&&!WP(X))throw new x8(`Invalid port: ${X}`);if(J.accessKey&&!J.secretKey)throw new x8("If specifying access key, secret key must also be provided.");if(J.accessKey&&J.accessKey.startsWith("ASIA")&&!J.sessionToken)throw new x8("If specifying temporary access key, session token must also be provided.");let W=Y?443:80;if(this.port=X??W,this.host=D.toLowerCase()+(this.port!==W?`:${this.port}`:""),this.protocol=Y?"https:":"http:",this.accessKey=J.accessKey,this.#D=J.secretKey??"",this.sessionToken=J.sessionToken,this.pathStyle=J.pathStyle??!0,this.pathPrefix=Q??"",this.defaultBucket=J.bucket,this.region=J.region,this.pathPrefix){if(!this.pathStyle)throw new x8("pathPrefix is incompatible with pathStyle=false");if(!this.pathPrefix.startsWith("/"))throw new x8("pathPrefix should start with /");if(this.pathPrefix.endsWith("/"))throw new x8("pathPrefix should not end with /")}}getBucketName(D){let Y=D?.bucketName??this.defaultBucket;if(Y===void 0||!$P(Y))throw new a2(Y??"");return Y}buildRequestOptions(D){let Y=this.getBucketName(D),X=this.pathStyle?this.host:`${Y}.${this.host}`,Q=D.headers??new Headers;Q.set("host",X);let J=typeof D.query==="object"?new URLSearchParams(D.query).toString().replace("+","%20"):D.query,W=this.pathStyle?`${this.pathPrefix}/${Y}/${D.objectName}`:`/${D.objectName}`,$=J?`?${J}`:"",G=W+$,B=W.split("/").map((H)=>encodeURIComponent(H)).join("/")+$;return{headers:Q,host:X,path:G,encodedPath:B}}async makeRequest({method:D,payload:Y,...X}){let Q=new Date,{headers:J,host:W,path:$,encodedPath:G}=this.buildRequestOptions(X),B=X.statusCode??200;if(D==="POST"||D==="PUT"||D==="DELETE"){if(Y===void 0)Y=new Uint8Array;else if(typeof Y==="string")Y=new TextEncoder().encode(Y);J.set("Content-Length",String(Y.length))}else if(Y)throw Error(`Unexpected payload on ${D} request.`);let H=await kJ(Y??new Uint8Array);if(J.set("x-amz-date",B5(Q)),J.set("x-amz-content-sha256",H),this.accessKey){if(this.sessionToken)J.set("x-amz-security-token",this.sessionToken);J.set("authorization",await GP({headers:J,method:D,path:$,accessKey:this.accessKey,secretKey:this.#D,region:this.region,date:Q}))}let F=`${this.protocol}//${W}${G}`,K=await fetch(F,{method:D,headers:J,body:Y});if(K.status!==B){if(K.status>=400)throw await JP(K);else if(K.status===301)throw new QD(K.status,"UnexpectedRedirect",'The server unexpectedly returned a redirect response. With AWS S3, this usually means you need to use a region-specific endpoint like "s3.us-west-2.amazonaws.com" instead of "s3.amazonaws.com"');throw new QD(K.status,"UnexpectedStatusCode",`Unexpected response code from the server (expected ${B}, got ${K.status} ${K.statusText}).`)}if(!X.returnBody)await K.body?.getReader().read();return K}async deleteObject(D,Y={}){let X=this.getBucketName(Y);if(!JD(D))throw new E9(D);let Q=Y.versionId?{versionId:Y.versionId}:{},J=new Headers;if(Y.governanceBypass)J.set("X-Amz-Bypass-Governance-Retention","true");await this.makeRequest({method:"DELETE",bucketName:X,objectName:D,headers:J,query:Q,statusCode:204})}async exists(D,Y){try{return await this.statObject(D,Y),!0}catch(X){if(X instanceof QD&&X.statusCode===404)return!1;throw X}}getObject(D,Y){return this.getPartialObject(D,{...Y,offset:0,length:0})}async getPartialObject(D,{offset:Y,length:X,...Q}){let J=this.getBucketName(Q);if(!JD(D))throw new E9(D);let W=new Headers(Object.entries(Q.metadata??{})),$=200;if(Y||X){let B="";if(Y)B=`bytes=${+Y}-`;else B="bytes=0-",Y=0;if(X)B+=`${+X+Y-1}`;W.set("Range",B),$=206}let G={...Q.responseParams,...Q.versionId?{versionId:Q.versionId}:{}};return await this.makeRequest({method:"GET",bucketName:J,objectName:D,headers:W,query:G,statusCode:$,returnBody:!0})}getPresignedUrl(D,Y,X={}){if(!this.accessKey)throw new $5;if(!JD(Y))throw new E9(Y);let{headers:Q,path:J}=this.buildRequestOptions({objectName:Y,bucketName:X.bucketName,query:X.parameters}),W=X.requestDate??new Date,$=X.expirySeconds??604800;return BP({protocol:this.protocol,headers:Q,method:D,path:J,accessKey:this.accessKey,secretKey:this.#D,sessionToken:this.sessionToken,region:this.region,date:W,expirySeconds:$})}presignedGetObject(D,Y={}){let{versionId:X,responseParams:Q,...J}=Y,W={...Q,...X?{versionId:X}:{}};return this.getPresignedUrl("GET",D,{parameters:W,...J})}async*listObjects(D={}){for await(let Y of this.listObjectsGrouped({...D,delimiter:""}))if(Y.type==="Object")yield Y;else throw Error(`Unexpected result from listObjectsGrouped(): ${Y}`)}async*listObjectsGrouped(D){let Y=this.getBucketName(D),X="",Q=D.pageSize??1000;if(Q<1||Q>1000)throw new x8("pageSize must be between 1 and 1,000.");let J=0;while(!0){let W=D.maxResults?Math.min(Q,D.maxResults-J):Q;if(W===0)return;let G=await(await this.makeRequest({method:"GET",bucketName:Y,objectName:"",query:{"list-type":"2",prefix:D.prefix??"",delimiter:D.delimiter,"max-keys":String(W),...X?{"continuation-token":X}:{}},returnBody:!0})).text(),B=XD(G).root;if(!B||B.name!=="ListBucketResult")throw Error(`Unexpected response: ${G}`);let H=B.children.filter((U)=>U.name==="CommonPrefixes").flatMap((U)=>U.children),F=[];for(let U of H)F.push({type:"CommonPrefix",prefix:U.content??""}),J++;for(let U of B.children.filter((z)=>z.name==="Contents"))F.push({type:"Object",key:U.children.find((z)=>z.name==="Key")?.content??"",etag:G5(U.children.find((z)=>z.name==="ETag")?.content??""),size:parseInt(U.children.find((z)=>z.name==="Size")?.content??"",10),lastModified:new Date(U.children.find((z)=>z.name==="LastModified")?.content??"invalid")}),J++;F.sort((U,z)=>{let w=U.type==="Object"?U.key:U.prefix,V=z.type==="Object"?z.key:z.prefix;return w>V?1:w<V?-1:0});for(let U of F)yield U;if(B.children.find((U)=>U.name==="IsTruncated")?.content==="true"){let U=B.children.find((z)=>z.name==="NextContinuationToken")?.content;if(!U)throw Error("Unexpectedly missing continuation token, but server said there are more results.");X=U}else return}}async putObject(D,Y,X){let Q=this.getBucketName(X);if(!JD(D))throw new E9(D);let J,W;if(typeof Y==="string"){let H=new TextEncoder().encode(Y);if(typeof ReadableStream.from<"u")W=ReadableStream.from([H]);else W=new ReadableStream({start(F){F.enqueue(H),F.close()}});J=H.length}else if(Y instanceof Uint8Array){if(typeof ReadableStream.from<"u")W=ReadableStream.from([Y]);else W=new ReadableStream({start(H){H.enqueue(Y),H.close()}});J=Y.byteLength}else if(Y instanceof ReadableStream)W=Y;else throw new x8("Invalid stream/data type provided.");if(X?.size!==void 0){if(J!==void 0&&X?.size!==J)throw new x8(`size was specified (${X.size}) but doesn't match auto-detected size (${J}).`);if(typeof X.size!=="number"||X.size<0||isNaN(X.size))throw new x8(`invalid size specified: ${X.size}`);else J=X.size}let $=X?.partSize??this.calculatePartSize(J);if($<m90)throw new x8("Part size should be greater than 5MB");else if($>c90)throw new x8("Part size should be less than 6MB");let G=new r2($),B=new DF({client:this,bucketName:Q,objectName:D,partSize:$,metadata:X?.metadata??{}});return await W.pipeThrough(G).pipeTo(B),B.getResult()}calculatePartSize(D){if(D===void 0)D=JF;if(D>JF)throw TypeError(`size should not be more than ${JF}`);let Y=67108864;while(!0){if(Y*1e4>D)return Y;Y+=16777216}}async statObject(D,Y){let X=this.getBucketName(Y);if(!JD(D))throw new E9(D);let Q={};if(Y?.versionId)Q.versionId=Y.versionId;let J=await this.makeRequest({method:"HEAD",bucketName:X,objectName:D,query:Q,headers:new Headers(Y?.headers)}),W={};for(let $ of u90)if(J.headers.has($))W[$]=J.headers.get($);return J.headers.forEach(($,G)=>{if(G.startsWith("x-amz-meta-"))W[G]=J.headers.get(G)}),{type:"Object",key:D,size:parseInt(J.headers.get("content-length")??"",10),metadata:W,lastModified:new Date(J.headers.get("Last-Modified")??"error: missing last modified"),versionId:J.headers.get("x-amz-version-id")||null,etag:G5(J.headers.get("ETag")??"")}}async copyObject(D,Y,X){let Q=this.getBucketName(X),J=D.sourceBucketName??Q;if(!JD(Y))throw new E9(Y);let W=`${J}/${D.sourceKey}`;if(D.sourceVersionId)W+=`?versionId=${D.sourceVersionId}`;let $=new Headers(X?.metadata);if(X?.metadata!==void 0)$.set("x-amz-metadata-directive","REPLACE");$.set("x-amz-copy-source",W);let G=await this.makeRequest({method:"PUT",bucketName:Q,objectName:Y,headers:$,returnBody:!0}),B=await G.text(),H=XD(B).root;if(!H||H.name!=="CopyObjectResult")throw Error(`Unexpected response: ${B}`);let F=H.children.find((U)=>U.name==="ETag")?.content??"",K=H.children.find((U)=>U.name==="LastModified")?.content;if(K===void 0)throw Error("Unable to find <LastModified>...</LastModified> from the server.");return{copySourceVersionId:G.headers.get("x-amz-copy-source-version-id")||null,etag:G5(F),lastModified:new Date(K),versionId:G.headers.get("x-amz-version-id")||null}}async bucketExists(D){try{return await this.listObjects({bucketName:D}).next(),!0}catch(Y){if(Y instanceof QD&&Y.statusCode===404)return!1;throw Y}}async makeBucket(D){await this.makeRequest({method:"PUT",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:200})}async removeBucket(D){await this.makeRequest({method:"DELETE",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:204})}presignedPostObject(D,Y={}){if(!JD(D))throw new E9(D);let X=this.getBucketName(Y);if(!X)throw Error("Bucket name is required for presignedPost, but none was provided either to this method nor to the client constructor");let Q=Y.requestDate||new Date,J=Y.expirySeconds??3600;return KP({protocol:this.protocol,host:this.host,bucket:X,objectKey:D,accessKey:this.accessKey||"",secretKey:this.#D||"",region:this.region,date:Q,expirySeconds:J,conditions:Y.conditions,fields:Y.fields})}}function zP(D){try{let Y=I0(D);return u8(g9(Y,"patch"))}catch{let Y=D.match(/^(\d+)\.(\d+)\.(\d+)/);if(Y){let[,X,Q,J]=Y;return`${X}.${Q}.${Number.parseInt(J)+1}`}return"1.0.1"}}async function UP(D,Y){let X=zP(D),Q=Y?` for ${Y}`:"",J=await D8({message:`How do you want to handle the version${Q}?`,options:[{value:"auto",label:`Auto: Bump patch version (${D} → ${X})`},{value:"manual",label:"Manual: I'll provide the version number"}]});if(R0(J))return null;if(J==="auto")return q.info(`\uD83D\uDD22 Auto-bumped version from ${D} to ${X}`),X;let W=await h8({message:`Current version is ${D}. Enter new version:`,validate:($)=>{if(!$)return"Version is required";if(!$.match(/^\d+\.\d+\.\d+/))return"Please enter a valid version (x.y.z)"}});if(R0(W))return null;return W}function wP(D){let Y=zP(D);try{let X=I0(D);return[Y,u8(g9(X,"minor")),`${D}-beta.1`,`${D}.1`]}catch{return[Y,`${D}.1`,`${D}-beta.1`,`${D}-rc.1`]}}import{readdirSync as VP,readFileSync as l90,statSync as d90}from"node:fs";import{extname as p90,join as n90}from"node:path";function i90(D,Y){return l90(D,"utf8").includes(Y)}function XY(D,Y){let X=VP(D);for(let Q of X){let J=n90(D,Q),W=d90(J);if(W.isDirectory()){if(XY(J,Y))return!0}else if(W.isFile()&&p90(J)===".js"){if(i90(J,Y))return!0}}return!1}function yJ(D){if(VP(D).indexOf("index.html")>-1)return!0;return!1}import{Buffer as M50}from"node:buffer";import{createHash as O50}from"node:crypto";import{createReadStream as NF,statSync as N50}from"node:fs";import{platform as A50}from"node:os";import{join as Z50,posix as E50,win32 as ZI}from"node:path";import{cwd as R50}from"node:process";import{buffer as AF}from"node:stream/consumers";import{createBrotliCompress as j50}from"node:zlib";var EI=y1(AI(),1),RI=y1(vQ(),1);async function T50(D,Y){try{return(await fetch(`${D.hostFilesApi}/files/read/attachments/${encodeURIComponent(Y)}`,{method:"HEAD"})).ok}catch{return!1}}var S50=8192;async function P50(D){let Y=h1(R50()),X=await l8("@capgo/capacitor-updater",Y,D.packageJson),Q;try{Q=X?I0(X):void 0}catch{Q=void 0}if(!X||!Q)return{version:null,supportsBrotliV2:!1};let J=!U6(Q,void 0,void 0,n3);return{version:`${Q.major}.${Q.minor}.${Q.patch}`,supportsBrotliV2:J}}function I50(D,Y){if(!Y)return!1;let X=Y.split(",").map((Q)=>Q.trim()).filter((Q)=>!!Q);if(X.length===0)return!1;return EI.isMatch(D,X)}async function C50(D,Y,X){let J=N50(D).size,W=await AF(NF(D));if(J===0)return{buffer:W,useBrotli:!1};if(I50(Y,X.noBrotliPatterns))return{buffer:W,useBrotli:!1};if(J<S50)return{buffer:W,useBrotli:!1};try{let $=await AF(NF(D).pipe(j50({})));if($.length>=J-10)return{buffer:W,useBrotli:!1};return{buffer:$,useBrotli:!0}}catch($){return q.warn(`Brotli compression failed for ${D}: ${$}, using original file`),{buffer:W,useBrotli:!1}}}async function jI(D,Y,X,Q,J,W,$=!1){let G=d0();G.start(J!=="v2"?"Generating the update manifest":`Generating the update manifest with ${$?"V3":"V2"} encryption`);let B=await DS(D);if(J==="v2")for(let H of B)H.hash=$?i4(H.hash,W):n4(H.hash,W);return G.stop("Manifest generated successfully"),await C0(Y,{channel:"partial-update",event:"Generate manifest",icon:"\uD83D\uDCC2",user_id:X,tags:{"app-id":Q},notify:!1}),B}function x50(D){if(A50()!=="win32")return D;return ZI.normalize(D).split(ZI.sep).join(E50.sep)}function _50(D){let Y=D.split("/").map((X)=>encodeURIComponent(X)).join("/");if(D.includes(" "))q.warn(`File "${D}" contains spaces in its name.`);return Y}async function TI(D,Y,X,Q,J,W,$){let G=d0();G.start("Preparing partial update with TUS protocol");let B=performance.now(),H=await c8(),F=!!($.partial||$.delta||$.partialOnly||$.deltaOnly),{version:K,supportsBrotliV2:U}=await P50($);if(!U)throw Error(`Your project is using an older version of @capgo/capacitor-updater (${K||"unknown"}). To use Delta updates, please upgrade to version ${tT} (v5), ${eT} (v6) or ${n3} (v7) or higher.`);else if($.disableBrotli)q.info("Brotli compression disabled by user request");else if($.noBrotliPatterns)q.info(`Files matching patterns (${$.noBrotliPatterns}) will be excluded from brotli compression`);let z=Y.filter((O)=>O.file.includes(" "));if(z.length>0)throw Error(`Files with spaces in their names (${z.map((O)=>O.file).join(", ")}). Please rename the files.`);let w=0,V=Y.length,L=0;try{G.message(`Uploading ${V} files using TUS protocol`);let O=async(I)=>{let x=Z50(X,I.file),y=x50(I.file),C,c=!1;if($.disableBrotli)C=await AF(NF(x)),c=!1;else{let N=await C50(x,y,$);C=N.buffer,c=N.useBrotli}let S=C;if(W)S=p4(C,W.sessionKey,W.ivSessionKey);let p=y;if(c)p=`${y}.br`,L++;let u=_50(p),J0=O50("sha256").update(I.hash).digest("hex"),_;if(W){let N=M50.from(W.ivSessionKey).toString("hex");_=`orgs/${J}/apps/${Q}/delta/${N}/${J0}_${u}`}else _=`orgs/${J}/apps/${Q}/delta/${J0}_${u}`;if(!W&&await T50(H,_))return w++,Promise.resolve({file_name:u,s3_path:_,file_hash:I.hash});return new Promise((N,Z)=>{G.message(`Prepare upload partial file: ${y}`);let R=DD(p);new RI.Upload(S,{endpoint:`${H.hostFilesApi}/files/upload/attachments/`,chunkSize:$.tusChunkSize,retryDelays:[0,1000,3000,5000,1e4],removeFingerprintOnSuccess:!0,metadata:{filename:_,filetype:R},headers:{Authorization:D},onError:(v)=>{let b=v.toString(),r;try{let g=b.match(/response text: (\{.*?\})/);if(g&&g[1])r=JSON.parse(g[1]).moreInfo?.requestId}catch{}let k=r?` [requestId: ${r}]`:"";q.error(`Failed to upload ${y}: ${b}${k}`),Z(v)},onProgress(){let v=(w/V*100).toFixed(2);G.message(`Uploading partial update: ${v}%`)},onSuccess(){w++,N({file_name:u,s3_path:_,file_hash:I.hash})}}).start()})},A=500,M=[];for(let I=0;I<Y.length;I+=A){let x=Y.slice(I,I+A),y=Math.floor(I/A)+1,C=Math.ceil(Y.length/A);if(C>1)G.message(`Processing batch ${y}/${C} (${x.length} files)`);let c=await Promise.all(x.map((S)=>O(S)));M.push(...c)}let j=((performance.now()-B)/1000).toFixed(2);if(G.stop(`Partial update uploaded successfully \uD83D\uDCAA in (${j} seconds)`),L>0)q.info(`${L} of ${V} files were compressed with brotli and use .br extension`);return await C0(D,{channel:"app",event:`App Partial TUS done${L>0?" with .br extension":""}`,icon:"⏫",user_id:J,tags:{"app-id":Q},notify:!1}),await C0(D,{channel:"performance",event:"Partial upload performance",icon:"\uD83D\uDE84",user_id:J,tags:{"app-id":Q,time:j},notify:!1}),M}catch(O){let M=((performance.now()-B)/1000).toFixed(2);if(G.stop(`Failed to upload Partial bundle (after ${M} seconds)`),F)throw q.error(`Error uploading partial update: ${O}`),q.error("Delta/partial upload was explicitly requested but failed. Upload aborted."),O;else return q.info(`Error uploading partial update: ${O}, This is not a critical error, the bundle has been uploaded without the partial files`),null}}function g0(D){throw q.error(D),Error(D)}function v50(D){let Y=new G1;Y.headers=["Package","Local","Remote","Status","Details"],Y.theme=G1.roundTheme,Y.rows=[];for(let X of D){let{name:Q,localVersion:J,remoteVersion:W}=X,$=W5(X),G=$.compatible?"✅":"❌";Y.rows.push([Q,J||"-",W||"-",G,$.message])}q.info(Y.toString())}async function y50(D,Y){let X=C6("",Y.packageJson),Q=Y.bundle||D?.plugins?.CapacitorUpdater?.version||X||`0.0.1-beta.${b50().split("-")[0]}`;if(!v4.test(Q))g0(`Your bundle name ${Q}, is not valid it should follow semver convention : https://semver.org/`);return Q}function f50(D){let Y=D.apikey||X0();if(!Y)g0("Missing API key, you need to provide an API key to upload your bundle");return Y}function h50(D,Y,X){let Q=_0(D,X),J=Y.path||X?.webDir;if(!Q)g0("Missing argument, you need to provide a appid or be in a capacitor project");if(!J)g0("Missing argument, you need to provide a path (--path), or be in a capacitor project");if(!lJ(J))g0(`Path ${J} does not exist, build your app first, or provide a valid path`);return{appid:Q,path:J}}function g50(D,Y){let X=D.codeCheck;if(typeof X>"u"||X){if(!XY(Y,"notifyAppReady"))g0(`notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready
|
|
287
|
+
`)}async function XF(D,Y,X){let Q=t2(D),J=await F5("AWS4"+X,Q),W=await F5(J,Y),$=await F5(W,"s3");return await F5($,"aws4_request")}function QF(D,Y,X){return`${D}/${e2(Y,X)}`}async function F5(D,Y){let X=new TextEncoder,Q=await crypto.subtle.importKey("raw",D instanceof Uint8Array?D:X.encode(D),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign","verify"]),J=await crypto.subtle.sign("HMAC",Q,Y instanceof Uint8Array?Y:X.encode(Y));return new Uint8Array(J)}async function KP(D){if(!D.accessKey)throw new $5;if(!D.secretKey)throw new e3;if(D.expirySeconds<1||D.expirySeconds>604800)throw new bJ;let Y=new Date(D.date);Y.setSeconds(Y.getSeconds()+D.expirySeconds);let X=QF(D.accessKey,D.region,D.date),Q=B5(D.date),J={"X-Amz-Algorithm":YY,"X-Amz-Credential":X,"X-Amz-Date":Q,key:D.objectKey,...D.fields},W=[{bucket:D.bucket},{key:D.objectKey},{"X-Amz-Algorithm":YY},{"X-Amz-Credential":X},{"X-Amz-Date":Q}];if(D.conditions)W.push(...D.conditions);for(let[z,w]of Object.entries(D.fields||{})){if(["key","X-Amz-Algorithm","X-Amz-Credential","X-Amz-Date"].includes(z))continue;W.push({[z]:w})}let $={expiration:Y.toISOString(),conditions:W},G=new TextEncoder().encode(JSON.stringify($)),B=btoa(String.fromCharCode(...G));J.policy=B;let H=B,F=await XF(D.date,D.region,D.secretKey),K=DY(await F5(F,H)).toLowerCase();return J["X-Amz-Signature"]=K,{url:`${D.protocol}//${D.host}/${D.bucket}`,fields:J}}var u90=["Content-Type","Cache-Control","Content-Disposition","Content-Encoding","Content-Language","Expires","x-amz-checksum-sha256","x-amz-grant-full-control","x-amz-grant-read","x-amz-grant-read-acp","x-amz-grant-write-acp","x-amz-server-side-encryption","x-amz-storage-class","x-amz-website-redirect-location","x-amz-server-side-encryption-customer-algorithm","x-amz-server-side-encryption-customer-key","x-amz-server-side-encryption-customer-key-MD5","x-amz-server-side-encryption-aws-kms-key-id","x-amz-server-side-encryption-context","x-amz-server-side-encryption-bucket-key-enabled","x-amz-request-payer","x-amz-tagging","x-amz-object-lock-mode","x-amz-object-lock-retain-until-date","x-amz-object-lock-legal-hold","x-amz-expected-bucket-owner"],m90=5242880,c90=5368709120,JF=5497558138880;class vJ{host;port;protocol;accessKey;#D;sessionToken;defaultBucket;region;userAgent="s3-lite-client";pathStyle;pathPrefix;constructor({endPoint:D,useSSL:Y,port:X,pathPrefix:Q,...J}){if(/^https?:\/\//i.test(D)){if(Y!==void 0||X!==void 0||Q!==void 0)throw new x8("useSSL/port/pathPrefix cannot be specified if endPoint is a URL.");try{let $=new URL(D);if(D=$.hostname,Y=$.protocol==="https:",X=$.port?parseInt($.port,10):Y?443:80,$.pathname&&$.pathname!=="/")Q=$.pathname.endsWith("/")?$.pathname.slice(0,-1):$.pathname}catch{throw new _J(`Invalid endPoint URL: ${D}`)}}if(typeof D!=="string"||D.length===0)throw new _J(`Invalid endPoint: ${D}`);if(Y===void 0)Y=!0;if(X!==void 0&&!WP(X))throw new x8(`Invalid port: ${X}`);if(J.accessKey&&!J.secretKey)throw new x8("If specifying access key, secret key must also be provided.");if(J.accessKey&&J.accessKey.startsWith("ASIA")&&!J.sessionToken)throw new x8("If specifying temporary access key, session token must also be provided.");let W=Y?443:80;if(this.port=X??W,this.host=D.toLowerCase()+(this.port!==W?`:${this.port}`:""),this.protocol=Y?"https:":"http:",this.accessKey=J.accessKey,this.#D=J.secretKey??"",this.sessionToken=J.sessionToken,this.pathStyle=J.pathStyle??!0,this.pathPrefix=Q??"",this.defaultBucket=J.bucket,this.region=J.region,this.pathPrefix){if(!this.pathStyle)throw new x8("pathPrefix is incompatible with pathStyle=false");if(!this.pathPrefix.startsWith("/"))throw new x8("pathPrefix should start with /");if(this.pathPrefix.endsWith("/"))throw new x8("pathPrefix should not end with /")}}getBucketName(D){let Y=D?.bucketName??this.defaultBucket;if(Y===void 0||!$P(Y))throw new a2(Y??"");return Y}buildRequestOptions(D){let Y=this.getBucketName(D),X=this.pathStyle?this.host:`${Y}.${this.host}`,Q=D.headers??new Headers;Q.set("host",X);let J=typeof D.query==="object"?new URLSearchParams(D.query).toString().replace("+","%20"):D.query,W=this.pathStyle?`${this.pathPrefix}/${Y}/${D.objectName}`:`/${D.objectName}`,$=J?`?${J}`:"",G=W+$,B=W.split("/").map((H)=>encodeURIComponent(H)).join("/")+$;return{headers:Q,host:X,path:G,encodedPath:B}}async makeRequest({method:D,payload:Y,...X}){let Q=new Date,{headers:J,host:W,path:$,encodedPath:G}=this.buildRequestOptions(X),B=X.statusCode??200;if(D==="POST"||D==="PUT"||D==="DELETE"){if(Y===void 0)Y=new Uint8Array;else if(typeof Y==="string")Y=new TextEncoder().encode(Y);J.set("Content-Length",String(Y.length))}else if(Y)throw Error(`Unexpected payload on ${D} request.`);let H=await kJ(Y??new Uint8Array);if(J.set("x-amz-date",B5(Q)),J.set("x-amz-content-sha256",H),this.accessKey){if(this.sessionToken)J.set("x-amz-security-token",this.sessionToken);J.set("authorization",await GP({headers:J,method:D,path:$,accessKey:this.accessKey,secretKey:this.#D,region:this.region,date:Q}))}let F=`${this.protocol}//${W}${G}`,K=await fetch(F,{method:D,headers:J,body:Y});if(K.status!==B){if(K.status>=400)throw await JP(K);else if(K.status===301)throw new QD(K.status,"UnexpectedRedirect",'The server unexpectedly returned a redirect response. With AWS S3, this usually means you need to use a region-specific endpoint like "s3.us-west-2.amazonaws.com" instead of "s3.amazonaws.com"');throw new QD(K.status,"UnexpectedStatusCode",`Unexpected response code from the server (expected ${B}, got ${K.status} ${K.statusText}).`)}if(!X.returnBody)await K.body?.getReader().read();return K}async deleteObject(D,Y={}){let X=this.getBucketName(Y);if(!JD(D))throw new E9(D);let Q=Y.versionId?{versionId:Y.versionId}:{},J=new Headers;if(Y.governanceBypass)J.set("X-Amz-Bypass-Governance-Retention","true");await this.makeRequest({method:"DELETE",bucketName:X,objectName:D,headers:J,query:Q,statusCode:204})}async exists(D,Y){try{return await this.statObject(D,Y),!0}catch(X){if(X instanceof QD&&X.statusCode===404)return!1;throw X}}getObject(D,Y){return this.getPartialObject(D,{...Y,offset:0,length:0})}async getPartialObject(D,{offset:Y,length:X,...Q}){let J=this.getBucketName(Q);if(!JD(D))throw new E9(D);let W=new Headers(Object.entries(Q.metadata??{})),$=200;if(Y||X){let B="";if(Y)B=`bytes=${+Y}-`;else B="bytes=0-",Y=0;if(X)B+=`${+X+Y-1}`;W.set("Range",B),$=206}let G={...Q.responseParams,...Q.versionId?{versionId:Q.versionId}:{}};return await this.makeRequest({method:"GET",bucketName:J,objectName:D,headers:W,query:G,statusCode:$,returnBody:!0})}getPresignedUrl(D,Y,X={}){if(!this.accessKey)throw new $5;if(!JD(Y))throw new E9(Y);let{headers:Q,path:J}=this.buildRequestOptions({objectName:Y,bucketName:X.bucketName,query:X.parameters}),W=X.requestDate??new Date,$=X.expirySeconds??604800;return BP({protocol:this.protocol,headers:Q,method:D,path:J,accessKey:this.accessKey,secretKey:this.#D,sessionToken:this.sessionToken,region:this.region,date:W,expirySeconds:$})}presignedGetObject(D,Y={}){let{versionId:X,responseParams:Q,...J}=Y,W={...Q,...X?{versionId:X}:{}};return this.getPresignedUrl("GET",D,{parameters:W,...J})}async*listObjects(D={}){for await(let Y of this.listObjectsGrouped({...D,delimiter:""}))if(Y.type==="Object")yield Y;else throw Error(`Unexpected result from listObjectsGrouped(): ${Y}`)}async*listObjectsGrouped(D){let Y=this.getBucketName(D),X="",Q=D.pageSize??1000;if(Q<1||Q>1000)throw new x8("pageSize must be between 1 and 1,000.");let J=0;while(!0){let W=D.maxResults?Math.min(Q,D.maxResults-J):Q;if(W===0)return;let G=await(await this.makeRequest({method:"GET",bucketName:Y,objectName:"",query:{"list-type":"2",prefix:D.prefix??"",delimiter:D.delimiter,"max-keys":String(W),...X?{"continuation-token":X}:{}},returnBody:!0})).text(),B=XD(G).root;if(!B||B.name!=="ListBucketResult")throw Error(`Unexpected response: ${G}`);let H=B.children.filter((U)=>U.name==="CommonPrefixes").flatMap((U)=>U.children),F=[];for(let U of H)F.push({type:"CommonPrefix",prefix:U.content??""}),J++;for(let U of B.children.filter((z)=>z.name==="Contents"))F.push({type:"Object",key:U.children.find((z)=>z.name==="Key")?.content??"",etag:G5(U.children.find((z)=>z.name==="ETag")?.content??""),size:parseInt(U.children.find((z)=>z.name==="Size")?.content??"",10),lastModified:new Date(U.children.find((z)=>z.name==="LastModified")?.content??"invalid")}),J++;F.sort((U,z)=>{let w=U.type==="Object"?U.key:U.prefix,V=z.type==="Object"?z.key:z.prefix;return w>V?1:w<V?-1:0});for(let U of F)yield U;if(B.children.find((U)=>U.name==="IsTruncated")?.content==="true"){let U=B.children.find((z)=>z.name==="NextContinuationToken")?.content;if(!U)throw Error("Unexpectedly missing continuation token, but server said there are more results.");X=U}else return}}async putObject(D,Y,X){let Q=this.getBucketName(X);if(!JD(D))throw new E9(D);let J,W;if(typeof Y==="string"){let H=new TextEncoder().encode(Y);if(typeof ReadableStream.from<"u")W=ReadableStream.from([H]);else W=new ReadableStream({start(F){F.enqueue(H),F.close()}});J=H.length}else if(Y instanceof Uint8Array){if(typeof ReadableStream.from<"u")W=ReadableStream.from([Y]);else W=new ReadableStream({start(H){H.enqueue(Y),H.close()}});J=Y.byteLength}else if(Y instanceof ReadableStream)W=Y;else throw new x8("Invalid stream/data type provided.");if(X?.size!==void 0){if(J!==void 0&&X?.size!==J)throw new x8(`size was specified (${X.size}) but doesn't match auto-detected size (${J}).`);if(typeof X.size!=="number"||X.size<0||isNaN(X.size))throw new x8(`invalid size specified: ${X.size}`);else J=X.size}let $=X?.partSize??this.calculatePartSize(J);if($<m90)throw new x8("Part size should be greater than 5MB");else if($>c90)throw new x8("Part size should be less than 6MB");let G=new r2($),B=new DF({client:this,bucketName:Q,objectName:D,partSize:$,metadata:X?.metadata??{}});return await W.pipeThrough(G).pipeTo(B),B.getResult()}calculatePartSize(D){if(D===void 0)D=JF;if(D>JF)throw TypeError(`size should not be more than ${JF}`);let Y=67108864;while(!0){if(Y*1e4>D)return Y;Y+=16777216}}async statObject(D,Y){let X=this.getBucketName(Y);if(!JD(D))throw new E9(D);let Q={};if(Y?.versionId)Q.versionId=Y.versionId;let J=await this.makeRequest({method:"HEAD",bucketName:X,objectName:D,query:Q,headers:new Headers(Y?.headers)}),W={};for(let $ of u90)if(J.headers.has($))W[$]=J.headers.get($);return J.headers.forEach(($,G)=>{if(G.startsWith("x-amz-meta-"))W[G]=J.headers.get(G)}),{type:"Object",key:D,size:parseInt(J.headers.get("content-length")??"",10),metadata:W,lastModified:new Date(J.headers.get("Last-Modified")??"error: missing last modified"),versionId:J.headers.get("x-amz-version-id")||null,etag:G5(J.headers.get("ETag")??"")}}async copyObject(D,Y,X){let Q=this.getBucketName(X),J=D.sourceBucketName??Q;if(!JD(Y))throw new E9(Y);let W=`${J}/${D.sourceKey}`;if(D.sourceVersionId)W+=`?versionId=${D.sourceVersionId}`;let $=new Headers(X?.metadata);if(X?.metadata!==void 0)$.set("x-amz-metadata-directive","REPLACE");$.set("x-amz-copy-source",W);let G=await this.makeRequest({method:"PUT",bucketName:Q,objectName:Y,headers:$,returnBody:!0}),B=await G.text(),H=XD(B).root;if(!H||H.name!=="CopyObjectResult")throw Error(`Unexpected response: ${B}`);let F=H.children.find((U)=>U.name==="ETag")?.content??"",K=H.children.find((U)=>U.name==="LastModified")?.content;if(K===void 0)throw Error("Unable to find <LastModified>...</LastModified> from the server.");return{copySourceVersionId:G.headers.get("x-amz-copy-source-version-id")||null,etag:G5(F),lastModified:new Date(K),versionId:G.headers.get("x-amz-version-id")||null}}async bucketExists(D){try{return await this.listObjects({bucketName:D}).next(),!0}catch(Y){if(Y instanceof QD&&Y.statusCode===404)return!1;throw Y}}async makeBucket(D){await this.makeRequest({method:"PUT",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:200})}async removeBucket(D){await this.makeRequest({method:"DELETE",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:204})}presignedPostObject(D,Y={}){if(!JD(D))throw new E9(D);let X=this.getBucketName(Y);if(!X)throw Error("Bucket name is required for presignedPost, but none was provided either to this method nor to the client constructor");let Q=Y.requestDate||new Date,J=Y.expirySeconds??3600;return KP({protocol:this.protocol,host:this.host,bucket:X,objectKey:D,accessKey:this.accessKey||"",secretKey:this.#D||"",region:this.region,date:Q,expirySeconds:J,conditions:Y.conditions,fields:Y.fields})}}function zP(D){try{let Y=I0(D);return u8(g9(Y,"patch"))}catch{let Y=D.match(/^(\d+)\.(\d+)\.(\d+)/);if(Y){let[,X,Q,J]=Y;return`${X}.${Q}.${Number.parseInt(J)+1}`}return"1.0.1"}}async function UP(D,Y){let X=zP(D),Q=Y?` for ${Y}`:"",J=await D8({message:`How do you want to handle the version${Q}?`,options:[{value:"auto",label:`Auto: Bump patch version (${D} → ${X})`},{value:"manual",label:"Manual: I'll provide the version number"}]});if(R0(J))return null;if(J==="auto")return q.info(`\uD83D\uDD22 Auto-bumped version from ${D} to ${X}`),X;let W=await h8({message:`Current version is ${D}. Enter new version:`,validate:($)=>{if(!$)return"Version is required";if(!$.match(/^\d+\.\d+\.\d+/))return"Please enter a valid version (x.y.z)"}});if(R0(W))return null;return W}function wP(D){let Y=zP(D);try{let X=I0(D);return[Y,u8(g9(X,"minor")),`${D}-beta.1`,`${D}.1`]}catch{return[Y,`${D}.1`,`${D}-beta.1`,`${D}-rc.1`]}}import{readdirSync as VP,readFileSync as l90,statSync as d90}from"node:fs";import{extname as p90,join as n90}from"node:path";function i90(D,Y){return l90(D,"utf8").includes(Y)}function XY(D,Y){let X=VP(D);for(let Q of X){let J=n90(D,Q),W=d90(J);if(W.isDirectory()){if(XY(J,Y))return!0}else if(W.isFile()&&p90(J)===".js"){if(i90(J,Y))return!0}}return!1}function yJ(D){if(VP(D).indexOf("index.html")>-1)return!0;return!1}import{Buffer as M50}from"node:buffer";import{createHash as O50}from"node:crypto";import{createReadStream as NF,statSync as N50}from"node:fs";import{platform as A50}from"node:os";import{join as Z50,posix as E50,win32 as ZI}from"node:path";import{cwd as R50}from"node:process";import{buffer as AF}from"node:stream/consumers";import{createBrotliCompress as j50}from"node:zlib";var EI=y1(AI(),1),RI=y1(vQ(),1);async function T50(D,Y){try{let X=new URL(`${D.hostFilesApi}/files/read/attachments/${encodeURIComponent(Y)}`);return X.searchParams.set("nocache",`${Date.now()}`),(await fetch(X.toString(),{method:"GET",headers:{range:"bytes=0-0","cache-control":"no-cache"}})).ok}catch{return!1}}var S50=8192;async function P50(D){let Y=h1(R50()),X=await l8("@capgo/capacitor-updater",Y,D.packageJson),Q;try{Q=X?I0(X):void 0}catch{Q=void 0}if(!X||!Q)return{version:null,supportsBrotliV2:!1};let J=!U6(Q,void 0,void 0,n3);return{version:`${Q.major}.${Q.minor}.${Q.patch}`,supportsBrotliV2:J}}function I50(D,Y){if(!Y)return!1;let X=Y.split(",").map((Q)=>Q.trim()).filter((Q)=>!!Q);if(X.length===0)return!1;return EI.isMatch(D,X)}async function C50(D,Y,X){let J=N50(D).size,W=await AF(NF(D));if(J===0)return{buffer:W,useBrotli:!1};if(I50(Y,X.noBrotliPatterns))return{buffer:W,useBrotli:!1};if(J<S50)return{buffer:W,useBrotli:!1};try{let $=await AF(NF(D).pipe(j50({})));if($.length>=J-10)return{buffer:W,useBrotli:!1};return{buffer:$,useBrotli:!0}}catch($){return q.warn(`Brotli compression failed for ${D}: ${$}, using original file`),{buffer:W,useBrotli:!1}}}async function jI(D,Y,X,Q,J,W,$=!1){let G=d0();G.start(J!=="v2"?"Generating the update manifest":`Generating the update manifest with ${$?"V3":"V2"} encryption`);let B=await DS(D);if(J==="v2")for(let H of B)H.hash=$?i4(H.hash,W):n4(H.hash,W);return G.stop("Manifest generated successfully"),await C0(Y,{channel:"partial-update",event:"Generate manifest",icon:"\uD83D\uDCC2",user_id:X,tags:{"app-id":Q},notify:!1}),B}function x50(D){if(A50()!=="win32")return D;return ZI.normalize(D).split(ZI.sep).join(E50.sep)}function _50(D){let Y=D.split("/").map((X)=>encodeURIComponent(X)).join("/");if(D.includes(" "))q.warn(`File "${D}" contains spaces in its name.`);return Y}async function TI(D,Y,X,Q,J,W,$){let G=d0();G.start("Preparing partial update with TUS protocol");let B=performance.now(),H=await c8(),F=!!($.partial||$.delta||$.partialOnly||$.deltaOnly),{version:K,supportsBrotliV2:U}=await P50($);if(!U)throw Error(`Your project is using an older version of @capgo/capacitor-updater (${K||"unknown"}). To use Delta updates, please upgrade to version ${tT} (v5), ${eT} (v6) or ${n3} (v7) or higher.`);else if($.disableBrotli)q.info("Brotli compression disabled by user request");else if($.noBrotliPatterns)q.info(`Files matching patterns (${$.noBrotliPatterns}) will be excluded from brotli compression`);let z=Y.filter((O)=>O.file.includes(" "));if(z.length>0)throw Error(`Files with spaces in their names (${z.map((O)=>O.file).join(", ")}). Please rename the files.`);let w=0,V=Y.length,L=0;try{G.message(`Uploading ${V} files using TUS protocol`);let O=async(I)=>{let x=Z50(X,I.file),y=x50(I.file),C,c=!1;if($.disableBrotli)C=await AF(NF(x)),c=!1;else{let N=await C50(x,y,$);C=N.buffer,c=N.useBrotli}let S=C;if(W)S=p4(C,W.sessionKey,W.ivSessionKey);let p=y;if(c)p=`${y}.br`,L++;let u=_50(p),J0=O50("sha256").update(I.hash).digest("hex"),_;if(W){let N=M50.from(W.ivSessionKey).toString("hex");_=`orgs/${J}/apps/${Q}/delta/${N}/${J0}_${u}`}else _=`orgs/${J}/apps/${Q}/delta/${J0}_${u}`;if(!W&&await T50(H,_))return w++,Promise.resolve({file_name:u,s3_path:_,file_hash:I.hash});return new Promise((N,Z)=>{G.message(`Prepare upload partial file: ${y}`);let R=DD(p);new RI.Upload(S,{endpoint:`${H.hostFilesApi}/files/upload/attachments/`,chunkSize:$.tusChunkSize,retryDelays:[0,1000,3000,5000,1e4],removeFingerprintOnSuccess:!0,metadata:{filename:_,filetype:R},headers:{Authorization:D},onError:(v)=>{let b=v.toString(),r;try{let g=b.match(/response text: (\{.*?\})/);if(g&&g[1])r=JSON.parse(g[1]).moreInfo?.requestId}catch{}let k=r?` [requestId: ${r}]`:"";q.error(`Failed to upload ${y}: ${b}${k}`),Z(v)},onProgress(){let v=(w/V*100).toFixed(2);G.message(`Uploading partial update: ${v}%`)},onSuccess(){w++,N({file_name:u,s3_path:_,file_hash:I.hash})}}).start()})},A=500,M=[];for(let I=0;I<Y.length;I+=A){let x=Y.slice(I,I+A),y=Math.floor(I/A)+1,C=Math.ceil(Y.length/A);if(C>1)G.message(`Processing batch ${y}/${C} (${x.length} files)`);let c=await Promise.all(x.map((S)=>O(S)));M.push(...c)}let j=((performance.now()-B)/1000).toFixed(2);if(G.stop(`Partial update uploaded successfully \uD83D\uDCAA in (${j} seconds)`),L>0)q.info(`${L} of ${V} files were compressed with brotli and use .br extension`);return await C0(D,{channel:"app",event:`App Partial TUS done${L>0?" with .br extension":""}`,icon:"⏫",user_id:J,tags:{"app-id":Q},notify:!1}),await C0(D,{channel:"performance",event:"Partial upload performance",icon:"\uD83D\uDE84",user_id:J,tags:{"app-id":Q,time:j},notify:!1}),M}catch(O){let M=((performance.now()-B)/1000).toFixed(2);if(G.stop(`Failed to upload Partial bundle (after ${M} seconds)`),F)throw q.error(`Error uploading partial update: ${O}`),q.error("Delta/partial upload was explicitly requested but failed. Upload aborted."),O;else return q.info(`Error uploading partial update: ${O}, This is not a critical error, the bundle has been uploaded without the partial files`),null}}function g0(D){throw q.error(D),Error(D)}function v50(D){let Y=new G1;Y.headers=["Package","Local","Remote","Status","Details"],Y.theme=G1.roundTheme,Y.rows=[];for(let X of D){let{name:Q,localVersion:J,remoteVersion:W}=X,$=W5(X),G=$.compatible?"✅":"❌";Y.rows.push([Q,J||"-",W||"-",G,$.message])}q.info(Y.toString())}async function y50(D,Y){let X=C6("",Y.packageJson),Q=Y.bundle||D?.plugins?.CapacitorUpdater?.version||X||`0.0.1-beta.${b50().split("-")[0]}`;if(!v4.test(Q))g0(`Your bundle name ${Q}, is not valid it should follow semver convention : https://semver.org/`);return Q}function f50(D){let Y=D.apikey||X0();if(!Y)g0("Missing API key, you need to provide an API key to upload your bundle");return Y}function h50(D,Y,X){let Q=_0(D,X),J=Y.path||X?.webDir;if(!Q)g0("Missing argument, you need to provide a appid or be in a capacitor project");if(!J)g0("Missing argument, you need to provide a path (--path), or be in a capacitor project");if(!lJ(J))g0(`Path ${J} does not exist, build your app first, or provide a valid path`);return{appid:Q,path:J}}function g50(D,Y){let X=D.codeCheck;if(typeof X>"u"||X){if(!XY(Y,"notifyAppReady"))g0(`notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready
|
|
288
288
|
If you are sure your app has this code, you can use the --no-code-check option`);if(!yJ(Y))g0(`index.html is missing in the root folder of ${Y}`)}}async function u50(D,Y,X,Q,J,W){let{ignoreMetadataCheck:$,autoMinUpdateVersion:G,minUpdateVersion:B}=X,{data:H,error:F}=await D.from("channels").select("disable_auto_update, version ( min_update_version, native_packages )").eq("name",Q).eq("app_id",J).single(),K=!!H&&H.disable_auto_update==="version_number",U,z;if(!F&&H&&H.version&&H.version.native_packages&&!$){let L=d0();L.start(`Checking bundle compatibility with channel ${Q}`);let{finalCompatibility:O,localDependencies:A}=await AJ(D,J,Q,X.packageJson,X.nodeModules);if(z=O,U=A,z.filter((E)=>!YD(E)).length>0){if(L.stop(`Bundle NOT compatible with ${Q} channel`),q.warn(""),v50(z),q.warn(""),q.warn("An app store update may be required for these changes to take effect."),G)B=W,q.info(`Auto set min-update-version to ${B}`)}else if(G)try{let{min_update_version:E}=H.version;if(!E||!v4.test(E))g0("Invalid remote min update version, skipping auto setting compatibility");B=E,L.stop(`Auto set min-update-version to ${B}`)}catch{g0(`Cannot auto set compatibility, invalid data ${H}`)}else L.stop(`Bundle compatible with ${Q} channel`)}else if(!$){if(q.warn(`Channel ${Q} is new or it's your first upload with compatibility check, it will be ignored this time`),U=await R2(X.packageJson,X.nodeModules),G)B=W,q.info(`Auto set min-update-version to ${B}`)}if(K&&!B&&!$)g0("You need to provide a min-update-version to upload a bundle to this channel");if(B){if(!v4.test(B))g0(`Your minimal version update ${B}, is not valid it should follow semver convention : https://semver.org/`)}let w=U?new Map(U.filter((L)=>!!L.native&&L.native!==void 0).map((L)=>[L.name,L])):new Map;return{nativePackages:w.size>0||!X.ignoreMetadataCheck?Array.from(w,([L,O])=>({name:L,version:O.version,...O.ios_checksum&&{ios_checksum:O.ios_checksum},...O.android_checksum&&{android_checksum:O.android_checksum}})):void 0,minUpdateVersion:B}}async function m50(D,Y,X,Q=!1,J=!1){let{data:W,error:$}=await D.rpc("exist_app_versions",{appid:Y,name_version:X}).single();if(W||$){if(Q)return q.warn(`Version ${X} already exists - exiting gracefully due to --silent-fail option`),e("Bundle version already exists - exiting gracefully \uD83C\uDF89"),!0;if(J){q.error(`❌ Version ${X} already exists`);let G=wP(X);q.info("\uD83D\uDCA1 Here are some suggestions:"),G.forEach((F,K)=>{q.info(` ${K+1}. ${F}`)});let B=await D8({message:"What would you like to do?",options:[{value:"suggest1",label:`Use ${G[0]}`},{value:"suggest2",label:`Use ${G[1]}`},{value:"suggest3",label:`Use ${G[2]}`},{value:"suggest4",label:`Use ${G[3]}`},{value:"custom",label:"Enter a custom version"},{value:"cancel",label:"Cancel upload"}]});if(R0(B)||B==="cancel")g0("Upload cancelled by user");let H;if(B==="custom"){let F=await UP(X,"upload");if(!F)g0("Upload cancelled by user");H=F}else{let F=Number.parseInt(B.replace("suggest",""))-1;H=G[F]}return q.info(`\uD83D\uDD04 Retrying with new version: ${H}`),H}g0(`Version ${X} already exists ${m($)}`)}return!1}async function c50(D,Y,X,Q,J,W,$,G){let B,H,F="",K=null,U="none",z="",w="",V=Y.keyV2,L=Y.key===!1,O=d0();O.start(`Zipping bundle from ${D}`),K=await OJ(D),O.message("Calculating checksum");let A=h1(ZF()),M=await l8("@capgo/capacitor-updater",A,Y.packageJson),E=!1,j;try{j=M?I0(M):void 0}catch{j=void 0}if(!M)g0("Cannot find @capgo/capacitor-updater in node_modules, please install it first with your package manager");else if(j)E=!U6(j,n3);else if(M==="link:@capgo/capacitor-updater"||M==="file:.."||M==="file:../")q.warn("Using local @capgo/capacitor-updater. Assuming latest version for checksum calculation."),E=!0;if((V||Y.keyDataV2||lJ(Q6))&&!L||E)F=await w9(K,"sha256");else F=await w9(K,"crc32");if(O.stop(`Checksum ${E?"SHA256":"CRC32"}: ${F}`),L)q.info("Encryption ignored");else if((V||lJ(Q6)||Y.keyDataV2)&&!Y.oldEncryption){let y=typeof V==="string"?V:Q6,C=Y.keyDataV2||"";if(!C&&!lJ(y))g0(`Cannot find private key ${y}`);if(await C0(X,{channel:"app",event:"App encryption v2",icon:"\uD83D\uDD11",user_id:Q,tags:{"app-id":J},notify:!1},Y.verbose),!C)C=k50(y).toString();let c=j&&!U6(j,"5.30.0","6.30.0","7.30.0");q.info(`Encrypting your bundle with ${c?"V3":"V2"}`);let{sessionKey:S,ivSessionKey:p}=xJ(C),u=p4(K,S,p);if(F=c?i4(F,C):n4(F,C),B=p,H=S,U="v2",z=C,G){if(w=sS(G),Y.verbose)q.info(`[Verbose] Encryption key_id: ${w}`)}if(Y.displayIvSession)q.info(`Your Iv Session key is ${B},
|
|
289
289
|
keep it safe, you will need it to decrypt your bundle.
|
|
290
290
|
It will be also visible in your dashboard
|
package/dist/package.json
CHANGED
package/dist/src/sdk.js
CHANGED
|
@@ -311,7 +311,7 @@ ${t.default.gray(F9)} ${D}
|
|
|
311
311
|
`)}}var Iy=require("node:child_process"),L0=require("node:fs"),qJ=require("node:os"),W0=V0(require("node:path")),m8=require("node:process"),e6=V0(RX(),1);var J1=require("fs"),J4=(D=".",X="unknown")=>{let Y=`${D}/bun.lockb`,Z=`${D}/bun.lock`,J=`${D}/pnpm-lock.yaml`,Q=`${D}/shrinkwrap.yaml`,w=`${D}/yarn.lock`,F=`${D}/package-lock.json`,B=`${D}/npm-shrinkwrap.json`;if(J1.existsSync(Y)||J1.existsSync(Z))return"bun";if(J1.existsSync(J)||J1.existsSync(Q))return"pnpm";if(J1.existsSync(w))return"yarn";if(J1.existsSync(F)||J1.existsSync(B))return"npm";return X},AX=(D=J4(),X=!1)=>{switch(D){case"bun":return X?"bun install":"install";case"pnpm":return X?"pnpm install":"install";case"yarn":return X?"yarn install":"install";case"npm":return X?"npm install":"install";case"unknown":return X?"unknown unknown":"unknown";default:return X?"npm install":"install"}},_G=(D=".",X="npx")=>{let Y=`${D}/bun.lockb`,Z=`${D}/bun.lock`,J=`${D}/pnpm-lock.yaml`,Q=`${D}/shrinkwrap.yaml`,w=`${D}/yarn.lock`,F=`${D}/package-lock.json`,B=`${D}/npm-shrinkwrap.json`;if(J1.existsSync(Y)||J1.existsSync(Z))return"bunx";if(J1.existsSync(J)||J1.existsSync(Q))return"pnpm exec";if(J1.existsSync(w))return"yarn dlx";if(J1.existsSync(F)||J1.existsSync(B))return"npx";return X};function EX(D,X){if(isNaN(D)||isNaN(X))throw Error("Cannot compare against non-numbers");return D===X?0:D<X?-1:1}function gG(D=[],X=[]){if(D.length&&!X.length)return-1;if(!D.length&&X.length)return 1;return 0}function $Q(D=[],X=[]){let Y=Math.max(D.length,X.length);for(let Z=0;Z<Y;Z++){let J=D[Z],Q=X[Z];if(J===void 0&&Q===void 0)return 0;if(Q===void 0)return 1;if(J===void 0)return-1;if(typeof J==="string"&&typeof Q==="number")return 1;if(typeof J==="number"&&typeof Q==="string")return-1;if(J<Q)return-1;if(J>Q)return 1}return 0}var R5="0|[1-9]\\d*",R_="\\d*[a-zA-Z-][a-zA-Z0-9-]*",A_=`(?<major>${R5})\\.(?<minor>${R5})\\.(?<patch>${R5})`,vG=`(?:${R5}|${R_})`,mG=`(?:-(?<prerelease>${vG}(?:\\.${vG})*))`,bG="[0-9A-Za-z-]+",dG=`(?:\\+(?<buildmetadata>${bG}(?:\\.${bG})*))`,cG=`v?${A_}${mG}?${dG}?`,lG=new RegExp(`^${cG}$`),nG="(?:<|>)?=?",E_="x|X|\\*",qQ=`${R5}|${E_}`,CX=`[v=\\s]*(?<major>${qQ})(?:\\.(?<minor>${qQ})(?:\\.(?<patch>${qQ})${mG}?${dG}?)?)?`,iG=new RegExp(`^(?<operator>~>?|\\^|${nG})\\s*${CX}$`),pG=new RegExp(`^(?<operator>${nG})\\s*(${cG})$|^$`);function GQ(D){return typeof D==="number"&&!Number.isNaN(D)&&(!Number.isFinite(D)||0<=D&&D<=Number.MAX_SAFE_INTEGER)}var OQ=256;var C_=new RegExp(`^${R5}$`);function Q1(D){return D.split(".").filter(Boolean).map((X)=>{if(C_.test(X)){let Y=Number(X);if(GQ(Y))return Y}return X})}function J8(D){return D.split(".").filter(Boolean)}function C6(D,X){let Y=Number(D);if(!GQ(Y))throw TypeError(X);return Y}function n8(D){return Number.isNaN(D.major)&&Number.isNaN(D.minor)&&Number.isNaN(D.patch)&&(D.prerelease===void 0||D.prerelease.length===0)&&(D.build===void 0||D.build.length===0)}function w1(D,X){if(D===X)return 0;return EX(D.major,X.major)||EX(D.minor,X.minor)||EX(D.patch,X.patch)||gG(D.prerelease,X.prerelease)||$Q(D.prerelease,X.prerelease)}function WQ(D){return D.toFixed(0)}function Q8(D){let X=WQ(D.major),Y=WQ(D.minor),Z=WQ(D.patch),J=D.prerelease?.join(".")??"",Q=D.build?.join(".")??"";return[[`${X}.${Y}.${Z}`,J].filter((B)=>B).join("-"),Q].filter((B)=>B).join("+")}function j_(D,X){if(n8(X))return!0;let Y=w1(D,X);switch(X.operator){case"=":case void 0:return Y===0;case"!=":return Y!==0;case">":return Y>0;case"<":return Y<0;case">=":return Y>=0;case"<=":return Y<=0}}function jX(D,X){for(let Y of X)if(!j_(D,Y))return!1;if(D.prerelease&&D.prerelease.length>0){for(let Y of X){if(n8(Y))continue;let{major:Z,minor:J,patch:Q,prerelease:w}=Y;if(w&&w.length>0){if(D.major===Z&&D.minor===J&&D.patch===Q)return!0}}return!1}return!0}function Q4(D,X){return X.some((Y)=>jX(D,Y))}function I_(D=[]){let X=[...D],Y=X.length;while(Y>=0){let Z=X[Y];if(typeof Z==="number"){X[Y]=Z+1;break}Y-=1}if(Y===-1)X.push(0);return X}function w4(D=[],X){let Y=I_(D);if(!X)return Y;let Z=Q1(X);if(Z.every((J)=>typeof J==="string")){if(Z.every((J,Q)=>J===Y[Q])&&typeof Y[Z.length]==="number")return Y;Z=[...Z,0]}return Z}function F4(D,X,Y={}){let Z=Y.build!==void 0?J8(Y.build):D.build??[];switch(X){case"premajor":return{major:D.major+1,minor:0,patch:0,prerelease:w4(D.prerelease,Y.prerelease),build:Z};case"preminor":return{major:D.major,minor:D.minor+1,patch:0,prerelease:w4(D.prerelease,Y.prerelease),build:Z};case"prepatch":return{major:D.major,minor:D.minor,patch:D.patch+1,prerelease:w4(D.prerelease,Y.prerelease),build:Z};case"prerelease":{let Q=(D.prerelease??[]).length===0?D.patch+1:D.patch;return{major:D.major,minor:D.minor,patch:Q,prerelease:w4(D.prerelease,Y.prerelease),build:Z}}case"major":return{major:(D.prerelease??[]).length===0||D.minor!==0||D.patch!==0?D.major+1:D.major,minor:0,patch:0,prerelease:[],build:Z};case"minor":{let Q=(D.prerelease??[]).length===0||D.patch!==0?D.minor+1:D.minor;return{major:D.major,minor:Q,patch:0,prerelease:[],build:Z}}case"patch":{let Q=(D.prerelease??[]).length===0?D.patch+1:D.patch;return{major:D.major,minor:D.minor,patch:Q,prerelease:[],build:Z}}case"pre":return{major:D.major,minor:D.minor,patch:D.patch,prerelease:w4(D.prerelease,Y.prerelease),build:Z};default:throw TypeError(`Cannot increment version: invalid argument ${X}`)}}var IX={major:Number.NaN,minor:Number.NaN,patch:Number.NaN,prerelease:[],build:[]},A5={operator:void 0,...IX};function HQ(D,X){return w1(D,X)>0}function B9(D,X){return w1(D,X)<0}function T_(D){let Y=D.match(pG)?.groups;if(!Y)return null;let{operator:Z,prerelease:J,buildmetadata:Q}=Y,w=Y.major?{major:C6(Y.major,`Cannot parse comparator ${D}: invalid major version`),minor:C6(Y.minor,`Cannot parse comparator ${D}: invalid minor version`),patch:C6(Y.patch,`Cannot parse comparator ${D}: invalid patch version`),prerelease:J?Q1(J):[],build:Q?J8(Q):[]}:IX;return{operator:Z||void 0,...w}}function t0(D){return!D||D.toLowerCase()==="x"||D==="*"}function P_(D){if(t0(D.major))return;if(t0(D.minor))return{operator:">=",major:+D.major,minor:0,patch:0,prerelease:[],build:[]};if(t0(D.patch))return{operator:">=",major:+D.major,minor:+D.minor,patch:0,prerelease:[],build:[]};return{operator:">=",major:+D.major,minor:+D.minor,patch:+D.patch,prerelease:D.prerelease?Q1(D.prerelease):[],build:[]}}function S_(D){if(t0(D.major))return;if(t0(D.minor))return{operator:"<",major:+D.major+1,minor:0,patch:0,prerelease:[],build:[]};if(t0(D.patch))return{operator:"<",major:+D.major,minor:+D.minor+1,patch:0,prerelease:[],build:[]};if(D.prerelease)return{operator:"<=",major:+D.major,minor:+D.minor,patch:+D.patch,prerelease:Q1(D.prerelease),build:[]};return{operator:"<=",major:+D.major,minor:+D.minor,patch:+D.patch,prerelease:[],build:[]}}function x_(D){let X=D.match(new RegExp(`^${CX}`)),Y=X?.groups;if(!Y)return null;let Z=X[0].length,J=D.slice(Z).match(/^\s+-\s+/);if(!J)return null;let Q=J[0].length,F=D.slice(Z+Q).match(new RegExp(`^${CX}\\s*$`))?.groups;if(!F)return null;let B=P_(Y),q=S_(F);return[B,q].filter(Boolean)}function f_(D){let X=t0(D.major),Y=t0(D.minor),Z=t0(D.patch),J=+D.major,Q=+D.minor,w=+D.patch;if(X)return[A5];if(Y)return[{operator:">=",major:J,minor:0,patch:0},{operator:"<",major:J+1,minor:0,patch:0}];if(Z){if(J===0)return[{operator:">=",major:J,minor:Q,patch:0},{operator:"<",major:J,minor:Q+1,patch:0}];return[{operator:">=",major:J,minor:Q,patch:0},{operator:"<",major:J+1,minor:0,patch:0}]}let F=Q1(D.prerelease??"");if(J===0){if(Q===0)return[{operator:">=",major:J,minor:Q,patch:w,prerelease:F},{operator:"<",major:J,minor:Q,patch:w+1}];return[{operator:">=",major:J,minor:Q,patch:w,prerelease:F},{operator:"<",major:J,minor:Q+1,patch:0}]}return[{operator:">=",major:J,minor:Q,patch:w,prerelease:F},{operator:"<",major:J+1,minor:0,patch:0}]}function y_(D){let X=t0(D.major),Y=t0(D.minor),Z=t0(D.patch),J=+D.major,Q=+D.minor,w=+D.patch;if(X)return[A5];if(Y)return[{operator:">=",major:J,minor:0,patch:0},{operator:"<",major:J+1,minor:0,patch:0}];if(Z)return[{operator:">=",major:J,minor:Q,patch:0},{operator:"<",major:J,minor:Q+1,patch:0}];let F=Q1(D.prerelease??"");return[{operator:">=",major:J,minor:Q,patch:w,prerelease:F},{operator:"<",major:J,minor:Q+1,patch:0}]}function k_(D){let X=t0(D.major),Y=t0(D.minor),Z=t0(D.patch),J=+D.major,Q=+D.minor,w=+D.patch;if(X)return[{operator:"<",major:0,minor:0,patch:0}];if(Y){if(Z)return[{operator:"<",major:J,minor:0,patch:0}];return[{operator:"<",major:J,minor:0,patch:0}]}if(Z)return[{operator:"<",major:J,minor:Q,patch:0}];let F=Q1(D.prerelease??""),B=J8(D.build??"");return[{operator:"<",major:J,minor:Q,patch:w,prerelease:F,build:B}]}function u_(D){let X=t0(D.minor),Y=t0(D.patch),Z=+D.major,J=+D.minor,Q=+D.patch;if(X){if(Y)return[{operator:"<",major:Z+1,minor:0,patch:0}];return[{operator:"<",major:Z,minor:J+1,patch:0}]}if(Y)return[{operator:"<",major:Z,minor:J+1,patch:0}];let w=Q1(D.prerelease??""),F=J8(D.build??"");return[{operator:"<=",major:Z,minor:J,patch:Q,prerelease:w,build:F}]}function h_(D){let X=t0(D.major),Y=t0(D.minor),Z=t0(D.patch),J=+D.major,Q=+D.minor,w=+D.patch;if(X)return[{operator:"<",major:0,minor:0,patch:0}];if(Y)return[{operator:">=",major:J+1,minor:0,patch:0}];if(Z)return[{operator:">=",major:J,minor:Q+1,patch:0}];let F=Q1(D.prerelease??""),B=J8(D.build??"");return[{operator:">",major:J,minor:Q,patch:w,prerelease:F,build:B}]}function __(D){let X=t0(D.major),Y=t0(D.minor),Z=t0(D.patch),J=+D.major,Q=+D.minor,w=+D.patch;if(X)return[A5];if(Y){if(Z)return[{operator:">=",major:J,minor:0,patch:0}];return[{operator:">=",major:J,minor:0,patch:0}]}if(Z)return[{operator:">=",major:J,minor:Q,patch:0}];let F=Q1(D.prerelease??""),B=J8(D.build??"");return[{operator:">=",major:J,minor:Q,patch:w,prerelease:F,build:B}]}function v_(D){let X=t0(D.major),Y=t0(D.minor),Z=t0(D.patch),J=+D.major,Q=+D.minor,w=+D.patch;if(X)return[A5];if(Y)return[{operator:">=",major:J,minor:0,patch:0},{operator:"<",major:J+1,minor:0,patch:0}];if(Z)return[{operator:">=",major:J,minor:Q,patch:0},{operator:"<",major:J,minor:Q+1,patch:0}];let F=Q1(D.prerelease??""),B=J8(D.build??"");return[{operator:void 0,major:J,minor:Q,patch:w,prerelease:F,build:B}]}function b_(D){let X=D.match(iG)?.groups;if(!X)return T_(D);switch(X.operator){case"^":return f_(X);case"~":case"~>":return y_(X);case"<":return k_(X);case"<=":return u_(X);case">":return h_(X);case">=":return __(X);case"=":case"":return v_(X);default:throw Error(`Cannot parse version range: '${X.operator}' is not a valid operator`)}}function g_(D){return D.split(/\s+/).flatMap(b_)}function TX(D){let X=D.replaceAll(/(?<=<|>|=|~|\^)(\s+)/g,"").split(/\s*\|\|\s*/).map((Y)=>x_(Y)||g_(Y));if(X.some((Y)=>Y.includes(null)))throw TypeError(`Cannot parse version range: range "${D}" is invalid`);return X}function i0(D){if(typeof D!=="string")throw TypeError(`Cannot parse version as version must be a string: received ${typeof D}`);if(D.length>OQ)throw TypeError(`Cannot parse version as version length is too long: length is ${D.length}, max length is ${OQ}`);D=D.trim();let X=D.match(lG)?.groups;if(!X)throw TypeError(`Cannot parse version: ${D}`);let Y=C6(X.major,`Cannot parse version ${D}: invalid major version`),Z=C6(X.minor,`Cannot parse version ${D}: invalid minor version`),J=C6(X.patch,`Cannot parse version ${D}: invalid patch version`),Q=X.prerelease?Q1(X.prerelease):[],w=X.buildmetadata?J8(X.buildmetadata):[];return{major:Y,minor:Z,patch:J,prerelease:Q,build:w}}function aG(D,X){let Y=D.operator,Z=X.operator;if(Y===void 0){if(n8(D))return!0;return Q4(D,[[X]])}if(Z===void 0){if(n8(X))return!0;return Q4(X,[[D]])}let J=w1(D,X);return(Y===">="||Y===">")&&(Z===">="||Z===">")||(Y==="<="||Y==="<")&&(Z==="<="||Z==="<")||J===0&&((Y===">="||Y==="<=")&&(Z===">="||Z==="<="))||J===-1&&(Y===">="||Y===">")&&(Z==="<="||Z==="<")||J===1&&(Y==="<="||Y==="<")&&(Z===">="||Z===">")}function m_(D){return D.every((X)=>{return X.some((Y)=>d_(Y))})}function d_(D){for(let X=0;X<D.length-1;X++){let Y=D[X];for(let Z of D.slice(X+1))if(!aG(Y,Z))return!1}return!0}function tG(D,X){return m_([D,X])&&D.some((Y)=>{return X.some((Z)=>{return Y.every((J)=>{return Z.every((Q)=>aG(J,Q))})})})}function rG(D){try{return i0(D),!0}catch{return!1}}function sG(D,X){return w1(D,X)>=0}var Z0={};e7(Z0,{createClient:()=>qw,SupabaseClient:()=>BH,PostgrestError:()=>$4,FunctionsRelayError:()=>eD.FunctionsRelayError,FunctionsHttpError:()=>eD.FunctionsHttpError,FunctionsFetchError:()=>eD.FunctionsFetchError,FunctionsError:()=>eD.FunctionsError,FunctionRegion:()=>eD.FunctionRegion});var eD=V0(yO(),1);var uO={};e7(uO,{default:()=>p_,PostgrestTransformBuilder:()=>LQ,PostgrestQueryBuilder:()=>VQ,PostgrestFilterBuilder:()=>j6,PostgrestError:()=>$4,PostgrestClient:()=>kX,PostgrestBuilder:()=>MQ});var $4=class extends Error{constructor(D){super(D.message);this.name="PostgrestError",this.details=D.details,this.hint=D.hint,this.code=D.code}},MQ=class{constructor(D){var X,Y;if(this.shouldThrowOnError=!1,this.method=D.method,this.url=D.url,this.headers=new Headers(D.headers),this.schema=D.schema,this.body=D.body,this.shouldThrowOnError=(X=D.shouldThrowOnError)!==null&&X!==void 0?X:!1,this.signal=D.signal,this.isMaybeSingle=(Y=D.isMaybeSingle)!==null&&Y!==void 0?Y:!1,D.fetch)this.fetch=D.fetch;else this.fetch=fetch}throwOnError(){return this.shouldThrowOnError=!0,this}setHeader(D,X){return this.headers=new Headers(this.headers),this.headers.set(D,X),this}then(D,X){var Y=this;if(this.schema===void 0);else if(["GET","HEAD"].includes(this.method))this.headers.set("Accept-Profile",this.schema);else this.headers.set("Content-Profile",this.schema);if(this.method!=="GET"&&this.method!=="HEAD")this.headers.set("Content-Type","application/json");let Z=this.fetch,J=Z(this.url.toString(),{method:this.method,headers:this.headers,body:JSON.stringify(this.body),signal:this.signal}).then(async(Q)=>{let w=null,F=null,B=null,q=Q.status,$=Q.statusText;if(Q.ok){var G,W;if(Y.method!=="HEAD"){var O;let N=await Q.text();if(N==="");else if(Y.headers.get("Accept")==="text/csv")F=N;else if(Y.headers.get("Accept")&&((O=Y.headers.get("Accept"))===null||O===void 0?void 0:O.includes("application/vnd.pgrst.plan+text")))F=N;else F=JSON.parse(N)}let M=(G=Y.headers.get("Prefer"))===null||G===void 0?void 0:G.match(/count=(exact|planned|estimated)/),U=(W=Q.headers.get("content-range"))===null||W===void 0?void 0:W.split("/");if(M&&U&&U.length>1)B=parseInt(U[1]);if(Y.isMaybeSingle&&Y.method==="GET"&&Array.isArray(F))if(F.length>1)w={code:"PGRST116",details:`Results contain ${F.length} rows, application/vnd.pgrst.object+json requires 1 row`,hint:null,message:"JSON object requested, multiple (or no) rows returned"},F=null,B=null,q=406,$="Not Acceptable";else if(F.length===1)F=F[0];else F=null}else{var H;let M=await Q.text();try{if(w=JSON.parse(M),Array.isArray(w)&&Q.status===404)F=[],w=null,q=200,$="OK"}catch(U){if(Q.status===404&&M==="")q=204,$="No Content";else w={message:M}}if(w&&Y.isMaybeSingle&&(w===null||w===void 0||(H=w.details)===null||H===void 0?void 0:H.includes("0 rows")))w=null,q=200,$="OK";if(w&&Y.shouldThrowOnError)throw new $4(w)}return{error:w,data:F,count:B,status:q,statusText:$}});if(!this.shouldThrowOnError)J=J.catch((Q)=>{var w;let F="",B=Q===null||Q===void 0?void 0:Q.cause;if(B){var q,$,G,W;let H=(q=B===null||B===void 0?void 0:B.message)!==null&&q!==void 0?q:"",M=($=B===null||B===void 0?void 0:B.code)!==null&&$!==void 0?$:"";if(F=`${(G=Q===null||Q===void 0?void 0:Q.name)!==null&&G!==void 0?G:"FetchError"}: ${Q===null||Q===void 0?void 0:Q.message}`,F+=`
|
|
312
312
|
|
|
313
313
|
Caused by: ${(W=B===null||B===void 0?void 0:B.name)!==null&&W!==void 0?W:"Error"}: ${H}`,M)F+=` (${M})`;if(B===null||B===void 0?void 0:B.stack)F+=`
|
|
314
|
-
${B.stack}`}else{var O;F=(O=Q===null||Q===void 0?void 0:Q.stack)!==null&&O!==void 0?O:""}return{error:{message:`${(w=Q===null||Q===void 0?void 0:Q.name)!==null&&w!==void 0?w:"FetchError"}: ${Q===null||Q===void 0?void 0:Q.message}`,details:F,hint:"",code:""},data:null,count:null,status:0,statusText:""}});return J.then(D,X)}returns(){return this}overrideTypes(){return this}},LQ=class extends MQ{select(D){let X=!1,Y=(D!==null&&D!==void 0?D:"*").split("").map((Z)=>{if(/\s/.test(Z)&&!X)return"";if(Z==='"')X=!X;return Z}).join("");return this.url.searchParams.set("select",Y),this.headers.append("Prefer","return=representation"),this}order(D,{ascending:X=!0,nullsFirst:Y,foreignTable:Z,referencedTable:J=Z}={}){let Q=J?`${J}.order`:"order",w=this.url.searchParams.get(Q);return this.url.searchParams.set(Q,`${w?`${w},`:""}${D}.${X?"asc":"desc"}${Y===void 0?"":Y?".nullsfirst":".nullslast"}`),this}limit(D,{foreignTable:X,referencedTable:Y=X}={}){let Z=typeof Y>"u"?"limit":`${Y}.limit`;return this.url.searchParams.set(Z,`${D}`),this}range(D,X,{foreignTable:Y,referencedTable:Z=Y}={}){let J=typeof Z>"u"?"offset":`${Z}.offset`,Q=typeof Z>"u"?"limit":`${Z}.limit`;return this.url.searchParams.set(J,`${D}`),this.url.searchParams.set(Q,`${X-D+1}`),this}abortSignal(D){return this.signal=D,this}single(){return this.headers.set("Accept","application/vnd.pgrst.object+json"),this}maybeSingle(){if(this.method==="GET")this.headers.set("Accept","application/json");else this.headers.set("Accept","application/vnd.pgrst.object+json");return this.isMaybeSingle=!0,this}csv(){return this.headers.set("Accept","text/csv"),this}geojson(){return this.headers.set("Accept","application/geo+json"),this}explain({analyze:D=!1,verbose:X=!1,settings:Y=!1,buffers:Z=!1,wal:J=!1,format:Q="text"}={}){var w;let F=[D?"analyze":null,X?"verbose":null,Y?"settings":null,Z?"buffers":null,J?"wal":null].filter(Boolean).join("|"),B=(w=this.headers.get("Accept"))!==null&&w!==void 0?w:"application/json";if(this.headers.set("Accept",`application/vnd.pgrst.plan+${Q}; for="${B}"; options=${F};`),Q==="json")return this;else return this}rollback(){return this.headers.append("Prefer","tx=rollback"),this}returns(){return this}maxAffected(D){return this.headers.append("Prefer","handling=strict"),this.headers.append("Prefer",`max-affected=${D}`),this}},kO=new RegExp("[,()]"),j6=class extends LQ{eq(D,X){return this.url.searchParams.append(D,`eq.${X}`),this}neq(D,X){return this.url.searchParams.append(D,`neq.${X}`),this}gt(D,X){return this.url.searchParams.append(D,`gt.${X}`),this}gte(D,X){return this.url.searchParams.append(D,`gte.${X}`),this}lt(D,X){return this.url.searchParams.append(D,`lt.${X}`),this}lte(D,X){return this.url.searchParams.append(D,`lte.${X}`),this}like(D,X){return this.url.searchParams.append(D,`like.${X}`),this}likeAllOf(D,X){return this.url.searchParams.append(D,`like(all).{${X.join(",")}}`),this}likeAnyOf(D,X){return this.url.searchParams.append(D,`like(any).{${X.join(",")}}`),this}ilike(D,X){return this.url.searchParams.append(D,`ilike.${X}`),this}ilikeAllOf(D,X){return this.url.searchParams.append(D,`ilike(all).{${X.join(",")}}`),this}ilikeAnyOf(D,X){return this.url.searchParams.append(D,`ilike(any).{${X.join(",")}}`),this}regexMatch(D,X){return this.url.searchParams.append(D,`match.${X}`),this}regexIMatch(D,X){return this.url.searchParams.append(D,`imatch.${X}`),this}is(D,X){return this.url.searchParams.append(D,`is.${X}`),this}isDistinct(D,X){return this.url.searchParams.append(D,`isdistinct.${X}`),this}in(D,X){let Y=Array.from(new Set(X)).map((Z)=>{if(typeof Z==="string"&&kO.test(Z))return`"${Z}"`;else return`${Z}`}).join(",");return this.url.searchParams.append(D,`in.(${Y})`),this}notIn(D,X){let Y=Array.from(new Set(X)).map((Z)=>{if(typeof Z==="string"&&kO.test(Z))return`"${Z}"`;else return`${Z}`}).join(",");return this.url.searchParams.append(D,`not.in.(${Y})`),this}contains(D,X){if(typeof X==="string")this.url.searchParams.append(D,`cs.${X}`);else if(Array.isArray(X))this.url.searchParams.append(D,`cs.{${X.join(",")}}`);else this.url.searchParams.append(D,`cs.${JSON.stringify(X)}`);return this}containedBy(D,X){if(typeof X==="string")this.url.searchParams.append(D,`cd.${X}`);else if(Array.isArray(X))this.url.searchParams.append(D,`cd.{${X.join(",")}}`);else this.url.searchParams.append(D,`cd.${JSON.stringify(X)}`);return this}rangeGt(D,X){return this.url.searchParams.append(D,`sr.${X}`),this}rangeGte(D,X){return this.url.searchParams.append(D,`nxl.${X}`),this}rangeLt(D,X){return this.url.searchParams.append(D,`sl.${X}`),this}rangeLte(D,X){return this.url.searchParams.append(D,`nxr.${X}`),this}rangeAdjacent(D,X){return this.url.searchParams.append(D,`adj.${X}`),this}overlaps(D,X){if(typeof X==="string")this.url.searchParams.append(D,`ov.${X}`);else this.url.searchParams.append(D,`ov.{${X.join(",")}}`);return this}textSearch(D,X,{config:Y,type:Z}={}){let J="";if(Z==="plain")J="pl";else if(Z==="phrase")J="ph";else if(Z==="websearch")J="w";let Q=Y===void 0?"":`(${Y})`;return this.url.searchParams.append(D,`${J}fts${Q}.${X}`),this}match(D){return Object.entries(D).forEach(([X,Y])=>{this.url.searchParams.append(X,`eq.${Y}`)}),this}not(D,X,Y){return this.url.searchParams.append(D,`not.${X}.${Y}`),this}or(D,{foreignTable:X,referencedTable:Y=X}={}){let Z=Y?`${Y}.or`:"or";return this.url.searchParams.append(Z,`(${D})`),this}filter(D,X,Y){return this.url.searchParams.append(D,`${X}.${Y}`),this}},VQ=class{constructor(D,{headers:X={},schema:Y,fetch:Z}){this.url=D,this.headers=new Headers(X),this.schema=Y,this.fetch=Z}select(D,X){let{head:Y=!1,count:Z}=X!==null&&X!==void 0?X:{},J=Y?"HEAD":"GET",Q=!1,w=(D!==null&&D!==void 0?D:"*").split("").map((F)=>{if(/\s/.test(F)&&!Q)return"";if(F==='"')Q=!Q;return F}).join("");if(this.url.searchParams.set("select",w),Z)this.headers.append("Prefer",`count=${Z}`);return new j6({method:J,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch})}insert(D,{count:X,defaultToNull:Y=!0}={}){var Z;let J="POST";if(X)this.headers.append("Prefer",`count=${X}`);if(!Y)this.headers.append("Prefer","missing=default");if(Array.isArray(D)){let Q=D.reduce((w,F)=>w.concat(Object.keys(F)),[]);if(Q.length>0){let w=[...new Set(Q)].map((F)=>`"${F}"`);this.url.searchParams.set("columns",w.join(","))}}return new j6({method:"POST",url:this.url,headers:this.headers,schema:this.schema,body:D,fetch:(Z=this.fetch)!==null&&Z!==void 0?Z:fetch})}upsert(D,{onConflict:X,ignoreDuplicates:Y=!1,count:Z,defaultToNull:J=!0}={}){var Q;let w="POST";if(this.headers.append("Prefer",`resolution=${Y?"ignore":"merge"}-duplicates`),X!==void 0)this.url.searchParams.set("on_conflict",X);if(Z)this.headers.append("Prefer",`count=${Z}`);if(!J)this.headers.append("Prefer","missing=default");if(Array.isArray(D)){let F=D.reduce((B,q)=>B.concat(Object.keys(q)),[]);if(F.length>0){let B=[...new Set(F)].map((q)=>`"${q}"`);this.url.searchParams.set("columns",B.join(","))}}return new j6({method:"POST",url:this.url,headers:this.headers,schema:this.schema,body:D,fetch:(Q=this.fetch)!==null&&Q!==void 0?Q:fetch})}update(D,{count:X}={}){var Y;let Z="PATCH";if(X)this.headers.append("Prefer",`count=${X}`);return new j6({method:"PATCH",url:this.url,headers:this.headers,schema:this.schema,body:D,fetch:(Y=this.fetch)!==null&&Y!==void 0?Y:fetch})}delete({count:D}={}){var X;let Y="DELETE";if(D)this.headers.append("Prefer",`count=${D}`);return new j6({method:"DELETE",url:this.url,headers:this.headers,schema:this.schema,fetch:(X=this.fetch)!==null&&X!==void 0?X:fetch})}},kX=class D{constructor(X,{headers:Y={},schema:Z,fetch:J}={}){this.url=X,this.headers=new Headers(Y),this.schemaName=Z,this.fetch=J}from(X){if(!X||typeof X!=="string"||X.trim()==="")throw Error("Invalid relation name: relation must be a non-empty string.");return new VQ(new URL(`${this.url}/${X}`),{headers:new Headers(this.headers),schema:this.schemaName,fetch:this.fetch})}schema(X){return new D(this.url,{headers:this.headers,schema:X,fetch:this.fetch})}rpc(X,Y={},{head:Z=!1,get:J=!1,count:Q}={}){var w;let F,B=new URL(`${this.url}/rpc/${X}`),q;if(Z||J)F=Z?"HEAD":"GET",Object.entries(Y).filter(([G,W])=>W!==void 0).map(([G,W])=>[G,Array.isArray(W)?`{${W.join(",")}}`:`${W}`]).forEach(([G,W])=>{B.searchParams.append(G,W)});else F="POST",q=Y;let $=new Headers(this.headers);if(Q)$.set("Prefer",`count=${Q}`);return new j6({method:F,url:B,headers:$,schema:this.schemaName,body:q,fetch:(w=this.fetch)!==null&&w!==void 0?w:fetch})}},p_={PostgrestClient:kX,PostgrestQueryBuilder:VQ,PostgrestFilterBuilder:j6,PostgrestTransformBuilder:LQ,PostgrestBuilder:MQ,PostgrestError:$4};var wH=V0(fQ(),1);var MW={};e7(MW,{validateVectorDimension:()=>bv,resolveResponse:()=>_v,resolveFetch:()=>nX,normalizeToFloat32:()=>vv,isStorageVectorsError:()=>E1,isStorageError:()=>FD,isPlainObject:()=>$W,VectorIndexScope:()=>zW,VectorIndexApi:()=>GW,VectorDataApi:()=>OW,VectorBucketScope:()=>KW,VectorBucketApi:()=>WW,StorageVectorsUnknownError:()=>qW,StorageVectorsErrorCode:()=>hv,StorageVectorsError:()=>bQ,StorageVectorsClient:()=>HW,StorageVectorsApiError:()=>cX,StorageUnknownError:()=>lX,StorageError:()=>V4,StorageClient:()=>gQ,StorageApiError:()=>JW,StorageAnalyticsClient:()=>BW});var z4=class extends Error{constructor(D,X){super(D);this.name="IcebergError",this.status=X.status,this.icebergType=X.icebergType,this.icebergCode=X.icebergCode,this.details=X.details,this.isCommitStateUnknown=X.icebergType==="CommitStateUnknownException"||[500,502,504].includes(X.status)&&X.icebergType?.includes("CommitState")===!0}isNotFound(){return this.status===404}isConflict(){return this.status===409}isAuthenticationTimeout(){return this.status===419}};function Mv(D,X,Y){let Z=new URL(X,D);if(Y){for(let[J,Q]of Object.entries(Y))if(Q!==void 0)Z.searchParams.set(J,Q)}return Z.toString()}async function Lv(D){if(!D||D.type==="none")return{};if(D.type==="bearer")return{Authorization:`Bearer ${D.token}`};if(D.type==="header")return{[D.name]:D.value};if(D.type==="custom")return await D.getHeaders();return{}}function Vv(D){let X=D.fetchImpl??globalThis.fetch;return{async request({method:Y,path:Z,query:J,body:Q,headers:w}){let F=Mv(D.baseUrl,Z,J),B=await Lv(D.auth),q=await X(F,{method:Y,headers:{...Q?{"Content-Type":"application/json"}:{},...B,...w},body:Q?JSON.stringify(Q):void 0}),$=await q.text(),G=(q.headers.get("content-type")||"").includes("application/json"),W=G&&$?JSON.parse($):$;if(!q.ok){let O=G?W:void 0,H=O?.error;throw new z4(H?.message??`Request failed with status ${q.status}`,{status:q.status,icebergType:H?.type,icebergCode:H?.code,details:O})}return{status:q.status,headers:q.headers,data:W}}}}function dX(D){return D.join("\x1F")}var Uv=class{constructor(D,X=""){this.client=D,this.prefix=X}async listNamespaces(D){let X=D?{parent:dX(D.namespace)}:void 0;return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces`,query:X})).data.namespaces.map((Z)=>({namespace:Z}))}async createNamespace(D,X){let Y={namespace:D.namespace,properties:X?.properties};return(await this.client.request({method:"POST",path:`${this.prefix}/namespaces`,body:Y})).data}async dropNamespace(D){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${dX(D.namespace)}`})}async loadNamespaceMetadata(D){return{properties:(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${dX(D.namespace)}`})).data.properties}}async namespaceExists(D){try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${dX(D.namespace)}`}),!0}catch(X){if(X instanceof z4&&X.status===404)return!1;throw X}}async createNamespaceIfNotExists(D,X){try{return await this.createNamespace(D,X)}catch(Y){if(Y instanceof z4&&Y.status===409)return;throw Y}}};function I5(D){return D.join("\x1F")}var Nv=class{constructor(D,X="",Y){this.client=D,this.prefix=X,this.accessDelegation=Y}async listTables(D){return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables`})).data.identifiers}async createTable(D,X){let Y={};if(this.accessDelegation)Y["X-Iceberg-Access-Delegation"]=this.accessDelegation;return(await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables`,body:X,headers:Y})).data.metadata}async updateTable(D,X){let Y=await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,body:X});return{"metadata-location":Y.data["metadata-location"],metadata:Y.data.metadata}}async dropTable(D,X){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,query:{purgeRequested:String(X?.purge??!1)}})}async loadTable(D){let X={};if(this.accessDelegation)X["X-Iceberg-Access-Delegation"]=this.accessDelegation;return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,headers:X})).data.metadata}async tableExists(D){let X={};if(this.accessDelegation)X["X-Iceberg-Access-Delegation"]=this.accessDelegation;try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,headers:X}),!0}catch(Y){if(Y instanceof z4&&Y.status===404)return!1;throw Y}}async createTableIfNotExists(D,X){try{return await this.createTable(D,X)}catch(Y){if(Y instanceof z4&&Y.status===409)return await this.loadTable({namespace:D.namespace,name:X.name});throw Y}}},DW=class{constructor(D){let X="v1";if(D.catalogName)X+=`/${D.catalogName}`;let Y=D.baseUrl.endsWith("/")?D.baseUrl:`${D.baseUrl}/`;this.client=Vv({baseUrl:Y,auth:D.auth,fetchImpl:D.fetch}),this.accessDelegation=D.accessDelegation?.join(","),this.namespaceOps=new Uv(this.client,X),this.tableOps=new Nv(this.client,X,this.accessDelegation)}async listNamespaces(D){return this.namespaceOps.listNamespaces(D)}async createNamespace(D,X){return this.namespaceOps.createNamespace(D,X)}async dropNamespace(D){await this.namespaceOps.dropNamespace(D)}async loadNamespaceMetadata(D){return this.namespaceOps.loadNamespaceMetadata(D)}async listTables(D){return this.tableOps.listTables(D)}async createTable(D,X){return this.tableOps.createTable(D,X)}async updateTable(D,X){return this.tableOps.updateTable(D,X)}async dropTable(D,X){await this.tableOps.dropTable(D,X)}async loadTable(D){return this.tableOps.loadTable(D)}async namespaceExists(D){return this.namespaceOps.namespaceExists(D)}async tableExists(D){return this.tableOps.tableExists(D)}async createNamespaceIfNotExists(D,X){return this.namespaceOps.createNamespaceIfNotExists(D,X)}async createTableIfNotExists(D,X){return this.tableOps.createTableIfNotExists(D,X)}};var V4=class extends Error{constructor(D){super(D);this.__isStorageError=!0,this.name="StorageError"}};function FD(D){return typeof D==="object"&&D!==null&&"__isStorageError"in D}var JW=class extends V4{constructor(D,X,Y){super(D);this.name="StorageApiError",this.status=X,this.statusCode=Y}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},lX=class extends V4{constructor(D,X){super(D);this.name="StorageUnknownError",this.originalError=X}},hQ=(D)=>{if(D)return(...X)=>D(...X);return(...X)=>fetch(...X)},Rv=()=>{return Response},kQ=(D)=>{if(Array.isArray(D))return D.map((Y)=>kQ(Y));else if(typeof D==="function"||D!==Object(D))return D;let X={};return Object.entries(D).forEach(([Y,Z])=>{let J=Y.replace(/([-_][a-z])/gi,(Q)=>Q.toUpperCase().replace(/[-_]/g,""));X[J]=kQ(Z)}),X},Av=(D)=>{if(typeof D!=="object"||D===null)return!1;let X=Object.getPrototypeOf(D);return(X===null||X===Object.prototype||Object.getPrototypeOf(X)===null)&&!(Symbol.toStringTag in D)&&!(Symbol.iterator in D)},Ev=(D)=>{if(!D||typeof D!=="string")return!1;if(D.length===0||D.length>100)return!1;if(D.trim()!==D)return!1;if(D.includes("/")||D.includes("\\"))return!1;return/^[\w!.\*'() &$@=;:+,?-]+$/.test(D)};function M4(D){return M4=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(X){return typeof X}:function(X){return X&&typeof Symbol=="function"&&X.constructor===Symbol&&X!==Symbol.prototype?"symbol":typeof X},M4(D)}function Cv(D,X){if(M4(D)!="object"||!D)return D;var Y=D[Symbol.toPrimitive];if(Y!==void 0){var Z=Y.call(D,X||"default");if(M4(Z)!="object")return Z;throw TypeError("@@toPrimitive must return a primitive value.")}return(X==="string"?String:Number)(D)}function jv(D){var X=Cv(D,"string");return M4(X)=="symbol"?X:X+""}function Iv(D,X,Y){return(X=jv(X))in D?Object.defineProperty(D,X,{value:Y,enumerable:!0,configurable:!0,writable:!0}):D[X]=Y,D}function XW(D,X){var Y=Object.keys(D);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(D);X&&(Z=Z.filter(function(J){return Object.getOwnPropertyDescriptor(D,J).enumerable})),Y.push.apply(Y,Z)}return Y}function G0(D){for(var X=1;X<arguments.length;X++){var Y=arguments[X]!=null?arguments[X]:{};X%2?XW(Object(Y),!0).forEach(function(Z){Iv(D,Z,Y[Z])}):Object.getOwnPropertyDescriptors?Object.defineProperties(D,Object.getOwnPropertyDescriptors(Y)):XW(Object(Y)).forEach(function(Z){Object.defineProperty(D,Z,Object.getOwnPropertyDescriptor(Y,Z))})}return D}var yQ=(D)=>{var X;return D.msg||D.message||D.error_description||(typeof D.error==="string"?D.error:(X=D.error)===null||X===void 0?void 0:X.message)||JSON.stringify(D)},Tv=async(D,X,Y)=>{if(D instanceof await Rv()&&!(Y===null||Y===void 0?void 0:Y.noResolveJson))D.json().then((Z)=>{let J=D.status||500,Q=(Z===null||Z===void 0?void 0:Z.statusCode)||J+"";X(new JW(yQ(Z),J,Q))}).catch((Z)=>{X(new lX(yQ(Z),Z))});else X(new lX(yQ(D),D))},Pv=(D,X,Y,Z)=>{let J={method:D,headers:(X===null||X===void 0?void 0:X.headers)||{}};if(D==="GET"||!Z)return J;if(Av(Z))J.headers=G0({"Content-Type":"application/json"},X===null||X===void 0?void 0:X.headers),J.body=JSON.stringify(Z);else J.body=Z;if(X===null||X===void 0?void 0:X.duplex)J.duplex=X.duplex;return G0(G0({},J),Y)};async function U4(D,X,Y,Z,J,Q){return new Promise((w,F)=>{D(Y,Pv(X,Z,J,Q)).then((B)=>{if(!B.ok)throw B;if(Z===null||Z===void 0?void 0:Z.noResolveJson)return B;return B.json()}).then((B)=>w(B)).catch((B)=>Tv(B,F,Z))})}async function L4(D,X,Y,Z){return U4(D,"GET",X,Y,Z)}async function F8(D,X,Y,Z,J){return U4(D,"POST",X,Z,J,Y)}async function uQ(D,X,Y,Z,J){return U4(D,"PUT",X,Z,J,Y)}async function Sv(D,X,Y,Z){return U4(D,"HEAD",X,G0(G0({},Y),{},{noResolveJson:!0}),Z)}async function _Q(D,X,Y,Z,J){return U4(D,"DELETE",X,Z,J,Y)}var xv=class{constructor(D,X){this.downloadFn=D,this.shouldThrowOnError=X}then(D,X){return this.execute().then(D,X)}async execute(){var D=this;try{return{data:(await D.downloadFn()).body,error:null}}catch(X){if(D.shouldThrowOnError)throw X;if(FD(X))return{data:null,error:X};throw X}}},QW;QW=Symbol.toStringTag;var fv=class{constructor(D,X){this.downloadFn=D,this.shouldThrowOnError=X,this[QW]="BlobDownloadBuilder",this.promise=null}asStream(){return new xv(this.downloadFn,this.shouldThrowOnError)}then(D,X){return this.getPromise().then(D,X)}catch(D){return this.getPromise().catch(D)}finally(D){return this.getPromise().finally(D)}getPromise(){if(!this.promise)this.promise=this.execute();return this.promise}async execute(){var D=this;try{return{data:await(await D.downloadFn()).blob(),error:null}}catch(X){if(D.shouldThrowOnError)throw X;if(FD(X))return{data:null,error:X};throw X}}},yv={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},YW={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1},kv=class{constructor(D,X={},Y,Z){this.shouldThrowOnError=!1,this.url=D,this.headers=X,this.bucketId=Y,this.fetch=hQ(Z)}throwOnError(){return this.shouldThrowOnError=!0,this}async uploadOrUpdate(D,X,Y,Z){var J=this;try{let Q,w=G0(G0({},YW),Z),F=G0(G0({},J.headers),D==="POST"&&{"x-upsert":String(w.upsert)}),B=w.metadata;if(typeof Blob<"u"&&Y instanceof Blob){if(Q=new FormData,Q.append("cacheControl",w.cacheControl),B)Q.append("metadata",J.encodeMetadata(B));Q.append("",Y)}else if(typeof FormData<"u"&&Y instanceof FormData){if(Q=Y,!Q.has("cacheControl"))Q.append("cacheControl",w.cacheControl);if(B&&!Q.has("metadata"))Q.append("metadata",J.encodeMetadata(B))}else{if(Q=Y,F["cache-control"]=`max-age=${w.cacheControl}`,F["content-type"]=w.contentType,B)F["x-metadata"]=J.toBase64(J.encodeMetadata(B));if((typeof ReadableStream<"u"&&Q instanceof ReadableStream||Q&&typeof Q==="object"&&("pipe"in Q)&&typeof Q.pipe==="function")&&!w.duplex)w.duplex="half"}if(Z===null||Z===void 0?void 0:Z.headers)F=G0(G0({},F),Z.headers);let q=J._removeEmptyFolders(X),$=J._getFinalPath(q),G=await(D=="PUT"?uQ:F8)(J.fetch,`${J.url}/object/${$}`,Q,G0({headers:F},(w===null||w===void 0?void 0:w.duplex)?{duplex:w.duplex}:{}));return{data:{path:q,id:G.Id,fullPath:G.Key},error:null}}catch(Q){if(J.shouldThrowOnError)throw Q;if(FD(Q))return{data:null,error:Q};throw Q}}async upload(D,X,Y){return this.uploadOrUpdate("POST",D,X,Y)}async uploadToSignedUrl(D,X,Y,Z){var J=this;let Q=J._removeEmptyFolders(D),w=J._getFinalPath(Q),F=new URL(J.url+`/object/upload/sign/${w}`);F.searchParams.set("token",X);try{let B,q=G0({upsert:YW.upsert},Z),$=G0(G0({},J.headers),{"x-upsert":String(q.upsert)});if(typeof Blob<"u"&&Y instanceof Blob)B=new FormData,B.append("cacheControl",q.cacheControl),B.append("",Y);else if(typeof FormData<"u"&&Y instanceof FormData)B=Y,B.append("cacheControl",q.cacheControl);else B=Y,$["cache-control"]=`max-age=${q.cacheControl}`,$["content-type"]=q.contentType;return{data:{path:Q,fullPath:(await uQ(J.fetch,F.toString(),B,{headers:$})).Key},error:null}}catch(B){if(J.shouldThrowOnError)throw B;if(FD(B))return{data:null,error:B};throw B}}async createSignedUploadUrl(D,X){var Y=this;try{let Z=Y._getFinalPath(D),J=G0({},Y.headers);if(X===null||X===void 0?void 0:X.upsert)J["x-upsert"]="true";let Q=await F8(Y.fetch,`${Y.url}/object/upload/sign/${Z}`,{},{headers:J}),w=new URL(Y.url+Q.url),F=w.searchParams.get("token");if(!F)throw new V4("No token returned by API");return{data:{signedUrl:w.toString(),path:D,token:F},error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async update(D,X,Y){return this.uploadOrUpdate("PUT",D,X,Y)}async move(D,X,Y){var Z=this;try{return{data:await F8(Z.fetch,`${Z.url}/object/move`,{bucketId:Z.bucketId,sourceKey:D,destinationKey:X,destinationBucket:Y===null||Y===void 0?void 0:Y.destinationBucket},{headers:Z.headers}),error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async copy(D,X,Y){var Z=this;try{return{data:{path:(await F8(Z.fetch,`${Z.url}/object/copy`,{bucketId:Z.bucketId,sourceKey:D,destinationKey:X,destinationBucket:Y===null||Y===void 0?void 0:Y.destinationBucket},{headers:Z.headers})).Key},error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async createSignedUrl(D,X,Y){var Z=this;try{let J=Z._getFinalPath(D),Q=await F8(Z.fetch,`${Z.url}/object/sign/${J}`,G0({expiresIn:X},(Y===null||Y===void 0?void 0:Y.transform)?{transform:Y.transform}:{}),{headers:Z.headers}),w=(Y===null||Y===void 0?void 0:Y.download)?`&download=${Y.download===!0?"":Y.download}`:"";return Q={signedUrl:encodeURI(`${Z.url}${Q.signedURL}${w}`)},{data:Q,error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async createSignedUrls(D,X,Y){var Z=this;try{let J=await F8(Z.fetch,`${Z.url}/object/sign/${Z.bucketId}`,{expiresIn:X,paths:D},{headers:Z.headers}),Q=(Y===null||Y===void 0?void 0:Y.download)?`&download=${Y.download===!0?"":Y.download}`:"";return{data:J.map((w)=>G0(G0({},w),{},{signedUrl:w.signedURL?encodeURI(`${Z.url}${w.signedURL}${Q}`):null})),error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}download(D,X){let Y=typeof(X===null||X===void 0?void 0:X.transform)<"u"?"render/image/authenticated":"object",Z=this.transformOptsToQueryString((X===null||X===void 0?void 0:X.transform)||{}),J=Z?`?${Z}`:"",Q=this._getFinalPath(D);return new fv(()=>L4(this.fetch,`${this.url}/${Y}/${Q}${J}`,{headers:this.headers,noResolveJson:!0}),this.shouldThrowOnError)}async info(D){var X=this;let Y=X._getFinalPath(D);try{return{data:kQ(await L4(X.fetch,`${X.url}/object/info/${Y}`,{headers:X.headers})),error:null}}catch(Z){if(X.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async exists(D){var X=this;let Y=X._getFinalPath(D);try{return await Sv(X.fetch,`${X.url}/object/${Y}`,{headers:X.headers}),{data:!0,error:null}}catch(Z){if(X.shouldThrowOnError)throw Z;if(FD(Z)&&Z instanceof lX){let J=Z.originalError;if([400,404].includes(J===null||J===void 0?void 0:J.status))return{data:!1,error:Z}}throw Z}}getPublicUrl(D,X){let Y=this._getFinalPath(D),Z=[],J=(X===null||X===void 0?void 0:X.download)?`download=${X.download===!0?"":X.download}`:"";if(J!=="")Z.push(J);let Q=typeof(X===null||X===void 0?void 0:X.transform)<"u"?"render/image":"object",w=this.transformOptsToQueryString((X===null||X===void 0?void 0:X.transform)||{});if(w!=="")Z.push(w);let F=Z.join("&");if(F!=="")F=`?${F}`;return{data:{publicUrl:encodeURI(`${this.url}/${Q}/public/${Y}${F}`)}}}async remove(D){var X=this;try{return{data:await _Q(X.fetch,`${X.url}/object/${X.bucketId}`,{prefixes:D},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async list(D,X,Y){var Z=this;try{let J=G0(G0(G0({},yv),X),{},{prefix:D||""});return{data:await F8(Z.fetch,`${Z.url}/object/list/${Z.bucketId}`,J,{headers:Z.headers},Y),error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async listV2(D,X){var Y=this;try{let Z=G0({},D);return{data:await F8(Y.fetch,`${Y.url}/object/list-v2/${Y.bucketId}`,Z,{headers:Y.headers},X),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}encodeMetadata(D){return JSON.stringify(D)}toBase64(D){if(typeof Buffer<"u")return Buffer.from(D).toString("base64");return btoa(D)}_getFinalPath(D){return`${this.bucketId}/${D.replace(/^\/+/,"")}`}_removeEmptyFolders(D){return D.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(D){let X=[];if(D.width)X.push(`width=${D.width}`);if(D.height)X.push(`height=${D.height}`);if(D.resize)X.push(`resize=${D.resize}`);if(D.format)X.push(`format=${D.format}`);if(D.quality)X.push(`quality=${D.quality}`);return X.join("&")}},wW="2.89.0",FW={"X-Client-Info":`storage-js/${wW}`},uv=class{constructor(D,X={},Y,Z){this.shouldThrowOnError=!1;let J=new URL(D);if(Z===null||Z===void 0?void 0:Z.useNewHostname){if(/supabase\.(co|in|red)$/.test(J.hostname)&&!J.hostname.includes("storage.supabase."))J.hostname=J.hostname.replace("supabase.","storage.supabase.")}this.url=J.href.replace(/\/$/,""),this.headers=G0(G0({},FW),X),this.fetch=hQ(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async listBuckets(D){var X=this;try{let Y=X.listBucketOptionsToQueryString(D);return{data:await L4(X.fetch,`${X.url}/bucket${Y}`,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async getBucket(D){var X=this;try{return{data:await L4(X.fetch,`${X.url}/bucket/${D}`,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async createBucket(D,X={public:!1}){var Y=this;try{return{data:await F8(Y.fetch,`${Y.url}/bucket`,{id:D,name:D,type:X.type,public:X.public,file_size_limit:X.fileSizeLimit,allowed_mime_types:X.allowedMimeTypes},{headers:Y.headers}),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async updateBucket(D,X){var Y=this;try{return{data:await uQ(Y.fetch,`${Y.url}/bucket/${D}`,{id:D,name:D,public:X.public,file_size_limit:X.fileSizeLimit,allowed_mime_types:X.allowedMimeTypes},{headers:Y.headers}),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async emptyBucket(D){var X=this;try{return{data:await F8(X.fetch,`${X.url}/bucket/${D}/empty`,{},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async deleteBucket(D){var X=this;try{return{data:await _Q(X.fetch,`${X.url}/bucket/${D}`,{},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}listBucketOptionsToQueryString(D){let X={};if(D){if("limit"in D)X.limit=String(D.limit);if("offset"in D)X.offset=String(D.offset);if(D.search)X.search=D.search;if(D.sortColumn)X.sortColumn=D.sortColumn;if(D.sortOrder)X.sortOrder=D.sortOrder}return Object.keys(X).length>0?"?"+new URLSearchParams(X).toString():""}},BW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},FW),X),this.fetch=hQ(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(D){var X=this;try{return{data:await F8(X.fetch,`${X.url}/bucket`,{name:D},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async listBuckets(D){var X=this;try{let Y=new URLSearchParams;if((D===null||D===void 0?void 0:D.limit)!==void 0)Y.set("limit",D.limit.toString());if((D===null||D===void 0?void 0:D.offset)!==void 0)Y.set("offset",D.offset.toString());if(D===null||D===void 0?void 0:D.sortColumn)Y.set("sortColumn",D.sortColumn);if(D===null||D===void 0?void 0:D.sortOrder)Y.set("sortOrder",D.sortOrder);if(D===null||D===void 0?void 0:D.search)Y.set("search",D.search);let Z=Y.toString(),J=Z?`${X.url}/bucket?${Z}`:`${X.url}/bucket`;return{data:await L4(X.fetch,J,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async deleteBucket(D){var X=this;try{return{data:await _Q(X.fetch,`${X.url}/bucket/${D}`,{},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}from(D){var X=this;if(!Ev(D))throw new V4("Invalid bucket name: File, folder, and bucket names must follow AWS object key naming guidelines and should avoid the use of any other characters.");let Y=new DW({baseUrl:this.url,catalogName:D,auth:{type:"custom",getHeaders:async()=>X.headers},fetch:this.fetch}),Z=this.shouldThrowOnError;return new Proxy(Y,{get(J,Q){let w=J[Q];if(typeof w!=="function")return w;return async(...F)=>{try{return{data:await w.apply(J,F),error:null}}catch(B){if(Z)throw B;return{data:null,error:B}}}}})}},vQ={"X-Client-Info":`storage-js/${wW}`,"Content-Type":"application/json"},bQ=class extends Error{constructor(D){super(D);this.__isStorageVectorsError=!0,this.name="StorageVectorsError"}};function E1(D){return typeof D==="object"&&D!==null&&"__isStorageVectorsError"in D}var cX=class extends bQ{constructor(D,X,Y){super(D);this.name="StorageVectorsApiError",this.status=X,this.statusCode=Y}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},qW=class extends bQ{constructor(D,X){super(D);this.name="StorageVectorsUnknownError",this.originalError=X}},hv=function(D){return D.InternalError="InternalError",D.S3VectorConflictException="S3VectorConflictException",D.S3VectorNotFoundException="S3VectorNotFoundException",D.S3VectorBucketNotEmpty="S3VectorBucketNotEmpty",D.S3VectorMaxBucketsExceeded="S3VectorMaxBucketsExceeded",D.S3VectorMaxIndexesExceeded="S3VectorMaxIndexesExceeded",D}({}),nX=(D)=>{if(D)return(...X)=>D(...X);return(...X)=>fetch(...X)},_v=()=>{return Response},$W=(D)=>{if(typeof D!=="object"||D===null)return!1;let X=Object.getPrototypeOf(D);return(X===null||X===Object.prototype||Object.getPrototypeOf(X)===null)&&!(Symbol.toStringTag in D)&&!(Symbol.iterator in D)},vv=(D)=>{return Array.from(new Float32Array(D))},bv=(D,X)=>{if(X!==void 0&&D.float32.length!==X)throw Error(`Vector dimension mismatch: expected ${X}, got ${D.float32.length}`)},ZW=(D)=>D.msg||D.message||D.error_description||D.error||JSON.stringify(D),gv=async(D,X,Y)=>{if(D&&typeof D==="object"&&"status"in D&&"ok"in D&&typeof D.status==="number"&&!(Y===null||Y===void 0?void 0:Y.noResolveJson)){let Z=D.status||500,J=D;if(typeof J.json==="function")J.json().then((Q)=>{let w=(Q===null||Q===void 0?void 0:Q.statusCode)||(Q===null||Q===void 0?void 0:Q.code)||Z+"";X(new cX(ZW(Q),Z,w))}).catch(()=>{let Q=Z+"";X(new cX(J.statusText||`HTTP ${Z} error`,Z,Q))});else{let Q=Z+"";X(new cX(J.statusText||`HTTP ${Z} error`,Z,Q))}}else X(new qW(ZW(D),D))},mv=(D,X,Y,Z)=>{let J={method:D,headers:(X===null||X===void 0?void 0:X.headers)||{}};if(D==="GET"||!Z)return J;if($W(Z))J.headers=G0({"Content-Type":"application/json"},X===null||X===void 0?void 0:X.headers),J.body=JSON.stringify(Z);else J.body=Z;return G0(G0({},J),Y)};async function dv(D,X,Y,Z,J,Q){return new Promise((w,F)=>{D(Y,mv(X,Z,J,Q)).then((B)=>{if(!B.ok)throw B;if(Z===null||Z===void 0?void 0:Z.noResolveJson)return B;let q=B.headers.get("content-type");if(!q||!q.includes("application/json"))return{};return B.json()}).then((B)=>w(B)).catch((B)=>gv(B,F,Z))})}async function u1(D,X,Y,Z,J){return dv(D,"POST",X,Z,J,Y)}var GW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},vQ),X),this.fetch=nX(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async createIndex(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/CreateIndex`,D,{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async getIndex(D,X){var Y=this;try{return{data:await u1(Y.fetch,`${Y.url}/GetIndex`,{vectorBucketName:D,indexName:X},{headers:Y.headers}),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(E1(Z))return{data:null,error:Z};throw Z}}async listIndexes(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/ListIndexes`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async deleteIndex(D,X){var Y=this;try{return{data:await u1(Y.fetch,`${Y.url}/DeleteIndex`,{vectorBucketName:D,indexName:X},{headers:Y.headers})||{},error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(E1(Z))return{data:null,error:Z};throw Z}}},OW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},vQ),X),this.fetch=nX(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async putVectors(D){var X=this;try{if(D.vectors.length<1||D.vectors.length>500)throw Error("Vector batch size must be between 1 and 500 items");return{data:await u1(X.fetch,`${X.url}/PutVectors`,D,{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async getVectors(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/GetVectors`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async listVectors(D){var X=this;try{if(D.segmentCount!==void 0){if(D.segmentCount<1||D.segmentCount>16)throw Error("segmentCount must be between 1 and 16");if(D.segmentIndex!==void 0){if(D.segmentIndex<0||D.segmentIndex>=D.segmentCount)throw Error(`segmentIndex must be between 0 and ${D.segmentCount-1}`)}}return{data:await u1(X.fetch,`${X.url}/ListVectors`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async queryVectors(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/QueryVectors`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async deleteVectors(D){var X=this;try{if(D.keys.length<1||D.keys.length>500)throw Error("Keys batch size must be between 1 and 500 items");return{data:await u1(X.fetch,`${X.url}/DeleteVectors`,D,{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}},WW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},vQ),X),this.fetch=nX(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/CreateVectorBucket`,{vectorBucketName:D},{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async getBucket(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/GetVectorBucket`,{vectorBucketName:D},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async listBuckets(D={}){var X=this;try{return{data:await u1(X.fetch,`${X.url}/ListVectorBuckets`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async deleteBucket(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/DeleteVectorBucket`,{vectorBucketName:D},{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}},HW=class extends WW{constructor(D,X={}){super(D,X.headers||{},X.fetch)}from(D){return new KW(this.url,this.headers,D,this.fetch)}async createBucket(D){var X=()=>super.createBucket,Y=this;return X().call(Y,D)}async getBucket(D){var X=()=>super.getBucket,Y=this;return X().call(Y,D)}async listBuckets(D={}){var X=()=>super.listBuckets,Y=this;return X().call(Y,D)}async deleteBucket(D){var X=()=>super.deleteBucket,Y=this;return X().call(Y,D)}},KW=class extends GW{constructor(D,X,Y,Z){super(D,X,Z);this.vectorBucketName=Y}async createIndex(D){var X=()=>super.createIndex,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName}))}async listIndexes(D={}){var X=()=>super.listIndexes,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName}))}async getIndex(D){var X=()=>super.getIndex,Y=this;return X().call(Y,Y.vectorBucketName,D)}async deleteIndex(D){var X=()=>super.deleteIndex,Y=this;return X().call(Y,Y.vectorBucketName,D)}index(D){return new zW(this.url,this.headers,this.vectorBucketName,D,this.fetch)}},zW=class extends OW{constructor(D,X,Y,Z,J){super(D,X,J);this.vectorBucketName=Y,this.indexName=Z}async putVectors(D){var X=()=>super.putVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async getVectors(D){var X=()=>super.getVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async listVectors(D={}){var X=()=>super.listVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async queryVectors(D){var X=()=>super.queryVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async deleteVectors(D){var X=()=>super.deleteVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}},gQ=class extends uv{constructor(D,X={},Y,Z){super(D,X,Y,Z)}from(D){return new kv(this.url,this.headers,D,this.fetch)}get vectors(){return new HW(this.url+"/vector",{headers:this.headers,fetch:this.fetch})}get analytics(){return new BW(this.url+"/iceberg",this.headers,this.fetch)}};var FH=V0(Bw(),1);J0(Z0,V0(fQ(),1),module.exports);J0(Z0,V0(Bw(),1),module.exports);var Mg="2.89.0",C4="";if(typeof Deno<"u")C4="deno";else if(typeof document<"u")C4="web";else if(typeof navigator<"u"&&navigator.product==="ReactNative")C4="react-native";else C4="node";var Lg={"X-Client-Info":`supabase-js-${C4}/${Mg}`},Vg={headers:Lg},Ug={schema:"public"},Ng={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},Rg={};function j4(D){return j4=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(X){return typeof X}:function(X){return X&&typeof Symbol=="function"&&X.constructor===Symbol&&X!==Symbol.prototype?"symbol":typeof X},j4(D)}function Ag(D,X){if(j4(D)!="object"||!D)return D;var Y=D[Symbol.toPrimitive];if(Y!==void 0){var Z=Y.call(D,X||"default");if(j4(Z)!="object")return Z;throw TypeError("@@toPrimitive must return a primitive value.")}return(X==="string"?String:Number)(D)}function Eg(D){var X=Ag(D,"string");return j4(X)=="symbol"?X:X+""}function Cg(D,X,Y){return(X=Eg(X))in D?Object.defineProperty(D,X,{value:Y,enumerable:!0,configurable:!0,writable:!0}):D[X]=Y,D}function QH(D,X){var Y=Object.keys(D);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(D);X&&(Z=Z.filter(function(J){return Object.getOwnPropertyDescriptor(D,J).enumerable})),Y.push.apply(Y,Z)}return Y}function UD(D){for(var X=1;X<arguments.length;X++){var Y=arguments[X]!=null?arguments[X]:{};X%2?QH(Object(Y),!0).forEach(function(Z){Cg(D,Z,Y[Z])}):Object.getOwnPropertyDescriptors?Object.defineProperties(D,Object.getOwnPropertyDescriptors(Y)):QH(Object(Y)).forEach(function(Z){Object.defineProperty(D,Z,Object.getOwnPropertyDescriptor(Y,Z))})}return D}var jg=(D)=>{if(D)return(...X)=>D(...X);return(...X)=>fetch(...X)},Ig=()=>{return Headers},Tg=(D,X,Y)=>{let Z=jg(Y),J=Ig();return async(Q,w)=>{var F;let B=(F=await X())!==null&&F!==void 0?F:D,q=new J(w===null||w===void 0?void 0:w.headers);if(!q.has("apikey"))q.set("apikey",D);if(!q.has("Authorization"))q.set("Authorization",`Bearer ${B}`);return Z(Q,UD(UD({},w),{},{headers:q}))}};function Pg(D){return D.endsWith("/")?D:D+"/"}function Sg(D,X){var Y,Z;let{db:J,auth:Q,realtime:w,global:F}=D,{db:B,auth:q,realtime:$,global:G}=X,W={db:UD(UD({},B),J),auth:UD(UD({},q),Q),realtime:UD(UD({},$),w),storage:{},global:UD(UD(UD({},G),F),{},{headers:UD(UD({},(Y=G===null||G===void 0?void 0:G.headers)!==null&&Y!==void 0?Y:{}),(Z=F===null||F===void 0?void 0:F.headers)!==null&&Z!==void 0?Z:{})}),accessToken:async()=>""};if(D.accessToken)W.accessToken=D.accessToken;else delete W.accessToken;return W}function xg(D){let X=D===null||D===void 0?void 0:D.trim();if(!X)throw Error("supabaseUrl is required.");if(!X.match(/^https?:\/\//i))throw Error("Invalid supabaseUrl: Must be a valid HTTP or HTTPS URL.");try{return new URL(Pg(X))}catch(Y){throw Error("Invalid supabaseUrl: Provided URL is malformed.")}}var fg=class extends FH.AuthClient{constructor(D){super(D)}},BH=class{constructor(D,X,Y){var Z,J;this.supabaseUrl=D,this.supabaseKey=X;let Q=xg(D);if(!X)throw Error("supabaseKey is required.");this.realtimeUrl=new URL("realtime/v1",Q),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",Q),this.storageUrl=new URL("storage/v1",Q),this.functionsUrl=new URL("functions/v1",Q);let w=`sb-${Q.hostname.split(".")[0]}-auth-token`,F={db:Ug,realtime:Rg,auth:UD(UD({},Ng),{},{storageKey:w}),global:Vg},B=Sg(Y!==null&&Y!==void 0?Y:{},F);if(this.storageKey=(Z=B.auth.storageKey)!==null&&Z!==void 0?Z:"",this.headers=(J=B.global.headers)!==null&&J!==void 0?J:{},!B.accessToken){var q;this.auth=this._initSupabaseAuthClient((q=B.auth)!==null&&q!==void 0?q:{},this.headers,B.global.fetch)}else this.accessToken=B.accessToken,this.auth=new Proxy({},{get:($,G)=>{throw Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(G)} is not possible`)}});if(this.fetch=Tg(X,this._getAccessToken.bind(this),B.global.fetch),this.realtime=this._initRealtimeClient(UD({headers:this.headers,accessToken:this._getAccessToken.bind(this)},B.realtime)),this.accessToken)this.accessToken().then(($)=>this.realtime.setAuth($)).catch(($)=>console.warn("Failed to set initial Realtime auth token:",$));if(this.rest=new kX(new URL("rest/v1",Q).href,{headers:this.headers,schema:B.db.schema,fetch:this.fetch}),this.storage=new gQ(this.storageUrl.href,this.headers,this.fetch,Y===null||Y===void 0?void 0:Y.storage),!B.accessToken)this._listenForAuthEvents()}get functions(){return new eD.FunctionsClient(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}from(D){return this.rest.from(D)}schema(D){return this.rest.schema(D)}rpc(D,X={},Y={head:!1,get:!1,count:void 0}){return this.rest.rpc(D,X,Y)}channel(D,X={config:{}}){return this.realtime.channel(D,X)}getChannels(){return this.realtime.getChannels()}removeChannel(D){return this.realtime.removeChannel(D)}removeAllChannels(){return this.realtime.removeAllChannels()}async _getAccessToken(){var D=this,X,Y;if(D.accessToken)return await D.accessToken();let{data:Z}=await D.auth.getSession();return(X=(Y=Z.session)===null||Y===void 0?void 0:Y.access_token)!==null&&X!==void 0?X:D.supabaseKey}_initSupabaseAuthClient({autoRefreshToken:D,persistSession:X,detectSessionInUrl:Y,storage:Z,userStorage:J,storageKey:Q,flowType:w,lock:F,debug:B,throwOnError:q},$,G){let W={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new fg({url:this.authUrl.href,headers:UD(UD({},W),$),storageKey:Q,autoRefreshToken:D,persistSession:X,detectSessionInUrl:Y,storage:Z,userStorage:J,flowType:w,lock:F,debug:B,throwOnError:q,fetch:G,hasCustomAuthorizationHeader:Object.keys(this.headers).some((O)=>O.toLowerCase()==="authorization")})}_initRealtimeClient(D){return new wH.RealtimeClient(this.realtimeUrl.href,UD(UD({},D),{},{params:UD(UD({},{apikey:this.supabaseKey}),D===null||D===void 0?void 0:D.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((D,X)=>{this._handleTokenChanged(D,"CLIENT",X===null||X===void 0?void 0:X.access_token)})}_handleTokenChanged(D,X,Y){if((D==="TOKEN_REFRESHED"||D==="SIGNED_IN")&&this.changedAccessToken!==Y)this.changedAccessToken=Y,this.realtime.setAuth(Y);else if(D==="SIGNED_OUT"){if(this.realtime.setAuth(),X=="STORAGE")this.auth.signOut();this.changedAccessToken=void 0}}},qw=(D,X,Y)=>{return new BH(D,X,Y)};function yg(){if(typeof window<"u")return!1;if(typeof process>"u")return!1;let D=process.version;if(D===void 0||D===null)return!1;let X=D.match(/^v(\d+)\./);if(!X)return!1;return parseInt(X[1],10)<=18}if(yg())console.warn("⚠️ Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. Please upgrade to Node.js 20 or later. For more information, visit: https://github.com/orgs/supabase/discussions/37217");var S$=V0(Kw(),1),Ty=V0(zK(),1),$J=V0(qZ(),1);var o8={name:"@capgo/cli",version:"7.70.0",type:"module",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLI#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/CLI.git"},bugs:{url:"https://github.com/Cap-go/CLI/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js",require:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsc --noEmit",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js","generate-docs":"node dist/index.js generate-docs README.md","test:bundle":"bun test/test-bundle.mjs","test:functional":"bun test/test-functional.mjs","test:semver":"bun test/test-semver-validation.mjs","test:version-edge-cases":"bun test/test-version-validation.mjs","test:regex":"bun test/test-regex-validation.mjs","test:upload":"bun test/test-upload-validation.mjs","test:credentials":"bun test/test-credentials.mjs","test:credentials-validation":"bun test/test-credentials-validation.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh",test:"bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:credentials && bun run test:credentials-validation && bun run test:version-detection"},devDependencies:{"@antfu/eslint-config":"^6.1.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.4","@capacitor/cli":"^8.0.0","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^0.11.0","@modelcontextprotocol/sdk":"^1.0.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.6","@supabase/supabase-js":"^2.79.0","@types/adm-zip":"^0.5.7","@types/node":"^24","@types/prettyjson":"^0.0.33","@types/tmp":"^0.2.6","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.16","ci-info":"^4.3.1",commander:"^14.0.2",eslint:"^9.38.0","git-format-staged":"3.1.3",husky:"^9.1.7","is-wsl":"^3.1.0",micromatch:"^4.0.8",open:"^11.0.0",prettyjson:"^1.2.5",tmp:"^0.2.5","tus-js-client":"^4.3.1",typescript:"^5.9.3",zod:"^3.24.0"}};async function $Z(D){try{let Y=`https://registry.npmjs.org/${encodeURIComponent(D.toLowerCase())}`,Z=await fetch(Y,{headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"}});if(!Z.ok)return null;return(await Z.json())["dist-tags"]?.latest||null}catch{return null}}async function o0(){let D=await $Z("@capgo/cli")??"",X=D?.split(".")[0];if(D!==o8.version)K.warning(`\uD83D\uDEA8 You are using @capgo/cli@${o8.version} it's not the latest version.
|
|
314
|
+
${B.stack}`}else{var O;F=(O=Q===null||Q===void 0?void 0:Q.stack)!==null&&O!==void 0?O:""}return{error:{message:`${(w=Q===null||Q===void 0?void 0:Q.name)!==null&&w!==void 0?w:"FetchError"}: ${Q===null||Q===void 0?void 0:Q.message}`,details:F,hint:"",code:""},data:null,count:null,status:0,statusText:""}});return J.then(D,X)}returns(){return this}overrideTypes(){return this}},LQ=class extends MQ{select(D){let X=!1,Y=(D!==null&&D!==void 0?D:"*").split("").map((Z)=>{if(/\s/.test(Z)&&!X)return"";if(Z==='"')X=!X;return Z}).join("");return this.url.searchParams.set("select",Y),this.headers.append("Prefer","return=representation"),this}order(D,{ascending:X=!0,nullsFirst:Y,foreignTable:Z,referencedTable:J=Z}={}){let Q=J?`${J}.order`:"order",w=this.url.searchParams.get(Q);return this.url.searchParams.set(Q,`${w?`${w},`:""}${D}.${X?"asc":"desc"}${Y===void 0?"":Y?".nullsfirst":".nullslast"}`),this}limit(D,{foreignTable:X,referencedTable:Y=X}={}){let Z=typeof Y>"u"?"limit":`${Y}.limit`;return this.url.searchParams.set(Z,`${D}`),this}range(D,X,{foreignTable:Y,referencedTable:Z=Y}={}){let J=typeof Z>"u"?"offset":`${Z}.offset`,Q=typeof Z>"u"?"limit":`${Z}.limit`;return this.url.searchParams.set(J,`${D}`),this.url.searchParams.set(Q,`${X-D+1}`),this}abortSignal(D){return this.signal=D,this}single(){return this.headers.set("Accept","application/vnd.pgrst.object+json"),this}maybeSingle(){if(this.method==="GET")this.headers.set("Accept","application/json");else this.headers.set("Accept","application/vnd.pgrst.object+json");return this.isMaybeSingle=!0,this}csv(){return this.headers.set("Accept","text/csv"),this}geojson(){return this.headers.set("Accept","application/geo+json"),this}explain({analyze:D=!1,verbose:X=!1,settings:Y=!1,buffers:Z=!1,wal:J=!1,format:Q="text"}={}){var w;let F=[D?"analyze":null,X?"verbose":null,Y?"settings":null,Z?"buffers":null,J?"wal":null].filter(Boolean).join("|"),B=(w=this.headers.get("Accept"))!==null&&w!==void 0?w:"application/json";if(this.headers.set("Accept",`application/vnd.pgrst.plan+${Q}; for="${B}"; options=${F};`),Q==="json")return this;else return this}rollback(){return this.headers.append("Prefer","tx=rollback"),this}returns(){return this}maxAffected(D){return this.headers.append("Prefer","handling=strict"),this.headers.append("Prefer",`max-affected=${D}`),this}},kO=new RegExp("[,()]"),j6=class extends LQ{eq(D,X){return this.url.searchParams.append(D,`eq.${X}`),this}neq(D,X){return this.url.searchParams.append(D,`neq.${X}`),this}gt(D,X){return this.url.searchParams.append(D,`gt.${X}`),this}gte(D,X){return this.url.searchParams.append(D,`gte.${X}`),this}lt(D,X){return this.url.searchParams.append(D,`lt.${X}`),this}lte(D,X){return this.url.searchParams.append(D,`lte.${X}`),this}like(D,X){return this.url.searchParams.append(D,`like.${X}`),this}likeAllOf(D,X){return this.url.searchParams.append(D,`like(all).{${X.join(",")}}`),this}likeAnyOf(D,X){return this.url.searchParams.append(D,`like(any).{${X.join(",")}}`),this}ilike(D,X){return this.url.searchParams.append(D,`ilike.${X}`),this}ilikeAllOf(D,X){return this.url.searchParams.append(D,`ilike(all).{${X.join(",")}}`),this}ilikeAnyOf(D,X){return this.url.searchParams.append(D,`ilike(any).{${X.join(",")}}`),this}regexMatch(D,X){return this.url.searchParams.append(D,`match.${X}`),this}regexIMatch(D,X){return this.url.searchParams.append(D,`imatch.${X}`),this}is(D,X){return this.url.searchParams.append(D,`is.${X}`),this}isDistinct(D,X){return this.url.searchParams.append(D,`isdistinct.${X}`),this}in(D,X){let Y=Array.from(new Set(X)).map((Z)=>{if(typeof Z==="string"&&kO.test(Z))return`"${Z}"`;else return`${Z}`}).join(",");return this.url.searchParams.append(D,`in.(${Y})`),this}notIn(D,X){let Y=Array.from(new Set(X)).map((Z)=>{if(typeof Z==="string"&&kO.test(Z))return`"${Z}"`;else return`${Z}`}).join(",");return this.url.searchParams.append(D,`not.in.(${Y})`),this}contains(D,X){if(typeof X==="string")this.url.searchParams.append(D,`cs.${X}`);else if(Array.isArray(X))this.url.searchParams.append(D,`cs.{${X.join(",")}}`);else this.url.searchParams.append(D,`cs.${JSON.stringify(X)}`);return this}containedBy(D,X){if(typeof X==="string")this.url.searchParams.append(D,`cd.${X}`);else if(Array.isArray(X))this.url.searchParams.append(D,`cd.{${X.join(",")}}`);else this.url.searchParams.append(D,`cd.${JSON.stringify(X)}`);return this}rangeGt(D,X){return this.url.searchParams.append(D,`sr.${X}`),this}rangeGte(D,X){return this.url.searchParams.append(D,`nxl.${X}`),this}rangeLt(D,X){return this.url.searchParams.append(D,`sl.${X}`),this}rangeLte(D,X){return this.url.searchParams.append(D,`nxr.${X}`),this}rangeAdjacent(D,X){return this.url.searchParams.append(D,`adj.${X}`),this}overlaps(D,X){if(typeof X==="string")this.url.searchParams.append(D,`ov.${X}`);else this.url.searchParams.append(D,`ov.{${X.join(",")}}`);return this}textSearch(D,X,{config:Y,type:Z}={}){let J="";if(Z==="plain")J="pl";else if(Z==="phrase")J="ph";else if(Z==="websearch")J="w";let Q=Y===void 0?"":`(${Y})`;return this.url.searchParams.append(D,`${J}fts${Q}.${X}`),this}match(D){return Object.entries(D).forEach(([X,Y])=>{this.url.searchParams.append(X,`eq.${Y}`)}),this}not(D,X,Y){return this.url.searchParams.append(D,`not.${X}.${Y}`),this}or(D,{foreignTable:X,referencedTable:Y=X}={}){let Z=Y?`${Y}.or`:"or";return this.url.searchParams.append(Z,`(${D})`),this}filter(D,X,Y){return this.url.searchParams.append(D,`${X}.${Y}`),this}},VQ=class{constructor(D,{headers:X={},schema:Y,fetch:Z}){this.url=D,this.headers=new Headers(X),this.schema=Y,this.fetch=Z}select(D,X){let{head:Y=!1,count:Z}=X!==null&&X!==void 0?X:{},J=Y?"HEAD":"GET",Q=!1,w=(D!==null&&D!==void 0?D:"*").split("").map((F)=>{if(/\s/.test(F)&&!Q)return"";if(F==='"')Q=!Q;return F}).join("");if(this.url.searchParams.set("select",w),Z)this.headers.append("Prefer",`count=${Z}`);return new j6({method:J,url:this.url,headers:this.headers,schema:this.schema,fetch:this.fetch})}insert(D,{count:X,defaultToNull:Y=!0}={}){var Z;let J="POST";if(X)this.headers.append("Prefer",`count=${X}`);if(!Y)this.headers.append("Prefer","missing=default");if(Array.isArray(D)){let Q=D.reduce((w,F)=>w.concat(Object.keys(F)),[]);if(Q.length>0){let w=[...new Set(Q)].map((F)=>`"${F}"`);this.url.searchParams.set("columns",w.join(","))}}return new j6({method:"POST",url:this.url,headers:this.headers,schema:this.schema,body:D,fetch:(Z=this.fetch)!==null&&Z!==void 0?Z:fetch})}upsert(D,{onConflict:X,ignoreDuplicates:Y=!1,count:Z,defaultToNull:J=!0}={}){var Q;let w="POST";if(this.headers.append("Prefer",`resolution=${Y?"ignore":"merge"}-duplicates`),X!==void 0)this.url.searchParams.set("on_conflict",X);if(Z)this.headers.append("Prefer",`count=${Z}`);if(!J)this.headers.append("Prefer","missing=default");if(Array.isArray(D)){let F=D.reduce((B,q)=>B.concat(Object.keys(q)),[]);if(F.length>0){let B=[...new Set(F)].map((q)=>`"${q}"`);this.url.searchParams.set("columns",B.join(","))}}return new j6({method:"POST",url:this.url,headers:this.headers,schema:this.schema,body:D,fetch:(Q=this.fetch)!==null&&Q!==void 0?Q:fetch})}update(D,{count:X}={}){var Y;let Z="PATCH";if(X)this.headers.append("Prefer",`count=${X}`);return new j6({method:"PATCH",url:this.url,headers:this.headers,schema:this.schema,body:D,fetch:(Y=this.fetch)!==null&&Y!==void 0?Y:fetch})}delete({count:D}={}){var X;let Y="DELETE";if(D)this.headers.append("Prefer",`count=${D}`);return new j6({method:"DELETE",url:this.url,headers:this.headers,schema:this.schema,fetch:(X=this.fetch)!==null&&X!==void 0?X:fetch})}},kX=class D{constructor(X,{headers:Y={},schema:Z,fetch:J}={}){this.url=X,this.headers=new Headers(Y),this.schemaName=Z,this.fetch=J}from(X){if(!X||typeof X!=="string"||X.trim()==="")throw Error("Invalid relation name: relation must be a non-empty string.");return new VQ(new URL(`${this.url}/${X}`),{headers:new Headers(this.headers),schema:this.schemaName,fetch:this.fetch})}schema(X){return new D(this.url,{headers:this.headers,schema:X,fetch:this.fetch})}rpc(X,Y={},{head:Z=!1,get:J=!1,count:Q}={}){var w;let F,B=new URL(`${this.url}/rpc/${X}`),q;if(Z||J)F=Z?"HEAD":"GET",Object.entries(Y).filter(([G,W])=>W!==void 0).map(([G,W])=>[G,Array.isArray(W)?`{${W.join(",")}}`:`${W}`]).forEach(([G,W])=>{B.searchParams.append(G,W)});else F="POST",q=Y;let $=new Headers(this.headers);if(Q)$.set("Prefer",`count=${Q}`);return new j6({method:F,url:B,headers:$,schema:this.schemaName,body:q,fetch:(w=this.fetch)!==null&&w!==void 0?w:fetch})}},p_={PostgrestClient:kX,PostgrestQueryBuilder:VQ,PostgrestFilterBuilder:j6,PostgrestTransformBuilder:LQ,PostgrestBuilder:MQ,PostgrestError:$4};var wH=V0(fQ(),1);var MW={};e7(MW,{validateVectorDimension:()=>bv,resolveResponse:()=>_v,resolveFetch:()=>nX,normalizeToFloat32:()=>vv,isStorageVectorsError:()=>E1,isStorageError:()=>FD,isPlainObject:()=>$W,VectorIndexScope:()=>zW,VectorIndexApi:()=>GW,VectorDataApi:()=>OW,VectorBucketScope:()=>KW,VectorBucketApi:()=>WW,StorageVectorsUnknownError:()=>qW,StorageVectorsErrorCode:()=>hv,StorageVectorsError:()=>bQ,StorageVectorsClient:()=>HW,StorageVectorsApiError:()=>cX,StorageUnknownError:()=>lX,StorageError:()=>V4,StorageClient:()=>gQ,StorageApiError:()=>JW,StorageAnalyticsClient:()=>BW});var z4=class extends Error{constructor(D,X){super(D);this.name="IcebergError",this.status=X.status,this.icebergType=X.icebergType,this.icebergCode=X.icebergCode,this.details=X.details,this.isCommitStateUnknown=X.icebergType==="CommitStateUnknownException"||[500,502,504].includes(X.status)&&X.icebergType?.includes("CommitState")===!0}isNotFound(){return this.status===404}isConflict(){return this.status===409}isAuthenticationTimeout(){return this.status===419}};function Mv(D,X,Y){let Z=new URL(X,D);if(Y){for(let[J,Q]of Object.entries(Y))if(Q!==void 0)Z.searchParams.set(J,Q)}return Z.toString()}async function Lv(D){if(!D||D.type==="none")return{};if(D.type==="bearer")return{Authorization:`Bearer ${D.token}`};if(D.type==="header")return{[D.name]:D.value};if(D.type==="custom")return await D.getHeaders();return{}}function Vv(D){let X=D.fetchImpl??globalThis.fetch;return{async request({method:Y,path:Z,query:J,body:Q,headers:w}){let F=Mv(D.baseUrl,Z,J),B=await Lv(D.auth),q=await X(F,{method:Y,headers:{...Q?{"Content-Type":"application/json"}:{},...B,...w},body:Q?JSON.stringify(Q):void 0}),$=await q.text(),G=(q.headers.get("content-type")||"").includes("application/json"),W=G&&$?JSON.parse($):$;if(!q.ok){let O=G?W:void 0,H=O?.error;throw new z4(H?.message??`Request failed with status ${q.status}`,{status:q.status,icebergType:H?.type,icebergCode:H?.code,details:O})}return{status:q.status,headers:q.headers,data:W}}}}function dX(D){return D.join("\x1F")}var Uv=class{constructor(D,X=""){this.client=D,this.prefix=X}async listNamespaces(D){let X=D?{parent:dX(D.namespace)}:void 0;return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces`,query:X})).data.namespaces.map((Z)=>({namespace:Z}))}async createNamespace(D,X){let Y={namespace:D.namespace,properties:X?.properties};return(await this.client.request({method:"POST",path:`${this.prefix}/namespaces`,body:Y})).data}async dropNamespace(D){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${dX(D.namespace)}`})}async loadNamespaceMetadata(D){return{properties:(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${dX(D.namespace)}`})).data.properties}}async namespaceExists(D){try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${dX(D.namespace)}`}),!0}catch(X){if(X instanceof z4&&X.status===404)return!1;throw X}}async createNamespaceIfNotExists(D,X){try{return await this.createNamespace(D,X)}catch(Y){if(Y instanceof z4&&Y.status===409)return;throw Y}}};function I5(D){return D.join("\x1F")}var Nv=class{constructor(D,X="",Y){this.client=D,this.prefix=X,this.accessDelegation=Y}async listTables(D){return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables`})).data.identifiers}async createTable(D,X){let Y={};if(this.accessDelegation)Y["X-Iceberg-Access-Delegation"]=this.accessDelegation;return(await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables`,body:X,headers:Y})).data.metadata}async updateTable(D,X){let Y=await this.client.request({method:"POST",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,body:X});return{"metadata-location":Y.data["metadata-location"],metadata:Y.data.metadata}}async dropTable(D,X){await this.client.request({method:"DELETE",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,query:{purgeRequested:String(X?.purge??!1)}})}async loadTable(D){let X={};if(this.accessDelegation)X["X-Iceberg-Access-Delegation"]=this.accessDelegation;return(await this.client.request({method:"GET",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,headers:X})).data.metadata}async tableExists(D){let X={};if(this.accessDelegation)X["X-Iceberg-Access-Delegation"]=this.accessDelegation;try{return await this.client.request({method:"HEAD",path:`${this.prefix}/namespaces/${I5(D.namespace)}/tables/${D.name}`,headers:X}),!0}catch(Y){if(Y instanceof z4&&Y.status===404)return!1;throw Y}}async createTableIfNotExists(D,X){try{return await this.createTable(D,X)}catch(Y){if(Y instanceof z4&&Y.status===409)return await this.loadTable({namespace:D.namespace,name:X.name});throw Y}}},DW=class{constructor(D){let X="v1";if(D.catalogName)X+=`/${D.catalogName}`;let Y=D.baseUrl.endsWith("/")?D.baseUrl:`${D.baseUrl}/`;this.client=Vv({baseUrl:Y,auth:D.auth,fetchImpl:D.fetch}),this.accessDelegation=D.accessDelegation?.join(","),this.namespaceOps=new Uv(this.client,X),this.tableOps=new Nv(this.client,X,this.accessDelegation)}async listNamespaces(D){return this.namespaceOps.listNamespaces(D)}async createNamespace(D,X){return this.namespaceOps.createNamespace(D,X)}async dropNamespace(D){await this.namespaceOps.dropNamespace(D)}async loadNamespaceMetadata(D){return this.namespaceOps.loadNamespaceMetadata(D)}async listTables(D){return this.tableOps.listTables(D)}async createTable(D,X){return this.tableOps.createTable(D,X)}async updateTable(D,X){return this.tableOps.updateTable(D,X)}async dropTable(D,X){await this.tableOps.dropTable(D,X)}async loadTable(D){return this.tableOps.loadTable(D)}async namespaceExists(D){return this.namespaceOps.namespaceExists(D)}async tableExists(D){return this.tableOps.tableExists(D)}async createNamespaceIfNotExists(D,X){return this.namespaceOps.createNamespaceIfNotExists(D,X)}async createTableIfNotExists(D,X){return this.tableOps.createTableIfNotExists(D,X)}};var V4=class extends Error{constructor(D){super(D);this.__isStorageError=!0,this.name="StorageError"}};function FD(D){return typeof D==="object"&&D!==null&&"__isStorageError"in D}var JW=class extends V4{constructor(D,X,Y){super(D);this.name="StorageApiError",this.status=X,this.statusCode=Y}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},lX=class extends V4{constructor(D,X){super(D);this.name="StorageUnknownError",this.originalError=X}},hQ=(D)=>{if(D)return(...X)=>D(...X);return(...X)=>fetch(...X)},Rv=()=>{return Response},kQ=(D)=>{if(Array.isArray(D))return D.map((Y)=>kQ(Y));else if(typeof D==="function"||D!==Object(D))return D;let X={};return Object.entries(D).forEach(([Y,Z])=>{let J=Y.replace(/([-_][a-z])/gi,(Q)=>Q.toUpperCase().replace(/[-_]/g,""));X[J]=kQ(Z)}),X},Av=(D)=>{if(typeof D!=="object"||D===null)return!1;let X=Object.getPrototypeOf(D);return(X===null||X===Object.prototype||Object.getPrototypeOf(X)===null)&&!(Symbol.toStringTag in D)&&!(Symbol.iterator in D)},Ev=(D)=>{if(!D||typeof D!=="string")return!1;if(D.length===0||D.length>100)return!1;if(D.trim()!==D)return!1;if(D.includes("/")||D.includes("\\"))return!1;return/^[\w!.\*'() &$@=;:+,?-]+$/.test(D)};function M4(D){return M4=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(X){return typeof X}:function(X){return X&&typeof Symbol=="function"&&X.constructor===Symbol&&X!==Symbol.prototype?"symbol":typeof X},M4(D)}function Cv(D,X){if(M4(D)!="object"||!D)return D;var Y=D[Symbol.toPrimitive];if(Y!==void 0){var Z=Y.call(D,X||"default");if(M4(Z)!="object")return Z;throw TypeError("@@toPrimitive must return a primitive value.")}return(X==="string"?String:Number)(D)}function jv(D){var X=Cv(D,"string");return M4(X)=="symbol"?X:X+""}function Iv(D,X,Y){return(X=jv(X))in D?Object.defineProperty(D,X,{value:Y,enumerable:!0,configurable:!0,writable:!0}):D[X]=Y,D}function XW(D,X){var Y=Object.keys(D);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(D);X&&(Z=Z.filter(function(J){return Object.getOwnPropertyDescriptor(D,J).enumerable})),Y.push.apply(Y,Z)}return Y}function G0(D){for(var X=1;X<arguments.length;X++){var Y=arguments[X]!=null?arguments[X]:{};X%2?XW(Object(Y),!0).forEach(function(Z){Iv(D,Z,Y[Z])}):Object.getOwnPropertyDescriptors?Object.defineProperties(D,Object.getOwnPropertyDescriptors(Y)):XW(Object(Y)).forEach(function(Z){Object.defineProperty(D,Z,Object.getOwnPropertyDescriptor(Y,Z))})}return D}var yQ=(D)=>{var X;return D.msg||D.message||D.error_description||(typeof D.error==="string"?D.error:(X=D.error)===null||X===void 0?void 0:X.message)||JSON.stringify(D)},Tv=async(D,X,Y)=>{if(D instanceof await Rv()&&!(Y===null||Y===void 0?void 0:Y.noResolveJson))D.json().then((Z)=>{let J=D.status||500,Q=(Z===null||Z===void 0?void 0:Z.statusCode)||J+"";X(new JW(yQ(Z),J,Q))}).catch((Z)=>{X(new lX(yQ(Z),Z))});else X(new lX(yQ(D),D))},Pv=(D,X,Y,Z)=>{let J={method:D,headers:(X===null||X===void 0?void 0:X.headers)||{}};if(D==="GET"||!Z)return J;if(Av(Z))J.headers=G0({"Content-Type":"application/json"},X===null||X===void 0?void 0:X.headers),J.body=JSON.stringify(Z);else J.body=Z;if(X===null||X===void 0?void 0:X.duplex)J.duplex=X.duplex;return G0(G0({},J),Y)};async function U4(D,X,Y,Z,J,Q){return new Promise((w,F)=>{D(Y,Pv(X,Z,J,Q)).then((B)=>{if(!B.ok)throw B;if(Z===null||Z===void 0?void 0:Z.noResolveJson)return B;return B.json()}).then((B)=>w(B)).catch((B)=>Tv(B,F,Z))})}async function L4(D,X,Y,Z){return U4(D,"GET",X,Y,Z)}async function F8(D,X,Y,Z,J){return U4(D,"POST",X,Z,J,Y)}async function uQ(D,X,Y,Z,J){return U4(D,"PUT",X,Z,J,Y)}async function Sv(D,X,Y,Z){return U4(D,"HEAD",X,G0(G0({},Y),{},{noResolveJson:!0}),Z)}async function _Q(D,X,Y,Z,J){return U4(D,"DELETE",X,Z,J,Y)}var xv=class{constructor(D,X){this.downloadFn=D,this.shouldThrowOnError=X}then(D,X){return this.execute().then(D,X)}async execute(){var D=this;try{return{data:(await D.downloadFn()).body,error:null}}catch(X){if(D.shouldThrowOnError)throw X;if(FD(X))return{data:null,error:X};throw X}}},QW;QW=Symbol.toStringTag;var fv=class{constructor(D,X){this.downloadFn=D,this.shouldThrowOnError=X,this[QW]="BlobDownloadBuilder",this.promise=null}asStream(){return new xv(this.downloadFn,this.shouldThrowOnError)}then(D,X){return this.getPromise().then(D,X)}catch(D){return this.getPromise().catch(D)}finally(D){return this.getPromise().finally(D)}getPromise(){if(!this.promise)this.promise=this.execute();return this.promise}async execute(){var D=this;try{return{data:await(await D.downloadFn()).blob(),error:null}}catch(X){if(D.shouldThrowOnError)throw X;if(FD(X))return{data:null,error:X};throw X}}},yv={limit:100,offset:0,sortBy:{column:"name",order:"asc"}},YW={cacheControl:"3600",contentType:"text/plain;charset=UTF-8",upsert:!1},kv=class{constructor(D,X={},Y,Z){this.shouldThrowOnError=!1,this.url=D,this.headers=X,this.bucketId=Y,this.fetch=hQ(Z)}throwOnError(){return this.shouldThrowOnError=!0,this}async uploadOrUpdate(D,X,Y,Z){var J=this;try{let Q,w=G0(G0({},YW),Z),F=G0(G0({},J.headers),D==="POST"&&{"x-upsert":String(w.upsert)}),B=w.metadata;if(typeof Blob<"u"&&Y instanceof Blob){if(Q=new FormData,Q.append("cacheControl",w.cacheControl),B)Q.append("metadata",J.encodeMetadata(B));Q.append("",Y)}else if(typeof FormData<"u"&&Y instanceof FormData){if(Q=Y,!Q.has("cacheControl"))Q.append("cacheControl",w.cacheControl);if(B&&!Q.has("metadata"))Q.append("metadata",J.encodeMetadata(B))}else{if(Q=Y,F["cache-control"]=`max-age=${w.cacheControl}`,F["content-type"]=w.contentType,B)F["x-metadata"]=J.toBase64(J.encodeMetadata(B));if((typeof ReadableStream<"u"&&Q instanceof ReadableStream||Q&&typeof Q==="object"&&("pipe"in Q)&&typeof Q.pipe==="function")&&!w.duplex)w.duplex="half"}if(Z===null||Z===void 0?void 0:Z.headers)F=G0(G0({},F),Z.headers);let q=J._removeEmptyFolders(X),$=J._getFinalPath(q),G=await(D=="PUT"?uQ:F8)(J.fetch,`${J.url}/object/${$}`,Q,G0({headers:F},(w===null||w===void 0?void 0:w.duplex)?{duplex:w.duplex}:{}));return{data:{path:q,id:G.Id,fullPath:G.Key},error:null}}catch(Q){if(J.shouldThrowOnError)throw Q;if(FD(Q))return{data:null,error:Q};throw Q}}async upload(D,X,Y){return this.uploadOrUpdate("POST",D,X,Y)}async uploadToSignedUrl(D,X,Y,Z){var J=this;let Q=J._removeEmptyFolders(D),w=J._getFinalPath(Q),F=new URL(J.url+`/object/upload/sign/${w}`);F.searchParams.set("token",X);try{let B,q=G0({upsert:YW.upsert},Z),$=G0(G0({},J.headers),{"x-upsert":String(q.upsert)});if(typeof Blob<"u"&&Y instanceof Blob)B=new FormData,B.append("cacheControl",q.cacheControl),B.append("",Y);else if(typeof FormData<"u"&&Y instanceof FormData)B=Y,B.append("cacheControl",q.cacheControl);else B=Y,$["cache-control"]=`max-age=${q.cacheControl}`,$["content-type"]=q.contentType;return{data:{path:Q,fullPath:(await uQ(J.fetch,F.toString(),B,{headers:$})).Key},error:null}}catch(B){if(J.shouldThrowOnError)throw B;if(FD(B))return{data:null,error:B};throw B}}async createSignedUploadUrl(D,X){var Y=this;try{let Z=Y._getFinalPath(D),J=G0({},Y.headers);if(X===null||X===void 0?void 0:X.upsert)J["x-upsert"]="true";let Q=await F8(Y.fetch,`${Y.url}/object/upload/sign/${Z}`,{},{headers:J}),w=new URL(Y.url+Q.url),F=w.searchParams.get("token");if(!F)throw new V4("No token returned by API");return{data:{signedUrl:w.toString(),path:D,token:F},error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async update(D,X,Y){return this.uploadOrUpdate("PUT",D,X,Y)}async move(D,X,Y){var Z=this;try{return{data:await F8(Z.fetch,`${Z.url}/object/move`,{bucketId:Z.bucketId,sourceKey:D,destinationKey:X,destinationBucket:Y===null||Y===void 0?void 0:Y.destinationBucket},{headers:Z.headers}),error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async copy(D,X,Y){var Z=this;try{return{data:{path:(await F8(Z.fetch,`${Z.url}/object/copy`,{bucketId:Z.bucketId,sourceKey:D,destinationKey:X,destinationBucket:Y===null||Y===void 0?void 0:Y.destinationBucket},{headers:Z.headers})).Key},error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async createSignedUrl(D,X,Y){var Z=this;try{let J=Z._getFinalPath(D),Q=await F8(Z.fetch,`${Z.url}/object/sign/${J}`,G0({expiresIn:X},(Y===null||Y===void 0?void 0:Y.transform)?{transform:Y.transform}:{}),{headers:Z.headers}),w=(Y===null||Y===void 0?void 0:Y.download)?`&download=${Y.download===!0?"":Y.download}`:"";return Q={signedUrl:encodeURI(`${Z.url}${Q.signedURL}${w}`)},{data:Q,error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async createSignedUrls(D,X,Y){var Z=this;try{let J=await F8(Z.fetch,`${Z.url}/object/sign/${Z.bucketId}`,{expiresIn:X,paths:D},{headers:Z.headers}),Q=(Y===null||Y===void 0?void 0:Y.download)?`&download=${Y.download===!0?"":Y.download}`:"";return{data:J.map((w)=>G0(G0({},w),{},{signedUrl:w.signedURL?encodeURI(`${Z.url}${w.signedURL}${Q}`):null})),error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}download(D,X){let Y=typeof(X===null||X===void 0?void 0:X.transform)<"u"?"render/image/authenticated":"object",Z=this.transformOptsToQueryString((X===null||X===void 0?void 0:X.transform)||{}),J=Z?`?${Z}`:"",Q=this._getFinalPath(D);return new fv(()=>L4(this.fetch,`${this.url}/${Y}/${Q}${J}`,{headers:this.headers,noResolveJson:!0}),this.shouldThrowOnError)}async info(D){var X=this;let Y=X._getFinalPath(D);try{return{data:kQ(await L4(X.fetch,`${X.url}/object/info/${Y}`,{headers:X.headers})),error:null}}catch(Z){if(X.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async exists(D){var X=this;let Y=X._getFinalPath(D);try{return await Sv(X.fetch,`${X.url}/object/${Y}`,{headers:X.headers}),{data:!0,error:null}}catch(Z){if(X.shouldThrowOnError)throw Z;if(FD(Z)&&Z instanceof lX){let J=Z.originalError;if([400,404].includes(J===null||J===void 0?void 0:J.status))return{data:!1,error:Z}}throw Z}}getPublicUrl(D,X){let Y=this._getFinalPath(D),Z=[],J=(X===null||X===void 0?void 0:X.download)?`download=${X.download===!0?"":X.download}`:"";if(J!=="")Z.push(J);let Q=typeof(X===null||X===void 0?void 0:X.transform)<"u"?"render/image":"object",w=this.transformOptsToQueryString((X===null||X===void 0?void 0:X.transform)||{});if(w!=="")Z.push(w);let F=Z.join("&");if(F!=="")F=`?${F}`;return{data:{publicUrl:encodeURI(`${this.url}/${Q}/public/${Y}${F}`)}}}async remove(D){var X=this;try{return{data:await _Q(X.fetch,`${X.url}/object/${X.bucketId}`,{prefixes:D},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async list(D,X,Y){var Z=this;try{let J=G0(G0(G0({},yv),X),{},{prefix:D||""});return{data:await F8(Z.fetch,`${Z.url}/object/list/${Z.bucketId}`,J,{headers:Z.headers},Y),error:null}}catch(J){if(Z.shouldThrowOnError)throw J;if(FD(J))return{data:null,error:J};throw J}}async listV2(D,X){var Y=this;try{let Z=G0({},D);return{data:await F8(Y.fetch,`${Y.url}/object/list-v2/${Y.bucketId}`,Z,{headers:Y.headers},X),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}encodeMetadata(D){return JSON.stringify(D)}toBase64(D){if(typeof Buffer<"u")return Buffer.from(D).toString("base64");return btoa(D)}_getFinalPath(D){return`${this.bucketId}/${D.replace(/^\/+/,"")}`}_removeEmptyFolders(D){return D.replace(/^\/|\/$/g,"").replace(/\/+/g,"/")}transformOptsToQueryString(D){let X=[];if(D.width)X.push(`width=${D.width}`);if(D.height)X.push(`height=${D.height}`);if(D.resize)X.push(`resize=${D.resize}`);if(D.format)X.push(`format=${D.format}`);if(D.quality)X.push(`quality=${D.quality}`);return X.join("&")}},wW="2.89.0",FW={"X-Client-Info":`storage-js/${wW}`},uv=class{constructor(D,X={},Y,Z){this.shouldThrowOnError=!1;let J=new URL(D);if(Z===null||Z===void 0?void 0:Z.useNewHostname){if(/supabase\.(co|in|red)$/.test(J.hostname)&&!J.hostname.includes("storage.supabase."))J.hostname=J.hostname.replace("supabase.","storage.supabase.")}this.url=J.href.replace(/\/$/,""),this.headers=G0(G0({},FW),X),this.fetch=hQ(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async listBuckets(D){var X=this;try{let Y=X.listBucketOptionsToQueryString(D);return{data:await L4(X.fetch,`${X.url}/bucket${Y}`,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async getBucket(D){var X=this;try{return{data:await L4(X.fetch,`${X.url}/bucket/${D}`,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async createBucket(D,X={public:!1}){var Y=this;try{return{data:await F8(Y.fetch,`${Y.url}/bucket`,{id:D,name:D,type:X.type,public:X.public,file_size_limit:X.fileSizeLimit,allowed_mime_types:X.allowedMimeTypes},{headers:Y.headers}),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async updateBucket(D,X){var Y=this;try{return{data:await uQ(Y.fetch,`${Y.url}/bucket/${D}`,{id:D,name:D,public:X.public,file_size_limit:X.fileSizeLimit,allowed_mime_types:X.allowedMimeTypes},{headers:Y.headers}),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(FD(Z))return{data:null,error:Z};throw Z}}async emptyBucket(D){var X=this;try{return{data:await F8(X.fetch,`${X.url}/bucket/${D}/empty`,{},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async deleteBucket(D){var X=this;try{return{data:await _Q(X.fetch,`${X.url}/bucket/${D}`,{},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}listBucketOptionsToQueryString(D){let X={};if(D){if("limit"in D)X.limit=String(D.limit);if("offset"in D)X.offset=String(D.offset);if(D.search)X.search=D.search;if(D.sortColumn)X.sortColumn=D.sortColumn;if(D.sortOrder)X.sortOrder=D.sortOrder}return Object.keys(X).length>0?"?"+new URLSearchParams(X).toString():""}},BW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},FW),X),this.fetch=hQ(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(D){var X=this;try{return{data:await F8(X.fetch,`${X.url}/bucket`,{name:D},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async listBuckets(D){var X=this;try{let Y=new URLSearchParams;if((D===null||D===void 0?void 0:D.limit)!==void 0)Y.set("limit",D.limit.toString());if((D===null||D===void 0?void 0:D.offset)!==void 0)Y.set("offset",D.offset.toString());if(D===null||D===void 0?void 0:D.sortColumn)Y.set("sortColumn",D.sortColumn);if(D===null||D===void 0?void 0:D.sortOrder)Y.set("sortOrder",D.sortOrder);if(D===null||D===void 0?void 0:D.search)Y.set("search",D.search);let Z=Y.toString(),J=Z?`${X.url}/bucket?${Z}`:`${X.url}/bucket`;return{data:await L4(X.fetch,J,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}async deleteBucket(D){var X=this;try{return{data:await _Q(X.fetch,`${X.url}/bucket/${D}`,{},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(FD(Y))return{data:null,error:Y};throw Y}}from(D){var X=this;if(!Ev(D))throw new V4("Invalid bucket name: File, folder, and bucket names must follow AWS object key naming guidelines and should avoid the use of any other characters.");let Y=new DW({baseUrl:this.url,catalogName:D,auth:{type:"custom",getHeaders:async()=>X.headers},fetch:this.fetch}),Z=this.shouldThrowOnError;return new Proxy(Y,{get(J,Q){let w=J[Q];if(typeof w!=="function")return w;return async(...F)=>{try{return{data:await w.apply(J,F),error:null}}catch(B){if(Z)throw B;return{data:null,error:B}}}}})}},vQ={"X-Client-Info":`storage-js/${wW}`,"Content-Type":"application/json"},bQ=class extends Error{constructor(D){super(D);this.__isStorageVectorsError=!0,this.name="StorageVectorsError"}};function E1(D){return typeof D==="object"&&D!==null&&"__isStorageVectorsError"in D}var cX=class extends bQ{constructor(D,X,Y){super(D);this.name="StorageVectorsApiError",this.status=X,this.statusCode=Y}toJSON(){return{name:this.name,message:this.message,status:this.status,statusCode:this.statusCode}}},qW=class extends bQ{constructor(D,X){super(D);this.name="StorageVectorsUnknownError",this.originalError=X}},hv=function(D){return D.InternalError="InternalError",D.S3VectorConflictException="S3VectorConflictException",D.S3VectorNotFoundException="S3VectorNotFoundException",D.S3VectorBucketNotEmpty="S3VectorBucketNotEmpty",D.S3VectorMaxBucketsExceeded="S3VectorMaxBucketsExceeded",D.S3VectorMaxIndexesExceeded="S3VectorMaxIndexesExceeded",D}({}),nX=(D)=>{if(D)return(...X)=>D(...X);return(...X)=>fetch(...X)},_v=()=>{return Response},$W=(D)=>{if(typeof D!=="object"||D===null)return!1;let X=Object.getPrototypeOf(D);return(X===null||X===Object.prototype||Object.getPrototypeOf(X)===null)&&!(Symbol.toStringTag in D)&&!(Symbol.iterator in D)},vv=(D)=>{return Array.from(new Float32Array(D))},bv=(D,X)=>{if(X!==void 0&&D.float32.length!==X)throw Error(`Vector dimension mismatch: expected ${X}, got ${D.float32.length}`)},ZW=(D)=>D.msg||D.message||D.error_description||D.error||JSON.stringify(D),gv=async(D,X,Y)=>{if(D&&typeof D==="object"&&"status"in D&&"ok"in D&&typeof D.status==="number"&&!(Y===null||Y===void 0?void 0:Y.noResolveJson)){let Z=D.status||500,J=D;if(typeof J.json==="function")J.json().then((Q)=>{let w=(Q===null||Q===void 0?void 0:Q.statusCode)||(Q===null||Q===void 0?void 0:Q.code)||Z+"";X(new cX(ZW(Q),Z,w))}).catch(()=>{let Q=Z+"";X(new cX(J.statusText||`HTTP ${Z} error`,Z,Q))});else{let Q=Z+"";X(new cX(J.statusText||`HTTP ${Z} error`,Z,Q))}}else X(new qW(ZW(D),D))},mv=(D,X,Y,Z)=>{let J={method:D,headers:(X===null||X===void 0?void 0:X.headers)||{}};if(D==="GET"||!Z)return J;if($W(Z))J.headers=G0({"Content-Type":"application/json"},X===null||X===void 0?void 0:X.headers),J.body=JSON.stringify(Z);else J.body=Z;return G0(G0({},J),Y)};async function dv(D,X,Y,Z,J,Q){return new Promise((w,F)=>{D(Y,mv(X,Z,J,Q)).then((B)=>{if(!B.ok)throw B;if(Z===null||Z===void 0?void 0:Z.noResolveJson)return B;let q=B.headers.get("content-type");if(!q||!q.includes("application/json"))return{};return B.json()}).then((B)=>w(B)).catch((B)=>gv(B,F,Z))})}async function u1(D,X,Y,Z,J){return dv(D,"POST",X,Z,J,Y)}var GW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},vQ),X),this.fetch=nX(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async createIndex(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/CreateIndex`,D,{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async getIndex(D,X){var Y=this;try{return{data:await u1(Y.fetch,`${Y.url}/GetIndex`,{vectorBucketName:D,indexName:X},{headers:Y.headers}),error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(E1(Z))return{data:null,error:Z};throw Z}}async listIndexes(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/ListIndexes`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async deleteIndex(D,X){var Y=this;try{return{data:await u1(Y.fetch,`${Y.url}/DeleteIndex`,{vectorBucketName:D,indexName:X},{headers:Y.headers})||{},error:null}}catch(Z){if(Y.shouldThrowOnError)throw Z;if(E1(Z))return{data:null,error:Z};throw Z}}},OW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},vQ),X),this.fetch=nX(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async putVectors(D){var X=this;try{if(D.vectors.length<1||D.vectors.length>500)throw Error("Vector batch size must be between 1 and 500 items");return{data:await u1(X.fetch,`${X.url}/PutVectors`,D,{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async getVectors(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/GetVectors`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async listVectors(D){var X=this;try{if(D.segmentCount!==void 0){if(D.segmentCount<1||D.segmentCount>16)throw Error("segmentCount must be between 1 and 16");if(D.segmentIndex!==void 0){if(D.segmentIndex<0||D.segmentIndex>=D.segmentCount)throw Error(`segmentIndex must be between 0 and ${D.segmentCount-1}`)}}return{data:await u1(X.fetch,`${X.url}/ListVectors`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async queryVectors(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/QueryVectors`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async deleteVectors(D){var X=this;try{if(D.keys.length<1||D.keys.length>500)throw Error("Keys batch size must be between 1 and 500 items");return{data:await u1(X.fetch,`${X.url}/DeleteVectors`,D,{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}},WW=class{constructor(D,X={},Y){this.shouldThrowOnError=!1,this.url=D.replace(/\/$/,""),this.headers=G0(G0({},vQ),X),this.fetch=nX(Y)}throwOnError(){return this.shouldThrowOnError=!0,this}async createBucket(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/CreateVectorBucket`,{vectorBucketName:D},{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async getBucket(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/GetVectorBucket`,{vectorBucketName:D},{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async listBuckets(D={}){var X=this;try{return{data:await u1(X.fetch,`${X.url}/ListVectorBuckets`,D,{headers:X.headers}),error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}async deleteBucket(D){var X=this;try{return{data:await u1(X.fetch,`${X.url}/DeleteVectorBucket`,{vectorBucketName:D},{headers:X.headers})||{},error:null}}catch(Y){if(X.shouldThrowOnError)throw Y;if(E1(Y))return{data:null,error:Y};throw Y}}},HW=class extends WW{constructor(D,X={}){super(D,X.headers||{},X.fetch)}from(D){return new KW(this.url,this.headers,D,this.fetch)}async createBucket(D){var X=()=>super.createBucket,Y=this;return X().call(Y,D)}async getBucket(D){var X=()=>super.getBucket,Y=this;return X().call(Y,D)}async listBuckets(D={}){var X=()=>super.listBuckets,Y=this;return X().call(Y,D)}async deleteBucket(D){var X=()=>super.deleteBucket,Y=this;return X().call(Y,D)}},KW=class extends GW{constructor(D,X,Y,Z){super(D,X,Z);this.vectorBucketName=Y}async createIndex(D){var X=()=>super.createIndex,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName}))}async listIndexes(D={}){var X=()=>super.listIndexes,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName}))}async getIndex(D){var X=()=>super.getIndex,Y=this;return X().call(Y,Y.vectorBucketName,D)}async deleteIndex(D){var X=()=>super.deleteIndex,Y=this;return X().call(Y,Y.vectorBucketName,D)}index(D){return new zW(this.url,this.headers,this.vectorBucketName,D,this.fetch)}},zW=class extends OW{constructor(D,X,Y,Z,J){super(D,X,J);this.vectorBucketName=Y,this.indexName=Z}async putVectors(D){var X=()=>super.putVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async getVectors(D){var X=()=>super.getVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async listVectors(D={}){var X=()=>super.listVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async queryVectors(D){var X=()=>super.queryVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}async deleteVectors(D){var X=()=>super.deleteVectors,Y=this;return X().call(Y,G0(G0({},D),{},{vectorBucketName:Y.vectorBucketName,indexName:Y.indexName}))}},gQ=class extends uv{constructor(D,X={},Y,Z){super(D,X,Y,Z)}from(D){return new kv(this.url,this.headers,D,this.fetch)}get vectors(){return new HW(this.url+"/vector",{headers:this.headers,fetch:this.fetch})}get analytics(){return new BW(this.url+"/iceberg",this.headers,this.fetch)}};var FH=V0(Bw(),1);J0(Z0,V0(fQ(),1),module.exports);J0(Z0,V0(Bw(),1),module.exports);var Mg="2.89.0",C4="";if(typeof Deno<"u")C4="deno";else if(typeof document<"u")C4="web";else if(typeof navigator<"u"&&navigator.product==="ReactNative")C4="react-native";else C4="node";var Lg={"X-Client-Info":`supabase-js-${C4}/${Mg}`},Vg={headers:Lg},Ug={schema:"public"},Ng={autoRefreshToken:!0,persistSession:!0,detectSessionInUrl:!0,flowType:"implicit"},Rg={};function j4(D){return j4=typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?function(X){return typeof X}:function(X){return X&&typeof Symbol=="function"&&X.constructor===Symbol&&X!==Symbol.prototype?"symbol":typeof X},j4(D)}function Ag(D,X){if(j4(D)!="object"||!D)return D;var Y=D[Symbol.toPrimitive];if(Y!==void 0){var Z=Y.call(D,X||"default");if(j4(Z)!="object")return Z;throw TypeError("@@toPrimitive must return a primitive value.")}return(X==="string"?String:Number)(D)}function Eg(D){var X=Ag(D,"string");return j4(X)=="symbol"?X:X+""}function Cg(D,X,Y){return(X=Eg(X))in D?Object.defineProperty(D,X,{value:Y,enumerable:!0,configurable:!0,writable:!0}):D[X]=Y,D}function QH(D,X){var Y=Object.keys(D);if(Object.getOwnPropertySymbols){var Z=Object.getOwnPropertySymbols(D);X&&(Z=Z.filter(function(J){return Object.getOwnPropertyDescriptor(D,J).enumerable})),Y.push.apply(Y,Z)}return Y}function UD(D){for(var X=1;X<arguments.length;X++){var Y=arguments[X]!=null?arguments[X]:{};X%2?QH(Object(Y),!0).forEach(function(Z){Cg(D,Z,Y[Z])}):Object.getOwnPropertyDescriptors?Object.defineProperties(D,Object.getOwnPropertyDescriptors(Y)):QH(Object(Y)).forEach(function(Z){Object.defineProperty(D,Z,Object.getOwnPropertyDescriptor(Y,Z))})}return D}var jg=(D)=>{if(D)return(...X)=>D(...X);return(...X)=>fetch(...X)},Ig=()=>{return Headers},Tg=(D,X,Y)=>{let Z=jg(Y),J=Ig();return async(Q,w)=>{var F;let B=(F=await X())!==null&&F!==void 0?F:D,q=new J(w===null||w===void 0?void 0:w.headers);if(!q.has("apikey"))q.set("apikey",D);if(!q.has("Authorization"))q.set("Authorization",`Bearer ${B}`);return Z(Q,UD(UD({},w),{},{headers:q}))}};function Pg(D){return D.endsWith("/")?D:D+"/"}function Sg(D,X){var Y,Z;let{db:J,auth:Q,realtime:w,global:F}=D,{db:B,auth:q,realtime:$,global:G}=X,W={db:UD(UD({},B),J),auth:UD(UD({},q),Q),realtime:UD(UD({},$),w),storage:{},global:UD(UD(UD({},G),F),{},{headers:UD(UD({},(Y=G===null||G===void 0?void 0:G.headers)!==null&&Y!==void 0?Y:{}),(Z=F===null||F===void 0?void 0:F.headers)!==null&&Z!==void 0?Z:{})}),accessToken:async()=>""};if(D.accessToken)W.accessToken=D.accessToken;else delete W.accessToken;return W}function xg(D){let X=D===null||D===void 0?void 0:D.trim();if(!X)throw Error("supabaseUrl is required.");if(!X.match(/^https?:\/\//i))throw Error("Invalid supabaseUrl: Must be a valid HTTP or HTTPS URL.");try{return new URL(Pg(X))}catch(Y){throw Error("Invalid supabaseUrl: Provided URL is malformed.")}}var fg=class extends FH.AuthClient{constructor(D){super(D)}},BH=class{constructor(D,X,Y){var Z,J;this.supabaseUrl=D,this.supabaseKey=X;let Q=xg(D);if(!X)throw Error("supabaseKey is required.");this.realtimeUrl=new URL("realtime/v1",Q),this.realtimeUrl.protocol=this.realtimeUrl.protocol.replace("http","ws"),this.authUrl=new URL("auth/v1",Q),this.storageUrl=new URL("storage/v1",Q),this.functionsUrl=new URL("functions/v1",Q);let w=`sb-${Q.hostname.split(".")[0]}-auth-token`,F={db:Ug,realtime:Rg,auth:UD(UD({},Ng),{},{storageKey:w}),global:Vg},B=Sg(Y!==null&&Y!==void 0?Y:{},F);if(this.storageKey=(Z=B.auth.storageKey)!==null&&Z!==void 0?Z:"",this.headers=(J=B.global.headers)!==null&&J!==void 0?J:{},!B.accessToken){var q;this.auth=this._initSupabaseAuthClient((q=B.auth)!==null&&q!==void 0?q:{},this.headers,B.global.fetch)}else this.accessToken=B.accessToken,this.auth=new Proxy({},{get:($,G)=>{throw Error(`@supabase/supabase-js: Supabase Client is configured with the accessToken option, accessing supabase.auth.${String(G)} is not possible`)}});if(this.fetch=Tg(X,this._getAccessToken.bind(this),B.global.fetch),this.realtime=this._initRealtimeClient(UD({headers:this.headers,accessToken:this._getAccessToken.bind(this)},B.realtime)),this.accessToken)this.accessToken().then(($)=>this.realtime.setAuth($)).catch(($)=>console.warn("Failed to set initial Realtime auth token:",$));if(this.rest=new kX(new URL("rest/v1",Q).href,{headers:this.headers,schema:B.db.schema,fetch:this.fetch}),this.storage=new gQ(this.storageUrl.href,this.headers,this.fetch,Y===null||Y===void 0?void 0:Y.storage),!B.accessToken)this._listenForAuthEvents()}get functions(){return new eD.FunctionsClient(this.functionsUrl.href,{headers:this.headers,customFetch:this.fetch})}from(D){return this.rest.from(D)}schema(D){return this.rest.schema(D)}rpc(D,X={},Y={head:!1,get:!1,count:void 0}){return this.rest.rpc(D,X,Y)}channel(D,X={config:{}}){return this.realtime.channel(D,X)}getChannels(){return this.realtime.getChannels()}removeChannel(D){return this.realtime.removeChannel(D)}removeAllChannels(){return this.realtime.removeAllChannels()}async _getAccessToken(){var D=this,X,Y;if(D.accessToken)return await D.accessToken();let{data:Z}=await D.auth.getSession();return(X=(Y=Z.session)===null||Y===void 0?void 0:Y.access_token)!==null&&X!==void 0?X:D.supabaseKey}_initSupabaseAuthClient({autoRefreshToken:D,persistSession:X,detectSessionInUrl:Y,storage:Z,userStorage:J,storageKey:Q,flowType:w,lock:F,debug:B,throwOnError:q},$,G){let W={Authorization:`Bearer ${this.supabaseKey}`,apikey:`${this.supabaseKey}`};return new fg({url:this.authUrl.href,headers:UD(UD({},W),$),storageKey:Q,autoRefreshToken:D,persistSession:X,detectSessionInUrl:Y,storage:Z,userStorage:J,flowType:w,lock:F,debug:B,throwOnError:q,fetch:G,hasCustomAuthorizationHeader:Object.keys(this.headers).some((O)=>O.toLowerCase()==="authorization")})}_initRealtimeClient(D){return new wH.RealtimeClient(this.realtimeUrl.href,UD(UD({},D),{},{params:UD(UD({},{apikey:this.supabaseKey}),D===null||D===void 0?void 0:D.params)}))}_listenForAuthEvents(){return this.auth.onAuthStateChange((D,X)=>{this._handleTokenChanged(D,"CLIENT",X===null||X===void 0?void 0:X.access_token)})}_handleTokenChanged(D,X,Y){if((D==="TOKEN_REFRESHED"||D==="SIGNED_IN")&&this.changedAccessToken!==Y)this.changedAccessToken=Y,this.realtime.setAuth(Y);else if(D==="SIGNED_OUT"){if(this.realtime.setAuth(),X=="STORAGE")this.auth.signOut();this.changedAccessToken=void 0}}},qw=(D,X,Y)=>{return new BH(D,X,Y)};function yg(){if(typeof window<"u")return!1;if(typeof process>"u")return!1;let D=process.version;if(D===void 0||D===null)return!1;let X=D.match(/^v(\d+)\./);if(!X)return!1;return parseInt(X[1],10)<=18}if(yg())console.warn("⚠️ Node.js 18 and below are deprecated and will no longer be supported in future versions of @supabase/supabase-js. Please upgrade to Node.js 20 or later. For more information, visit: https://github.com/orgs/supabase/discussions/37217");var S$=V0(Kw(),1),Ty=V0(zK(),1),$J=V0(qZ(),1);var o8={name:"@capgo/cli",version:"7.71.0",type:"module",description:"A CLI to upload to capgo servers",author:"Martin martin@capgo.app",license:"Apache 2.0",homepage:"https://github.com/Cap-go/CLI#readme",repository:{type:"git",url:"git+https://github.com/Cap-go/CLI.git"},bugs:{url:"https://github.com/Cap-go/CLI/issues"},keywords:["appflow alternative","ionic","capacitor","auto update","live update","capgo","cli","upload","capgo-cli","sdk"],exports:{".":{import:"./dist/index.js",require:"./dist/index.js"},"./sdk":{types:"./dist/src/sdk.d.ts",import:"./dist/src/sdk.js",require:"./dist/src/sdk.js"}},main:"dist/index.js",types:"dist/src/index.d.ts",bin:{capgo:"dist/index.js"},engines:{npm:">=8.0.0",node:">=20.0.0"},scripts:{build:"tsc && bun build.mjs",dev:"NODE_ENV=development ncc build","no-debug":"node dist/index.js","dev-build":"SUPA_DB=development ncc build",pack:"pkg",types:"npx --yes supabase gen types typescript --project-id=xvwzpoazmxkqosrdewyv > src/types/supabase.types.ts",typecheck:"tsc --noEmit",lint:'eslint "src/**/*.ts" --fix',"check-posix-paths":"node test/check-posix-paths.js","generate-docs":"node dist/index.js generate-docs README.md","test:bundle":"bun test/test-bundle.mjs","test:functional":"bun test/test-functional.mjs","test:semver":"bun test/test-semver-validation.mjs","test:version-edge-cases":"bun test/test-version-validation.mjs","test:regex":"bun test/test-regex-validation.mjs","test:upload":"bun test/test-upload-validation.mjs","test:credentials":"bun test/test-credentials.mjs","test:credentials-validation":"bun test/test-credentials-validation.mjs","test:version-detection":"node test/test-get-installed-version.mjs","test:version-detection:setup":"./test/fixtures/setup-test-projects.sh",test:"bun run test:bundle && bun run test:functional && bun run test:semver && bun run test:version-edge-cases && bun run test:regex && bun run test:upload && bun run test:credentials && bun run test:credentials-validation && bun run test:version-detection"},devDependencies:{"@antfu/eslint-config":"^6.1.0","@bradenmacdonald/s3-lite-client":"npm:@jsr/bradenmacdonald__s3-lite-client@0.9.4","@capacitor/cli":"^8.0.0","@capgo/find-package-manager":"^0.0.18","@clack/prompts":"^0.11.0","@modelcontextprotocol/sdk":"^1.0.0","@sauber/table":"npm:@jsr/sauber__table","@std/semver":"npm:@jsr/std__semver@1.0.6","@supabase/supabase-js":"^2.79.0","@types/adm-zip":"^0.5.7","@types/node":"^24","@types/prettyjson":"^0.0.33","@types/tmp":"^0.2.6","@vercel/ncc":"^0.38.4","adm-zip":"^0.5.16","ci-info":"^4.3.1",commander:"^14.0.2",eslint:"^9.38.0","git-format-staged":"3.1.3",husky:"^9.1.7","is-wsl":"^3.1.0",micromatch:"^4.0.8",open:"^11.0.0",prettyjson:"^1.2.5",tmp:"^0.2.5","tus-js-client":"^4.3.1",typescript:"^5.9.3",zod:"^3.24.0"}};async function $Z(D){try{let Y=`https://registry.npmjs.org/${encodeURIComponent(D.toLowerCase())}`,Z=await fetch(Y,{headers:{accept:"application/vnd.npm.install-v1+json; q=1.0, application/json; q=0.8, */*"}});if(!Z.ok)return null;return(await Z.json())["dist-tags"]?.latest||null}catch{return null}}async function o0(){let D=await $Z("@capgo/cli")??"",X=D?.split(".")[0];if(D!==o8.version)K.warning(`\uD83D\uDEA8 You are using @capgo/cli@${o8.version} it's not the latest version.
|
|
315
315
|
Please use @capgo/cli@${D}" or @capgo/cli@${X} to keep up to date with the latest features and bug fixes.`)}async function AL(D,X,Y,Z,J,Q="✅"){await A0(Y,{channel:D,event:Z,icon:Q,user_id:X,...J?{tags:{"app-id":J}}:{},notify:!1})}var xF=require("node:buffer"),EL=require("node:crypto"),Ba=(()=>{let D=[];for(let X=0;X<256;X++){let Y=X;for(let Z=0;Z<8;Z++)Y=Y&1?3988292384^Y>>>1:Y>>>1;D[X]=Y}return D})();function qa(D){let X=4294967295;for(let Y=0;Y<D.length;Y++){let Z=D[Y];X=Ba[(X^Z)&255]^X>>>8}return X=X^4294967295,(X>>>0).toString(16).padStart(8,"0")}async function e8(D,X="sha256"){let Y=xF.Buffer.isBuffer(D)?D:xF.Buffer.from(D);if(X==="crc32")return qa(Y);let Z=EL.createHash(X);return Z.update(Y),Z.digest("hex")}var t3=V0(kf(),1);async function uf(){let D=await t3.loadConfig();return{config:D.app.extConfig,path:D.app.extConfigFilePath}}async function w$(D,X,Y=!1){let Z=await t3.loadConfig(),{extConfig:J}=Z.app;if(J){if(!J.plugins)J.plugins={extConfig:{},[D]:{}};if(!J.plugins[D])J.plugins[D]={};if(!Y)J.plugins[D]=X.config.plugins?.[D];else J=X.config;t3.writeConfig(J,Z.app.extConfigFilePath)}}async function u7(D,X=!1){await w$("CapacitorUpdater",D,X)}var h7={ORG_REQUIRES_EXPIRING_KEY:"org_requires_expiring_key",EXPIRATION_REQUIRED:"expiration_required",EXPIRATION_EXCEEDS_MAX:"expiration_exceeds_max"},r3={[h7.ORG_REQUIRES_EXPIRING_KEY]:`This organization requires API keys with expiration dates.
|
|
316
316
|
|
|
317
317
|
Please generate a new API key with an expiration:
|
|
@@ -390,7 +390,7 @@ All packages are compatible with channel "${w}"`)}return{finalCompatibility:B.fi
|
|
|
390
390
|
`)+`
|
|
391
391
|
`,Z.join(";").toLowerCase(),J].join(`
|
|
392
392
|
`)}async function dk(D,X,Y){let Z=await PJ(D),J=n$(Y,X);return[QX,O5(X),J,Z].join(`
|
|
393
|
-
`)}async function a$(D,X,Y){let Z=l$(D),J=await H5("AWS4"+Y,Z),Q=await H5(J,X),w=await H5(Q,"s3");return await H5(w,"aws4_request")}function t$(D,X,Y){return`${D}/${n$(X,Y)}`}async function H5(D,X){let Y=new TextEncoder,Z=await crypto.subtle.importKey("raw",D instanceof Uint8Array?D:Y.encode(D),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign","verify"]),J=await crypto.subtle.sign("HMAC",Z,X instanceof Uint8Array?X:Y.encode(X));return new Uint8Array(J)}async function ck(D){if(!D.accessKey)throw new $5;if(!D.secretKey)throw new ZX;if(D.expirySeconds<1||D.expirySeconds>604800)throw new TJ;let X=new Date(D.date);X.setSeconds(X.getSeconds()+D.expirySeconds);let Y=t$(D.accessKey,D.region,D.date),Z=O5(D.date),J={"X-Amz-Algorithm":QX,"X-Amz-Credential":Y,"X-Amz-Date":Z,key:D.objectKey,...D.fields},Q=[{bucket:D.bucket},{key:D.objectKey},{"X-Amz-Algorithm":QX},{"X-Amz-Credential":Y},{"X-Amz-Date":Z}];if(D.conditions)Q.push(...D.conditions);for(let[O,H]of Object.entries(D.fields||{})){if(["key","X-Amz-Algorithm","X-Amz-Credential","X-Amz-Date"].includes(O))continue;Q.push({[O]:H})}let w={expiration:X.toISOString(),conditions:Q},F=new TextEncoder().encode(JSON.stringify(w)),B=btoa(String.fromCharCode(...F));J.policy=B;let q=B,$=await a$(D.date,D.region,D.secretKey),G=JX(await H5($,q)).toLowerCase();return J["X-Amz-Signature"]=G,{url:`${D.protocol}//${D.host}/${D.bucket}`,fields:J}}var z30=["Content-Type","Cache-Control","Content-Disposition","Content-Encoding","Content-Language","Expires","x-amz-checksum-sha256","x-amz-grant-full-control","x-amz-grant-read","x-amz-grant-read-acp","x-amz-grant-write-acp","x-amz-server-side-encryption","x-amz-storage-class","x-amz-website-redirect-location","x-amz-server-side-encryption-customer-algorithm","x-amz-server-side-encryption-customer-key","x-amz-server-side-encryption-customer-key-MD5","x-amz-server-side-encryption-aws-kms-key-id","x-amz-server-side-encryption-context","x-amz-server-side-encryption-bucket-key-enabled","x-amz-request-payer","x-amz-tagging","x-amz-object-lock-mode","x-amz-object-lock-retain-until-date","x-amz-object-lock-legal-hold","x-amz-expected-bucket-owner"],M30=5242880,L30=5368709120,r$=5497558138880;class SJ{host;port;protocol;accessKey;#D;sessionToken;defaultBucket;region;userAgent="s3-lite-client";pathStyle;pathPrefix;constructor({endPoint:D,useSSL:X,port:Y,pathPrefix:Z,...J}){if(/^https?:\/\//i.test(D)){if(X!==void 0||Y!==void 0||Z!==void 0)throw new V1("useSSL/port/pathPrefix cannot be specified if endPoint is a URL.");try{let w=new URL(D);if(D=w.hostname,X=w.protocol==="https:",Y=w.port?parseInt(w.port,10):X?443:80,w.pathname&&w.pathname!=="/")Z=w.pathname.endsWith("/")?w.pathname.slice(0,-1):w.pathname}catch{throw new IJ(`Invalid endPoint URL: ${D}`)}}if(typeof D!=="string"||D.length===0)throw new IJ(`Invalid endPoint: ${D}`);if(X===void 0)X=!0;if(Y!==void 0&&!hk(Y))throw new V1(`Invalid port: ${Y}`);if(J.accessKey&&!J.secretKey)throw new V1("If specifying access key, secret key must also be provided.");if(J.accessKey&&J.accessKey.startsWith("ASIA")&&!J.sessionToken)throw new V1("If specifying temporary access key, session token must also be provided.");let Q=X?443:80;if(this.port=Y??Q,this.host=D.toLowerCase()+(this.port!==Q?`:${this.port}`:""),this.protocol=X?"https:":"http:",this.accessKey=J.accessKey,this.#D=J.secretKey??"",this.sessionToken=J.sessionToken,this.pathStyle=J.pathStyle??!0,this.pathPrefix=Z??"",this.defaultBucket=J.bucket,this.region=J.region,this.pathPrefix){if(!this.pathStyle)throw new V1("pathPrefix is incompatible with pathStyle=false");if(!this.pathPrefix.startsWith("/"))throw new V1("pathPrefix should start with /");if(this.pathPrefix.endsWith("/"))throw new V1("pathPrefix should not end with /")}}getBucketName(D){let X=D?.bucketName??this.defaultBucket;if(X===void 0||!_k(X))throw new m$(X??"");return X}buildRequestOptions(D){let X=this.getBucketName(D),Y=this.pathStyle?this.host:`${X}.${this.host}`,Z=D.headers??new Headers;Z.set("host",Y);let J=typeof D.query==="object"?new URLSearchParams(D.query).toString().replace("+","%20"):D.query,Q=this.pathStyle?`${this.pathPrefix}/${X}/${D.objectName}`:`/${D.objectName}`,w=J?`?${J}`:"",F=Q+w,B=Q.split("/").map((q)=>encodeURIComponent(q)).join("/")+w;return{headers:Z,host:Y,path:F,encodedPath:B}}async makeRequest({method:D,payload:X,...Y}){let Z=new Date,{headers:J,host:Q,path:w,encodedPath:F}=this.buildRequestOptions(Y),B=Y.statusCode??200;if(D==="POST"||D==="PUT"||D==="DELETE"){if(X===void 0)X=new Uint8Array;else if(typeof X==="string")X=new TextEncoder().encode(X);J.set("Content-Length",String(X.length))}else if(X)throw Error(`Unexpected payload on ${D} request.`);let q=await PJ(X??new Uint8Array);if(J.set("x-amz-date",O5(Z)),J.set("x-amz-content-sha256",q),this.accessKey){if(this.sessionToken)J.set("x-amz-security-token",this.sessionToken);J.set("authorization",await vk({headers:J,method:D,path:w,accessKey:this.accessKey,secretKey:this.#D,region:this.region,date:Z}))}let $=`${this.protocol}//${Q}${F}`,G=await fetch($,{method:D,headers:J,body:X});if(G.status!==B){if(G.status>=400)throw await uk(G);else if(G.status===301)throw new J9(G.status,"UnexpectedRedirect",'The server unexpectedly returned a redirect response. With AWS S3, this usually means you need to use a region-specific endpoint like "s3.us-west-2.amazonaws.com" instead of "s3.amazonaws.com"');throw new J9(G.status,"UnexpectedStatusCode",`Unexpected response code from the server (expected ${B}, got ${G.status} ${G.statusText}).`)}if(!Y.returnBody)await G.body?.getReader().read();return G}async deleteObject(D,X={}){let Y=this.getBucketName(X);if(!Q9(D))throw new N6(D);let Z=X.versionId?{versionId:X.versionId}:{},J=new Headers;if(X.governanceBypass)J.set("X-Amz-Bypass-Governance-Retention","true");await this.makeRequest({method:"DELETE",bucketName:Y,objectName:D,headers:J,query:Z,statusCode:204})}async exists(D,X){try{return await this.statObject(D,X),!0}catch(Y){if(Y instanceof J9&&Y.statusCode===404)return!1;throw Y}}getObject(D,X){return this.getPartialObject(D,{...X,offset:0,length:0})}async getPartialObject(D,{offset:X,length:Y,...Z}){let J=this.getBucketName(Z);if(!Q9(D))throw new N6(D);let Q=new Headers(Object.entries(Z.metadata??{})),w=200;if(X||Y){let B="";if(X)B=`bytes=${+X}-`;else B="bytes=0-",X=0;if(Y)B+=`${+Y+X-1}`;Q.set("Range",B),w=206}let F={...Z.responseParams,...Z.versionId?{versionId:Z.versionId}:{}};return await this.makeRequest({method:"GET",bucketName:J,objectName:D,headers:Q,query:F,statusCode:w,returnBody:!0})}getPresignedUrl(D,X,Y={}){if(!this.accessKey)throw new $5;if(!Q9(X))throw new N6(X);let{headers:Z,path:J}=this.buildRequestOptions({objectName:X,bucketName:Y.bucketName,query:Y.parameters}),Q=Y.requestDate??new Date,w=Y.expirySeconds??604800;return bk({protocol:this.protocol,headers:Z,method:D,path:J,accessKey:this.accessKey,secretKey:this.#D,sessionToken:this.sessionToken,region:this.region,date:Q,expirySeconds:w})}presignedGetObject(D,X={}){let{versionId:Y,responseParams:Z,...J}=X,Q={...Z,...Y?{versionId:Y}:{}};return this.getPresignedUrl("GET",D,{parameters:Q,...J})}async*listObjects(D={}){for await(let X of this.listObjectsGrouped({...D,delimiter:""}))if(X.type==="Object")yield X;else throw Error(`Unexpected result from listObjectsGrouped(): ${X}`)}async*listObjectsGrouped(D){let X=this.getBucketName(D),Y="",Z=D.pageSize??1000;if(Z<1||Z>1000)throw new V1("pageSize must be between 1 and 1,000.");let J=0;while(!0){let Q=D.maxResults?Math.min(Z,D.maxResults-J):Z;if(Q===0)return;let F=await(await this.makeRequest({method:"GET",bucketName:X,objectName:"",query:{"list-type":"2",prefix:D.prefix??"",delimiter:D.delimiter,"max-keys":String(Q),...Y?{"continuation-token":Y}:{}},returnBody:!0})).text(),B=Z9(F).root;if(!B||B.name!=="ListBucketResult")throw Error(`Unexpected response: ${F}`);let q=B.children.filter((W)=>W.name==="CommonPrefixes").flatMap((W)=>W.children),$=[];for(let W of q)$.push({type:"CommonPrefix",prefix:W.content??""}),J++;for(let W of B.children.filter((O)=>O.name==="Contents"))$.push({type:"Object",key:W.children.find((O)=>O.name==="Key")?.content??"",etag:G5(W.children.find((O)=>O.name==="ETag")?.content??""),size:parseInt(W.children.find((O)=>O.name==="Size")?.content??"",10),lastModified:new Date(W.children.find((O)=>O.name==="LastModified")?.content??"invalid")}),J++;$.sort((W,O)=>{let H=W.type==="Object"?W.key:W.prefix,M=O.type==="Object"?O.key:O.prefix;return H>M?1:H<M?-1:0});for(let W of $)yield W;if(B.children.find((W)=>W.name==="IsTruncated")?.content==="true"){let W=B.children.find((O)=>O.name==="NextContinuationToken")?.content;if(!W)throw Error("Unexpectedly missing continuation token, but server said there are more results.");Y=W}else return}}async putObject(D,X,Y){let Z=this.getBucketName(Y);if(!Q9(D))throw new N6(D);let J,Q;if(typeof X==="string"){let q=new TextEncoder().encode(X);if(typeof ReadableStream.from<"u")Q=ReadableStream.from([q]);else Q=new ReadableStream({start($){$.enqueue(q),$.close()}});J=q.length}else if(X instanceof Uint8Array){if(typeof ReadableStream.from<"u")Q=ReadableStream.from([X]);else Q=new ReadableStream({start(q){q.enqueue(X),q.close()}});J=X.byteLength}else if(X instanceof ReadableStream)Q=X;else throw new V1("Invalid stream/data type provided.");if(Y?.size!==void 0){if(J!==void 0&&Y?.size!==J)throw new V1(`size was specified (${Y.size}) but doesn't match auto-detected size (${J}).`);if(typeof Y.size!=="number"||Y.size<0||isNaN(Y.size))throw new V1(`invalid size specified: ${Y.size}`);else J=Y.size}let w=Y?.partSize??this.calculatePartSize(J);if(w<M30)throw new V1("Part size should be greater than 5MB");else if(w>L30)throw new V1("Part size should be less than 6MB");let F=new g$(w),B=new i$({client:this,bucketName:Z,objectName:D,partSize:w,metadata:Y?.metadata??{}});return await Q.pipeThrough(F).pipeTo(B),B.getResult()}calculatePartSize(D){if(D===void 0)D=r$;if(D>r$)throw TypeError(`size should not be more than ${r$}`);let X=67108864;while(!0){if(X*1e4>D)return X;X+=16777216}}async statObject(D,X){let Y=this.getBucketName(X);if(!Q9(D))throw new N6(D);let Z={};if(X?.versionId)Z.versionId=X.versionId;let J=await this.makeRequest({method:"HEAD",bucketName:Y,objectName:D,query:Z,headers:new Headers(X?.headers)}),Q={};for(let w of z30)if(J.headers.has(w))Q[w]=J.headers.get(w);return J.headers.forEach((w,F)=>{if(F.startsWith("x-amz-meta-"))Q[F]=J.headers.get(F)}),{type:"Object",key:D,size:parseInt(J.headers.get("content-length")??"",10),metadata:Q,lastModified:new Date(J.headers.get("Last-Modified")??"error: missing last modified"),versionId:J.headers.get("x-amz-version-id")||null,etag:G5(J.headers.get("ETag")??"")}}async copyObject(D,X,Y){let Z=this.getBucketName(Y),J=D.sourceBucketName??Z;if(!Q9(X))throw new N6(X);let Q=`${J}/${D.sourceKey}`;if(D.sourceVersionId)Q+=`?versionId=${D.sourceVersionId}`;let w=new Headers(Y?.metadata);if(Y?.metadata!==void 0)w.set("x-amz-metadata-directive","REPLACE");w.set("x-amz-copy-source",Q);let F=await this.makeRequest({method:"PUT",bucketName:Z,objectName:X,headers:w,returnBody:!0}),B=await F.text(),q=Z9(B).root;if(!q||q.name!=="CopyObjectResult")throw Error(`Unexpected response: ${B}`);let $=q.children.find((W)=>W.name==="ETag")?.content??"",G=q.children.find((W)=>W.name==="LastModified")?.content;if(G===void 0)throw Error("Unable to find <LastModified>...</LastModified> from the server.");return{copySourceVersionId:F.headers.get("x-amz-copy-source-version-id")||null,etag:G5($),lastModified:new Date(G),versionId:F.headers.get("x-amz-version-id")||null}}async bucketExists(D){try{return await this.listObjects({bucketName:D}).next(),!0}catch(X){if(X instanceof J9&&X.statusCode===404)return!1;throw X}}async makeBucket(D){await this.makeRequest({method:"PUT",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:200})}async removeBucket(D){await this.makeRequest({method:"DELETE",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:204})}presignedPostObject(D,X={}){if(!Q9(D))throw new N6(D);let Y=this.getBucketName(X);if(!Y)throw Error("Bucket name is required for presignedPost, but none was provided either to this method nor to the client constructor");let Z=X.requestDate||new Date,J=X.expirySeconds??3600;return ck({protocol:this.protocol,host:this.host,bucket:Y,objectKey:D,accessKey:this.accessKey||"",secretKey:this.#D||"",region:this.region,date:Z,expirySeconds:J,conditions:X.conditions,fields:X.fields})}}function lk(D){try{let X=i0(D);return Q8(F4(X,"patch"))}catch{let X=D.match(/^(\d+)\.(\d+)\.(\d+)/);if(X){let[,Y,Z,J]=X;return`${Y}.${Z}.${Number.parseInt(J)+1}`}return"1.0.1"}}async function nk(D,X){let Y=lk(D),Z=X?` for ${X}`:"",J=await M8({message:`How do you want to handle the version${Z}?`,options:[{value:"auto",label:`Auto: Bump patch version (${D} → ${Y})`},{value:"manual",label:"Manual: I'll provide the version number"}]});if(c0(J))return null;if(J==="auto")return K.info(`\uD83D\uDD22 Auto-bumped version from ${D} to ${Y}`),Y;let Q=await A6({message:`Current version is ${D}. Enter new version:`,validate:(w)=>{if(!w)return"Version is required";if(!w.match(/^\d+\.\d+\.\d+/))return"Please enter a valid version (x.y.z)"}});if(c0(Q))return null;return Q}function ik(D){let X=lk(D);try{let Y=i0(D);return[X,Q8(F4(Y,"minor")),`${D}-beta.1`,`${D}.1`]}catch{return[X,`${D}.1`,`${D}-beta.1`,`${D}-rc.1`]}}var K5=require("node:fs"),xJ=require("node:path");function V30(D,X){return K5.readFileSync(D,"utf8").includes(X)}function wX(D,X){let Y=K5.readdirSync(D);for(let Z of Y){let J=xJ.join(D,Z),Q=K5.statSync(J);if(Q.isDirectory()){if(wX(J,X))return!0}else if(Q.isFile()&&xJ.extname(J)===".js"){if(V30(J,X))return!0}}return!1}function fJ(D){if(K5.readdirSync(D).indexOf("index.html")>-1)return!0;return!1}var ou=require("node:buffer"),eu=require("node:crypto"),o7=require("node:fs"),Dh=require("node:os"),L5=require("node:path"),Xh=require("node:process"),bJ=require("node:stream/consumers"),Yh=require("node:zlib");var Zh=V0(su(),1),Jh=V0(qZ(),1);async function CX0(D,X){try{return(await fetch(`${D.hostFilesApi}/files/read/attachments/${encodeURIComponent(X)}`,{method:"HEAD"})).ok}catch{return!1}}var jX0=8192;async function IX0(D){let X=tD(Xh.cwd()),Y=await o1("@capgo/capacitor-updater",X,D.packageJson),Z;try{Z=Y?i0(Y):void 0}catch{Z=void 0}if(!Y||!Z)return{version:null,supportsBrotliV2:!1};let J=!e1(Z,void 0,void 0,DX);return{version:`${Z.major}.${Z.minor}.${Z.patch}`,supportsBrotliV2:J}}function TX0(D,X){if(!X)return!1;let Y=X.split(",").map((Z)=>Z.trim()).filter((Z)=>!!Z);if(Y.length===0)return!1;return Zh.isMatch(D,Y)}async function PX0(D,X,Y){let J=o7.statSync(D).size,Q=await bJ.buffer(o7.createReadStream(D));if(J===0)return{buffer:Q,useBrotli:!1};if(TX0(X,Y.noBrotliPatterns))return{buffer:Q,useBrotli:!1};if(J<jX0)return{buffer:Q,useBrotli:!1};try{let w=await bJ.buffer(o7.createReadStream(D).pipe(Yh.createBrotliCompress({})));if(w.length>=J-10)return{buffer:Q,useBrotli:!1};return{buffer:w,useBrotli:!0}}catch(w){return K.warn(`Brotli compression failed for ${D}: ${w}, using original file`),{buffer:Q,useBrotli:!1}}}async function Qh(D,X,Y,Z,J,Q,w=!1){let F=xD();F.start(J!=="v2"?"Generating the update manifest":`Generating the update manifest with ${w?"V3":"V2"} encryption`);let B=await dy(D);if(J==="v2")for(let q of B)q.hash=w?t7(q.hash,Q):a7(q.hash,Q);return F.stop("Manifest generated successfully"),await A0(X,{channel:"partial-update",event:"Generate manifest",icon:"\uD83D\uDCC2",user_id:Y,tags:{"app-id":Z},notify:!1}),B}function SX0(D){if(Dh.platform()!=="win32")return D;return L5.win32.normalize(D).split(L5.win32.sep).join(L5.posix.sep)}function xX0(D){let X=D.split("/").map((Y)=>encodeURIComponent(Y)).join("/");if(D.includes(" "))K.warn(`File "${D}" contains spaces in its name.`);return X}async function wh(D,X,Y,Z,J,Q,w){let F=xD();F.start("Preparing partial update with TUS protocol");let B=performance.now(),q=await C8(),$=!!(w.partial||w.delta||w.partialOnly||w.deltaOnly),{version:G,supportsBrotliV2:W}=await IX0(w);if(!W)throw Error(`Your project is using an older version of @capgo/capacitor-updater (${G||"unknown"}). To use Delta updates, please upgrade to version ${gy} (v5), ${my} (v6) or ${DX} (v7) or higher.`);else if(w.disableBrotli)K.info("Brotli compression disabled by user request");else if(w.noBrotliPatterns)K.info(`Files matching patterns (${w.noBrotliPatterns}) will be excluded from brotli compression`);let O=X.filter((N)=>N.file.includes(" "));if(O.length>0)throw Error(`Files with spaces in their names (${O.map((N)=>N.file).join(", ")}). Please rename the files.`);let H=0,M=X.length,U=0;try{F.message(`Uploading ${M} files using TUS protocol`);let N=async(C)=>{let k=L5.join(Y,C.file),A=SX0(C.file),y,f=!1;if(w.disableBrotli)y=await bJ.buffer(o7.createReadStream(k)),f=!1;else{let E=await PX0(k,A,w);y=E.buffer,f=E.useBrotli}let S=y;if(Q)S=p7(y,Q.sessionKey,Q.ivSessionKey);let v=A;if(f)v=`${A}.br`,U++;let b=xX0(v),n=eu.createHash("sha256").update(C.hash).digest("hex"),h;if(Q){let E=ou.Buffer.from(Q.ivSessionKey).toString("hex");h=`orgs/${J}/apps/${Z}/delta/${E}/${n}_${b}`}else h=`orgs/${J}/apps/${Z}/delta/${n}_${b}`;if(!Q&&await CX0(q,h))return H++,Promise.resolve({file_name:b,s3_path:h,file_hash:C.hash});return new Promise((E,P)=>{F.message(`Prepare upload partial file: ${A}`);let x=X9(v);new Jh.Upload(S,{endpoint:`${q.hostFilesApi}/files/upload/attachments/`,chunkSize:w.tusChunkSize,retryDelays:[0,1000,3000,5000,1e4],removeFingerprintOnSuccess:!0,metadata:{filename:h,filetype:x},headers:{Authorization:D},onError:(g)=>{let m=g.toString(),a;try{let c=m.match(/response text: (\{.*?\})/);if(c&&c[1])a=JSON.parse(c[1]).moreInfo?.requestId}catch{}let d=a?` [requestId: ${a}]`:"";K.error(`Failed to upload ${A}: ${m}${d}`),P(g)},onProgress(){let g=(H/M*100).toFixed(2);F.message(`Uploading partial update: ${g}%`)},onSuccess(){H++,E({file_name:b,s3_path:h,file_hash:C.hash})}}).start()})},R=500,z=[];for(let C=0;C<X.length;C+=R){let k=X.slice(C,C+R),A=Math.floor(C/R)+1,y=Math.ceil(X.length/R);if(y>1)F.message(`Processing batch ${A}/${y} (${k.length} files)`);let f=await Promise.all(k.map((S)=>N(S)));z.push(...f)}let L=((performance.now()-B)/1000).toFixed(2);if(F.stop(`Partial update uploaded successfully \uD83D\uDCAA in (${L} seconds)`),U>0)K.info(`${U} of ${M} files were compressed with brotli and use .br extension`);return await A0(D,{channel:"app",event:`App Partial TUS done${U>0?" with .br extension":""}`,icon:"⏫",user_id:J,tags:{"app-id":Z},notify:!1}),await A0(D,{channel:"performance",event:"Partial upload performance",icon:"\uD83D\uDE84",user_id:J,tags:{"app-id":Z,time:L},notify:!1}),z}catch(N){let z=((performance.now()-B)/1000).toFixed(2);if(F.stop(`Failed to upload Partial bundle (after ${z} seconds)`),$)throw K.error(`Error uploading partial update: ${N}`),K.error("Delta/partial upload was explicitly requested but failed. Upload aborted."),N;else return K.info(`Error uploading partial update: ${N}, This is not a critical error, the bundle has been uploaded without the partial files`),null}}function $D(D){throw K.error(D),Error(D)}function fX0(D){let X=new MD;X.headers=["Package","Local","Remote","Status","Details"],X.theme=MD.roundTheme,X.rows=[];for(let Y of D){let{name:Z,localVersion:J,remoteVersion:Q}=Y,w=q5(Y),F=w.compatible?"✅":"❌";X.rows.push([Z,J||"-",Q||"-",F,w.message])}K.info(X.toString())}async function yX0(D,X){let Y=D9("",X.packageJson),Z=X.bundle||D?.plugins?.CapacitorUpdater?.version||Y||`0.0.1-beta.${Fh.randomUUID().split("-")[0]}`;if(!m7.test(Z))$D(`Your bundle name ${Z}, is not valid it should follow semver convention : https://semver.org/`);return Z}function kX0(D){let X=D.apikey||Q0();if(!X)$D("Missing API key, you need to provide an API key to upload your bundle");return X}function uX0(D,X,Y){let Z=b0(D,Y),J=X.path||Y?.webDir;if(!Z)$D("Missing argument, you need to provide a appid or be in a capacitor project");if(!J)$D("Missing argument, you need to provide a path (--path), or be in a capacitor project");if(!V5.existsSync(J))$D(`Path ${J} does not exist, build your app first, or provide a valid path`);return{appid:Z,path:J}}function hX0(D,X){let Y=D.codeCheck;if(typeof Y>"u"||Y){if(!wX(X,"notifyAppReady"))$D(`notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready
|
|
393
|
+
`)}async function a$(D,X,Y){let Z=l$(D),J=await H5("AWS4"+Y,Z),Q=await H5(J,X),w=await H5(Q,"s3");return await H5(w,"aws4_request")}function t$(D,X,Y){return`${D}/${n$(X,Y)}`}async function H5(D,X){let Y=new TextEncoder,Z=await crypto.subtle.importKey("raw",D instanceof Uint8Array?D:Y.encode(D),{name:"HMAC",hash:{name:"SHA-256"}},!1,["sign","verify"]),J=await crypto.subtle.sign("HMAC",Z,X instanceof Uint8Array?X:Y.encode(X));return new Uint8Array(J)}async function ck(D){if(!D.accessKey)throw new $5;if(!D.secretKey)throw new ZX;if(D.expirySeconds<1||D.expirySeconds>604800)throw new TJ;let X=new Date(D.date);X.setSeconds(X.getSeconds()+D.expirySeconds);let Y=t$(D.accessKey,D.region,D.date),Z=O5(D.date),J={"X-Amz-Algorithm":QX,"X-Amz-Credential":Y,"X-Amz-Date":Z,key:D.objectKey,...D.fields},Q=[{bucket:D.bucket},{key:D.objectKey},{"X-Amz-Algorithm":QX},{"X-Amz-Credential":Y},{"X-Amz-Date":Z}];if(D.conditions)Q.push(...D.conditions);for(let[O,H]of Object.entries(D.fields||{})){if(["key","X-Amz-Algorithm","X-Amz-Credential","X-Amz-Date"].includes(O))continue;Q.push({[O]:H})}let w={expiration:X.toISOString(),conditions:Q},F=new TextEncoder().encode(JSON.stringify(w)),B=btoa(String.fromCharCode(...F));J.policy=B;let q=B,$=await a$(D.date,D.region,D.secretKey),G=JX(await H5($,q)).toLowerCase();return J["X-Amz-Signature"]=G,{url:`${D.protocol}//${D.host}/${D.bucket}`,fields:J}}var z30=["Content-Type","Cache-Control","Content-Disposition","Content-Encoding","Content-Language","Expires","x-amz-checksum-sha256","x-amz-grant-full-control","x-amz-grant-read","x-amz-grant-read-acp","x-amz-grant-write-acp","x-amz-server-side-encryption","x-amz-storage-class","x-amz-website-redirect-location","x-amz-server-side-encryption-customer-algorithm","x-amz-server-side-encryption-customer-key","x-amz-server-side-encryption-customer-key-MD5","x-amz-server-side-encryption-aws-kms-key-id","x-amz-server-side-encryption-context","x-amz-server-side-encryption-bucket-key-enabled","x-amz-request-payer","x-amz-tagging","x-amz-object-lock-mode","x-amz-object-lock-retain-until-date","x-amz-object-lock-legal-hold","x-amz-expected-bucket-owner"],M30=5242880,L30=5368709120,r$=5497558138880;class SJ{host;port;protocol;accessKey;#D;sessionToken;defaultBucket;region;userAgent="s3-lite-client";pathStyle;pathPrefix;constructor({endPoint:D,useSSL:X,port:Y,pathPrefix:Z,...J}){if(/^https?:\/\//i.test(D)){if(X!==void 0||Y!==void 0||Z!==void 0)throw new V1("useSSL/port/pathPrefix cannot be specified if endPoint is a URL.");try{let w=new URL(D);if(D=w.hostname,X=w.protocol==="https:",Y=w.port?parseInt(w.port,10):X?443:80,w.pathname&&w.pathname!=="/")Z=w.pathname.endsWith("/")?w.pathname.slice(0,-1):w.pathname}catch{throw new IJ(`Invalid endPoint URL: ${D}`)}}if(typeof D!=="string"||D.length===0)throw new IJ(`Invalid endPoint: ${D}`);if(X===void 0)X=!0;if(Y!==void 0&&!hk(Y))throw new V1(`Invalid port: ${Y}`);if(J.accessKey&&!J.secretKey)throw new V1("If specifying access key, secret key must also be provided.");if(J.accessKey&&J.accessKey.startsWith("ASIA")&&!J.sessionToken)throw new V1("If specifying temporary access key, session token must also be provided.");let Q=X?443:80;if(this.port=Y??Q,this.host=D.toLowerCase()+(this.port!==Q?`:${this.port}`:""),this.protocol=X?"https:":"http:",this.accessKey=J.accessKey,this.#D=J.secretKey??"",this.sessionToken=J.sessionToken,this.pathStyle=J.pathStyle??!0,this.pathPrefix=Z??"",this.defaultBucket=J.bucket,this.region=J.region,this.pathPrefix){if(!this.pathStyle)throw new V1("pathPrefix is incompatible with pathStyle=false");if(!this.pathPrefix.startsWith("/"))throw new V1("pathPrefix should start with /");if(this.pathPrefix.endsWith("/"))throw new V1("pathPrefix should not end with /")}}getBucketName(D){let X=D?.bucketName??this.defaultBucket;if(X===void 0||!_k(X))throw new m$(X??"");return X}buildRequestOptions(D){let X=this.getBucketName(D),Y=this.pathStyle?this.host:`${X}.${this.host}`,Z=D.headers??new Headers;Z.set("host",Y);let J=typeof D.query==="object"?new URLSearchParams(D.query).toString().replace("+","%20"):D.query,Q=this.pathStyle?`${this.pathPrefix}/${X}/${D.objectName}`:`/${D.objectName}`,w=J?`?${J}`:"",F=Q+w,B=Q.split("/").map((q)=>encodeURIComponent(q)).join("/")+w;return{headers:Z,host:Y,path:F,encodedPath:B}}async makeRequest({method:D,payload:X,...Y}){let Z=new Date,{headers:J,host:Q,path:w,encodedPath:F}=this.buildRequestOptions(Y),B=Y.statusCode??200;if(D==="POST"||D==="PUT"||D==="DELETE"){if(X===void 0)X=new Uint8Array;else if(typeof X==="string")X=new TextEncoder().encode(X);J.set("Content-Length",String(X.length))}else if(X)throw Error(`Unexpected payload on ${D} request.`);let q=await PJ(X??new Uint8Array);if(J.set("x-amz-date",O5(Z)),J.set("x-amz-content-sha256",q),this.accessKey){if(this.sessionToken)J.set("x-amz-security-token",this.sessionToken);J.set("authorization",await vk({headers:J,method:D,path:w,accessKey:this.accessKey,secretKey:this.#D,region:this.region,date:Z}))}let $=`${this.protocol}//${Q}${F}`,G=await fetch($,{method:D,headers:J,body:X});if(G.status!==B){if(G.status>=400)throw await uk(G);else if(G.status===301)throw new J9(G.status,"UnexpectedRedirect",'The server unexpectedly returned a redirect response. With AWS S3, this usually means you need to use a region-specific endpoint like "s3.us-west-2.amazonaws.com" instead of "s3.amazonaws.com"');throw new J9(G.status,"UnexpectedStatusCode",`Unexpected response code from the server (expected ${B}, got ${G.status} ${G.statusText}).`)}if(!Y.returnBody)await G.body?.getReader().read();return G}async deleteObject(D,X={}){let Y=this.getBucketName(X);if(!Q9(D))throw new N6(D);let Z=X.versionId?{versionId:X.versionId}:{},J=new Headers;if(X.governanceBypass)J.set("X-Amz-Bypass-Governance-Retention","true");await this.makeRequest({method:"DELETE",bucketName:Y,objectName:D,headers:J,query:Z,statusCode:204})}async exists(D,X){try{return await this.statObject(D,X),!0}catch(Y){if(Y instanceof J9&&Y.statusCode===404)return!1;throw Y}}getObject(D,X){return this.getPartialObject(D,{...X,offset:0,length:0})}async getPartialObject(D,{offset:X,length:Y,...Z}){let J=this.getBucketName(Z);if(!Q9(D))throw new N6(D);let Q=new Headers(Object.entries(Z.metadata??{})),w=200;if(X||Y){let B="";if(X)B=`bytes=${+X}-`;else B="bytes=0-",X=0;if(Y)B+=`${+Y+X-1}`;Q.set("Range",B),w=206}let F={...Z.responseParams,...Z.versionId?{versionId:Z.versionId}:{}};return await this.makeRequest({method:"GET",bucketName:J,objectName:D,headers:Q,query:F,statusCode:w,returnBody:!0})}getPresignedUrl(D,X,Y={}){if(!this.accessKey)throw new $5;if(!Q9(X))throw new N6(X);let{headers:Z,path:J}=this.buildRequestOptions({objectName:X,bucketName:Y.bucketName,query:Y.parameters}),Q=Y.requestDate??new Date,w=Y.expirySeconds??604800;return bk({protocol:this.protocol,headers:Z,method:D,path:J,accessKey:this.accessKey,secretKey:this.#D,sessionToken:this.sessionToken,region:this.region,date:Q,expirySeconds:w})}presignedGetObject(D,X={}){let{versionId:Y,responseParams:Z,...J}=X,Q={...Z,...Y?{versionId:Y}:{}};return this.getPresignedUrl("GET",D,{parameters:Q,...J})}async*listObjects(D={}){for await(let X of this.listObjectsGrouped({...D,delimiter:""}))if(X.type==="Object")yield X;else throw Error(`Unexpected result from listObjectsGrouped(): ${X}`)}async*listObjectsGrouped(D){let X=this.getBucketName(D),Y="",Z=D.pageSize??1000;if(Z<1||Z>1000)throw new V1("pageSize must be between 1 and 1,000.");let J=0;while(!0){let Q=D.maxResults?Math.min(Z,D.maxResults-J):Z;if(Q===0)return;let F=await(await this.makeRequest({method:"GET",bucketName:X,objectName:"",query:{"list-type":"2",prefix:D.prefix??"",delimiter:D.delimiter,"max-keys":String(Q),...Y?{"continuation-token":Y}:{}},returnBody:!0})).text(),B=Z9(F).root;if(!B||B.name!=="ListBucketResult")throw Error(`Unexpected response: ${F}`);let q=B.children.filter((W)=>W.name==="CommonPrefixes").flatMap((W)=>W.children),$=[];for(let W of q)$.push({type:"CommonPrefix",prefix:W.content??""}),J++;for(let W of B.children.filter((O)=>O.name==="Contents"))$.push({type:"Object",key:W.children.find((O)=>O.name==="Key")?.content??"",etag:G5(W.children.find((O)=>O.name==="ETag")?.content??""),size:parseInt(W.children.find((O)=>O.name==="Size")?.content??"",10),lastModified:new Date(W.children.find((O)=>O.name==="LastModified")?.content??"invalid")}),J++;$.sort((W,O)=>{let H=W.type==="Object"?W.key:W.prefix,M=O.type==="Object"?O.key:O.prefix;return H>M?1:H<M?-1:0});for(let W of $)yield W;if(B.children.find((W)=>W.name==="IsTruncated")?.content==="true"){let W=B.children.find((O)=>O.name==="NextContinuationToken")?.content;if(!W)throw Error("Unexpectedly missing continuation token, but server said there are more results.");Y=W}else return}}async putObject(D,X,Y){let Z=this.getBucketName(Y);if(!Q9(D))throw new N6(D);let J,Q;if(typeof X==="string"){let q=new TextEncoder().encode(X);if(typeof ReadableStream.from<"u")Q=ReadableStream.from([q]);else Q=new ReadableStream({start($){$.enqueue(q),$.close()}});J=q.length}else if(X instanceof Uint8Array){if(typeof ReadableStream.from<"u")Q=ReadableStream.from([X]);else Q=new ReadableStream({start(q){q.enqueue(X),q.close()}});J=X.byteLength}else if(X instanceof ReadableStream)Q=X;else throw new V1("Invalid stream/data type provided.");if(Y?.size!==void 0){if(J!==void 0&&Y?.size!==J)throw new V1(`size was specified (${Y.size}) but doesn't match auto-detected size (${J}).`);if(typeof Y.size!=="number"||Y.size<0||isNaN(Y.size))throw new V1(`invalid size specified: ${Y.size}`);else J=Y.size}let w=Y?.partSize??this.calculatePartSize(J);if(w<M30)throw new V1("Part size should be greater than 5MB");else if(w>L30)throw new V1("Part size should be less than 6MB");let F=new g$(w),B=new i$({client:this,bucketName:Z,objectName:D,partSize:w,metadata:Y?.metadata??{}});return await Q.pipeThrough(F).pipeTo(B),B.getResult()}calculatePartSize(D){if(D===void 0)D=r$;if(D>r$)throw TypeError(`size should not be more than ${r$}`);let X=67108864;while(!0){if(X*1e4>D)return X;X+=16777216}}async statObject(D,X){let Y=this.getBucketName(X);if(!Q9(D))throw new N6(D);let Z={};if(X?.versionId)Z.versionId=X.versionId;let J=await this.makeRequest({method:"HEAD",bucketName:Y,objectName:D,query:Z,headers:new Headers(X?.headers)}),Q={};for(let w of z30)if(J.headers.has(w))Q[w]=J.headers.get(w);return J.headers.forEach((w,F)=>{if(F.startsWith("x-amz-meta-"))Q[F]=J.headers.get(F)}),{type:"Object",key:D,size:parseInt(J.headers.get("content-length")??"",10),metadata:Q,lastModified:new Date(J.headers.get("Last-Modified")??"error: missing last modified"),versionId:J.headers.get("x-amz-version-id")||null,etag:G5(J.headers.get("ETag")??"")}}async copyObject(D,X,Y){let Z=this.getBucketName(Y),J=D.sourceBucketName??Z;if(!Q9(X))throw new N6(X);let Q=`${J}/${D.sourceKey}`;if(D.sourceVersionId)Q+=`?versionId=${D.sourceVersionId}`;let w=new Headers(Y?.metadata);if(Y?.metadata!==void 0)w.set("x-amz-metadata-directive","REPLACE");w.set("x-amz-copy-source",Q);let F=await this.makeRequest({method:"PUT",bucketName:Z,objectName:X,headers:w,returnBody:!0}),B=await F.text(),q=Z9(B).root;if(!q||q.name!=="CopyObjectResult")throw Error(`Unexpected response: ${B}`);let $=q.children.find((W)=>W.name==="ETag")?.content??"",G=q.children.find((W)=>W.name==="LastModified")?.content;if(G===void 0)throw Error("Unable to find <LastModified>...</LastModified> from the server.");return{copySourceVersionId:F.headers.get("x-amz-copy-source-version-id")||null,etag:G5($),lastModified:new Date(G),versionId:F.headers.get("x-amz-version-id")||null}}async bucketExists(D){try{return await this.listObjects({bucketName:D}).next(),!0}catch(X){if(X instanceof J9&&X.statusCode===404)return!1;throw X}}async makeBucket(D){await this.makeRequest({method:"PUT",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:200})}async removeBucket(D){await this.makeRequest({method:"DELETE",bucketName:this.getBucketName({bucketName:D}),objectName:"",statusCode:204})}presignedPostObject(D,X={}){if(!Q9(D))throw new N6(D);let Y=this.getBucketName(X);if(!Y)throw Error("Bucket name is required for presignedPost, but none was provided either to this method nor to the client constructor");let Z=X.requestDate||new Date,J=X.expirySeconds??3600;return ck({protocol:this.protocol,host:this.host,bucket:Y,objectKey:D,accessKey:this.accessKey||"",secretKey:this.#D||"",region:this.region,date:Z,expirySeconds:J,conditions:X.conditions,fields:X.fields})}}function lk(D){try{let X=i0(D);return Q8(F4(X,"patch"))}catch{let X=D.match(/^(\d+)\.(\d+)\.(\d+)/);if(X){let[,Y,Z,J]=X;return`${Y}.${Z}.${Number.parseInt(J)+1}`}return"1.0.1"}}async function nk(D,X){let Y=lk(D),Z=X?` for ${X}`:"",J=await M8({message:`How do you want to handle the version${Z}?`,options:[{value:"auto",label:`Auto: Bump patch version (${D} → ${Y})`},{value:"manual",label:"Manual: I'll provide the version number"}]});if(c0(J))return null;if(J==="auto")return K.info(`\uD83D\uDD22 Auto-bumped version from ${D} to ${Y}`),Y;let Q=await A6({message:`Current version is ${D}. Enter new version:`,validate:(w)=>{if(!w)return"Version is required";if(!w.match(/^\d+\.\d+\.\d+/))return"Please enter a valid version (x.y.z)"}});if(c0(Q))return null;return Q}function ik(D){let X=lk(D);try{let Y=i0(D);return[X,Q8(F4(Y,"minor")),`${D}-beta.1`,`${D}.1`]}catch{return[X,`${D}.1`,`${D}-beta.1`,`${D}-rc.1`]}}var K5=require("node:fs"),xJ=require("node:path");function V30(D,X){return K5.readFileSync(D,"utf8").includes(X)}function wX(D,X){let Y=K5.readdirSync(D);for(let Z of Y){let J=xJ.join(D,Z),Q=K5.statSync(J);if(Q.isDirectory()){if(wX(J,X))return!0}else if(Q.isFile()&&xJ.extname(J)===".js"){if(V30(J,X))return!0}}return!1}function fJ(D){if(K5.readdirSync(D).indexOf("index.html")>-1)return!0;return!1}var ou=require("node:buffer"),eu=require("node:crypto"),o7=require("node:fs"),Dh=require("node:os"),L5=require("node:path"),Xh=require("node:process"),bJ=require("node:stream/consumers"),Yh=require("node:zlib");var Zh=V0(su(),1),Jh=V0(qZ(),1);async function CX0(D,X){try{let Y=new URL(`${D.hostFilesApi}/files/read/attachments/${encodeURIComponent(X)}`);return Y.searchParams.set("nocache",`${Date.now()}`),(await fetch(Y.toString(),{method:"GET",headers:{range:"bytes=0-0","cache-control":"no-cache"}})).ok}catch{return!1}}var jX0=8192;async function IX0(D){let X=tD(Xh.cwd()),Y=await o1("@capgo/capacitor-updater",X,D.packageJson),Z;try{Z=Y?i0(Y):void 0}catch{Z=void 0}if(!Y||!Z)return{version:null,supportsBrotliV2:!1};let J=!e1(Z,void 0,void 0,DX);return{version:`${Z.major}.${Z.minor}.${Z.patch}`,supportsBrotliV2:J}}function TX0(D,X){if(!X)return!1;let Y=X.split(",").map((Z)=>Z.trim()).filter((Z)=>!!Z);if(Y.length===0)return!1;return Zh.isMatch(D,Y)}async function PX0(D,X,Y){let J=o7.statSync(D).size,Q=await bJ.buffer(o7.createReadStream(D));if(J===0)return{buffer:Q,useBrotli:!1};if(TX0(X,Y.noBrotliPatterns))return{buffer:Q,useBrotli:!1};if(J<jX0)return{buffer:Q,useBrotli:!1};try{let w=await bJ.buffer(o7.createReadStream(D).pipe(Yh.createBrotliCompress({})));if(w.length>=J-10)return{buffer:Q,useBrotli:!1};return{buffer:w,useBrotli:!0}}catch(w){return K.warn(`Brotli compression failed for ${D}: ${w}, using original file`),{buffer:Q,useBrotli:!1}}}async function Qh(D,X,Y,Z,J,Q,w=!1){let F=xD();F.start(J!=="v2"?"Generating the update manifest":`Generating the update manifest with ${w?"V3":"V2"} encryption`);let B=await dy(D);if(J==="v2")for(let q of B)q.hash=w?t7(q.hash,Q):a7(q.hash,Q);return F.stop("Manifest generated successfully"),await A0(X,{channel:"partial-update",event:"Generate manifest",icon:"\uD83D\uDCC2",user_id:Y,tags:{"app-id":Z},notify:!1}),B}function SX0(D){if(Dh.platform()!=="win32")return D;return L5.win32.normalize(D).split(L5.win32.sep).join(L5.posix.sep)}function xX0(D){let X=D.split("/").map((Y)=>encodeURIComponent(Y)).join("/");if(D.includes(" "))K.warn(`File "${D}" contains spaces in its name.`);return X}async function wh(D,X,Y,Z,J,Q,w){let F=xD();F.start("Preparing partial update with TUS protocol");let B=performance.now(),q=await C8(),$=!!(w.partial||w.delta||w.partialOnly||w.deltaOnly),{version:G,supportsBrotliV2:W}=await IX0(w);if(!W)throw Error(`Your project is using an older version of @capgo/capacitor-updater (${G||"unknown"}). To use Delta updates, please upgrade to version ${gy} (v5), ${my} (v6) or ${DX} (v7) or higher.`);else if(w.disableBrotli)K.info("Brotli compression disabled by user request");else if(w.noBrotliPatterns)K.info(`Files matching patterns (${w.noBrotliPatterns}) will be excluded from brotli compression`);let O=X.filter((N)=>N.file.includes(" "));if(O.length>0)throw Error(`Files with spaces in their names (${O.map((N)=>N.file).join(", ")}). Please rename the files.`);let H=0,M=X.length,U=0;try{F.message(`Uploading ${M} files using TUS protocol`);let N=async(C)=>{let k=L5.join(Y,C.file),A=SX0(C.file),y,f=!1;if(w.disableBrotli)y=await bJ.buffer(o7.createReadStream(k)),f=!1;else{let E=await PX0(k,A,w);y=E.buffer,f=E.useBrotli}let S=y;if(Q)S=p7(y,Q.sessionKey,Q.ivSessionKey);let v=A;if(f)v=`${A}.br`,U++;let b=xX0(v),n=eu.createHash("sha256").update(C.hash).digest("hex"),h;if(Q){let E=ou.Buffer.from(Q.ivSessionKey).toString("hex");h=`orgs/${J}/apps/${Z}/delta/${E}/${n}_${b}`}else h=`orgs/${J}/apps/${Z}/delta/${n}_${b}`;if(!Q&&await CX0(q,h))return H++,Promise.resolve({file_name:b,s3_path:h,file_hash:C.hash});return new Promise((E,P)=>{F.message(`Prepare upload partial file: ${A}`);let x=X9(v);new Jh.Upload(S,{endpoint:`${q.hostFilesApi}/files/upload/attachments/`,chunkSize:w.tusChunkSize,retryDelays:[0,1000,3000,5000,1e4],removeFingerprintOnSuccess:!0,metadata:{filename:h,filetype:x},headers:{Authorization:D},onError:(g)=>{let m=g.toString(),a;try{let c=m.match(/response text: (\{.*?\})/);if(c&&c[1])a=JSON.parse(c[1]).moreInfo?.requestId}catch{}let d=a?` [requestId: ${a}]`:"";K.error(`Failed to upload ${A}: ${m}${d}`),P(g)},onProgress(){let g=(H/M*100).toFixed(2);F.message(`Uploading partial update: ${g}%`)},onSuccess(){H++,E({file_name:b,s3_path:h,file_hash:C.hash})}}).start()})},R=500,z=[];for(let C=0;C<X.length;C+=R){let k=X.slice(C,C+R),A=Math.floor(C/R)+1,y=Math.ceil(X.length/R);if(y>1)F.message(`Processing batch ${A}/${y} (${k.length} files)`);let f=await Promise.all(k.map((S)=>N(S)));z.push(...f)}let L=((performance.now()-B)/1000).toFixed(2);if(F.stop(`Partial update uploaded successfully \uD83D\uDCAA in (${L} seconds)`),U>0)K.info(`${U} of ${M} files were compressed with brotli and use .br extension`);return await A0(D,{channel:"app",event:`App Partial TUS done${U>0?" with .br extension":""}`,icon:"⏫",user_id:J,tags:{"app-id":Z},notify:!1}),await A0(D,{channel:"performance",event:"Partial upload performance",icon:"\uD83D\uDE84",user_id:J,tags:{"app-id":Z,time:L},notify:!1}),z}catch(N){let z=((performance.now()-B)/1000).toFixed(2);if(F.stop(`Failed to upload Partial bundle (after ${z} seconds)`),$)throw K.error(`Error uploading partial update: ${N}`),K.error("Delta/partial upload was explicitly requested but failed. Upload aborted."),N;else return K.info(`Error uploading partial update: ${N}, This is not a critical error, the bundle has been uploaded without the partial files`),null}}function $D(D){throw K.error(D),Error(D)}function fX0(D){let X=new MD;X.headers=["Package","Local","Remote","Status","Details"],X.theme=MD.roundTheme,X.rows=[];for(let Y of D){let{name:Z,localVersion:J,remoteVersion:Q}=Y,w=q5(Y),F=w.compatible?"✅":"❌";X.rows.push([Z,J||"-",Q||"-",F,w.message])}K.info(X.toString())}async function yX0(D,X){let Y=D9("",X.packageJson),Z=X.bundle||D?.plugins?.CapacitorUpdater?.version||Y||`0.0.1-beta.${Fh.randomUUID().split("-")[0]}`;if(!m7.test(Z))$D(`Your bundle name ${Z}, is not valid it should follow semver convention : https://semver.org/`);return Z}function kX0(D){let X=D.apikey||Q0();if(!X)$D("Missing API key, you need to provide an API key to upload your bundle");return X}function uX0(D,X,Y){let Z=b0(D,Y),J=X.path||Y?.webDir;if(!Z)$D("Missing argument, you need to provide a appid or be in a capacitor project");if(!J)$D("Missing argument, you need to provide a path (--path), or be in a capacitor project");if(!V5.existsSync(J))$D(`Path ${J} does not exist, build your app first, or provide a valid path`);return{appid:Z,path:J}}function hX0(D,X){let Y=D.codeCheck;if(typeof Y>"u"||Y){if(!wX(X,"notifyAppReady"))$D(`notifyAppReady() is missing in the build folder of your app. see: https://capgo.app/docs/plugin/api/#notifyappready
|
|
394
394
|
If you are sure your app has this code, you can use the --no-code-check option`);if(!fJ(X))$D(`index.html is missing in the root folder of ${X}`)}}async function _X0(D,X,Y,Z,J,Q){let{ignoreMetadataCheck:w,autoMinUpdateVersion:F,minUpdateVersion:B}=Y,{data:q,error:$}=await D.from("channels").select("disable_auto_update, version ( min_update_version, native_packages )").eq("name",Z).eq("app_id",J).single(),G=!!q&&q.disable_auto_update==="version_number",W,O;if(!$&&q&&q.version&&q.version.native_packages&&!w){let U=xD();U.start(`Checking bundle compatibility with channel ${Z}`);let{finalCompatibility:N,localDependencies:R}=await LJ(D,J,Z,Y.packageJson,Y.nodeModules);if(O=N,W=R,O.filter((V)=>!Y9(V)).length>0){if(U.stop(`Bundle NOT compatible with ${Z} channel`),K.warn(""),fX0(O),K.warn(""),K.warn("An app store update may be required for these changes to take effect."),F)B=Q,K.info(`Auto set min-update-version to ${B}`)}else if(F)try{let{min_update_version:V}=q.version;if(!V||!m7.test(V))$D("Invalid remote min update version, skipping auto setting compatibility");B=V,U.stop(`Auto set min-update-version to ${B}`)}catch{$D(`Cannot auto set compatibility, invalid data ${q}`)}else U.stop(`Bundle compatible with ${Z} channel`)}else if(!w){if(K.warn(`Channel ${Z} is new or it's your first upload with compatibility check, it will be ignored this time`),W=await k$(Y.packageJson,Y.nodeModules),F)B=Q,K.info(`Auto set min-update-version to ${B}`)}if(G&&!B&&!w)$D("You need to provide a min-update-version to upload a bundle to this channel");if(B){if(!m7.test(B))$D(`Your minimal version update ${B}, is not valid it should follow semver convention : https://semver.org/`)}let H=W?new Map(W.filter((U)=>!!U.native&&U.native!==void 0).map((U)=>[U.name,U])):new Map;return{nativePackages:H.size>0||!Y.ignoreMetadataCheck?Array.from(H,([U,N])=>({name:U,version:N.version,...N.ios_checksum&&{ios_checksum:N.ios_checksum},...N.android_checksum&&{android_checksum:N.android_checksum}})):void 0,minUpdateVersion:B}}async function vX0(D,X,Y,Z=!1,J=!1){let{data:Q,error:w}=await D.rpc("exist_app_versions",{appid:X,name_version:Y}).single();if(Q||w){if(Z)return K.warn(`Version ${Y} already exists - exiting gracefully due to --silent-fail option`),$0("Bundle version already exists - exiting gracefully \uD83C\uDF89"),!0;if(J){K.error(`❌ Version ${Y} already exists`);let F=ik(Y);K.info("\uD83D\uDCA1 Here are some suggestions:"),F.forEach(($,G)=>{K.info(` ${G+1}. ${$}`)});let B=await M8({message:"What would you like to do?",options:[{value:"suggest1",label:`Use ${F[0]}`},{value:"suggest2",label:`Use ${F[1]}`},{value:"suggest3",label:`Use ${F[2]}`},{value:"suggest4",label:`Use ${F[3]}`},{value:"custom",label:"Enter a custom version"},{value:"cancel",label:"Cancel upload"}]});if(c0(B)||B==="cancel")$D("Upload cancelled by user");let q;if(B==="custom"){let $=await nk(Y,"upload");if(!$)$D("Upload cancelled by user");q=$}else{let $=Number.parseInt(B.replace("suggest",""))-1;q=F[$]}return K.info(`\uD83D\uDD04 Retrying with new version: ${q}`),q}$D(`Version ${Y} already exists ${p(w)}`)}return!1}async function bX0(D,X,Y,Z,J,Q,w,F){let B,q,$="",G=null,W="none",O="",H="",M=X.keyV2,U=X.key===!1,N=xD();N.start(`Zipping bundle from ${D}`),G=await KJ(D),N.message("Calculating checksum");let R=tD(gJ.cwd()),z=await o1("@capgo/capacitor-updater",R,X.packageJson),V=!1,L;try{L=z?i0(z):void 0}catch{L=void 0}if(!z)$D("Cannot find @capgo/capacitor-updater in node_modules, please install it first with your package manager");else if(L)V=!e1(L,DX);else if(z==="link:@capgo/capacitor-updater"||z==="file:.."||z==="file:../")K.warn("Using local @capgo/capacitor-updater. Assuming latest version for checksum calculation."),V=!0;if((M||X.keyDataV2||V5.existsSync(v1))&&!U||V)$=await e8(G,"sha256");else $=await e8(G,"crc32");if(N.stop(`Checksum ${V?"SHA256":"CRC32"}: ${$}`),U)K.info("Encryption ignored");else if((M||V5.existsSync(v1)||X.keyDataV2)&&!X.oldEncryption){let A=typeof M==="string"?M:v1,y=X.keyDataV2||"";if(!y&&!V5.existsSync(A))$D(`Cannot find private key ${A}`);if(await A0(Y,{channel:"app",event:"App encryption v2",icon:"\uD83D\uDD11",user_id:Z,tags:{"app-id":J},notify:!1},X.verbose),!y)y=V5.readFileSync(A).toString();let f=L&&!e1(L,"5.30.0","6.30.0","7.30.0");K.info(`Encrypting your bundle with ${f?"V3":"V2"}`);let{sessionKey:S,ivSessionKey:v}=jJ(y),b=p7(G,S,v);if($=f?t7($,y):a7($,y),B=v,q=S,W="v2",O=y,F){if(H=Pk(F),X.verbose)K.info(`[Verbose] Encryption key_id: ${H}`)}if(X.displayIvSession)K.info(`Your Iv Session key is ${B},
|
|
395
395
|
keep it safe, you will need it to decrypt your bundle.
|
|
396
396
|
It will be also visible in your dashboard
|