package d2talalayout
import (
"context"
"fmt"
"github.com/pancsta/d2/d2graph"
"github.com/pancsta/d2/d2layouts/d2talalayout/internal/engine"
"github.com/pancsta/d2/d2layouts/d2talalayout/internal/layoutgraph"
)
type seedInput struct {
graph *layoutgraph .Graph
bindings translation
}
func newSeedInput(ctx context .Context , graph *d2graph .Graph ) (seedInput , error ) {
if err := ctx .Err (); err != nil {
return seedInput {}, err
}
internal := layoutgraph .NewGraph ()
bindings , err := translateGraph (ctx , graph , internal , false )
if err != nil {
return seedInput {}, err
}
return seedInput {graph : internal , bindings : bindings }, nil
}
func runSeed(ctx context .Context , input seedInput , seed int64 ) (*layoutgraph .Graph , error ) {
if input .graph == nil {
return nil , fmt .Errorf ("TALA seed graph is empty" )
}
if err := ctx .Err (); err != nil {
return nil , err
}
return engine .Layout (ctx , input .graph , engine .LayoutOptions {
Seed : seed ,
})
}
The pages are generated with Golds v0.8.7 . (GOOS=linux GOARCH=amd64)
Golds is a Go 101 project developed by Tapir Liu .
PR and bug reports are welcome and can be submitted to the issue list .
Please follow @zigo_101 (reachable from the left QR code) to get the latest news of Golds .