confirm build
This commit is contained in:
@@ -54,7 +54,8 @@ export default function ControlPanel({
|
||||
analysisData,
|
||||
onReset,
|
||||
}: ControlPanelProps) {
|
||||
// const [showAIAnalysis, setShowAIAnalysis] = useState(false); // Reserved for AI analysis feature
|
||||
// eslint-disable-next-line @typescript-eslint/no-unused-vars
|
||||
const [showAIAnalysis, setShowAIAnalysis] = useState(false); // Reserved for AI analysis feature
|
||||
const [aiInsights, setAiInsights] = useState<CheckItem[]>([]);
|
||||
const [isAnalyzingAI, setIsAnalyzingAI] = useState(false);
|
||||
const [combinedChecks, setCombinedChecks] = useState<CheckItem[]>([]);
|
||||
@@ -268,7 +269,7 @@ export default function ControlPanel({
|
||||
}
|
||||
}
|
||||
})
|
||||
.catch(error => {
|
||||
.catch((error: any) => {
|
||||
console.error('AI analysis error:', error);
|
||||
// Remove loading tiles on error
|
||||
setCombinedChecks(prev => prev.filter(c => !(c as any).isLoading));
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
/* eslint-disable @stylistic/array-element-newline */
|
||||
"use client";
|
||||
|
||||
import initCanvas from "@/utils/init-canvas";
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
/* eslint-disable @stylistic/array-element-newline */
|
||||
"use client";
|
||||
|
||||
import { animate } from "motion";
|
||||
|
||||
@@ -1,4 +1,3 @@
|
||||
//@ts-nocheck
|
||||
import { animate, AnimatePresence, cubicBezier, motion } from "motion/react";
|
||||
import { useEffect, useRef, useState } from "react";
|
||||
|
||||
@@ -13,7 +12,7 @@ export default function HeroInputTabsMobile(props: {
|
||||
}) {
|
||||
// Filter tabs based on allowedModes if provided
|
||||
const visibleTabs = props.allowedModes
|
||||
? tabs.filter((tab) => props.allowedModes.includes(tab.value))
|
||||
? tabs.filter((tab) => props.allowedModes!.includes(tab.value))
|
||||
: tabs;
|
||||
|
||||
const activeTab = visibleTabs.find((tab) => tab.value === props.tab)!;
|
||||
|
||||
@@ -129,7 +129,7 @@ const tickAscii: Ticker = async ({ app, canvas }) => {
|
||||
|
||||
let i = 0;
|
||||
|
||||
//@ts-ignore
|
||||
//@ts-expect-error - safeAdd method exists on extended ticker
|
||||
app.ticker.safeAdd(() => {
|
||||
i++;
|
||||
if (i >= sprites.length) i = 0;
|
||||
|
||||
+2
-3
@@ -1,4 +1,3 @@
|
||||
//@ts-nocheck
|
||||
|
||||
import { AnimationOptions, cubicBezier } from "motion";
|
||||
import { Application, Container, Graphics, Sprite } from "pixi.js";
|
||||
@@ -94,11 +93,11 @@ export default function AnimatedRect(props: Props) {
|
||||
},
|
||||
render,
|
||||
animate: (renderProps: Partial<Props>, settings?: AnimationOptions) =>
|
||||
props.app.animate(p, renderProps, {
|
||||
(props.app as any).animate(p, renderProps, {
|
||||
...p.animationConfig,
|
||||
...settings,
|
||||
onUpdate: render,
|
||||
}),
|
||||
reset: () => props.app.animate(p, props, { onUpdate: render }),
|
||||
reset: () => (props.app as any).animate(p, props, { onUpdate: render }),
|
||||
};
|
||||
}
|
||||
|
||||
+4
-5
@@ -1,4 +1,3 @@
|
||||
//@ts-nocheck
|
||||
|
||||
import { Application, Graphics } from "pixi.js";
|
||||
|
||||
@@ -58,22 +57,22 @@ export default function BlinkingContainer({
|
||||
animatedRect.animate({ scale: 1 });
|
||||
},
|
||||
blink: ({ delay = 0 }: { delay?: number } = {}) => {
|
||||
app
|
||||
(app as any)
|
||||
.animate(0, 0.32, {
|
||||
repeatType: "reverse",
|
||||
repeat: 2,
|
||||
delay,
|
||||
duration: 0.065,
|
||||
ease: "linear",
|
||||
onUpdate: (value) => {
|
||||
onUpdate: (value: any) => {
|
||||
blinkLayer.alpha = value as number;
|
||||
},
|
||||
})
|
||||
.then(() => {
|
||||
app.animate(0.32, 0, {
|
||||
(app as any).animate(0.32, 0, {
|
||||
duration: 0.065,
|
||||
ease: "linear",
|
||||
onUpdate: (value) => {
|
||||
onUpdate: (value: any) => {
|
||||
blinkLayer.alpha = value as number;
|
||||
},
|
||||
});
|
||||
|
||||
@@ -1,8 +1,7 @@
|
||||
"use client";
|
||||
|
||||
import { useState } from "react";
|
||||
import Globe from "@/components/app/(home)/sections/hero-input/_svg/Globe";
|
||||
import HeroInputSubmitButton from "@/components/app/(home)/sections/hero-input/Button/Button";
|
||||
import Link from "next/link";
|
||||
|
||||
interface SidebarInputProps {
|
||||
onSubmit: (url: string, style: string, model: string, instructions?: string) => void;
|
||||
@@ -16,12 +15,12 @@ export default function SidebarInput({ onSubmit, disabled = false }: SidebarInpu
|
||||
const [additionalInstructions, setAdditionalInstructions] = useState<string>("");
|
||||
const [isValidUrl, setIsValidUrl] = useState<boolean>(false);
|
||||
|
||||
// Simple URL validation
|
||||
const validateUrl = (urlString: string) => {
|
||||
if (!urlString) return false;
|
||||
const urlPattern = /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
|
||||
return urlPattern.test(urlString.toLowerCase());
|
||||
};
|
||||
// Simple URL validation - currently unused but keeping for future use
|
||||
// const validateUrl = (urlString: string) => {
|
||||
// if (!urlString) return false;
|
||||
// const urlPattern = /^(https?:\/\/)?([\da-z\.-]+)\.([a-z\.]{2,6})([\/\w \.-]*)*\/?$/;
|
||||
// return urlPattern.test(urlString.toLowerCase());
|
||||
// };
|
||||
|
||||
const styles = [
|
||||
{ id: "1", name: "Glassmorphism", description: "Frosted glass effect" },
|
||||
@@ -58,11 +57,11 @@ export default function SidebarInput({ onSubmit, disabled = false }: SidebarInpu
|
||||
<div >
|
||||
<div className="p-4 border-b border-gray-100">
|
||||
{/* link to home page with button */}
|
||||
<a href="/">
|
||||
<Link href="/">
|
||||
<button className="w-full px-3 py-2 text-xs font-medium text-gray-700 bg-white rounded border border-gray-200 focus:border-orange-500 focus:outline-none focus:ring-1 focus:ring-orange-500">
|
||||
Generate a new website
|
||||
</button>
|
||||
</a>
|
||||
</Link>
|
||||
</div>
|
||||
|
||||
{/* Options Section - Show when valid URL */}
|
||||
|
||||
Reference in New Issue
Block a user