
Security News
TypeScript is Porting Its Compiler to Go for 10x Faster Builds
TypeScript is porting its compiler to Go, delivering 10x faster builds, lower memory usage, and improved editor performance for a smoother developer experience.
@ligolang/ligo-snippets
Advanced tools
A React component for embedding Ligo code snippets on a page.
yarn add @ligolang/ligo-snippets
LigoSnippet
component to a pageimport { LigoSnippet } from "@ligolang/ligo-snippets";
const App = () => {
const code = `type storage is int
type parameter is
Increment of int
| Decrement of int
| Reset
type return is list (operation) * storage
// Two entrypoints
function add (const store : storage; const delta : int) : storage is
store + delta
function sub (const store : storage; const delta : int) : storage is
store - delta
(* Main access point that dispatches to the entrypoints according to
the smart contract parameter. *)
function main (const action : parameter; const store : storage) : return is
((nil : list (operation)), // No operations
case action of
Increment (n) -> add (store, n)
| Decrement (n) -> sub (store, n)
| Reset -> 0
end)`
const snippetData = {
"language": "pascaligo", // Required - Takes a string value of a Ligo language (e.g. "pascaligo", "reasonligo" or "cameligo").
"code": code, // Required - Takes a string value of your code snippet.
"name": "PascaLigo Code Snippet Example", // Optional - Takes a string value to display as your snippet's title on the Ligo Web IDE.
"theme": "dark", // Optional - Takes a string value of either "dark" or "light".
"height": "" // Optional - Takes a string value of a CSS height (e.g. "100px").
}
return <LigoSnippet data={snippetData} />
}
render(<App />, document.getElementById("root"));
The snippetData
values of language
and code
are required. These values determine the code displayed and the syntax highlighting. The name
value is optional and will be used as the title of your code when sent to the Ligo Web IDE.
Ligo Snippets can be opened in the Ligo Web IDE (https://ide.ligolang.org/) by clicking the IDE button at the bottom of the snippet. The Ligo Web IDE can take in preset configurations for the available features.
"name": string,
"language": string,
"compile": {
"entrypoint": string
},
"dryRun": {
"entrypoint": string,
"parameters": string,
"storage": string,
},
"deploy": {
"entrypoint": string,
"storage": string,
},
"evaluateValue": {
"entrypoint": string
},
"evaluateFunction": {
"entrypoint": string,
"parameters": string
},
"generateDeployScript": {
"entrypoint": string,
"storage": string
}
When using the configurations to set preset default values for the Ligo Web IDE, please note that the name
and language
values are required. When present, these values will replace the name
and language
values from your snippetData
. Everything else is optional.
Add the configuration in a yaml format at the top of your the code you are trying to display.
(*_*
name: PascaLIGO Contract
language: pascaligo
compile:
entrypoint: main
dryRun:
entrypoint: main
parameters: Increment (1)
storage: 0
deploy:
entrypoint: main
storage: 0
evaluateValue:
entrypoint: ""
evaluateFunction:
entrypoint: add
parameters: (5, 6)
generateDeployScript:
entrypoint: main
storage: 0
*_*)
type action is
| Increment of int
| Decrement of int
function add (const a : int ; const b : int) : int is
block { skip } with a + b
function subtract (const a : int ; const b : int) : int is
block { skip } with a - b
function main (const p : action ; const s : int) :
(list(operation) * int) is
block { skip } with ((nil : list(operation)),
case p of
| Increment(n) -> add(s, n)
| Decrement(n) -> subtract(s, n)
end)
FAQs
A React component for embedding Ligo code snippets on a page.
The npm package @ligolang/ligo-snippets receives a total of 0 weekly downloads. As such, @ligolang/ligo-snippets popularity was classified as not popular.
We found that @ligolang/ligo-snippets demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
TypeScript is porting its compiler to Go, delivering 10x faster builds, lower memory usage, and improved editor performance for a smoother developer experience.
Research
Security News
The Socket Research Team has discovered six new malicious npm packages linked to North Korea’s Lazarus Group, designed to steal credentials and deploy backdoors.
Security News
Socket CEO Feross Aboukhadijeh discusses the open web, open source security, and how Socket tackles software supply chain attacks on The Pair Program podcast.