Skip to content

Commit a45add9

Browse files
committed
fix: revision for ckb-devrel#210
1 parent b0336c1 commit a45add9

16 files changed

+237
-371
lines changed

packages/demo/src/app/utils/(tools)/Molecule/Molecule.tsx

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -10,10 +10,10 @@ import { Textarea } from "@/src/components/Textarea";
1010
import { Button } from "@/src/components/Button";
1111

1212
type Props = {
13-
updateCodecMap: (token: any) => void;
13+
updateCodecDefinitions: (token: any) => void;
1414
};
1515

16-
export const MoleculeParser: React.FC<Props> = ({ updateCodecMap }) => {
16+
export const MoleculeParser: React.FC<Props> = ({ updateCodecDefinitions }) => {
1717
const [inputMol, setInputMol] = useState(() => {
1818
if (typeof window !== "undefined") {
1919
return localStorage.getItem("cachedMol") || "";
@@ -27,25 +27,25 @@ export const MoleculeParser: React.FC<Props> = ({ updateCodecMap }) => {
2727
const handleConfirm = useCallback(() => {
2828
try {
2929
// get user input schema, and append with primitive schema
30-
const userCodecMap = ccc.molecule.getCodecMapFromMol(
30+
const userCodecDefinitions = ccc.molecule.parseMolecule(
3131
inputMol + blockchainSchema,
3232
{
3333
refs: builtinCodecs,
3434
},
3535
);
36-
const codecMap = mergeBuiltinCodecs(userCodecMap);
36+
const CodecDefinitions = mergeBuiltinCodecs(userCodecDefinitions);
3737
setParseSuccess(true);
38-
updateCodecMap(codecMap);
38+
updateCodecDefinitions(CodecDefinitions);
3939
log("Successfully parsed schema");
4040
if (typeof window !== "undefined") {
4141
localStorage.setItem("cachedMol", inputMol);
4242
}
4343
} catch (error: any) {
4444
setParseSuccess(false);
45-
updateCodecMap({});
45+
updateCodecDefinitions({});
4646
error(error.message);
4747
}
48-
}, [inputMol, log, updateCodecMap]);
48+
}, [inputMol, log, updateCodecDefinitions]);
4949

5050
return (
5151
<div style={{ marginBottom: 16 }}>

packages/demo/src/app/utils/(tools)/Molecule/SchemaSelect.tsx

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,30 +3,30 @@ import { ccc } from "@ckb-ccc/connector-react";
33
import { Dropdown } from "@/src/components/Dropdown";
44

55
type Props = {
6-
codecMap: ccc.molecule.CodecMap;
6+
CodecDefinitions: ccc.molecule.CodecDefinitions;
77
selectedCodecName: string;
88
onSelectCodec: (name: string) => void;
99
mode: "decode" | "encode";
1010
onSelectMode: (mode: "decode" | "encode") => void;
1111
};
1212

1313
const createCodecOptionsFromMap = (
14-
codecMap: ccc.molecule.CodecMap,
14+
CodecDefinitions: ccc.molecule.CodecDefinitions,
1515
): string[] => {
16-
return Object.keys(codecMap);
16+
return Object.keys(CodecDefinitions);
1717
};
1818

1919
export const SchemaSelect: React.FC<Props> = ({
2020
onSelectCodec,
2121
selectedCodecName,
22-
codecMap,
22+
CodecDefinitions,
2323
mode,
2424
onSelectMode,
2525
}) => {
2626
const handleChange = (newValue: string | null) => {
2727
onSelectCodec(newValue as string);
2828
};
29-
const schemaOptions = createCodecOptionsFromMap(codecMap).map((schema) => ({
29+
const schemaOptions = createCodecOptionsFromMap(CodecDefinitions).map((schema) => ({
3030
name: schema,
3131
displayName: schema,
3232
iconName: "Hash" as const,

packages/demo/src/app/utils/(tools)/Molecule/constants.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { ccc } from "@ckb-ccc/connector-react";
33
/**
44
* built-in re-writable codecs
55
*/
6-
export const builtinCodecs: ccc.molecule.CodecMap = {
6+
export const builtinCodecs: ccc.molecule.CodecDefinitions = {
77
Uint8: ccc.mol.Uint8,
88
Uint16: ccc.mol.Uint16,
99
Uint32: ccc.mol.Uint32,
@@ -26,8 +26,8 @@ export const builtinCodecs: ccc.molecule.CodecMap = {
2626
* @param userTokens
2727
*/
2828
export const mergeBuiltinCodecs = (
29-
userCodecs: ccc.molecule.CodecMap,
30-
): ccc.molecule.CodecMap => {
29+
userCodecs: ccc.molecule.CodecDefinitions,
30+
): ccc.molecule.CodecDefinitions => {
3131
return { ...userCodecs, ...builtinCodecs };
3232
};
3333

packages/demo/src/app/utils/(tools)/Molecule/page.tsx

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -18,15 +18,15 @@ export default function Molecule() {
1818
const { createSender } = useApp();
1919
const { log } = createSender("Molecule");
2020

21-
const [codecMap, setCodecMap] = useState<ccc.molecule.CodecMap>({});
21+
const [CodecDefinitions, setCodecDefinitions] = useState<ccc.molecule.CodecDefinitions>({});
2222
const [selectedCodecName, setSelectedCodecName] = useState<string>("");
2323
const [mode, setMode] = useState<"decode" | "encode">("decode");
24-
const handleCodecMap = useCallback(
25-
(codecMap: ccc.molecule.CodecMap) => {
26-
setCodecMap(codecMap);
27-
setSelectedCodecName(Object.keys(codecMap)[0]);
24+
const handleCodecDefinitions = useCallback(
25+
(CodecDefinitions: ccc.molecule.CodecDefinitions) => {
26+
setCodecDefinitions(CodecDefinitions);
27+
setSelectedCodecName(Object.keys(CodecDefinitions)[0]);
2828
},
29-
[setCodecMap, setSelectedCodecName],
29+
[setCodecDefinitions, setSelectedCodecName],
3030
);
3131

3232
const handleSelectCodec = (name: string) => {
@@ -40,30 +40,30 @@ export default function Molecule() {
4040
cachedMol = "";
4141
}
4242

43-
const userCodecMap = ccc.molecule.getCodecMapFromMol(
43+
const userCodecDefinitions = ccc.molecule.parseMolecule(
4444
cachedMol + blockchainSchema,
4545
{
46-
refs: builtinCodecs,
46+
extraReferences: builtinCodecs,
4747
},
4848
);
49-
const codecMap = mergeBuiltinCodecs(userCodecMap);
50-
handleCodecMap(codecMap);
51-
}, [handleCodecMap]);
49+
const CodecDefinitions = mergeBuiltinCodecs(userCodecDefinitions);
50+
handleCodecDefinitions(CodecDefinitions);
51+
}, [handleCodecDefinitions]);
5252

5353
return (
5454
<div className="flex w-full flex-col items-stretch">
55-
<MoleculeParser updateCodecMap={handleCodecMap} />
56-
{Object.keys(codecMap).length > 0 && (
55+
<MoleculeParser updateCodecDefinitions={handleCodecDefinitions} />
56+
{Object.keys(CodecDefinitions).length > 0 && (
5757
<SchemaSelect
5858
selectedCodecName={selectedCodecName}
59-
codecMap={codecMap}
59+
CodecDefinitions={CodecDefinitions}
6060
onSelectCodec={handleSelectCodec}
6161
mode={mode}
6262
onSelectMode={setMode}
6363
/>
6464
)}
65-
{Object.keys(codecMap).length > 0 && selectedCodecName !== "" && (
66-
<DataInput codec={codecMap[selectedCodecName]} mode={mode} />
65+
{Object.keys(CodecDefinitions).length > 0 && selectedCodecName !== "" && (
66+
<DataInput codec={CodecDefinitions[selectedCodecName]} mode={mode} />
6767
)}
6868
</div>
6969
);

packages/molecule/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@
3636
Fully enabling CKB's Turing completeness and cryptographic freedom power.
3737
</p>
3838

39-
Get `CodecMap` from Molecule schema.
39+
Get `CodecDefinitions` from Molecule schema.
4040

4141
<h3 align="center">
4242
Read more about CCC on <a href="https://docs.ckbccc.com">our website</a> or <a href="https://github.com/ckb-devrel/ccc">GitHub Repo</a>.

packages/molecule/jest.config.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,4 +11,7 @@ module.exports = {
1111
{ tsconfig: "tsconfig.json" },
1212
],
1313
},
14+
moduleNameMapper: {
15+
"^(\\.{1,2}/.*)\\.js$": "$1", // strip .js extension for imports
16+
},
1417
};

packages/molecule/src/barrel.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
export * from "./molecule";
2-
export * from "./type";
1+
export * from "./molecule.js";
2+
export * from "./type.js";

0 commit comments

Comments
 (0)