@junobuild/functions-tools 0.4.1 → 0.4.3

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/README.md CHANGED
@@ -56,7 +56,7 @@ Returns:
56
56
 
57
57
  An object containing the generated Rust code and the base type name.
58
58
 
59
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/functions-tools/src/converters/zod-to-rust.ts#L174)
59
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/functions-tools/src/converters/zod-to-rust.ts#L204)
60
60
 
61
61
  #### :gear: zodToCandid
62
62
 
@@ -100,7 +100,7 @@ An object containing the generated Candid type declaration and the base type nam
100
100
  | `baseName` | `string` | |
101
101
  | `code` | `string` | |
102
102
 
103
- [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/functions-tools/src/converters/zod-to-rust.ts#L143)
103
+ [:link: Source](https://github.com/junobuild/juno-js/tree/main/packages/functions-tools/src/converters/zod-to-rust.ts#L173)
104
104
 
105
105
  #### :gear: CandidResult
106
106
 
@@ -1,8 +1,8 @@
1
1
  import { createRequire as topLevelCreateRequire } from 'module';
2
2
  const require = topLevelCreateRequire(import.meta.url);
3
- var Sr=Object.defineProperty;var Tr=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var Ar=(r,e)=>{for(var t in e)Sr(r,t,{get:e[t],enumerable:!0})};import{writeFile as qr}from"node:fs/promises";import*as Nr from"@babel/parser";import{isTSAnyKeyword as Er,isTSArrayType as vr,isTSBigIntKeyword as Cr,isTSBooleanKeyword as Ir,isTSNeverKeyword as Rr,isTSNullKeyword as Ur,isTSNumberKeyword as Or,isTSObjectKeyword as $r,isTSStringKeyword as Fr,isTSSymbolKeyword as Br,isTSTupleType as at,isTSTypeReference as ct,isTSUndefinedKeyword as kr,isTSUnknownKeyword as Lr,isTSVoidKeyword as Vr}from"@babel/types";import{isNullish as Se,nonNullish as ut}from"@dfinity/utils";import{readFile as jr}from"node:fs/promises";var{parse:Mr}=Nr,Pr={sourceType:"module",plugins:["typescript"]},lt=async({inputFile:r})=>{let e=await jr(r,"utf-8"),t=Mr(e,Pr),n=[],s=[],i=[],{default:o}=Tr("@babel/traverse");return o(t,{TSInterfaceDeclaration(a){if(a.node.id.name==="_SERVICE"){let c=a.node.body.body;for(let u of c)if(u.type==="TSMethodSignature"||u.type==="TSPropertySignature"){let h=Hr(u);ut(h)&&n.push(h)}}else s.push(a.node.id.name)},TSTypeAliasDeclaration(a){i.push(a.node.id.name)}}),{methods:n,imports:[...s,...i]}},oe=r=>{if(Se(r))return"unknown";if(ct(r)){let e=r.typeName?.name;if(Se(e))return"unknown";if(ut(r.typeParameters?.params?.length)){let t=r.typeParameters.params.map(oe);return`${e}<${t.join(", ")}>`}return e??"unknown"}return Fr(r)?"string":Or(r)?"number":Ir(r)?"boolean":Cr(r)?"bigint":Br(r)?"symbol":Ur(r)?"null":kr(r)?"undefined":Vr(r)?"void":Rr(r)?"never":Lr(r)?"unknown":Er(r)?"any":$r(r)?"object":at(r)?`[${r.elementTypes.map(oe).join(", ")}]`:vr(r)?`${oe(r.elementType)}[]`:"unknown"},Hr=r=>{let{type:e,key:t}=r,s=(()=>{if(t.type==="Identifier")return t.name;if(t.type==="StringLiteral")return t.value})();if(Se(s)||e!=="TSPropertySignature")return;let i=r.typeAnnotation?.typeAnnotation;if(!ct(i)||i.typeName?.name!=="ActorMethod"||Se(i.typeParameters))return;let[a,c]=i.typeParameters.params,u=at(a)?a.elementTypes.map(oe):[oe(a)];return{name:s,paramsType:u,returnType:oe(c)}};var Te="functions";var Ae=`export const %FUNCTION_NAMESPACE% = {
3
+ var Tr=Object.defineProperty;var Ar=(r=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(r,{get:(e,t)=>(typeof require<"u"?require:e)[t]}):r)(function(r){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+r+'" is not supported')});var Nr=(r,e)=>{for(var t in e)Tr(r,t,{get:e[t],enumerable:!0})};import{writeFile as Zr}from"node:fs/promises";import*as Er from"@babel/parser";import{isTSAnyKeyword as vr,isTSArrayType as Cr,isTSBigIntKeyword as Ir,isTSBooleanKeyword as Rr,isTSNeverKeyword as Ur,isTSNullKeyword as Or,isTSNumberKeyword as $r,isTSObjectKeyword as Fr,isTSStringKeyword as Br,isTSSymbolKeyword as kr,isTSTupleType as ot,isTSTypeReference as at,isTSUndefinedKeyword as Lr,isTSUnknownKeyword as Vr,isTSVoidKeyword as jr}from"@babel/types";import{isNullish as Se,nonNullish as ct}from"@dfinity/utils";import{readFile as Mr}from"node:fs/promises";var{parse:Pr}=Er,Hr={sourceType:"module",plugins:["typescript"]},ut=async({inputFile:r})=>{let e=await Mr(r,"utf-8"),t=Pr(e,Hr),n=[],s=[],i=[],{default:o}=Ar("@babel/traverse");return o(t,{TSInterfaceDeclaration(a){if(a.node.id.name==="_SERVICE"){let c=a.node.body.body;for(let u of c)if(u.type==="TSMethodSignature"||u.type==="TSPropertySignature"){let h=Dr(u);ct(h)&&n.push(h)}}else s.push(a.node.id.name)},TSTypeAliasDeclaration(a){i.push(a.node.id.name)}}),{methods:n,imports:[...s,...i]}},oe=r=>{if(Se(r))return"unknown";if(at(r)){let e=r.typeName?.name;if(Se(e))return"unknown";if(ct(r.typeParameters?.params?.length)){let t=r.typeParameters.params.map(oe);return`${e}<${t.join(", ")}>`}return e??"unknown"}return Br(r)?"string":$r(r)?"number":Rr(r)?"boolean":Ir(r)?"bigint":kr(r)?"symbol":Or(r)?"null":Lr(r)?"undefined":jr(r)?"void":Ur(r)?"never":Vr(r)?"unknown":vr(r)?"any":Fr(r)?"object":ot(r)?`[${r.elementTypes.map(oe).join(", ")}]`:Cr(r)?`${oe(r.elementType)}[]`:"unknown"},Dr=r=>{let{type:e,key:t}=r,s=(()=>{if(t.type==="Identifier")return t.name;if(t.type==="StringLiteral")return t.value})();if(Se(s)||e!=="TSPropertySignature")return;let i=r.typeAnnotation?.typeAnnotation;if(!at(i)||i.typeName?.name!=="ActorMethod"||Se(i.typeParameters))return;let[a,c]=i.typeParameters.params,u=ot(a)?a.elementTypes.map(oe):[oe(a)];return{name:s,paramsType:u,returnType:oe(c)}};var Te="functions";var Ae=`export const %FUNCTION_NAMESPACE% = {
4
4
  %JS_FUNCTIONS%
5
- };`;var Dr=`// This file was automatically generated by the Juno CLI.
5
+ };`;var zr=`// This file was automatically generated by the Juno CLI.
6
6
  // Any modifications may be overwritten.
7
7
 
8
8
  /* eslint-disable */
@@ -14,27 +14,27 @@ import {getSatelliteExtendedActor} from '@junobuild/%CORE_LIB%';
14
14
  %METHODS%
15
15
 
16
16
  %NAMESPACE%
17
- `,zr=`const %METHOD_NAME% = async (%PARAMS%): Promise<%METHOD_RESULT%> => {
17
+ `,Gr=`const %METHOD_NAME% = async (%PARAMS%): Promise<%METHOD_RESULT%> => {
18
18
  const {%DID_METHOD_NAME%} = await getSatelliteExtendedActor<SatelliteActor>({
19
19
  idlFactory
20
20
  });
21
21
 
22
22
  return await %DID_METHOD_NAME%(%CALL_PARAMS%);
23
- }`,Gr=`const %METHOD_NAME% = async (%CALL_PARAMS%) => {
23
+ }`,Jr=`const %METHOD_NAME% = async (%CALL_PARAMS%) => {
24
24
  const {%DID_METHOD_NAME%} = await getSatelliteExtendedActor({
25
25
  idlFactory
26
26
  });
27
27
 
28
28
  return await %DID_METHOD_NAME%(%CALL_PARAMS%);
29
- }`,Jr=`
29
+ }`,Wr=`
30
30
  import type {_SERVICE as SatelliteActor%IMPORTS%} from './satellite.did';
31
- import type { Principal } from '@icp-sdk/core/principal';`,ft=({methods:r,imports:e,transformerOptions:{coreLib:t,outputLanguage:n}})=>{let s=n==="js"?Gr:zr,i=r.map(Wr),o=i.map(c=>{let u=s;return Object.entries(c).map(([h,f])=>{u=u.replaceAll(`%${h}%`,f)}),u}).join(`
31
+ import type { Principal } from '@icp-sdk/core/principal';`,lt=({methods:r,imports:e,transformerOptions:{coreLib:t,outputLanguage:n}})=>{let s=n==="js"?Jr:Gr,i=r.map(qr),o=i.map(c=>{let u=s;return Object.entries(c).map(([h,f])=>{u=u.replaceAll(`%${h}%`,f)}),u}).join(`
32
32
 
33
33
  `),a=Ae.replace("%FUNCTION_NAMESPACE%",Te).replace("%JS_FUNCTIONS%",i.map(({METHOD_NAME:c})=>c).join(`,
34
- `));return Dr.replace("%CORE_LIB%",t??"core").replace("%METHODS%",o).replace("%NAMESPACE%",a).replace("%IMPORT%",n==="js"?"":Jr.replace("%IMPORTS%",e.length===0?"":`, ${e.join(", ")}`)).trim()},Wr=({name:r,returnType:e,paramsType:t})=>{let s=(c=>c.replace(/_./g,u=>u[1].toUpperCase()))(r),i=t.map((c,u)=>({param:`value${u}`,type:c})),o=`${i.map(({param:c})=>c).join(", ")}`,a=i.map(({param:c,type:u})=>`${c}: ${u}`).join(", ");return{METHOD_NAME:s,DID_METHOD_NAME:r,METHOD_RESULT:e,PARAMS:a,CALL_PARAMS:o}};var Xn=async({inputFile:r,outputFile:e,transformerOptions:t})=>{let n=await lt({inputFile:r}),s=ft({...n,transformerOptions:t});await qr(e,s,"utf-8")};import{writeFile as tn}from"node:fs/promises";import{nonNullish as Ne}from"@dfinity/utils";import{capitalize as Qr,convertCamelToSnake as Yr}from"@junobuild/utils";import{capitalize as Zr}from"@junobuild/utils";import{ZodSchemaId as dt}from"@junobuild/zod";import*as pt from"zod";var W=({id:r,zodSchema:e})=>{let t=e.toJSONSchema({unrepresentable:"any",override:i=>{i.zodSchema._zod.def.type==="bigint"&&(i.jsonSchema.type="integer",i.jsonSchema.format="bigint"),i.jsonSchema.id===dt.Principal&&(i.jsonSchema.format="principal"),i.jsonSchema.id===dt.Uint8Array&&(i.jsonSchema.format="uint8array")}}),n=I({schema:t,rootDefs:t.$defs??{}}),s=e._zod.def.type==="optional"&&!("innerType"in e._zod.def&&e._zod.def.innerType instanceof pt.ZodNullable);return{id:r,schema:n,isTopLevelOptional:s}},I=({schema:r,rootDefs:e})=>{if(r.format==="principal")return{kind:"principal"};if(r.format==="uint8array")return{kind:"uint8array"};if("$ref"in r){let t=r.$ref.replace("#/$defs/",""),n=e[t];if(n===void 0)throw new Error(`Unresolved $ref: ${r.$ref}`);return I({schema:n,rootDefs:e})}switch(r.type){case"string":if(r.const!==void 0)return{kind:"variant",tags:[String(r.const)]};if(r.enum!==void 0){if(r.enum.some(t=>typeof t!="string"))throw new Error("Non-string enum values are not supported");return{kind:"variant",tags:r.enum}}return{kind:"text"};case"boolean":return{kind:"bool"};case"number":return{kind:"float64"};case"integer":return r.format==="bigint"?{kind:"nat"}:{kind:"int32"};case"null":throw new Error("null type is not supported");case"array":{if(r.prefixItems!==void 0){if(r.prefixItems.some(t=>typeof t=="boolean"))throw new Error("Boolean schema not supported.");return{kind:"indexedTuple",members:r.prefixItems.map(t=>I({schema:t,rootDefs:e}))}}if(r.items===void 0)throw new Error("Array schema must have items defined");if(Array.isArray(r.items))throw new Error("Tuple-style array items not supported");if(typeof r.items=="boolean")throw new Error("Boolean schema not supported for array items");return{kind:"vec",inner:I({schema:r.items,rootDefs:e})}}case"object":{if(r.properties===void 0&&r.additionalProperties!==void 0){if(typeof r.additionalProperties=="boolean")throw new Error("Boolean additionalProperties not supported");return{kind:"vec",inner:{kind:"tuple",members:[{kind:"text"},I({schema:r.additionalProperties,rootDefs:e})]}}}if(r.properties===void 0)return{kind:"record",fields:[]};if(Object.keys(r.properties).length===0)return{kind:"record",fields:[]};let t=new Set(r.required??[]),n=Object.entries(r.properties);if(n.some(([s,i])=>typeof i=="boolean"))throw new Error("Boolean schema not supported.");return{kind:"record",fields:n.map(([s,i])=>{let o=I({schema:i,rootDefs:e});return{name:s,type:t.has(s)?o:{kind:"opt",inner:o}}})}}}if(r.oneOf!==void 0){let t=r.oneOf.filter(({type:n})=>n!=="null");return t.length===1?{kind:"opt",inner:I({schema:t[0],rootDefs:e})}:{kind:"variantRecords",members:t.map(n=>I({schema:n,rootDefs:e}))}}if(r.anyOf!==void 0){let t=r.anyOf.filter(i=>typeof i!="boolean");if(t.filter(i=>Object.keys(i).length===0).length>0)throw new Error("Unrepresentable type in union");if(t.every(i=>i.const!==void 0))return{kind:"variant",tags:t.map(i=>String(i.const))};let s=t.filter(i=>i.type!=="null");return s.length===1?{kind:"opt",inner:I({schema:s[0],rootDefs:e})}:{kind:"variantRecords",members:s.map(i=>I({schema:i,rootDefs:e}))}}if(r.allOf!==void 0){if(r.allOf.some(n=>typeof n=="boolean"))throw new Error("Boolean schema not supported in allOf");if(r.allOf.some(n=>typeof n!="boolean"&&(n.type!=="object"||n.properties===void 0)))throw new Error("allOf only supported for object types");return{kind:"record",fields:r.allOf.flatMap(n=>{let s=new Set(n.required??[]);return Object.entries(n.properties??{}).map(([i,o])=>{let a=I({schema:o,rootDefs:e});return{name:i,type:s.has(i)?a:{kind:"opt",inner:a}}})})}}throw Object.keys(r).length===0?new Error("Unsupported type: unrepresentable schema (z.symbol, z.undefined, z.void, z.map, z.set, z.nan, z.custom are not supported)"):new Error(`Unsupported JSON Schema: ${JSON.stringify(r)}`)};var ae=r=>{switch(r.kind){case"text":return"z.string()";case"bool":return"z.boolean()";case"float64":return"z.number()";case"int32":return"z.int()";case"nat":return"z.bigint()";case"principal":return"PrincipalSchema";case"uint8array":return"Uint8ArraySchema";case"opt":return`z.optional(${ae(r.inner)})`;case"vec":return`z.array(${ae(r.inner)})`;case"tuple":case"indexedTuple":return`z.tuple([${r.members.map(ae).join(", ")}])`;case"record":return`z.strictObject({${r.fields.map(e=>`${e.name}: ${ae(e.type)}`).join(", ")}})`;case"variant":return`z.enum([${r.tags.map(e=>`'${e}'`).join(", ")}])`;case"variantRecords":return`z.union([${r.members.map(ae).join(", ")}])`}},Kr=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let s=`${Zr(r)}${n}`,o=ae(t?{kind:"opt",inner:e}:e);return{baseName:s,code:`const ${s}Schema = ${o};`}},De=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return Kr({...n,suffix:t})};var ht=`import {idlFactory} from './satellite.factory.did.js';
34
+ `));return zr.replace("%CORE_LIB%",t??"core").replace("%METHODS%",o).replace("%NAMESPACE%",a).replace("%IMPORT%",n==="js"?"":Wr.replace("%IMPORTS%",e.length===0?"":`, ${e.join(", ")}`)).trim()},qr=({name:r,returnType:e,paramsType:t})=>{let s=(c=>c.replace(/_./g,u=>u[1].toUpperCase()))(r),i=t.map((c,u)=>({param:`value${u}`,type:c})),o=`${i.map(({param:c})=>c).join(", ")}`,a=i.map(({param:c,type:u})=>`${c}: ${u}`).join(", ");return{METHOD_NAME:s,DID_METHOD_NAME:r,METHOD_RESULT:e,PARAMS:a,CALL_PARAMS:o}};var rs=async({inputFile:r,outputFile:e,transformerOptions:t})=>{let n=await ut({inputFile:r}),s=lt({...n,transformerOptions:t});await Zr(e,s,"utf-8")};import{writeFile as rn}from"node:fs/promises";import{nonNullish as Ne}from"@dfinity/utils";import{capitalize as Yr,convertCamelToSnake as Xr}from"@junobuild/utils";import{capitalize as Kr}from"@junobuild/utils";import{ZodSchemaId as ft}from"@junobuild/zod";import*as dt from"zod";var W=({id:r,zodSchema:e})=>{let t=e.toJSONSchema({unrepresentable:"any",override:i=>{i.zodSchema._zod.def.type==="bigint"&&(i.jsonSchema.type="integer",i.jsonSchema.format="bigint"),i.jsonSchema.id===ft.Principal&&(i.jsonSchema.format="principal"),i.jsonSchema.id===ft.Uint8Array&&(i.jsonSchema.format="uint8array")}}),n=I({schema:t,rootDefs:t.$defs??{}}),s=e._zod.def.type==="optional"&&!("innerType"in e._zod.def&&e._zod.def.innerType instanceof dt.ZodNullable);return{id:r,schema:n,isTopLevelOptional:s}},I=({schema:r,rootDefs:e})=>{if(r.format==="principal")return{kind:"principal"};if(r.format==="uint8array")return{kind:"uint8array"};if("$ref"in r){let t=r.$ref.replace("#/$defs/",""),n=e[t];if(n===void 0)throw new Error(`Unresolved $ref: ${r.$ref}`);return I({schema:n,rootDefs:e})}switch(r.type){case"string":if(r.const!==void 0)return{kind:"variant",tags:[String(r.const)]};if(r.enum!==void 0){if(r.enum.some(t=>typeof t!="string"))throw new Error("Non-string enum values are not supported");return{kind:"variant",tags:r.enum}}return{kind:"text"};case"boolean":return{kind:"bool"};case"number":return{kind:"float64"};case"integer":return r.format==="bigint"?{kind:"nat"}:{kind:"int32"};case"null":throw new Error("null type is not supported");case"array":{if(r.prefixItems!==void 0){if(r.prefixItems.some(t=>typeof t=="boolean"))throw new Error("Boolean schema not supported.");return{kind:"indexedTuple",members:r.prefixItems.map(t=>I({schema:t,rootDefs:e}))}}if(r.items===void 0)throw new Error("Array schema must have items defined");if(Array.isArray(r.items))throw new Error("Tuple-style array items not supported");if(typeof r.items=="boolean")throw new Error("Boolean schema not supported for array items");return{kind:"vec",inner:I({schema:r.items,rootDefs:e})}}case"object":{if(r.properties===void 0&&r.additionalProperties!==void 0){if(typeof r.additionalProperties=="boolean")throw new Error("Boolean additionalProperties not supported");return{kind:"vec",inner:{kind:"tuple",members:[{kind:"text"},I({schema:r.additionalProperties,rootDefs:e})]}}}if(r.properties===void 0)return{kind:"record",fields:[]};if(Object.keys(r.properties).length===0)return{kind:"record",fields:[]};let t=new Set(r.required??[]),n=Object.entries(r.properties);if(n.some(([s,i])=>typeof i=="boolean"))throw new Error("Boolean schema not supported.");return{kind:"record",fields:n.map(([s,i])=>{let o=I({schema:i,rootDefs:e});return{name:s,type:t.has(s)?o:{kind:"opt",inner:o}}})}}}if(r.oneOf!==void 0){let t=r.oneOf.filter(({type:n})=>n!=="null");return t.length===1?{kind:"opt",inner:I({schema:t[0],rootDefs:e})}:{kind:"variantRecords",members:t.map(n=>I({schema:n,rootDefs:e}))}}if(r.anyOf!==void 0){let t=r.anyOf.filter(i=>typeof i!="boolean");if(t.filter(i=>Object.keys(i).length===0).length>0)throw new Error("Unrepresentable type in union");if(t.every(i=>i.const!==void 0))return{kind:"variant",tags:t.map(i=>String(i.const))};let s=t.filter(i=>i.type!=="null");return s.length===1?{kind:"opt",inner:I({schema:s[0],rootDefs:e})}:{kind:"variantRecords",members:s.map(i=>I({schema:i,rootDefs:e}))}}if(r.allOf!==void 0){if(r.allOf.some(n=>typeof n=="boolean"))throw new Error("Boolean schema not supported in allOf");if(r.allOf.some(n=>typeof n!="boolean"&&(n.type!=="object"||n.properties===void 0)))throw new Error("allOf only supported for object types");return{kind:"record",fields:r.allOf.flatMap(n=>{let s=new Set(n.required??[]);return Object.entries(n.properties??{}).map(([i,o])=>{let a=I({schema:o,rootDefs:e});return{name:i,type:s.has(i)?a:{kind:"opt",inner:a}}})})}}throw Object.keys(r).length===0?new Error("Unsupported type: unrepresentable schema (z.symbol, z.undefined, z.void, z.map, z.set, z.nan, z.custom are not supported)"):new Error(`Unsupported JSON Schema: ${JSON.stringify(r)}`)};var ae=r=>{switch(r.kind){case"text":return"z.string()";case"bool":return"z.boolean()";case"float64":return"z.number()";case"int32":return"z.int()";case"nat":return"z.bigint()";case"principal":return"PrincipalSchema";case"uint8array":return"Uint8ArraySchema";case"opt":return`z.optional(${ae(r.inner)})`;case"vec":return`z.array(${ae(r.inner)})`;case"tuple":case"indexedTuple":return`z.tuple([${r.members.map(ae).join(", ")}])`;case"record":return`z.strictObject({${r.fields.map(e=>`${e.name}: ${ae(e.type)}`).join(", ")}})`;case"variant":return`z.enum([${r.tags.map(e=>`'${e}'`).join(", ")}])`;case"variantRecords":return`z.union([${r.members.map(ae).join(", ")}])`}},Qr=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let s=`${Kr(r)}${n}`,o=ae(t?{kind:"opt",inner:e}:e);return{baseName:s,code:`const ${s}Schema = ${o};`}},De=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return Qr({...n,suffix:t})};var pt=`import {idlFactory} from './satellite.factory.did.js';
35
35
  import {getSatelliteExtendedActor} from '@junobuild/%CORE_LIB%';
36
36
  import {recursiveToNullable, recursiveFromNullable} from '@junobuild/zod';
37
- import * as z from 'zod';`,mt=`
37
+ import * as z from 'zod';`,ht=`
38
38
  %ARGS_ZOD%
39
39
  %RESULT_ZOD%
40
40
 
@@ -47,7 +47,7 @@ const %JS_FUNCTION% = async (args) => {
47
47
 
48
48
  const result = recursiveFromNullable({schema: %RESULT_SCHEMA%, value: idlResult});
49
49
  return %RESULT_SCHEMA%.parse(result);
50
- };`,yt=`
50
+ };`,mt=`
51
51
  %ARGS_ZOD%
52
52
 
53
53
  const %JS_FUNCTION% = async (args) => {
@@ -56,7 +56,7 @@ const %JS_FUNCTION% = async (args) => {
56
56
 
57
57
  const {%RS_FUNCTION%} = await getSatelliteExtendedActor({idlFactory});
58
58
  await %RS_FUNCTION%(idlArgs);
59
- };`,bt=`
59
+ };`,yt=`
60
60
  %RESULT_ZOD%
61
61
 
62
62
  const %JS_FUNCTION% = async () => {
@@ -65,15 +65,15 @@ const %JS_FUNCTION% = async () => {
65
65
 
66
66
  const result = recursiveFromNullable({schema: %RESULT_SCHEMA%, value: idlResult});
67
67
  return %RESULT_SCHEMA%.parse(result);
68
- };`,xt=`
68
+ };`,bt=`
69
69
  const %JS_FUNCTION% = async () => {
70
70
  const {%RS_FUNCTION%} = await getSatelliteExtendedActor({idlFactory});
71
71
  await %RS_FUNCTION%();
72
- };`;var gt=`import type {_SERVICE as SatelliteActor} from './satellite.did';
72
+ };`;var xt=`import type {_SERVICE as SatelliteActor} from './satellite.did';
73
73
  import {idlFactory} from './satellite.factory.did.js';
74
74
  import {getSatelliteExtendedActor} from '@junobuild/%CORE_LIB%';
75
75
  import {recursiveToNullable, recursiveFromNullable} from '@junobuild/zod';
76
- import * as z from 'zod';`,wt=`
76
+ import * as z from 'zod';`,gt=`
77
77
  %ARGS_ZOD%
78
78
  %RESULT_ZOD%
79
79
 
@@ -86,7 +86,7 @@ const %JS_FUNCTION% = async (args: z.infer<typeof %ARGS_SCHEMA%>): Promise<z.inf
86
86
 
87
87
  const result = recursiveFromNullable({schema: %RESULT_SCHEMA%, value: idlResult});
88
88
  return %RESULT_SCHEMA%.parse(result);
89
- };`,_t=`
89
+ };`,wt=`
90
90
  %ARGS_ZOD%
91
91
 
92
92
  const %JS_FUNCTION% = async (args: z.infer<typeof %ARGS_SCHEMA%>): Promise<void> => {
@@ -95,7 +95,7 @@ const %JS_FUNCTION% = async (args: z.infer<typeof %ARGS_SCHEMA%>): Promise<void>
95
95
 
96
96
  const {%RS_FUNCTION%} = await getSatelliteExtendedActor<SatelliteActor>({idlFactory});
97
97
  await %RS_FUNCTION%(idlArgs);
98
- };`,St=`
98
+ };`,_t=`
99
99
  %RESULT_ZOD%
100
100
 
101
101
  const %JS_FUNCTION% = async (): Promise<z.infer<typeof %RESULT_SCHEMA%>> => {
@@ -104,11 +104,11 @@ const %JS_FUNCTION% = async (): Promise<z.infer<typeof %RESULT_SCHEMA%>> => {
104
104
 
105
105
  const result = recursiveFromNullable({schema: %RESULT_SCHEMA%, value: idlResult});
106
106
  return %RESULT_SCHEMA%.parse(result);
107
- };`,Tt=`
107
+ };`,St=`
108
108
  const %JS_FUNCTION% = async (): Promise<void> => {
109
109
  const {%RS_FUNCTION%} = await getSatelliteExtendedActor<SatelliteActor>({idlFactory});
110
110
  await %RS_FUNCTION%();
111
- };`;var Xr=`// This file was automatically generated by the Juno CLI.
111
+ };`;var en=`// This file was automatically generated by the Juno CLI.
112
112
  // Any modifications may be overwritten.
113
113
 
114
114
  /* eslint-disable */
@@ -118,51 +118,51 @@ const %JS_FUNCTION% = async (): Promise<void> => {
118
118
 
119
119
  %FUNCTIONS%
120
120
 
121
- %NAMESPACE%`,At=({functions:r,transformerOptions:{coreLib:e,outputLanguage:t}})=>{let n=r.map(([o,a])=>en({jsFnName:o,fn:a,outputLanguage:t})).join(`
121
+ %NAMESPACE%`,Tt=({functions:r,transformerOptions:{coreLib:e,outputLanguage:t}})=>{let n=r.map(([o,a])=>tn({jsFnName:o,fn:a,outputLanguage:t})).join(`
122
122
 
123
123
  `).trim(),s=r.map(([o,a])=>o).join(`,
124
- `),i=Ae.replace("%FUNCTION_NAMESPACE%",Te).replace("%JS_FUNCTIONS%",s);return Xr.replace("%IMPORTS%",t==="js"?ht:gt).replace("%CORE_LIB%",e??"core").replace("%FUNCTIONS%",n).replace("%NAMESPACE%",i)},en=({fn:r,jsFnName:e,outputLanguage:t})=>{let n=`${"App"}${Qr(e)}`,s="args"in r?De({id:n,schema:r.args,suffix:"Args"}):void 0,i="result"in r?De({id:n,schema:r.result,suffix:"Result"}):void 0,a=Ne(s)&&Ne(i)?t==="js"?mt:wt:Ne(s)?t==="js"?yt:_t:Ne(i)?t==="js"?bt:St:t==="js"?xt:Tt,c=`${"App".toLowerCase()}_${Yr(e)}`;return a.replace("%JS_FUNCTION%",e).replaceAll("%RS_FUNCTION%",c).replaceAll("%ARGS_SCHEMA%",s?.baseName?`${s.baseName}Schema`:"").replaceAll("%ARGS_ZOD%",s?.code??"").replaceAll("%RESULT_SCHEMA%",i?.baseName?`${i.baseName}Schema`:"").replaceAll("%RESULT_ZOD%",i?.code??"").trim()};var xs=async({functions:r,outputFile:e,transformerOptions:t})=>{let n=At({functions:r,transformerOptions:t});await tn(e,n,"utf-8")};import{capitalize as rn}from"@junobuild/utils";var X=r=>{switch(r.kind){case"text":return"text";case"bool":return"bool";case"float64":return"float64";case"int32":return"int32";case"nat":return"nat";case"principal":return"principal";case"uint8array":return"blob";case"opt":return`opt ${X(r.inner)}`;case"vec":return`vec ${X(r.inner)}`;case"record":return r.fields.length===0?"record {}":`record { ${r.fields.map(e=>`${e.name} : ${X(e.type)}`).join("; ")} }`;case"tuple":return`record { ${r.members.map(X).join("; ")} }`;case"indexedTuple":return`record { ${r.members.map((e,t)=>`${t} : ${X(e)}`).join("; ")} }`;case"variant":return`variant { ${r.tags.join("; ")} }`;case"variantRecords":return`variant { ${r.members.map(X).join("; ")} }`}},nn=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let s=`${rn(r)}${n}`;return{baseName:s,code:`type ${s} = ${X(t?{kind:"opt",inner:e}:e)};`}},ze=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return nn({...n,suffix:t})};var T={};Ar(T,{Bool:()=>Jt,BoolClass:()=>ke,ConstructType:()=>O,Empty:()=>zt,EmptyClass:()=>xe,FixedIntClass:()=>H,FixedNatClass:()=>U,Float32:()=>Qt,Float64:()=>Yt,FloatClass:()=>_e,Func:()=>hr,FuncClass:()=>re,Int:()=>Zt,Int16:()=>er,Int32:()=>tr,Int64:()=>rr,Int8:()=>Xt,IntClass:()=>ge,Nat:()=>Kt,Nat16:()=>sr,Nat32:()=>ir,Nat64:()=>or,Nat8:()=>nr,NatClass:()=>we,Null:()=>Wt,NullClass:()=>ee,Opt:()=>lr,OptClass:()=>Y,PrimitiveType:()=>v,Principal:()=>ar,PrincipalClass:()=>je,Rec:()=>pr,RecClass:()=>C,Record:()=>fr,RecordClass:()=>te,Reserved:()=>Gt,ReservedClass:()=>$,Service:()=>mr,ServiceClass:()=>de,Text:()=>qt,TextClass:()=>Le,Tuple:()=>cr,TupleClass:()=>Ve,Type:()=>ue,Unknown:()=>bn,UnknownClass:()=>Be,Variant:()=>dr,VariantClass:()=>fe,Vec:()=>ur,VecClass:()=>le,Visitor:()=>et,decode:()=>yn,encode:()=>mn,resetSubtypeCache:()=>tt,subtype:()=>nt});var Ee="abcdefghijklmnopqrstuvwxyz234567",ce=Object.create(null);for(let r=0;r<Ee.length;r++)ce[Ee[r]]=r;ce[0]=ce.o;ce[1]=ce.i;function Nt(r){let e=0,t=0,n="";function s(i){return e<0?t|=i>>-e:t=i<<e&248,e>3?(e-=8,1):(e<4&&(n+=Ee[t>>3],e+=5),0)}for(let i=0;i<r.length;)i+=s(r[i]);return n+(e<0?Ee[t>>3]:"")}function Et(r){let e=0,t=0,n=new Uint8Array(r.length*4/3|0),s=0;function i(o){let a=ce[o.toLowerCase()];if(a===void 0)throw new Error(`Invalid character: ${JSON.stringify(o)}`);a<<=3,t|=a>>>e,e+=5,e>=8&&(n[s++]=t,e-=8,e>0?t=a<<5-e&255:t=0)}for(let o of r)i(o);return n.slice(0,s)}var sn=new Uint32Array([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117]);function vt(r){let e=-1;for(let t=0;t<r.length;t++){let s=(r[t]^e)&255;e=sn[s]^e>>>8}return(e^-1)>>>0}function on(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function me(r,...e){if(!on(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function Ge(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function It(r,e){me(r);let t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}function ye(...r){for(let e=0;e<r.length;e++)r[e].fill(0)}function Ce(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function R(r,e){return r<<32-e|r>>>e}var Rt=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",an=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function Ut(r){if(me(r),Rt)return r.toHex();let e="";for(let t=0;t<r.length;t++)e+=an[r[t]];return e}var k={_0:48,_9:57,A:65,F:70,a:97,f:102};function Ct(r){if(r>=k._0&&r<=k._9)return r-k._0;if(r>=k.A&&r<=k.F)return r-(k.A-10);if(r>=k.a&&r<=k.f)return r-(k.a-10)}function Ot(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);if(Rt)return Uint8Array.fromHex(r);let e=r.length,t=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(t);for(let s=0,i=0;s<t;s++,i+=2){let o=Ct(r.charCodeAt(i)),a=Ct(r.charCodeAt(i+1));if(o===void 0||a===void 0){let c=r[i]+r[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}n[s]=o*16+a}return n}function cn(r){if(typeof r!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(r))}function Je(r){return typeof r=="string"&&(r=cn(r)),me(r),r}var ve=class{};function $t(r){let e=n=>r().update(Je(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function un(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let s=BigInt(32),i=BigInt(4294967295),o=Number(t>>s&i),a=Number(t&i),c=n?4:0,u=n?0:4;r.setUint32(e+c,o,n),r.setUint32(e+u,a,n)}function Ft(r,e,t){return r&e^~r&t}function Bt(r,e,t){return r&e^r&t^e&t}var Ie=class extends ve{constructor(e,t,n,s){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=s,this.buffer=new Uint8Array(e),this.view=Ce(this.buffer)}update(e){Ge(this),e=Je(e),me(e);let{view:t,buffer:n,blockLen:s}=this,i=e.length;for(let o=0;o<i;){let a=Math.min(s-this.pos,i-o);if(a===s){let c=Ce(e);for(;s<=i-o;o+=s)this.process(c,o);continue}n.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===s&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ge(this),It(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:s,isLE:i}=this,{pos:o}=this;t[o++]=128,ye(this.buffer.subarray(o)),this.padOffset>s-o&&(this.process(n,0),o=0);for(let f=o;f<s;f++)t[f]=0;un(n,s-8,BigInt(this.length*8),i),this.process(n,0);let a=Ce(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,h=this.get();if(u>h.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)a.setUint32(4*f,h[f],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:s,finished:i,destroyed:o,pos:a}=this;return e.destroyed=o,e.finished=i,e.length=s,e.pos=a,s%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},L=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),V=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]);var ln=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Z=new Uint32Array(64),We=class extends Ie{constructor(e=32){super(64,e,8,!1),this.A=L[0]|0,this.B=L[1]|0,this.C=L[2]|0,this.D=L[3]|0,this.E=L[4]|0,this.F=L[5]|0,this.G=L[6]|0,this.H=L[7]|0}get(){let{A:e,B:t,C:n,D:s,E:i,F:o,G:a,H:c}=this;return[e,t,n,s,i,o,a,c]}set(e,t,n,s,i,o,a,c){this.A=e|0,this.B=t|0,this.C=n|0,this.D=s|0,this.E=i|0,this.F=o|0,this.G=a|0,this.H=c|0}process(e,t){for(let f=0;f<16;f++,t+=4)Z[f]=e.getUint32(t,!1);for(let f=16;f<64;f++){let l=Z[f-15],p=Z[f-2],b=R(l,7)^R(l,18)^l>>>3,_=R(p,17)^R(p,19)^p>>>10;Z[f]=_+Z[f-7]+b+Z[f-16]|0}let{A:n,B:s,C:i,D:o,E:a,F:c,G:u,H:h}=this;for(let f=0;f<64;f++){let l=R(a,6)^R(a,11)^R(a,25),p=h+l+Ft(a,c,u)+ln[f]+Z[f]|0,_=(R(n,2)^R(n,13)^R(n,22))+Bt(n,s,i)|0;h=u,u=c,c=a,a=o+p|0,o=i,i=s,s=n,n=p+_|0}n=n+this.A|0,s=s+this.B|0,i=i+this.C|0,o=o+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,h=h+this.H|0,this.set(n,s,i,o,a,c,u,h)}roundClean(){ye(Z)}destroy(){this.set(0,0,0,0,0,0,0,0),ye(this.buffer)}},qe=class extends We{constructor(){super(28),this.A=V[0]|0,this.B=V[1]|0,this.C=V[2]|0,this.D=V[3]|0,this.E=V[4]|0,this.F=V[5]|0,this.G=V[6]|0,this.H=V[7]|0}};var kt=$t(()=>new qe);var Re="__principal__",fn=2,Lt=4,dn="aaaaa-aa",Ue=class r{static anonymous(){return new this(new Uint8Array([Lt]))}static managementCanister(){return this.fromText(dn)}static selfAuthenticating(e){let t=kt(e);return new this(new Uint8Array([...t,fn]))}static from(e){if(typeof e=="string")return r.fromText(e);if(Object.getPrototypeOf(e)===Uint8Array.prototype)return new r(e);if(r.isPrincipal(e))return new r(e._arr);throw new Error(`Impossible to convert ${JSON.stringify(e)} to Principal.`)}static fromHex(e){return new this(Ot(e))}static fromText(e){let t=e;if(e.includes(Re)){let o=JSON.parse(e);Re in o&&(t=o[Re])}let n=t.toLowerCase().replace(/-/g,""),s=Et(n);s=s.slice(4,s.length);let i=new this(s);if(i.toText()!==t)throw new Error(`Principal "${i.toText()}" does not have a valid checksum (original value "${t}" may not be a valid Principal ID).`);return i}static fromUint8Array(e){return new this(e)}static isPrincipal(e){return e instanceof r||typeof e=="object"&&e!==null&&"_isPrincipal"in e&&e._isPrincipal===!0&&"_arr"in e&&e._arr instanceof Uint8Array}constructor(e){this._arr=e,this._isPrincipal=!0}isAnonymous(){return this._arr.byteLength===1&&this._arr[0]===Lt}toUint8Array(){return this._arr}toHex(){return Ut(this._arr).toUpperCase()}toText(){let e=new ArrayBuffer(4);new DataView(e).setUint32(0,vt(this._arr));let n=new Uint8Array(e),s=new Uint8Array([...n,...this._arr]),o=Nt(s).match(/.{1,5}/g);if(!o)throw new Error;return o.join("-")}toString(){return this.toText()}toJSON(){return{[Re]:this.toText()}}compareTo(e){for(let t=0;t<Math.min(this._arr.length,e._arr.length);t++){if(this._arr[t]<e._arr[t])return"lt";if(this._arr[t]>e._arr[t])return"gt"}return this._arr.length<e._arr.length?"lt":this._arr.length>e._arr.length?"gt":"eq"}ltEq(e){let t=this.compareTo(e);return t=="lt"||t=="eq"}gtEq(e){let t=this.compareTo(e);return t=="gt"||t=="eq"}};function m(...r){let e=new Uint8Array(r.reduce((n,s)=>n+s.byteLength,0)),t=0;for(let n of r)e.set(n,t),t+=n.byteLength;return e}var j=class{save(){return this._view}restore(e){if(!(e instanceof Uint8Array))throw new Error("Checkpoint must be a Uint8Array");this._view=e}constructor(e,t=e?.byteLength||0){if(e&&!(e instanceof Uint8Array))try{e=Vt(e)}catch{throw new Error("Buffer must be a Uint8Array")}if(t<0||!Number.isInteger(t))throw new Error("Length must be a non-negative integer");if(e&&t>e.byteLength)throw new Error("Length cannot exceed buffer length");this._buffer=e||new Uint8Array(0),this._view=new Uint8Array(this._buffer.buffer,0,t)}get buffer(){return this._view.slice()}get byteLength(){return this._view.byteLength}read(e){let t=this._view.subarray(0,e);return this._view=this._view.subarray(e),t.slice()}readUint8(){if(this._view.byteLength===0)return;let e=this._view[0];return this._view=this._view.subarray(1),e}write(e){if(!(e instanceof Uint8Array))throw new Error("Buffer must be a Uint8Array");let t=this._view.byteLength;this._view.byteOffset+this._view.byteLength+e.byteLength>=this._buffer.byteLength?this.alloc(e.byteLength):this._view=new Uint8Array(this._buffer.buffer,this._view.byteOffset,this._view.byteLength+e.byteLength),this._view.set(e,t)}get end(){return this._view.byteLength===0}alloc(e){if(e<=0||!Number.isInteger(e))throw new Error("Amount must be a positive integer");let t=new Uint8Array((this._buffer.byteLength+e)*1.2|0),n=new Uint8Array(t.buffer,0,this._view.byteLength+e);n.set(this._view),this._buffer=t,this._view=n}};function Vt(r){if(!r)throw new Error("Input cannot be null or undefined");return r instanceof Uint8Array?r:r instanceof ArrayBuffer?new Uint8Array(r):Array.isArray(r)?new Uint8Array(r):"buffer"in r?Vt(r.buffer):new Uint8Array(r)}function jt(r){if(!(r instanceof Uint8Array))throw new Error("Input must be a Uint8Array");return new DataView(r.buffer,r.byteOffset,r.byteLength)}function pn(r){let t=new TextEncoder().encode(r),n=0;for(let s of t)n=(n*223+s)%2**32;return n}function N(r){if(/^_\d+_$/.test(r)||/^_0x[0-9a-fA-F]+_$/.test(r)){let e=+r.slice(1,-1);if(Number.isSafeInteger(e)&&e>=0&&e<2**32)return e}return pn(r)}function Ze(r){let e=BigInt(r);if(r<=0)throw new RangeError("Input must be positive");return e.toString(2).length-1}function Oe(r){let e=BigInt(r);if(r<0)throw new RangeError("Input must be non-negative");return BigInt(1)<<e}function Mt(){throw new Error("unexpected end of buffer")}function Q(r,e){return r.byteLength<e&&Mt(),r.read(e)}function K(r){let e=r.readUint8();return e===void 0&&Mt(),e}function g(r){if(typeof r=="number"&&(r=BigInt(r)),r<BigInt(0))throw new Error("Cannot leb encode negative values.");let e=(r===BigInt(0)?0:Ze(r))+1,t=new j(new Uint8Array(e),0);for(;;){let n=Number(r&BigInt(127));if(r/=BigInt(128),r===BigInt(0)){t.write(new Uint8Array([n]));break}else t.write(new Uint8Array([n|128]))}return t.buffer}function S(r){let e=BigInt(1),t=BigInt(0),n;do n=K(r),t+=BigInt(n&127).valueOf()*e,e*=BigInt(128);while(n>=128);return t}function w(r){typeof r=="number"&&(r=BigInt(r));let e=r<BigInt(0);e&&(r=-r-BigInt(1));let t=(r===BigInt(0)?0:Ze(r))+1,n=new j(new Uint8Array(t),0);for(;;){let i=s(r);if(r/=BigInt(128),e&&r===BigInt(0)&&(i&64)!==0||!e&&r===BigInt(0)&&(i&64)===0){n.write(new Uint8Array([i]));break}else n.write(new Uint8Array([i|128]))}function s(i){let o=i%BigInt(128);return Number(e?BigInt(128)-o-BigInt(1):o)}return n.buffer}function M(r){let e=new Uint8Array(r.buffer),t=0;for(;t<e.byteLength;t++)if(e[t]<128){if((e[t]&64)===0)return S(r);break}let n=new Uint8Array(Q(r,t+1)),s=BigInt(0);for(let i=n.byteLength-1;i>=0;i--)s=s*BigInt(128)+BigInt(128-(n[i]&127)-1);return-s-BigInt(1)}function Pt(r,e){if(BigInt(r)<BigInt(0))throw new Error("Cannot write negative values.");return Ke(r,e)}function Ke(r,e){r=BigInt(r);let t=new j(new Uint8Array(Math.min(1,e)),0),n=0,s=BigInt(256),i=BigInt(0),o=Number(r%s);for(t.write(new Uint8Array([o]));++n<e;)r<0&&i===BigInt(0)&&o!==0&&(i=BigInt(1)),o=Number((r/s-i)%BigInt(256)),t.write(new Uint8Array([o])),s*=BigInt(256);return t.buffer}function Qe(r,e){if(e<=0||!Number.isInteger(e))throw new Error("Byte length must be a positive integer");let t=BigInt(K(r)),n=BigInt(1),s=0;for(;++s<e;){n*=BigInt(256);let i=BigInt(K(r));t=t+n*i}return t}function Ht(r,e){if(e<=0||!Number.isInteger(e))throw new Error("Byte length must be a positive integer");let t=Qe(r,e),n=BigInt(2)**(BigInt(8)*BigInt(e-1)+BigInt(7));return t>=n&&(t-=n*BigInt(2)),t}var y;(function(r){r[r.Null=-1]="Null",r[r.Bool=-2]="Bool",r[r.Nat=-3]="Nat",r[r.Int=-4]="Int",r[r.Float32=-13]="Float32",r[r.Float64=-14]="Float64",r[r.Text=-15]="Text",r[r.Reserved=-16]="Reserved",r[r.Empty=-17]="Empty",r[r.Opt=-18]="Opt",r[r.Vector=-19]="Vector",r[r.Record=-20]="Record",r[r.Variant=-21]="Variant",r[r.Func=-22]="Func",r[r.Service=-23]="Service",r[r.Principal=-24]="Principal"})(y||(y={}));var $e="DIDL",hn=new TextEncoder().encode($e),Dt=400;function be(r,e,t){return r.map((n,s)=>t(n,e[s]))}var Xe=class{constructor(){this._typs=[],this._idx=new Map,this._idxRefCount=new Map}has(e){return this._idx.has(e.name)}add(e,t){let n=this._typs.length;this._idx.set(e.name,n),this._idxRefCount.set(n,1),this._typs.push(t)}merge(e,t){let n=this._idx.get(e.name),s=this._idx.get(t);if(n===void 0)throw new Error("Missing type index for "+e);if(s===void 0)throw new Error("Missing type index for "+t);this._typs[n]=this._typs[s];let i=this._getIdxRefCount(n),o=this._getIdxRefCount(s);this._idxRefCount.set(n,i+o),this._idx.set(t,n),this._idxRefCount.set(s,0),this._compactFromEnd()}_getIdxRefCount(e){return this._idxRefCount.get(e)||0}_compactFromEnd(){for(;this._typs.length>0;){let e=this._typs.length-1;if(this._getIdxRefCount(e)>0)break;this._typs.pop(),this._idxRefCount.delete(e)}}encode(){let e=g(this._typs.length),t=m(...this._typs);return m(e,t)}indexOf(e){if(!this._idx.has(e))throw new Error("Missing type index for "+e);return w(this._idx.get(e)||0)}},et=class{visitType(e,t){throw new Error("Not implemented")}visitPrimitive(e,t){return this.visitType(e,t)}visitEmpty(e,t){return this.visitPrimitive(e,t)}visitBool(e,t){return this.visitPrimitive(e,t)}visitNull(e,t){return this.visitPrimitive(e,t)}visitReserved(e,t){return this.visitPrimitive(e,t)}visitText(e,t){return this.visitPrimitive(e,t)}visitNumber(e,t){return this.visitPrimitive(e,t)}visitInt(e,t){return this.visitNumber(e,t)}visitNat(e,t){return this.visitNumber(e,t)}visitFloat(e,t){return this.visitPrimitive(e,t)}visitFixedInt(e,t){return this.visitNumber(e,t)}visitFixedNat(e,t){return this.visitNumber(e,t)}visitPrincipal(e,t){return this.visitPrimitive(e,t)}visitConstruct(e,t){return this.visitType(e,t)}visitVec(e,t,n){return this.visitConstruct(e,n)}visitOpt(e,t,n){return this.visitConstruct(e,n)}visitRecord(e,t,n){return this.visitConstruct(e,n)}visitTuple(e,t,n){let s=t.map((i,o)=>[`_${o}_`,i]);return this.visitRecord(e,s,n)}visitVariant(e,t,n){return this.visitConstruct(e,n)}visitRec(e,t,n){return this.visitConstruct(t,n)}visitFunc(e,t){return this.visitConstruct(e,t)}visitService(e,t){return this.visitConstruct(e,t)}},d;(function(r){r.EmptyClass="__IDL_EmptyClass__",r.UnknownClass="__IDL_UnknownClass__",r.BoolClass="__IDL_BoolClass__",r.NullClass="__IDL_NullClass__",r.ReservedClass="__IDL_ReservedClass__",r.TextClass="__IDL_TextClass__",r.IntClass="__IDL_IntClass__",r.NatClass="__IDL_NatClass__",r.FloatClass="__IDL_FloatClass__",r.FixedIntClass="__IDL_FixedIntClass__",r.FixedNatClass="__IDL_FixedNatClass__",r.VecClass="__IDL_VecClass__",r.OptClass="__IDL_OptClass__",r.RecordClass="__IDL_RecordClass__",r.TupleClass="__IDL_TupleClass__",r.VariantClass="__IDL_VariantClass__",r.RecClass="__IDL_RecClass__",r.PrincipalClass="__IDL_PrincipalClass__",r.FuncClass="__IDL_FuncClass__",r.ServiceClass="__IDL_ServiceClass__"})(d||(d={}));var ue=class{display(){return this.name}valueToString(e){return x(e)}buildTypeTable(e){e.has(this)||this._buildTypeTableImpl(e)}},v=class extends ue{checkType(e){if(this.name!==e.name)throw new Error(`type mismatch: type on the wire ${e.name}, expect type ${this.name}`);return e}_buildTypeTableImpl(e){}},O=class extends ue{checkType(e){if(e instanceof C){let t=e.getType();if(typeof t>"u")throw new Error("type mismatch with uninitialized type");return t}throw new Error(`type mismatch: type on the wire ${e.name}, expect type ${this.name}`)}encodeType(e){return e.indexOf(this.name)}},xe=class extends v{get typeName(){return d.EmptyClass}static[Symbol.hasInstance](e){return e.typeName===d.EmptyClass}accept(e,t){return e.visitEmpty(this,t)}covariant(e){throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(){throw new Error("Empty cannot appear as a function argument")}valueToString(){throw new Error("Empty cannot appear as a value")}encodeType(){return w(y.Empty)}decodeValue(){throw new Error("Empty cannot appear as an output")}get name(){return"empty"}},Be=class extends ue{get typeName(){return d.UnknownClass}static[Symbol.hasInstance](e){return e.typeName===d.UnknownClass}checkType(e){throw new Error("Method not implemented for unknown.")}accept(e,t){throw e.visitType(this,t)}covariant(e){throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(){throw new Error("Unknown cannot appear as a function argument")}valueToString(){throw new Error("Unknown cannot appear as a value")}encodeType(){throw new Error("Unknown cannot be serialized")}decodeValue(e,t){let n=t.decodeValue(e,t);Object(n)!==n&&(n=Object(n));let s;return t instanceof C?s=()=>t.getType():s=()=>t,Object.defineProperty(n,"type",{value:s,writable:!0,enumerable:!1,configurable:!0}),n}_buildTypeTableImpl(){throw new Error("Unknown cannot be serialized")}get name(){return"Unknown"}},ke=class extends v{get typeName(){return d.BoolClass}static[Symbol.hasInstance](e){return e.typeName===d.BoolClass}accept(e,t){return e.visitBool(this,t)}covariant(e){if(typeof e=="boolean")return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return new Uint8Array([e?1:0])}encodeType(){return w(y.Bool)}decodeValue(e,t){switch(this.checkType(t),K(e)){case 0:return!1;case 1:return!0;default:throw new Error("Boolean value out of range")}}get name(){return"bool"}},ee=class extends v{get typeName(){return d.NullClass}static[Symbol.hasInstance](e){return e.typeName===d.NullClass}accept(e,t){return e.visitNull(this,t)}covariant(e){if(e===null)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(){return new Uint8Array(0)}encodeType(){return w(y.Null)}decodeValue(e,t){return this.checkType(t),null}get name(){return"null"}},$=class extends v{get typeName(){return d.ReservedClass}static[Symbol.hasInstance](e){return e.typeName===d.ReservedClass}accept(e,t){return e.visitReserved(this,t)}covariant(e){return!0}encodeValue(){return new Uint8Array(0)}encodeType(){return w(y.Reserved)}decodeValue(e,t){return t.name!==this.name&&t.decodeValue(e,t),null}get name(){return"reserved"}},Le=class extends v{get typeName(){return d.TextClass}static[Symbol.hasInstance](e){return e.typeName===d.TextClass}accept(e,t){return e.visitText(this,t)}covariant(e){if(typeof e=="string")return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=new TextEncoder().encode(e),n=g(t.byteLength);return m(n,t)}encodeType(){return w(y.Text)}decodeValue(e,t){this.checkType(t);let n=S(e),s=Q(e,Number(n));return new TextDecoder("utf8",{fatal:!0}).decode(s)}get name(){return"text"}valueToString(e){return'"'+e+'"'}},ge=class extends v{get typeName(){return d.IntClass}static[Symbol.hasInstance](e){return e.typeName===d.IntClass}accept(e,t){return e.visitInt(this,t)}covariant(e){if(typeof e=="bigint"||Number.isInteger(e))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return w(e)}encodeType(){return w(y.Int)}decodeValue(e,t){return this.checkType(t),M(e)}get name(){return"int"}valueToString(e){return e.toString()}},we=class extends v{get typeName(){return d.NatClass}static[Symbol.hasInstance](e){return e.typeName===d.NatClass}accept(e,t){return e.visitNat(this,t)}covariant(e){if(typeof e=="bigint"&&e>=BigInt(0)||Number.isInteger(e)&&e>=0)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return g(e)}encodeType(){return w(y.Nat)}decodeValue(e,t){return this.checkType(t),S(e)}get name(){return"nat"}valueToString(e){return e.toString()}},_e=class extends v{get typeName(){return d.FloatClass}static[Symbol.hasInstance](e){return e.typeName===d.FloatClass}constructor(e){if(super(),this._bits=e,e!==32&&e!==64)throw new Error("not a valid float type")}accept(e,t){return e.visitFloat(this,t)}covariant(e){if(typeof e=="number"||e instanceof Number)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=new ArrayBuffer(this._bits/8),n=new DataView(t);return this._bits===32?n.setFloat32(0,e,!0):n.setFloat64(0,e,!0),new Uint8Array(t)}encodeType(){let e=this._bits===32?y.Float32:y.Float64;return w(e)}decodeValue(e,t){this.checkType(t);let n=Q(e,this._bits/8),s=jt(n);return this._bits===32?s.getFloat32(0,!0):s.getFloat64(0,!0)}get name(){return"float"+this._bits}valueToString(e){return e.toString()}},H=class extends v{get typeName(){return d.FixedIntClass}static[Symbol.hasInstance](e){return e.typeName===d.FixedIntClass}constructor(e){super(),this._bits=e}accept(e,t){return e.visitFixedInt(this,t)}covariant(e){let t=Oe(this._bits-1)*BigInt(-1),n=Oe(this._bits-1)-BigInt(1),s=!1;if(typeof e=="bigint")s=e>=t&&e<=n;else if(Number.isInteger(e)){let i=BigInt(e);s=i>=t&&i<=n}else s=!1;if(s)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return Ke(e,this._bits/8)}encodeType(){let e=Math.log2(this._bits)-3;return w(-9-e)}decodeValue(e,t){this.checkType(t);let n=Ht(e,this._bits/8);return this._bits<=32?Number(n):n}get name(){return`int${this._bits}`}valueToString(e){return e.toString()}},U=class extends v{get typeName(){return d.FixedNatClass}static[Symbol.hasInstance](e){return e.typeName===d.FixedNatClass}constructor(e){super(),this._bits=e}accept(e,t){return e.visitFixedNat(this,t)}covariant(e){let t=Oe(this._bits),n=!1;if(typeof e=="bigint"&&e>=BigInt(0)?n=e<t:Number.isInteger(e)&&e>=0?n=BigInt(e)<t:n=!1,n)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return Pt(e,this._bits/8)}encodeType(){let e=Math.log2(this._bits)-3;return w(-5-e)}decodeValue(e,t){this.checkType(t);let n=Qe(e,this._bits/8);return this._bits<=32?Number(n):n}get name(){return`nat${this._bits}`}valueToString(e){return e.toString()}},le=class r extends O{get typeName(){return d.VecClass}static[Symbol.hasInstance](e){return e.typeName===d.VecClass}constructor(e){super(),this._type=e,this._blobOptimization=!1,e instanceof U&&e._bits===8&&(this._blobOptimization=!0)}accept(e,t){return e.visitVec(this,this._type,t)}covariant(e){let t=this._type instanceof U?this._type._bits:this._type instanceof H?this._type._bits:0;if(ArrayBuffer.isView(e)&&t==e.BYTES_PER_ELEMENT*8||Array.isArray(e)&&e.every((n,s)=>{try{return this._type.covariant(n)}catch(i){throw new Error(`Invalid ${this.display()} argument:
124
+ `),i=Ae.replace("%FUNCTION_NAMESPACE%",Te).replace("%JS_FUNCTIONS%",s);return en.replace("%IMPORTS%",t==="js"?pt:xt).replace("%CORE_LIB%",e??"core").replace("%FUNCTIONS%",n).replace("%NAMESPACE%",i)},tn=({fn:r,jsFnName:e,outputLanguage:t})=>{let n=`${"App"}${Yr(e)}`,s="args"in r?De({id:n,schema:r.args,suffix:"Args"}):void 0,i="result"in r?De({id:n,schema:r.result,suffix:"Result"}):void 0,a=Ne(s)&&Ne(i)?t==="js"?ht:gt:Ne(s)?t==="js"?mt:wt:Ne(i)?t==="js"?yt:_t:t==="js"?bt:St,c=`${"App".toLowerCase()}_${Xr(e)}`;return a.replace("%JS_FUNCTION%",e).replaceAll("%RS_FUNCTION%",c).replaceAll("%ARGS_SCHEMA%",s?.baseName?`${s.baseName}Schema`:"").replaceAll("%ARGS_ZOD%",s?.code??"").replaceAll("%RESULT_SCHEMA%",i?.baseName?`${i.baseName}Schema`:"").replaceAll("%RESULT_ZOD%",i?.code??"").trim()};var _s=async({functions:r,outputFile:e,transformerOptions:t})=>{let n=Tt({functions:r,transformerOptions:t});await rn(e,n,"utf-8")};import{capitalize as nn}from"@junobuild/utils";var X=r=>{switch(r.kind){case"text":return"text";case"bool":return"bool";case"float64":return"float64";case"int32":return"int32";case"nat":return"nat";case"principal":return"principal";case"uint8array":return"blob";case"opt":return`opt ${X(r.inner)}`;case"vec":return`vec ${X(r.inner)}`;case"record":return r.fields.length===0?"record {}":`record { ${r.fields.map(e=>`${e.name} : ${X(e.type)}`).join("; ")} }`;case"tuple":return`record { ${r.members.map(X).join("; ")} }`;case"indexedTuple":return`record { ${r.members.map((e,t)=>`${t} : ${X(e)}`).join("; ")} }`;case"variant":return`variant { ${r.tags.join("; ")} }`;case"variantRecords":return`variant { ${r.members.map(X).join("; ")} }`}},sn=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let s=`${nn(r)}${n}`;return{baseName:s,code:`type ${s} = ${X(t?{kind:"opt",inner:e}:e)};`}},ze=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return sn({...n,suffix:t})};var T={};Nr(T,{Bool:()=>Gt,BoolClass:()=>ke,ConstructType:()=>$,Empty:()=>Dt,EmptyClass:()=>xe,FixedIntClass:()=>H,FixedNatClass:()=>O,Float32:()=>Kt,Float64:()=>Qt,FloatClass:()=>_e,Func:()=>pr,FuncClass:()=>re,Int:()=>qt,Int16:()=>Xt,Int32:()=>er,Int64:()=>tr,Int8:()=>Yt,IntClass:()=>ge,Nat:()=>Zt,Nat16:()=>nr,Nat32:()=>sr,Nat64:()=>ir,Nat8:()=>rr,NatClass:()=>we,Null:()=>Jt,NullClass:()=>ee,Opt:()=>ur,OptClass:()=>Y,PrimitiveType:()=>v,Principal:()=>or,PrincipalClass:()=>je,Rec:()=>dr,RecClass:()=>C,Record:()=>lr,RecordClass:()=>te,Reserved:()=>zt,ReservedClass:()=>F,Service:()=>hr,ServiceClass:()=>de,Text:()=>Wt,TextClass:()=>Le,Tuple:()=>ar,TupleClass:()=>Ve,Type:()=>ue,Unknown:()=>xn,UnknownClass:()=>Be,Variant:()=>fr,VariantClass:()=>fe,Vec:()=>cr,VecClass:()=>le,Visitor:()=>et,decode:()=>bn,encode:()=>yn,resetSubtypeCache:()=>tt,subtype:()=>nt});var Ee="abcdefghijklmnopqrstuvwxyz234567",ce=Object.create(null);for(let r=0;r<Ee.length;r++)ce[Ee[r]]=r;ce[0]=ce.o;ce[1]=ce.i;function At(r){let e=0,t=0,n="";function s(i){return e<0?t|=i>>-e:t=i<<e&248,e>3?(e-=8,1):(e<4&&(n+=Ee[t>>3],e+=5),0)}for(let i=0;i<r.length;)i+=s(r[i]);return n+(e<0?Ee[t>>3]:"")}function Nt(r){let e=0,t=0,n=new Uint8Array(r.length*4/3|0),s=0;function i(o){let a=ce[o.toLowerCase()];if(a===void 0)throw new Error(`Invalid character: ${JSON.stringify(o)}`);a<<=3,t|=a>>>e,e+=5,e>=8&&(n[s++]=t,e-=8,e>0?t=a<<5-e&255:t=0)}for(let o of r)i(o);return n.slice(0,s)}var on=new Uint32Array([0,1996959894,3993919788,2567524794,124634137,1886057615,3915621685,2657392035,249268274,2044508324,3772115230,2547177864,162941995,2125561021,3887607047,2428444049,498536548,1789927666,4089016648,2227061214,450548861,1843258603,4107580753,2211677639,325883990,1684777152,4251122042,2321926636,335633487,1661365465,4195302755,2366115317,997073096,1281953886,3579855332,2724688242,1006888145,1258607687,3524101629,2768942443,901097722,1119000684,3686517206,2898065728,853044451,1172266101,3705015759,2882616665,651767980,1373503546,3369554304,3218104598,565507253,1454621731,3485111705,3099436303,671266974,1594198024,3322730930,2970347812,795835527,1483230225,3244367275,3060149565,1994146192,31158534,2563907772,4023717930,1907459465,112637215,2680153253,3904427059,2013776290,251722036,2517215374,3775830040,2137656763,141376813,2439277719,3865271297,1802195444,476864866,2238001368,4066508878,1812370925,453092731,2181625025,4111451223,1706088902,314042704,2344532202,4240017532,1658658271,366619977,2362670323,4224994405,1303535960,984961486,2747007092,3569037538,1256170817,1037604311,2765210733,3554079995,1131014506,879679996,2909243462,3663771856,1141124467,855842277,2852801631,3708648649,1342533948,654459306,3188396048,3373015174,1466479909,544179635,3110523913,3462522015,1591671054,702138776,2966460450,3352799412,1504918807,783551873,3082640443,3233442989,3988292384,2596254646,62317068,1957810842,3939845945,2647816111,81470997,1943803523,3814918930,2489596804,225274430,2053790376,3826175755,2466906013,167816743,2097651377,4027552580,2265490386,503444072,1762050814,4150417245,2154129355,426522225,1852507879,4275313526,2312317920,282753626,1742555852,4189708143,2394877945,397917763,1622183637,3604390888,2714866558,953729732,1340076626,3518719985,2797360999,1068828381,1219638859,3624741850,2936675148,906185462,1090812512,3747672003,2825379669,829329135,1181335161,3412177804,3160834842,628085408,1382605366,3423369109,3138078467,570562233,1426400815,3317316542,2998733608,733239954,1555261956,3268935591,3050360625,752459403,1541320221,2607071920,3965973030,1969922972,40735498,2617837225,3943577151,1913087877,83908371,2512341634,3803740692,2075208622,213261112,2463272603,3855990285,2094854071,198958881,2262029012,4057260610,1759359992,534414190,2176718541,4139329115,1873836001,414664567,2282248934,4279200368,1711684554,285281116,2405801727,4167216745,1634467795,376229701,2685067896,3608007406,1308918612,956543938,2808555105,3495958263,1231636301,1047427035,2932959818,3654703836,1088359270,936918e3,2847714899,3736837829,1202900863,817233897,3183342108,3401237130,1404277552,615818150,3134207493,3453421203,1423857449,601450431,3009837614,3294710456,1567103746,711928724,3020668471,3272380065,1510334235,755167117]);function Et(r){let e=-1;for(let t=0;t<r.length;t++){let s=(r[t]^e)&255;e=on[s]^e>>>8}return(e^-1)>>>0}function an(r){return r instanceof Uint8Array||ArrayBuffer.isView(r)&&r.constructor.name==="Uint8Array"}function me(r,...e){if(!an(r))throw new Error("Uint8Array expected");if(e.length>0&&!e.includes(r.length))throw new Error("Uint8Array expected of length "+e+", got length="+r.length)}function Ge(r,e=!0){if(r.destroyed)throw new Error("Hash instance has been destroyed");if(e&&r.finished)throw new Error("Hash#digest() has already been called")}function Ct(r,e){me(r);let t=e.outputLen;if(r.length<t)throw new Error("digestInto() expects output buffer of length at least "+t)}function ye(...r){for(let e=0;e<r.length;e++)r[e].fill(0)}function Ce(r){return new DataView(r.buffer,r.byteOffset,r.byteLength)}function R(r,e){return r<<32-e|r>>>e}var It=typeof Uint8Array.from([]).toHex=="function"&&typeof Uint8Array.fromHex=="function",cn=Array.from({length:256},(r,e)=>e.toString(16).padStart(2,"0"));function Rt(r){if(me(r),It)return r.toHex();let e="";for(let t=0;t<r.length;t++)e+=cn[r[t]];return e}var k={_0:48,_9:57,A:65,F:70,a:97,f:102};function vt(r){if(r>=k._0&&r<=k._9)return r-k._0;if(r>=k.A&&r<=k.F)return r-(k.A-10);if(r>=k.a&&r<=k.f)return r-(k.a-10)}function Ut(r){if(typeof r!="string")throw new Error("hex string expected, got "+typeof r);if(It)return Uint8Array.fromHex(r);let e=r.length,t=e/2;if(e%2)throw new Error("hex string expected, got unpadded hex of length "+e);let n=new Uint8Array(t);for(let s=0,i=0;s<t;s++,i+=2){let o=vt(r.charCodeAt(i)),a=vt(r.charCodeAt(i+1));if(o===void 0||a===void 0){let c=r[i]+r[i+1];throw new Error('hex string expected, got non-hex character "'+c+'" at index '+i)}n[s]=o*16+a}return n}function un(r){if(typeof r!="string")throw new Error("string expected");return new Uint8Array(new TextEncoder().encode(r))}function Je(r){return typeof r=="string"&&(r=un(r)),me(r),r}var ve=class{};function Ot(r){let e=n=>r().update(Je(n)).digest(),t=r();return e.outputLen=t.outputLen,e.blockLen=t.blockLen,e.create=()=>r(),e}function ln(r,e,t,n){if(typeof r.setBigUint64=="function")return r.setBigUint64(e,t,n);let s=BigInt(32),i=BigInt(4294967295),o=Number(t>>s&i),a=Number(t&i),c=n?4:0,u=n?0:4;r.setUint32(e+c,o,n),r.setUint32(e+u,a,n)}function $t(r,e,t){return r&e^~r&t}function Ft(r,e,t){return r&e^r&t^e&t}var Ie=class extends ve{constructor(e,t,n,s){super(),this.finished=!1,this.length=0,this.pos=0,this.destroyed=!1,this.blockLen=e,this.outputLen=t,this.padOffset=n,this.isLE=s,this.buffer=new Uint8Array(e),this.view=Ce(this.buffer)}update(e){Ge(this),e=Je(e),me(e);let{view:t,buffer:n,blockLen:s}=this,i=e.length;for(let o=0;o<i;){let a=Math.min(s-this.pos,i-o);if(a===s){let c=Ce(e);for(;s<=i-o;o+=s)this.process(c,o);continue}n.set(e.subarray(o,o+a),this.pos),this.pos+=a,o+=a,this.pos===s&&(this.process(t,0),this.pos=0)}return this.length+=e.length,this.roundClean(),this}digestInto(e){Ge(this),Ct(e,this),this.finished=!0;let{buffer:t,view:n,blockLen:s,isLE:i}=this,{pos:o}=this;t[o++]=128,ye(this.buffer.subarray(o)),this.padOffset>s-o&&(this.process(n,0),o=0);for(let f=o;f<s;f++)t[f]=0;ln(n,s-8,BigInt(this.length*8),i),this.process(n,0);let a=Ce(e),c=this.outputLen;if(c%4)throw new Error("_sha2: outputLen should be aligned to 32bit");let u=c/4,h=this.get();if(u>h.length)throw new Error("_sha2: outputLen bigger than state");for(let f=0;f<u;f++)a.setUint32(4*f,h[f],i)}digest(){let{buffer:e,outputLen:t}=this;this.digestInto(e);let n=e.slice(0,t);return this.destroy(),n}_cloneInto(e){e||(e=new this.constructor),e.set(...this.get());let{blockLen:t,buffer:n,length:s,finished:i,destroyed:o,pos:a}=this;return e.destroyed=o,e.finished=i,e.length=s,e.pos=a,s%t&&e.buffer.set(n),e}clone(){return this._cloneInto()}},L=Uint32Array.from([1779033703,3144134277,1013904242,2773480762,1359893119,2600822924,528734635,1541459225]),V=Uint32Array.from([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428]);var fn=Uint32Array.from([1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298]),Z=new Uint32Array(64),We=class extends Ie{constructor(e=32){super(64,e,8,!1),this.A=L[0]|0,this.B=L[1]|0,this.C=L[2]|0,this.D=L[3]|0,this.E=L[4]|0,this.F=L[5]|0,this.G=L[6]|0,this.H=L[7]|0}get(){let{A:e,B:t,C:n,D:s,E:i,F:o,G:a,H:c}=this;return[e,t,n,s,i,o,a,c]}set(e,t,n,s,i,o,a,c){this.A=e|0,this.B=t|0,this.C=n|0,this.D=s|0,this.E=i|0,this.F=o|0,this.G=a|0,this.H=c|0}process(e,t){for(let f=0;f<16;f++,t+=4)Z[f]=e.getUint32(t,!1);for(let f=16;f<64;f++){let l=Z[f-15],p=Z[f-2],b=R(l,7)^R(l,18)^l>>>3,_=R(p,17)^R(p,19)^p>>>10;Z[f]=_+Z[f-7]+b+Z[f-16]|0}let{A:n,B:s,C:i,D:o,E:a,F:c,G:u,H:h}=this;for(let f=0;f<64;f++){let l=R(a,6)^R(a,11)^R(a,25),p=h+l+$t(a,c,u)+fn[f]+Z[f]|0,_=(R(n,2)^R(n,13)^R(n,22))+Ft(n,s,i)|0;h=u,u=c,c=a,a=o+p|0,o=i,i=s,s=n,n=p+_|0}n=n+this.A|0,s=s+this.B|0,i=i+this.C|0,o=o+this.D|0,a=a+this.E|0,c=c+this.F|0,u=u+this.G|0,h=h+this.H|0,this.set(n,s,i,o,a,c,u,h)}roundClean(){ye(Z)}destroy(){this.set(0,0,0,0,0,0,0,0),ye(this.buffer)}},qe=class extends We{constructor(){super(28),this.A=V[0]|0,this.B=V[1]|0,this.C=V[2]|0,this.D=V[3]|0,this.E=V[4]|0,this.F=V[5]|0,this.G=V[6]|0,this.H=V[7]|0}};var Bt=Ot(()=>new qe);var Re="__principal__",dn=2,kt=4,pn="aaaaa-aa",Ue=class r{static anonymous(){return new this(new Uint8Array([kt]))}static managementCanister(){return this.fromText(pn)}static selfAuthenticating(e){let t=Bt(e);return new this(new Uint8Array([...t,dn]))}static from(e){if(typeof e=="string")return r.fromText(e);if(Object.getPrototypeOf(e)===Uint8Array.prototype)return new r(e);if(r.isPrincipal(e))return new r(e._arr);throw new Error(`Impossible to convert ${JSON.stringify(e)} to Principal.`)}static fromHex(e){return new this(Ut(e))}static fromText(e){let t=e;if(e.includes(Re)){let o=JSON.parse(e);Re in o&&(t=o[Re])}let n=t.toLowerCase().replace(/-/g,""),s=Nt(n);s=s.slice(4,s.length);let i=new this(s);if(i.toText()!==t)throw new Error(`Principal "${i.toText()}" does not have a valid checksum (original value "${t}" may not be a valid Principal ID).`);return i}static fromUint8Array(e){return new this(e)}static isPrincipal(e){return e instanceof r||typeof e=="object"&&e!==null&&"_isPrincipal"in e&&e._isPrincipal===!0&&"_arr"in e&&e._arr instanceof Uint8Array}constructor(e){this._arr=e,this._isPrincipal=!0}isAnonymous(){return this._arr.byteLength===1&&this._arr[0]===kt}toUint8Array(){return this._arr}toHex(){return Rt(this._arr).toUpperCase()}toText(){let e=new ArrayBuffer(4);new DataView(e).setUint32(0,Et(this._arr));let n=new Uint8Array(e),s=new Uint8Array([...n,...this._arr]),o=At(s).match(/.{1,5}/g);if(!o)throw new Error;return o.join("-")}toString(){return this.toText()}toJSON(){return{[Re]:this.toText()}}compareTo(e){for(let t=0;t<Math.min(this._arr.length,e._arr.length);t++){if(this._arr[t]<e._arr[t])return"lt";if(this._arr[t]>e._arr[t])return"gt"}return this._arr.length<e._arr.length?"lt":this._arr.length>e._arr.length?"gt":"eq"}ltEq(e){let t=this.compareTo(e);return t=="lt"||t=="eq"}gtEq(e){let t=this.compareTo(e);return t=="gt"||t=="eq"}};function m(...r){let e=new Uint8Array(r.reduce((n,s)=>n+s.byteLength,0)),t=0;for(let n of r)e.set(n,t),t+=n.byteLength;return e}var j=class{save(){return this._view}restore(e){if(!(e instanceof Uint8Array))throw new Error("Checkpoint must be a Uint8Array");this._view=e}constructor(e,t=e?.byteLength||0){if(e&&!(e instanceof Uint8Array))try{e=Lt(e)}catch{throw new Error("Buffer must be a Uint8Array")}if(t<0||!Number.isInteger(t))throw new Error("Length must be a non-negative integer");if(e&&t>e.byteLength)throw new Error("Length cannot exceed buffer length");this._buffer=e||new Uint8Array(0),this._view=new Uint8Array(this._buffer.buffer,0,t)}get buffer(){return this._view.slice()}get byteLength(){return this._view.byteLength}read(e){let t=this._view.subarray(0,e);return this._view=this._view.subarray(e),t.slice()}readUint8(){if(this._view.byteLength===0)return;let e=this._view[0];return this._view=this._view.subarray(1),e}write(e){if(!(e instanceof Uint8Array))throw new Error("Buffer must be a Uint8Array");let t=this._view.byteLength;this._view.byteOffset+this._view.byteLength+e.byteLength>=this._buffer.byteLength?this.alloc(e.byteLength):this._view=new Uint8Array(this._buffer.buffer,this._view.byteOffset,this._view.byteLength+e.byteLength),this._view.set(e,t)}get end(){return this._view.byteLength===0}alloc(e){if(e<=0||!Number.isInteger(e))throw new Error("Amount must be a positive integer");let t=new Uint8Array((this._buffer.byteLength+e)*1.2|0),n=new Uint8Array(t.buffer,0,this._view.byteLength+e);n.set(this._view),this._buffer=t,this._view=n}};function Lt(r){if(!r)throw new Error("Input cannot be null or undefined");return r instanceof Uint8Array?r:r instanceof ArrayBuffer?new Uint8Array(r):Array.isArray(r)?new Uint8Array(r):"buffer"in r?Lt(r.buffer):new Uint8Array(r)}function Vt(r){if(!(r instanceof Uint8Array))throw new Error("Input must be a Uint8Array");return new DataView(r.buffer,r.byteOffset,r.byteLength)}function hn(r){let t=new TextEncoder().encode(r),n=0;for(let s of t)n=(n*223+s)%2**32;return n}function N(r){if(/^_\d+_$/.test(r)||/^_0x[0-9a-fA-F]+_$/.test(r)){let e=+r.slice(1,-1);if(Number.isSafeInteger(e)&&e>=0&&e<2**32)return e}return hn(r)}function Ze(r){let e=BigInt(r);if(r<=0)throw new RangeError("Input must be positive");return e.toString(2).length-1}function Oe(r){let e=BigInt(r);if(r<0)throw new RangeError("Input must be non-negative");return BigInt(1)<<e}function jt(){throw new Error("unexpected end of buffer")}function Q(r,e){return r.byteLength<e&&jt(),r.read(e)}function K(r){let e=r.readUint8();return e===void 0&&jt(),e}function g(r){if(typeof r=="number"&&(r=BigInt(r)),r<BigInt(0))throw new Error("Cannot leb encode negative values.");let e=(r===BigInt(0)?0:Ze(r))+1,t=new j(new Uint8Array(e),0);for(;;){let n=Number(r&BigInt(127));if(r/=BigInt(128),r===BigInt(0)){t.write(new Uint8Array([n]));break}else t.write(new Uint8Array([n|128]))}return t.buffer}function S(r){let e=BigInt(1),t=BigInt(0),n;do n=K(r),t+=BigInt(n&127).valueOf()*e,e*=BigInt(128);while(n>=128);return t}function w(r){typeof r=="number"&&(r=BigInt(r));let e=r<BigInt(0);e&&(r=-r-BigInt(1));let t=(r===BigInt(0)?0:Ze(r))+1,n=new j(new Uint8Array(t),0);for(;;){let i=s(r);if(r/=BigInt(128),e&&r===BigInt(0)&&(i&64)!==0||!e&&r===BigInt(0)&&(i&64)===0){n.write(new Uint8Array([i]));break}else n.write(new Uint8Array([i|128]))}function s(i){let o=i%BigInt(128);return Number(e?BigInt(128)-o-BigInt(1):o)}return n.buffer}function M(r){let e=new Uint8Array(r.buffer),t=0;for(;t<e.byteLength;t++)if(e[t]<128){if((e[t]&64)===0)return S(r);break}let n=new Uint8Array(Q(r,t+1)),s=BigInt(0);for(let i=n.byteLength-1;i>=0;i--)s=s*BigInt(128)+BigInt(128-(n[i]&127)-1);return-s-BigInt(1)}function Mt(r,e){if(BigInt(r)<BigInt(0))throw new Error("Cannot write negative values.");return Ke(r,e)}function Ke(r,e){r=BigInt(r);let t=new j(new Uint8Array(Math.min(1,e)),0),n=0,s=BigInt(256),i=BigInt(0),o=Number(r%s);for(t.write(new Uint8Array([o]));++n<e;)r<0&&i===BigInt(0)&&o!==0&&(i=BigInt(1)),o=Number((r/s-i)%BigInt(256)),t.write(new Uint8Array([o])),s*=BigInt(256);return t.buffer}function Qe(r,e){if(e<=0||!Number.isInteger(e))throw new Error("Byte length must be a positive integer");let t=BigInt(K(r)),n=BigInt(1),s=0;for(;++s<e;){n*=BigInt(256);let i=BigInt(K(r));t=t+n*i}return t}function Pt(r,e){if(e<=0||!Number.isInteger(e))throw new Error("Byte length must be a positive integer");let t=Qe(r,e),n=BigInt(2)**(BigInt(8)*BigInt(e-1)+BigInt(7));return t>=n&&(t-=n*BigInt(2)),t}var y;(function(r){r[r.Null=-1]="Null",r[r.Bool=-2]="Bool",r[r.Nat=-3]="Nat",r[r.Int=-4]="Int",r[r.Float32=-13]="Float32",r[r.Float64=-14]="Float64",r[r.Text=-15]="Text",r[r.Reserved=-16]="Reserved",r[r.Empty=-17]="Empty",r[r.Opt=-18]="Opt",r[r.Vector=-19]="Vector",r[r.Record=-20]="Record",r[r.Variant=-21]="Variant",r[r.Func=-22]="Func",r[r.Service=-23]="Service",r[r.Principal=-24]="Principal"})(y||(y={}));var $e="DIDL",mn=new TextEncoder().encode($e),Ht=400;function be(r,e,t){return r.map((n,s)=>t(n,e[s]))}var Xe=class{constructor(){this._typs=[],this._idx=new Map,this._idxRefCount=new Map}has(e){return this._idx.has(e.name)}add(e,t){let n=this._typs.length;this._idx.set(e.name,n),this._idxRefCount.set(n,1),this._typs.push(t)}merge(e,t){let n=this._idx.get(e.name),s=this._idx.get(t);if(n===void 0)throw new Error("Missing type index for "+e);if(s===void 0)throw new Error("Missing type index for "+t);this._typs[n]=this._typs[s];let i=this._getIdxRefCount(n),o=this._getIdxRefCount(s);this._idxRefCount.set(n,i+o),this._idx.set(t,n),this._idxRefCount.set(s,0),this._compactFromEnd()}_getIdxRefCount(e){return this._idxRefCount.get(e)||0}_compactFromEnd(){for(;this._typs.length>0;){let e=this._typs.length-1;if(this._getIdxRefCount(e)>0)break;this._typs.pop(),this._idxRefCount.delete(e)}}encode(){let e=g(this._typs.length),t=m(...this._typs);return m(e,t)}indexOf(e){if(!this._idx.has(e))throw new Error("Missing type index for "+e);return w(this._idx.get(e)||0)}},et=class{visitType(e,t){throw new Error("Not implemented")}visitPrimitive(e,t){return this.visitType(e,t)}visitEmpty(e,t){return this.visitPrimitive(e,t)}visitBool(e,t){return this.visitPrimitive(e,t)}visitNull(e,t){return this.visitPrimitive(e,t)}visitReserved(e,t){return this.visitPrimitive(e,t)}visitText(e,t){return this.visitPrimitive(e,t)}visitNumber(e,t){return this.visitPrimitive(e,t)}visitInt(e,t){return this.visitNumber(e,t)}visitNat(e,t){return this.visitNumber(e,t)}visitFloat(e,t){return this.visitPrimitive(e,t)}visitFixedInt(e,t){return this.visitNumber(e,t)}visitFixedNat(e,t){return this.visitNumber(e,t)}visitPrincipal(e,t){return this.visitPrimitive(e,t)}visitConstruct(e,t){return this.visitType(e,t)}visitVec(e,t,n){return this.visitConstruct(e,n)}visitOpt(e,t,n){return this.visitConstruct(e,n)}visitRecord(e,t,n){return this.visitConstruct(e,n)}visitTuple(e,t,n){let s=t.map((i,o)=>[`_${o}_`,i]);return this.visitRecord(e,s,n)}visitVariant(e,t,n){return this.visitConstruct(e,n)}visitRec(e,t,n){return this.visitConstruct(t,n)}visitFunc(e,t){return this.visitConstruct(e,t)}visitService(e,t){return this.visitConstruct(e,t)}},d;(function(r){r.EmptyClass="__IDL_EmptyClass__",r.UnknownClass="__IDL_UnknownClass__",r.BoolClass="__IDL_BoolClass__",r.NullClass="__IDL_NullClass__",r.ReservedClass="__IDL_ReservedClass__",r.TextClass="__IDL_TextClass__",r.IntClass="__IDL_IntClass__",r.NatClass="__IDL_NatClass__",r.FloatClass="__IDL_FloatClass__",r.FixedIntClass="__IDL_FixedIntClass__",r.FixedNatClass="__IDL_FixedNatClass__",r.VecClass="__IDL_VecClass__",r.OptClass="__IDL_OptClass__",r.RecordClass="__IDL_RecordClass__",r.TupleClass="__IDL_TupleClass__",r.VariantClass="__IDL_VariantClass__",r.RecClass="__IDL_RecClass__",r.PrincipalClass="__IDL_PrincipalClass__",r.FuncClass="__IDL_FuncClass__",r.ServiceClass="__IDL_ServiceClass__"})(d||(d={}));var ue=class{display(){return this.name}valueToString(e){return x(e)}buildTypeTable(e){e.has(this)||this._buildTypeTableImpl(e)}},v=class extends ue{checkType(e){if(this.name!==e.name)throw new Error(`type mismatch: type on the wire ${e.name}, expect type ${this.name}`);return e}_buildTypeTableImpl(e){}},$=class extends ue{checkType(e){if(e instanceof C){let t=e.getType();if(typeof t>"u")throw new Error("type mismatch with uninitialized type");return t}throw new Error(`type mismatch: type on the wire ${e.name}, expect type ${this.name}`)}encodeType(e){return e.indexOf(this.name)}},xe=class extends v{get typeName(){return d.EmptyClass}static[Symbol.hasInstance](e){return e.typeName===d.EmptyClass}accept(e,t){return e.visitEmpty(this,t)}covariant(e){throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(){throw new Error("Empty cannot appear as a function argument")}valueToString(){throw new Error("Empty cannot appear as a value")}encodeType(){return w(y.Empty)}decodeValue(){throw new Error("Empty cannot appear as an output")}get name(){return"empty"}},Be=class extends ue{get typeName(){return d.UnknownClass}static[Symbol.hasInstance](e){return e.typeName===d.UnknownClass}checkType(e){throw new Error("Method not implemented for unknown.")}accept(e,t){throw e.visitType(this,t)}covariant(e){throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(){throw new Error("Unknown cannot appear as a function argument")}valueToString(){throw new Error("Unknown cannot appear as a value")}encodeType(){throw new Error("Unknown cannot be serialized")}decodeValue(e,t){let n=t.decodeValue(e,t);Object(n)!==n&&(n=Object(n));let s;return t instanceof C?s=()=>t.getType():s=()=>t,Object.defineProperty(n,"type",{value:s,writable:!0,enumerable:!1,configurable:!0}),n}_buildTypeTableImpl(){throw new Error("Unknown cannot be serialized")}get name(){return"Unknown"}},ke=class extends v{get typeName(){return d.BoolClass}static[Symbol.hasInstance](e){return e.typeName===d.BoolClass}accept(e,t){return e.visitBool(this,t)}covariant(e){if(typeof e=="boolean")return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return new Uint8Array([e?1:0])}encodeType(){return w(y.Bool)}decodeValue(e,t){switch(this.checkType(t),K(e)){case 0:return!1;case 1:return!0;default:throw new Error("Boolean value out of range")}}get name(){return"bool"}},ee=class extends v{get typeName(){return d.NullClass}static[Symbol.hasInstance](e){return e.typeName===d.NullClass}accept(e,t){return e.visitNull(this,t)}covariant(e){if(e===null)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(){return new Uint8Array(0)}encodeType(){return w(y.Null)}decodeValue(e,t){return this.checkType(t),null}get name(){return"null"}},F=class extends v{get typeName(){return d.ReservedClass}static[Symbol.hasInstance](e){return e.typeName===d.ReservedClass}accept(e,t){return e.visitReserved(this,t)}covariant(e){return!0}encodeValue(){return new Uint8Array(0)}encodeType(){return w(y.Reserved)}decodeValue(e,t){return t.name!==this.name&&t.decodeValue(e,t),null}get name(){return"reserved"}},Le=class extends v{get typeName(){return d.TextClass}static[Symbol.hasInstance](e){return e.typeName===d.TextClass}accept(e,t){return e.visitText(this,t)}covariant(e){if(typeof e=="string")return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=new TextEncoder().encode(e),n=g(t.byteLength);return m(n,t)}encodeType(){return w(y.Text)}decodeValue(e,t){this.checkType(t);let n=S(e),s=Q(e,Number(n));return new TextDecoder("utf8",{fatal:!0}).decode(s)}get name(){return"text"}valueToString(e){return'"'+e+'"'}},ge=class extends v{get typeName(){return d.IntClass}static[Symbol.hasInstance](e){return e.typeName===d.IntClass}accept(e,t){return e.visitInt(this,t)}covariant(e){if(typeof e=="bigint"||Number.isInteger(e))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return w(e)}encodeType(){return w(y.Int)}decodeValue(e,t){return this.checkType(t),M(e)}get name(){return"int"}valueToString(e){return e.toString()}},we=class extends v{get typeName(){return d.NatClass}static[Symbol.hasInstance](e){return e.typeName===d.NatClass}accept(e,t){return e.visitNat(this,t)}covariant(e){if(typeof e=="bigint"&&e>=BigInt(0)||Number.isInteger(e)&&e>=0)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return g(e)}encodeType(){return w(y.Nat)}decodeValue(e,t){return this.checkType(t),S(e)}get name(){return"nat"}valueToString(e){return e.toString()}},_e=class extends v{get typeName(){return d.FloatClass}static[Symbol.hasInstance](e){return e.typeName===d.FloatClass}constructor(e){if(super(),this._bits=e,e!==32&&e!==64)throw new Error("not a valid float type")}accept(e,t){return e.visitFloat(this,t)}covariant(e){if(typeof e=="number"||e instanceof Number)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=new ArrayBuffer(this._bits/8),n=new DataView(t);return this._bits===32?n.setFloat32(0,e,!0):n.setFloat64(0,e,!0),new Uint8Array(t)}encodeType(){let e=this._bits===32?y.Float32:y.Float64;return w(e)}decodeValue(e,t){this.checkType(t);let n=Q(e,this._bits/8),s=Vt(n);return this._bits===32?s.getFloat32(0,!0):s.getFloat64(0,!0)}get name(){return"float"+this._bits}valueToString(e){return e.toString()}},H=class extends v{get typeName(){return d.FixedIntClass}static[Symbol.hasInstance](e){return e.typeName===d.FixedIntClass}constructor(e){super(),this._bits=e}accept(e,t){return e.visitFixedInt(this,t)}covariant(e){let t=Oe(this._bits-1)*BigInt(-1),n=Oe(this._bits-1)-BigInt(1),s=!1;if(typeof e=="bigint")s=e>=t&&e<=n;else if(Number.isInteger(e)){let i=BigInt(e);s=i>=t&&i<=n}else s=!1;if(s)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return Ke(e,this._bits/8)}encodeType(){let e=Math.log2(this._bits)-3;return w(-9-e)}decodeValue(e,t){this.checkType(t);let n=Pt(e,this._bits/8);return this._bits<=32?Number(n):n}get name(){return`int${this._bits}`}valueToString(e){return e.toString()}},O=class extends v{get typeName(){return d.FixedNatClass}static[Symbol.hasInstance](e){return e.typeName===d.FixedNatClass}constructor(e){super(),this._bits=e}accept(e,t){return e.visitFixedNat(this,t)}covariant(e){let t=Oe(this._bits),n=!1;if(typeof e=="bigint"&&e>=BigInt(0)?n=e<t:Number.isInteger(e)&&e>=0?n=BigInt(e)<t:n=!1,n)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return Mt(e,this._bits/8)}encodeType(){let e=Math.log2(this._bits)-3;return w(-5-e)}decodeValue(e,t){this.checkType(t);let n=Qe(e,this._bits/8);return this._bits<=32?Number(n):n}get name(){return`nat${this._bits}`}valueToString(e){return e.toString()}},le=class r extends ${get typeName(){return d.VecClass}static[Symbol.hasInstance](e){return e.typeName===d.VecClass}constructor(e){super(),this._type=e,this._blobOptimization=!1,e instanceof O&&e._bits===8&&(this._blobOptimization=!0)}accept(e,t){return e.visitVec(this,this._type,t)}covariant(e){let t=this._type instanceof O?this._type._bits:this._type instanceof H?this._type._bits:0;if(ArrayBuffer.isView(e)&&t==e.BYTES_PER_ELEMENT*8||Array.isArray(e)&&e.every((n,s)=>{try{return this._type.covariant(n)}catch(i){throw new Error(`Invalid ${this.display()} argument:
125
125
 
126
- index ${s} -> ${i.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=g(e.length);if(this._blobOptimization)return m(t,new Uint8Array(e));if(ArrayBuffer.isView(e))if(e instanceof Int16Array||e instanceof Uint16Array){let s=new DataView(new ArrayBuffer(e.length*2));for(let i=0;i<e.length;i++)e instanceof Int16Array?s.setInt16(i*2,e[i],!0):s.setUint16(i*2,e[i],!0);return m(t,new Uint8Array(s.buffer))}else if(e instanceof Int32Array||e instanceof Uint32Array){let s=new DataView(new ArrayBuffer(e.length*4));for(let i=0;i<e.length;i++)e instanceof Int32Array?s.setInt32(i*4,e[i],!0):s.setUint32(i*4,e[i],!0);return m(t,new Uint8Array(s.buffer))}else if(e instanceof BigInt64Array||e instanceof BigUint64Array){let s=new DataView(new ArrayBuffer(e.length*8));for(let i=0;i<e.length;i++)e instanceof BigInt64Array?s.setBigInt64(i*8,e[i],!0):s.setBigUint64(i*8,e[i],!0);return m(t,new Uint8Array(s.buffer))}else return m(t,new Uint8Array(e.buffer,e.byteOffset,e.byteLength));let n=new j(new Uint8Array(t.byteLength+e.length),0);n.write(t);for(let s of e){let i=this._type.encodeValue(s);n.write(new Uint8Array(i))}return n.buffer}_buildTypeTableImpl(e){this._type.buildTypeTable(e);let t=w(y.Vector),n=this._type.encodeType(e);e.add(this,m(t,n))}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("Not a vector type");let s=Number(S(e));if(this._type instanceof U){if(this._type._bits==8)return new Uint8Array(e.read(s));if(this._type._bits==16){let o=e.read(s*2);return new Uint16Array(o.buffer,o.byteOffset,s)}if(this._type._bits==32){let o=e.read(s*4);return new Uint32Array(o.buffer,o.byteOffset,s)}if(this._type._bits==64)return new BigUint64Array(e.read(s*8).buffer)}if(this._type instanceof H){if(this._type._bits==8)return new Int8Array(e.read(s));if(this._type._bits==16){let o=e.read(s*2),a=new DataView(o.buffer,o.byteOffset,o.byteLength),c=new Int16Array(s);for(let u=0;u<s;u++)c[u]=a.getInt16(u*2,!0);return c}if(this._type._bits==32){let o=e.read(s*4),a=new DataView(o.buffer,o.byteOffset,o.byteLength),c=new Int32Array(s);for(let u=0;u<s;u++)c[u]=a.getInt32(u*4,!0);return c}if(this._type._bits==64){let o=e.read(s*8),a=new DataView(o.buffer,o.byteOffset,o.byteLength),c=new BigInt64Array(s);for(let u=0;u<s;u++)c[u]=a.getBigInt64(u*8,!0);return c}}let i=[];for(let o=0;o<s;o++)i.push(this._type.decodeValue(e,n._type));return i}get name(){return`vec ${this._type.name}`}display(){return`vec ${this._type.display()}`}valueToString(e){return"vec {"+e.map(n=>this._type.valueToString(n)).join("; ")+"}"}},Y=class r extends O{get typeName(){return d.OptClass}static[Symbol.hasInstance](e){return e.typeName===d.OptClass}constructor(e){super(),this._type=e}accept(e,t){return e.visitOpt(this,this._type,t)}covariant(e){try{if(Array.isArray(e)&&(e.length===0||e.length===1&&this._type.covariant(e[0])))return!0}catch(t){throw new Error(`Invalid ${this.display()} argument: ${x(e)}
126
+ index ${s} -> ${i.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=g(e.length);if(this._blobOptimization)return m(t,new Uint8Array(e));if(ArrayBuffer.isView(e))if(e instanceof Int16Array||e instanceof Uint16Array){let s=new DataView(new ArrayBuffer(e.length*2));for(let i=0;i<e.length;i++)e instanceof Int16Array?s.setInt16(i*2,e[i],!0):s.setUint16(i*2,e[i],!0);return m(t,new Uint8Array(s.buffer))}else if(e instanceof Int32Array||e instanceof Uint32Array){let s=new DataView(new ArrayBuffer(e.length*4));for(let i=0;i<e.length;i++)e instanceof Int32Array?s.setInt32(i*4,e[i],!0):s.setUint32(i*4,e[i],!0);return m(t,new Uint8Array(s.buffer))}else if(e instanceof BigInt64Array||e instanceof BigUint64Array){let s=new DataView(new ArrayBuffer(e.length*8));for(let i=0;i<e.length;i++)e instanceof BigInt64Array?s.setBigInt64(i*8,e[i],!0):s.setBigUint64(i*8,e[i],!0);return m(t,new Uint8Array(s.buffer))}else return m(t,new Uint8Array(e.buffer,e.byteOffset,e.byteLength));let n=new j(new Uint8Array(t.byteLength+e.length),0);n.write(t);for(let s of e){let i=this._type.encodeValue(s);n.write(new Uint8Array(i))}return n.buffer}_buildTypeTableImpl(e){this._type.buildTypeTable(e);let t=w(y.Vector),n=this._type.encodeType(e);e.add(this,m(t,n))}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("Not a vector type");let s=Number(S(e));if(this._type instanceof O){if(this._type._bits==8)return new Uint8Array(e.read(s));if(this._type._bits==16){let o=e.read(s*2);return new Uint16Array(o.buffer,o.byteOffset,s)}if(this._type._bits==32){let o=e.read(s*4);return new Uint32Array(o.buffer,o.byteOffset,s)}if(this._type._bits==64)return new BigUint64Array(e.read(s*8).buffer)}if(this._type instanceof H){if(this._type._bits==8)return new Int8Array(e.read(s));if(this._type._bits==16){let o=e.read(s*2),a=new DataView(o.buffer,o.byteOffset,o.byteLength),c=new Int16Array(s);for(let u=0;u<s;u++)c[u]=a.getInt16(u*2,!0);return c}if(this._type._bits==32){let o=e.read(s*4),a=new DataView(o.buffer,o.byteOffset,o.byteLength),c=new Int32Array(s);for(let u=0;u<s;u++)c[u]=a.getInt32(u*4,!0);return c}if(this._type._bits==64){let o=e.read(s*8),a=new DataView(o.buffer,o.byteOffset,o.byteLength),c=new BigInt64Array(s);for(let u=0;u<s;u++)c[u]=a.getBigInt64(u*8,!0);return c}}let i=[];for(let o=0;o<s;o++)i.push(this._type.decodeValue(e,n._type));return i}get name(){return`vec ${this._type.name}`}display(){return`vec ${this._type.display()}`}valueToString(e){return"vec {"+e.map(n=>this._type.valueToString(n)).join("; ")+"}"}},Y=class r extends ${get typeName(){return d.OptClass}static[Symbol.hasInstance](e){return e.typeName===d.OptClass}constructor(e){super(),this._type=e}accept(e,t){return e.visitOpt(this,this._type,t)}covariant(e){try{if(Array.isArray(e)&&(e.length===0||e.length===1&&this._type.covariant(e[0])))return!0}catch(t){throw new Error(`Invalid ${this.display()} argument: ${x(e)}
127
127
 
128
- -> ${t.message}`)}throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return e.length===0?new Uint8Array([0]):m(new Uint8Array([1]),this._type.encodeValue(e[0]))}_buildTypeTableImpl(e){this._type.buildTypeTable(e);let t=w(y.Opt),n=this._type.encodeType(e);e.add(this,m(t,n))}decodeValue(e,t){if(t instanceof ee)return[];if(t instanceof $)return[];let n=t;if(t instanceof C){let s=t.getType();if(typeof s>"u")throw new Error("type mismatch with uninitialized type");n=s}if(n instanceof r)switch(K(e)){case 0:return[];case 1:{let s=e.save();try{return[this._type.decodeValue(e,n._type)]}catch{return e.restore(s),n._type.decodeValue(e,n._type),[]}}default:throw new Error("Not an option value")}else{if(this._type instanceof ee||this._type instanceof r||this._type instanceof $)return n.decodeValue(e,n),[];{let s=e.save();try{return[this._type.decodeValue(e,t)]}catch{return e.restore(s),n.decodeValue(e,t),[]}}}}get name(){return`opt ${this._type.name}`}display(){return`opt ${this._type.display()}`}valueToString(e){return e.length===0?"null":`opt ${this._type.valueToString(e[0])}`}},te=class r extends O{get typeName(){return d.RecordClass}static[Symbol.hasInstance](e){return e.typeName===d.RecordClass||e.typeName===d.TupleClass}constructor(e={}){super(),this._fields=Object.entries(e).sort((t,n)=>N(t[0])-N(n[0]))}accept(e,t){return e.visitRecord(this,this._fields,t)}tryAsTuple(){let e=[];for(let t=0;t<this._fields.length;t++){let[n,s]=this._fields[t];if(n!==`_${t}_`)return null;e.push(s)}return e}covariant(e){if(typeof e=="object"&&this._fields.every(([t,n])=>{if(!e.hasOwnProperty(t))throw new Error(`Record is missing key "${t}".`);try{return n.covariant(e[t])}catch(s){throw new Error(`Invalid ${this.display()} argument:
128
+ -> ${t.message}`)}throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){return e.length===0?new Uint8Array([0]):m(new Uint8Array([1]),this._type.encodeValue(e[0]))}_buildTypeTableImpl(e){this._type.buildTypeTable(e);let t=w(y.Opt),n=this._type.encodeType(e);e.add(this,m(t,n))}decodeValue(e,t){if(t instanceof ee)return[];if(t instanceof F)return[];let n=t;if(t instanceof C){let s=t.getType();if(typeof s>"u")throw new Error("type mismatch with uninitialized type");n=s}if(n instanceof r)switch(K(e)){case 0:return[];case 1:{let s=e.save();try{return[this._type.decodeValue(e,n._type)]}catch{return e.restore(s),n._type.decodeValue(e,n._type),[]}}default:throw new Error("Not an option value")}else{if(this._type instanceof ee||this._type instanceof r||this._type instanceof F)return n.decodeValue(e,n),[];{let s=e.save();try{return[this._type.decodeValue(e,t)]}catch{return e.restore(s),n.decodeValue(e,t),[]}}}}get name(){return`opt ${this._type.name}`}display(){return`opt ${this._type.display()}`}valueToString(e){return e.length===0?"null":`opt ${this._type.valueToString(e[0])}`}},te=class r extends ${get typeName(){return d.RecordClass}static[Symbol.hasInstance](e){return e.typeName===d.RecordClass||e.typeName===d.TupleClass}constructor(e={}){super(),this._fields=Object.entries(e).sort((t,n)=>N(t[0])-N(n[0]))}accept(e,t){return e.visitRecord(this,this._fields,t)}tryAsTuple(){let e=[];for(let t=0;t<this._fields.length;t++){let[n,s]=this._fields[t];if(n!==`_${t}_`)return null;e.push(s)}return e}covariant(e){if(typeof e=="object"&&this._fields.every(([t,n])=>{if(!e.hasOwnProperty(t))throw new Error(`Record is missing key "${t}".`);try{return n.covariant(e[t])}catch(s){throw new Error(`Invalid ${this.display()} argument:
129
129
 
130
- field ${t} -> ${s.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=this._fields.map(([s])=>e[s]),n=be(this._fields,t,([,s],i)=>s.encodeValue(i));return m(...n)}_buildTypeTableImpl(e){this._fields.forEach(([i,o])=>o.buildTypeTable(e));let t=w(y.Record),n=g(this._fields.length),s=this._fields.map(([i,o])=>m(g(N(i)),o.encodeType(e)));e.add(this,m(t,n,m(...s)))}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("Not a record type");let s={},i=0,o=0;for(;o<n._fields.length;){let[a,c]=n._fields[o];if(i>=this._fields.length){c.decodeValue(e,c),o++;continue}let[u,h]=this._fields[i],f=N(this._fields[i][0]),l=N(a);if(f===l)s[u]=h.decodeValue(e,c),i++,o++;else if(l>f)if(h instanceof Y||h instanceof $)s[u]=[],i++;else throw new Error("Cannot find required field "+u);else c.decodeValue(e,c),o++}for(let[a,c]of this._fields.slice(i))if(c instanceof Y||c instanceof $)s[a]=[];else throw new Error("Cannot find required field "+a);return s}get fieldsAsObject(){let e={};for(let[t,n]of this._fields)e[N(t)]=n;return e}get name(){return`record {${this._fields.map(([t,n])=>t+":"+n.name).join("; ")}}`}display(){return`record {${this._fields.map(([t,n])=>t+":"+n.display()).join("; ")}}`}valueToString(e){let t=this._fields.map(([s])=>e[s]);return`record {${be(this._fields,t,([s,i],o)=>s+"="+i.valueToString(o)).join("; ")}}`}},Ve=class r extends te{get typeName(){return d.TupleClass}static[Symbol.hasInstance](e){return e.typeName===d.TupleClass}constructor(e){let t={};e.forEach((n,s)=>t["_"+s+"_"]=n),super(t),this._components=e}accept(e,t){return e.visitTuple(this,this._components,t)}covariant(e){if(Array.isArray(e)&&e.length>=this._fields.length&&this._components.every((t,n)=>{try{return t.covariant(e[n])}catch(s){throw new Error(`Invalid ${this.display()} argument:
130
+ field ${t} -> ${s.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=this._fields.map(([s])=>e[s]),n=be(this._fields,t,([,s],i)=>s.encodeValue(i));return m(...n)}_buildTypeTableImpl(e){this._fields.forEach(([i,o])=>o.buildTypeTable(e));let t=w(y.Record),n=g(this._fields.length),s=this._fields.map(([i,o])=>m(g(N(i)),o.encodeType(e)));e.add(this,m(t,n,m(...s)))}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("Not a record type");let s={},i=0,o=0;for(;o<n._fields.length;){let[a,c]=n._fields[o];if(i>=this._fields.length){c.decodeValue(e,c),o++;continue}let[u,h]=this._fields[i],f=N(this._fields[i][0]),l=N(a);if(f===l)s[u]=h.decodeValue(e,c),i++,o++;else if(l>f)if(h instanceof Y||h instanceof F)s[u]=[],i++;else throw new Error("Cannot find required field "+u);else c.decodeValue(e,c),o++}for(let[a,c]of this._fields.slice(i))if(c instanceof Y||c instanceof F)s[a]=[];else throw new Error("Cannot find required field "+a);return s}get fieldsAsObject(){let e={};for(let[t,n]of this._fields)e[N(t)]=n;return e}get name(){return`record {${this._fields.map(([t,n])=>t+":"+n.name).join("; ")}}`}display(){return`record {${this._fields.map(([t,n])=>t+":"+n.display()).join("; ")}}`}valueToString(e){let t=this._fields.map(([s])=>e[s]);return`record {${be(this._fields,t,([s,i],o)=>s+"="+i.valueToString(o)).join("; ")}}`}},Ve=class r extends te{get typeName(){return d.TupleClass}static[Symbol.hasInstance](e){return e.typeName===d.TupleClass}constructor(e){let t={};e.forEach((n,s)=>t["_"+s+"_"]=n),super(t),this._components=e}accept(e,t){return e.visitTuple(this,this._components,t)}covariant(e){if(Array.isArray(e)&&e.length>=this._fields.length&&this._components.every((t,n)=>{try{return t.covariant(e[n])}catch(s){throw new Error(`Invalid ${this.display()} argument:
131
131
 
132
- index ${n} -> ${s.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=be(this._components,e,(n,s)=>n.encodeValue(s));return m(...t)}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("not a tuple type");if(n._components.length<this._components.length)throw new Error("tuple mismatch");let s=[];for(let[i,o]of n._components.entries())i>=this._components.length?o.decodeValue(e,o):s.push(this._components[i].decodeValue(e,o));return s}display(){return`record {${this._components.map(t=>t.display()).join("; ")}}`}valueToString(e){return`record {${be(this._components,e,(n,s)=>n.valueToString(s)).join("; ")}}`}},fe=class r extends O{get typeName(){return d.VariantClass}static[Symbol.hasInstance](e){return e.typeName===d.VariantClass}constructor(e={}){super(),this._fields=Object.entries(e).sort((t,n)=>N(t[0])-N(n[0]))}accept(e,t){return e.visitVariant(this,this._fields,t)}covariant(e){if(typeof e=="object"&&Object.entries(e).length===1&&this._fields.every(([t,n])=>{try{return!e.hasOwnProperty(t)||n.covariant(e[t])}catch(s){throw new Error(`Invalid ${this.display()} argument:
132
+ index ${n} -> ${s.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=be(this._components,e,(n,s)=>n.encodeValue(s));return m(...t)}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("not a tuple type");if(n._components.length<this._components.length)throw new Error("tuple mismatch");let s=[];for(let[i,o]of n._components.entries())i>=this._components.length?o.decodeValue(e,o):s.push(this._components[i].decodeValue(e,o));return s}display(){return`record {${this._components.map(t=>t.display()).join("; ")}}`}valueToString(e){return`record {${be(this._components,e,(n,s)=>n.valueToString(s)).join("; ")}}`}},fe=class r extends ${get typeName(){return d.VariantClass}static[Symbol.hasInstance](e){return e.typeName===d.VariantClass}constructor(e={}){super(),this._fields=Object.entries(e).sort((t,n)=>N(t[0])-N(n[0]))}accept(e,t){return e.visitVariant(this,this._fields,t)}covariant(e){if(typeof e=="object"&&Object.entries(e).length===1&&this._fields.every(([t,n])=>{try{return!e.hasOwnProperty(t)||n.covariant(e[t])}catch(s){throw new Error(`Invalid ${this.display()} argument:
133
133
 
134
- variant ${t} -> ${s.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){for(let t=0;t<this._fields.length;t++){let[n,s]=this._fields[t];if(e.hasOwnProperty(n)){let i=g(t),o=s.encodeValue(e[n]);return m(i,o)}}throw Error("Variant has no data: "+e)}_buildTypeTableImpl(e){this._fields.forEach(([,i])=>{i.buildTypeTable(e)});let t=w(y.Variant),n=g(this._fields.length),s=this._fields.map(([i,o])=>m(g(N(i)),o.encodeType(e)));e.add(this,m(t,n,...s))}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("Not a variant type");let s=Number(S(e));if(s>=n._fields.length)throw Error("Invalid variant index: "+s);let[i,o]=n._fields[s];for(let[a,c]of this._fields)if(N(i)===N(a)){let u=c.decodeValue(e,o);return{[a]:u}}throw new Error("Cannot find field hash "+i)}get name(){return`variant {${this._fields.map(([t,n])=>t+":"+n.name).join("; ")}}`}display(){return`variant {${this._fields.map(([t,n])=>t+(n.name==="null"?"":`:${n.display()}`)).join("; ")}}`}valueToString(e){for(let[t,n]of this._fields)if(e.hasOwnProperty(t)){let s=n.valueToString(e[t]);return s==="null"?`variant {${t}}`:`variant {${t}=${s}}`}throw new Error("Variant has no data: "+e)}get alternativesAsObject(){let e={};for(let[t,n]of this._fields)e[N(t)]=n;return e}},C=class r extends O{constructor(){super(...arguments),this._id=r._counter++}get typeName(){return d.RecClass}static{this._counter=0}static[Symbol.hasInstance](e){return e.typeName===d.RecClass}accept(e,t){if(!this._type)throw Error("Recursive type uninitialized.");return e.visitRec(this,this._type,t)}fill(e){this._type=e}getType(){return this._type}covariant(e){if(this._type&&this._type.covariant(e))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){if(!this._type)throw Error("Recursive type uninitialized.");return this._type.encodeValue(e)}_buildTypeTableImpl(e){if(!this._type)throw Error("Recursive type uninitialized.");e.add(this,new Uint8Array([])),this._type.buildTypeTable(e),e.merge(this,this._type.name)}decodeValue(e,t){if(!this._type)throw Error("Recursive type uninitialized.");return this._type.decodeValue(e,t)}get name(){return`rec_${this._id}`}display(){if(!this._type)throw Error("Recursive type uninitialized.");return`\u03BC${this.name}.${this._type.name}`}valueToString(e){if(!this._type)throw Error("Recursive type uninitialized.");return this._type.valueToString(e)}};function rt(r){if(K(r)!==1)throw new Error("Cannot decode principal");let t=Number(S(r));return Ue.fromUint8Array(new Uint8Array(Q(r,t)))}var je=class extends v{get typeName(){return d.PrincipalClass}static[Symbol.hasInstance](e){return e.typeName===d.PrincipalClass}accept(e,t){return e.visitPrincipal(this,t)}covariant(e){if(e&&e._isPrincipal)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=e.toUint8Array(),n=g(t.byteLength);return m(new Uint8Array([1]),n,t)}encodeType(){return w(y.Principal)}decodeValue(e,t){return this.checkType(t),rt(e)}get name(){return"principal"}valueToString(e){return`${this.name} "${e.toText()}"`}},re=class extends O{get typeName(){return d.FuncClass}static[Symbol.hasInstance](e){return e.typeName===d.FuncClass}static argsToString(e,t){if(e.length!==t.length)throw new Error("arity mismatch");return"("+e.map((n,s)=>n.valueToString(t[s])).join(", ")+")"}constructor(e,t,n=[]){super(),this.argTypes=e,this.retTypes=t,this.annotations=n}accept(e,t){return e.visitFunc(this,t)}covariant(e){if(Array.isArray(e)&&e.length===2&&e[0]&&e[0]._isPrincipal&&typeof e[1]=="string")return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue([e,t]){let n=e.toUint8Array(),s=g(n.byteLength),i=m(new Uint8Array([1]),s,n),o=new TextEncoder().encode(t),a=g(o.byteLength);return m(new Uint8Array([1]),i,a,o)}_buildTypeTableImpl(e){this.argTypes.forEach(u=>u.buildTypeTable(e)),this.retTypes.forEach(u=>u.buildTypeTable(e));let t=w(y.Func),n=g(this.argTypes.length),s=m(...this.argTypes.map(u=>u.encodeType(e))),i=g(this.retTypes.length),o=m(...this.retTypes.map(u=>u.encodeType(e))),a=g(this.annotations.length),c=m(...this.annotations.map(u=>this.encodeAnnotation(u)));e.add(this,m(t,n,s,i,o,a,c))}decodeValue(e,t){let n=t instanceof C?t.getType()??t:t;if(!nt(n,this))throw new Error(`Cannot decode function reference at type ${this.display()} from wire type ${n.display()}`);if(K(e)!==1)throw new Error("Cannot decode function reference");let i=rt(e),o=Number(S(e)),a=Q(e,o),u=new TextDecoder("utf8",{fatal:!0}).decode(a);return[i,u]}get name(){let e=this.argTypes.map(s=>s.name).join(", "),t=this.retTypes.map(s=>s.name).join(", "),n=" "+this.annotations.join(" ");return`(${e}) -> (${t})${n}`}valueToString([e,t]){return`func "${e.toText()}".${t}`}display(){let e=this.argTypes.map(s=>s.display()).join(", "),t=this.retTypes.map(s=>s.display()).join(", "),n=" "+this.annotations.join(" ");return`(${e}) \u2192 (${t})${n}`}encodeAnnotation(e){if(e==="query")return new Uint8Array([1]);if(e==="oneway")return new Uint8Array([2]);if(e==="composite_query")return new Uint8Array([3]);throw new Error("Illegal function annotation")}},de=class extends O{get typeName(){return d.ServiceClass}static[Symbol.hasInstance](e){return e.typeName===d.ServiceClass}constructor(e){super(),this._fields=Object.entries(e).sort((t,n)=>t[0]<n[0]?-1:t[0]>n[0]?1:0)}accept(e,t){return e.visitService(this,t)}covariant(e){if(e&&e._isPrincipal)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=e.toUint8Array(),n=g(t.length);return m(new Uint8Array([1]),n,t)}_buildTypeTableImpl(e){this._fields.forEach(([i,o])=>o.buildTypeTable(e));let t=w(y.Service),n=g(this._fields.length),s=this._fields.map(([i,o])=>{let a=new TextEncoder().encode(i),c=g(a.length);return m(c,a,o.encodeType(e))});e.add(this,m(t,n,...s))}decodeValue(e,t){let n=t instanceof C?t.getType()??t:t;if(!nt(n,this))throw new Error(`Cannot decode service reference at type ${this.display()} from wire type ${n.display()}`);return rt(e)}get name(){return`service {${this._fields.map(([t,n])=>t+":"+n.name).join("; ")}}`}valueToString(e){return`service "${e.toText()}"`}fieldsAsObject(){let e={};for(let[t,n]of this._fields)e[t]=n;return e}};function x(r){let e=JSON.stringify(r,(t,n)=>typeof n=="bigint"?`BigInt(${n})`:n);return e&&e.length>Dt?e.substring(0,Dt-3)+"...":e}function mn(r,e){if(e.length<r.length)throw Error("Wrong number of message arguments");let t=new Xe;r.forEach(a=>a.buildTypeTable(t));let n=t.encode(),s=g(e.length),i=m(...r.map(a=>a.encodeType(t))),o=m(...be(r,e,(a,c)=>{try{a.covariant(c)}catch(u){throw new Error(u.message+`
134
+ variant ${t} -> ${s.message}`)}}))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){for(let t=0;t<this._fields.length;t++){let[n,s]=this._fields[t];if(e.hasOwnProperty(n)){let i=g(t),o=s.encodeValue(e[n]);return m(i,o)}}throw Error("Variant has no data: "+e)}_buildTypeTableImpl(e){this._fields.forEach(([,i])=>{i.buildTypeTable(e)});let t=w(y.Variant),n=g(this._fields.length),s=this._fields.map(([i,o])=>m(g(N(i)),o.encodeType(e)));e.add(this,m(t,n,...s))}decodeValue(e,t){let n=this.checkType(t);if(!(n instanceof r))throw new Error("Not a variant type");let s=Number(S(e));if(s>=n._fields.length)throw Error("Invalid variant index: "+s);let[i,o]=n._fields[s];for(let[a,c]of this._fields)if(N(i)===N(a)){let u=c.decodeValue(e,o);return{[a]:u}}throw new Error("Cannot find field hash "+i)}get name(){return`variant {${this._fields.map(([t,n])=>t+":"+n.name).join("; ")}}`}display(){return`variant {${this._fields.map(([t,n])=>t+(n.name==="null"?"":`:${n.display()}`)).join("; ")}}`}valueToString(e){for(let[t,n]of this._fields)if(e.hasOwnProperty(t)){let s=n.valueToString(e[t]);return s==="null"?`variant {${t}}`:`variant {${t}=${s}}`}throw new Error("Variant has no data: "+e)}get alternativesAsObject(){let e={};for(let[t,n]of this._fields)e[N(t)]=n;return e}},C=class r extends ${constructor(){super(...arguments),this._id=r._counter++}get typeName(){return d.RecClass}static{this._counter=0}static[Symbol.hasInstance](e){return e.typeName===d.RecClass}accept(e,t){if(!this._type)throw Error("Recursive type uninitialized.");return e.visitRec(this,this._type,t)}fill(e){this._type=e}getType(){return this._type}covariant(e){if(this._type&&this._type.covariant(e))return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){if(!this._type)throw Error("Recursive type uninitialized.");return this._type.encodeValue(e)}_buildTypeTableImpl(e){if(!this._type)throw Error("Recursive type uninitialized.");e.add(this,new Uint8Array([])),this._type.buildTypeTable(e),e.merge(this,this._type.name)}decodeValue(e,t){if(!this._type)throw Error("Recursive type uninitialized.");return this._type.decodeValue(e,t)}get name(){return`rec_${this._id}`}display(){if(!this._type)throw Error("Recursive type uninitialized.");return`\u03BC${this.name}.${this._type.name}`}valueToString(e){if(!this._type)throw Error("Recursive type uninitialized.");return this._type.valueToString(e)}};function rt(r){if(K(r)!==1)throw new Error("Cannot decode principal");let t=Number(S(r));return Ue.fromUint8Array(new Uint8Array(Q(r,t)))}var je=class extends v{get typeName(){return d.PrincipalClass}static[Symbol.hasInstance](e){return e.typeName===d.PrincipalClass}accept(e,t){return e.visitPrincipal(this,t)}covariant(e){if(e&&e._isPrincipal)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=e.toUint8Array(),n=g(t.byteLength);return m(new Uint8Array([1]),n,t)}encodeType(){return w(y.Principal)}decodeValue(e,t){return this.checkType(t),rt(e)}get name(){return"principal"}valueToString(e){return`${this.name} "${e.toText()}"`}},re=class extends ${get typeName(){return d.FuncClass}static[Symbol.hasInstance](e){return e.typeName===d.FuncClass}static argsToString(e,t){if(e.length!==t.length)throw new Error("arity mismatch");return"("+e.map((n,s)=>n.valueToString(t[s])).join(", ")+")"}constructor(e,t,n=[]){super(),this.argTypes=e,this.retTypes=t,this.annotations=n}accept(e,t){return e.visitFunc(this,t)}covariant(e){if(Array.isArray(e)&&e.length===2&&e[0]&&e[0]._isPrincipal&&typeof e[1]=="string")return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue([e,t]){let n=e.toUint8Array(),s=g(n.byteLength),i=m(new Uint8Array([1]),s,n),o=new TextEncoder().encode(t),a=g(o.byteLength);return m(new Uint8Array([1]),i,a,o)}_buildTypeTableImpl(e){this.argTypes.forEach(u=>u.buildTypeTable(e)),this.retTypes.forEach(u=>u.buildTypeTable(e));let t=w(y.Func),n=g(this.argTypes.length),s=m(...this.argTypes.map(u=>u.encodeType(e))),i=g(this.retTypes.length),o=m(...this.retTypes.map(u=>u.encodeType(e))),a=g(this.annotations.length),c=m(...this.annotations.map(u=>this.encodeAnnotation(u)));e.add(this,m(t,n,s,i,o,a,c))}decodeValue(e,t){let n=t instanceof C?t.getType()??t:t;if(!nt(n,this))throw new Error(`Cannot decode function reference at type ${this.display()} from wire type ${n.display()}`);if(K(e)!==1)throw new Error("Cannot decode function reference");let i=rt(e),o=Number(S(e)),a=Q(e,o),u=new TextDecoder("utf8",{fatal:!0}).decode(a);return[i,u]}get name(){let e=this.argTypes.map(s=>s.name).join(", "),t=this.retTypes.map(s=>s.name).join(", "),n=" "+this.annotations.join(" ");return`(${e}) -> (${t})${n}`}valueToString([e,t]){return`func "${e.toText()}".${t}`}display(){let e=this.argTypes.map(s=>s.display()).join(", "),t=this.retTypes.map(s=>s.display()).join(", "),n=" "+this.annotations.join(" ");return`(${e}) \u2192 (${t})${n}`}encodeAnnotation(e){if(e==="query")return new Uint8Array([1]);if(e==="oneway")return new Uint8Array([2]);if(e==="composite_query")return new Uint8Array([3]);throw new Error("Illegal function annotation")}},de=class extends ${get typeName(){return d.ServiceClass}static[Symbol.hasInstance](e){return e.typeName===d.ServiceClass}constructor(e){super(),this._fields=Object.entries(e).sort((t,n)=>t[0]<n[0]?-1:t[0]>n[0]?1:0)}accept(e,t){return e.visitService(this,t)}covariant(e){if(e&&e._isPrincipal)return!0;throw new Error(`Invalid ${this.display()} argument: ${x(e)}`)}encodeValue(e){let t=e.toUint8Array(),n=g(t.length);return m(new Uint8Array([1]),n,t)}_buildTypeTableImpl(e){this._fields.forEach(([i,o])=>o.buildTypeTable(e));let t=w(y.Service),n=g(this._fields.length),s=this._fields.map(([i,o])=>{let a=new TextEncoder().encode(i),c=g(a.length);return m(c,a,o.encodeType(e))});e.add(this,m(t,n,...s))}decodeValue(e,t){let n=t instanceof C?t.getType()??t:t;if(!nt(n,this))throw new Error(`Cannot decode service reference at type ${this.display()} from wire type ${n.display()}`);return rt(e)}get name(){return`service {${this._fields.map(([t,n])=>t+":"+n.name).join("; ")}}`}valueToString(e){return`service "${e.toText()}"`}fieldsAsObject(){let e={};for(let[t,n]of this._fields)e[t]=n;return e}};function x(r){let e=JSON.stringify(r,(t,n)=>typeof n=="bigint"?`BigInt(${n})`:n);return e&&e.length>Ht?e.substring(0,Ht-3)+"...":e}function yn(r,e){if(e.length<r.length)throw Error("Wrong number of message arguments");let t=new Xe;r.forEach(a=>a.buildTypeTable(t));let n=t.encode(),s=g(e.length),i=m(...r.map(a=>a.encodeType(t))),o=m(...be(r,e,(a,c)=>{try{a.covariant(c)}catch(u){throw new Error(u.message+`
135
135
 
136
- `)}return a.encodeValue(c)}));return m(hn,n,s,i,o)}function yn(r,e){let t=new j(e);if(e.byteLength<$e.length)throw new Error("Message length smaller than magic number");let n=Q(t,$e.length),s=new TextDecoder().decode(n);if(s!==$e)throw new Error("Wrong magic number: "+JSON.stringify(s));function i(l){let p=[],b=Number(S(l));for(let A=0;A<b;A++){let D=Number(M(l));switch(D){case y.Opt:case y.Vector:{let B=Number(M(l));p.push([D,B]);break}case y.Record:case y.Variant:{let B=[],ie=Number(S(l)),z;for(;ie--;){let G=Number(S(l));if(G>=Math.pow(2,32))throw new Error("field id out of 32-bit range");if(typeof z=="number"&&z>=G)throw new Error("field id collision or not sorted");z=G;let J=Number(M(l));B.push([G,J])}p.push([D,B]);break}case y.Func:{let B=[],ie=Number(S(l));for(;ie--;)B.push(Number(M(l)));let z=[],G=Number(S(l));for(;G--;)z.push(Number(M(l)));let J=[],_r=Number(S(l));for(;_r--;)switch(Number(S(l))){case 1:{J.push("query");break}case 2:{J.push("oneway");break}case 3:{J.push("composite_query");break}default:throw new Error("unknown annotation")}p.push([D,[B,z,J]]);break}case y.Service:{let B=Number(S(l)),ie=[];for(;B--;){let z=Number(S(l)),G=new TextDecoder().decode(Q(l,z)),J=M(l);ie.push([G,J])}p.push([D,ie]);break}default:throw new Error("Illegal op_code: "+D)}}let _=[],E=Number(S(l));for(let A=0;A<E;A++)_.push(Number(M(l)));return[p,_]}let[o,a]=i(t);if(a.length<r.length)throw new Error("Wrong number of return values");let c=o.map(l=>pr());function u(l){if(l<-24)throw new Error("future value not supported");if(l<0)switch(l){case-1:return Wt;case-2:return Jt;case-3:return Kt;case-4:return Zt;case-5:return nr;case-6:return sr;case-7:return ir;case-8:return or;case-9:return Xt;case-10:return er;case-11:return tr;case-12:return rr;case-13:return Qt;case-14:return Yt;case-15:return qt;case-16:return Gt;case-17:return zt;case-24:return ar;default:throw new Error("Illegal op_code: "+l)}if(l>=o.length)throw new Error("type index out of range");return c[l]}function h(l){switch(l[0]){case y.Vector:{let p=u(l[1]);return ur(p)}case y.Opt:{let p=u(l[1]);return lr(p)}case y.Record:{let p={};for(let[E,A]of l[1]){let D=`_${E}_`;p[D]=u(A)}let b=fr(p),_=b.tryAsTuple();return Array.isArray(_)?cr(..._):b}case y.Variant:{let p={};for(let[b,_]of l[1]){let E=`_${b}_`;p[E]=u(_)}return dr(p)}case y.Func:{let[p,b,_]=l[1];return hr(p.map(E=>u(E)),b.map(E=>u(E)),_)}case y.Service:{let p={},b=l[1];for(let[_,E]of b){let A=u(E);if(A instanceof C&&(A=A.getType()),!(A instanceof re))throw new Error("Illegal service definition: services can only contain functions");p[_]=A}return mr(p)}default:throw new Error("Illegal op_code: "+l[0])}}o.forEach((l,p)=>{if(l[0]===y.Func){let b=h(l);c[p].fill(b)}}),o.forEach((l,p)=>{if(l[0]!==y.Func){let b=h(l);c[p].fill(b)}}),tt();let f=a.map(l=>u(l));try{let l=r.map((p,b)=>p.decodeValue(t,f[b]));for(let p=r.length;p<f.length;p++)f[p].decodeValue(t,f[p]);if(t.byteLength>0)throw new Error("decode: Left-over bytes");return l}finally{tt()}}var zt=new xe,Gt=new $,bn=new Be,Jt=new ke,Wt=new ee,qt=new Le,Zt=new ge,Kt=new we,Qt=new _e(32),Yt=new _e(64),Xt=new H(8),er=new H(16),tr=new H(32),rr=new H(64),nr=new U(8),sr=new U(16),ir=new U(32),or=new U(64),ar=new je;function cr(...r){return new Ve(r)}function ur(r){return new le(r)}function lr(r){return new Y(r)}function fr(r){return new te(r)}function dr(r){return new fe(r)}function pr(){return new C}function hr(r,e,t=[]){return new re(r,e,t)}function mr(r){return new de(r)}var Me=class r{constructor(e=new Map){this.rels=e}copy(){let e=new Map;for(let[t,n]of this.rels.entries()){let s=new Map(n);e.set(t,s)}return new r(e)}known(e,t){return this.rels.get(e.name)?.get(t.name)}addNegative(e,t){this.addNames(e.name,t.name,!1)}add(e,t){this.addNames(e.name,t.name,!0)}display(){let e="";for(let[t,n]of this.rels)for(let[s,i]of n)e+=`${t} ${i?":<":"!<:"} ${s}
137
- `;return e}addNames(e,t,n){let s=this.rels.get(e);if(s==null){let i=new Map;i.set(t,n),this.rels.set(e,i)}else s.set(t,n)}},Fe=new Me;function tt(){Fe=new Me}function xn(r,e){let t=new Set(r.annotations),n=new Set(e.annotations);if(t.size!==n.size)return!1;for(let s of t)if(!n.has(s))return!1;return!0}function Ye(r){return r instanceof Y||r instanceof ee||r instanceof $}function nt(r,e){let t=Fe.copy(),n=P(t,r,e);return n?Fe.add(r,e):Fe.addNegative(r,e),n}function P(r,e,t){if(e.name===t.name)return!0;let n=r.known(e,t);if(n!==void 0)return n;if(r.add(e,t),t instanceof $||e instanceof xe||e instanceof we&&t instanceof ge)return!0;if(e instanceof le&&t instanceof le)return P(r,e._type,t._type);if(t instanceof Y)return!0;if(e instanceof te&&t instanceof te){let s=e.fieldsAsObject;for(let[i,o]of t._fields){let a=s[N(i)];if(a){if(!P(r,a,o))return!1}else if(!Ye(o))return!1}return!0}if(e instanceof re&&t instanceof re){if(!xn(e,t))return!1;for(let s=0;s<e.argTypes.length;s++){let i=e.argTypes[s];if(s<t.argTypes.length){if(!P(r,t.argTypes[s],i))return!1}else if(!Ye(i))return!1}for(let s=0;s<t.retTypes.length;s++){let i=t.retTypes[s];if(s<e.retTypes.length){if(!P(r,e.retTypes[s],i))return!1}else if(!Ye(i))return!1}return!0}if(e instanceof fe&&t instanceof fe){let s=t.alternativesAsObject;for(let[i,o]of e._fields){let a=s[N(i)];if(!a||!P(r,o,a))return!1}return!0}if(e instanceof de&&t instanceof de){let s=e.fieldsAsObject();for(let[i,o]of t._fields){let a=s[i];if(!a||!P(r,a,o))return!1}return!0}return e instanceof C?P(r,e.getType(),t):t instanceof C?P(r,e,t.getType()):!1}import{capitalize as gn}from"@junobuild/utils";var pe=r=>{switch(r.kind){case"text":return T.Text;case"bool":return T.Bool;case"float64":return T.Float64;case"int32":return T.Int32;case"nat":return T.Nat64;case"principal":return T.Principal;case"uint8array":return T.Vec(T.Nat8);case"opt":return T.Opt(pe(r.inner));case"vec":return T.Vec(pe(r.inner));case"tuple":case"indexedTuple":return T.Tuple(...r.members.map(pe));case"record":return T.Record(Object.fromEntries(r.fields.map(e=>[e.name,pe(e.type)])));case"variant":return T.Variant(Object.fromEntries(r.tags.map(e=>[e,T.Null])));case"variantRecords":return T.Variant(Object.fromEntries(r.members.map((e,t)=>[`Variant${t}`,pe(e)])))}},wn=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let i=pe(t?{kind:"opt",inner:e}:e);return{baseName:`${gn(r)}${n}`,idl:i}},ci=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return wn({...n,suffix:t})};import{capitalize as ne}from"@junobuild/utils";var st="#[derive(CandidType, Serialize, Deserialize, Clone, JsonData)]",F=r=>({kind:"primitive",...r}),he=r=>({kind:"composite",...r}),it=r=>r.flatMap(e=>e.kind==="composite"?e.structs:[]),se=({schema:r,structName:e})=>{switch(r.kind){case"text":return F({fieldType:"String"});case"bool":return F({fieldType:"bool"});case"float64":return F({fieldType:"f64"});case"int32":return F({fieldType:"i32"});case"nat":return F({fieldType:"u64"});case"principal":return F({fieldType:"Principal"});case"uint8array":return F({fieldType:"Vec<u8>"});case"opt":{let t=se({schema:r.inner,structName:e}),n=`Option<${t.fieldType}>`;return t.kind==="composite"?he({fieldType:n,structs:t.structs}):F({fieldType:n})}case"vec":{let t=se({schema:r.inner,structName:e}),n=`Vec<${t.fieldType}>`;return t.kind==="composite"?he({fieldType:n,structs:t.structs}):F({fieldType:n})}case"tuple":case"indexedTuple":{let t=r.members.map((i,o)=>se({schema:i,structName:`${e}${o}`})),n=`(${t.map(i=>i.fieldType).join(", ")})`,s=it(t);return s.length>0?he({fieldType:n,structs:s}):F({fieldType:n})}case"variant":{let t=ne(e),n=r.tags.map(s=>` ${ne(s)},`).join(`
138
- `);return he({fieldType:t,structs:[`${st}
136
+ `)}return a.encodeValue(c)}));return m(mn,n,s,i,o)}function bn(r,e){let t=new j(e);if(e.byteLength<$e.length)throw new Error("Message length smaller than magic number");let n=Q(t,$e.length),s=new TextDecoder().decode(n);if(s!==$e)throw new Error("Wrong magic number: "+JSON.stringify(s));function i(l){let p=[],b=Number(S(l));for(let A=0;A<b;A++){let D=Number(M(l));switch(D){case y.Opt:case y.Vector:{let B=Number(M(l));p.push([D,B]);break}case y.Record:case y.Variant:{let B=[],ie=Number(S(l)),z;for(;ie--;){let G=Number(S(l));if(G>=Math.pow(2,32))throw new Error("field id out of 32-bit range");if(typeof z=="number"&&z>=G)throw new Error("field id collision or not sorted");z=G;let J=Number(M(l));B.push([G,J])}p.push([D,B]);break}case y.Func:{let B=[],ie=Number(S(l));for(;ie--;)B.push(Number(M(l)));let z=[],G=Number(S(l));for(;G--;)z.push(Number(M(l)));let J=[],Sr=Number(S(l));for(;Sr--;)switch(Number(S(l))){case 1:{J.push("query");break}case 2:{J.push("oneway");break}case 3:{J.push("composite_query");break}default:throw new Error("unknown annotation")}p.push([D,[B,z,J]]);break}case y.Service:{let B=Number(S(l)),ie=[];for(;B--;){let z=Number(S(l)),G=new TextDecoder().decode(Q(l,z)),J=M(l);ie.push([G,J])}p.push([D,ie]);break}default:throw new Error("Illegal op_code: "+D)}}let _=[],E=Number(S(l));for(let A=0;A<E;A++)_.push(Number(M(l)));return[p,_]}let[o,a]=i(t);if(a.length<r.length)throw new Error("Wrong number of return values");let c=o.map(l=>dr());function u(l){if(l<-24)throw new Error("future value not supported");if(l<0)switch(l){case-1:return Jt;case-2:return Gt;case-3:return Zt;case-4:return qt;case-5:return rr;case-6:return nr;case-7:return sr;case-8:return ir;case-9:return Yt;case-10:return Xt;case-11:return er;case-12:return tr;case-13:return Kt;case-14:return Qt;case-15:return Wt;case-16:return zt;case-17:return Dt;case-24:return or;default:throw new Error("Illegal op_code: "+l)}if(l>=o.length)throw new Error("type index out of range");return c[l]}function h(l){switch(l[0]){case y.Vector:{let p=u(l[1]);return cr(p)}case y.Opt:{let p=u(l[1]);return ur(p)}case y.Record:{let p={};for(let[E,A]of l[1]){let D=`_${E}_`;p[D]=u(A)}let b=lr(p),_=b.tryAsTuple();return Array.isArray(_)?ar(..._):b}case y.Variant:{let p={};for(let[b,_]of l[1]){let E=`_${b}_`;p[E]=u(_)}return fr(p)}case y.Func:{let[p,b,_]=l[1];return pr(p.map(E=>u(E)),b.map(E=>u(E)),_)}case y.Service:{let p={},b=l[1];for(let[_,E]of b){let A=u(E);if(A instanceof C&&(A=A.getType()),!(A instanceof re))throw new Error("Illegal service definition: services can only contain functions");p[_]=A}return hr(p)}default:throw new Error("Illegal op_code: "+l[0])}}o.forEach((l,p)=>{if(l[0]===y.Func){let b=h(l);c[p].fill(b)}}),o.forEach((l,p)=>{if(l[0]!==y.Func){let b=h(l);c[p].fill(b)}}),tt();let f=a.map(l=>u(l));try{let l=r.map((p,b)=>p.decodeValue(t,f[b]));for(let p=r.length;p<f.length;p++)f[p].decodeValue(t,f[p]);if(t.byteLength>0)throw new Error("decode: Left-over bytes");return l}finally{tt()}}var Dt=new xe,zt=new F,xn=new Be,Gt=new ke,Jt=new ee,Wt=new Le,qt=new ge,Zt=new we,Kt=new _e(32),Qt=new _e(64),Yt=new H(8),Xt=new H(16),er=new H(32),tr=new H(64),rr=new O(8),nr=new O(16),sr=new O(32),ir=new O(64),or=new je;function ar(...r){return new Ve(r)}function cr(r){return new le(r)}function ur(r){return new Y(r)}function lr(r){return new te(r)}function fr(r){return new fe(r)}function dr(){return new C}function pr(r,e,t=[]){return new re(r,e,t)}function hr(r){return new de(r)}var Me=class r{constructor(e=new Map){this.rels=e}copy(){let e=new Map;for(let[t,n]of this.rels.entries()){let s=new Map(n);e.set(t,s)}return new r(e)}known(e,t){return this.rels.get(e.name)?.get(t.name)}addNegative(e,t){this.addNames(e.name,t.name,!1)}add(e,t){this.addNames(e.name,t.name,!0)}display(){let e="";for(let[t,n]of this.rels)for(let[s,i]of n)e+=`${t} ${i?":<":"!<:"} ${s}
137
+ `;return e}addNames(e,t,n){let s=this.rels.get(e);if(s==null){let i=new Map;i.set(t,n),this.rels.set(e,i)}else s.set(t,n)}},Fe=new Me;function tt(){Fe=new Me}function gn(r,e){let t=new Set(r.annotations),n=new Set(e.annotations);if(t.size!==n.size)return!1;for(let s of t)if(!n.has(s))return!1;return!0}function Ye(r){return r instanceof Y||r instanceof ee||r instanceof F}function nt(r,e){let t=Fe.copy(),n=P(t,r,e);return n?Fe.add(r,e):Fe.addNegative(r,e),n}function P(r,e,t){if(e.name===t.name)return!0;let n=r.known(e,t);if(n!==void 0)return n;if(r.add(e,t),t instanceof F||e instanceof xe||e instanceof we&&t instanceof ge)return!0;if(e instanceof le&&t instanceof le)return P(r,e._type,t._type);if(t instanceof Y)return!0;if(e instanceof te&&t instanceof te){let s=e.fieldsAsObject;for(let[i,o]of t._fields){let a=s[N(i)];if(a){if(!P(r,a,o))return!1}else if(!Ye(o))return!1}return!0}if(e instanceof re&&t instanceof re){if(!gn(e,t))return!1;for(let s=0;s<e.argTypes.length;s++){let i=e.argTypes[s];if(s<t.argTypes.length){if(!P(r,t.argTypes[s],i))return!1}else if(!Ye(i))return!1}for(let s=0;s<t.retTypes.length;s++){let i=t.retTypes[s];if(s<e.retTypes.length){if(!P(r,e.retTypes[s],i))return!1}else if(!Ye(i))return!1}return!0}if(e instanceof fe&&t instanceof fe){let s=t.alternativesAsObject;for(let[i,o]of e._fields){let a=s[N(i)];if(!a||!P(r,o,a))return!1}return!0}if(e instanceof de&&t instanceof de){let s=e.fieldsAsObject();for(let[i,o]of t._fields){let a=s[i];if(!a||!P(r,a,o))return!1}return!0}return e instanceof C?P(r,e.getType(),t):t instanceof C?P(r,e,t.getType()):!1}import{capitalize as wn}from"@junobuild/utils";var pe=r=>{switch(r.kind){case"text":return T.Text;case"bool":return T.Bool;case"float64":return T.Float64;case"int32":return T.Int32;case"nat":return T.Nat64;case"principal":return T.Principal;case"uint8array":return T.Vec(T.Nat8);case"opt":return T.Opt(pe(r.inner));case"vec":return T.Vec(pe(r.inner));case"tuple":case"indexedTuple":return T.Tuple(...r.members.map(pe));case"record":return T.Record(Object.fromEntries(r.fields.map(e=>[e.name,pe(e.type)])));case"variant":return T.Variant(Object.fromEntries(r.tags.map(e=>[e,T.Null])));case"variantRecords":return T.Variant(Object.fromEntries(r.members.map((e,t)=>[`Variant${t}`,pe(e)])))}},_n=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let i=pe(t?{kind:"opt",inner:e}:e);return{baseName:`${wn(r)}${n}`,idl:i}},fi=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return _n({...n,suffix:t})};import{capitalize as ne}from"@junobuild/utils";var mr="#[derive(CandidType, Serialize, Deserialize, Clone, JsonData)]",Sn="#[derive(CandidType, Serialize, Deserialize, Clone)]",Tn=new Set(["type","struct","enum","fn","let","match","use","mod","impl","trait","where","move","ref","self","super","crate"]),yr=r=>Tn.has(r)?`r#${r}`:r,U=r=>({kind:"primitive",...r}),he=r=>({kind:"composite",...r}),st=r=>r.flatMap(e=>e.kind==="composite"?e.structs:[]),se=({schema:r,structName:e})=>{switch(r.kind){case"text":return U({fieldType:"String"});case"bool":return U({fieldType:"bool"});case"float64":return U({fieldType:"f64"});case"int32":return U({fieldType:"i32"});case"nat":return U({fieldType:"u64"});case"principal":return U({fieldType:"Principal"});case"uint8array":return U({fieldType:"Vec<u8>"});case"opt":{let t=se({schema:r.inner,structName:e}),n=`Option<${t.fieldType}>`;return t.kind==="composite"?he({fieldType:n,structs:t.structs}):U({fieldType:n})}case"vec":{let t=se({schema:r.inner,structName:e}),n=`Vec<${t.fieldType}>`;return t.kind==="composite"?he({fieldType:n,structs:t.structs}):U({fieldType:n})}case"tuple":case"indexedTuple":{let t=r.members.map((i,o)=>se({schema:i,structName:`${e}${o}`})),n=`(${t.map(i=>i.fieldType).join(", ")})`,s=st(t);return s.length>0?he({fieldType:n,structs:s}):U({fieldType:n})}case"variant":{if(r.tags.length===1)return U({fieldType:"String"});let t=ne(e),n=r.tags.map(s=>` ${ne(s)},`).join(`
138
+ `);return he({fieldType:t,structs:[`${Sn}
139
139
  pub enum ${t} {
140
140
  ${n}
141
- }`]})}case"variantRecords":{let t=ne(e),n=r.members.map((i,o)=>{if(i.kind==="record"){let c=i.fields.map(h=>se({schema:h.type,structName:`${e}${ne(h.name)}`})),u=i.fields.map((h,f)=>` ${h.name}: ${c[f].fieldType},`).join(`
141
+ }`]})}case"variantRecords":{let t=ne(e),n=r.members.map((i,o)=>{if(i.kind==="record"){let c=i.fields.map(h=>se({schema:h.type,structName:`${e}${ne(h.name)}`})),u=i.fields.map((h,f)=>` ${yr(h.name)}: ${c[f].fieldType},`).join(`
142
142
  `);return{variantLine:` Variant${o} {
143
143
  ${u}
144
- }`,structs:it(c)}}let a=se({schema:i,structName:`${e}Variant${o}`});return{variantLine:` Variant${o}(${a.fieldType})`,structs:a.kind==="composite"?a.structs:[]}}),s=n.map(i=>i.variantLine).join(`,
145
- `);return he({fieldType:t,structs:[...n.flatMap(i=>i.structs),`${st}
144
+ }`,structs:st(c)}}let a=se({schema:i,structName:`${e}Variant${o}`});return{variantLine:` Variant${o}(${a.fieldType})`,structs:a.kind==="composite"?a.structs:[]}}),s=n.map(i=>i.variantLine).join(`,
145
+ `);return he({fieldType:t,structs:[...n.flatMap(i=>i.structs),`${mr}
146
146
  pub enum ${t} {
147
147
  ${s}
148
148
  }`]})}case"record":{let t=ne(e),n=r.fields.map(i=>se({schema:i.type,structName:`${e}${ne(i.name)}`})),s=r.fields.map((i,o)=>{let a=n[o];return`${a.kind==="composite"?` #[json_data(nested)]
149
- `:""} pub ${i.name}: ${a.fieldType},`}).join(`
150
- `);return he({fieldType:t,structs:[...it(n),`${st}
149
+ `:""} pub ${yr(i.name)}: ${a.fieldType},`}).join(`
150
+ `);return he({fieldType:t,structs:[...st(n),`${mr}
151
151
  pub struct ${t} {
152
152
  ${s}
153
- }`]})}}},_n=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let s=`${ne(r)}${n}`,o=se({schema:t?{kind:"opt",inner:e}:e,structName:s});return o.kind==="composite"?{baseName:s,code:o.structs.join(`
153
+ }`]})}}},An=({id:r,schema:e,isTopLevelOptional:t,suffix:n})=>{let s=`${ne(r)}${n}`,o=se({schema:t?{kind:"opt",inner:e}:e,structName:s});return o.kind==="composite"?{baseName:s,code:o.structs.join(`
154
154
 
155
- `)}:{baseName:s,code:`pub type ${s} = ${o.fieldType};`}},ot=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return _n({...n,suffix:t})};import{writeFile as Nn}from"node:fs/promises";import{nonNullish as Pe}from"@dfinity/utils";import{capitalize as Sn,convertCamelToSnake as Tn}from"@junobuild/utils";var An=`// This file was automatically generated by the Juno CLI.
155
+ `)}:{baseName:s,code:`pub type ${s} = ${o.fieldType};`}},it=({id:r,schema:e,suffix:t})=>{let n=W({zodSchema:e,id:r});return An({...n,suffix:t})};import{writeFile as Cn}from"node:fs/promises";import{nonNullish as Pe}from"@dfinity/utils";import{capitalize as Nn,convertCamelToSnake as En}from"@junobuild/utils";var vn=`// This file was automatically generated by the Juno CLI.
156
156
  // Any modifications may be overwritten.
157
157
 
158
158
  %TYPES%service : {
159
159
  %METHODS%
160
- };`,br=({queries:r,updates:e})=>{let t=r.map(([o,a])=>yr({jsFnName:o,fn:a,fnType:"query"})),n=e.map(([o,a])=>yr({jsFnName:o,fn:a,fnType:"update"})),[s,i]=[...t,...n].reduce(([o,a],{types:c,method:u})=>[[...o,...c],[...a,u]],[[],[]]);return An.replace("%TYPES%",s.length>0?`${s.join(`
160
+ };`,xr=({queries:r,updates:e})=>{let t=r.map(([o,a])=>br({jsFnName:o,fn:a,fnType:"query"})),n=e.map(([o,a])=>br({jsFnName:o,fn:a,fnType:"update"})),[s,i]=[...t,...n].reduce(([o,a],{types:c,method:u})=>[[...o,...c],[...a,u]],[[],[]]);return vn.replace("%TYPES%",s.length>0?`${s.join(`
161
161
 
162
162
  `)}
163
163
 
164
164
  `:"").replace("%METHODS%",i.join(`
165
- `).trim()).trim()},yr=({fn:r,jsFnName:e,fnType:t})=>{let n=`${"App"}${Sn(e)}`,s="args"in r?ze({id:n,schema:r.args,suffix:"Args"}):void 0,i="result"in r?ze({id:n,schema:r.result,suffix:"Result"}):void 0,o=[...Pe(s)?[s.code]:[],...Pe(i)?[i.code]:[]],a=t==="query"?" query":"",c=Pe(s)?`(${s.baseName})`:"()",u=Pe(i)?`(${i.baseName})`:"()",f=` ${`${"App".toLowerCase()}_${Tn(e)}`} : ${c} -> ${u}${a};`;return{types:o,method:f}};var Ai=async({updates:r,queries:e,outputFile:t})=>{let n=br({queries:e,updates:r});await Nn(t,n,"utf-8")};import{writeFile as Ln}from"node:fs/promises";import{relative as Vn}from"node:path";import{nonNullish as He,notEmptyString as xr}from"@dfinity/utils";import{capitalize as En,convertCamelToSnake as vn}from"@junobuild/utils";var Cn=`// This file was automatically generated by the Juno CLI.
165
+ `).trim()).trim()},br=({fn:r,jsFnName:e,fnType:t})=>{let n=`${"App"}${Nn(e)}`,s="args"in r?ze({id:n,schema:r.args,suffix:"Args"}):void 0,i="result"in r?ze({id:n,schema:r.result,suffix:"Result"}):void 0,o=[...Pe(s)?[s.code]:[],...Pe(i)?[i.code]:[]],a=t==="query"?" query":"",c=Pe(s)?`(${s.baseName})`:"()",u=Pe(i)?`(${i.baseName})`:"()",f=` ${`${"App".toLowerCase()}_${En(e)}`} : ${c} -> ${u}${a};`;return{types:o,method:f}};var vi=async({updates:r,queries:e,outputFile:t})=>{let n=xr({queries:e,updates:r});await Cn(t,n,"utf-8")};import{writeFile as Mn}from"node:fs/promises";import{relative as Pn}from"node:path";import{nonNullish as He,notEmptyString as gr}from"@dfinity/utils";import{capitalize as In,convertCamelToSnake as Rn}from"@junobuild/utils";var Un=`// This file was automatically generated by the Juno CLI.
166
166
  // Any modifications may be overwritten.
167
167
  #![allow(unused)]
168
168
  #![allow(non_camel_case_types)]
@@ -178,50 +178,50 @@ use junobuild_shared::ic::UnwrapOrTrapResult;
178
178
  use serde::{Deserialize, Serialize};
179
179
 
180
180
  %FUNCTIONS%
181
- `,In=`#[ic_cdk::%TYPE%]
181
+ `,On=`#[ic_cdk::%TYPE%]
182
182
  fn %RS_FUNCTION%() {
183
183
  execute_sync_function::<NoArgs, NoResult>("%JS_FUNCTION%", None).unwrap_or_trap();
184
- }`,Rn=`#[ic_cdk::%TYPE%]
184
+ }`,$n=`#[ic_cdk::%TYPE%]
185
185
  fn %RS_FUNCTION%() -> %RESULT% {
186
186
  execute_sync_function::<NoArgs, %RESULT%>("%JS_FUNCTION%", None).unwrap_or_trap_result()
187
- }`,Un=`#[ic_cdk::%TYPE%]
187
+ }`,Fn=`#[ic_cdk::%TYPE%]
188
188
  fn %RS_FUNCTION%(args: %ARGS%) {
189
189
  execute_sync_function::<%ARGS%, NoResult>("%JS_FUNCTION%", Some(args)).unwrap_or_trap();
190
- }`,On=`#[ic_cdk::%TYPE%]
190
+ }`,Bn=`#[ic_cdk::%TYPE%]
191
191
  fn %RS_FUNCTION%(args: %ARGS%) -> %RESULT% {
192
192
  execute_sync_function("%JS_FUNCTION%", Some(args)).unwrap_or_trap_result()
193
- }`,$n=`#[ic_cdk::%TYPE%]
193
+ }`,kn=`#[ic_cdk::%TYPE%]
194
194
  async fn %RS_FUNCTION%() {
195
195
  execute_async_function::<NoArgs, NoResult>("%JS_FUNCTION%", None)
196
196
  .await
197
197
  .unwrap_or_trap();
198
- }`,Fn=`#[ic_cdk::%TYPE%]
198
+ }`,Ln=`#[ic_cdk::%TYPE%]
199
199
  async fn %RS_FUNCTION%() -> %RESULT% {
200
200
  execute_async_function::<NoArgs, %RESULT%>("%JS_FUNCTION%", None)
201
201
  .await
202
202
  .unwrap_or_trap_result()
203
- }`,Bn=`#[ic_cdk::%TYPE%]
203
+ }`,Vn=`#[ic_cdk::%TYPE%]
204
204
  async fn %RS_FUNCTION%(args: %ARGS%) {
205
205
  execute_async_function::<%ARGS%, NoResult>("%JS_FUNCTION%", Some(args))
206
206
  .await
207
207
  .unwrap_or_trap();
208
- }`,kn=`#[ic_cdk::%TYPE%]
208
+ }`,jn=`#[ic_cdk::%TYPE%]
209
209
  async fn %RS_FUNCTION%(args: %ARGS%) -> %RESULT% {
210
210
  execute_async_function("%JS_FUNCTION%", Some(args))
211
211
  .await
212
212
  .unwrap_or_trap_result()
213
- }`,wr=({queries:r,updates:e})=>{let t=r.map(([i,o])=>gr({jsFnName:i,fn:o,fnType:"query"})).join(`
213
+ }`,_r=({queries:r,updates:e})=>{let t=r.map(([i,o])=>wr({jsFnName:i,fn:o,fnType:"query"})).join(`
214
214
 
215
- `),n=e.map(([i,o])=>gr({jsFnName:i,fn:o,fnType:"update"})).join(`
215
+ `),n=e.map(([i,o])=>wr({jsFnName:i,fn:o,fnType:"update"})).join(`
216
216
 
217
217
  `),s=`${t}
218
218
 
219
- ${n}`.trim();return Cn.replace("%FUNCTIONS%",s)},gr=({fn:r,fnType:e,jsFnName:t})=>{let n=`${"App"}${En(t)}`,s="args"in r?ot({id:n,schema:r.args,suffix:"Args"}):void 0,i="result"in r?ot({id:n,schema:r.result,suffix:"Result"}):void 0,o=r.handler.constructor.name==="AsyncFunction",c=He(s)&&He(i)?o?kn:On:He(s)?o?Bn:Un:He(i)?o?Fn:Rn:o?$n:In,u=`${"App".toLowerCase()}_${vn(t)}`,h=c.replace("%TYPE%",e).replace("%RS_FUNCTION%",u).replace("%JS_FUNCTION%",t).replaceAll("%ARGS%",s?.baseName??"").replaceAll("%RESULT%",i?.baseName??"").trim(),f=s?.code??"",l=i?.code??"";return`${f}${xr(f)?`
219
+ ${n}`.trim();return Un.replace("%FUNCTIONS%",s)},wr=({fn:r,fnType:e,jsFnName:t})=>{let n=`${"App"}${In(t)}`,s="args"in r?it({id:n,schema:r.args,suffix:"Args"}):void 0,i="result"in r?it({id:n,schema:r.result,suffix:"Result"}):void 0,o=r.handler.constructor.name==="AsyncFunction",c=He(s)&&He(i)?o?jn:Bn:He(s)?o?Vn:Fn:He(i)?o?Ln:$n:o?kn:On,u=`${"App".toLowerCase()}_${Rn(t)}`,h=c.replace("%TYPE%",e).replace("%RS_FUNCTION%",u).replace("%JS_FUNCTION%",t).replaceAll("%ARGS%",s?.baseName??"").replaceAll("%RESULT%",i?.baseName??"").trim(),f=s?.code??"",l=i?.code??"";return`${f}${gr(f)?`
220
220
 
221
- `:""}${l}${xr(l)?`
221
+ `:""}${l}${gr(l)?`
222
222
 
223
- `:""}${h}`};var Fi=async({code:r,outputFile:e})=>{let t=globalThis.console,n=globalThis.Math.random;try{globalThis.__ic_cdk_print=h=>process.stdout.write(`${h}
224
- `);let s=await import(`data:text/javascript;base64,${Buffer.from(r).toString("base64")}`),{QuerySchema:i,UpdateSchema:o}=await import("@junobuild/functions"),[a,c]=Object.entries(s).reduce(([h,f],l)=>{let[p,b]=l,_=typeof b=="function"?b({}):b,E=i.safeParse(_),A=o.safeParse(_);return[[...h,...E.success?[[p,E.data]]:[]],[...f,...A.success?[[p,A.data]]:[]]]},[[],[]]);if(a.length===0&&c.length===0)return null;let u=wr({queries:a,updates:c});return await Ln(e,u,"utf-8"),{outputPath:Vn(process.cwd(),e),queries:a,updates:c}}finally{globalThis.console=t,globalThis.Math.random=n}};export{Ai as generateDid,Fi as generateFunctions,Xn as generateIdlApi,xs as generateZodApi,ze as zodToCandid,ci as zodToIdl,ot as zodToRust};
223
+ `:""}${h}`};var Li=async({code:r,outputFile:e})=>{let t=globalThis.console,n=globalThis.Math.random;try{globalThis.__ic_cdk_print=h=>process.stdout.write(`${h}
224
+ `);let s=await import(`data:text/javascript;base64,${Buffer.from(r).toString("base64")}`),{QuerySchema:i,UpdateSchema:o}=await import("@junobuild/functions"),[a,c]=Object.entries(s).reduce(([h,f],l)=>{let[p,b]=l,_=typeof b=="function"?b({}):b,E=i.safeParse(_),A=o.safeParse(_);return[[...h,...E.success?[[p,E.data]]:[]],[...f,...A.success?[[p,A.data]]:[]]]},[[],[]]);if(a.length===0&&c.length===0)return null;let u=_r({queries:a,updates:c});return await Mn(e,u,"utf-8"),{outputPath:Pn(process.cwd(),e),queries:a,updates:c}}finally{globalThis.console=t,globalThis.Math.random=n}};export{vi as generateDid,Li as generateFunctions,rs as generateIdlApi,_s as generateZodApi,ze as zodToCandid,fi as zodToIdl,it as zodToRust};
225
225
  /*! Bundled license information:
226
226
 
227
227
  @noble/hashes/esm/utils.js: