una-nuxt-module 2.1.4 → 2.1.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (67) hide show
  1. package/dist/module.json +1 -1
  2. package/dist/module.mjs +8 -1
  3. package/dist/runtime/components/shared/AppBreadcumbs.vue +33 -0
  4. package/dist/runtime/components/shared/AppBreadcumbs.vue.d.ts +2 -0
  5. package/dist/runtime/components/shared/ColorModeSelect.vue +64 -0
  6. package/dist/runtime/components/shared/ColorModeSelect.vue.d.ts +2 -0
  7. package/dist/runtime/components/ui/alert-dialog/AlertDialogAction.vue +1 -1
  8. package/dist/runtime/components/ui/alert-dialog/AlertDialogCancel.vue +1 -1
  9. package/dist/runtime/components/ui/auto-form/AutoForm.vue +8 -6
  10. package/dist/runtime/components/ui/auto-form/AutoForm.vue.d.ts +4 -4
  11. package/dist/runtime/components/ui/auto-form/AutoFormFieldArray.vue +21 -8
  12. package/dist/runtime/components/ui/auto-form/AutoFormFieldBoolean.vue +18 -6
  13. package/dist/runtime/components/ui/auto-form/AutoFormFieldBoolean.vue.d.ts +1 -1
  14. package/dist/runtime/components/ui/auto-form/AutoFormFieldDate.vue +4 -8
  15. package/dist/runtime/components/ui/auto-form/AutoFormFieldEnum.vue +44 -9
  16. package/dist/runtime/components/ui/auto-form/AutoFormFieldEnum.vue.d.ts +1 -1
  17. package/dist/runtime/components/ui/auto-form/AutoFormFieldFile.vue +27 -14
  18. package/dist/runtime/components/ui/auto-form/AutoFormFieldFile.vue.d.ts +1 -1
  19. package/dist/runtime/components/ui/auto-form/AutoFormFieldInput.vue +12 -4
  20. package/dist/runtime/components/ui/auto-form/AutoFormFieldInput.vue.d.ts +1 -1
  21. package/dist/runtime/components/ui/auto-form/AutoFormFieldNumber.vue +13 -3
  22. package/dist/runtime/components/ui/auto-form/AutoFormFieldNumber.vue.d.ts +1 -1
  23. package/dist/runtime/components/ui/auto-form/AutoFormFieldObject.vue +22 -8
  24. package/dist/runtime/components/ui/auto-form/AutoFormLabel.vue +1 -1
  25. package/dist/runtime/components/ui/button/index.d.ts +1 -1
  26. package/dist/runtime/components/ui/calendar/CalendarCellTrigger.vue +1 -1
  27. package/dist/runtime/components/ui/calendar/CalendarNextButton.vue +1 -1
  28. package/dist/runtime/components/ui/calendar/CalendarPrevButton.vue +1 -1
  29. package/dist/runtime/components/ui/carousel/CarouselNext.vue +1 -3
  30. package/dist/runtime/components/ui/carousel/CarouselNext.vue.d.ts +2 -2
  31. package/dist/runtime/components/ui/carousel/CarouselPrevious.vue +1 -3
  32. package/dist/runtime/components/ui/carousel/CarouselPrevious.vue.d.ts +2 -2
  33. package/dist/runtime/components/ui/command/CommandDialog.vue +8 -2
  34. package/dist/runtime/components/ui/command/CommandDialog.vue.d.ts +2 -2
  35. package/dist/runtime/components/ui/form/FormLabel.vue +1 -1
  36. package/dist/runtime/components/ui/pagination/PaginationFirst.vue +1 -3
  37. package/dist/runtime/components/ui/pagination/PaginationFirst.vue.d.ts +1 -1
  38. package/dist/runtime/components/ui/pagination/PaginationItem.vue +1 -3
  39. package/dist/runtime/components/ui/pagination/PaginationItem.vue.d.ts +1 -1
  40. package/dist/runtime/components/ui/pagination/PaginationLast.vue +1 -3
  41. package/dist/runtime/components/ui/pagination/PaginationLast.vue.d.ts +1 -1
  42. package/dist/runtime/components/ui/pagination/PaginationNext.vue +1 -3
  43. package/dist/runtime/components/ui/pagination/PaginationNext.vue.d.ts +1 -1
  44. package/dist/runtime/components/ui/pagination/PaginationPrevious.vue +1 -3
  45. package/dist/runtime/components/ui/pagination/PaginationPrevious.vue.d.ts +1 -1
  46. package/dist/runtime/components/ui/range-calendar/RangeCalendarCellTrigger.vue +1 -1
  47. package/dist/runtime/components/ui/range-calendar/RangeCalendarNextButton.vue +1 -1
  48. package/dist/runtime/components/ui/range-calendar/RangeCalendarPrevButton.vue +1 -1
  49. package/dist/runtime/components/ui/sidebar/Sidebar.vue +4 -4
  50. package/dist/runtime/components/ui/sidebar/Sidebar.vue.d.ts +1 -1
  51. package/dist/runtime/components/ui/sidebar/SidebarInput.vue +1 -1
  52. package/dist/runtime/components/ui/sidebar/SidebarMenuButton.vue +7 -3
  53. package/dist/runtime/components/ui/sidebar/SidebarMenuButton.vue.d.ts +2 -2
  54. package/dist/runtime/components/ui/sidebar/SidebarMenuSkeleton.vue +1 -1
  55. package/dist/runtime/components/ui/sidebar/SidebarProvider.vue.d.ts +1 -1
  56. package/dist/runtime/components/ui/sidebar/SidebarSeparator.vue +1 -1
  57. package/dist/runtime/components/ui/sidebar/SidebarTrigger.vue +1 -1
  58. package/dist/runtime/components/ui/toggle/Toggle.vue.d.ts +1 -1
  59. package/dist/runtime/components/ui/toggle-group/ToggleGroup.vue.d.ts +1 -1
  60. package/dist/runtime/components/ui/toggle-group/ToggleGroupItem.vue +1 -1
  61. package/dist/runtime/components/ui/toggle-group/ToggleGroupItem.vue.d.ts +1 -1
  62. package/dist/runtime/composables/useBreadcumbs.d.ts +5 -0
  63. package/dist/runtime/composables/useBreadcumbs.js +11 -0
  64. package/dist/runtime/index.css +1 -1
  65. package/dist/runtime/middleware/authentication.js +4 -2
  66. package/dist/runtime/middleware/authorization.js +5 -4
  67. package/package.json +3 -3
@@ -3,7 +3,7 @@ import { reactiveOmit } from "@vueuse/core";
3
3
  import { ChevronLeft } from "lucide-vue-next";
4
4
  import { CalendarPrev, useForwardProps } from "reka-ui";
5
5
  import { cn } from "../../../lib/utils";
6
- import { buttonVariants } from "~/src/runtime/components/ui/button";
6
+ import { buttonVariants } from "../button";
7
7
  const props = defineProps({
8
8
  prevPage: { type: Function, required: false },
9
9
  asChild: { type: Boolean, required: false },
@@ -1,9 +1,7 @@
1
1
  <script setup>
2
2
  import { ArrowRight } from "lucide-vue-next";
3
3
  import { cn } from "../../../lib/utils";
4
- import {
5
- Button
6
- } from "~/src/runtime/components/ui/button";
4
+ import { Button } from "../button";
7
5
  import { useCarousel } from "./useCarousel";
8
6
  const props = defineProps({
9
7
  variant: { type: null, required: false, default: "outline" },
@@ -1,5 +1,5 @@
1
1
  import type { WithClassAsProps } from "./interface.js";
2
- import { type ButtonVariants } from "~/src/runtime/components/ui/button";
2
+ import { type ButtonVariants } from "../button/index.js";
3
3
  declare function __VLS_template(): {
4
4
  slots: {
5
5
  default?(_: {}): any;
@@ -22,7 +22,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
22
22
  size: string;
23
23
  }>>> & Readonly<{}>, {
24
24
  size: "default" | "sm" | "lg" | "icon" | null;
25
- variant: "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | null;
25
+ variant: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null;
26
26
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
27
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
28
28
  export default _default;
@@ -1,9 +1,7 @@
1
1
  <script setup>
2
2
  import { ArrowLeft } from "lucide-vue-next";
3
3
  import { cn } from "../../../lib/utils";
4
- import {
5
- Button
6
- } from "~/src/runtime/components/ui/button";
4
+ import { Button } from "../button";
7
5
  import { useCarousel } from "./useCarousel";
8
6
  const props = defineProps({
9
7
  variant: { type: null, required: false, default: "outline" },
@@ -1,5 +1,5 @@
1
1
  import type { WithClassAsProps } from "./interface.js";
2
- import { type ButtonVariants } from "~/src/runtime/components/ui/button";
2
+ import { type ButtonVariants } from "../button/index.js";
3
3
  declare function __VLS_template(): {
4
4
  slots: {
5
5
  default?(_: {}): any;
@@ -22,7 +22,7 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
22
22
  size: string;
23
23
  }>>> & Readonly<{}>, {
24
24
  size: "default" | "sm" | "lg" | "icon" | null;
25
- variant: "default" | "destructive" | "outline" | "secondary" | "ghost" | "link" | null;
25
+ variant: "default" | "link" | "destructive" | "outline" | "secondary" | "ghost" | null;
26
26
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
27
27
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
28
28
  export default _default;
@@ -1,6 +1,12 @@
1
1
  <script setup>
2
2
  import { useForwardPropsEmits } from "reka-ui";
3
- import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from "~/src/runtime/components/ui/dialog";
3
+ import {
4
+ Dialog,
5
+ DialogContent,
6
+ DialogDescription,
7
+ DialogHeader,
8
+ DialogTitle
9
+ } from "../dialog";
4
10
  import Command from "./Command.vue";
5
11
  const props = defineProps({
6
12
  open: { type: Boolean, required: false },
@@ -15,7 +21,7 @@ const forwarded = useForwardPropsEmits(props, emits);
15
21
 
16
22
  <template>
17
23
  <Dialog v-bind="forwarded">
18
- <DialogContent class="overflow-hidden p-0 ">
24
+ <DialogContent class="overflow-hidden p-0">
19
25
  <DialogHeader class="sr-only">
20
26
  <DialogTitle>{{ title }}</DialogTitle>
21
27
  <DialogDescription>{{ description }}</DialogDescription>
@@ -1,4 +1,4 @@
1
- import type { DialogRootProps } from 'reka-ui';
1
+ import type { DialogRootProps } from "reka-ui";
2
2
  declare function __VLS_template(): {
3
3
  slots: {
4
4
  default?(_: {}): any;
@@ -14,8 +14,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
14
14
  title: string;
15
15
  description: string;
16
16
  }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, any, string, import("vue").PublicProps, any, {
17
- description: string;
18
17
  title: string;
18
+ description: string;
19
19
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
20
20
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
21
21
  export default _default;
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { cn } from "../../../lib/utils";
3
- import { Label } from "~/src/runtime/components/ui/label";
3
+ import { Label } from "../label";
4
4
  import { useFormField } from "./useFormField";
5
5
  const props = defineProps({
6
6
  for: { type: String, required: false },
@@ -3,9 +3,7 @@ import { reactiveOmit } from "@vueuse/core";
3
3
  import { ChevronLeftIcon } from "lucide-vue-next";
4
4
  import { PaginationFirst, useForwardProps } from "reka-ui";
5
5
  import { cn } from "../../../lib/utils";
6
- import {
7
- buttonVariants
8
- } from "~/src/runtime/components/ui/button";
6
+ import { buttonVariants } from "../button";
9
7
  const props = defineProps({
10
8
  asChild: { type: Boolean, required: false },
11
9
  as: { type: [String, Object, Function], required: false },
@@ -1,6 +1,6 @@
1
1
  import type { PaginationFirstProps } from "reka-ui";
2
2
  import type { HTMLAttributes } from "vue";
3
- import { type ButtonVariants } from "~/src/runtime/components/ui/button";
3
+ import { type ButtonVariants } from "../button/index.js";
4
4
  declare function __VLS_template(): {
5
5
  slots: {
6
6
  default?(_: {}): any;
@@ -2,9 +2,7 @@
2
2
  import { reactiveOmit } from "@vueuse/core";
3
3
  import { PaginationListItem } from "reka-ui";
4
4
  import { cn } from "../../../lib/utils";
5
- import {
6
- buttonVariants
7
- } from "~/src/runtime/components/ui/button";
5
+ import { buttonVariants } from "../button";
8
6
  const props = defineProps({
9
7
  value: { type: Number, required: true },
10
8
  asChild: { type: Boolean, required: false },
@@ -1,6 +1,6 @@
1
1
  import type { HTMLAttributes } from "vue";
2
2
  import { type PaginationListItemProps } from "reka-ui";
3
- import { type ButtonVariants } from "~/src/runtime/components/ui/button";
3
+ import { type ButtonVariants } from "../button/index.js";
4
4
  declare function __VLS_template(): {
5
5
  slots: {
6
6
  default?(_: {}): any;
@@ -3,9 +3,7 @@ import { reactiveOmit } from "@vueuse/core";
3
3
  import { ChevronRightIcon } from "lucide-vue-next";
4
4
  import { PaginationLast, useForwardProps } from "reka-ui";
5
5
  import { cn } from "../../../lib/utils";
6
- import {
7
- buttonVariants
8
- } from "~/src/runtime/components/ui/button";
6
+ import { buttonVariants } from "../button";
9
7
  const props = defineProps({
10
8
  asChild: { type: Boolean, required: false },
11
9
  as: { type: [String, Object, Function], required: false },
@@ -1,6 +1,6 @@
1
1
  import type { PaginationLastProps } from "reka-ui";
2
2
  import type { HTMLAttributes } from "vue";
3
- import { type ButtonVariants } from "~/src/runtime/components/ui/button";
3
+ import { type ButtonVariants } from "../button/index.js";
4
4
  declare function __VLS_template(): {
5
5
  slots: {
6
6
  default?(_: {}): any;
@@ -3,9 +3,7 @@ import { reactiveOmit } from "@vueuse/core";
3
3
  import { ChevronRightIcon } from "lucide-vue-next";
4
4
  import { PaginationNext, useForwardProps } from "reka-ui";
5
5
  import { cn } from "../../../lib/utils";
6
- import {
7
- buttonVariants
8
- } from "~/src/runtime/components/ui/button";
6
+ import { buttonVariants } from "../button";
9
7
  const props = defineProps({
10
8
  asChild: { type: Boolean, required: false },
11
9
  as: { type: [String, Object, Function], required: false },
@@ -1,6 +1,6 @@
1
1
  import type { PaginationNextProps } from "reka-ui";
2
2
  import type { HTMLAttributes } from "vue";
3
- import { type ButtonVariants } from "~/src/runtime/components/ui/button";
3
+ import { type ButtonVariants } from "../button/index.js";
4
4
  declare function __VLS_template(): {
5
5
  slots: {
6
6
  default?(_: {}): any;
@@ -3,9 +3,7 @@ import { reactiveOmit } from "@vueuse/core";
3
3
  import { ChevronLeftIcon } from "lucide-vue-next";
4
4
  import { PaginationPrev, useForwardProps } from "reka-ui";
5
5
  import { cn } from "../../../lib/utils";
6
- import {
7
- buttonVariants
8
- } from "~/src/runtime/components/ui/button";
6
+ import { buttonVariants } from "../button";
9
7
  const props = defineProps({
10
8
  asChild: { type: Boolean, required: false },
11
9
  as: { type: [String, Object, Function], required: false },
@@ -1,6 +1,6 @@
1
1
  import type { PaginationPrevProps } from "reka-ui";
2
2
  import type { HTMLAttributes } from "vue";
3
- import { type ButtonVariants } from "~/src/runtime/components/ui/button";
3
+ import { type ButtonVariants } from "../button/index.js";
4
4
  declare function __VLS_template(): {
5
5
  slots: {
6
6
  default?(_: {}): any;
@@ -5,7 +5,7 @@ import {
5
5
  useForwardProps
6
6
  } from "reka-ui";
7
7
  import { cn } from "../../../lib/utils";
8
- import { buttonVariants } from "~/src/runtime/components/ui/button";
8
+ import { buttonVariants } from "../button";
9
9
  const props = defineProps({
10
10
  day: { type: null, required: true },
11
11
  month: { type: null, required: true },
@@ -6,7 +6,7 @@ import {
6
6
  useForwardProps
7
7
  } from "reka-ui";
8
8
  import { cn } from "../../../lib/utils";
9
- import { buttonVariants } from "~/src/runtime/components/ui/button";
9
+ import { buttonVariants } from "../button";
10
10
  const props = defineProps({
11
11
  nextPage: { type: Function, required: false },
12
12
  asChild: { type: Boolean, required: false },
@@ -6,7 +6,7 @@ import {
6
6
  useForwardProps
7
7
  } from "reka-ui";
8
8
  import { cn } from "../../../lib/utils";
9
- import { buttonVariants } from "~/src/runtime/components/ui/button";
9
+ import { buttonVariants } from "../button";
10
10
  const props = defineProps({
11
11
  prevPage: { type: Function, required: false },
12
12
  asChild: { type: Boolean, required: false },
@@ -1,9 +1,9 @@
1
1
  <script setup>
2
2
  import { cn } from "../../../lib/utils";
3
- import { Sheet, SheetContent } from "~/src/runtime/components/ui/sheet";
4
- import SheetDescription from "~/src/runtime/components/ui/sheet/SheetDescription.vue";
5
- import SheetHeader from "~/src/runtime/components/ui/sheet/SheetHeader.vue";
6
- import SheetTitle from "~/src/runtime/components/ui/sheet/SheetTitle.vue";
3
+ import { Sheet, SheetContent } from "../sheet";
4
+ import SheetDescription from "../sheet/SheetDescription.vue";
5
+ import SheetHeader from "../sheet/SheetHeader.vue";
6
+ import SheetTitle from "../sheet/SheetTitle.vue";
7
7
  import { SIDEBAR_WIDTH_MOBILE, useSidebar } from "./utils";
8
8
  defineOptions({
9
9
  inheritAttrs: false
@@ -18,9 +18,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
18
18
  variant: string;
19
19
  collapsible: string;
20
20
  }>>> & Readonly<{}>, {
21
- collapsible: "offcanvas" | "icon" | "none";
22
21
  variant: "sidebar" | "floating" | "inset";
23
22
  side: "left" | "right";
23
+ collapsible: "offcanvas" | "icon" | "none";
24
24
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
25
25
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
26
26
  export default _default;
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { cn } from "../../../lib/utils";
3
- import { Input } from "~/src/runtime/components/ui/input";
3
+ import { Input } from "../input";
4
4
  const props = defineProps({
5
5
  class: { type: null, required: false }
6
6
  });
@@ -1,7 +1,8 @@
1
1
  <script setup>
2
2
  import { reactiveOmit } from "@vueuse/core";
3
- import { Tooltip, TooltipContent, TooltipTrigger } from "~/src/runtime/components/ui/tooltip";
4
- import SidebarMenuButtonChild, {} from "./SidebarMenuButtonChild.vue";
3
+ import { Tooltip, TooltipContent, TooltipTrigger } from "../tooltip";
4
+ import SidebarMenuButtonChild, {
5
+ } from "./SidebarMenuButtonChild.vue";
5
6
  import { useSidebar } from "./utils";
6
7
  defineOptions({
7
8
  inheritAttrs: false
@@ -20,7 +21,10 @@ const delegatedProps = reactiveOmit(props, "tooltip");
20
21
  </script>
21
22
 
22
23
  <template>
23
- <SidebarMenuButtonChild v-if="!tooltip" v-bind="{ ...delegatedProps, ...$attrs }">
24
+ <SidebarMenuButtonChild
25
+ v-if="!tooltip"
26
+ v-bind="{ ...delegatedProps, ...$attrs }"
27
+ >
24
28
  <slot />
25
29
  </SidebarMenuButtonChild>
26
30
 
@@ -1,5 +1,5 @@
1
- import type { Component } from 'vue';
2
- import { type SidebarMenuButtonProps } from './SidebarMenuButtonChild.vue.js';
1
+ import type { Component } from "vue";
2
+ import { type SidebarMenuButtonProps } from "./SidebarMenuButtonChild.vue.js";
3
3
  declare function __VLS_template(): {
4
4
  slots: {
5
5
  default?(_: {}): any;
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
2
  import { computed } from "vue";
3
3
  import { cn } from "../../../lib/utils";
4
- import { Skeleton } from "~/src/runtime/components/ui/skeleton";
4
+ import { Skeleton } from "../skeleton";
5
5
  const props = defineProps({
6
6
  showIcon: { type: Boolean, required: false },
7
7
  class: { type: null, required: false }
@@ -15,8 +15,8 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
15
15
  defaultOpen: boolean;
16
16
  open: undefined;
17
17
  }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, any, string, import("vue").PublicProps, any, {
18
- open: boolean;
19
18
  defaultOpen: boolean;
19
+ open: boolean;
20
20
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
21
21
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
22
22
  export default _default;
@@ -1,6 +1,6 @@
1
1
  <script setup>
2
2
  import { cn } from "../../../lib/utils";
3
- import { Separator } from "~/src/runtime/components/ui/separator";
3
+ import { Separator } from "../separator";
4
4
  const props = defineProps({
5
5
  class: { type: null, required: false }
6
6
  });
@@ -1,7 +1,7 @@
1
1
  <script setup>
2
2
  import { PanelLeft } from "lucide-vue-next";
3
3
  import { cn } from "../../../lib/utils";
4
- import { Button } from "~/src/runtime/components/ui/button";
4
+ import { Button } from "../button";
5
5
  import { useSidebar } from "./utils";
6
6
  const props = defineProps({
7
7
  class: { type: null, required: false }
@@ -18,9 +18,9 @@ declare const __VLS_component: import("vue").DefineComponent<import("vue").Extra
18
18
  size: string;
19
19
  disabled: boolean;
20
20
  }>>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, any, string, import("vue").PublicProps, any, {
21
- disabled: boolean;
22
21
  size: "default" | "sm" | "lg" | null;
23
22
  variant: "default" | "outline" | null;
23
+ disabled: boolean;
24
24
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
25
25
  declare const _default: __VLS_WithTemplateSlots<typeof __VLS_component, __VLS_TemplateResult["slots"]>;
26
26
  export default _default;
@@ -1,5 +1,5 @@
1
1
  import type { VariantProps } from "class-variance-authority";
2
- import type { toggleVariants } from "~/src/runtime/components/ui/toggle";
2
+ import type { toggleVariants } from "../toggle/index.js";
3
3
  import { type ToggleGroupRootProps } from "reka-ui";
4
4
  import { type HTMLAttributes } from "vue";
5
5
  type ToggleGroupVariants = VariantProps<typeof toggleVariants>;
@@ -6,7 +6,7 @@ import {
6
6
  } from "reka-ui";
7
7
  import { inject } from "vue";
8
8
  import { cn } from "../../../lib/utils";
9
- import { toggleVariants } from "~/src/runtime/components/ui/toggle";
9
+ import { toggleVariants } from "../toggle";
10
10
  const props = defineProps({
11
11
  value: { type: null, required: true },
12
12
  disabled: { type: Boolean, required: false },
@@ -1,7 +1,7 @@
1
1
  import type { VariantProps } from "class-variance-authority";
2
2
  import { type ToggleGroupItemProps } from "reka-ui";
3
3
  import { type HTMLAttributes } from "vue";
4
- import { toggleVariants } from "~/src/runtime/components/ui/toggle";
4
+ import { toggleVariants } from "../toggle/index.js";
5
5
  type ToggleGroupVariants = VariantProps<typeof toggleVariants>;
6
6
  declare function __VLS_template(): {
7
7
  slots: {
@@ -0,0 +1,5 @@
1
+ import type { IBreadcrumb } from "../types/index.js";
2
+ export declare function useBreadcumbs(): {
3
+ breadcrumbs: import("vue").Ref<IBreadcrumb[], IBreadcrumb[]>;
4
+ setBreadcrumbs: (newBreadcrumbs: IBreadcrumb[]) => void;
5
+ };
@@ -0,0 +1,11 @@
1
+ import { useState } from "#imports";
2
+ export function useBreadcumbs() {
3
+ const breadcrumbs = useState("breadcrumbs", () => []);
4
+ function setBreadcrumbs(newBreadcrumbs) {
5
+ breadcrumbs.value = newBreadcrumbs;
6
+ }
7
+ return {
8
+ breadcrumbs,
9
+ setBreadcrumbs
10
+ };
11
+ }
@@ -1 +1 @@
1
- @import "#build/unaxt.css";@import "tw-animate-css";@custom-variant dark (&:is(.dark *));@theme inline{--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-destructive-foreground:var(--destructive-foreground);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-chart-1:var(--chart-1);--color-chart-2:var(--chart-2);--color-chart-3:var(--chart-3);--color-chart-4:var(--chart-4);--color-chart-5:var(--chart-5);--color-sidebar:var(--sidebar);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-border:var(--sidebar-border);--color-sidebar-ring:var(--sidebar-ring);--font-sans:var(--font-sans);--font-mono:var(--font-mono);--font-serif:var(--font-serif);--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--shadow-2xs:var(--shadow-2xs);--shadow-xs:var(--shadow-xs);--shadow-sm:var(--shadow-sm);--shadow:var(--shadow);--shadow-md:var(--shadow-md);--shadow-lg:var(--shadow-lg);--shadow-xl:var(--shadow-xl);--shadow-2xl:var(--shadow-2xl);--animate-accordion-down:accordion-down 0.2s ease-out;--animate-accordion-up:accordion-up 0.2s ease-out;@keyframes accordion-down{0%{height:0}to{height:var(--reka-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--reka-accordion-content-height)}to{height:0}}}:root{--background:oklch(0.9749 0.0025 228.7838);--foreground:oklch(0.3211 0 0);--card:oklch(1 0 0);--card-foreground:oklch(0.3211 0 0);--popover:oklch(1 0 0);--popover-foreground:oklch(0.3211 0 0);--primary:oklch(0.5786 0.2242 26.6169);--primary-foreground:oklch(1 0 0);--secondary:oklch(1 0 0);--secondary-foreground:oklch(0.4837 0.0297 218.3601);--muted:oklch(1 0 0);--muted-foreground:oklch(0.5884 0.0252 229.3905);--accent:oklch(0.9592 0.0174 210.1893);--accent-foreground:oklch(0.4893 0.1142 244.8868);--destructive:oklch(0.5786 0.2242 26.6169);--destructive-foreground:oklch(1 0 0);--border:oklch(0.94 0.0043 197.0837);--input:oklch(1 0 0);--ring:oklch(0.5786 0.2242 26.6169);--chart-1:oklch(0.7934 0.0628 211.6576);--chart-2:oklch(0.7848 0.1131 12.4138);--chart-3:oklch(0.6647 0.0744 217.8788);--chart-4:oklch(0.5926 0.0827 226.576);--chart-5:oklch(0.5122 0.0858 235.5341);--sidebar:oklch(0.9411 0.0035 219.5338);--sidebar-foreground:oklch(0.3211 0 0);--sidebar-primary:oklch(0.5786 0.2242 26.6169);--sidebar-primary-foreground:oklch(1 0 0);--sidebar-accent:oklch(0.9592 0.0174 210.1893);--sidebar-accent-foreground:oklch(0.4893 0.1142 244.8868);--sidebar-border:oklch(0.9659 0.0025 228.7842);--sidebar-ring:oklch(0.5786 0.2242 26.6169);--font-sans:Inter,sans-serif;--font-serif:Source Serif 4,serif;--font-mono:JetBrains Mono,monospace;--radius:0.75rem;--shadow-2xs:0px 1px 3px 0px rgba(26,26,26,.05);--shadow-xs:0px 1px 3px 0px rgba(26,26,26,.05);--shadow-sm:0px 1px 3px 0px rgba(26,26,26,.1),0px 1px 2px -1px rgba(26,26,26,.1);--shadow:0px 1px 3px 0px rgba(26,26,26,.1),0px 1px 2px -1px rgba(26,26,26,.1);--shadow-md:0px 1px 3px 0px rgba(26,26,26,.1),0px 2px 4px -1px rgba(26,26,26,.1);--shadow-lg:0px 1px 3px 0px rgba(26,26,26,.1),0px 4px 6px -1px rgba(26,26,26,.1);--shadow-xl:0px 1px 3px 0px rgba(26,26,26,.1),0px 8px 10px -1px rgba(26,26,26,.1);--shadow-2xl:0px 1px 3px 0px rgba(26,26,26,.25)}.dark{--background:oklch(0.2923 0.0306 228.2347);--foreground:oklch(0.9219 0 0);--card:oklch(0.3423 0.0293 237.1168);--card-foreground:oklch(0.9219 0 0);--popover:oklch(0.3164 0.0247 236.7691);--popover-foreground:oklch(0.9219 0 0);--primary:oklch(0.6297 0.2227 20.9661);--primary-foreground:oklch(1 0 0);--secondary:oklch(0.3382 0.0262 233.1842);--secondary-foreground:oklch(0.9219 0 0);--muted:oklch(0.3382 0.0262 233.1842);--muted-foreground:oklch(0.7155 0 0);--accent:oklch(0.3897 0.0546 238.688);--accent-foreground:oklch(0.9496 0.0369 217.9702);--destructive:oklch(0.6747 0.2255 5.7366);--destructive-foreground:oklch(1 0 0);--border:oklch(0.4179 0.0293 239.1501);--input:oklch(0.4179 0.0293 239.1501);--ring:oklch(0.6297 0.2227 20.9661);--chart-1:oklch(0.7934 0.0628 211.6576);--chart-2:oklch(0.7711 0.1089 11.2757);--chart-3:oklch(0.6647 0.0744 217.8788);--chart-4:oklch(0.5926 0.0827 226.576);--chart-5:oklch(0.5122 0.0858 235.5341);--sidebar:oklch(0.3387 0.0273 236.0703);--sidebar-foreground:oklch(0.9219 0 0);--sidebar-primary:oklch(0.6297 0.2227 20.9661);--sidebar-primary-foreground:oklch(1 0 0);--sidebar-accent:oklch(0.3897 0.0546 238.688);--sidebar-accent-foreground:oklch(0.9496 0.0369 217.9702);--sidebar-border:oklch(0.4179 0.0293 239.1501);--sidebar-ring:oklch(0.6297 0.2227 20.9661);--font-sans:Inter,sans-serif;--font-serif:Source Serif 4,serif;--font-mono:JetBrains Mono,monospace;--radius:0.75rem;--shadow-2xs:0px 1px 3px 0px rgba(26,26,26,.05);--shadow-xs:0px 1px 3px 0px rgba(26,26,26,.05);--shadow-sm:0px 1px 3px 0px rgba(26,26,26,.1),0px 1px 2px -1px rgba(26,26,26,.1);--shadow:0px 1px 3px 0px rgba(26,26,26,.1),0px 1px 2px -1px rgba(26,26,26,.1);--shadow-md:0px 1px 3px 0px rgba(26,26,26,.1),0px 2px 4px -1px rgba(26,26,26,.1);--shadow-lg:0px 1px 3px 0px rgba(26,26,26,.1),0px 4px 6px -1px rgba(26,26,26,.1);--shadow-xl:0px 1px 3px 0px rgba(26,26,26,.1),0px 8px 10px -1px rgba(26,26,26,.1);--shadow-2xl:0px 1px 3px 0px rgba(26,26,26,.25)}@layer base{*{@apply border-border outline-ring/50}body{@apply bg-background text-foreground}}
1
+ @import "#build/unaxt.css";@import "tw-animate-css";@custom-variant dark (&:is(.dark *));@theme inline{--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-destructive-foreground:var(--destructive-foreground);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-chart-1:var(--chart-1);--color-chart-2:var(--chart-2);--color-chart-3:var(--chart-3);--color-chart-4:var(--chart-4);--color-chart-5:var(--chart-5);--color-sidebar:var(--sidebar);--color-sidebar-foreground:var(--sidebar-foreground);--color-sidebar-primary:var(--sidebar-primary);--color-sidebar-primary-foreground:var(--sidebar-primary-foreground);--color-sidebar-accent:var(--sidebar-accent);--color-sidebar-accent-foreground:var(--sidebar-accent-foreground);--color-sidebar-border:var(--sidebar-border);--color-sidebar-ring:var(--sidebar-ring);--font-sans:var(--font-sans);--font-mono:var(--font-mono);--font-serif:var(--font-serif);--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--shadow-2xs:var(--shadow-2xs);--shadow-xs:var(--shadow-xs);--shadow-sm:var(--shadow-sm);--shadow:var(--shadow);--shadow-md:var(--shadow-md);--shadow-lg:var(--shadow-lg);--shadow-xl:var(--shadow-xl);--shadow-2xl:var(--shadow-2xl);--animate-accordion-down:accordion-down 0.2s ease-out;--animate-accordion-up:accordion-up 0.2s ease-out;@keyframes accordion-down{0%{height:0}to{height:var(--reka-accordion-content-height)}}@keyframes accordion-up{0%{height:var(--reka-accordion-content-height)}to{height:0}}}:root{--background:0 0% 100%;--foreground:0 0% 3.9%;--card:0 0% 100%;--card-foreground:0 0% 3.9%;--popover:0 0% 100%;--popover-foreground:0 0% 3.9%;--primary:0 72.2% 50.6%;--primary-foreground:0 85.7% 97.3%;--secondary:0 0% 96.1%;--secondary-foreground:0 0% 9%;--muted:0 0% 96.1%;--muted-foreground:0 0% 45.1%;--accent:0 0% 96.1%;--accent-foreground:0 0% 9%;--destructive:0 84.2% 60.2%;--destructive-foreground:0 0% 98%;--border:0 0% 89.8%;--input:0 0% 89.8%;--ring:0 72.2% 50.6%;--radius:0.75rem;--chart-1:oklch(0.81 0.17 75.35);--chart-2:oklch(0.55 0.22 264.53);--chart-3:oklch(0.72 0 0);--chart-4:oklch(0.92 0 0);--chart-5:oklch(0.56 0 0);--sidebar:oklch(0.99 0 0);--sidebar-foreground:oklch(0 0 0);--sidebar-primary:oklch(0 0 0);--sidebar-primary-foreground:oklch(1 0 0);--sidebar-accent:oklch(0.94 0 0);--sidebar-accent-foreground:oklch(0 0 0);--sidebar-border:oklch(0.94 0 0);--sidebar-ring:oklch(0 0 0);--font-sans:Geist,sans-serif;--font-serif:Georgia,serif;--font-mono:Geist Mono,monospace;--shadow-2xs:0px 1px 2px 0px rgba(0,0,0,.09);--shadow-xs:0px 1px 2px 0px rgba(0,0,0,.09);--shadow-sm:0px 1px 2px 0px rgba(0,0,0,.18),0px 1px 2px -1px rgba(0,0,0,.18);--shadow:0px 1px 2px 0px rgba(0,0,0,.18),0px 1px 2px -1px rgba(0,0,0,.18);--shadow-md:0px 1px 2px 0px rgba(0,0,0,.18),0px 2px 4px -1px rgba(0,0,0,.18);--shadow-lg:0px 1px 2px 0px rgba(0,0,0,.18),0px 4px 6px -1px rgba(0,0,0,.18);--shadow-xl:0px 1px 2px 0px rgba(0,0,0,.18),0px 8px 10px -1px rgba(0,0,0,.18);--shadow-2xl:0px 1px 2px 0px rgba(0,0,0,.45)}.dark{--background:0 0% 3.9%;--foreground:0 0% 98%;--card:0 0% 3.9%;--card-foreground:0 0% 98%;--popover:0 0% 3.9%;--popover-foreground:0 0% 98%;--primary:0 72.2% 50.6%;--primary-foreground:0 85.7% 97.3%;--secondary:0 0% 14.9%;--secondary-foreground:0 0% 98%;--muted:0 0% 14.9%;--muted-foreground:0 0% 63.9%;--accent:0 0% 14.9%;--accent-foreground:0 0% 98%;--destructive:0 62.8% 30.6%;--destructive-foreground:0 0% 98%;--border:0 0% 14.9%;--input:0 0% 14.9%;--ring:0 72.2% 50.6%;--chart-1:oklch(0.81 0.17 75.35);--chart-2:oklch(0.58 0.21 260.84);--chart-3:oklch(0.56 0 0);--chart-4:oklch(0.44 0 0);--chart-5:oklch(0.92 0 0);--sidebar:oklch(0.18 0 0);--sidebar-foreground:oklch(1 0 0);--sidebar-primary:oklch(1 0 0);--sidebar-primary-foreground:oklch(0 0 0);--sidebar-accent:oklch(0.32 0 0);--sidebar-accent-foreground:oklch(1 0 0);--sidebar-border:oklch(0.32 0 0);--sidebar-ring:oklch(0.72 0 0);--font-sans:Geist,sans-serif;--font-serif:Georgia,serif;--font-mono:Geist Mono,monospace;--shadow-2xs:0px 1px 2px 0px rgba(0,0,0,.09);--shadow-xs:0px 1px 2px 0px rgba(0,0,0,.09);--shadow-sm:0px 1px 2px 0px rgba(0,0,0,.18),0px 1px 2px -1px rgba(0,0,0,.18);--shadow:0px 1px 2px 0px rgba(0,0,0,.18),0px 1px 2px -1px rgba(0,0,0,.18);--shadow-md:0px 1px 2px 0px rgba(0,0,0,.18),0px 2px 4px -1px rgba(0,0,0,.18);--shadow-lg:0px 1px 2px 0px rgba(0,0,0,.18),0px 4px 6px -1px rgba(0,0,0,.18);--shadow-xl:0px 1px 2px 0px rgba(0,0,0,.18),0px 8px 10px -1px rgba(0,0,0,.18);--shadow-2xl:0px 1px 2px 0px rgba(0,0,0,.45)}@layer base{*{@apply border-border outline-ring/50}body{@apply bg-background text-foreground}}
@@ -1,11 +1,13 @@
1
1
  import { defineNuxtRouteMiddleware, useNuxtApp } from "#app";
2
- import isClient from "../utils/isClient.js";
3
2
  import { useAuthStore } from "../stores/auth.js";
4
3
  import { useAuthorization } from "../composables/useAuthorization.js";
5
4
  export default defineNuxtRouteMiddleware(async (to, from) => {
5
+ if (!import.meta.client) {
6
+ return;
7
+ }
6
8
  const authorization = useAuthorization();
7
9
  const authStore = useAuthStore();
8
- if (isClient() && !authStore.isAuthenticated) {
10
+ if (!authStore.isAuthenticated) {
9
11
  const { $authData, $isAuthenticated, $accessToken } = useNuxtApp();
10
12
  const isAuthenticated = await $isAuthenticated();
11
13
  if (!isAuthenticated) {
@@ -1,5 +1,4 @@
1
1
  import { defineNuxtRouteMiddleware, navigateTo } from "#app";
2
- import isClient from "../utils/isClient.js";
3
2
  import { useAuthStore } from "../stores/auth.js";
4
3
  import { useAuthorization } from "../composables/useAuthorization.js";
5
4
  import { useFormModeTrackerStore } from "../stores/formModeTracker.js";
@@ -13,13 +12,15 @@ const getPathWhitoutFormPart = (path) => {
13
12
  return parts?.join("/");
14
13
  };
15
14
  export default defineNuxtRouteMiddleware((to, from) => {
16
- const authStore = useAuthStore();
17
- const authorization = useAuthorization();
15
+ if (!import.meta.client) {
16
+ return;
17
+ }
18
18
  const resource = to.matched[0]?.path ?? to.path;
19
+ const authorization = useAuthorization();
19
20
  if (authorization.isPageUnprotected(resource)) {
20
21
  return;
21
22
  }
22
- if (!isClient() || !authStore.isAuthenticated) {
23
+ if (!useAuthStore().isAuthenticated) {
23
24
  return;
24
25
  }
25
26
  if (isUserGoingToForm(resource)) {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "una-nuxt-module",
3
- "version": "2.1.4",
3
+ "version": "2.1.6",
4
4
  "description": "Módulo Nuxt para desarrollo CGI",
5
5
  "repository": {
6
6
  "type": "git",
@@ -71,7 +71,7 @@
71
71
  "defu": "^6.1.4",
72
72
  "embla-carousel-vue": "^8.6.0",
73
73
  "lucide-vue-next": "^0.514.0",
74
- "pinia": "^3.0.3",
74
+ "pinia": "^2.2.0",
75
75
  "reka-ui": "^2.3.1",
76
76
  "tailwind-merge": "^3.3.1",
77
77
  "tailwindcss": "^4.1.10",
@@ -89,7 +89,7 @@
89
89
  "@nuxt/schema": "^3.17.5",
90
90
  "@nuxt/test-utils": "^3.19.1",
91
91
  "@nuxtjs/color-mode": "^3.5.2",
92
- "@pinia/nuxt": "^0.11.1",
92
+ "@pinia/nuxt": "^0.5.2",
93
93
  "@types/node": "latest",
94
94
  "changelogen": "^0.6.1",
95
95
  "eslint": "^9.28.0",