diff --git a/constants/data.ts b/constants/data.ts index 23832fd2..c3c9c766 100644 --- a/constants/data.ts +++ b/constants/data.ts @@ -530,3 +530,8 @@ pub contract Example { } } `; +export const square = `[ + [1, 2, 3], + [2, 3, 1], + [3, 1, 2], +]`; diff --git a/pages/square-to-curly.tsx b/pages/square-to-curly.tsx new file mode 100644 index 00000000..1084c950 --- /dev/null +++ b/pages/square-to-curly.tsx @@ -0,0 +1,23 @@ +import ConversionPanel from "@components/ConversionPanel"; +import { useCallback } from "react"; +import * as React from "react"; + +export default function SquareToCurly() { + const transformer = useCallback(async ({ value }) => { + if (typeof value === "string") { + return value.replace(/\[/g, "{").replace(/\]/g, "}"); + } + return ""; + }, []); + + return ( + + ); +} diff --git a/utils/routes.tsx b/utils/routes.tsx index cb19f16f..8922887f 100644 --- a/utils/routes.tsx +++ b/utils/routes.tsx @@ -222,7 +222,7 @@ export const categorizedRoutes = [ label: "to Typescript", path: "/js-object-to-typescript", desc: "An online REPL for converting JS Object to Typescript." - }, + } ] }, { @@ -393,6 +393,10 @@ export const categorizedRoutes = [ { label: "Cadence to Go", path: "/cadence-to-go" + }, + { + label: "[] to {}", + path: "/square-to-curly" } ] }