| 43 | export type DemoSchema = typeof demoSchema; |
| 44 | |
| 45 | export function createDemoGraph( |
| 46 | graph = new Graph<DemoSchema>({ |
| 47 | schema: demoSchema, |
| 48 | storage: new InMemoryGraphStorage(), |
| 49 | validateProperties: false, |
| 50 | }), |
| 51 | ) { |
| 52 | // People |
| 53 | const alice = graph.addVertex("Person", { name: "Alice", age: 30 }); |
| 54 | const bob = graph.addVertex("Person", { name: "Bob", age: 25 }); |
| 55 | const charlie = graph.addVertex("Person", { name: "Charlie", age: 35 }); |
| 56 | const dave = graph.addVertex("Person", { name: "Dave", age: 40 }); |
| 57 | const erin = graph.addVertex("Person", { name: "Erin", age: 45 }); |
| 58 | const fiona = graph.addVertex("Person", { name: "Fiona", age: 50 }); |
| 59 | const george = graph.addVertex("Person", { name: "George", age: 55 }); |
| 60 | |
| 61 | // Things |
| 62 | const apple = graph.addVertex("Thing", { ref: 1, name: "Apple" }); |
| 63 | const banana = graph.addVertex("Thing", { ref: 2, name: "Banana" }); |
| 64 | const cherry = graph.addVertex("Thing", { ref: 3, name: "Cherry" }); |
| 65 | const dates = graph.addVertex("Thing", { ref: 4, name: "Dates" }); |
| 66 | const eggplant = graph.addVertex("Thing", { ref: 5, name: "Eggplant" }); |
| 67 | const fig = graph.addVertex("Thing", { ref: 6, name: "Fig" }); |
| 68 | const grape = graph.addVertex("Thing", { ref: 7, name: "Grape" }); |
| 69 | |
| 70 | // Relationships |
| 71 | const aliceKnowsBob = graph.addEdge(alice, "knows", bob, {}); |
| 72 | graph.addEdge(alice, "knows", charlie, {}); |
| 73 | const bobKnowsCharlie = graph.addEdge(bob, "knows", charlie, {}); |
| 74 | graph.addEdge(charlie, "knows", dave, {}); |
| 75 | const georgeKnowsCharlie = graph.addEdge(george, "knows", charlie, {}); |
| 76 | graph.addEdge(dave, "knows", erin, {}); |
| 77 | graph.addEdge(erin, "knows", fiona, {}); |
| 78 | graph.addEdge(erin, "knows", alice, {}); |
| 79 | |
| 80 | graph.addEdge(bob, "likes", banana, {}); |
| 81 | graph.addEdge(charlie, "likes", cherry, {}); |
| 82 | graph.addEdge(dave, "likes", dates, {}); |
| 83 | graph.addEdge(erin, "likes", eggplant, {}); |
| 84 | graph.addEdge(fiona, "likes", fig, {}); |
| 85 | |
| 86 | return { |
| 87 | graph, |
| 88 | alice, |
| 89 | bob, |
| 90 | charlie, |
| 91 | dave, |
| 92 | erin, |
| 93 | fiona, |
| 94 | george, |
| 95 | |
| 96 | apple, |
| 97 | banana, |
| 98 | cherry, |
| 99 | dates, |
| 100 | eggplant, |
| 101 | fig, |
| 102 | grape, |