Skip to content

Commit

Permalink
Lint
Browse files Browse the repository at this point in the history
  • Loading branch information
noituri committed Sep 10, 2024
1 parent 528747d commit a417c71
Show file tree
Hide file tree
Showing 7 changed files with 151 additions and 142 deletions.
2 changes: 1 addition & 1 deletion ts/@live-compositor/browser-render/.eslintignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
dist
example
examples
src/generated
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
import js from '@eslint/js'
import globals from 'globals'
import reactHooks from 'eslint-plugin-react-hooks'
import reactRefresh from 'eslint-plugin-react-refresh'
import tseslint from 'typescript-eslint'
import js from '@eslint/js';
import globals from 'globals';
import reactHooks from 'eslint-plugin-react-hooks';
import reactRefresh from 'eslint-plugin-react-refresh';
import tseslint from 'typescript-eslint';

export default tseslint.config(
{ ignores: ['dist'] },
Expand All @@ -19,10 +19,7 @@ export default tseslint.config(
},
rules: {
...reactHooks.configs.recommended.rules,
'react-refresh/only-export-components': [
'warn',
{ allowConstantExport: true },
],
'react-refresh/only-export-components': ['warn', { allowConstantExport: true }],
},
},
)
}
);
86 changes: 45 additions & 41 deletions ts/@live-compositor/browser-render/examples/counter/src/App.tsx
Original file line number Diff line number Diff line change
@@ -1,60 +1,66 @@
import { useEffect, useRef, useState } from 'react'
import './App.css'
import { useEffect, useRef, useState } from 'react';
import './App.css';
import { Renderer, loadWasmModule } from '@live-compositor/browser-render';

function App() {
const canvasRef = useRef<HTMLCanvasElement | null>(null);
const [renderer, setRenderer] = useState<Renderer | null>(null);
const [count, setCount] = useState(0)
const [count, setCount] = useState(0);

useEffect(() => {
const setupRenderer = async () => {
await loadWasmModule("./assets/live-compositor.wasm");
await loadWasmModule('./assets/live-compositor.wasm');
const renderer = await Renderer.create({
streamFallbackTimeoutMs: 500,
});

await renderer.registerImage("img", {
asset_type: "gif",
url: "https://media.tenor.com/eFPFHSN4rJ8AAAAM/example.gif"
await renderer.registerImage('img', {
asset_type: 'gif',
url: 'https://media.tenor.com/eFPFHSN4rJ8AAAAM/example.gif',
});
await renderer.registerFont("https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A-9a6Vc.ttf");
await renderer.registerFont(
'https://fonts.gstatic.com/s/notosans/v36/o-0mIpQlx3QUlC5A4PNB6Ryti20_6n1iPHjcz6L1SoM-jCpoiyD9A-9a6Vc.ttf'
);

setRenderer(renderer);
};

setupRenderer().catch((err) => console.error(err));
setupRenderer().catch(err => console.error(err));
}, []);

useEffect(() => {
if (renderer == null) {
return;
}

renderer.updateScene("output", { width: 256, height: 256 }, {
type: "view",
children: [
{
type: "view",
direction: "column",
top: 0,
left: 50,
children: [
{
type: "image",
image_id: "img",
},
{
type: "text",
font_size: 30,
font_family: "Noto Sans",
text: `Count is ${count}`,
align: "center",
}
]
}
]
});
renderer.updateScene(
'output',
{ width: 256, height: 256 },
{
type: 'view',
children: [
{
type: 'view',
direction: 'column',
top: 0,
left: 50,
children: [
{
type: 'image',
image_id: 'img',
},
{
type: 'text',
font_size: 30,
font_family: 'Noto Sans',
text: `Count is ${count}`,
align: 'center',
},
],
},
],
}
);

let pts = 0;
const renderInterval = setInterval(() => {
Expand All @@ -63,29 +69,27 @@ function App() {
frames: {},
};
const outputs = renderer.render(input);
const frame = outputs.frames["output"];
const frame = outputs.frames['output'];
const resolution = frame.resolution;
const canvas = canvasRef.current;
const context = canvas!.getContext("2d");
const context = canvas!.getContext('2d');
context?.putImageData(new ImageData(frame!.data, resolution.width, resolution.height), 0, 0);

pts += 30;
}, 30);

return () => clearInterval(renderInterval);
}, [renderer, count])
}, [renderer, count]);

return (
<>
<h1>Renderer Example</h1>
<div className="card">
<canvas ref={canvasRef} width={300} height={300}></canvas>
<button onClick={() => setCount((count) => count + 1)}>
Count +1
</button>
<button onClick={() => setCount(count => count + 1)}>Count +1</button>
</div>
</>
)
);
}

export default App
export default App;
12 changes: 6 additions & 6 deletions ts/@live-compositor/browser-render/examples/counter/src/main.tsx
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
import { StrictMode } from 'react'
import { createRoot } from 'react-dom/client'
import App from './App.tsx'
import './index.css'
import { StrictMode } from 'react';
import { createRoot } from 'react-dom/client';
import App from './App.tsx';
import './index.css';

createRoot(document.getElementById('root')!).render(
<StrictMode>
<App />
</StrictMode>,
)
</StrictMode>
);
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
import { defineConfig } from 'vite'
import react from '@vitejs/plugin-react'
import { viteStaticCopy } from 'vite-plugin-static-copy'
import { defineConfig } from 'vite';
import react from '@vitejs/plugin-react';
import { viteStaticCopy } from 'vite-plugin-static-copy';

// https://vitejs.dev/config/
export default defineConfig({
Expand All @@ -10,12 +10,12 @@ export default defineConfig({
targets: [
{
src: 'node_modules/@live-compositor/browser-render/dist/live-compositor.wasm',
dest: 'assets'
}
]
})
dest: 'assets',
},
],
}),
],
optimizeDeps: {
exclude: ["@rollup/browser"],
exclude: ['@rollup/browser'],
},
})
});
Loading

0 comments on commit a417c71

Please sign in to comment.