enzostvs HF Staff commited on
Commit
e986ba0
·
1 Parent(s): d92ab6e

fix stuffs

Browse files
src/components/ask-ai/ask-ai.tsx CHANGED
@@ -284,9 +284,7 @@ function AskAI({
284
  type="text"
285
  disabled={isAiWorking}
286
  className="w-full bg-transparent max-lg:text-sm outline-none px-3 text-white placeholder:text-neutral-400 font-code"
287
- placeholder={
288
- hasAsked ? "What do you want to ask AI next?" : "Ask AI anything..."
289
- }
290
  value={prompt}
291
  onChange={(e) => setPrompt(e.target.value)}
292
  onKeyDown={(e) => {
 
284
  type="text"
285
  disabled={isAiWorking}
286
  className="w-full bg-transparent max-lg:text-sm outline-none px-3 text-white placeholder:text-neutral-400 font-code"
287
+ placeholder={hasAsked ? "Ask AI for edits" : "Ask AI anything..."}
 
 
288
  value={prompt}
289
  onChange={(e) => setPrompt(e.target.value)}
290
  onKeyDown={(e) => {
src/components/deploy-button/deploy-button.tsx CHANGED
@@ -103,7 +103,7 @@ function DeployButton({
103
  </Login>
104
  ) : (
105
  <>
106
- <header className="flex items-center text-sm px-4 py-2 border-b border-gray-200 gap-2 bg-gray-100 font-semibold text-gray-700">
107
  <span className="text-xs bg-pink-500/10 text-pink-500 rounded-full pl-1.5 pr-2.5 py-0.5 flex items-center justify-start gap-1.5">
108
  <img src={SpaceIcon} alt="Space Icon" className="size-4" />
109
  Space
@@ -130,7 +130,7 @@ function DeployButton({
130
  </p>
131
  {!path && (
132
  <label className="block">
133
- <p className="text-gray-600 text-sm font-medium mb-1.5">
134
  Space Title
135
  </p>
136
  <input
 
103
  </Login>
104
  ) : (
105
  <>
106
+ <header className="flex items-center text-sm px-4 py-3 border-b gap-2 bg-neutral-950 border-neutral-800 font-semibold text-neutral-200">
107
  <span className="text-xs bg-pink-500/10 text-pink-500 rounded-full pl-1.5 pr-2.5 py-0.5 flex items-center justify-start gap-1.5">
108
  <img src={SpaceIcon} alt="Space Icon" className="size-4" />
109
  Space
 
130
  </p>
131
  {!path && (
132
  <label className="block">
133
+ <p className="text-muted-foreground text-sm mb-1.5">
134
  Space Title
135
  </p>
136
  <input
src/components/footer/footer.tsx CHANGED
@@ -72,7 +72,7 @@ function Footer({
72
  <DropdownMenuTrigger asChild>
73
  <p className="mr-3 text-xs lg:text-sm text-gray-300 flex items-center gap-1 cursor-pointer hover:brightness-110">
74
  <ChevronDown className="size-4" />
75
- <Avatar className="size-7">
76
  <AvatarImage src={auth?.picture} alt="@shadcn" />
77
  <AvatarFallback className="text-sm">
78
  {auth?.preferred_username?.charAt(0).toUpperCase() ??
 
72
  <DropdownMenuTrigger asChild>
73
  <p className="mr-3 text-xs lg:text-sm text-gray-300 flex items-center gap-1 cursor-pointer hover:brightness-110">
74
  <ChevronDown className="size-4" />
75
+ <Avatar className="size-6 mr-1">
76
  <AvatarImage src={auth?.picture} alt="@shadcn" />
77
  <AvatarFallback className="text-sm">
78
  {auth?.preferred_username?.charAt(0).toUpperCase() ??
src/components/history/history.tsx CHANGED
@@ -13,7 +13,7 @@ export default function History({
13
  <Popover>
14
  <PopoverTrigger asChild>
15
  <Button variant="ghost" size="sm" className="max-lg:hidden">
16
- {history?.length} versions
17
  </Button>
18
  </PopoverTrigger>
19
  <PopoverContent
@@ -21,7 +21,7 @@ export default function History({
21
  align="start"
22
  >
23
  <header className="text-sm px-4 py-3 border-b gap-2 bg-neutral-950 border-neutral-800 font-semibold text-neutral-200">
24
- Version History
25
  </header>
26
  <main className="px-4 space-y-3">
27
  <ul className="max-h-[250px] overflow-y-auto">
 
13
  <Popover>
14
  <PopoverTrigger asChild>
15
  <Button variant="ghost" size="sm" className="max-lg:hidden">
16
+ {history?.length} edits
17
  </Button>
18
  </PopoverTrigger>
19
  <PopoverContent
 
21
  align="start"
22
  >
23
  <header className="text-sm px-4 py-3 border-b gap-2 bg-neutral-950 border-neutral-800 font-semibold text-neutral-200">
24
+ History
25
  </header>
26
  <main className="px-4 space-y-3">
27
  <ul className="max-h-[250px] overflow-y-auto">
src/components/loading/loading.tsx CHANGED
@@ -1,6 +1,6 @@
1
  function Loading() {
2
  return (
3
- <div className="absolute left-0 top-0 h-full w-full flex items-center justify-center bg-white/30 z-20">
4
  <svg
5
  className="size-5 animate-spin text-white"
6
  xmlns="http://www.w3.org/2000/svg"
 
1
  function Loading() {
2
  return (
3
+ <div className="absolute left-0 top-0 h-full w-full flex items-center justify-center z-20 bg-black/50 rounded-full">
4
  <svg
5
  className="size-5 animate-spin text-white"
6
  xmlns="http://www.w3.org/2000/svg"
src/components/preview/preview.tsx CHANGED
@@ -47,13 +47,14 @@ function Preview({
47
  )}
48
  />
49
  <iframe
 
50
  ref={iframeRef}
51
  title="output"
52
  className={classNames(
53
  "w-full select-none transition-all duration-200 bg-black max-lg:h-full",
54
  {
55
  "pointer-events-none": isResizing || isAiWorking,
56
- "lg:max-w-md lg:mx-auto lg:h-[80dvh] lg:!rounded-[48px] lg:border-[8px] lg:border-neutral-700 lg:shadow-2xl":
57
  device === "mobile",
58
  "h-full": device === "desktop",
59
  "lg:border-[8px] lg:border-neutral-700 lg:shadow-2xl lg:rounded-[44px]":
@@ -61,6 +62,15 @@ function Preview({
61
  }
62
  )}
63
  srcDoc={html}
 
 
 
 
 
 
 
 
 
64
  />
65
  </div>
66
  );
 
47
  )}
48
  />
49
  <iframe
50
+ id="preview-iframe"
51
  ref={iframeRef}
52
  title="output"
53
  className={classNames(
54
  "w-full select-none transition-all duration-200 bg-black max-lg:h-full",
55
  {
56
  "pointer-events-none": isResizing || isAiWorking,
57
+ "lg:max-w-md lg:mx-auto lg:h-[80dvh] lg:!rounded-[42px] lg:border-[8px] lg:border-neutral-700 lg:shadow-2xl":
58
  device === "mobile",
59
  "h-full": device === "desktop",
60
  "lg:border-[8px] lg:border-neutral-700 lg:shadow-2xl lg:rounded-[44px]":
 
62
  }
63
  )}
64
  srcDoc={html}
65
+ onLoad={() => {
66
+ if (iframeRef?.current?.contentWindow?.document?.body) {
67
+ iframeRef.current.contentWindow.document.body.scrollIntoView({
68
+ block: isAiWorking ? "end" : "start",
69
+ inline: "nearest",
70
+ behavior: isAiWorking ? "instant" : "smooth",
71
+ });
72
+ }
73
+ }}
74
  />
75
  </div>
76
  );
src/components/settings/settings.tsx CHANGED
@@ -142,7 +142,7 @@ function Settings({
142
  (m: { value: string }) => m.value === model
143
  );
144
  if (provider === "auto") {
145
- onChange(foundModel.providers[0]);
146
  } else {
147
  onChange("auto");
148
  }
 
142
  (m: { value: string }) => m.value === model
143
  );
144
  if (provider === "auto") {
145
+ onChange(foundModel.autoProvider);
146
  } else {
147
  onChange("auto");
148
  }
src/views/App.tsx CHANGED
@@ -165,6 +165,10 @@ export default function App() {
165
  if (currentTab === "chat") {
166
  // Reset editor width when switching to reasoning tab
167
  resetLayout();
 
 
 
 
168
  } else {
169
  if (preview.current) {
170
  // Reset preview width when switching to preview tab
 
165
  if (currentTab === "chat") {
166
  // Reset editor width when switching to reasoning tab
167
  resetLayout();
168
+ // re-add the event listener for resizing
169
+ if (resizer.current) {
170
+ resizer.current.addEventListener("mousedown", handleMouseDown);
171
+ }
172
  } else {
173
  if (preview.current) {
174
  // Reset preview width when switching to preview tab
utils/providers.js CHANGED
@@ -36,7 +36,7 @@ export const MODELS = [
36
  value: "deepseek-ai/DeepSeek-V3-0324",
37
  label: "DeepSeek V3 O324",
38
  providers: ["fireworks-ai", "nebius", "sambanova", "novita", "hyperbolic"],
39
- autoProvider: "novita",
40
  },
41
  {
42
  value: "deepseek-ai/DeepSeek-R1-0528",
 
36
  value: "deepseek-ai/DeepSeek-V3-0324",
37
  label: "DeepSeek V3 O324",
38
  providers: ["fireworks-ai", "nebius", "sambanova", "novita", "hyperbolic"],
39
+ autoProvider: "sambanova",
40
  },
41
  {
42
  value: "deepseek-ai/DeepSeek-R1-0528",