This commit is contained in:
@@ -8,8 +8,8 @@ type DuckModelProps = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
export function DuckModel({ onUpdate, onAssetsLoaded, currentSection }: DuckModelProps) {
|
export function DuckModel({ onUpdate, onAssetsLoaded, currentSection }: DuckModelProps) {
|
||||||
const character = useGLTF('/static/duck3D/Character_output.glb');
|
const character = useGLTF('https://static.officer.dev/duck3D/Character_output.glb');
|
||||||
const animations = useGLTF('/static/duck3D/Meshy_Merged_Animations.glb');
|
const animations = useGLTF('https://static.officer.dev/duck3D/Meshy_Merged_Animations.glb');
|
||||||
const meshRef = useRef<any>(null);
|
const meshRef = useRef<any>(null);
|
||||||
const { actions } = useAnimations(animations.animations, meshRef);
|
const { actions } = useAnimations(animations.animations, meshRef);
|
||||||
|
|
||||||
|
|||||||
@@ -31,7 +31,7 @@ export function Header({ dockItems }: HeaderProps) {
|
|||||||
)}
|
)}
|
||||||
<Link to="/">
|
<Link to="/">
|
||||||
<img
|
<img
|
||||||
src="/static/officer-logo.svg"
|
src="https://static.officer.dev/officer-logo.svg"
|
||||||
alt="Officer"
|
alt="Officer"
|
||||||
className="h-8 md:h-12 w-auto"
|
className="h-8 md:h-12 w-auto"
|
||||||
style={{ transform: 'skew(-15deg, -2deg)' }}
|
style={{ transform: 'skew(-15deg, -2deg)' }}
|
||||||
|
|||||||
@@ -10,18 +10,6 @@ import { Toaster as Sonner } from 'sonner';
|
|||||||
import { TooltipProvider } from '@/components/ui/tooltip';
|
import { TooltipProvider } from '@/components/ui/tooltip';
|
||||||
import './styles/index.css';
|
import './styles/index.css';
|
||||||
|
|
||||||
const headLinks = [
|
|
||||||
{ rel: 'icon', type: 'image/svg+xml', href: '/static/favicon.svg' },
|
|
||||||
{ rel: 'icon', type: 'image/png', sizes: '96x96', href: '/static/favicon-96x96.png' },
|
|
||||||
{ rel: 'apple-touch-icon', href: '/static/apple-touch-icon.png' },
|
|
||||||
{ rel: 'manifest', href: '/static/site.webmanifest' },
|
|
||||||
];
|
|
||||||
|
|
||||||
for (const attrs of headLinks) {
|
|
||||||
const link = document.createElement('link');
|
|
||||||
for (const [key, value] of Object.entries(attrs)) link.setAttribute(key, value);
|
|
||||||
document.head.appendChild(link);
|
|
||||||
}
|
|
||||||
|
|
||||||
const queryClient = new QueryClient({
|
const queryClient = new QueryClient({
|
||||||
defaultOptions: {
|
defaultOptions: {
|
||||||
|
|||||||
@@ -143,12 +143,6 @@ const server = serve({
|
|||||||
idleTimeout: 60,
|
idleTimeout: 60,
|
||||||
maxRequestBodySize: 1024 * 1024 * 1024 * 50, // 50 GB
|
maxRequestBodySize: 1024 * 1024 * 1024 * 50, // 50 GB
|
||||||
routes: {
|
routes: {
|
||||||
'/static/*': async (req) => {
|
|
||||||
const path = new URL(req.url).pathname.slice('/static'.length);
|
|
||||||
const file = Bun.file(`public${path}`);
|
|
||||||
if (await file.exists()) return new Response(file);
|
|
||||||
return new Response(null, { status: 404 });
|
|
||||||
},
|
|
||||||
'/api/dev-server-proxy/*': (req, server) => {
|
'/api/dev-server-proxy/*': (req, server) => {
|
||||||
if (req.headers.get('upgrade') === 'websocket') return upgradeDevServerWs(req, server);
|
if (req.headers.get('upgrade') === 'websocket') return upgradeDevServerWs(req, server);
|
||||||
return honoServer.fetch(req, server);
|
return honoServer.fetch(req, server);
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ export function OfficerIconLogo({ size = 'xl' }: SvgLogoProps) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<img
|
<img
|
||||||
src="/static/officer-icon-square.svg"
|
src="https://static.officer.dev/officer-logo.svg"
|
||||||
alt="Officer Icon"
|
alt="Officer Icon"
|
||||||
style={{ width: config.width, height: 'auto', transform: 'skew(-15deg, -2deg)' }}
|
style={{ width: config.width, height: 'auto', transform: 'skew(-15deg, -2deg)' }}
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ export function OfficerSvgLogoRegular({ size = 'xl' }: SvgLogoProps) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<img
|
<img
|
||||||
src="/static/officer-logo.svg"
|
src="https://static.officer.dev/officer-logo.svg"
|
||||||
alt="Officer Logo"
|
alt="Officer Logo"
|
||||||
style={{ width: config.width, height: 'auto', transform: 'skew(-15deg, -2deg)' }}
|
style={{ width: config.width, height: 'auto', transform: 'skew(-15deg, -2deg)' }}
|
||||||
/>
|
/>
|
||||||
@@ -28,7 +28,7 @@ export function OfficerSvgLogoSquare({ size = 'xl' }: SvgLogoProps) {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<img
|
<img
|
||||||
src="/static/officer-logo-square.svg"
|
src="https://static.officer.dev/officer-logo.svg"
|
||||||
alt="Officer Logo"
|
alt="Officer Logo"
|
||||||
style={{ width: config.width, height: 'auto', transform: 'skew(-15deg, -2deg)' }}
|
style={{ width: config.width, height: 'auto', transform: 'skew(-15deg, -2deg)' }}
|
||||||
/>
|
/>
|
||||||
|
|||||||
@@ -10,7 +10,7 @@ const MainLayout = ({ children }: { children: ReactNode }) => {
|
|||||||
<Container className="rounded-lg bg-white p-8 shadow-lg">
|
<Container className="rounded-lg bg-white p-8 shadow-lg">
|
||||||
<Img
|
<Img
|
||||||
className="mx-auto block"
|
className="mx-auto block"
|
||||||
src={`${process.env.PUBLIC_URL}/static/officer-logo.svg`}
|
src="https://static.officer.dev/officer-logo.svg"
|
||||||
width="240"
|
width="240"
|
||||||
alt="Officer Logo"
|
alt="Officer Logo"
|
||||||
/>
|
/>
|
||||||
|
|||||||
Reference in New Issue
Block a user