mirror of
https://github.com/storytold/storyteller-bevy.git
synced 2026-10-09 00:09:55 +00:00
0a0acacfdb
This PR adds a `CanvasProviderElement` to `@storyteller/studio-web` to manage the complexity of maintaining a single concrete `HTMLCanvasElement` for `@storyteller/studio`, while still being able to treat components like the `ViewerElement` as self-contained "views" that behave as expected with regards to CSS styling, DOM placement, etc. Consuming applications should wrap the new `<sts-canvas-provider />` element around some common ancestor of all views into the `@storyteller/studio` app, similar to a React context provider. The `react-frontend` application has been updated to take advantage of the new `CanvasProviderElement` by demonstrating a more realistic use case for the `ViewerElement`. The new demo presents a grid of "thumbnails," one for each object in our hard-coded "object library." Clicking on one of these thumbnails will render a `ViewerElement` for that object in a modal dialog.
28 lines
877 B
JSON
28 lines
877 B
JSON
{
|
|
"compileOnSave": false,
|
|
"compilerOptions": {
|
|
"rootDir": ".",
|
|
"sourceMap": true,
|
|
"declaration": false,
|
|
"moduleResolution": "node",
|
|
"emitDecoratorMetadata": true,
|
|
"experimentalDecorators": true,
|
|
"importHelpers": true,
|
|
"target": "es2015",
|
|
"module": "esnext",
|
|
"lib": ["es2020", "dom"],
|
|
"skipLibCheck": true,
|
|
"skipDefaultLibCheck": true,
|
|
"baseUrl": ".",
|
|
"paths": {
|
|
"@storyteller/framework": ["framework/src/index.ts"],
|
|
"@storyteller/studio": ["dist/studio"],
|
|
"@storyteller/studio-web": ["studio-web/src/index.ts"],
|
|
"@storyteller/studio-web/canvas-provider": ["studio-web/src/lib/canvas-provider.element.ts"],
|
|
"@storyteller/studio-web/viewer": ["studio-web/src/lib/viewer.element.ts"],
|
|
"@storyteller/utility": ["utility/src/index.ts"]
|
|
}
|
|
},
|
|
"exclude": ["node_modules", "tmp"]
|
|
}
|