Skip to content

Commit

Permalink
rebuilt lucid with pallas
Browse files Browse the repository at this point in the history
  • Loading branch information
alessandrokonrad committed Jan 12, 2025
1 parent 4a36e10 commit 2cfe850
Show file tree
Hide file tree
Showing 131 changed files with 14,188 additions and 108,959 deletions.
19 changes: 5 additions & 14 deletions blueprint.ts
Original file line number Diff line number Diff line change
@@ -1,9 +1,4 @@
import packageJson from "./package.json" with { type: "json" };
import { parse } from "https://deno.land/[email protected]/flags/mod.ts";

const flags = parse(Deno.args, {
boolean: ["npm"],
});
import { version } from "./package.json" with { type: "json" };

type Blueprint = {
preamble: {
Expand Down Expand Up @@ -54,11 +49,7 @@ const plutusVersion = "Plutus" +
const definitions = plutusJson.definitions;

const imports = `// deno-lint-ignore-file
import { applyParamsToScript, Data, Validator } from "${
flags.npm
? "lucid-cardano"
: `https://deno.land/x/lucid@${packageJson.version}/mod.ts`
}"`;
import { applyParamsToScript, Data, Script } from "https://deno.land/x/lucid@${version}/mod.ts"`;

const validators = plutusJson.validators.map((validator) => {
const title = validator.title;
Expand Down Expand Up @@ -87,7 +78,7 @@ const validators = plutusJson.validators.map((validator) => {
const script = validator.compiledCode;

return `export interface ${name} {
new (${paramsArgs.map((param) => param.join(":")).join(",")}): Validator;${
new (${paramsArgs.map((param) => param.join(":")).join(",")}): Script;${
datum ? `\n${datumTitle}: ${schemaToType(datumSchema)};` : ""
}
${redeemerTitle}: ${schemaToType(redeemerSchema)};
Expand All @@ -96,9 +87,9 @@ const validators = plutusJson.validators.map((validator) => {
export const ${name} = Object.assign(
function (${paramsArgs.map((param) => param.join(":")).join(",")}) {${
paramsArgs.length > 0
? `return { type: "${plutusVersion}", script: applyParamsToScript("${script}", [${
? `return { type: "${plutusVersion}", script: applyParamsToScript([${
paramsArgs.map((param) => param[0]).join(",")
}], ${JSON.stringify(paramsSchema)} as any) };`
}], "${script}", ${JSON.stringify(paramsSchema)} as any) };`
: `return {type: "${plutusVersion}", script: "${script}"};`
}},
${datum ? `{${datumTitle}: ${JSON.stringify(datumSchema)}},` : ""}
Expand Down
2 changes: 1 addition & 1 deletion deno.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"tasks": {
"build": "deno run --allow-env --allow-write --allow-read --allow-net --allow-run build.ts",
"build:core": "cd src/core/libs/cardano_multiplatform_lib && deno run -A https://raw.githubusercontent.com/spacebudz/wasmbuild/542aa1afdbf640b4bad2c740f32e42633bc99654/main.ts --out ./; cd ../cardano_message_signing && deno run -A https://raw.githubusercontent.com/spacebudz/wasmbuild/542aa1afdbf640b4bad2c740f32e42633bc99654/main.ts --out ./",
"build:core": "cd src/core/libs/lucid_core && wasm-pack build . --no-pack --weak-refs --release && rm ./pkg/.gitignore; cd ../message_signing && wasm-pack build . --no-pack --weak-refs --release && rm ./pkg/.gitignore",
"publish": "deno task build && deno task test && npm publish dist",
"test": "deno test --allow-env --allow-read --allow-net tests",
"test:core": "cd src/core/libs/cardano_multiplatform_lib && cargo test; cd ../cardano_message_signing && cargo test"
Expand Down
66 changes: 36 additions & 30 deletions src/core/core.ts
Original file line number Diff line number Diff line change
@@ -1,30 +1,36 @@
import * as C from "./libs/cardano_multiplatform_lib/cardano_multiplatform_lib.generated.js";
import * as M from "./libs/cardano_message_signing/cardano_message_signing.generated.js";
import packageJson from "../../package.json" with { type: "json" };

async function unsafeInstantiate(module: any, url: string) {
try {
await module.instantiate({
// Exception for Deno fresh framework
url: new URL(
url,
`https://deno.land/x/lucid@${packageJson.version}/src/core/libs/`,
),
});
} catch (_e) {
// This only ever happens during SSR rendering
}
}

await Promise.all([
unsafeInstantiate(
C,
`cardano_multiplatform_lib/cardano_multiplatform_lib_bg.wasm`,
),
unsafeInstantiate(
M,
`cardano_message_signing/cardano_message_signing_bg.wasm`,
),
]);

export { C, M };
import * as Core from "./libs/lucid_core/pkg/lucid_core.js";
import type * as CoreTypes from "./libs/lucid_core/pkg/lucid_core.d.ts";
import * as MessageSigningInstance from "./libs/message_signing/pkg/message_signing.js";
import type * as MessageSigningTypes from "./libs/message_signing/pkg/message_signing.d.ts";

export type Addresses = CoreTypes.Addresses;
export const Addresses: typeof CoreTypes.Addresses = Core.Addresses;

export type Codec = CoreTypes.Codec;
export const Codec: typeof CoreTypes.Codec = Core.Codec;

export type Crypto = CoreTypes.Crypto;
export const Crypto: typeof CoreTypes.Crypto = Core.Crypto;

export type EmulatorState = CoreTypes.EmulatorState;
export const EmulatorState: typeof CoreTypes.EmulatorState = Core.EmulatorState;

export type Hasher = CoreTypes.Hasher;
export const Hasher: typeof CoreTypes.Hasher = Core.Hasher;

export type InstructionBuilder = CoreTypes.InstructionBuilder;
export const InstructionBuilder: typeof CoreTypes.InstructionBuilder =
Core.InstructionBuilder;

export type InstructionSigner = CoreTypes.InstructionSigner;
export const InstructionSigner: typeof CoreTypes.InstructionSigner =
Core.InstructionSigner;

export type Utils = CoreTypes.Utils;
export const Utils: typeof CoreTypes.Utils = Core.Utils;

export type MessageSigning = typeof MessageSigningTypes;
export const MessageSigning: typeof MessageSigningTypes =
MessageSigningInstance;

export type * from "./libs/lucid_core/pkg/lucid_core.d.ts";
1 change: 0 additions & 1 deletion src/core/libs/cardano_message_signing/.gitignore

This file was deleted.

257 changes: 0 additions & 257 deletions src/core/libs/cardano_message_signing/Cargo.lock

This file was deleted.

Loading

0 comments on commit 2cfe850

Please sign in to comment.