Spaces:
Running
on
L40S
Running
on
L40S
Commit
Β·
d46b5b4
1
Parent(s):
738663d
more compact layout
Browse files- client/src/app.tsx +9 -7
- client/src/layout.tsx +2 -2
- public/index.js +9 -9
client/src/app.tsx
CHANGED
@@ -101,7 +101,7 @@ export function App() {
|
|
101 |
<AlertDescription>{interruptMessage}</AlertDescription>
|
102 |
</Alert>
|
103 |
)}
|
104 |
-
<div className="mb-
|
105 |
<div className="flex flex-row items-center justify-between w-full">
|
106 |
<div className="flex items-center space-x-2">
|
107 |
<div className="flex items-center justify-center">
|
@@ -115,20 +115,22 @@ export function App() {
|
|
115 |
/>
|
116 |
<label
|
117 |
htmlFor="imageInput"
|
118 |
-
className={`cursor-pointer inline-flex items-center
|
|
|
|
|
119 |
isMediaPipeReady ? 'bg-slate-600 hover:bg-slate-500' : 'bg-slate-500 cursor-not-allowed'
|
120 |
} focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500 shadow-xl`}
|
121 |
>
|
122 |
-
<PiImageSquare className="w-
|
123 |
{imageFile ? `Replace` : (isMediaPipeReady ? 'Choose a portrait photo' : 'Initializing...')}
|
124 |
</label>
|
125 |
</div>
|
126 |
{previewImage && (
|
127 |
<button
|
128 |
onClick={handleDownload}
|
129 |
-
className="inline-flex items-center px-
|
130 |
>
|
131 |
-
<FiDownload className="w-
|
132 |
Download
|
133 |
</button>
|
134 |
)}
|
@@ -155,7 +157,7 @@ export function App() {
|
|
155 |
Autotrack head
|
156 |
</label>
|
157 |
*/}
|
158 |
-
<label className="mt-
|
159 |
<input
|
160 |
type="checkbox"
|
161 |
checked={isDebugMode}
|
@@ -167,7 +169,7 @@ export function App() {
|
|
167 |
</div>}
|
168 |
</div>
|
169 |
{previewImage && (
|
170 |
-
<div className="mt-
|
171 |
<img
|
172 |
src={previewImage}
|
173 |
alt="Preview"
|
|
|
101 |
<AlertDescription>{interruptMessage}</AlertDescription>
|
102 |
</Alert>
|
103 |
)}
|
104 |
+
<div className="mb-4 relative">
|
105 |
<div className="flex flex-row items-center justify-between w-full">
|
106 |
<div className="flex items-center space-x-2">
|
107 |
<div className="flex items-center justify-center">
|
|
|
115 |
/>
|
116 |
<label
|
117 |
htmlFor="imageInput"
|
118 |
+
className={`cursor-pointer inline-flex items-center border border-transparent font-medium rounded-md text-white ${
|
119 |
+
imageFile ? 'text-xs px-2 h-8' : 'text-lg px-4 h-12'
|
120 |
+
} ${
|
121 |
isMediaPipeReady ? 'bg-slate-600 hover:bg-slate-500' : 'bg-slate-500 cursor-not-allowed'
|
122 |
} focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500 shadow-xl`}
|
123 |
>
|
124 |
+
<PiImageSquare className="w-4 h-4 mr-1.5" />
|
125 |
{imageFile ? `Replace` : (isMediaPipeReady ? 'Choose a portrait photo' : 'Initializing...')}
|
126 |
</label>
|
127 |
</div>
|
128 |
{previewImage && (
|
129 |
<button
|
130 |
onClick={handleDownload}
|
131 |
+
className="inline-flex items-center px-2 h-8 border border-transparent text-xs font-medium rounded-md text-white bg-zinc-600 hover:bg-zinc-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-zinc-500 shadow-xl"
|
132 |
>
|
133 |
+
<FiDownload className="w-4 h-4 mr-1.5" />
|
134 |
Download
|
135 |
</button>
|
136 |
)}
|
|
|
157 |
Autotrack head
|
158 |
</label>
|
159 |
*/}
|
160 |
+
<label className="mt-2 flex items-center text-sm mr-2">
|
161 |
<input
|
162 |
type="checkbox"
|
163 |
checked={isDebugMode}
|
|
|
169 |
</div>}
|
170 |
</div>
|
171 |
{previewImage && (
|
172 |
+
<div className="mt-2 relative shadow-2xl rounded-xl overflow-hidden">
|
173 |
<img
|
174 |
src={previewImage}
|
175 |
alt="Preview"
|
client/src/layout.tsx
CHANGED
@@ -4,8 +4,8 @@ export function Layout({ children }: { children: ReactNode }) {
|
|
4 |
return (
|
5 |
<div className="fixed min-h-screen w-full flex items-center justify-center bg-gradient-to-br from-gray-300 to-stone-300"
|
6 |
style={{ boxShadow: "inset 0 0 10vh 0 rgb(0 0 0 / 30%)" }}>
|
7 |
-
<div className="min-h-screen w-full
|
8 |
-
<div className="flex flex-col items-center justify-center p-
|
9 |
{children}
|
10 |
</div>
|
11 |
</div>
|
|
|
4 |
return (
|
5 |
<div className="fixed min-h-screen w-full flex items-center justify-center bg-gradient-to-br from-gray-300 to-stone-300"
|
6 |
style={{ boxShadow: "inset 0 0 10vh 0 rgb(0 0 0 / 30%)" }}>
|
7 |
+
<div className="min-h-screen w-full flex flex-col justify-center">
|
8 |
+
<div className="flex flex-col items-center justify-center p-2 sm:max-w-5xl sm:mx-auto">
|
9 |
{children}
|
10 |
</div>
|
11 |
</div>
|
public/index.js
CHANGED
@@ -33475,9 +33475,9 @@ function Layout({ children }) {
|
|
33475 |
className: "fixed min-h-screen w-full flex items-center justify-center bg-gradient-to-br from-gray-300 to-stone-300",
|
33476 |
style: { boxShadow: "inset 0 0 10vh 0 rgb(0 0 0 / 30%)" },
|
33477 |
children: jsx_dev_runtime3.jsxDEV("div", {
|
33478 |
-
className: "min-h-screen w-full
|
33479 |
children: jsx_dev_runtime3.jsxDEV("div", {
|
33480 |
-
className: "flex flex-col items-center justify-center p-
|
33481 |
children
|
33482 |
}, undefined, false, undefined, this)
|
33483 |
}, undefined, false, undefined, this)
|
@@ -33586,7 +33586,7 @@ function App() {
|
|
33586 |
]
|
33587 |
}, undefined, true, undefined, this),
|
33588 |
jsx_dev_runtime4.jsxDEV("div", {
|
33589 |
-
className: "mb-
|
33590 |
children: [
|
33591 |
jsx_dev_runtime4.jsxDEV("div", {
|
33592 |
className: "flex flex-row items-center justify-between w-full",
|
@@ -33607,10 +33607,10 @@ function App() {
|
|
33607 |
}, undefined, false, undefined, this),
|
33608 |
jsx_dev_runtime4.jsxDEV("label", {
|
33609 |
htmlFor: "imageInput",
|
33610 |
-
className: `cursor-pointer inline-flex items-center
|
33611 |
children: [
|
33612 |
jsx_dev_runtime4.jsxDEV(PiImageSquare, {
|
33613 |
-
className: "w-
|
33614 |
}, undefined, false, undefined, this),
|
33615 |
imageFile ? `Replace` : isMediaPipeReady ? "Choose a portrait photo" : "Initializing..."
|
33616 |
]
|
@@ -33619,10 +33619,10 @@ function App() {
|
|
33619 |
}, undefined, true, undefined, this),
|
33620 |
previewImage && jsx_dev_runtime4.jsxDEV("button", {
|
33621 |
onClick: handleDownload,
|
33622 |
-
className: "inline-flex items-center px-
|
33623 |
children: [
|
33624 |
jsx_dev_runtime4.jsxDEV(FiDownload, {
|
33625 |
-
className: "w-
|
33626 |
}, undefined, false, undefined, this),
|
33627 |
"Download"
|
33628 |
]
|
@@ -33632,7 +33632,7 @@ function App() {
|
|
33632 |
previewImage && jsx_dev_runtime4.jsxDEV("div", {
|
33633 |
className: "flex items-center space-x-2",
|
33634 |
children: jsx_dev_runtime4.jsxDEV("label", {
|
33635 |
-
className: "mt-
|
33636 |
children: [
|
33637 |
jsx_dev_runtime4.jsxDEV("input", {
|
33638 |
type: "checkbox",
|
@@ -33647,7 +33647,7 @@ function App() {
|
|
33647 |
]
|
33648 |
}, undefined, true, undefined, this),
|
33649 |
previewImage && jsx_dev_runtime4.jsxDEV("div", {
|
33650 |
-
className: "mt-
|
33651 |
children: [
|
33652 |
jsx_dev_runtime4.jsxDEV("img", {
|
33653 |
src: previewImage,
|
|
|
33475 |
className: "fixed min-h-screen w-full flex items-center justify-center bg-gradient-to-br from-gray-300 to-stone-300",
|
33476 |
style: { boxShadow: "inset 0 0 10vh 0 rgb(0 0 0 / 30%)" },
|
33477 |
children: jsx_dev_runtime3.jsxDEV("div", {
|
33478 |
+
className: "min-h-screen w-full flex flex-col justify-center",
|
33479 |
children: jsx_dev_runtime3.jsxDEV("div", {
|
33480 |
+
className: "flex flex-col items-center justify-center p-2 sm:max-w-5xl sm:mx-auto",
|
33481 |
children
|
33482 |
}, undefined, false, undefined, this)
|
33483 |
}, undefined, false, undefined, this)
|
|
|
33586 |
]
|
33587 |
}, undefined, true, undefined, this),
|
33588 |
jsx_dev_runtime4.jsxDEV("div", {
|
33589 |
+
className: "mb-4 relative",
|
33590 |
children: [
|
33591 |
jsx_dev_runtime4.jsxDEV("div", {
|
33592 |
className: "flex flex-row items-center justify-between w-full",
|
|
|
33607 |
}, undefined, false, undefined, this),
|
33608 |
jsx_dev_runtime4.jsxDEV("label", {
|
33609 |
htmlFor: "imageInput",
|
33610 |
+
className: `cursor-pointer inline-flex items-center border border-transparent font-medium rounded-md text-white ${imageFile ? "text-xs px-2 h-8" : "text-lg px-4 h-12"} ${isMediaPipeReady ? "bg-slate-600 hover:bg-slate-500" : "bg-slate-500 cursor-not-allowed"} focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-slate-500 shadow-xl`,
|
33611 |
children: [
|
33612 |
jsx_dev_runtime4.jsxDEV(PiImageSquare, {
|
33613 |
+
className: "w-4 h-4 mr-1.5"
|
33614 |
}, undefined, false, undefined, this),
|
33615 |
imageFile ? `Replace` : isMediaPipeReady ? "Choose a portrait photo" : "Initializing..."
|
33616 |
]
|
|
|
33619 |
}, undefined, true, undefined, this),
|
33620 |
previewImage && jsx_dev_runtime4.jsxDEV("button", {
|
33621 |
onClick: handleDownload,
|
33622 |
+
className: "inline-flex items-center px-2 h-8 border border-transparent text-xs font-medium rounded-md text-white bg-zinc-600 hover:bg-zinc-500 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-zinc-500 shadow-xl",
|
33623 |
children: [
|
33624 |
jsx_dev_runtime4.jsxDEV(FiDownload, {
|
33625 |
+
className: "w-4 h-4 mr-1.5"
|
33626 |
}, undefined, false, undefined, this),
|
33627 |
"Download"
|
33628 |
]
|
|
|
33632 |
previewImage && jsx_dev_runtime4.jsxDEV("div", {
|
33633 |
className: "flex items-center space-x-2",
|
33634 |
children: jsx_dev_runtime4.jsxDEV("label", {
|
33635 |
+
className: "mt-2 flex items-center text-sm mr-2",
|
33636 |
children: [
|
33637 |
jsx_dev_runtime4.jsxDEV("input", {
|
33638 |
type: "checkbox",
|
|
|
33647 |
]
|
33648 |
}, undefined, true, undefined, this),
|
33649 |
previewImage && jsx_dev_runtime4.jsxDEV("div", {
|
33650 |
+
className: "mt-2 relative shadow-2xl rounded-xl overflow-hidden",
|
33651 |
children: [
|
33652 |
jsx_dev_runtime4.jsxDEV("img", {
|
33653 |
src: previewImage,
|