first datatable
This commit is contained in:
2
components.d.ts
vendored
2
components.d.ts
vendored
@@ -8,9 +8,9 @@ export {}
|
|||||||
declare module 'vue' {
|
declare module 'vue' {
|
||||||
export interface GlobalComponents {
|
export interface GlobalComponents {
|
||||||
NButton: typeof import('naive-ui')['NButton']
|
NButton: typeof import('naive-ui')['NButton']
|
||||||
|
NDataTable: typeof import('naive-ui')['NDataTable']
|
||||||
NForm: typeof import('naive-ui')['NForm']
|
NForm: typeof import('naive-ui')['NForm']
|
||||||
NFormItem: typeof import('naive-ui')['NFormItem']
|
NFormItem: typeof import('naive-ui')['NFormItem']
|
||||||
NIcon: typeof import('naive-ui')['NIcon']
|
|
||||||
NInput: typeof import('naive-ui')['NInput']
|
NInput: typeof import('naive-ui')['NInput']
|
||||||
NMenu: typeof import('naive-ui')['NMenu']
|
NMenu: typeof import('naive-ui')['NMenu']
|
||||||
NMessageProvider: typeof import('naive-ui')['NMessageProvider']
|
NMessageProvider: typeof import('naive-ui')['NMessageProvider']
|
||||||
|
|||||||
@@ -1,13 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<LoginLayout>
|
<LoginLayout class="w-3/5">
|
||||||
<MainNav />
|
<MainNav />
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
|
|
||||||
</LoginLayout>
|
</LoginLayout>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup>
|
<script lang="ts" setup>
|
||||||
import LoginLayout from '@/layouts/LoginLayout'
|
import LoginLayout from '@/layouts/LoginLayout.vue'
|
||||||
import MainNav from '@/components/MainNav'
|
import MainNav from '@/components/MainNav.vue'
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
@@ -1,10 +1,13 @@
|
|||||||
<template>
|
<template>
|
||||||
<main class="bg-slate-100 flex justify-center h-screen">
|
<main class="bg-slate-100 flex justify-center h-screen">
|
||||||
<div class="m-auto bg-white p-4 border rounded space-y-4 drop-shadow">
|
<div class="m-auto bg-white p-4 border rounded space-y-4 drop-shadow" :class="class">
|
||||||
<slot></slot>
|
<slot></slot>
|
||||||
</div>
|
</div>
|
||||||
</main>
|
</main>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
|
||||||
|
defineProps(['class'])
|
||||||
|
|
||||||
</script>
|
</script>
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<n-menu
|
<div class="flex justify-center">
|
||||||
|
<n-menu
|
||||||
v-model:value="activeKey"
|
v-model:value="activeKey"
|
||||||
mode="horizontal"
|
mode="horizontal"
|
||||||
:options="menuOptions"
|
:options="menuOptions"
|
||||||
class="-mx-4"
|
class="-mx-4"
|
||||||
/>
|
/>
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script lang="ts" setup>
|
<script lang="ts" setup>
|
||||||
@@ -25,8 +27,6 @@
|
|||||||
const activeKey: Ref<string> = ref((usePage().props.request as any)?.url)
|
const activeKey: Ref<string> = ref((usePage().props.request as any)?.url)
|
||||||
const user: User = usePage().props.user as User
|
const user: User = usePage().props.user as User
|
||||||
|
|
||||||
console.log(usePage().props.request)
|
|
||||||
|
|
||||||
const menuOptions: MenuOption[] = []
|
const menuOptions: MenuOption[] = []
|
||||||
|
|
||||||
menuOptions.push({
|
menuOptions.push({
|
||||||
@@ -85,9 +85,6 @@
|
|||||||
icon: renderIcon(Logout)
|
icon: renderIcon(Logout)
|
||||||
}]
|
}]
|
||||||
})
|
})
|
||||||
menuOptions.push({
|
|
||||||
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -3,25 +3,42 @@
|
|||||||
<FlashMessages
|
<FlashMessages
|
||||||
:messages="props.flashMessages"
|
:messages="props.flashMessages"
|
||||||
/>
|
/>
|
||||||
</n-message-provider>
|
</n-message-provider>
|
||||||
<div>
|
<n-data-table
|
||||||
Bin in Users
|
:columns="columns"
|
||||||
</div>
|
:data="users"
|
||||||
<div>
|
/>
|
||||||
{{ users }}
|
<div>
|
||||||
</div>
|
{{ users }}
|
||||||
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script setup lang="ts">
|
<script setup lang="ts">
|
||||||
|
|
||||||
import BELayout from '@/layouts/BELayout.vue'
|
import BELayout from '@/layouts/BELayout.vue'
|
||||||
import FlashMessages from '@/components/FlashMessages.vue'
|
import FlashMessages from '@/components/FlashMessages.vue'
|
||||||
|
import type { User } from '../../types/User'
|
||||||
|
import type { DataTableColumns } from 'naive-ui'
|
||||||
|
|
||||||
defineOptions({ layout: BELayout })
|
defineOptions({ layout: BELayout })
|
||||||
|
|
||||||
const props = defineProps({
|
const props = defineProps<{
|
||||||
users: Object,
|
users?: User[],
|
||||||
flashMessages: Object
|
flashMessages?: Object
|
||||||
})
|
}>()
|
||||||
|
|
||||||
|
const columns: DataTableColumns<User> = [
|
||||||
|
{
|
||||||
|
title: "ID",
|
||||||
|
key: "id",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Benutzername",
|
||||||
|
key: "username",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
title: "Admin?",
|
||||||
|
key: "is_admin",
|
||||||
|
}
|
||||||
|
]
|
||||||
</script>
|
</script>
|
||||||
@@ -1,4 +1,4 @@
|
|||||||
const { join, resolve } = require('path')
|
const { join } = require('path')
|
||||||
const Encore = require('@symfony/webpack-encore')
|
const Encore = require('@symfony/webpack-encore')
|
||||||
const Components = require('unplugin-vue-components/webpack')
|
const Components = require('unplugin-vue-components/webpack')
|
||||||
const { NaiveUiResolver } = require('unplugin-vue-components/resolvers')
|
const { NaiveUiResolver } = require('unplugin-vue-components/resolvers')
|
||||||
|
|||||||
Reference in New Issue
Block a user