Delete unused components (Auth & TextArea)
parent
d558cb7e99
commit
43a5704043
@ -1,78 +0,0 @@
|
|||||||
<template>
|
|
||||||
<div
|
|
||||||
class="bg-secondary mx-auto mt-12 flex h-96 w-96 flex-col items-center justify-center gap-8 rounded-xl p-8">
|
|
||||||
<div class="flex w-full flex-col gap-2">
|
|
||||||
<label> Email </label>
|
|
||||||
<input
|
|
||||||
type="text"
|
|
||||||
v-model="credential.email"
|
|
||||||
placeholder="username" />
|
|
||||||
</div>
|
|
||||||
<div class="flex w-full flex-col gap-2">
|
|
||||||
<label> Password </label>
|
|
||||||
<input
|
|
||||||
type="password"
|
|
||||||
v-model="credential.password"
|
|
||||||
placeholder="password" />
|
|
||||||
</div>
|
|
||||||
<p
|
|
||||||
v-if="mode === 'login'"
|
|
||||||
class="cursor-pointer text-blue-500 underline">
|
|
||||||
Don't have an account? Sign up
|
|
||||||
</p>
|
|
||||||
<p
|
|
||||||
v-if="mode === 'signup'"
|
|
||||||
class="cursor-pointer text-blue-500 underline">
|
|
||||||
Already have an account? Login
|
|
||||||
</p>
|
|
||||||
<button
|
|
||||||
v-on="
|
|
||||||
mode === 'login'
|
|
||||||
? { click: () => signIn($event) }
|
|
||||||
: { click: () => signUp($event) }
|
|
||||||
">
|
|
||||||
{{ mode === 'login' ? 'Login' : 'Sign Up' }}
|
|
||||||
</button>
|
|
||||||
</div>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script setup lang="ts">
|
|
||||||
interface Props {
|
|
||||||
mode: 'login' | 'signup'
|
|
||||||
}
|
|
||||||
|
|
||||||
interface Credential {
|
|
||||||
email: string
|
|
||||||
password: string
|
|
||||||
name?: string
|
|
||||||
}
|
|
||||||
|
|
||||||
const credential: Credential = reactive({
|
|
||||||
email: '',
|
|
||||||
password: '',
|
|
||||||
})
|
|
||||||
|
|
||||||
const props = withDefaults(defineProps<Props>(), {
|
|
||||||
mode: 'login',
|
|
||||||
})
|
|
||||||
|
|
||||||
const supabase = useSupabaseAuthClient()
|
|
||||||
|
|
||||||
const signUp = async (event: Event) => {
|
|
||||||
const { data: user, error } = await supabase.auth.signUp({
|
|
||||||
email: credential.email,
|
|
||||||
password: credential.password,
|
|
||||||
})
|
|
||||||
console.log('user', user)
|
|
||||||
console.log('error', error)
|
|
||||||
}
|
|
||||||
|
|
||||||
const signIn = async (event: Event) => {
|
|
||||||
const { data: user, error } = await supabase.auth.signInWithPassword({
|
|
||||||
email: credential.email,
|
|
||||||
password: credential.password,
|
|
||||||
})
|
|
||||||
console.log('user', user)
|
|
||||||
console.log('error', error)
|
|
||||||
}
|
|
||||||
</script>
|
|
||||||
@ -1,31 +0,0 @@
|
|||||||
<template>
|
|
||||||
<textarea
|
|
||||||
class="bg-secondary w-full max-w-2xl resize-none border-none outline-none placeholder:text-zinc-700 focus:outline-none"
|
|
||||||
v-model="data"
|
|
||||||
:rows="props.row"
|
|
||||||
:placeholder="props.placeholder"
|
|
||||||
@input="updateData()">
|
|
||||||
</textarea>
|
|
||||||
</template>
|
|
||||||
|
|
||||||
<script setup lang="ts">
|
|
||||||
interface Props {
|
|
||||||
modelValue: string
|
|
||||||
placeholder?: string
|
|
||||||
row?: number
|
|
||||||
}
|
|
||||||
|
|
||||||
const props = defineProps<Props>()
|
|
||||||
const emit = defineEmits(['update:modelValue'])
|
|
||||||
|
|
||||||
const data = ref<string>(props.modelValue)
|
|
||||||
|
|
||||||
const updateData = () => {
|
|
||||||
emit('update:modelValue', data.value)
|
|
||||||
}
|
|
||||||
|
|
||||||
watch(
|
|
||||||
() => props.modelValue,
|
|
||||||
() => (data.value = props.modelValue)
|
|
||||||
)
|
|
||||||
</script>
|
|
||||||
Loading…
Reference in New Issue