├── .1024 ├── .github └── workflows │ └── main.yml ├── .gitignore ├── README.en.md ├── README.md ├── curved.html ├── eslint.config.js ├── index.html ├── package.json ├── pnpm-lock.yaml ├── postcss.config.js ├── public └── favicon.ico ├── src ├── App.tsx ├── assets │ ├── github.svg │ └── react.svg ├── components │ └── Iconfont │ │ ├── demo.css │ │ ├── demo_index.html │ │ ├── iconfont.css │ │ ├── iconfont.js │ │ ├── iconfont.json │ │ ├── iconfont.ttf │ │ ├── iconfont.woff │ │ ├── iconfont.woff2 │ │ └── index.tsx ├── main.css ├── main.tsx ├── pages │ ├── 2048 │ │ ├── g2048.ts │ │ ├── index.module.less │ │ └── index.tsx │ ├── clock │ │ └── index.tsx │ ├── demo │ │ └── index.tsx │ ├── editor │ │ ├── components │ │ │ ├── editor │ │ │ │ ├── index.module.less │ │ │ │ └── index.tsx │ │ │ ├── header │ │ │ │ ├── index.module.less │ │ │ │ └── index.tsx │ │ │ ├── material │ │ │ │ ├── index.module.less │ │ │ │ └── index.tsx │ │ │ └── setting │ │ │ │ ├── index.module.less │ │ │ │ └── index.tsx │ │ ├── core │ │ │ ├── application.ts │ │ │ ├── cmp │ │ │ │ ├── base.ts │ │ │ │ ├── factory.ts │ │ │ │ └── shape.tsx │ │ │ ├── editor.ts │ │ │ └── type.ts │ │ ├── index.module.less │ │ ├── index.tsx │ │ └── store │ │ │ ├── component-config.ts │ │ │ ├── components.ts │ │ │ └── layout.ts │ ├── home │ │ └── index.tsx │ ├── jigsaw │ │ └── index.tsx │ ├── marching-music │ │ ├── constants.ts │ │ ├── index.module.less │ │ ├── index.tsx │ │ ├── marching-music.ts │ │ └── type.ts │ ├── minesweeper │ │ ├── bomber.png │ │ ├── index.tsx │ │ ├── mark.png │ │ ├── minesweeper.ts │ │ └── utils.ts │ ├── pageflip │ │ ├── index.tsx │ │ └── page1.jpg │ ├── practice │ │ ├── draw │ │ │ └── index.ts │ │ ├── index.module.less │ │ └── index.tsx │ ├── shape-editor │ │ ├── control.ts │ │ ├── editor.ts │ │ ├── index.raw.tsx │ │ ├── index.tsx │ │ └── shape.ts │ └── snowflake │ │ ├── constants.ts │ │ ├── index.module.less │ │ ├── index.tsx │ │ └── snowflake.ts ├── router.tsx ├── utils │ ├── storage.ts │ └── utils.ts └── vite-env.d.ts ├── tailwind.config.js ├── tsconfig.app.json ├── tsconfig.app.tsbuildinfo ├── tsconfig.json ├── tsconfig.node.json ├── tsconfig.node.tsbuildinfo └── vite.config.ts /.1024: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/.1024 -------------------------------------------------------------------------------- /.github/workflows/main.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/.github/workflows/main.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/.gitignore -------------------------------------------------------------------------------- /README.en.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/README.en.md -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/README.md -------------------------------------------------------------------------------- /curved.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/curved.html -------------------------------------------------------------------------------- /eslint.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/eslint.config.js -------------------------------------------------------------------------------- /index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/index.html -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/package.json -------------------------------------------------------------------------------- /pnpm-lock.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/pnpm-lock.yaml -------------------------------------------------------------------------------- /postcss.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/postcss.config.js -------------------------------------------------------------------------------- /public/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/public/favicon.ico -------------------------------------------------------------------------------- /src/App.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/App.tsx -------------------------------------------------------------------------------- /src/assets/github.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/assets/github.svg -------------------------------------------------------------------------------- /src/assets/react.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/assets/react.svg -------------------------------------------------------------------------------- /src/components/Iconfont/demo.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/demo.css -------------------------------------------------------------------------------- /src/components/Iconfont/demo_index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/demo_index.html -------------------------------------------------------------------------------- /src/components/Iconfont/iconfont.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/iconfont.css -------------------------------------------------------------------------------- /src/components/Iconfont/iconfont.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/iconfont.js -------------------------------------------------------------------------------- /src/components/Iconfont/iconfont.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/iconfont.json -------------------------------------------------------------------------------- /src/components/Iconfont/iconfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/iconfont.ttf -------------------------------------------------------------------------------- /src/components/Iconfont/iconfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/iconfont.woff -------------------------------------------------------------------------------- /src/components/Iconfont/iconfont.woff2: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/iconfont.woff2 -------------------------------------------------------------------------------- /src/components/Iconfont/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/components/Iconfont/index.tsx -------------------------------------------------------------------------------- /src/main.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/main.css -------------------------------------------------------------------------------- /src/main.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/main.tsx -------------------------------------------------------------------------------- /src/pages/2048/g2048.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/2048/g2048.ts -------------------------------------------------------------------------------- /src/pages/2048/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/2048/index.module.less -------------------------------------------------------------------------------- /src/pages/2048/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/2048/index.tsx -------------------------------------------------------------------------------- /src/pages/clock/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/clock/index.tsx -------------------------------------------------------------------------------- /src/pages/demo/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/demo/index.tsx -------------------------------------------------------------------------------- /src/pages/editor/components/editor/index.module.less: -------------------------------------------------------------------------------- 1 | .editor { 2 | height: 100%; 3 | } 4 | -------------------------------------------------------------------------------- /src/pages/editor/components/editor/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/components/editor/index.tsx -------------------------------------------------------------------------------- /src/pages/editor/components/header/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/components/header/index.module.less -------------------------------------------------------------------------------- /src/pages/editor/components/header/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/components/header/index.tsx -------------------------------------------------------------------------------- /src/pages/editor/components/material/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/components/material/index.module.less -------------------------------------------------------------------------------- /src/pages/editor/components/material/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/components/material/index.tsx -------------------------------------------------------------------------------- /src/pages/editor/components/setting/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/components/setting/index.module.less -------------------------------------------------------------------------------- /src/pages/editor/components/setting/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/components/setting/index.tsx -------------------------------------------------------------------------------- /src/pages/editor/core/application.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/core/application.ts -------------------------------------------------------------------------------- /src/pages/editor/core/cmp/base.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/core/cmp/base.ts -------------------------------------------------------------------------------- /src/pages/editor/core/cmp/factory.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/core/cmp/factory.ts -------------------------------------------------------------------------------- /src/pages/editor/core/cmp/shape.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/core/cmp/shape.tsx -------------------------------------------------------------------------------- /src/pages/editor/core/editor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/core/editor.ts -------------------------------------------------------------------------------- /src/pages/editor/core/type.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/core/type.ts -------------------------------------------------------------------------------- /src/pages/editor/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/index.module.less -------------------------------------------------------------------------------- /src/pages/editor/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/index.tsx -------------------------------------------------------------------------------- /src/pages/editor/store/component-config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/store/component-config.ts -------------------------------------------------------------------------------- /src/pages/editor/store/components.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/store/components.ts -------------------------------------------------------------------------------- /src/pages/editor/store/layout.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/editor/store/layout.ts -------------------------------------------------------------------------------- /src/pages/home/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/home/index.tsx -------------------------------------------------------------------------------- /src/pages/jigsaw/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/jigsaw/index.tsx -------------------------------------------------------------------------------- /src/pages/marching-music/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/marching-music/constants.ts -------------------------------------------------------------------------------- /src/pages/marching-music/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/marching-music/index.module.less -------------------------------------------------------------------------------- /src/pages/marching-music/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/marching-music/index.tsx -------------------------------------------------------------------------------- /src/pages/marching-music/marching-music.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/marching-music/marching-music.ts -------------------------------------------------------------------------------- /src/pages/marching-music/type.ts: -------------------------------------------------------------------------------- 1 | export type RhythmMode = 'spectrogram' | 'wave'; 2 | -------------------------------------------------------------------------------- /src/pages/minesweeper/bomber.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/minesweeper/bomber.png -------------------------------------------------------------------------------- /src/pages/minesweeper/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/minesweeper/index.tsx -------------------------------------------------------------------------------- /src/pages/minesweeper/mark.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/minesweeper/mark.png -------------------------------------------------------------------------------- /src/pages/minesweeper/minesweeper.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/minesweeper/minesweeper.ts -------------------------------------------------------------------------------- /src/pages/minesweeper/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/minesweeper/utils.ts -------------------------------------------------------------------------------- /src/pages/pageflip/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/pageflip/index.tsx -------------------------------------------------------------------------------- /src/pages/pageflip/page1.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/pageflip/page1.jpg -------------------------------------------------------------------------------- /src/pages/practice/draw/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/practice/draw/index.ts -------------------------------------------------------------------------------- /src/pages/practice/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/practice/index.module.less -------------------------------------------------------------------------------- /src/pages/practice/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/practice/index.tsx -------------------------------------------------------------------------------- /src/pages/shape-editor/control.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/shape-editor/control.ts -------------------------------------------------------------------------------- /src/pages/shape-editor/editor.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/shape-editor/editor.ts -------------------------------------------------------------------------------- /src/pages/shape-editor/index.raw.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/shape-editor/index.raw.tsx -------------------------------------------------------------------------------- /src/pages/shape-editor/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/shape-editor/index.tsx -------------------------------------------------------------------------------- /src/pages/shape-editor/shape.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/shape-editor/shape.ts -------------------------------------------------------------------------------- /src/pages/snowflake/constants.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/snowflake/constants.ts -------------------------------------------------------------------------------- /src/pages/snowflake/index.module.less: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/snowflake/index.module.less -------------------------------------------------------------------------------- /src/pages/snowflake/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/snowflake/index.tsx -------------------------------------------------------------------------------- /src/pages/snowflake/snowflake.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/pages/snowflake/snowflake.ts -------------------------------------------------------------------------------- /src/router.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/router.tsx -------------------------------------------------------------------------------- /src/utils/storage.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/utils/storage.ts -------------------------------------------------------------------------------- /src/utils/utils.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/utils/utils.ts -------------------------------------------------------------------------------- /src/vite-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/src/vite-env.d.ts -------------------------------------------------------------------------------- /tailwind.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/tailwind.config.js -------------------------------------------------------------------------------- /tsconfig.app.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/tsconfig.app.json -------------------------------------------------------------------------------- /tsconfig.app.tsbuildinfo: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/tsconfig.app.tsbuildinfo -------------------------------------------------------------------------------- /tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/tsconfig.json -------------------------------------------------------------------------------- /tsconfig.node.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/tsconfig.node.json -------------------------------------------------------------------------------- /tsconfig.node.tsbuildinfo: -------------------------------------------------------------------------------- 1 | {"root":["./vite.config.ts"],"version":"5.7.2"} -------------------------------------------------------------------------------- /vite.config.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/xjq7/canvas-example/HEAD/vite.config.ts --------------------------------------------------------------------------------