use crm- components everywhere
This commit is contained in:
@@ -6,7 +6,7 @@ import { ref } from 'vue';
|
|||||||
// Components
|
// Components
|
||||||
import HeadingSmall from '@/components/HeadingSmall.vue';
|
import HeadingSmall from '@/components/HeadingSmall.vue';
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import {
|
import {
|
||||||
Dialog,
|
Dialog,
|
||||||
DialogClose,
|
DialogClose,
|
||||||
@@ -17,7 +17,7 @@ import {
|
|||||||
DialogTitle,
|
DialogTitle,
|
||||||
DialogTrigger,
|
DialogTrigger,
|
||||||
} from '@/components/ui/dialog';
|
} from '@/components/ui/dialog';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
|
|
||||||
const passwordInput = ref<InstanceType<typeof Input> | null>(null);
|
const passwordInput = ref<InstanceType<typeof Input> | null>(null);
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { Button } from '@/components/ui/button'
|
import { Button } from '@/components/ui/crm-button'
|
||||||
import { X } from "lucide-vue-next"
|
import { X } from "lucide-vue-next"
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { useSidebar } from '@/components/ui/sidebar';
|
|||||||
import { usePage } from '@inertiajs/vue3';
|
import { usePage } from '@inertiajs/vue3';
|
||||||
import { ChevronsUpDown } from 'lucide-vue-next';
|
import { ChevronsUpDown } from 'lucide-vue-next';
|
||||||
import UserMenuContent from './UserMenuContent.vue';
|
import UserMenuContent from './UserMenuContent.vue';
|
||||||
import { Button } from '@/components/ui/button'
|
import { Button } from '@/components/ui/crm-button'
|
||||||
|
|
||||||
|
|
||||||
const page = usePage();
|
const page = usePage();
|
||||||
|
|||||||
@@ -1,5 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';
|
import { Card, CardContent, CardDescription, CardHeader, CardTitle } from '@/components/ui/card';
|
||||||
import { useTwoFactorAuth } from '@/composables/useTwoFactorAuth';
|
import { useTwoFactorAuth } from '@/composables/useTwoFactorAuth';
|
||||||
import { regenerateRecoveryCodes } from '@/routes/two-factor';
|
import { regenerateRecoveryCodes } from '@/routes/two-factor';
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from '@/components/ui/dialog';
|
import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from '@/components/ui/dialog';
|
||||||
import { PinInput, PinInputGroup, PinInputSlot } from '@/components/ui/pin-input';
|
import { PinInput, PinInputGroup, PinInputSlot } from '@/components/ui/pin-input';
|
||||||
import { useTwoFactorAuth } from '@/composables/useTwoFactorAuth';
|
import { useTwoFactorAuth } from '@/composables/useTwoFactorAuth';
|
||||||
|
|||||||
@@ -19,8 +19,8 @@ import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle, }
|
|||||||
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'
|
||||||
import { Table, TableBody, TableCell, TableHead, TableRow, } from '@/components/ui/table'
|
import { Table, TableBody, TableCell, TableHead, TableRow, } from '@/components/ui/table'
|
||||||
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '@/components/ui/select'
|
import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '@/components/ui/select'
|
||||||
import { Button } from '@/components/ui/button'
|
import { Button } from '@/components/ui/crm-button'
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'
|
import { DropdownMenu, DropdownMenuContent, DropdownMenuItem, DropdownMenuSeparator, DropdownMenuTrigger, } from '@/components/ui/dropdown-menu'
|
||||||
import { StatusBadge, statusBadgeLabels } from '@/components/ui/status-badge'
|
import { StatusBadge, statusBadgeLabels } from '@/components/ui/status-badge'
|
||||||
import LineItemTable from '@/components/documents/LineItemTable.vue'
|
import LineItemTable from '@/components/documents/LineItemTable.vue'
|
||||||
|
|||||||
@@ -2,7 +2,7 @@
|
|||||||
<!-- TODO: Enter in LineItem = neue Zeile -->
|
<!-- TODO: Enter in LineItem = neue Zeile -->
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
|
||||||
import { ref, watch, HTMLAttributes, onUpdated, onMounted } from 'vue'
|
import { ref, watch, HTMLAttributes, onUpdated } from 'vue'
|
||||||
import draggable from 'vuedraggable';
|
import draggable from 'vuedraggable';
|
||||||
import { cn, toCurrency } from '@/lib/utils';
|
import { cn, toCurrency } from '@/lib/utils';
|
||||||
import { LineItem } from '@/types';
|
import { LineItem } from '@/types';
|
||||||
@@ -10,12 +10,12 @@ import { newLineItem } from '@/types/index.d'
|
|||||||
import { Table, TableCell, TableFooter, TableHead, TableHeader, TableRow, } from '@/components/ui/table';
|
import { Table, TableCell, TableFooter, TableHead, TableHeader, TableRow, } from '@/components/ui/table';
|
||||||
import { Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"
|
import { Select, SelectContent, SelectGroup, SelectItem, SelectTrigger, SelectValue, } from "@/components/ui/select"
|
||||||
import { NumberField, NumberFieldContent, NumberFieldDecrement, NumberFieldIncrement, NumberFieldInput, } from '@/components/ui/number-field'
|
import { NumberField, NumberFieldContent, NumberFieldDecrement, NumberFieldIncrement, NumberFieldInput, } from '@/components/ui/number-field'
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Loader2, GripVertical, Trash2, Plus, TextSelect, BetweenHorizonalEnd } from 'lucide-vue-next';
|
import { Loader2, GripVertical, Trash2, Plus, TextSelect } from 'lucide-vue-next';
|
||||||
import Button from '../ui/button/Button.vue';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Empty, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, } from '@/components/ui/empty'
|
import { Empty, EmptyDescription, EmptyHeader, EmptyMedia, EmptyTitle, } from '@/components/ui/empty'
|
||||||
import NumberInput from '../ui/number-input/NumberInput.vue';
|
import NumberInput from '@/components/ui/number-input/NumberInput.vue';
|
||||||
import { GrowingTextarea } from '../ui/growing-textarea';
|
import { GrowingTextarea } from '@/components/ui/growing-textarea';
|
||||||
|
|
||||||
const props = defineProps<{
|
const props = defineProps<{
|
||||||
isLoading?: boolean,
|
isLoading?: boolean,
|
||||||
@@ -202,7 +202,7 @@ const recalculatePositions = () => {
|
|||||||
|
|
||||||
<!-- Total -->
|
<!-- Total -->
|
||||||
<TableCell class="w-1/8 text-right tabular-nums font-bold">{{ toCurrency(element.price * element.quantity)
|
<TableCell class="w-1/8 text-right tabular-nums font-bold">{{ toCurrency(element.price * element.quantity)
|
||||||
}}
|
}}
|
||||||
</TableCell>
|
</TableCell>
|
||||||
|
|
||||||
<!-- Buttons -->
|
<!-- Buttons -->
|
||||||
|
|||||||
@@ -0,0 +1,32 @@
|
|||||||
|
<script setup lang="ts">
|
||||||
|
import type { HTMLAttributes } from "vue"
|
||||||
|
import { ref } from "vue"
|
||||||
|
import { useVModel } from "@vueuse/core"
|
||||||
|
import { cn } from "@/lib/utils"
|
||||||
|
|
||||||
|
const props = defineProps<{
|
||||||
|
class?: HTMLAttributes["class"]
|
||||||
|
defaultValue?: string | number
|
||||||
|
modelValue?: string | number
|
||||||
|
}>()
|
||||||
|
|
||||||
|
const emits = defineEmits<{
|
||||||
|
(e: "update:modelValue", payload: string | number): void
|
||||||
|
}>()
|
||||||
|
|
||||||
|
const modelValue = useVModel(props, "modelValue", emits, {
|
||||||
|
passive: true,
|
||||||
|
defaultValue: props.defaultValue,
|
||||||
|
})
|
||||||
|
|
||||||
|
const textareaRef = ref<HTMLTextAreaElement | null>(null)
|
||||||
|
defineExpose({
|
||||||
|
textareaRef
|
||||||
|
})
|
||||||
|
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<template>
|
||||||
|
<textarea ref="textareaRef" v-model="modelValue" data-slot="textarea"
|
||||||
|
:class="cn('border-input placeholder:text-muted-foreground focus-visible:border-ring focus-visible:ring-ring/50 aria-invalid:ring-destructive/20 dark:aria-invalid:ring-destructive/40 aria-invalid:border-destructive dark:bg-input/30 flex field-sizing-content min-h-16 w-full rounded-md border bg-transparent px-3 py-2 text-base shadow-xs transition-[color,box-shadow] outline-none focus-visible:ring-[3px] disabled:cursor-not-allowed disabled:opacity-50 md:text-sm', props.class)" />
|
||||||
|
</template>
|
||||||
@@ -0,0 +1 @@
|
|||||||
|
export { default as Textarea } from "./Textarea.vue"
|
||||||
@@ -1,9 +1,9 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import { ref, watch } from "vue"
|
import { ref, watch } from "vue"
|
||||||
import { type DialogRootEmits, type DialogRootProps, useForwardPropsEmits } from 'reka-ui'
|
import { type DialogRootEmits, type DialogRootProps, useForwardPropsEmits } from 'reka-ui'
|
||||||
import { Button } from "@/components/ui/button"
|
import { Button } from "@/components/ui/crm-button"
|
||||||
import { Dialog, DialogContent, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from "@/components/ui/dialog"
|
import { Dialog, DialogContent, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogTitle, } from "@/components/ui/dialog"
|
||||||
import { Input } from "@/components/ui/input"
|
import { Input } from "@/components/ui/crm-input"
|
||||||
import { Label } from "@/components/ui/label"
|
import { Label } from "@/components/ui/label"
|
||||||
|
|
||||||
const props = defineProps<DialogRootProps & {
|
const props = defineProps<DialogRootProps & {
|
||||||
|
|||||||
@@ -5,7 +5,7 @@ import { onMounted } from 'vue';
|
|||||||
import 'vue-sonner/style.css'
|
import 'vue-sonner/style.css'
|
||||||
import { Toaster } from 'vue-sonner'
|
import { Toaster } from 'vue-sonner'
|
||||||
import { Info, CircleAlert, CircleCheck, LoaderCircle, Ban } from "lucide-vue-next"
|
import { Info, CircleAlert, CircleCheck, LoaderCircle, Ban } from "lucide-vue-next"
|
||||||
import { Button } from '@/components/ui/button'
|
import { Button } from '@/components/ui/crm-button'
|
||||||
import { SidebarProvider } from '@/components/ui/sidebar';
|
import { SidebarProvider } from '@/components/ui/sidebar';
|
||||||
import { usePage } from '@inertiajs/vue3';
|
import { usePage } from '@inertiajs/vue3';
|
||||||
import { AlertDialog, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, } from '@/components/ui/alert-dialog'
|
import { AlertDialog, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, } from '@/components/ui/alert-dialog'
|
||||||
@@ -78,7 +78,7 @@ onMounted(() => {
|
|||||||
<AlertDialog v-model:open="alert.open">
|
<AlertDialog v-model:open="alert.open">
|
||||||
<AlertDialogContent>
|
<AlertDialogContent>
|
||||||
<AlertDialogHeader>
|
<AlertDialogHeader>
|
||||||
<AlertDialogTitle>{{ alert.title }}</AlertDialogTitle>
|
<AlertDialogTitle class="text-md">{{ alert.title }}</AlertDialogTitle>
|
||||||
<AlertDialogDescription v-if="alert.message">{{ alert.message }}</AlertDialogDescription>
|
<AlertDialogDescription v-if="alert.message">{{ alert.message }}</AlertDialogDescription>
|
||||||
</AlertDialogHeader>
|
</AlertDialogHeader>
|
||||||
<AlertDialogFooter>
|
<AlertDialogFooter>
|
||||||
|
|||||||
@@ -1,6 +1,6 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import Heading from '@/components/Heading.vue';
|
import Heading from '@/components/Heading.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Separator } from '@/components/ui/separator';
|
import { Separator } from '@/components/ui/separator';
|
||||||
import { toUrl, urlIsActive } from '@/lib/utils';
|
import { toUrl, urlIsActive } from '@/lib/utils';
|
||||||
import { edit as editAppearance } from '@/routes/appearance';
|
import { edit as editAppearance } from '@/routes/appearance';
|
||||||
|
|||||||
@@ -1,6 +1,5 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import AppLayout from '@/layouts/AppLayout.vue';
|
import AppLayout from '@/layouts/AppLayout.vue';
|
||||||
import { crm } from '@/routes';
|
|
||||||
import { Head } from '@inertiajs/vue3';
|
import { Head } from '@inertiajs/vue3';
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
@@ -8,6 +7,6 @@ import { Head } from '@inertiajs/vue3';
|
|||||||
|
|
||||||
<Head title="Dashboard" />
|
<Head title="Dashboard" />
|
||||||
|
|
||||||
<AppLayout>
|
<AppLayout title="Dashboard">
|
||||||
</AppLayout>
|
</AppLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import { Address, Customer } from '@/types'
|
|||||||
import { newCustomer } from '@/types/index.d'
|
import { newCustomer } from '@/types/index.d'
|
||||||
import { bgColorForString } from '@/lib/utils'
|
import { bgColorForString } from '@/lib/utils'
|
||||||
import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'
|
import { Avatar, AvatarFallback, AvatarImage } from '@/components/ui/avatar'
|
||||||
import { Input } from '@/components/ui/input'
|
import { Input } from '@/components/ui/crm-input'
|
||||||
import { Button } from '@/components/ui/crm-button'
|
import { Button } from '@/components/ui/crm-button'
|
||||||
import { ButtonGroup } from '@/components/ui/button-group'
|
import { ButtonGroup } from '@/components/ui/button-group'
|
||||||
import { Delete, Globe, House, LayoutGrid, Mail, Phone, Plus, Rows3, Search, Smartphone } from "lucide-vue-next"
|
import { Delete, Globe, House, LayoutGrid, Mail, Phone, Plus, Rows3, Search, Smartphone } from "lucide-vue-next"
|
||||||
|
|||||||
@@ -1,20 +1,9 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import AppLayout from '@/layouts/AppLayout.vue';
|
import AppLayout from '@/layouts/AppLayout.vue';
|
||||||
import { dashboard } from '@/routes';
|
|
||||||
import { Head } from '@inertiajs/vue3';
|
|
||||||
import PlaceholderPattern from '../components/PlaceholderPattern.vue';
|
|
||||||
import { usePage } from '@inertiajs/vue3';
|
import { usePage } from '@inertiajs/vue3';
|
||||||
import { Trophy, ShieldCheck, Star, ArrowRight, UserCheck, UserCheck2 } from 'lucide-vue-next';
|
import { Trophy, ArrowRight, UserCheck2 } from 'lucide-vue-next';
|
||||||
import { Alert, AlertDescription, AlertTitle } from "@/components/ui/alert"
|
import { Alert, AlertDescription, AlertTitle } from "@/components/ui/alert"
|
||||||
import {
|
import { Table, TableCell, TableHead, TableRow, } from '@/components/ui/table';
|
||||||
Table,
|
|
||||||
TableBody,
|
|
||||||
TableCaption,
|
|
||||||
TableCell,
|
|
||||||
TableHead,
|
|
||||||
TableHeader,
|
|
||||||
TableRow,
|
|
||||||
} from '@/components/ui/table';
|
|
||||||
|
|
||||||
const page = usePage();
|
const page = usePage();
|
||||||
const token = page.props.flash?.token;
|
const token = page.props.flash?.token;
|
||||||
@@ -65,7 +54,8 @@ if (token) {
|
|||||||
</TableRow>
|
</TableRow>
|
||||||
<TableRow>
|
<TableRow>
|
||||||
<TableHead class="text-right px-4">Gestellt, nicht bezahlt</TableHead>
|
<TableHead class="text-right px-4">Gestellt, nicht bezahlt</TableHead>
|
||||||
<TableCell class="text-right px-4 text-destructive font-bold tabular-nums">8.637,00 €</TableCell>
|
<TableCell class="text-right px-4 text-destructive font-bold tabular-nums">8.637,00 €
|
||||||
|
</TableCell>
|
||||||
</TableRow>
|
</TableRow>
|
||||||
<TableRow class="border-b-slate-600">
|
<TableRow class="border-b-slate-600">
|
||||||
<TableHead class="text-right px-4">Noch nicht gestellt</TableHead>
|
<TableHead class="text-right px-4">Noch nicht gestellt</TableHead>
|
||||||
@@ -77,8 +67,7 @@ if (token) {
|
|||||||
</TableRow>
|
</TableRow>
|
||||||
</table>
|
</table>
|
||||||
</div>
|
</div>
|
||||||
<div
|
<div class="relative flex-1 overflow-y-auto">
|
||||||
class="relative flex-1 overflow-y-auto">
|
|
||||||
Aktuelle Angebote
|
Aktuelle Angebote
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|||||||
@@ -5,12 +5,12 @@ import { type Invoice } from '@/types'
|
|||||||
import { newInvoice } from '@/types/index.d'
|
import { newInvoice } from '@/types/index.d'
|
||||||
import axios from 'axios'
|
import axios from 'axios'
|
||||||
import AppLayout from '@/layouts/AppLayout.vue'
|
import AppLayout from '@/layouts/AppLayout.vue'
|
||||||
|
import { Button } from '@/components/ui/crm-button'
|
||||||
import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue, } from '@/components/ui/select'
|
import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectTrigger, SelectValue, } from '@/components/ui/select'
|
||||||
import { Button } from '@/components/ui/button'
|
|
||||||
import DocumentTable from '@/components/documents/DocumentTable.vue'
|
import DocumentTable from '@/components/documents/DocumentTable.vue'
|
||||||
import { ChevronLeft, ChevronRight, Plus, Search, Delete } from "lucide-vue-next"
|
import { ChevronLeft, ChevronRight, Plus, Search, Delete } from "lucide-vue-next"
|
||||||
import Fuse from 'fuse.js';
|
import Fuse from 'fuse.js';
|
||||||
import { Input } from '@/components/ui/input'
|
import { Input } from '@/components/ui/crm-input'
|
||||||
import SelectSeparator from '@/components/ui/select/SelectSeparator.vue'
|
import SelectSeparator from '@/components/ui/select/SelectSeparator.vue'
|
||||||
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'
|
import { Tooltip, TooltipContent, TooltipProvider, TooltipTrigger } from '@/components/ui/tooltip'
|
||||||
import { Kbd, KbdGroup } from '@/components/ui/kbd'
|
import { Kbd, KbdGroup } from '@/components/ui/kbd'
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
import AuthLayout from '@/layouts/AuthLayout.vue';
|
import AuthLayout from '@/layouts/AuthLayout.vue';
|
||||||
import { store } from '@/routes/password/confirm';
|
import { store } from '@/routes/password/confirm';
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
import PasswordResetLinkController from '@/actions/App/Http/Controllers/Auth/PasswordResetLinkController';
|
import PasswordResetLinkController from '@/actions/App/Http/Controllers/Auth/PasswordResetLinkController';
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import TextLink from '@/components/TextLink.vue';
|
import TextLink from '@/components/TextLink.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
import AuthLayout from '@/layouts/AuthLayout.vue';
|
import AuthLayout from '@/layouts/AuthLayout.vue';
|
||||||
import { login } from '@/routes';
|
import { login } from '@/routes';
|
||||||
|
|||||||
@@ -2,9 +2,9 @@
|
|||||||
import AuthenticatedSessionController from '@/actions/App/Http/Controllers/Auth/AuthenticatedSessionController';
|
import AuthenticatedSessionController from '@/actions/App/Http/Controllers/Auth/AuthenticatedSessionController';
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import TextLink from '@/components/TextLink.vue';
|
import TextLink from '@/components/TextLink.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Checkbox } from '@/components/ui/checkbox';
|
import { Checkbox } from '@/components/ui/checkbox';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
import AuthBase from '@/layouts/AuthLayout.vue';
|
import AuthBase from '@/layouts/AuthLayout.vue';
|
||||||
import { register } from '@/routes';
|
import { register } from '@/routes';
|
||||||
|
|||||||
@@ -2,8 +2,8 @@
|
|||||||
import RegisteredUserController from '@/actions/App/Http/Controllers/Auth/RegisteredUserController';
|
import RegisteredUserController from '@/actions/App/Http/Controllers/Auth/RegisteredUserController';
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import TextLink from '@/components/TextLink.vue';
|
import TextLink from '@/components/TextLink.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
import AuthBase from '@/layouts/AuthLayout.vue';
|
import AuthBase from '@/layouts/AuthLayout.vue';
|
||||||
import { login } from '@/routes';
|
import { login } from '@/routes';
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import NewPasswordController from '@/actions/App/Http/Controllers/Auth/NewPasswordController';
|
import NewPasswordController from '@/actions/App/Http/Controllers/Auth/NewPasswordController';
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
import AuthLayout from '@/layouts/AuthLayout.vue';
|
import AuthLayout from '@/layouts/AuthLayout.vue';
|
||||||
import { Form, Head } from '@inertiajs/vue3';
|
import { Form, Head } from '@inertiajs/vue3';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { PinInput, PinInputGroup, PinInputSlot } from '@/components/ui/pin-input';
|
import { PinInput, PinInputGroup, PinInputSlot } from '@/components/ui/pin-input';
|
||||||
import AuthLayout from '@/layouts/AuthLayout.vue';
|
import AuthLayout from '@/layouts/AuthLayout.vue';
|
||||||
import { store } from '@/routes/two-factor/login';
|
import { store } from '@/routes/two-factor/login';
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
import EmailVerificationNotificationController from '@/actions/App/Http/Controllers/Auth/EmailVerificationNotificationController';
|
import EmailVerificationNotificationController from '@/actions/App/Http/Controllers/Auth/EmailVerificationNotificationController';
|
||||||
import TextLink from '@/components/TextLink.vue';
|
import TextLink from '@/components/TextLink.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import AuthLayout from '@/layouts/AuthLayout.vue';
|
import AuthLayout from '@/layouts/AuthLayout.vue';
|
||||||
import { logout } from '@/routes';
|
import { logout } from '@/routes';
|
||||||
import { Form, Head } from '@inertiajs/vue3';
|
import { Form, Head } from '@inertiajs/vue3';
|
||||||
|
|||||||
@@ -7,7 +7,7 @@ import SettingsLayout from '@/layouts/settings/Layout.vue';
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<template>
|
<template>
|
||||||
<AppLayout>
|
<AppLayout title="Erscheinungsbild">
|
||||||
<Head title="Erscheinungsbild" />
|
<Head title="Erscheinungsbild" />
|
||||||
|
|
||||||
<SettingsLayout>
|
<SettingsLayout>
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ import SettingsLayout from '@/layouts/settings/Layout.vue';
|
|||||||
import { Form, Head } from '@inertiajs/vue3';
|
import { Form, Head } from '@inertiajs/vue3';
|
||||||
import { ref } from 'vue';
|
import { ref } from 'vue';
|
||||||
import HeadingSmall from '@/components/HeadingSmall.vue';
|
import HeadingSmall from '@/components/HeadingSmall.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
|
|
||||||
const passwordInput = ref<HTMLInputElement | null>(null);
|
const passwordInput = ref<HTMLInputElement | null>(null);
|
||||||
|
|||||||
@@ -6,8 +6,8 @@ import { Form, Link, usePage } from '@inertiajs/vue3';
|
|||||||
import DeleteUser from '@/components/DeleteUser.vue';
|
import DeleteUser from '@/components/DeleteUser.vue';
|
||||||
import HeadingSmall from '@/components/HeadingSmall.vue';
|
import HeadingSmall from '@/components/HeadingSmall.vue';
|
||||||
import InputError from '@/components/InputError.vue';
|
import InputError from '@/components/InputError.vue';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { Input } from '@/components/ui/input';
|
import { Input } from '@/components/ui/crm-input';
|
||||||
import { Label } from '@/components/ui/label';
|
import { Label } from '@/components/ui/label';
|
||||||
import AppLayout from '@/layouts/AppLayout.vue';
|
import AppLayout from '@/layouts/AppLayout.vue';
|
||||||
import SettingsLayout from '@/layouts/settings/Layout.vue';
|
import SettingsLayout from '@/layouts/settings/Layout.vue';
|
||||||
|
|||||||
@@ -3,7 +3,7 @@ import HeadingSmall from '@/components/HeadingSmall.vue';
|
|||||||
import TwoFactorRecoveryCodes from '@/components/TwoFactorRecoveryCodes.vue';
|
import TwoFactorRecoveryCodes from '@/components/TwoFactorRecoveryCodes.vue';
|
||||||
import TwoFactorSetupModal from '@/components/TwoFactorSetupModal.vue';
|
import TwoFactorSetupModal from '@/components/TwoFactorSetupModal.vue';
|
||||||
import { Badge } from '@/components/ui/badge';
|
import { Badge } from '@/components/ui/badge';
|
||||||
import { Button } from '@/components/ui/button';
|
import { Button } from '@/components/ui/crm-button';
|
||||||
import { useTwoFactorAuth } from '@/composables/useTwoFactorAuth';
|
import { useTwoFactorAuth } from '@/composables/useTwoFactorAuth';
|
||||||
import AppLayout from '@/layouts/AppLayout.vue';
|
import AppLayout from '@/layouts/AppLayout.vue';
|
||||||
import SettingsLayout from '@/layouts/settings/Layout.vue';
|
import SettingsLayout from '@/layouts/settings/Layout.vue';
|
||||||
|
|||||||
Reference in New Issue
Block a user