40 lines
1008 B
Plaintext
40 lines
1008 B
Plaintext
---
|
|
title: How to import squiggle files into `.mdx` documents
|
|
sidebar_position: 5
|
|
---
|
|
|
|
import { SquiggleEditorWithImportedBindings } from "../../src/components/SquiggleEditor";
|
|
|
|
_Proof of concept_
|
|
|
|
## Consider the following squiggle file
|
|
|
|
In our docusaurus repo, we have a static asset called `demo.squiggle`. It looks like this
|
|
|
|
```js
|
|
x = 1 to 2
|
|
y = {a: x, b: 1e1}
|
|
f(t) = normal(t, 1.1)
|
|
z = y.b * y.a
|
|
```
|
|
|
|
We can call `f(z)` upon the assignments in `demo.squiggle` like so:
|
|
|
|
```jsx
|
|
import { SquiggleEditorWithImportedBindings } from "../../src/components/SquiggleEditor";
|
|
|
|
<SquiggleEditorWithImportedBindings
|
|
defaultCode={"f(z)"}
|
|
bindingsImportFile={"/estimates/demo.squiggle"}
|
|
/>;
|
|
```
|
|
|
|
Notice, you need to wrap the export of `@quri/squiggle-components` in custom code for dynamicism, please view `packages/website/src/components/` in github for details.
|
|
|
|
Which would then look exactly like
|
|
|
|
<SquiggleEditorWithImportedBindings
|
|
defaultCode={"f(z)"}
|
|
bindingsImportUrl={"/estimates/demo.squiggle"}
|
|
/>
|