aboutsummaryrefslogtreecommitdiff
path: root/apps/web/lib/loadSnap.ts
blob: 083603eb440941833d510b61d8d34f77d102e3e1 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
import { createTLStore, defaultShapeUtils, loadSnapshot } from "tldraw";
import { getCanvasData } from "../app/actions/fetchers";
import { twitterCardUtil } from "../components/canvas/twitterCard";
import { textCardUtil } from "../components/canvas/textCard";

export async function loadRemoteSnapshot(id: string) {
  const snapshot = await getCanvasData(id);

  const newStore = createTLStore({
    shapeUtils: [...defaultShapeUtils, twitterCardUtil, textCardUtil],
  });
  loadSnapshot(newStore, snapshot.snapshot);
  return newStore;
}