@algorandfoundation/puya-ts 1.2.0-beta.38 → 1.2.0-beta.39
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/{analyser-service-WPf-QuDW.js → analyser-service-Cj7WmqeW.js} +3 -3
- package/{analyser-service-WPf-QuDW.js.map → analyser-service-Cj7WmqeW.js.map} +1 -1
- package/analyserService.mjs +3 -3
- package/{arc4-clientgen-DgWfvOGz.js → arc4-clientgen-7yQnFyxH.js} +2 -2
- package/{arc4-clientgen-DgWfvOGz.js.map → arc4-clientgen-7yQnFyxH.js.map} +1 -1
- package/awst_build/ptypes/arc4-types.d.ts +3 -3
- package/awst_build/ptypes/index.d.ts +12 -12
- package/bin/puyats-clientgen.mjs +5 -5
- package/bin/puyats-ls.mjs +6 -6
- package/bin/run-cli.mjs +8 -8
- package/{check-node-version-DsAd6dpa.js → check-node-version-B3GLfQ0t.js} +3 -3
- package/{check-node-version-DsAd6dpa.js.map → check-node-version-B3GLfQ0t.js.map} +1 -1
- package/cli.mjs +8 -8
- package/{compile-BJw_a0H1.js → compile-DnShUPv7.js} +6 -6
- package/{compile-BJw_a0H1.js.map → compile-DnShUPv7.js.map} +1 -1
- package/{contract-class-model-CfKzhI4r.js → contract-class-model-D-NUE8Zg.js} +17 -17
- package/contract-class-model-D-NUE8Zg.js.map +1 -0
- package/index.mjs +23 -23
- package/{options-YRBC-TAk.js → options-DLmtdJgF.js} +34 -34
- package/options-DLmtdJgF.js.map +1 -0
- package/package.json +2 -2
- package/{resolve-puya-path-DLsqg26A.js → resolve-puya-path-CzSo6yHU.js} +4 -4
- package/{resolve-puya-path-DLsqg26A.js.map → resolve-puya-path-CzSo6yHU.js.map} +1 -1
- package/{semver-B8UJAUju.js → semver-DPkkKoZb.js} +2 -2
- package/{semver-B8UJAUju.js.map → semver-DPkkKoZb.js.map} +1 -1
- package/{util-BRWKzM85.js → util-dcGns5-2.js} +2 -2
- package/{util-BRWKzM85.js.map → util-dcGns5-2.js.map} +1 -1
- package/contract-class-model-CfKzhI4r.js.map +0 -1
- package/options-YRBC-TAk.js.map +0 -1
package/analyserService.mjs
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import 'crypto';
|
|
2
2
|
import 'node:worker_threads';
|
|
3
|
-
export { c as createAnalyserService } from './analyser-service-
|
|
4
|
-
import './contract-class-model-
|
|
5
|
-
import './options-
|
|
3
|
+
export { c as createAnalyserService } from './analyser-service-Cj7WmqeW.js';
|
|
4
|
+
import './contract-class-model-D-NUE8Zg.js';
|
|
5
|
+
import './options-DLmtdJgF.js';
|
|
6
6
|
import 'pathe';
|
|
7
7
|
import 'typescript';
|
|
8
8
|
import 'node:util';
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import * as abi from '@algorandfoundation/algokit-utils/abi';
|
|
2
2
|
import { existsSync } from 'fs';
|
|
3
3
|
import { writeFile, readFile } from 'fs/promises';
|
|
4
|
-
import { C as ContractReference, b as ContractClassModel, A as AbsolutePath, l as logger, c as CodeError, d as Constants, I as InternalError, e as accountPType, f as applicationPType, g as assetPType, v as voidPType, h as anyGtxnType, p as paymentGtxnType, k as keyRegistrationGtxnType, i as assetConfigGtxnType, j as assetTransferGtxnType, m as assetFreezeGtxnType, n as applicationCallGtxnType, O as OnCompletionAction } from './contract-class-model-
|
|
4
|
+
import { C as ContractReference, b as ContractClassModel, A as AbsolutePath, l as logger, c as CodeError, d as Constants, I as InternalError, e as accountPType, f as applicationPType, g as assetPType, v as voidPType, h as anyGtxnType, p as paymentGtxnType, k as keyRegistrationGtxnType, i as assetConfigGtxnType, j as assetTransferGtxnType, m as assetFreezeGtxnType, n as applicationCallGtxnType, O as OnCompletionAction } from './contract-class-model-D-NUE8Zg.js';
|
|
5
5
|
|
|
6
6
|
const AUTO_GENERATED_COMMENT = '// This file is auto-generated, do not modify';
|
|
7
7
|
const DISABLE_ESLINT_PRAGMA = '/* eslint-disable */';
|
|
@@ -321,4 +321,4 @@ function generateClientFor(contract) {
|
|
|
321
321
|
}
|
|
322
322
|
|
|
323
323
|
export { writeARC4Clients as a, writeARC4Client as w };
|
|
324
|
-
//# sourceMappingURL=arc4-clientgen-
|
|
324
|
+
//# sourceMappingURL=arc4-clientgen-7yQnFyxH.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"arc4-clientgen-DgWfvOGz.js","sources":["../src/arc4-clientgen.ts"],"sourcesContent":["import * as abi from '@algorandfoundation/algokit-utils/abi'\nimport { existsSync } from 'fs'\nimport { readFile, writeFile } from 'fs/promises'\nimport { ContractReference, OnCompletionAction } from './awst/models'\nimport type { CompilationSet } from './awst_build/models/contract-class-model'\nimport { ContractClassModel } from './awst_build/models/contract-class-model'\nimport type { ABICompatiblePType } from './awst_build/ptypes'\nimport * as ptype from './awst_build/ptypes'\nimport { Constants } from './constants'\nimport { CodeError, InternalError } from './errors'\nimport { logger } from './logger'\nimport type { AlgoFile } from './options'\nimport { AbsolutePath } from './util/absolute-path'\n\ntype Arc56Arg = abi.Arc56Method['args'][number]\n\ntype ClientTask = {\n spec: abi.Arc56Contract\n outFile: AbsolutePath\n}\n\nconst AUTO_GENERATED_COMMENT = '// This file is auto-generated, do not modify'\nconst DISABLE_ESLINT_PRAGMA = '/* eslint-disable */'\n\nconst ARC4_PYTYPE_MAPPING = new Map<string, ABICompatiblePType>([\n ['account', ptype.accountPType],\n ['application', ptype.applicationPType],\n ['asset', ptype.assetPType],\n ['void', ptype.voidPType],\n ['txn', ptype.anyGtxnType],\n ['pay', ptype.paymentGtxnType],\n ['keyreg', ptype.keyRegistrationGtxnType],\n ['acfg', ptype.assetConfigGtxnType],\n ['axfer', ptype.assetTransferGtxnType],\n ['afrz', ptype.assetFreezeGtxnType],\n ['appl', ptype.applicationCallGtxnType],\n])\n\nfunction resolveClients(\n compilationSet: CompilationSet,\n filePaths: AlgoFile[],\n arc56Contracts: Record<string, abi.Arc56Contract>,\n): ClientTask[] {\n const sourceFileToOutDir = new Map<string, AbsolutePath>()\n for (const { sourceFile, outDir } of filePaths) {\n sourceFileToOutDir.set(sourceFile.toString(), outDir)\n }\n\n const arc56Files = []\n for (const ref of compilationSet.compilationOutputSet) {\n if (!(ref instanceof ContractReference)) {\n continue\n }\n const model = compilationSet.get(ref)\n if (!(model instanceof ContractClassModel)) {\n continue\n }\n if (!model.type.isARC4) {\n continue\n }\n\n const sourceFile = AbsolutePath.resolve({ path: ref.moduleName })\n const outDir = sourceFileToOutDir.get(sourceFile.toString())\n if (outDir === undefined) {\n logger.error(undefined, `Could not find a source file for the contract ${ref.className} at ${ref.moduleName}`)\n continue\n }\n\n const spec = arc56Contracts[ref.id]\n if (spec === undefined) {\n logger.error(undefined, `Could not find a generated spec for the contract ${ref.className} at ${ref.moduleName}`)\n continue\n }\n\n const name = model.options?.name || model.name\n arc56Files.push({\n spec,\n outFile: outDir.join(`${name}.client.ts`),\n })\n }\n return arc56Files\n}\n\nexport function writeARC4Clients(compilationSet: CompilationSet, filePaths: AlgoFile[], arc56Contracts: Record<string, abi.Arc56Contract>) {\n const clientFiles = resolveClients(compilationSet, filePaths, arc56Contracts)\n return Promise.all(\n clientFiles.map(async (clientTask) => {\n await writeARC4Client(clientTask.spec, clientTask.outFile)\n }),\n )\n}\n\nexport async function writeARC4Client(spec: abi.Arc56Contract, outFile: AbsolutePath) {\n if (await shouldWriteFile(outFile)) {\n logger.info(undefined, `Writing ${outFile.relativeTo('.')}`)\n const typescriptClient = generateClientFor(spec)\n await writeFile(outFile.toString(), typescriptClient, { encoding: 'utf-8' })\n } else {\n logger.error(undefined, `Not outputting ${outFile.relativeTo('.')} since content does not appear to be auto-generated`)\n }\n}\n\nasync function shouldWriteFile(outFile: AbsolutePath): Promise<boolean> {\n const filePath = outFile.toString()\n // FIXME: There's a TOCTOU bug here...\n if (!existsSync(filePath)) {\n return true\n }\n const contents = await readFile(filePath, { encoding: 'utf-8' })\n return contents.startsWith(AUTO_GENERATED_COMMENT)\n}\n\nfunction generateClientFor(contract: abi.Arc56Contract): string {\n const typeImports = new Set<string>()\n const imports = new Set<string>()\n const structToClass = new Map<string, string>()\n const reservedClassNames = new Set<string>()\n const reservedMethodNames = new Set<string>()\n const classDecls: string[] = []\n\n function useImport(name: string, asValue: boolean) {\n if (asValue) {\n if (typeImports.has(name)) typeImports.delete(name)\n imports.add(name)\n } else if (!imports.has(name)) {\n typeImports.add(name)\n }\n }\n function indent(...texts: string[]): string {\n const INDENT = ' '\n return INDENT + texts.join('\\n').replaceAll(/\\n+/g, `$&${INDENT}`)\n }\n\n function classNameFor(name: string): string {\n const base_name = name\n let seq = 1\n while (reservedClassNames.has(name)) {\n seq++\n name = `${base_name}${seq}`\n }\n\n reservedClassNames.add(name)\n return name\n }\n\n function methodNameFor(name: string): string {\n const base_name = name\n let seq = 1\n while (reservedMethodNames.has(name)) {\n seq++\n name = `${base_name}${seq}`\n }\n\n reservedMethodNames.add(name)\n return name\n }\n\n function typeNameToAlgoTSName(typeName: string): string {\n const knownMapping = ARC4_PYTYPE_MAPPING.get(typeName)\n if (knownMapping !== undefined) {\n const { name, module } = knownMapping\n if (module === Constants.moduleNames.algoTs.gtxn) {\n useImport('gtxn', false)\n return `gtxn.${name}`\n } else if (module === Constants.moduleNames.algoTs.reference) {\n useImport(name, false)\n return name\n } else if (module === Constants.moduleNames.tslib) {\n // The TypeScript prelude is always imported\n return name\n }\n\n throw new InternalError(`Cannot import ${name}: The module ${module} is unsupported`)\n }\n return ARC4ToAlgoTSName(abi.ABIType.from(typeName))\n }\n\n function ARC4ToAlgoTSName(type: abi.ABIType): string {\n useImport('arc4', false)\n if (type instanceof abi.ABIBoolType) return 'arc4.Bool'\n if (type instanceof abi.ABIStringType) return 'arc4.Str'\n if (type instanceof abi.ABIAddressType) return 'arc4.Address'\n if (type instanceof abi.ABIByteType) return 'arc4.Byte'\n if (type instanceof abi.ABIUintType) return `arc4.Uint<${type.bitSize}>`\n if (type instanceof abi.ABIUfixedType) return `arc4.UFixed<${type.bitSize}, ${type.precision}>`\n if (type instanceof abi.ABIArrayStaticType) {\n const elementType = ARC4ToAlgoTSName(type.childType)\n return `arc4.StaticArray<${elementType}, ${type.length}>`\n }\n if (type instanceof abi.ABIArrayDynamicType) {\n if (type.childType instanceof abi.ABIByteType) return 'arc4.DynamicBytes'\n\n const elementType = ARC4ToAlgoTSName(type.childType)\n return `arc4.DynamicArray<${elementType}>`\n }\n if (type instanceof abi.ABITupleType) {\n const tupleTypes = type.childTypes.map(ARC4ToAlgoTSName)\n return `arc4.Tuple<readonly [${tupleTypes.join(', ')}]>`\n }\n throw new CodeError(`unknown ARC-4 type '${type}'`)\n }\n\n function getClientType(type: string): string {\n // map ABI / AVM type to algots type\n if (type === 'AVMUint64') {\n useImport('uint64', false)\n return 'uint64'\n } else if (type === 'AVMBytes') {\n useImport('bytes', false)\n return 'bytes'\n } else if (type in contract.structs) {\n return structToClass.get(type) || prepareStructClass(type, contract.structs[type])\n } else {\n return typeNameToAlgoTSName(type)\n }\n }\n\n function prepareStructClass(name: string, fields: abi.StructField[]) {\n useImport('arc4', true)\n\n const className = classNameFor(name)\n structToClass.set(name, className)\n const lines = ['', `export class ${className} extends arc4.Struct<{`]\n for (const field of fields) {\n let type: string\n if (typeof field.type === 'string') {\n type = getClientType(field.type)\n } else {\n // generate anonymous struct type\n const anonStruct = `${name}_${field.name}`\n type = prepareStructClass(anonStruct, field.type)\n }\n lines.push(indent(`${field.name}: ${type}`))\n }\n lines.push('}> {}')\n classDecls.push(...lines)\n return className\n }\n\n function tsdoc(description: string | undefined | null): string[] {\n if (description === undefined || description === null) {\n return []\n }\n return ['/**', ` * ${description.replaceAll(/\\n+/g, '$& * ')}`, ' */']\n }\n\n function compatibleActions(create: string[], call: string[]): boolean {\n if (create.length === 0) {\n return true\n }\n if (call.length === 0) {\n return true\n }\n // if both collections are present, then they are compatible if everything in\n // create is also in call\n const createSet = new Set(create)\n const callSet = new Set(call)\n return createSet.symmetricDifference(callSet).size === 0\n }\n\n function ARC4MethodToTSDecorator(name: string, method: abi.Arc56Method): string {\n useImport('abimethod', true)\n\n const abimethodArgs: string[] = []\n if (method.name !== name) {\n abimethodArgs.push(`name: '${method.name}'`)\n }\n if (method.readonly) {\n abimethodArgs.push('readonly: true')\n }\n // if any alias types are encountered, force index encoding\n const argTypes = new Set(method.args.map((v) => v.type))\n const aliasTypes = new Set(['asset', 'application', 'account'])\n if (argTypes.intersection(aliasTypes).size !== 0) {\n abimethodArgs.push(\"resourceEncoding: 'index'\")\n }\n if (!compatibleActions(method.actions.create, method.actions.call)) {\n // TODO: support this, once decorators support it\n throw new CodeError(`unsupported on completion combination for generating an ARC-4 client for method: ${method.name}`)\n }\n const actions = [...method.actions.create, ...method.actions.call]\n actions.sort((a, b) => OnCompletionAction[a] - OnCompletionAction[b])\n const uniqueActions = new Set(actions)\n\n if (!(uniqueActions.size === 1 && uniqueActions.has('NoOp'))) {\n abimethodArgs.push(`allowActions: [${actions.map((v) => `'${v}'`).join(', ')}]`)\n }\n if (method.actions.create.length !== 0 && method.actions.call.length !== 0) {\n abimethodArgs.push(\"onCreate: 'allow'\")\n } else if (method.actions.create.length !== 0) {\n abimethodArgs.push(\"onCreate: 'require'\")\n } else {\n // disallow is default\n }\n const args = abimethodArgs.length === 0 ? '' : `{ ${abimethodArgs.join(', ')} }`\n return `@abimethod(${args})`\n }\n\n function genArg(arg: Arc56Arg): string {\n const argType = getClientType(arg.struct || arg.type)\n return `${arg.name}: ${argType},`\n }\n\n function genMethod(method: abi.Arc56Method): string {\n useImport('err', true)\n\n const return_type = getClientType(method.returns.struct || method.returns.type)\n const method_name = methodNameFor(method.name)\n const args = method.args.map(genArg)\n let arglist: string\n if (args.length === 0) {\n // No args -> inline arglist\n arglist = '()'\n } else if (args.length === 1) {\n // One arg -> inline arglist (remove trailing comma)\n arglist = `(${args[0].slice(0, -1)})`\n } else {\n // At least two args -> multiline arglist\n arglist = `(\\n${indent(...args)}\\n)`\n }\n\n return indent(\n ...tsdoc(method.desc),\n ARC4MethodToTSDecorator(method_name, method),\n `${method_name}${arglist}: ${return_type} {`,\n indent(\"err('stub only')\"),\n '}',\n )\n }\n\n function genMethods(): string[] {\n const methods = []\n if (contract.methods.length !== 0) {\n methods.push(genMethod(contract.methods[0]))\n }\n for (const method of contract.methods.slice(1)) {\n methods.push(`\\n${genMethod(method)}`)\n }\n return methods\n }\n\n // generate class definitions for any referenced structs in methods\n // don't generate from self.contract.structs as it may contain other struct definitions\n const clientClass = classNameFor(contract.name)\n const docs = tsdoc(contract.desc)\n const methods = genMethods()\n useImport('Contract', true)\n\n const sortedTypeImports = [...typeImports].toSorted().join(', ')\n const sortedImports = [...imports].toSorted().join(', ')\n const lines = []\n // Header\n lines.push(AUTO_GENERATED_COMMENT)\n lines.push(DISABLE_ESLINT_PRAGMA)\n if (sortedTypeImports.length !== 0) lines.push(`import type { ${sortedTypeImports} } from '@algorandfoundation/algorand-typescript'`)\n if (sortedImports.length !== 0) lines.push(`import { ${sortedImports} } from '@algorandfoundation/algorand-typescript'`)\n\n lines.push(\n // Struct declarations\n ...classDecls,\n '',\n // Contract definition\n ...docs,\n `export abstract class ${clientClass} extends Contract {`,\n ...methods,\n '}',\n '',\n )\n return lines.join('\\n')\n}\n"],"names":["ptype.accountPType","ptype.applicationPType","ptype.assetPType","ptype.voidPType","ptype.anyGtxnType","ptype.paymentGtxnType","ptype.keyRegistrationGtxnType","ptype.assetConfigGtxnType","ptype.assetTransferGtxnType","ptype.assetFreezeGtxnType","ptype.applicationCallGtxnType"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"arc4-clientgen-7yQnFyxH.js","sources":["../src/arc4-clientgen.ts"],"sourcesContent":["import * as abi from '@algorandfoundation/algokit-utils/abi'\nimport { existsSync } from 'fs'\nimport { readFile, writeFile } from 'fs/promises'\nimport { ContractReference, OnCompletionAction } from './awst/models'\nimport type { CompilationSet } from './awst_build/models/contract-class-model'\nimport { ContractClassModel } from './awst_build/models/contract-class-model'\nimport type { ABICompatiblePType } from './awst_build/ptypes'\nimport * as ptype from './awst_build/ptypes'\nimport { Constants } from './constants'\nimport { CodeError, InternalError } from './errors'\nimport { logger } from './logger'\nimport type { AlgoFile } from './options'\nimport { AbsolutePath } from './util/absolute-path'\n\ntype Arc56Arg = abi.Arc56Method['args'][number]\n\ntype ClientTask = {\n spec: abi.Arc56Contract\n outFile: AbsolutePath\n}\n\nconst AUTO_GENERATED_COMMENT = '// This file is auto-generated, do not modify'\nconst DISABLE_ESLINT_PRAGMA = '/* eslint-disable */'\n\nconst ARC4_PYTYPE_MAPPING = new Map<string, ABICompatiblePType>([\n ['account', ptype.accountPType],\n ['application', ptype.applicationPType],\n ['asset', ptype.assetPType],\n ['void', ptype.voidPType],\n ['txn', ptype.anyGtxnType],\n ['pay', ptype.paymentGtxnType],\n ['keyreg', ptype.keyRegistrationGtxnType],\n ['acfg', ptype.assetConfigGtxnType],\n ['axfer', ptype.assetTransferGtxnType],\n ['afrz', ptype.assetFreezeGtxnType],\n ['appl', ptype.applicationCallGtxnType],\n])\n\nfunction resolveClients(\n compilationSet: CompilationSet,\n filePaths: AlgoFile[],\n arc56Contracts: Record<string, abi.Arc56Contract>,\n): ClientTask[] {\n const sourceFileToOutDir = new Map<string, AbsolutePath>()\n for (const { sourceFile, outDir } of filePaths) {\n sourceFileToOutDir.set(sourceFile.toString(), outDir)\n }\n\n const arc56Files = []\n for (const ref of compilationSet.compilationOutputSet) {\n if (!(ref instanceof ContractReference)) {\n continue\n }\n const model = compilationSet.get(ref)\n if (!(model instanceof ContractClassModel)) {\n continue\n }\n if (!model.type.isARC4) {\n continue\n }\n\n const sourceFile = AbsolutePath.resolve({ path: ref.moduleName })\n const outDir = sourceFileToOutDir.get(sourceFile.toString())\n if (outDir === undefined) {\n logger.error(undefined, `Could not find a source file for the contract ${ref.className} at ${ref.moduleName}`)\n continue\n }\n\n const spec = arc56Contracts[ref.id]\n if (spec === undefined) {\n logger.error(undefined, `Could not find a generated spec for the contract ${ref.className} at ${ref.moduleName}`)\n continue\n }\n\n const name = model.options?.name || model.name\n arc56Files.push({\n spec,\n outFile: outDir.join(`${name}.client.ts`),\n })\n }\n return arc56Files\n}\n\nexport function writeARC4Clients(compilationSet: CompilationSet, filePaths: AlgoFile[], arc56Contracts: Record<string, abi.Arc56Contract>) {\n const clientFiles = resolveClients(compilationSet, filePaths, arc56Contracts)\n return Promise.all(\n clientFiles.map(async (clientTask) => {\n await writeARC4Client(clientTask.spec, clientTask.outFile)\n }),\n )\n}\n\nexport async function writeARC4Client(spec: abi.Arc56Contract, outFile: AbsolutePath) {\n if (await shouldWriteFile(outFile)) {\n logger.info(undefined, `Writing ${outFile.relativeTo('.')}`)\n const typescriptClient = generateClientFor(spec)\n await writeFile(outFile.toString(), typescriptClient, { encoding: 'utf-8' })\n } else {\n logger.error(undefined, `Not outputting ${outFile.relativeTo('.')} since content does not appear to be auto-generated`)\n }\n}\n\nasync function shouldWriteFile(outFile: AbsolutePath): Promise<boolean> {\n const filePath = outFile.toString()\n // FIXME: There's a TOCTOU bug here...\n if (!existsSync(filePath)) {\n return true\n }\n const contents = await readFile(filePath, { encoding: 'utf-8' })\n return contents.startsWith(AUTO_GENERATED_COMMENT)\n}\n\nfunction generateClientFor(contract: abi.Arc56Contract): string {\n const typeImports = new Set<string>()\n const imports = new Set<string>()\n const structToClass = new Map<string, string>()\n const reservedClassNames = new Set<string>()\n const reservedMethodNames = new Set<string>()\n const classDecls: string[] = []\n\n function useImport(name: string, asValue: boolean) {\n if (asValue) {\n if (typeImports.has(name)) typeImports.delete(name)\n imports.add(name)\n } else if (!imports.has(name)) {\n typeImports.add(name)\n }\n }\n function indent(...texts: string[]): string {\n const INDENT = ' '\n return INDENT + texts.join('\\n').replaceAll(/\\n+/g, `$&${INDENT}`)\n }\n\n function classNameFor(name: string): string {\n const base_name = name\n let seq = 1\n while (reservedClassNames.has(name)) {\n seq++\n name = `${base_name}${seq}`\n }\n\n reservedClassNames.add(name)\n return name\n }\n\n function methodNameFor(name: string): string {\n const base_name = name\n let seq = 1\n while (reservedMethodNames.has(name)) {\n seq++\n name = `${base_name}${seq}`\n }\n\n reservedMethodNames.add(name)\n return name\n }\n\n function typeNameToAlgoTSName(typeName: string): string {\n const knownMapping = ARC4_PYTYPE_MAPPING.get(typeName)\n if (knownMapping !== undefined) {\n const { name, module } = knownMapping\n if (module === Constants.moduleNames.algoTs.gtxn) {\n useImport('gtxn', false)\n return `gtxn.${name}`\n } else if (module === Constants.moduleNames.algoTs.reference) {\n useImport(name, false)\n return name\n } else if (module === Constants.moduleNames.tslib) {\n // The TypeScript prelude is always imported\n return name\n }\n\n throw new InternalError(`Cannot import ${name}: The module ${module} is unsupported`)\n }\n return ARC4ToAlgoTSName(abi.ABIType.from(typeName))\n }\n\n function ARC4ToAlgoTSName(type: abi.ABIType): string {\n useImport('arc4', false)\n if (type instanceof abi.ABIBoolType) return 'arc4.Bool'\n if (type instanceof abi.ABIStringType) return 'arc4.Str'\n if (type instanceof abi.ABIAddressType) return 'arc4.Address'\n if (type instanceof abi.ABIByteType) return 'arc4.Byte'\n if (type instanceof abi.ABIUintType) return `arc4.Uint<${type.bitSize}>`\n if (type instanceof abi.ABIUfixedType) return `arc4.UFixed<${type.bitSize}, ${type.precision}>`\n if (type instanceof abi.ABIArrayStaticType) {\n const elementType = ARC4ToAlgoTSName(type.childType)\n return `arc4.StaticArray<${elementType}, ${type.length}>`\n }\n if (type instanceof abi.ABIArrayDynamicType) {\n if (type.childType instanceof abi.ABIByteType) return 'arc4.DynamicBytes'\n\n const elementType = ARC4ToAlgoTSName(type.childType)\n return `arc4.DynamicArray<${elementType}>`\n }\n if (type instanceof abi.ABITupleType) {\n const tupleTypes = type.childTypes.map(ARC4ToAlgoTSName)\n return `arc4.Tuple<readonly [${tupleTypes.join(', ')}]>`\n }\n throw new CodeError(`unknown ARC-4 type '${type}'`)\n }\n\n function getClientType(type: string): string {\n // map ABI / AVM type to algots type\n if (type === 'AVMUint64') {\n useImport('uint64', false)\n return 'uint64'\n } else if (type === 'AVMBytes') {\n useImport('bytes', false)\n return 'bytes'\n } else if (type in contract.structs) {\n return structToClass.get(type) || prepareStructClass(type, contract.structs[type])\n } else {\n return typeNameToAlgoTSName(type)\n }\n }\n\n function prepareStructClass(name: string, fields: abi.StructField[]) {\n useImport('arc4', true)\n\n const className = classNameFor(name)\n structToClass.set(name, className)\n const lines = ['', `export class ${className} extends arc4.Struct<{`]\n for (const field of fields) {\n let type: string\n if (typeof field.type === 'string') {\n type = getClientType(field.type)\n } else {\n // generate anonymous struct type\n const anonStruct = `${name}_${field.name}`\n type = prepareStructClass(anonStruct, field.type)\n }\n lines.push(indent(`${field.name}: ${type}`))\n }\n lines.push('}> {}')\n classDecls.push(...lines)\n return className\n }\n\n function tsdoc(description: string | undefined | null): string[] {\n if (description === undefined || description === null) {\n return []\n }\n return ['/**', ` * ${description.replaceAll(/\\n+/g, '$& * ')}`, ' */']\n }\n\n function compatibleActions(create: string[], call: string[]): boolean {\n if (create.length === 0) {\n return true\n }\n if (call.length === 0) {\n return true\n }\n // if both collections are present, then they are compatible if everything in\n // create is also in call\n const createSet = new Set(create)\n const callSet = new Set(call)\n return createSet.symmetricDifference(callSet).size === 0\n }\n\n function ARC4MethodToTSDecorator(name: string, method: abi.Arc56Method): string {\n useImport('abimethod', true)\n\n const abimethodArgs: string[] = []\n if (method.name !== name) {\n abimethodArgs.push(`name: '${method.name}'`)\n }\n if (method.readonly) {\n abimethodArgs.push('readonly: true')\n }\n // if any alias types are encountered, force index encoding\n const argTypes = new Set(method.args.map((v) => v.type))\n const aliasTypes = new Set(['asset', 'application', 'account'])\n if (argTypes.intersection(aliasTypes).size !== 0) {\n abimethodArgs.push(\"resourceEncoding: 'index'\")\n }\n if (!compatibleActions(method.actions.create, method.actions.call)) {\n // TODO: support this, once decorators support it\n throw new CodeError(`unsupported on completion combination for generating an ARC-4 client for method: ${method.name}`)\n }\n const actions = [...method.actions.create, ...method.actions.call]\n actions.sort((a, b) => OnCompletionAction[a] - OnCompletionAction[b])\n const uniqueActions = new Set(actions)\n\n if (!(uniqueActions.size === 1 && uniqueActions.has('NoOp'))) {\n abimethodArgs.push(`allowActions: [${actions.map((v) => `'${v}'`).join(', ')}]`)\n }\n if (method.actions.create.length !== 0 && method.actions.call.length !== 0) {\n abimethodArgs.push(\"onCreate: 'allow'\")\n } else if (method.actions.create.length !== 0) {\n abimethodArgs.push(\"onCreate: 'require'\")\n } else {\n // disallow is default\n }\n const args = abimethodArgs.length === 0 ? '' : `{ ${abimethodArgs.join(', ')} }`\n return `@abimethod(${args})`\n }\n\n function genArg(arg: Arc56Arg): string {\n const argType = getClientType(arg.struct || arg.type)\n return `${arg.name}: ${argType},`\n }\n\n function genMethod(method: abi.Arc56Method): string {\n useImport('err', true)\n\n const return_type = getClientType(method.returns.struct || method.returns.type)\n const method_name = methodNameFor(method.name)\n const args = method.args.map(genArg)\n let arglist: string\n if (args.length === 0) {\n // No args -> inline arglist\n arglist = '()'\n } else if (args.length === 1) {\n // One arg -> inline arglist (remove trailing comma)\n arglist = `(${args[0].slice(0, -1)})`\n } else {\n // At least two args -> multiline arglist\n arglist = `(\\n${indent(...args)}\\n)`\n }\n\n return indent(\n ...tsdoc(method.desc),\n ARC4MethodToTSDecorator(method_name, method),\n `${method_name}${arglist}: ${return_type} {`,\n indent(\"err('stub only')\"),\n '}',\n )\n }\n\n function genMethods(): string[] {\n const methods = []\n if (contract.methods.length !== 0) {\n methods.push(genMethod(contract.methods[0]))\n }\n for (const method of contract.methods.slice(1)) {\n methods.push(`\\n${genMethod(method)}`)\n }\n return methods\n }\n\n // generate class definitions for any referenced structs in methods\n // don't generate from self.contract.structs as it may contain other struct definitions\n const clientClass = classNameFor(contract.name)\n const docs = tsdoc(contract.desc)\n const methods = genMethods()\n useImport('Contract', true)\n\n const sortedTypeImports = [...typeImports].toSorted().join(', ')\n const sortedImports = [...imports].toSorted().join(', ')\n const lines = []\n // Header\n lines.push(AUTO_GENERATED_COMMENT)\n lines.push(DISABLE_ESLINT_PRAGMA)\n if (sortedTypeImports.length !== 0) lines.push(`import type { ${sortedTypeImports} } from '@algorandfoundation/algorand-typescript'`)\n if (sortedImports.length !== 0) lines.push(`import { ${sortedImports} } from '@algorandfoundation/algorand-typescript'`)\n\n lines.push(\n // Struct declarations\n ...classDecls,\n '',\n // Contract definition\n ...docs,\n `export abstract class ${clientClass} extends Contract {`,\n ...methods,\n '}',\n '',\n )\n return lines.join('\\n')\n}\n"],"names":["ptype.accountPType","ptype.applicationPType","ptype.assetPType","ptype.voidPType","ptype.anyGtxnType","ptype.paymentGtxnType","ptype.keyRegistrationGtxnType","ptype.assetConfigGtxnType","ptype.assetTransferGtxnType","ptype.assetFreezeGtxnType","ptype.applicationCallGtxnType"],"mappings":"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"}
|
|
@@ -87,7 +87,7 @@ export declare class ARC4StructType extends ARC4EncodedType {
|
|
|
87
87
|
accept<T>(visitor: PTypeVisitor<T>): T;
|
|
88
88
|
}
|
|
89
89
|
export declare const arc4StructBaseType: ARC4StructType;
|
|
90
|
-
export declare const
|
|
90
|
+
export declare const ARC4TupleGeneric: GenericPType<ARC4TupleType>;
|
|
91
91
|
export declare class ARC4TupleType extends ARC4EncodedType {
|
|
92
92
|
readonly [PType.IdSymbol] = "ARC4TupleType";
|
|
93
93
|
readonly name: string;
|
|
@@ -191,8 +191,8 @@ export declare class StaticBytesType extends StaticArrayType {
|
|
|
191
191
|
length: bigint;
|
|
192
192
|
});
|
|
193
193
|
}
|
|
194
|
-
export declare const
|
|
195
|
-
export declare const
|
|
194
|
+
export declare const DynamicBytesClass: LibClassType;
|
|
195
|
+
export declare const dynamicBytesType: DynamicArrayType;
|
|
196
196
|
export declare const convertBytesFunction: LibFunctionType;
|
|
197
197
|
export declare const encodeArc4Function: LibFunctionType;
|
|
198
198
|
export declare const sizeOfFunction: LibFunctionType;
|
|
@@ -582,7 +582,7 @@ export declare const AssetFunction: LibFunctionType;
|
|
|
582
582
|
export declare const accountPType: ABICompatibleInstanceType;
|
|
583
583
|
export declare const AccountFunction: LibFunctionType;
|
|
584
584
|
export declare const applicationPType: ABICompatibleInstanceType;
|
|
585
|
-
export declare const
|
|
585
|
+
export declare const ApplicationFunction: LibFunctionType;
|
|
586
586
|
export declare const ClearStateProgram: FunctionPType;
|
|
587
587
|
export declare const ApprovalProgram: FunctionPType;
|
|
588
588
|
export declare const baseContractType: BaseContractClassType;
|
|
@@ -626,7 +626,7 @@ export declare const AssetTransferTxnFunction: TransactionFunctionType;
|
|
|
626
626
|
export declare const assetFreezeGtxnType: GroupTransactionPType;
|
|
627
627
|
export declare const AssetFreezeTxnFunction: TransactionFunctionType;
|
|
628
628
|
export declare const applicationCallGtxnType: GroupTransactionPType;
|
|
629
|
-
export declare const
|
|
629
|
+
export declare const ApplicationCallTxnFunction: TransactionFunctionType;
|
|
630
630
|
export declare const anyGtxnType: GroupTransactionPType;
|
|
631
631
|
export declare const TransactionFunction: TransactionFunctionType;
|
|
632
632
|
export declare const assertMatchFunction: LibFunctionType;
|
|
@@ -690,12 +690,12 @@ export declare class GeneratorType extends UnsupportedType {
|
|
|
690
690
|
nextType: PType;
|
|
691
691
|
});
|
|
692
692
|
}
|
|
693
|
-
export declare const
|
|
694
|
-
export declare const
|
|
695
|
-
export declare const
|
|
696
|
-
export declare const
|
|
697
|
-
export declare const
|
|
698
|
-
export declare const
|
|
693
|
+
export declare const paymentItxnFunction: TransactionFunctionType;
|
|
694
|
+
export declare const keyRegistrationItxnFunction: TransactionFunctionType;
|
|
695
|
+
export declare const assetConfigItxnFunction: TransactionFunctionType;
|
|
696
|
+
export declare const assetTransferItxnFunction: TransactionFunctionType;
|
|
697
|
+
export declare const assetFreezeItxnFunction: TransactionFunctionType;
|
|
698
|
+
export declare const applicationCallItxnFunction: TransactionFunctionType;
|
|
699
699
|
export declare class InnerTransactionPType extends PType {
|
|
700
700
|
readonly [PType.IdSymbol] = "InnerTransactionPType";
|
|
701
701
|
get wtype(): wtypes.WInnerTransaction;
|
|
@@ -733,13 +733,13 @@ export declare const assetTransferItxnType: InnerTransactionPType;
|
|
|
733
733
|
export declare const assetFreezeItxnParamsType: ItxnParamsPType;
|
|
734
734
|
export declare const assetFreezeItxnType: InnerTransactionPType;
|
|
735
735
|
export declare const applicationCallItxnParamsType: ItxnParamsPType;
|
|
736
|
-
export declare const
|
|
736
|
+
export declare const applicationCallItxnType: InnerTransactionPType;
|
|
737
737
|
export declare const anyItxnParamsType: ItxnParamsPType;
|
|
738
738
|
export declare const anyItxnType: InnerTransactionPType;
|
|
739
739
|
export declare const inputOnlyObjects: ObjectWithOptionalFieldsType[];
|
|
740
740
|
export declare const submitGroupItxnFunction: LibFunctionType;
|
|
741
741
|
export declare const TemplateVarFunction: LibFunctionType;
|
|
742
|
-
export declare const
|
|
742
|
+
export declare const compileFunction: LibFunctionType;
|
|
743
743
|
export declare const compiledContractType: ImmutableObjectPType;
|
|
744
744
|
export declare const compiledLogicSigType: ImmutableObjectPType;
|
|
745
745
|
export declare const arc28EmitFunction: LibFunctionType;
|
|
@@ -775,5 +775,5 @@ export declare class ReferenceArrayType extends PType {
|
|
|
775
775
|
accept<T>(visitor: PTypeVisitor<T>): T;
|
|
776
776
|
}
|
|
777
777
|
export declare const itxnComposePType: LibObjType;
|
|
778
|
-
export declare const
|
|
779
|
-
export declare const
|
|
778
|
+
export declare const cloneFunction: LibFunctionType;
|
|
779
|
+
export declare const validateEncodingFunction: LibFunctionType;
|
package/bin/puyats-clientgen.mjs
CHANGED
|
@@ -2,11 +2,11 @@
|
|
|
2
2
|
import { arc32ToArc56 } from '@algorandfoundation/algokit-utils/app-spec';
|
|
3
3
|
import { ArgumentParser } from 'argparse';
|
|
4
4
|
import { readFile } from 'fs/promises';
|
|
5
|
-
import { w as writeARC4Client } from '../arc4-clientgen-
|
|
6
|
-
import { a as appVersion } from '../semver-
|
|
7
|
-
import { c as checkNodeVersion } from '../check-node-version-
|
|
8
|
-
import { a as addEnumArg, C as ConsoleLogSink } from '../util-
|
|
9
|
-
import { L as LogLevel, l as logger, A as AbsolutePath, P as PuyaError, a as LoggingContext } from '../contract-class-model-
|
|
5
|
+
import { w as writeARC4Client } from '../arc4-clientgen-7yQnFyxH.js';
|
|
6
|
+
import { a as appVersion } from '../semver-DPkkKoZb.js';
|
|
7
|
+
import { c as checkNodeVersion } from '../check-node-version-B3GLfQ0t.js';
|
|
8
|
+
import { a as addEnumArg, C as ConsoleLogSink } from '../util-dcGns5-2.js';
|
|
9
|
+
import { L as LogLevel, l as logger, A as AbsolutePath, P as PuyaError, a as LoggingContext } from '../contract-class-model-D-NUE8Zg.js';
|
|
10
10
|
import '@algorandfoundation/algokit-utils/abi';
|
|
11
11
|
import 'fs';
|
|
12
12
|
import 'node:url';
|
package/bin/puyats-ls.mjs
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { ArgumentParser, BooleanOptionalAction } from 'argparse';
|
|
3
|
-
import { b as packageVersion, a as appVersion } from '../semver-
|
|
4
|
-
import { c as checkNodeVersion } from '../check-node-version-
|
|
3
|
+
import { b as packageVersion, a as appVersion } from '../semver-DPkkKoZb.js';
|
|
4
|
+
import { c as checkNodeVersion } from '../check-node-version-B3GLfQ0t.js';
|
|
5
5
|
import { __esDecorate, __runInitializers } from 'tslib';
|
|
6
|
-
import { r as requireMain, l as logCaughtExpression, L as LogExceptions, c as createAnalyserService, a as createNormalisedTextDocumentConnection, n as normalisedUri, i as isCodeFixData } from '../analyser-service-
|
|
7
|
-
import { L as LogLevel, cl as distinct, l as logger, cm as zipStrict, d as Constants } from '../contract-class-model-
|
|
8
|
-
import { r as resolvePuyaPath } from '../resolve-puya-path-
|
|
6
|
+
import { r as requireMain, l as logCaughtExpression, L as LogExceptions, c as createAnalyserService, a as createNormalisedTextDocumentConnection, n as normalisedUri, i as isCodeFixData } from '../analyser-service-Cj7WmqeW.js';
|
|
7
|
+
import { L as LogLevel, cl as distinct, l as logger, cm as zipStrict, d as Constants } from '../contract-class-model-D-NUE8Zg.js';
|
|
8
|
+
import { r as resolvePuyaPath } from '../resolve-puya-path-CzSo6yHU.js';
|
|
9
9
|
import EventEmitter from 'node:events';
|
|
10
|
-
import { a7 as DefaultMap } from '../options-
|
|
10
|
+
import { a7 as DefaultMap } from '../options-DLmtdJgF.js';
|
|
11
11
|
import 'fs';
|
|
12
12
|
import 'node:url';
|
|
13
13
|
import 'pathe';
|
package/bin/run-cli.mjs
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import '../cli.mjs';
|
|
3
3
|
import 'argparse';
|
|
4
|
-
import '../semver-
|
|
4
|
+
import '../semver-DPkkKoZb.js';
|
|
5
5
|
import 'fs';
|
|
6
6
|
import 'node:url';
|
|
7
7
|
import 'pathe';
|
|
8
|
-
import '../contract-class-model-
|
|
8
|
+
import '../contract-class-model-D-NUE8Zg.js';
|
|
9
9
|
import 'typescript';
|
|
10
10
|
import 'node:fs';
|
|
11
11
|
import 'node:util';
|
|
12
12
|
import 'node:crypto';
|
|
13
13
|
import 'polytype';
|
|
14
14
|
import 'node:async_hooks';
|
|
15
|
-
import '../compile-
|
|
16
|
-
import '../arc4-clientgen-
|
|
15
|
+
import '../compile-DnShUPv7.js';
|
|
16
|
+
import '../arc4-clientgen-7yQnFyxH.js';
|
|
17
17
|
import '@algorandfoundation/algokit-utils/abi';
|
|
18
18
|
import 'fs/promises';
|
|
19
|
-
import '../options-
|
|
19
|
+
import '../options-DLmtdJgF.js';
|
|
20
20
|
import 'arcsecond';
|
|
21
21
|
import 'tslib';
|
|
22
22
|
import 'node:buffer';
|
|
@@ -29,11 +29,11 @@ import 'net';
|
|
|
29
29
|
import 'change-case';
|
|
30
30
|
import 'glob';
|
|
31
31
|
import 'minimatch';
|
|
32
|
-
import '../resolve-puya-path-
|
|
32
|
+
import '../resolve-puya-path-CzSo6yHU.js';
|
|
33
33
|
import 'signal-exit';
|
|
34
34
|
import 'tar';
|
|
35
35
|
import 'node:zlib';
|
|
36
|
-
import '../util-
|
|
36
|
+
import '../util-dcGns5-2.js';
|
|
37
37
|
import 'chalk';
|
|
38
|
-
import '../check-node-version-
|
|
38
|
+
import '../check-node-version-B3GLfQ0t.js';
|
|
39
39
|
//# sourceMappingURL=run-cli.mjs.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
|
-
import { d as Constants } from './contract-class-model-
|
|
3
|
-
import { p as parseSemVer } from './semver-
|
|
2
|
+
import { d as Constants } from './contract-class-model-D-NUE8Zg.js';
|
|
3
|
+
import { p as parseSemVer } from './semver-DPkkKoZb.js';
|
|
4
4
|
|
|
5
5
|
function writeError(text) {
|
|
6
6
|
// eslint-disable-next-line no-console
|
|
@@ -17,4 +17,4 @@ function checkNodeVersion() {
|
|
|
17
17
|
}
|
|
18
18
|
|
|
19
19
|
export { checkNodeVersion as c };
|
|
20
|
-
//# sourceMappingURL=check-node-version-
|
|
20
|
+
//# sourceMappingURL=check-node-version-B3GLfQ0t.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"check-node-version-
|
|
1
|
+
{"version":3,"file":"check-node-version-B3GLfQ0t.js","sources":["../src/cli/check-node-version.ts"],"sourcesContent":["import chalk from 'chalk'\nimport { Constants } from '../constants'\nimport { parseSemVer } from '../puya/semver'\n\nfunction writeError(text: string) {\n // eslint-disable-next-line no-console\n console.error(chalk.red(text))\n}\n\nexport function checkNodeVersion() {\n const min = parseSemVer(Constants.minNodeVersion)\n const actual = parseSemVer(process.versions.node)\n\n if (\n actual.major < min.major ||\n (actual.major === min.major && actual.minor < min.minor) ||\n (actual.major === min.major && actual.minor === min.minor && actual.rev < min.rev)\n ) {\n writeError(\n `Installed node version ${process.versions.node} is older than the minimum required version ${Constants.minNodeVersion}. You may experience compatibility issues.`,\n )\n }\n}\n"],"names":[],"mappings":";;;;AAIA,SAAS,UAAU,CAAC,IAAY,EAAA;;IAE9B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;AAChC;SAEgB,gBAAgB,GAAA;IAC9B,MAAM,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC,cAAc,CAAC;IACjD,MAAM,MAAM,GAAG,WAAW,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;AAEjD,IAAA,IACE,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK;AACxB,SAAC,MAAM,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC;SACvD,MAAM,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,KAAK,GAAG,CAAC,KAAK,IAAI,MAAM,CAAC,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,EAClF;AACA,QAAA,UAAU,CACR,CAAA,uBAAA,EAA0B,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAA,4CAAA,EAA+C,SAAS,CAAC,cAAc,CAAA,0CAAA,CAA4C,CACnK;IACH;AACF;;;;"}
|
package/cli.mjs
CHANGED
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { BooleanOptionalAction, ArgumentParser } from 'argparse';
|
|
2
|
-
import { a as appVersion } from './semver-
|
|
3
|
-
import { c as compile } from './compile-
|
|
4
|
-
import { _ as defaultPuyaOptions, X as processInputPaths, V as CompileOptions, $ as parseCliTemplateVar, a0 as LocalsCoalescingStrategy } from './options-
|
|
5
|
-
import { l as logger, A as AbsolutePath, a as LoggingContext, L as LogLevel } from './contract-class-model-
|
|
6
|
-
import { a as addEnumArg, C as ConsoleLogSink, c as convertInt } from './util-
|
|
7
|
-
import { c as checkNodeVersion } from './check-node-version-
|
|
2
|
+
import { a as appVersion } from './semver-DPkkKoZb.js';
|
|
3
|
+
import { c as compile } from './compile-DnShUPv7.js';
|
|
4
|
+
import { _ as defaultPuyaOptions, X as processInputPaths, V as CompileOptions, $ as parseCliTemplateVar, a0 as LocalsCoalescingStrategy } from './options-DLmtdJgF.js';
|
|
5
|
+
import { l as logger, A as AbsolutePath, a as LoggingContext, L as LogLevel } from './contract-class-model-D-NUE8Zg.js';
|
|
6
|
+
import { a as addEnumArg, C as ConsoleLogSink, c as convertInt } from './util-dcGns5-2.js';
|
|
7
|
+
import { c as checkNodeVersion } from './check-node-version-B3GLfQ0t.js';
|
|
8
8
|
import 'fs';
|
|
9
9
|
import 'node:url';
|
|
10
10
|
import 'pathe';
|
|
11
|
-
import './arc4-clientgen-
|
|
11
|
+
import './arc4-clientgen-7yQnFyxH.js';
|
|
12
12
|
import '@algorandfoundation/algokit-utils/abi';
|
|
13
13
|
import 'fs/promises';
|
|
14
14
|
import 'typescript';
|
|
15
|
-
import './resolve-puya-path-
|
|
15
|
+
import './resolve-puya-path-CzSo6yHU.js';
|
|
16
16
|
import 'tslib';
|
|
17
17
|
import 'signal-exit';
|
|
18
18
|
import 'cross-spawn';
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { a as writeARC4Clients } from './arc4-clientgen-
|
|
2
|
-
import { a1 as PuyaService, a2 as deserializeAndLog, Y as registerPTypes, a3 as createTsProgram, a4 as buildAwst, a5 as validateAwst, Z as typeRegistry } from './options-
|
|
3
|
-
import { a as appVersion } from './semver-
|
|
4
|
-
import { ck as mkDirIfNotExists, L as LogLevel, a as LoggingContext, l as logger } from './contract-class-model-
|
|
1
|
+
import { a as writeARC4Clients } from './arc4-clientgen-7yQnFyxH.js';
|
|
2
|
+
import { a1 as PuyaService, a2 as deserializeAndLog, Y as registerPTypes, a3 as createTsProgram, a4 as buildAwst, a5 as validateAwst, Z as typeRegistry } from './options-DLmtdJgF.js';
|
|
3
|
+
import { a as appVersion } from './semver-DPkkKoZb.js';
|
|
4
|
+
import { ck as mkDirIfNotExists, L as LogLevel, a as LoggingContext, l as logger } from './contract-class-model-D-NUE8Zg.js';
|
|
5
5
|
import ts from 'typescript';
|
|
6
|
-
import { r as resolvePuyaPath } from './resolve-puya-path-
|
|
6
|
+
import { r as resolvePuyaPath } from './resolve-puya-path-CzSo6yHU.js';
|
|
7
7
|
|
|
8
8
|
function buildCompilationSetMapping({ awst, inputPaths, compilationSet, }) {
|
|
9
9
|
const setIds = new Set(compilationSet.compilationOutputSet.map((s) => s.id));
|
|
@@ -110,4 +110,4 @@ async function compile(options, puyaService) {
|
|
|
110
110
|
}
|
|
111
111
|
|
|
112
112
|
export { compile as c };
|
|
113
|
-
//# sourceMappingURL=compile-
|
|
113
|
+
//# sourceMappingURL=compile-DnShUPv7.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compile-
|
|
1
|
+
{"version":3,"file":"compile-DnShUPv7.js","sources":["../src/puya/build-compilation-set-mapping.ts","../src/puya/index.ts","../src/compile.ts"],"sourcesContent":["import type { AWST } from '../awst/nodes'\nimport type { CompilationSet } from '../awst_build/models/contract-class-model'\nimport type { AlgoFile, CompilationSetMapping } from '../options'\nimport { mkDirIfNotExists } from '../util'\n\nexport function buildCompilationSetMapping({\n awst,\n inputPaths,\n compilationSet,\n}: {\n awst: AWST[]\n inputPaths: AlgoFile[]\n compilationSet: CompilationSet\n}): CompilationSetMapping {\n const setIds = new Set(compilationSet.compilationOutputSet.map((s) => s.id))\n\n return awst.reduce((acc, cur) => {\n if (setIds.has(cur.id.toString())) {\n const matchedPath = inputPaths.find((p) => cur.sourceLocation.file && p.sourceFile.equals(cur.sourceLocation.file))\n if (matchedPath) {\n mkDirIfNotExists(matchedPath.outDir.toString())\n acc[cur.id.toString()] = matchedPath.outDir.toString()\n }\n }\n return acc\n }, {} as CompilationSetMapping)\n}\n","import ts from 'typescript'\nimport type { AWST } from '../awst/nodes'\nimport type { CompilationSet } from '../awst_build/models/contract-class-model'\nimport { LogLevel } from '../logger'\nimport type { CompileOptions } from '../options'\nimport type { SourceFileMapping } from '../parser'\nimport type { AbsolutePath } from '../util/absolute-path'\nimport { buildCompilationSetMapping } from './build-compilation-set-mapping'\nimport { deserializeAndLog } from './log-deserializer'\nimport { PuyaService } from './puya-service'\nimport { resolvePuyaPath } from './resolve-puya-path'\n\nexport async function puyaCompile({\n moduleAwst,\n programDirectory,\n sourceFiles,\n options,\n compilationSet,\n puyaService,\n}: {\n moduleAwst: AWST[]\n programDirectory: AbsolutePath\n sourceFiles: SourceFileMapping\n options: CompileOptions\n compilationSet: CompilationSet\n puyaService?: PuyaService\n}) {\n const puyaPath = await resolvePuyaPath(options)\n const localPuyaService = puyaService ?? new PuyaService({ puyaPath })\n const puyaOptions = options.buildPuyaOptions(\n buildCompilationSetMapping({\n awst: moduleAwst,\n inputPaths: options.filePaths,\n compilationSet,\n }),\n )\n\n const response = await localPuyaService.compile({\n awst: moduleAwst,\n options: puyaOptions,\n base_path: programDirectory.toString(),\n log_level: getPuyaLogLevel(options.logLevel),\n source_annotations: getSourceFileContents(sourceFiles),\n })\n // Shutdown service if we created it locally\n if (puyaService === undefined) await localPuyaService.shutdown()\n for (const log of response.logs) {\n deserializeAndLog(log)\n }\n\n return response\n}\n\nfunction getPuyaLogLevel(logLevel: LogLevel): string {\n switch (logLevel) {\n case LogLevel.Debug:\n return 'debug'\n case LogLevel.Info:\n return 'info'\n case LogLevel.Warning:\n return 'warning'\n case LogLevel.Error:\n return 'error'\n case LogLevel.Critical:\n return 'critical'\n }\n}\nfunction getSourceFileContents(sourceFiles: SourceFileMapping) {\n return Object.fromEntries(\n Object.entries(sourceFiles).map(([key, value]) => {\n const source = ts.isSourceFile(value) ? value.getFullText().replace(/\\r\\n/g, '\\n').split(/\\n/g) : value\n return [key, source] as const\n }),\n )\n}\n","import type ts from 'typescript'\nimport { writeARC4Clients } from './arc4-clientgen'\nimport type { AWST } from './awst/nodes'\nimport { validateAwst } from './awst/validation'\nimport { buildAwst } from './awst_build'\nimport { type CompilationSet } from './awst_build/models/contract-class-model'\nimport { registerPTypes } from './awst_build/ptypes/register'\nimport { typeRegistry } from './awst_build/type-registry'\nimport { appVersion } from './cli/app-version'\nimport { logger, LoggingContext } from './logger'\nimport type { CompileOptions } from './options'\nimport { createTsProgram } from './parser'\nimport { puyaCompile } from './puya'\nimport type { PuyaService } from './puya/puya-service'\nimport type { AbsolutePath } from './util/absolute-path'\n\nexport type CompileResult = {\n programDirectory: AbsolutePath\n awst?: AWST[]\n ast?: Record<string, ts.SourceFile>\n compilationSet?: CompilationSet\n}\n\nexport async function compile(options: CompileOptions, puyaService?: PuyaService): Promise<CompileResult> {\n const loggerCtx = LoggingContext.current\n if (options.treatWarningsAsErrors) loggerCtx.treatWarningsAsErrors = true\n\n registerPTypes(typeRegistry)\n logger.info(undefined, appVersion({ withAVMVersion: false }))\n const programResult = createTsProgram(options)\n if (loggerCtx.hasErrors()) {\n logger.info(undefined, 'Compilation halted due to parse errors')\n return {\n programDirectory: programResult.programDirectory,\n ast: programResult.sourceFiles,\n }\n }\n const { moduleAwst, compilationSet } = buildAwst(programResult, options)\n validateAwst(moduleAwst)\n\n if (loggerCtx.hasErrors()) {\n logger.info(undefined, 'Compilation halted due to errors')\n return {\n programDirectory: programResult.programDirectory,\n awst: moduleAwst,\n ast: programResult.sourceFiles,\n compilationSet,\n }\n }\n if (!options.dryRun) {\n const compileResult = await puyaCompile({\n options,\n moduleAwst,\n programDirectory: programResult.programDirectory,\n compilationSet,\n sourceFiles: programResult.sourceFiles,\n puyaService,\n })\n\n if (options.outputClient) {\n await writeARC4Clients(compilationSet, options.filePaths, compileResult.arc56)\n }\n }\n\n return {\n programDirectory: programResult.programDirectory,\n awst: moduleAwst,\n ast: programResult.sourceFiles,\n compilationSet,\n }\n}\n"],"names":[],"mappings":";;;;;;;AAKM,SAAU,0BAA0B,CAAC,EACzC,IAAI,EACJ,UAAU,EACV,cAAc,GAKf,EAAA;IACC,MAAM,MAAM,GAAG,IAAI,GAAG,CAAC,cAAc,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC;IAE5E,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,GAAG,KAAI;AAC9B,QAAA,IAAI,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,EAAE;AACjC,YAAA,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,GAAG,CAAC,cAAc,CAAC,IAAI,IAAI,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC;YACnH,IAAI,WAAW,EAAE;gBACf,gBAAgB,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;AAC/C,gBAAA,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,EAAE,CAAC,GAAG,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE;YACxD;QACF;AACA,QAAA,OAAO,GAAG;IACZ,CAAC,EAAE,EAA2B,CAAC;AACjC;;ACdO,eAAe,WAAW,CAAC,EAChC,UAAU,EACV,gBAAgB,EAChB,WAAW,EACX,OAAO,EACP,cAAc,EACd,WAAW,GAQZ,EAAA;AACC,IAAA,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC,OAAO,CAAC;IAC/C,MAAM,gBAAgB,GAAG,WAAW,IAAI,IAAI,WAAW,CAAC,EAAE,QAAQ,EAAE,CAAC;AACrE,IAAA,MAAM,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAC1C,0BAA0B,CAAC;AACzB,QAAA,IAAI,EAAE,UAAU;QAChB,UAAU,EAAE,OAAO,CAAC,SAAS;QAC7B,cAAc;AACf,KAAA,CAAC,CACH;AAED,IAAA,MAAM,QAAQ,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC;AAC9C,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,OAAO,EAAE,WAAW;AACpB,QAAA,SAAS,EAAE,gBAAgB,CAAC,QAAQ,EAAE;AACtC,QAAA,SAAS,EAAE,eAAe,CAAC,OAAO,CAAC,QAAQ,CAAC;AAC5C,QAAA,kBAAkB,EAAE,qBAAqB,CAAC,WAAW,CAAC;AACvD,KAAA,CAAC;;IAEF,IAAI,WAAW,KAAK,SAAS;AAAE,QAAA,MAAM,gBAAgB,CAAC,QAAQ,EAAE;AAChE,IAAA,KAAK,MAAM,GAAG,IAAI,QAAQ,CAAC,IAAI,EAAE;QAC/B,iBAAiB,CAAC,GAAG,CAAC;IACxB;AAEA,IAAA,OAAO,QAAQ;AACjB;AAEA,SAAS,eAAe,CAAC,QAAkB,EAAA;IACzC,QAAQ,QAAQ;QACd,KAAK,QAAQ,CAAC,KAAK;AACjB,YAAA,OAAO,OAAO;QAChB,KAAK,QAAQ,CAAC,IAAI;AAChB,YAAA,OAAO,MAAM;QACf,KAAK,QAAQ,CAAC,OAAO;AACnB,YAAA,OAAO,SAAS;QAClB,KAAK,QAAQ,CAAC,KAAK;AACjB,YAAA,OAAO,OAAO;QAChB,KAAK,QAAQ,CAAC,QAAQ;AACpB,YAAA,OAAO,UAAU;;AAEvB;AACA,SAAS,qBAAqB,CAAC,WAA8B,EAAA;IAC3D,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,KAAI;AAC/C,QAAA,MAAM,MAAM,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,KAAK;AACvG,QAAA,OAAO,CAAC,GAAG,EAAE,MAAM,CAAU;IAC/B,CAAC,CAAC,CACH;AACH;;ACnDO,eAAe,OAAO,CAAC,OAAuB,EAAE,WAAyB,EAAA;AAC9E,IAAA,MAAM,SAAS,GAAG,cAAc,CAAC,OAAO;IACxC,IAAI,OAAO,CAAC,qBAAqB;AAAE,QAAA,SAAS,CAAC,qBAAqB,GAAG,IAAI;IAEzE,cAAc,CAAC,YAAY,CAAC;AAC5B,IAAA,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7D,IAAA,MAAM,aAAa,GAAG,eAAe,CAAC,OAAO,CAAC;AAC9C,IAAA,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE;AACzB,QAAA,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,wCAAwC,CAAC;QAChE,OAAO;YACL,gBAAgB,EAAE,aAAa,CAAC,gBAAgB;YAChD,GAAG,EAAE,aAAa,CAAC,WAAW;SAC/B;IACH;AACA,IAAA,MAAM,EAAE,UAAU,EAAE,cAAc,EAAE,GAAG,SAAS,CAAC,aAAa,EAAE,OAAO,CAAC;IACxE,YAAY,CAAC,UAAU,CAAC;AAExB,IAAA,IAAI,SAAS,CAAC,SAAS,EAAE,EAAE;AACzB,QAAA,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,kCAAkC,CAAC;QAC1D,OAAO;YACL,gBAAgB,EAAE,aAAa,CAAC,gBAAgB;AAChD,YAAA,IAAI,EAAE,UAAU;YAChB,GAAG,EAAE,aAAa,CAAC,WAAW;YAC9B,cAAc;SACf;IACH;AACA,IAAA,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE;AACnB,QAAA,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC;YACtC,OAAO;YACP,UAAU;YACV,gBAAgB,EAAE,aAAa,CAAC,gBAAgB;YAChD,cAAc;YACd,WAAW,EAAE,aAAa,CAAC,WAAW;YACtC,WAAW;AACZ,SAAA,CAAC;AAEF,QAAA,IAAI,OAAO,CAAC,YAAY,EAAE;AACxB,YAAA,MAAM,gBAAgB,CAAC,cAAc,EAAE,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC,KAAK,CAAC;QAChF;IACF;IAEA,OAAO;QACL,gBAAgB,EAAE,aAAa,CAAC,gBAAgB;AAChD,QAAA,IAAI,EAAE,UAAU;QAChB,GAAG,EAAE,aAAa,CAAC,WAAW;QAC9B,cAAc;KACf;AACH;;;;"}
|
|
@@ -1836,7 +1836,7 @@ class TupleBasePType extends PType {
|
|
|
1836
1836
|
class MutableTuplePType extends TupleBasePType {
|
|
1837
1837
|
[PType.IdSymbol] = 'MutableTuplePType';
|
|
1838
1838
|
constructor(props) {
|
|
1839
|
-
super(
|
|
1839
|
+
super(props);
|
|
1840
1840
|
}
|
|
1841
1841
|
get wtype() {
|
|
1842
1842
|
return new wtypes.ARC4Tuple({
|
|
@@ -1942,7 +1942,7 @@ class FixedArrayPType extends PType {
|
|
|
1942
1942
|
module = Constants.moduleNames.algoTs.arrays;
|
|
1943
1943
|
arraySize;
|
|
1944
1944
|
get fullName() {
|
|
1945
|
-
return `${this.module}::FixedArray<${this.elementType.fullName}>`;
|
|
1945
|
+
return `${this.module}::FixedArray<${this.elementType.fullName}, ${this.arraySize}>`;
|
|
1946
1946
|
}
|
|
1947
1947
|
constructor(props) {
|
|
1948
1948
|
super();
|
|
@@ -2319,7 +2319,7 @@ const applicationPType = new ABICompatibleInstanceType({
|
|
|
2319
2319
|
module: Constants.moduleNames.algoTs.reference,
|
|
2320
2320
|
abiTypeSignature: 'application',
|
|
2321
2321
|
});
|
|
2322
|
-
const
|
|
2322
|
+
const ApplicationFunction = new LibFunctionType({
|
|
2323
2323
|
name: 'Application',
|
|
2324
2324
|
module: Constants.moduleNames.algoTs.reference,
|
|
2325
2325
|
});
|
|
@@ -2462,7 +2462,7 @@ const applicationCallGtxnType = new GroupTransactionPType({
|
|
|
2462
2462
|
name: 'ApplicationCallTxn',
|
|
2463
2463
|
kind: TransactionKind.appl,
|
|
2464
2464
|
});
|
|
2465
|
-
const
|
|
2465
|
+
const ApplicationCallTxnFunction = new TransactionFunctionType({
|
|
2466
2466
|
name: 'ApplicationCallTxn',
|
|
2467
2467
|
module: Constants.moduleNames.algoTs.gtxn,
|
|
2468
2468
|
kind: TransactionKind.appl,
|
|
@@ -2644,32 +2644,32 @@ class GeneratorType extends UnsupportedType {
|
|
|
2644
2644
|
this.nextType = nextType;
|
|
2645
2645
|
}
|
|
2646
2646
|
}
|
|
2647
|
-
const
|
|
2647
|
+
const paymentItxnFunction = new TransactionFunctionType({
|
|
2648
2648
|
name: 'payment',
|
|
2649
2649
|
module: Constants.moduleNames.algoTs.itxn,
|
|
2650
2650
|
kind: TransactionKind.pay,
|
|
2651
2651
|
});
|
|
2652
|
-
const
|
|
2652
|
+
const keyRegistrationItxnFunction = new TransactionFunctionType({
|
|
2653
2653
|
name: 'keyRegistration',
|
|
2654
2654
|
module: Constants.moduleNames.algoTs.itxn,
|
|
2655
2655
|
kind: TransactionKind.keyreg,
|
|
2656
2656
|
});
|
|
2657
|
-
const
|
|
2657
|
+
const assetConfigItxnFunction = new TransactionFunctionType({
|
|
2658
2658
|
name: 'assetConfig',
|
|
2659
2659
|
module: Constants.moduleNames.algoTs.itxn,
|
|
2660
2660
|
kind: TransactionKind.acfg,
|
|
2661
2661
|
});
|
|
2662
|
-
const
|
|
2662
|
+
const assetTransferItxnFunction = new TransactionFunctionType({
|
|
2663
2663
|
name: 'assetTransfer',
|
|
2664
2664
|
module: Constants.moduleNames.algoTs.itxn,
|
|
2665
2665
|
kind: TransactionKind.axfer,
|
|
2666
2666
|
});
|
|
2667
|
-
const
|
|
2667
|
+
const assetFreezeItxnFunction = new TransactionFunctionType({
|
|
2668
2668
|
name: 'assetFreeze',
|
|
2669
2669
|
module: Constants.moduleNames.algoTs.itxn,
|
|
2670
2670
|
kind: TransactionKind.afrz,
|
|
2671
2671
|
});
|
|
2672
|
-
const
|
|
2672
|
+
const applicationCallItxnFunction = new TransactionFunctionType({
|
|
2673
2673
|
name: 'applicationCall',
|
|
2674
2674
|
module: Constants.moduleNames.algoTs.itxn,
|
|
2675
2675
|
kind: TransactionKind.appl,
|
|
@@ -2758,7 +2758,7 @@ const applicationCallItxnParamsType = new ItxnParamsPType({
|
|
|
2758
2758
|
name: 'ApplicationCallItxnParams',
|
|
2759
2759
|
kind: TransactionKind.appl,
|
|
2760
2760
|
});
|
|
2761
|
-
const
|
|
2761
|
+
const applicationCallItxnType = new InnerTransactionPType({
|
|
2762
2762
|
name: 'ApplicationCallInnerTxn',
|
|
2763
2763
|
kind: TransactionKind.appl,
|
|
2764
2764
|
});
|
|
@@ -2786,7 +2786,7 @@ const TemplateVarFunction = new LibFunctionType({
|
|
|
2786
2786
|
name: 'TemplateVar',
|
|
2787
2787
|
module: Constants.moduleNames.algoTs.templateVar,
|
|
2788
2788
|
});
|
|
2789
|
-
const
|
|
2789
|
+
const compileFunction = new LibFunctionType({
|
|
2790
2790
|
name: 'compile',
|
|
2791
2791
|
module: Constants.moduleNames.algoTs.compiled,
|
|
2792
2792
|
});
|
|
@@ -2884,11 +2884,11 @@ const itxnComposePType = new LibObjType({
|
|
|
2884
2884
|
module: Constants.moduleNames.algoTs.itxnCompose,
|
|
2885
2885
|
name: 'itxnCompose',
|
|
2886
2886
|
});
|
|
2887
|
-
const
|
|
2887
|
+
const cloneFunction = new LibFunctionType({
|
|
2888
2888
|
name: 'clone',
|
|
2889
2889
|
module: Constants.moduleNames.algoTs.util,
|
|
2890
2890
|
});
|
|
2891
|
-
const
|
|
2891
|
+
const validateEncodingFunction = new LibFunctionType({
|
|
2892
2892
|
name: 'validateEncoding',
|
|
2893
2893
|
module: Constants.moduleNames.algoTs.util,
|
|
2894
2894
|
});
|
|
@@ -2906,7 +2906,7 @@ function getInnerTransactionType(kind) {
|
|
|
2906
2906
|
case TransactionKind.afrz:
|
|
2907
2907
|
return assetFreezeItxnType;
|
|
2908
2908
|
case TransactionKind.appl:
|
|
2909
|
-
return
|
|
2909
|
+
return applicationCallItxnType;
|
|
2910
2910
|
}
|
|
2911
2911
|
}
|
|
2912
2912
|
function getItxnParamsType(kind) {
|
|
@@ -5453,5 +5453,5 @@ class CompilationSet extends CustomKeyMap {
|
|
|
5453
5453
|
}
|
|
5454
5454
|
}
|
|
5455
5455
|
|
|
5456
|
-
export { FixedArrayGeneric as $, AbsolutePath as A, AssetConfigTxnFunction as B, ContractReference as C, AssetFreezeTxnFunction as D, AssetFunction as E, AssetTransferTxnFunction as F, BaseContractClassType as G, BigIntLiteralPType as H, InternalError as I, BigIntPType as J, BigUintFunction as K, LogLevel as L, BooleanFunction as M, BoxGeneric as N, OnCompletionAction as O, PuyaError as P, BoxMapGeneric as Q, BoxMapPType as R, BoxPType as S, BytesFunction as T, BytesGeneric as U, BytesPType as V, ClassMethodDecoratorContext as W, ClearStateProgram as X, ClusteredContractClassType as Y, ClusteredPrototype as Z, ContractClassPType as _, LoggingContext as a, UnsupportedType as a$, FixedArrayPType as a0, FunctionPType as a1, GeneratorGeneric as a2, GeneratorType as a3, GenericPType as a4, GlobalMapGeneric as a5, GlobalMapType as a6, GlobalStateGeneric as a7, GlobalStateType as a8, GroupTransactionPType as a9, NumericLiteralPType as aA, ObjectLiteralPType as aB, ObjectWithOptionalFieldsType as aC, PType as aD, PaymentTxnFunction as aE, PolytypeClassMethodHelper as aF, PromiseGeneric as aG, PromiseType as aH, ReadonlyArrayGeneric as aI, ReadonlyArrayPType as aJ, ReadonlyGeneric as aK, ReadonlyTuplePType as aL, ReferenceArrayGeneric as aM, ReferenceArrayType as aN, StringFunction as aO, SuperPrototypeSelector as aP, SuperPrototypeSelectorGeneric as aQ, TemplateVarFunction as aR, TransactionFunction as aS, TransactionFunctionType as aT, TransientType as aU, TypeParameterType as aV, Uint64EnumMemberLiteralType as aW, Uint64EnumMemberType as aX, Uint64EnumType as aY, Uint64Function as aZ, UnionPType as a_, ImmutableObjectPType as aa, InnerTransactionPType as ab, InstanceType as ac, InternalType as ad, IntersectionPType as ae, IntrinsicEnumType as af, IntrinsicFunctionGroupType as ag, IntrinsicFunctionGroupTypeType as ah, IntrinsicFunctionType as ai, IntrinsicFunctionTypeType as aj, IterableIteratorGeneric as ak, IterableIteratorType as al, ItxnParamsPType as am, KeyRegistrationTxnFunction as an, LibClassType as ao, LibFunctionType as ap, LibObjType as aq, LocalMapGeneric as ar, LocalMapType as as, LocalStateGeneric as at, LocalStateType as au, LogicSigPType as av, MutableObjectPType as aw, MutableTuplePType as ax, NamespacePType as ay, NumberPType as az, ContractClassModel as b, stringPType as b$, anyItxnParamsType as b0, anyItxnType as b1, anyPType as b2,
|
|
5457
|
-
//# sourceMappingURL=contract-class-model-
|
|
5456
|
+
export { FixedArrayGeneric as $, AbsolutePath as A, AssetConfigTxnFunction as B, ContractReference as C, AssetFreezeTxnFunction as D, AssetFunction as E, AssetTransferTxnFunction as F, BaseContractClassType as G, BigIntLiteralPType as H, InternalError as I, BigIntPType as J, BigUintFunction as K, LogLevel as L, BooleanFunction as M, BoxGeneric as N, OnCompletionAction as O, PuyaError as P, BoxMapGeneric as Q, BoxMapPType as R, BoxPType as S, BytesFunction as T, BytesGeneric as U, BytesPType as V, ClassMethodDecoratorContext as W, ClearStateProgram as X, ClusteredContractClassType as Y, ClusteredPrototype as Z, ContractClassPType as _, LoggingContext as a, UnsupportedType as a$, FixedArrayPType as a0, FunctionPType as a1, GeneratorGeneric as a2, GeneratorType as a3, GenericPType as a4, GlobalMapGeneric as a5, GlobalMapType as a6, GlobalStateGeneric as a7, GlobalStateType as a8, GroupTransactionPType as a9, NumericLiteralPType as aA, ObjectLiteralPType as aB, ObjectWithOptionalFieldsType as aC, PType as aD, PaymentTxnFunction as aE, PolytypeClassMethodHelper as aF, PromiseGeneric as aG, PromiseType as aH, ReadonlyArrayGeneric as aI, ReadonlyArrayPType as aJ, ReadonlyGeneric as aK, ReadonlyTuplePType as aL, ReferenceArrayGeneric as aM, ReferenceArrayType as aN, StringFunction as aO, SuperPrototypeSelector as aP, SuperPrototypeSelectorGeneric as aQ, TemplateVarFunction as aR, TransactionFunction as aS, TransactionFunctionType as aT, TransientType as aU, TypeParameterType as aV, Uint64EnumMemberLiteralType as aW, Uint64EnumMemberType as aX, Uint64EnumType as aY, Uint64Function as aZ, UnionPType as a_, ImmutableObjectPType as aa, InnerTransactionPType as ab, InstanceType as ac, InternalType as ad, IntersectionPType as ae, IntrinsicEnumType as af, IntrinsicFunctionGroupType as ag, IntrinsicFunctionGroupTypeType as ah, IntrinsicFunctionType as ai, IntrinsicFunctionTypeType as aj, IterableIteratorGeneric as ak, IterableIteratorType as al, ItxnParamsPType as am, KeyRegistrationTxnFunction as an, LibClassType as ao, LibFunctionType as ap, LibObjType as aq, LocalMapGeneric as ar, LocalMapType as as, LocalStateGeneric as at, LocalStateType as au, LogicSigPType as av, MutableObjectPType as aw, MutableTuplePType as ax, NamespacePType as ay, NumberPType as az, ContractClassModel as b, stringPType as b$, anyItxnParamsType as b0, anyItxnType as b1, anyPType as b2, applicationCallItxnFunction as b3, applicationCallItxnParamsType as b4, applicationCallItxnType as b5, arc28EmitFunction as b6, arc4AbiMethodDecorator as b7, arc4BareMethodDecorator as b8, arc4BaseContractType as b9, errFunction as bA, esSymbol as bB, inputOnlyObjects as bC, isArrayType as bD, isObjectType as bE, isTupleLike as bF, itoaMethod as bG, itxnComposePType as bH, keyRegistrationItxnFunction as bI, keyRegistrationItxnParamsType as bJ, keyRegistrationItxnType as bK, logFunction as bL, loggedAssertFunction as bM, loggedErrFunction as bN, logicSigBaseType as bO, logicSigOptionsDecorator as bP, matchFunction as bQ, mimcConfigurationsPType as bR, neverPType as bS, nullPType as bT, numberPType as bU, onCompleteActionType as bV, opUpFeeSourceType as bW, paymentItxnFunction as bX, paymentItxnParamsType as bY, paymentItxnType as bZ, readonlyDecorator as b_, assertFunction as ba, assertMatchFunction as bb, assetConfigItxnFunction as bc, assetConfigItxnParamsType as bd, assetConfigItxnType as be, assetFreezeItxnFunction as bf, assetFreezeItxnParamsType as bg, assetFreezeItxnType as bh, assetTransferItxnFunction as bi, assetTransferItxnParamsType as bj, assetTransferItxnType as bk, base64PType as bl, baseContractType as bm, bigIntPType as bn, biguintPType as bo, boolPType as bp, bytesPType as bq, bzeroFunction as br, cloneFunction as bs, compileFunction as bt, compiledContractType as bu, compiledLogicSigType as bv, contractOptionsDecorator as bw, ecPType as bx, ecdsaPType as by, ensureBudgetFunction as bz, CodeError as c, UInt64BinaryOperator as c$, submitGroupItxnFunction as c0, transactionTypeType as c1, uint64PType as c2, undefinedPType as c3, unknownPType as c4, urangeFunction as c5, validateEncodingFunction as c6, vrfVerifyPType as c7, uint8ArrayToBigInt as c8, uint8ArrayToBase64 as c9, SingleEvaluation as cA, VarExpression as cB, nodeFactory as cC, NotSupported as cD, TupleItemExpression as cE, FieldExpression as cF, IndexExpression as cG, TupleExpression as cH, AppStateExpression as cI, AppAccountStateExpression as cJ, BoxValueExpression as cK, StateGetEx as cL, StateGet as cM, hasFlags as cN, invariant as cO, BinaryBooleanOperator as cP, SymbolName as cQ, intersectsFlags as cR, extractModuleName as cS, toSubScript as cT, CompilationSet as cU, ARC4ABIMethodConfig as cV, EqualityComparison as cW, ARC4CreateOption as cX, NewArray as cY, BytesEncoding as cZ, FixableCodeError as c_, uint8ArrayToBase32 as ca, uint8ArrayToUtf8 as cb, base64ToUint8Array as cc, base32ToUint8Array as cd, bigIntToUint8Array as ce, utf8ToUint8Array as cf, LogSource as cg, SourceLocation as ch, isMinLevel as ci, enumFromValue as cj, mkDirIfNotExists as ck, distinct as cl, zipStrict as cm, isIn as cn, wtypes as co, codeInvariant as cp, throwError as cq, StringConstant as cr, BytesConstant as cs, IntegerConstant as ct, BoolConstant as cu, AddressConstant as cv, MethodConstant as cw, DecimalConstant as cx, TemplateVar as cy, instanceOfAny as cz, Constants as d, ReturnStatement as d$, tryConvertEnum as d0, NumericComparison as d1, UInt64UnaryOperator as d2, UInt64PostfixUnaryOperator as d3, wrapInCodeError as d4, TransactionKind as d5, LogicSigReference as d6, getInnerTransactionType as d7, getItxnParamsType as d8, CompiledContract as d9, StageInnerTransactions as dA, SubmitInnerTransaction as dB, AssignmentExpression as dC, CommaExpression as dD, NumericComparisonExpression as dE, BytesComparisonExpression as dF, PuyaLibCall as dG, UInt64UnaryOperation as dH, UInt64PostfixUnaryOperation as dI, BigUIntPostfixUnaryOperation as dJ, BytesUnaryOperation as dK, UInt64BinaryOperation as dL, BigUIntBinaryOperation as dM, BooleanBinaryOperation as dN, Not as dO, Emit as dP, Range as dQ, Enumeration as dR, Reversed as dS, StateExists as dT, ARC4Router as dU, MethodSignatureString as dV, SubroutineID as dW, ContractMethodTarget as dX, InstanceMethodTarget as dY, patchErrorLocation as dZ, Goto as d_, ARC4BareMethodConfig as da, MethodSignature as db, BigUIntBinaryOperator as dc, BigUIntPostfixUnaryOperator as dd, BytesBinaryOperator as de, IntrinsicCall as df, enumKeyFromValue as dg, BytesUnaryOperator as dh, PuyaLibFunction as di, Expression as dj, AppStorageKind as dk, transientTypeErrors as dl, getGroupTransactionType as dm, Contract as dn, InstanceSuperMethodTarget as dp, ExpressionStatement as dq, AssertExpression as dr, VoidConstant as ds, ArrayConcat as dt, ArrayPop as du, ArrayReplace as dv, ArrayLength as dw, SizeOf as dx, UpdateInnerTransaction as dy, CheckedMaybe as dz, accountPType as e, ContractMethod as e0, sameSets as e1, Subroutine as e2, LogicSigClassModel as e3, ptypeIn as e4, expandMaybeArray as e5, applicationPType as f, assetPType as g, anyGtxnType as h, assetConfigGtxnType as i, assetTransferGtxnType as j, keyRegistrationGtxnType as k, logger as l, assetFreezeGtxnType as m, applicationCallGtxnType as n, ABICompatibleInstanceType as o, paymentGtxnType as p, ALL_OP_ENUMS as q, AccountFunction as r, AnyPType as s, ApplicationCallTxnFunction as t, ApplicationFunction as u, voidPType as v, ApprovalProgram as w, ArrayGeneric as x, ArrayLiteralPType as y, ArrayPType as z };
|
|
5457
|
+
//# sourceMappingURL=contract-class-model-D-NUE8Zg.js.map
|