mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-04 08:38:34 +00:00
@affine/templates
Manages template files for use in AFFiNE. For now we only support onboarding templates.
How to update
Before we offer a better solution, to update the onboarding templates:
- run AFFiNE core locally (dev mode)
- expose
ZipTransformerto window. e.g.,import {ZipTransformer} from '@blocksuite/affine/blocks/root'; window.ZipTransformer = ZipTransformer; - run the following script
(async () => { // make sure ZipTransformer is imported and attached to window const { ZipTransformer } = window; await Promise.all([...currentWorkspace.blockSuiteWorkspace.pages.values()].map(p => p.load())); // wait for a few more seconds await new Promise(resolve => setTimeout(resolve, 5000)); const zipblob = await ZipTransformer.exportPages(currentWorkspace.blockSuiteWorkspace, [...currentWorkspace.blockSuiteWorkspace.pages.values()]); const url = URL.createObjectURL(zipblob); const a = document.createElement('a'); a.setAttribute('href', url); a.setAttribute('download', `${currentWorkspace.id}.affine.zip`); a.click(); a.remove(); URL.revokeObjectURL(url); })(); - unzip the file, replace the json files into onboarding folder (no need to include the
assets) - run
yarn postinstallto update thetemplates.gen.tsfile