@helios-lang/contract-utils 0.3.24 → 0.3.25
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 +6 -0
- package/package.json +2 -2
- package/src/artifacts/ChildArtifactWriter.js +28 -24
- package/src/compiler/CompilerLib_v0_16.js +7 -2
- package/src/compiler/CompilerLib_v0_17.js +6 -2
- package/src/context/CacheEntry.js +7 -0
- package/src/context/ContractContextCache.js +9 -2
- package/src/context/DagCompiler.js +34 -0
- package/src/context/compilation.js +16 -0
- package/src/index.js +3 -1
- package/types/artifacts/ChildArtifactWriter.d.ts.map +1 -1
- package/types/compiler/CompilerLib_v0_17.d.ts +2 -2
- package/types/compiler/CompilerLib_v0_17.d.ts.map +1 -1
- package/types/context/CacheEntry.d.ts +4 -0
- package/types/context/CacheEntry.d.ts.map +1 -1
- package/types/context/ContractContextCache.d.ts.map +1 -1
- package/types/context/DagCompiler.d.ts.map +1 -1
- package/types/context/compilation.d.ts +7 -0
- package/types/context/compilation.d.ts.map +1 -0
- package/types/index.d.ts +3 -0
- package/types/index.d.ts.map +1 -1
package/README.md
CHANGED
|
@@ -61,3 +61,9 @@ The API key is intentionally embedded in generated bundles, including browser bu
|
|
|
61
61
|
`helios wallet create --network preprod` prints JSON containing a cryptographically random 24-word recovery phrase and its base address. It does not contact a service. Supported networks are `preprod` (default), `preview`, and `mainnet`.
|
|
62
62
|
|
|
63
63
|
Use `helios wallet create --network preprod --out wallet.json` to write a new private file instead of printing the phrase. Existing files are never overwritten. The output phrase can be pasted into a demo’s ignored `.env.local` file.
|
|
64
|
+
|
|
65
|
+
### Compilation context for captured failures
|
|
66
|
+
|
|
67
|
+
`makeContractContextBuilder().build({isMainnet, parameters})` attaches credential-free `$compilation` metadata to validator programs and alternatives, even without `--project`. It records applicable parameter overrides as UPLC Data CBOR hex, the compiler/network, validator types/indices and exact dependency-hash inputs for both compilation passes. Source defaults remain in source. Caches and generated artifacts preserve this information without changing script CBOR.
|
|
68
|
+
|
|
69
|
+
To enable parameter-aware capture for an existing deployment, regenerate its JavaScript artifacts with the updated contract-utils **and the original compiler version**, asserting all deployed hashes using `expectedHashes`. Upgrade tx-utils and inject `makeDebuggerService({apiKey})` into the transaction builder as usual. Merely upgrading tx-utils cannot recover build parameters from an older raw-CBOR bundle.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@helios-lang/contract-utils",
|
|
3
|
-
"version": "0.3.
|
|
3
|
+
"version": "0.3.25",
|
|
4
4
|
"description": "Convenience and type-safety utilities for using Helios validators from within Typescript",
|
|
5
5
|
"main": "src/index.js",
|
|
6
6
|
"types": "types/index.d.ts",
|
|
@@ -42,7 +42,7 @@
|
|
|
42
42
|
"@helios-lang/compiler-utils": "^0.5.15",
|
|
43
43
|
"@helios-lang/crypto": "0.2.3",
|
|
44
44
|
"@helios-lang/ledger": "^0.7.8",
|
|
45
|
-
"@helios-lang/tx-utils": "^0.6.
|
|
45
|
+
"@helios-lang/tx-utils": "^0.6.42",
|
|
46
46
|
"@helios-lang/type-utils": "^0.3.0",
|
|
47
47
|
"@helios-lang/uplc": "^0.7.15",
|
|
48
48
|
"open": "^10.2.0"
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { getCompilation } from "../context/compilation.js"
|
|
1
2
|
import { bytesToHex } from "@helios-lang/codec-utils"
|
|
2
3
|
import { makeUplcSourceMap } from "@helios-lang/uplc"
|
|
3
4
|
import { ArtifactWriter } from "./ArtifactWriter.js"
|
|
@@ -99,6 +100,27 @@ export class ChildArtifactWriter extends ArtifactWriter {
|
|
|
99
100
|
throw new Error("unhandled Plutus version")
|
|
100
101
|
}
|
|
101
102
|
|
|
103
|
+
const compilation = getCompilation(program)
|
|
104
|
+
if (compilation) {
|
|
105
|
+
this.writeDeclLine(
|
|
106
|
+
`export declare const $compilation: import("@helios-lang/contract-utils").CompilationContext`
|
|
107
|
+
)
|
|
108
|
+
if (includeDef) {
|
|
109
|
+
this.writeDefLine(
|
|
110
|
+
`export const $compilation = ${JSON.stringify(compilation)}`
|
|
111
|
+
)
|
|
112
|
+
this.writeDefLine(
|
|
113
|
+
`Object.defineProperty(${name}, "$compilation", {value:$compilation})`
|
|
114
|
+
)
|
|
115
|
+
this.writeDefLine(
|
|
116
|
+
`if (${name}.alt) Object.defineProperty(${name}.alt, "$compilation", {value:$compilation})`
|
|
117
|
+
)
|
|
118
|
+
} else {
|
|
119
|
+
this.writeDefLine(
|
|
120
|
+
`export { $compilation } from "./main/index.js"`
|
|
121
|
+
)
|
|
122
|
+
}
|
|
123
|
+
}
|
|
102
124
|
const debuggerContext =
|
|
103
125
|
/** @type {UplcProgram & {$debugger?: import("../index.js").DebuggerContext}} */ (
|
|
104
126
|
program
|
|
@@ -130,31 +152,13 @@ export class ChildArtifactWriter extends ArtifactWriter {
|
|
|
130
152
|
function stringifyProgram(decoderName, program) {
|
|
131
153
|
const sourceMap = makeUplcSourceMap({ term: program.root })
|
|
132
154
|
|
|
133
|
-
|
|
134
|
-
$
|
|
135
|
-
{
|
|
155
|
+
const base = `/* @__PURE__ */ ${decoderName}(
|
|
156
|
+
"${bytesToHex(program.toCbor())}",
|
|
157
|
+
{
|
|
136
158
|
sourceMap: ${JSON.stringify(sourceMap.toJsonSafe(), undefined, 4).split("\n").join("\n ")}
|
|
137
159
|
}
|
|
138
160
|
)`
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
* @param {string} decoderName
|
|
143
|
-
* @param {UplcProgram | undefined} alt
|
|
144
|
-
* @returns {string}
|
|
145
|
-
*/
|
|
146
|
-
function stringifyAlt(decoderName, alt) {
|
|
147
|
-
if (!alt) {
|
|
148
|
-
return ""
|
|
149
|
-
}
|
|
150
|
-
|
|
151
|
-
const sourceMap = makeUplcSourceMap({ term: alt.root })
|
|
152
|
-
|
|
153
|
-
return `
|
|
154
|
-
alt: /* @__PURE__ */ ${decoderName}(
|
|
155
|
-
"${bytesToHex(alt.toCbor())}",
|
|
156
|
-
{
|
|
157
|
-
sourceMap: ${JSON.stringify(sourceMap.toJsonSafe(), undefined, 4).split("\n").join("\n ")}
|
|
158
|
-
}
|
|
159
|
-
),`
|
|
161
|
+
return program.alt
|
|
162
|
+
? `${base}.withAlt(${stringifyProgram(decoderName, program.alt)})`
|
|
163
|
+
: base
|
|
160
164
|
}
|
|
@@ -202,7 +202,7 @@ class CompilerLib_v0_16 {
|
|
|
202
202
|
}
|
|
203
203
|
)
|
|
204
204
|
|
|
205
|
-
this.setParameters(program, options.parameters)
|
|
205
|
+
const parameters = this.setParameters(program, options.parameters)
|
|
206
206
|
|
|
207
207
|
const extra = this.genExtraIRDefs(
|
|
208
208
|
name,
|
|
@@ -228,6 +228,7 @@ class CompilerLib_v0_16 {
|
|
|
228
228
|
const cborHex = bytesToHex(uplc.toCbor())
|
|
229
229
|
|
|
230
230
|
return {
|
|
231
|
+
parameters,
|
|
231
232
|
cborHex,
|
|
232
233
|
plutusVersion: "PlutusScriptV2"
|
|
233
234
|
}
|
|
@@ -605,8 +606,10 @@ class CompilerLib_v0_16 {
|
|
|
605
606
|
* @param {Record<string, UplcData> | undefined} parameters
|
|
606
607
|
*/
|
|
607
608
|
setParameters(program, parameters) {
|
|
609
|
+
/** @type {Record<string,string>} */
|
|
610
|
+
const applied = {}
|
|
608
611
|
if (!parameters) {
|
|
609
|
-
return
|
|
612
|
+
return applied
|
|
610
613
|
}
|
|
611
614
|
|
|
612
615
|
const paramTypes = program.paramTypes
|
|
@@ -614,7 +617,9 @@ class CompilerLib_v0_16 {
|
|
|
614
617
|
Object.entries(parameters).forEach(([key, value]) => {
|
|
615
618
|
if (key in paramTypes) {
|
|
616
619
|
program.changeParamSafe(key, value)
|
|
620
|
+
applied[key] = bytesToHex(value.toCbor())
|
|
617
621
|
}
|
|
618
622
|
})
|
|
623
|
+
return applied
|
|
619
624
|
}
|
|
620
625
|
}
|
|
@@ -10,7 +10,7 @@ import { makeUplcSourceMap } from "@helios-lang/uplc"
|
|
|
10
10
|
* @typedef {{
|
|
11
11
|
* name: string
|
|
12
12
|
* currentScriptIndex: number | undefined
|
|
13
|
-
* changeParam(key: string, value: UplcData):
|
|
13
|
+
* changeParam(key: string, value: UplcData): boolean
|
|
14
14
|
* compile(options: {
|
|
15
15
|
* optimize?: boolean,
|
|
16
16
|
* dependsOnOwnHash?: boolean,
|
|
@@ -83,9 +83,12 @@ class CompilerLib_v0_17 {
|
|
|
83
83
|
throwCompilerErrors: true
|
|
84
84
|
})
|
|
85
85
|
|
|
86
|
+
/** @type {Record<string,string>} */
|
|
87
|
+
const parameters = {}
|
|
86
88
|
if (options.parameters) {
|
|
87
89
|
Object.entries(options.parameters).forEach(([key, value]) => {
|
|
88
|
-
program.changeParam(key, value)
|
|
90
|
+
if (program.changeParam(key, value))
|
|
91
|
+
parameters[key] = bytesToHex(value.toCbor())
|
|
89
92
|
})
|
|
90
93
|
}
|
|
91
94
|
|
|
@@ -158,6 +161,7 @@ class CompilerLib_v0_17 {
|
|
|
158
161
|
const sourceMap = makeUplcSourceMap({ term: uplc.root })
|
|
159
162
|
|
|
160
163
|
return {
|
|
164
|
+
parameters,
|
|
161
165
|
cborHex: bytesToHex(uplc.toCbor()),
|
|
162
166
|
plutusVersion: uplc.plutusVersion,
|
|
163
167
|
sourceMap: sourceMap.toJsonSafe(),
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { attachCompilation, getCompilation } from "./compilation.js"
|
|
1
2
|
import { bytesToHex } from "@helios-lang/codec-utils"
|
|
2
3
|
import {
|
|
3
4
|
makeMintingPolicyHash,
|
|
@@ -33,6 +34,7 @@ import { makeCast } from "../cast/Cast.js"
|
|
|
33
34
|
* unoptimizedCborHex?: string
|
|
34
35
|
* unoptimizedIr?: string
|
|
35
36
|
* unoptimizedSourceMap?: UplcSourceMapJsonSafe
|
|
37
|
+
* compilation?: import("./compilation.js").CompilationContext
|
|
36
38
|
* optimizedCborHex: string
|
|
37
39
|
* optimizedIr?: string
|
|
38
40
|
* optimizedSourceMap?: UplcSourceMapJsonSafe
|
|
@@ -48,6 +50,7 @@ import { makeCast } from "../cast/Cast.js"
|
|
|
48
50
|
* unoptimizedCborHex?: string
|
|
49
51
|
* unoptimizedIr?: string
|
|
50
52
|
* unoptimizedSourceMap?: UplcSourceMapJsonSafe
|
|
53
|
+
* compilation?: import("./compilation.js").CompilationContext
|
|
51
54
|
* optimizedCborHex: string
|
|
52
55
|
* optimizedIr?: string
|
|
53
56
|
* optimizedSourceMap?: UplcSourceMapJsonSafe
|
|
@@ -145,6 +148,7 @@ export function cacheEntryToJsonSafe(entry) {
|
|
|
145
148
|
const program = /** @type {any} */ (context.program)
|
|
146
149
|
|
|
147
150
|
resValidators[name] = {
|
|
151
|
+
compilation: getCompilation(program),
|
|
148
152
|
purpose: purpose,
|
|
149
153
|
bytes: hash.bytes,
|
|
150
154
|
optimizedCborHex: bytesToHex(program.toCbor()),
|
|
@@ -171,6 +175,7 @@ export function cacheEntryToJsonSafe(entry) {
|
|
|
171
175
|
const userFunc = entry.userFuncs[name]
|
|
172
176
|
|
|
173
177
|
resUserFuncs[name] = {
|
|
178
|
+
compilation: getCompilation(userFunc),
|
|
174
179
|
optimizedCborHex: bytesToHex(userFunc.toCbor()),
|
|
175
180
|
unoptimizedCborHex: /** @type {UplcProgramV2} */ (userFunc).alt
|
|
176
181
|
? bytesToHex(
|
|
@@ -247,6 +252,7 @@ export function cacheEntryFromJson(entry) {
|
|
|
247
252
|
}
|
|
248
253
|
}
|
|
249
254
|
|
|
255
|
+
attachCompilation(program, props.compilation)
|
|
250
256
|
let redeemer = makeCast(props.redeemer, props.castConfig)
|
|
251
257
|
|
|
252
258
|
switch (props.purpose) {
|
|
@@ -317,6 +323,7 @@ export function cacheEntryFromJson(entry) {
|
|
|
317
323
|
throw new Error("unhandled Plutus version")
|
|
318
324
|
}
|
|
319
325
|
}
|
|
326
|
+
attachCompilation(program, props.compilation)
|
|
320
327
|
res.userFuncs[name] = program
|
|
321
328
|
}
|
|
322
329
|
|
|
@@ -74,6 +74,7 @@ class ContractContextCache {
|
|
|
74
74
|
genCacheKey(props) {
|
|
75
75
|
if (this.explicitCache) {
|
|
76
76
|
const obj = {
|
|
77
|
+
compilationMetadataVersion: 1,
|
|
77
78
|
version: props.version,
|
|
78
79
|
debug: props.debug,
|
|
79
80
|
isMainnet: props.isMainnet,
|
|
@@ -85,7 +86,7 @@ class ContractContextCache {
|
|
|
85
86
|
.map((k) => props.modules[k].$sourceCode),
|
|
86
87
|
parameters: Object.keys(props.parameters)
|
|
87
88
|
.sort()
|
|
88
|
-
.map((k) => props.parameters[k].toSchemaJson())
|
|
89
|
+
.map((k) => [k, props.parameters[k].toSchemaJson()])
|
|
89
90
|
}
|
|
90
91
|
|
|
91
92
|
// TODO: if this hashing method is slow fall back to system defined hashing
|
|
@@ -101,7 +102,13 @@ class ContractContextCache {
|
|
|
101
102
|
* @param {CacheEntryJson[]} json
|
|
102
103
|
*/
|
|
103
104
|
load(json) {
|
|
104
|
-
this.positionalCache = json.
|
|
105
|
+
this.positionalCache = json.every((entry) =>
|
|
106
|
+
Object.values(entry.validators).every(
|
|
107
|
+
(v) => v.compilation?.version === 1
|
|
108
|
+
)
|
|
109
|
+
)
|
|
110
|
+
? json.map(cacheEntryFromJson)
|
|
111
|
+
: []
|
|
105
112
|
}
|
|
106
113
|
|
|
107
114
|
/**
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { attachCompilation, getCompilation } from "./compilation.js"
|
|
1
2
|
import { bytesToHex } from "@helios-lang/codec-utils"
|
|
2
3
|
import {
|
|
3
4
|
makeMintingPolicyHash,
|
|
@@ -115,6 +116,7 @@ export class DagCompiler {
|
|
|
115
116
|
cborHex: optimizedCborHex,
|
|
116
117
|
plutusVersion: optimPlutusVersion,
|
|
117
118
|
ir: optimIr,
|
|
119
|
+
parameters: appliedParameters,
|
|
118
120
|
sourceMap: optimSourceMap
|
|
119
121
|
} = this.lib.compile(sourceCode, moduleDeps, {
|
|
120
122
|
optimize: true,
|
|
@@ -149,6 +151,26 @@ export class DagCompiler {
|
|
|
149
151
|
}
|
|
150
152
|
}
|
|
151
153
|
|
|
154
|
+
attachCompilation(optimizedProgram, {
|
|
155
|
+
version: 1,
|
|
156
|
+
compilerVersion: this.lib.version,
|
|
157
|
+
validator: { name, purpose: validator.$purpose },
|
|
158
|
+
parameters: appliedParameters,
|
|
159
|
+
isTestnet,
|
|
160
|
+
validatorTypes: Object.fromEntries(
|
|
161
|
+
Object.entries(hashTypes).map(([k, v]) => [k, v.toString()])
|
|
162
|
+
),
|
|
163
|
+
optimized: {
|
|
164
|
+
hashDependencies: { ...hashDepHashes },
|
|
165
|
+
dependsOnOwnHash: validator.$dependsOnOwnHash ?? false,
|
|
166
|
+
validatorIndices
|
|
167
|
+
},
|
|
168
|
+
unoptimized: {
|
|
169
|
+
hashDependencies: { ...hashDepHashes },
|
|
170
|
+
dependsOnOwnHash: validator.$dependsOnOwnHash ?? false,
|
|
171
|
+
validatorIndices
|
|
172
|
+
}
|
|
173
|
+
})
|
|
152
174
|
this.addValidatorToCache(validator, optimizedProgram, ownHash)
|
|
153
175
|
}
|
|
154
176
|
|
|
@@ -174,6 +196,16 @@ export class DagCompiler {
|
|
|
174
196
|
const optimizedProgram = /** @type {any} */ (optimizedHash.context)
|
|
175
197
|
.program
|
|
176
198
|
|
|
199
|
+
const compilation = getCompilation(optimizedProgram)
|
|
200
|
+
if (compilation)
|
|
201
|
+
compilation.unoptimized = {
|
|
202
|
+
hashDependencies: { ...hashDepHashes },
|
|
203
|
+
dependsOnOwnHash: validator.$dependsOnOwnHash ?? false,
|
|
204
|
+
validatorIndices,
|
|
205
|
+
ownHash: validator.$dependsOnOwnHash
|
|
206
|
+
? optimizedHashHex
|
|
207
|
+
: undefined
|
|
208
|
+
}
|
|
177
209
|
// unoptimized compilation (so traces are untouched)
|
|
178
210
|
const {
|
|
179
211
|
cborHex: unoptimizedCborHex,
|
|
@@ -236,6 +268,7 @@ export class DagCompiler {
|
|
|
236
268
|
)
|
|
237
269
|
}
|
|
238
270
|
|
|
271
|
+
attachCompilation(uplc, compilation)
|
|
239
272
|
this.cachedUserFuncs[name] = uplc
|
|
240
273
|
}
|
|
241
274
|
}
|
|
@@ -254,6 +287,7 @@ export class DagCompiler {
|
|
|
254
287
|
/** @type {any} */ (unoptimizedProgram)
|
|
255
288
|
)
|
|
256
289
|
|
|
290
|
+
attachCompilation(completeProgram, compilation)
|
|
257
291
|
this.addValidatorToCache(
|
|
258
292
|
validator,
|
|
259
293
|
completeProgram,
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** @typedef {import("@helios-lang/tx-utils").CompilationContext} CompilationContext */
|
|
2
|
+
/** @param {import("@helios-lang/uplc").UplcProgram} program @returns {CompilationContext | undefined} */
|
|
3
|
+
export function getCompilation(program) {
|
|
4
|
+
return /** @type {any} */ (program).$compilation
|
|
5
|
+
}
|
|
6
|
+
/** @param {import("@helios-lang/uplc").UplcProgram} program @param {CompilationContext | undefined} context */
|
|
7
|
+
export function attachCompilation(program, context) {
|
|
8
|
+
if (!context) return
|
|
9
|
+
context = JSON.parse(JSON.stringify(context))
|
|
10
|
+
Object.defineProperty(program, "$compilation", {
|
|
11
|
+
value: context,
|
|
12
|
+
enumerable: false,
|
|
13
|
+
configurable: true
|
|
14
|
+
})
|
|
15
|
+
if (program.alt) attachCompilation(program.alt, context)
|
|
16
|
+
}
|
package/src/index.js
CHANGED
|
@@ -96,6 +96,7 @@ export { genTypes } from "./codegen/TypeSchema.js"
|
|
|
96
96
|
* plutusVersion: PlutusVersion
|
|
97
97
|
* ir?: string
|
|
98
98
|
* sourceMap?: import("@helios-lang/uplc").UplcSourceMapJsonSafe
|
|
99
|
+
* parameters: Record<string,string>
|
|
99
100
|
* }} CompileOutput
|
|
100
101
|
*/
|
|
101
102
|
|
|
@@ -394,4 +395,5 @@ export { genTypes } from "./codegen/TypeSchema.js"
|
|
|
394
395
|
* @typedef {{projectId: string, name: string, apiKey: string, endpoint: string, sources?: Record<string,string>}} DebuggerContext
|
|
395
396
|
*/
|
|
396
397
|
|
|
397
|
-
/** @typedef {
|
|
398
|
+
/** @typedef {import("@helios-lang/tx-utils").CompilationContext} CompilationContext */
|
|
399
|
+
/** @typedef {UplcProgram & {$debugger?: DebuggerContext, $compilation?: CompilationContext}} DebuggerUplcProgram */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ChildArtifactWriter.d.ts","sourceRoot":"","sources":["../../src/artifacts/ChildArtifactWriter.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ChildArtifactWriter.d.ts","sourceRoot":"","sources":["../../src/artifacts/ChildArtifactWriter.js"],"names":[],"mappings":"AAKA;;;GAGG;AAEH;IAaI;;;OAGG;IACH,oBAHW,QAAQ,QACR,MAAM,EAOhB;IArBD;;;OAGG;IACH,iBAFU,QAAQ,CAEZ;IAEN;;;OAGG;IACH,eAFU,MAAM,CAEZ;IAaJ;;OAEG;IACH,iBAFU,OAAO,CAIhB;IAED;;;;;OAKG;IACH,mBALW,MAAM,WACN,WAAW,cACX,OAAO,GACL,mBAAmB,CAiG/B;CACJ;+BA5I8B,qBAAqB;8BAIvB,eAAe;iCADZ,mBAAmB"}
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* @typedef {{
|
|
7
7
|
* name: string
|
|
8
8
|
* currentScriptIndex: number | undefined
|
|
9
|
-
* changeParam(key: string, value: UplcData):
|
|
9
|
+
* changeParam(key: string, value: UplcData): boolean
|
|
10
10
|
* compile(options: {
|
|
11
11
|
* optimize?: boolean,
|
|
12
12
|
* dependsOnOwnHash?: boolean,
|
|
@@ -25,7 +25,7 @@ export function makeCompilerLib_v0_17(lib: any): CompilerLib;
|
|
|
25
25
|
export type Program = {
|
|
26
26
|
name: string;
|
|
27
27
|
currentScriptIndex: number | undefined;
|
|
28
|
-
changeParam(key: string, value: UplcData):
|
|
28
|
+
changeParam(key: string, value: UplcData): boolean;
|
|
29
29
|
compile(options: {
|
|
30
30
|
optimize?: boolean;
|
|
31
31
|
dependsOnOwnHash?: boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CompilerLib_v0_17.d.ts","sourceRoot":"","sources":["../../src/compiler/CompilerLib_v0_17.js"],"names":[],"mappings":"AAGA;;;GAGG;AAEH;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,2CAHW,GAAG,GACD,WAAW,CAIvB;sBArBY;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,
|
|
1
|
+
{"version":3,"file":"CompilerLib_v0_17.d.ts","sourceRoot":"","sources":["../../src/compiler/CompilerLib_v0_17.js"],"names":[],"mappings":"AAGA;;;GAGG;AAEH;;;;;;;;;;;;;;GAcG;AAEH;;;GAGG;AACH,2CAHW,GAAG,GACD,WAAW,CAIvB;sBArBY;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,kBAAkB,EAAE,MAAM,GAAG,SAAS,CAAA;IACtC,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,OAAO,CAAA;IAClD,OAAO,CAAC,OAAO,EAAE;QACf,QAAQ,CAAC,EAAE,OAAO,CAAC;QACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;QAC3B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACzC,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;QACzC,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;QAC9B,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,KAAK,IAAI,CAAA;KAChE,GAAG,aAAa,CAAA;CAClB;iCAhB4F,aAAa;8BADjE,mBAAmB;mCAAnB,mBAAmB"}
|
|
@@ -17,6 +17,7 @@
|
|
|
17
17
|
* unoptimizedCborHex?: string
|
|
18
18
|
* unoptimizedIr?: string
|
|
19
19
|
* unoptimizedSourceMap?: UplcSourceMapJsonSafe
|
|
20
|
+
* compilation?: import("./compilation.js").CompilationContext
|
|
20
21
|
* optimizedCborHex: string
|
|
21
22
|
* optimizedIr?: string
|
|
22
23
|
* optimizedSourceMap?: UplcSourceMapJsonSafe
|
|
@@ -31,6 +32,7 @@
|
|
|
31
32
|
* unoptimizedCborHex?: string
|
|
32
33
|
* unoptimizedIr?: string
|
|
33
34
|
* unoptimizedSourceMap?: UplcSourceMapJsonSafe
|
|
35
|
+
* compilation?: import("./compilation.js").CompilationContext
|
|
34
36
|
* optimizedCborHex: string
|
|
35
37
|
* optimizedIr?: string
|
|
36
38
|
* optimizedSourceMap?: UplcSourceMapJsonSafe
|
|
@@ -70,6 +72,7 @@ export type CacheEntryValidatorsJson = {
|
|
|
70
72
|
unoptimizedCborHex?: string;
|
|
71
73
|
unoptimizedIr?: string;
|
|
72
74
|
unoptimizedSourceMap?: UplcSourceMapJsonSafe;
|
|
75
|
+
compilation?: import("./compilation.js").CompilationContext;
|
|
73
76
|
optimizedCborHex: string;
|
|
74
77
|
optimizedIr?: string;
|
|
75
78
|
optimizedSourceMap?: UplcSourceMapJsonSafe;
|
|
@@ -84,6 +87,7 @@ export type CacheEntryUserFuncsJson = {
|
|
|
84
87
|
unoptimizedCborHex?: string;
|
|
85
88
|
unoptimizedIr?: string;
|
|
86
89
|
unoptimizedSourceMap?: UplcSourceMapJsonSafe;
|
|
90
|
+
compilation?: import("./compilation.js").CompilationContext;
|
|
87
91
|
optimizedCborHex: string;
|
|
88
92
|
optimizedIr?: string;
|
|
89
93
|
optimizedSourceMap?: UplcSourceMapJsonSafe;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CacheEntry.d.ts","sourceRoot":"","sources":["../../src/context/CacheEntry.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"CacheEntry.d.ts","sourceRoot":"","sources":["../../src/context/CacheEntry.js"],"names":[],"mappings":"AAeA;;;;GAIG;AAEH;;;;;;GAMG;AAEH;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;;;;GAWG;AAEH;;;;;;GAMG;AAEH;;;GAGG;AACH,4CAHW,UAAU,GACR,cAAc,CAmI1B;AAED;;;GAGG;AACH,0CAHW,cAAc,GACZ,UAAU,CA6HtB;yBApTY;IACR,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,UAAU,EAAE;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,2BAA2B,CAAA;KAAC,CAAA;IACzD,SAAS,EAAE;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;KAAC,CAAA;CACzC;uCAIS;IAAC,CAAC,IAAI,EAAE,MAAM,GAAG;QACvB,OAAO,EAAE,SAAS,GAAG,UAAU,GAAG,SAAS,GAAG,OAAO,CAAA;QACrD,KAAK,EAAE,MAAM,EAAE,CAAA;QACf,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,oBAAoB,CAAC,EAAE,qBAAqB,CAAA;QAC5C,WAAW,CAAC,EAAE,OAAO,kBAAkB,EAAE,kBAAkB,CAAA;QAC3D,gBAAgB,EAAE,MAAM,CAAA;QACxB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,kBAAkB,CAAC,EAAE,qBAAqB,CAAA;QAC1C,aAAa,EAAE,aAAa,CAAA;QAC5B,UAAU,EAAE,UAAU,CAAA;QACtB,KAAK,CAAC,EAAE,UAAU,CAAA;QAClB,QAAQ,EAAE,UAAU,CAAA;KACrB,CAAA;CAAC;sCAIM;IAAC,CAAC,IAAI,EAAE,MAAM,GAAG;QACzB,kBAAkB,CAAC,EAAE,MAAM,CAAA;QAC3B,aAAa,CAAC,EAAE,MAAM,CAAA;QACtB,oBAAoB,CAAC,EAAE,qBAAqB,CAAA;QAC5C,WAAW,CAAC,EAAE,OAAO,kBAAkB,EAAE,kBAAkB,CAAA;QAC3D,gBAAgB,EAAE,MAAM,CAAA;QACxB,WAAW,CAAC,EAAE,MAAM,CAAA;QACpB,kBAAkB,CAAC,EAAE,qBAAqB,CAAA;QAC1C,aAAa,EAAE,aAAa,CAAA;KAC7B,CAAA;CAAC;6BAIQ;IACR,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,UAAU,EAAE,wBAAwB,CAAA;IACpC,SAAS,EAAE,uBAAuB,CAAA;CACnC;iDA/C6F,aAAa;iCADA,mBAAmB;2CAAnB,mBAAmB;mCAAnB,mBAAmB;gCAChC,aAAa;gCAF/E,yBAAyB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ContractContextCache.d.ts","sourceRoot":"","sources":["../../src/context/ContractContextCache.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ContractContextCache.d.ts","sourceRoot":"","sources":["../../src/context/ContractContextCache.js"],"names":[],"mappings":"AAgKA,wDAA8D;yBAvJjD,OAAO,iBAAiB,EAAE,UAAU;6BACpC,OAAO,iBAAiB,EAAE,cAAc;sCACxC,OAAO,iBAAiB,EAAE,uBAAuB;uCACjD,OAAO,iBAAiB,EAAE,wBAAwB;4BAIlD;IACR,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;IACzB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,QAAQ,CAAA;IAC1B,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,GAAG,IAAI,CAAA;CACxC;AAfJ;;;;;;;;GAQG;AAEH;;;;;;GAMG;AAEH;IACI;;;;OAIG;IACH,wBAAe;IAEf;;;;OAIG;IACH,eAFU,aAAa,GAAG,SAAS,CAEtB;IAEb;;;;OAIG;IACH,UAAC;IAED;;;OAGG;IACH,gBAAO;IAQP,eAEC;IAED;;;;;;;;;;;OAWG;IACH,mBAVW;QACN,OAAO,EAAE,MAAM,CAAA;QACf,KAAK,EAAE,OAAO,CAAA;QACd,SAAS,EAAE,OAAO,CAAA;QAClB,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAA;QAC3C,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;QACrC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;KACrC,GACS,MAAM,CA2BlB;IAED;;OAEG;IACH,WAFW,cAAc,EAAE,QAU1B;IAED;;;OAGG;IACH,SAHW,MAAM,SACN,UAAU,QAQpB;IAED;;;OAGG;IACH,SAHW,MAAM,GACJ,UAAU,GAAG,SAAS,CAuBlC;IAED;;OAEG;IACH,UAFY,cAAc,EAAE,CAI3B;CACJ;8BAxJ4B,yBAAyB;qCAEJ,aAAa;kCAAb,aAAa;8BADrB,mBAAmB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DagCompiler.d.ts","sourceRoot":"","sources":["../../src/context/DagCompiler.js"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"DagCompiler.d.ts","sourceRoot":"","sources":["../../src/context/DagCompiler.js"],"names":[],"mappings":"AAsbA;;;GAGG;AACH,iDAHW,eAAe,GACb,MAAM,EAAE,CAsBpB;AAhcD;;;GAGG;AAEH;;;;GAIG;AACH;;;;;;;GAOG;AAEH;;GAEG;AACH;IA6BI;;;OAGG;IACH,iBAHW,WAAW,UACX,iBAAiB,EAO3B;IArCD;;;;OAIG;IACH,qBAAG;IAEH;;;;OAIG;IACH,wBAAM;IAEN;;;;OAIG;IACH,kCAAgB;IAEhB;;;;OAIG;IACH,iCAAe;IAaf;;;;;;OAMG;IACH,kBANW,eAAe,EAAE,cACjB,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,aACxB,OAAO,mBACP;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAA;KAAC,GAAG,SAAS,GAClC,iBAAiB,CAiO7B;IAED;;;;;OAKG;IACH,4BAgCC;IAED;;;;;OAKG;IACH,yBA8BC;IAED;;;;;OAKG;IACH,qBAoBC;IAED;;;;;OAKG;IACH,4BAeC;CACJ;gCAhaY,UAAU,GAAG;IACrB,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;;;;gCAIS;IACR,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,UAAU,EAAE;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,2BAA2B,CAAA;KAAC,CAAA;IACzD,SAAS,EAAE;QAAC,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAA;KAAC,CAAA;CACzC;qCAdqF,aAAa;8BAD7C,mBAAmB;iCACa,aAAa;gCAAb,aAAa;iDAAb,aAAa;iCAD7C,mBAAmB"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
/** @typedef {import("@helios-lang/tx-utils").CompilationContext} CompilationContext */
|
|
2
|
+
/** @param {import("@helios-lang/uplc").UplcProgram} program @returns {CompilationContext | undefined} */
|
|
3
|
+
export function getCompilation(program: import("@helios-lang/uplc").UplcProgram): CompilationContext | undefined;
|
|
4
|
+
/** @param {import("@helios-lang/uplc").UplcProgram} program @param {CompilationContext | undefined} context */
|
|
5
|
+
export function attachCompilation(program: import("@helios-lang/uplc").UplcProgram, context: CompilationContext | undefined): void;
|
|
6
|
+
export type CompilationContext = import("@helios-lang/tx-utils").CompilationContext;
|
|
7
|
+
//# sourceMappingURL=compilation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compilation.d.ts","sourceRoot":"","sources":["../../src/context/compilation.js"],"names":[],"mappings":"AAAA,uFAAuF;AACvF,yGAAyG;AACzG,wCADY,OAAO,mBAAmB,EAAE,WAAW,GAAoB,kBAAkB,GAAG,SAAS,CAGpG;AACD,+GAA+G;AAC/G,2CADY,OAAO,mBAAmB,EAAE,WAAW,WAAkB,kBAAkB,GAAG,SAAS,QAUlG;iCAfa,OAAO,uBAAuB,EAAE,kBAAkB"}
|
package/types/index.d.ts
CHANGED
|
@@ -62,6 +62,7 @@ export type CompileOutput = {
|
|
|
62
62
|
plutusVersion: PlutusVersion;
|
|
63
63
|
ir?: string;
|
|
64
64
|
sourceMap?: import("@helios-lang/uplc").UplcSourceMapJsonSafe;
|
|
65
|
+
parameters: Record<string, string>;
|
|
65
66
|
};
|
|
66
67
|
export type TypeCheckOutput = {
|
|
67
68
|
modules: {
|
|
@@ -289,8 +290,10 @@ export type DebuggerContext = {
|
|
|
289
290
|
endpoint: string;
|
|
290
291
|
sources?: Record<string, string>;
|
|
291
292
|
};
|
|
293
|
+
export type CompilationContext = import("@helios-lang/tx-utils").CompilationContext;
|
|
292
294
|
export type DebuggerUplcProgram = UplcProgram & {
|
|
293
295
|
$debugger?: DebuggerContext;
|
|
296
|
+
$compilation?: CompilationContext;
|
|
294
297
|
};
|
|
295
298
|
import type { TypeSchema } from "@helios-lang/type-utils";
|
|
296
299
|
import type { UplcData } from "@helios-lang/uplc";
|
package/types/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":";;;;;;kCA2Ba;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,qBAAqB,EAAE,OAAO,CAAA;IAC9B,qBAAqB,EAAE,OAAO,CAAA;IAC9B,SAAS,EAAE;QACT,IAAI,EAAE,MAAM,CAAA;QACZ,IAAI,EAAE,UAAU,CAAA;QAChB,UAAU,EAAE,OAAO,CAAA;KACpB,EAAE,CAAA;IACH,OAAO,CAAC,EAAE,UAAU,CAAA;CACrB;gCAIS;IACR,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAA;IAC3B,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAA;IACjC,SAAS,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,mBAAmB,CAAC,CAAA;CAChD;mCAIS,iBAAiB,GAAG;IAC5B,gBAAgB,EAAE,MAAM,EAAE,CAAA;IAC1B,kBAAkB,CAAC,EAAE,MAAM,CAAA;IAC3B,QAAQ,EAAE,UAAU,CAAA;IACpB,KAAK,CAAC,EAAE,UAAU,CAAA;CACnB;6BAIS,GAAG;;;;6BAKH;IACR,qBAAqB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAA;IACrD,mBAAmB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IAC5C,gBAAgB,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAA;IACrC,SAAS,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,OAAO,CAAA;IACjB,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,gBAAgB,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,CAAA;IAC9B,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC1B,IAAI,EAAE,MAAM,CAAA;QACZ,OAAO,EAAE,MAAM,CAAA;QACf,aAAa,EAAE,aAAa,CAAA;QAC5B,EAAE,CAAC,EAAE,MAAM,CAAA;QACX,SAAS,CAAC,EAAE,qBAAqB,CAAA;QACjC,GAAG,CAAC,EAAE;YACJ,OAAO,EAAE,MAAM,CAAA;YACf,EAAE,CAAC,EAAE,MAAM,CAAA;YACX,SAAS,CAAC,EAAE,qBAAqB,CAAA;SAClC,CAAA;KACF,KAAK,IAAI,CAAA;CACX;4BAIS;IACR,OAAO,EAAE,MAAM,CAAA;IACf,aAAa,EAAE,aAAa,CAAA;IAC5B,EAAE,CAAC,EAAE,MAAM,CAAA;IACX,SAAS,CAAC,EAAE,OAAO,mBAAmB,EAAE,qBAAqB,CAAA;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.js"],"names":[],"mappings":"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"}
|