Skip to content
This repository was archived by the owner on Sep 24, 2024. It is now read-only.

Commit 94e8495

Browse files
committed
refactor(app): refactor app
This pull request is intended to refactor the application.
1 parent d0ac908 commit 94e8495

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+531
-291
lines changed

Diff for: package.json

+1
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,7 @@
3030
"simple-git-hooks": "^2.9.0",
3131
"taze": "^0.11.2",
3232
"typescript": "^5.1.6",
33+
"unplugin-auto-import": "^0.16.6",
3334
"unplugin-vue-components": "^0.25.1",
3435
"vite": "^4.4.9",
3536
"vite-plugin-dts": "^3.5.1",

Diff for: packages/nuxt-ui-vue/auto-imports.d.ts

+317
Large diffs are not rendered by default.

Diff for: packages/nuxt-ui-vue/components.d.ts

+50
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
/* eslint-disable */
2+
/* prettier-ignore */
3+
// @ts-nocheck
4+
// Generated by unplugin-vue-components
5+
// Read more: https://github.com/vuejs/core/pull/3399
6+
export {}
7+
8+
declare module 'vue' {
9+
export interface GlobalComponents {
10+
CommandPalette: typeof import('./src/components/navigation/Command-Palette/CommandPalette.vue')['default']
11+
CommandPaletteGroup: typeof import('./src/components/navigation/Command-Palette/CommandPaletteGroup.vue')['default']
12+
RouteLocationRaw: typeof import('vue-router')['RouteLocationRaw']
13+
RouterLink: typeof import('vue-router')['RouterLink']
14+
RouterView: typeof import('vue-router')['RouterView']
15+
UAccordion: typeof import('./src/components/elements/Accordion/UAccordion.vue')['default']
16+
UAlert: typeof import('./src/components/elements/Alert/UAlert.vue')['default']
17+
UAvatar: typeof import('./src/components/elements/Avatar/UAvatar.vue')['default']
18+
UAvatarGroup: typeof import('./src/components/elements/Avatar/UAvatarGroup.vue')['default']
19+
UBadge: typeof import('./src/components/elements/Badge/UBadge.vue')['default']
20+
UButton: typeof import('./src/components/elements/Button/UButton.vue')['default']
21+
UButtonGroup: typeof import('./src/components/elements/Button/UButtonGroup.vue')['default']
22+
UCard: typeof import('./src/components/layouts/Card/UCard.vue')['default']
23+
UCheckbox: typeof import('./src/components/forms/Checkbox/UCheckbox.vue')['default']
24+
UContainer: typeof import('./src/components/layouts/Container/UContainer.vue')['default']
25+
UContextMenu: typeof import('./src/components/overlays/ContextMenu/UContextMenu.vue')['default']
26+
UDropdown: typeof import('./src/components/elements/Dropdown/UDropdown.vue')['default']
27+
UFormGroup: typeof import('./src/components/forms/FormGroup/UFormGroup.vue')['default']
28+
UIcon: typeof import('./src/components/elements/Icon/UIcon.vue')['default']
29+
UInput: typeof import('./src/components/forms/Input/UInput.vue')['default']
30+
UKbd: typeof import('./src/components/elements/Kbd/UKbd.vue')['default']
31+
ULink: typeof import('./src/components/elements/Link/ULink.vue')['default']
32+
UModal: typeof import('./src/components/overlays/Modal/UModal.vue')['default']
33+
UNotification: typeof import('./src/components/overlays/Notification/UNotification.vue')['default']
34+
UNotifications: typeof import('./src/components/overlays/Notification/UNotifications.vue')['default']
35+
UPagination: typeof import('./src/components/navigation/Pagination/UPagination.vue')['default']
36+
UPopover: typeof import('./src/components/overlays/Popover/UPopover.vue')['default']
37+
URadio: typeof import('./src/components/forms/Radio/URadio.vue')['default']
38+
URange: typeof import('./src/components/forms/Range/URange.vue')['default']
39+
USelect: typeof import('./src/components/forms/Select/USelect.vue')['default']
40+
USelectMenu: typeof import('./src/components/forms/SelectMenu/USelectMenu.vue')['default']
41+
USkeleton: typeof import('./src/components/layouts/Skeleton/USkeleton.vue')['default']
42+
USlideover: typeof import('./src/components/overlays/Slideover/USlideover.vue')['default']
43+
UTable: typeof import('./src/components/data/Table/UTable.vue')['default']
44+
UTabs: typeof import('./src/components/navigation/Tabs/UTabs.vue')['default']
45+
UTextarea: typeof import('./src/components/forms/Textarea/UTextarea.vue')['default']
46+
UToggle: typeof import('./src/components/forms/Toggle/UToggle.vue')['default']
47+
UTooltip: typeof import('./src/components/overlays/Tooltip/UTooltip.vue')['default']
48+
UVerticalNavigation: typeof import('./src/components/navigation/VerticalNavigation/UVerticalNavigation.vue')['default']
49+
}
50+
}

Diff for: packages/nuxt-ui-vue/src/App.vue

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
<script setup lang='ts'>
2+
3+
</script>
4+
15
<template>
26
<div />
37
</template>

Diff for: packages/nuxt-ui-vue/src/components/data/Table/UTable.vue

-7
Original file line numberDiff line numberDiff line change
@@ -1,18 +1,11 @@
11
<script lang='ts'>
2-
import { computed, defineComponent, ref, toRaw } from 'vue'
3-
import type { PropType } from 'vue'
42
import { upperFirst } from 'scule'
5-
import { defu } from 'defu'
63
import { twMerge } from 'tailwind-merge'
7-
import { get, omit } from '../../../utils/lodash'
84
import UButton from '../../elements/Button/UButton.vue'
95
import UIcon from '../../elements/Icon/UIcon.vue'
106
import UCheckbox from '../../forms/Checkbox/UCheckbox.vue'
117
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
12-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
138
import type { UTable } from '@/Types/componentsTypes/components'
14-
import { Components } from '@/Types/enums/Components'
15-
import { useVariants } from '@/composables/useVariants'
169
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
1710
import type { Button } from '@/Types/components/button'
1811

Diff for: packages/nuxt-ui-vue/src/components/elements/Accordion/UAccordion.vue

+2-10
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,11 @@
11
<script setup lang='ts'>
2-
import { computed, ref } from 'vue'
3-
import type { PropType } from 'vue'
42
import { Disclosure as HDisclosure, DisclosureButton as HDisclosureButton, DisclosurePanel as HDisclosurePanel } from '@headlessui/vue'
5-
import classNames from 'classnames'
6-
import { omit } from '../../../utils/lodash'
7-
import UButton from '../Button/UButton.vue'
8-
import UIcon from '../Icon/UIcon.vue'
3+
import { omit } from '@/utils/lodash'
94
import type { AccordionItem } from '@/Types/components/accordionItem'
105
import type { UAccordion } from '@/Types/componentsTypes/components'
11-
import { Components } from '@/Types/enums/Components'
12-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
13-
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
146
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
7+
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
158
import stateEmitter from '@/utils/stateEmitter'
16-
import { useVariants } from '@/composables/useVariants'
179
1810
defineOptions({
1911
name: Components.UAccordion,

Diff for: packages/nuxt-ui-vue/src/components/elements/Alert/UAlert.vue

+3-13
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,9 @@
11
<script setup lang='ts'>
2-
import { computed, useAttrs } from 'vue'
3-
import type { PropType } from 'vue'
4-
import classNames from 'classnames'
5-
import UIcon from '../Icon/UIcon.vue'
6-
import { omit } from '../../../utils/lodash'
7-
import UAvatar from '../Avatar/UAvatar.vue'
8-
import UButton from '../Button/UButton.vue'
92
import type { UAlert } from '@/Types/componentsTypes/components'
10-
import { Components } from '@/Types/enums/Components'
113
import type { Avatar } from '@/Types/components/avatar'
124
import type { Button } from '@/Types/components/button'
135
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
14-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
156
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
16-
import { useVariants } from '@/composables/useVariants'
177
188
defineOptions({
199
name: Components.UAlert,
@@ -114,7 +104,7 @@ function handleClose() {
114104

115105
<UAvatar v-if="avatar" v-bind="{ size: variant.avatarSize, ...avatar }" :class="variant.avatarBase" />
116106

117-
<div class="w-0 flex-1">
107+
<div class="flex-1 w-0">
118108
<p :class="nuxtLabsTheme.UAlert.base.title">
119109
<slot name="title" :title="title">
120110
{{ title }}
@@ -126,14 +116,14 @@ function handleClose() {
126116
</slot>
127117
</p>
128118

129-
<div v-if="(description || $slots.description) && actions.length" class="mt-3 flex items-center gap-2">
119+
<div v-if="(description || $slots.description) && actions.length" class="flex items-center gap-2 mt-3">
130120
<UButton
131121
v-for="(action, index) of actions" :key="index"
132122
v-bind="{ ...nuxtLabsTheme.UAlert.base.default.actionButton, ...action }" @click.stop="action.click"
133123
/>
134124
</div>
135125
</div>
136-
<div class="flex-shrink-0 flex items-center gap-3">
126+
<div class="flex items-center flex-shrink-0 gap-3">
137127
<div v-if="!description && !$slots.description && actions.length" class="flex items-center gap-2">
138128
<UButton
139129
v-for="(action, index) of actions" :key="index"

Diff for: packages/nuxt-ui-vue/src/components/elements/Avatar/UAvatar.vue

+2-12
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,6 @@
11
<script setup lang='ts'>
2-
import type { PropType } from 'vue'
3-
import { computed, ref, useAttrs, watch } from 'vue'
4-
import classNames from 'classnames'
5-
import { Icon } from '@iconify/vue'
6-
import { omit } from '../../../utils/lodash'
7-
import type { VariantJSWithClassesListProps } from '../../../utils/getVariantProps'
8-
import { getVariantPropsWithClassesList } from '../../../utils/getVariantProps'
9-
import type { UAvatar } from '../../../Types/componentsTypes/components'
10-
import { Components } from '../../../Types/enums/Components'
11-
import { useVariants } from '../../../composables/useVariants'
12-
import nuxtLabsTheme from '../../../theme/nuxtLabsTheme'
13-
import { Positions } from '@/Types/enums/Positions'
2+
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
3+
import type { UAvatar } from '@/Types/componentsTypes/components'
144
155
export type AvatarSize = '3xs' | '2xs' | 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl'
166
export type AvatarChipPosition = 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left'

Diff for: packages/nuxt-ui-vue/src/components/elements/Avatar/UAvatarGroup.vue

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,8 @@
11
<script lang="ts">
2-
import { cloneVNode, computed, defineComponent, h } from 'vue'
3-
import type { PropType, VNode } from 'vue'
4-
import classNames from 'classnames'
5-
import nuxtLabsTheme from '../../../theme/nuxtLabsTheme'
2+
import { cloneVNode } from 'vue'
63
import { getSlotsFromChildren } from './Types'
74
import UAvatar from './UAvatar.vue'
8-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
95
import type { UAvatarGroup } from '@/Types/componentsTypes/components'
10-
import { Components } from '@/Types/enums/Components'
116
127
export type AvatarSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl' | '2xl' | '3xl'
138

Diff for: packages/nuxt-ui-vue/src/components/elements/Badge/UBadge.vue

-6
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,6 @@
11
<script setup lang='ts'>
2-
import { computed } from 'vue'
3-
import classNames from 'classnames'
4-
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
5-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
62
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
73
import type { UBadge } from '@/Types/componentsTypes/components'
8-
import { Components } from '@/Types/enums/Components'
9-
import { useVariants } from '@/composables/useVariants'
104
115
defineOptions({
126
name: Components.UBadge,

Diff for: packages/nuxt-ui-vue/src/components/elements/Button/UButton.vue

-9
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,6 @@
11
<script setup lang='ts'>
2-
import { computed, useAttrs, useSlots } from 'vue'
3-
import type { PropType } from 'vue'
4-
import classNames from 'classnames'
5-
import type { RouteLocationRaw } from 'vue-router'
62
import type { VariantJSWithClassesListProps } from '../../../utils/getVariantProps'
7-
import { getVariantPropsWithClassesList } from '../../../utils/getVariantProps'
83
import type { UButton } from '../../../Types/componentsTypes/components'
9-
import { Components } from '../../../Types/enums/Components'
10-
import UIcon from '../../elements/Icon/UIcon.vue'
11-
import { useVariants } from '../../../composables/useVariants'
12-
import nuxtLabsTheme from '../../../theme/nuxtLabsTheme'
134
145
defineOptions({
156
name: Components.UButton,

Diff for: packages/nuxt-ui-vue/src/components/elements/Button/UButtonGroup.vue

-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
<script setup lang="ts">
2-
import { computed } from 'vue'
3-
import { getVariantPropsWithClassesList } from '../../../utils/getVariantProps'
42
import type { UButtonGroup } from '../../../Types/componentsTypes/components'
5-
import { Components } from '../../../Types/enums/Components'
6-
import { useVariants } from '../../../composables/useVariants'
73
84
defineOptions({
95
name: Components.UButtonGroup,

Diff for: packages/nuxt-ui-vue/src/components/elements/Dropdown/UDropdown.vue

-11
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,9 @@
11
<script setup lang='ts'>
2-
import { computed, onMounted, ref } from 'vue'
32
import { Menu as HMenu, MenuButton as HMenuButton, MenuItem as HMenuItem, MenuItems as HMenuItems } from '@headlessui/vue'
4-
import type { PropType } from 'vue'
5-
import { defu } from 'defu'
63
import { omit } from '../../../utils/lodash'
7-
import ULink from '../Link/ULink.vue'
8-
import UIcon from '../Icon/UIcon.vue'
9-
import UAvatar from '../Avatar/UAvatar.vue'
10-
import UKbd from '../Kbd/UKbd.vue'
11-
import { usePopper } from '@/composables/usePopper'
124
import type { DropdownItem } from '@/Types/components/dropdown'
135
import type { PopperOptions } from '@/Types/components/popper'
14-
import { Components } from '@/Types/enums/Components'
156
import type { UDropdown } from '@/Types/componentsTypes/components'
16-
import { useVariants } from '@/composables/useVariants'
17-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
187
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
198
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
209

Diff for: packages/nuxt-ui-vue/src/components/elements/Icon/UIcon.vue

-5
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,5 @@
11
<script setup lang="ts">
2-
import { Icon, loadIcon } from '@iconify/vue'
3-
import { computed, ref, watch } from 'vue'
4-
import { Components } from '../../../Types/enums/Components'
52
import type { UIcon } from '../../../Types/componentsTypes/components'
6-
import { getVariantPropsWithClassesList } from '../../../utils/getVariantProps'
7-
import { useVariants } from '../../../composables/useVariants'
83
94
defineOptions({
105
name: Components.UIcon,

Diff for: packages/nuxt-ui-vue/src/components/elements/Kbd/UKbd.vue

-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,5 @@
11
<script setup lang='ts'>
2-
import { computed } from 'vue'
3-
import { useVariants } from '@/composables/useVariants'
4-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
52
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
6-
import { Components } from '@/Types/enums/Components'
73
import type { UKbd } from '@/Types/componentsTypes/components'
84
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
95

Diff for: packages/nuxt-ui-vue/src/components/elements/Link/ULink.vue

-4
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,4 @@
11
<script setup lang='ts'>
2-
import { RouterLink } from 'vue-router'
3-
import { isEqual } from 'ohash'
4-
import { Components } from '@/Types/enums/Components'
5-
62
defineOptions({
73
name: Components.ULink,
84
inheritAttrs: false,

Diff for: packages/nuxt-ui-vue/src/components/forms/Checkbox/UCheckbox.vue

-7
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,6 @@
11
<script setup lang="ts">
2-
import { computed } from 'vue'
3-
import classNames from 'classnames'
42
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
5-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
63
import type { UCheckbox } from '@/Types/componentsTypes/components'
7-
import { Components } from '@/Types/enums/Components'
8-
import { useFormEvents } from '@/composables/useFormEvents'
9-
import { useVariants } from '@/composables/useVariants'
10-
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
114
125
defineOptions({
136
name: Components.UCheckbox,

Diff for: packages/nuxt-ui-vue/src/components/forms/FormGroup/UFormGroup.vue

-7
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,8 @@
11
<script lang='ts'>
2-
import { computed, defineComponent, inject, provide } from 'vue'
3-
import type { Ref } from 'vue'
42
import { twMerge } from 'tailwind-merge'
5-
import { omit } from '../../../utils/lodash'
63
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
7-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
84
import type { UFormGroup } from '@/Types/componentsTypes/components'
95
import type { FormError } from '@/Types/components/form'
10-
import { Components } from '@/Types/enums/Components'
11-
import { useVariants } from '@/composables/useVariants'
12-
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
136
147
export default defineComponent({
158
name: Components.UFormGroup,

Diff for: packages/nuxt-ui-vue/src/components/forms/Input/UInput.vue

-8
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
<script setup lang='ts'>
2-
import { computed, onMounted, ref, useSlots } from 'vue'
3-
import classNames from 'classnames'
4-
import UIcon from '../../elements/Icon/UIcon.vue'
5-
import { useFormEvents } from '@/composables/useFormEvents'
6-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
7-
import { useVariants } from '@/composables/useVariants'
82
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
9-
import { Components } from '@/Types/enums/Components'
103
import type { UInput } from '@/Types/componentsTypes/components'
11-
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
124
135
defineOptions({
146
name: Components.UInput,

Diff for: packages/nuxt-ui-vue/src/components/forms/Radio/URadio.vue

+1-8
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,6 @@
11
<script setup lang='ts'>
2-
import { computed } from 'vue'
3-
import classNames from 'classnames'
42
import type { URadio } from '@/Types/componentsTypes/components'
53
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
6-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
7-
import { Components } from '@/Types/enums/Components'
8-
import { useVariants } from '@/composables/useVariants'
9-
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
10-
import { useFormEvents } from '@/composables/useFormEvents'
114
125
defineOptions({
136
name: Components.URadio,
@@ -107,7 +100,7 @@ const inputClass = computed(() => {
107100
@change="onChange"
108101
>
109102
</div>
110-
<div v-if="label || $slots.label" class="ms-3 text-sm">
103+
<div v-if="label || $slots.label" class="text-sm ms-3">
111104
<label :for="`${name}-${value}`" :class="variant.label">
112105
<slot name="label">{{ label }}</slot>
113106
<span v-if="required" :class="variant.required">*</span>

Diff for: packages/nuxt-ui-vue/src/components/forms/Range/URange.vue

-8
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,6 @@
11
<script setup lang='ts'>
2-
import { computed, useAttrs } from 'vue'
3-
import classNames from 'classnames'
4-
import { omit } from '../../../utils/lodash'
52
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
6-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
73
import type { URange } from '@/Types/componentsTypes/components'
8-
import { Components } from '@/Types/enums/Components'
9-
import { useFormEvents } from '@/composables/useFormEvents'
10-
import { useVariants } from '@/composables/useVariants'
11-
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
124
135
defineOptions({
146
name: Components.URange,

Diff for: packages/nuxt-ui-vue/src/components/forms/Select/USelect.vue

-9
Original file line numberDiff line numberDiff line change
@@ -1,15 +1,6 @@
11
<script setup lang='ts'>
2-
import { computed, useAttrs, useSlots } from 'vue'
3-
import type { ComputedRef } from 'vue'
4-
import classNames from 'classnames'
5-
import { get, omit } from '../../../utils/lodash'
62
import type { USelect } from '@/Types/componentsTypes/components'
7-
import { Components } from '@/Types/enums/Components'
8-
import { useFormEvents } from '@/composables/useFormEvents'
93
import type { VariantJSWithClassesListProps } from '@/utils/getVariantProps'
10-
import { getVariantPropsWithClassesList } from '@/utils/getVariantProps'
11-
import { useVariants } from '@/composables/useVariants'
12-
import nuxtLabsTheme from '@/theme/nuxtLabsTheme'
134
145
defineOptions({
156
name: Components.USelect,

0 commit comments

Comments
 (0)