@vifui/core 0.4.0-alpha.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 (166) hide show
  1. package/README.md +204 -0
  2. package/dist/components/accordion/accordion-body.vue.d.ts +29 -0
  3. package/dist/components/accordion/accordion-body.vue.js +27 -0
  4. package/dist/components/accordion/accordion-body.vue2.js +5 -0
  5. package/dist/components/accordion/accordion-content.vue.d.ts +29 -0
  6. package/dist/components/accordion/accordion-content.vue.js +26 -0
  7. package/dist/components/accordion/accordion-content.vue2.js +5 -0
  8. package/dist/components/accordion/accordion-header.vue.d.ts +30 -0
  9. package/dist/components/accordion/accordion-header.vue.js +28 -0
  10. package/dist/components/accordion/accordion-header.vue2.js +5 -0
  11. package/dist/components/accordion/accordion-indicator.vue.d.ts +32 -0
  12. package/dist/components/accordion/accordion-indicator.vue.js +22 -0
  13. package/dist/components/accordion/accordion-indicator.vue2.js +5 -0
  14. package/dist/components/accordion/accordion-item.vue.d.ts +54 -0
  15. package/dist/components/accordion/accordion-item.vue.js +30 -0
  16. package/dist/components/accordion/accordion-item.vue2.js +5 -0
  17. package/dist/components/accordion/accordion-root.vue.d.ts +94 -0
  18. package/dist/components/accordion/accordion-root.vue.js +55 -0
  19. package/dist/components/accordion/accordion-root.vue2.js +5 -0
  20. package/dist/components/accordion/accordion-trigger.vue.d.ts +44 -0
  21. package/dist/components/accordion/accordion-trigger.vue.js +30 -0
  22. package/dist/components/accordion/accordion-trigger.vue2.js +5 -0
  23. package/dist/components/accordion/accordion.styles.d.ts +99 -0
  24. package/dist/components/accordion/accordion.styles.js +42 -0
  25. package/dist/components/accordion/index.d.ts +15 -0
  26. package/dist/components/accordion/index.js +8 -0
  27. package/dist/components/alert/alert-body.vue.d.ts +16 -0
  28. package/dist/components/alert/alert-body.vue.js +54 -0
  29. package/dist/components/alert/alert-body.vue2.js +5 -0
  30. package/dist/components/alert/alert-close.vue.d.ts +12 -0
  31. package/dist/components/alert/alert-close.vue.js +38 -0
  32. package/dist/components/alert/alert-close.vue2.js +5 -0
  33. package/dist/components/alert/alert-content.vue.d.ts +28 -0
  34. package/dist/components/alert/alert-content.vue.js +54 -0
  35. package/dist/components/alert/alert-content.vue2.js +5 -0
  36. package/dist/components/alert/alert-description.vue.d.ts +16 -0
  37. package/dist/components/alert/alert-description.vue.js +41 -0
  38. package/dist/components/alert/alert-description.vue2.js +5 -0
  39. package/dist/components/alert/alert-footer.vue.d.ts +16 -0
  40. package/dist/components/alert/alert-footer.vue.js +54 -0
  41. package/dist/components/alert/alert-footer.vue2.js +5 -0
  42. package/dist/components/alert/alert-header.vue.d.ts +16 -0
  43. package/dist/components/alert/alert-header.vue.js +54 -0
  44. package/dist/components/alert/alert-header.vue2.js +5 -0
  45. package/dist/components/alert/alert-icon.vue.d.ts +8 -0
  46. package/dist/components/alert/alert-icon.vue.js +43 -0
  47. package/dist/components/alert/alert-icon.vue2.js +5 -0
  48. package/dist/components/alert/alert-root.vue.d.ts +48 -0
  49. package/dist/components/alert/alert-root.vue.js +57 -0
  50. package/dist/components/alert/alert-root.vue2.js +5 -0
  51. package/dist/components/alert/alert-title.vue.d.ts +16 -0
  52. package/dist/components/alert/alert-title.vue.js +41 -0
  53. package/dist/components/alert/alert-title.vue2.js +5 -0
  54. package/dist/components/alert/alert.styles.d.ts +96 -0
  55. package/dist/components/alert/alert.styles.js +147 -0
  56. package/dist/components/alert/index.d.ts +19 -0
  57. package/dist/components/alert/index.js +10 -0
  58. package/dist/components/avatar/avatar-fallback.vue.d.ts +14 -0
  59. package/dist/components/avatar/avatar-fallback.vue.js +35 -0
  60. package/dist/components/avatar/avatar-fallback.vue2.js +5 -0
  61. package/dist/components/avatar/avatar-group.vue.d.ts +20 -0
  62. package/dist/components/avatar/avatar-group.vue.js +101 -0
  63. package/dist/components/avatar/avatar-group.vue2.js +5 -0
  64. package/dist/components/avatar/avatar-image.vue.d.ts +14 -0
  65. package/dist/components/avatar/avatar-image.vue.js +37 -0
  66. package/dist/components/avatar/avatar-image.vue2.js +5 -0
  67. package/dist/components/avatar/avatar-root.vue.d.ts +57 -0
  68. package/dist/components/avatar/avatar-root.vue.js +102 -0
  69. package/dist/components/avatar/avatar-root.vue2.js +5 -0
  70. package/dist/components/avatar/avatar.styles.d.ts +209 -0
  71. package/dist/components/avatar/avatar.styles.js +50 -0
  72. package/dist/components/avatar/index.d.ts +9 -0
  73. package/dist/components/avatar/index.js +5 -0
  74. package/dist/components/badge/badge.styles.d.ts +87 -0
  75. package/dist/components/badge/badge.styles.js +41 -0
  76. package/dist/components/badge/badge.vue.d.ts +116 -0
  77. package/dist/components/badge/badge.vue.js +79 -0
  78. package/dist/components/badge/badge.vue2.js +5 -0
  79. package/dist/components/badge/index.d.ts +3 -0
  80. package/dist/components/badge/index.js +2 -0
  81. package/dist/components/breadcrumb/breadcrumb-current-link.vue.d.ts +29 -0
  82. package/dist/components/breadcrumb/breadcrumb-current-link.vue.js +28 -0
  83. package/dist/components/breadcrumb/breadcrumb-current-link.vue2.js +5 -0
  84. package/dist/components/breadcrumb/breadcrumb-item.vue.d.ts +28 -0
  85. package/dist/components/breadcrumb/breadcrumb-item.vue.js +27 -0
  86. package/dist/components/breadcrumb/breadcrumb-item.vue2.js +5 -0
  87. package/dist/components/breadcrumb/breadcrumb-link.vue.d.ts +53 -0
  88. package/dist/components/breadcrumb/breadcrumb-link.vue.js +30 -0
  89. package/dist/components/breadcrumb/breadcrumb-link.vue2.js +5 -0
  90. package/dist/components/breadcrumb/breadcrumb-list.vue.d.ts +28 -0
  91. package/dist/components/breadcrumb/breadcrumb-list.vue.js +27 -0
  92. package/dist/components/breadcrumb/breadcrumb-list.vue2.js +5 -0
  93. package/dist/components/breadcrumb/breadcrumb-root.vue.d.ts +78 -0
  94. package/dist/components/breadcrumb/breadcrumb-root.vue.js +39 -0
  95. package/dist/components/breadcrumb/breadcrumb-root.vue2.js +5 -0
  96. package/dist/components/breadcrumb/breadcrumb-separator.vue.d.ts +41 -0
  97. package/dist/components/breadcrumb/breadcrumb-separator.vue.js +32 -0
  98. package/dist/components/breadcrumb/breadcrumb-separator.vue2.js +5 -0
  99. package/dist/components/breadcrumb/breadcrumb.styles.d.ts +144 -0
  100. package/dist/components/breadcrumb/breadcrumb.styles.js +58 -0
  101. package/dist/components/breadcrumb/index.d.ts +13 -0
  102. package/dist/components/breadcrumb/index.js +7 -0
  103. package/dist/components/button/button.styles.d.ts +90 -0
  104. package/dist/components/button/button.styles.js +41 -0
  105. package/dist/components/button/button.vue.d.ts +144 -0
  106. package/dist/components/button/button.vue.js +131 -0
  107. package/dist/components/button/button.vue2.js +5 -0
  108. package/dist/components/button/index.d.ts +3 -0
  109. package/dist/components/button/index.js +2 -0
  110. package/dist/components/card/card-body.vue.d.ts +29 -0
  111. package/dist/components/card/card-body.vue.js +27 -0
  112. package/dist/components/card/card-body.vue2.js +5 -0
  113. package/dist/components/card/card-footer.vue.d.ts +29 -0
  114. package/dist/components/card/card-footer.vue.js +27 -0
  115. package/dist/components/card/card-footer.vue2.js +5 -0
  116. package/dist/components/card/card-header.vue.d.ts +29 -0
  117. package/dist/components/card/card-header.vue.js +27 -0
  118. package/dist/components/card/card-header.vue2.js +5 -0
  119. package/dist/components/card/card-media.vue.d.ts +44 -0
  120. package/dist/components/card/card-media.vue.js +56 -0
  121. package/dist/components/card/card-media.vue2.js +5 -0
  122. package/dist/components/card/card-root.vue.d.ts +128 -0
  123. package/dist/components/card/card-root.vue.js +58 -0
  124. package/dist/components/card/card-root.vue2.js +5 -0
  125. package/dist/components/card/card.styles.d.ts +216 -0
  126. package/dist/components/card/card.styles.js +86 -0
  127. package/dist/components/card/index.d.ts +11 -0
  128. package/dist/components/card/index.js +6 -0
  129. package/dist/components/checkbox/checkbox-group-item.vue.d.ts +22 -0
  130. package/dist/components/checkbox/checkbox-group-item.vue.js +27 -0
  131. package/dist/components/checkbox/checkbox-group-item.vue2.js +5 -0
  132. package/dist/components/checkbox/checkbox-group.vue.d.ts +35 -0
  133. package/dist/components/checkbox/checkbox-group.vue.js +53 -0
  134. package/dist/components/checkbox/checkbox-group.vue2.js +5 -0
  135. package/dist/components/checkbox/checkbox-indicator.vue.d.ts +40 -0
  136. package/dist/components/checkbox/checkbox-indicator.vue.js +58 -0
  137. package/dist/components/checkbox/checkbox-indicator.vue2.js +5 -0
  138. package/dist/components/checkbox/checkbox-label.vue.d.ts +27 -0
  139. package/dist/components/checkbox/checkbox-label.vue.js +24 -0
  140. package/dist/components/checkbox/checkbox-label.vue2.js +5 -0
  141. package/dist/components/checkbox/checkbox-root.vue.d.ts +42 -0
  142. package/dist/components/checkbox/checkbox-root.vue.js +51 -0
  143. package/dist/components/checkbox/checkbox-root.vue2.js +5 -0
  144. package/dist/components/checkbox/checkbox.styles.d.ts +155 -0
  145. package/dist/components/checkbox/checkbox.styles.js +66 -0
  146. package/dist/components/checkbox/index.d.ts +11 -0
  147. package/dist/components/checkbox/index.js +6 -0
  148. package/dist/components/divider/divider.styles.d.ts +93 -0
  149. package/dist/components/divider/divider.styles.js +43 -0
  150. package/dist/components/divider/divider.vue.d.ts +89 -0
  151. package/dist/components/divider/divider.vue.js +51 -0
  152. package/dist/components/divider/divider.vue2.js +5 -0
  153. package/dist/components/divider/index.d.ts +3 -0
  154. package/dist/components/divider/index.js +2 -0
  155. package/dist/components/index.d.ts +10 -0
  156. package/dist/components/spinner/index.d.ts +3 -0
  157. package/dist/components/spinner/index.js +2 -0
  158. package/dist/components/spinner/spinner.styles.d.ts +112 -0
  159. package/dist/components/spinner/spinner.styles.js +47 -0
  160. package/dist/components/spinner/spinner.vue.d.ts +31 -0
  161. package/dist/components/spinner/spinner.vue.js +102 -0
  162. package/dist/components/spinner/spinner.vue2.js +5 -0
  163. package/dist/components/types/shared-types.d.ts +4 -0
  164. package/dist/index.d.ts +2 -0
  165. package/dist/index.js +54 -0
  166. package/package.json +94 -0
@@ -0,0 +1,55 @@
1
+ import { defineComponent, computed, provide, createBlock, openBlock, unref, normalizeClass, withCtx, renderSlot } from 'vue';
2
+ import { AccordionRoot } from 'reka-ui';
3
+ import { accordionVariants } from './accordion.styles.js';
4
+
5
+ var _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "accordion-root",
7
+ props: {
8
+ variant: { type: null, required: false, default: "default" },
9
+ size: { type: null, required: false, default: "md" },
10
+ modelValue: { type: [String, Array], required: false },
11
+ defaultValue: { type: [String, Array], required: false },
12
+ type: { type: String, required: false, default: "single" },
13
+ collapsible: { type: Boolean, required: false, default: true },
14
+ disabled: { type: Boolean, required: false, default: false },
15
+ class: { type: String, required: false },
16
+ orientation: { type: String, required: false, default: "vertical" },
17
+ dir: { type: String, required: false, default: "ltr" }
18
+ },
19
+ emits: ["update:modelValue"],
20
+ setup(__props, { emit: __emit }) {
21
+ const props = __props;
22
+ const emit = __emit;
23
+ const slots = computed(
24
+ () => accordionVariants({
25
+ variant: props.variant,
26
+ size: props.size
27
+ })
28
+ );
29
+ provide("accordionSlots", slots);
30
+ const handleValueChange = (value) => {
31
+ emit("update:modelValue", value);
32
+ };
33
+ return (_ctx, _cache) => {
34
+ return openBlock(), createBlock(unref(AccordionRoot), {
35
+ class: normalizeClass([slots.value.root(), props.class]),
36
+ "model-value": __props.modelValue,
37
+ "default-value": __props.defaultValue,
38
+ type: __props.type,
39
+ collapsible: __props.collapsible,
40
+ disabled: __props.disabled,
41
+ orientation: __props.orientation,
42
+ dir: __props.dir,
43
+ "onUpdate:modelValue": handleValueChange
44
+ }, {
45
+ default: withCtx(() => [
46
+ renderSlot(_ctx.$slots, "default")
47
+ ]),
48
+ _: 3
49
+ /* FORWARDED */
50
+ }, 8, ["class", "model-value", "default-value", "type", "collapsible", "disabled", "orientation", "dir"]);
51
+ };
52
+ }
53
+ });
54
+
55
+ export { _sfc_main as default };
@@ -0,0 +1,5 @@
1
+ import _sfc_main from './accordion-root.vue.js';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
@@ -0,0 +1,44 @@
1
+ import { type AccordionTriggerProps as RekaAccordionTriggerProps } from "reka-ui";
2
+ /**
3
+ * Props for the VifUI AccordionTrigger component.
4
+ * Acts as the interactive button that expands or collapses
5
+ * its associated accordion item. Extends the base Reka UI
6
+ * `AccordionTriggerProps` while adding styling and state options.
7
+ */
8
+ export interface AccordionTriggerProps extends RekaAccordionTriggerProps {
9
+ /**
10
+ * Custom class names for the trigger button.
11
+ * Applied directly to the underlying `<button>`.
12
+ *
13
+ * @example
14
+ * ```vue
15
+ * <AccordionTrigger class="text-primary-600" />
16
+ * ```
17
+ */
18
+ class?: string;
19
+ /**
20
+ * Disables this specific trigger.
21
+ * Prevents the accordion item from opening or closing.
22
+ *
23
+ * @default false
24
+ * @example
25
+ * ```vue
26
+ * <AccordionTrigger disabled />
27
+ * ```
28
+ */
29
+ disabled?: boolean;
30
+ }
31
+ declare var __VLS_6: {};
32
+ type __VLS_Slots = {} & {
33
+ default?: (props: typeof __VLS_6) => any;
34
+ };
35
+ declare const __VLS_component: import("vue").DefineComponent<AccordionTriggerProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AccordionTriggerProps> & Readonly<{}>, {
36
+ disabled: boolean;
37
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>;
38
+ declare const _default: __VLS_WithSlots<typeof __VLS_component, __VLS_Slots>;
39
+ export default _default;
40
+ type __VLS_WithSlots<T, S> = T & {
41
+ new (): {
42
+ $slots: S;
43
+ };
44
+ };
@@ -0,0 +1,30 @@
1
+ import { defineComponent, inject, createBlock, openBlock, unref, normalizeClass, withCtx, renderSlot } from 'vue';
2
+ import { AccordionTrigger } from 'reka-ui';
3
+
4
+ var _sfc_main = /* @__PURE__ */ defineComponent({
5
+ __name: "accordion-trigger",
6
+ props: {
7
+ class: { type: String, required: false },
8
+ disabled: { type: Boolean, required: false, default: false },
9
+ asChild: { type: Boolean, required: false },
10
+ as: { type: null, required: false }
11
+ },
12
+ setup(__props) {
13
+ const props = __props;
14
+ const slots = inject("accordionSlots", null);
15
+ return (_ctx, _cache) => {
16
+ return openBlock(), createBlock(unref(AccordionTrigger), {
17
+ class: normalizeClass([unref(slots)?.trigger?.(), props.class]),
18
+ disabled: __props.disabled
19
+ }, {
20
+ default: withCtx(() => [
21
+ renderSlot(_ctx.$slots, "default")
22
+ ]),
23
+ _: 3
24
+ /* FORWARDED */
25
+ }, 8, ["class", "disabled"]);
26
+ };
27
+ }
28
+ });
29
+
30
+ export { _sfc_main as default };
@@ -0,0 +1,5 @@
1
+ import _sfc_main from './accordion-trigger.vue.js';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
@@ -0,0 +1,99 @@
1
+ import type { VariantProps } from "tailwind-variants";
2
+ /**
3
+ * Accordion component variant mapper
4
+ *
5
+ * Maps variant props to @vifui/styles CSS classes
6
+ * Inspired by Reka's accordion architecture
7
+ */
8
+ export declare const accordionVariants: import("tailwind-variants").TVReturnType<{
9
+ variant: {
10
+ default: {};
11
+ bordered: {
12
+ root: string;
13
+ };
14
+ shadow: {
15
+ root: string;
16
+ };
17
+ flat: {
18
+ root: string;
19
+ };
20
+ };
21
+ size: {
22
+ sm: {
23
+ root: string;
24
+ };
25
+ md: {};
26
+ lg: {
27
+ root: string;
28
+ };
29
+ };
30
+ }, {
31
+ root: string;
32
+ item: string;
33
+ header: string;
34
+ trigger: string;
35
+ content: string;
36
+ body: string;
37
+ icon: string;
38
+ }, undefined, {
39
+ variant: {
40
+ default: {};
41
+ bordered: {
42
+ root: string;
43
+ };
44
+ shadow: {
45
+ root: string;
46
+ };
47
+ flat: {
48
+ root: string;
49
+ };
50
+ };
51
+ size: {
52
+ sm: {
53
+ root: string;
54
+ };
55
+ md: {};
56
+ lg: {
57
+ root: string;
58
+ };
59
+ };
60
+ }, {
61
+ root: string;
62
+ item: string;
63
+ header: string;
64
+ trigger: string;
65
+ content: string;
66
+ body: string;
67
+ icon: string;
68
+ }, import("tailwind-variants").TVReturnType<{
69
+ variant: {
70
+ default: {};
71
+ bordered: {
72
+ root: string;
73
+ };
74
+ shadow: {
75
+ root: string;
76
+ };
77
+ flat: {
78
+ root: string;
79
+ };
80
+ };
81
+ size: {
82
+ sm: {
83
+ root: string;
84
+ };
85
+ md: {};
86
+ lg: {
87
+ root: string;
88
+ };
89
+ };
90
+ }, {
91
+ root: string;
92
+ item: string;
93
+ header: string;
94
+ trigger: string;
95
+ content: string;
96
+ body: string;
97
+ icon: string;
98
+ }, undefined, unknown, unknown, undefined>>;
99
+ export type AccordionVariantProps = VariantProps<typeof accordionVariants>;
@@ -0,0 +1,42 @@
1
+ import { tv } from 'tailwind-variants';
2
+
3
+ const accordionVariants = tv({
4
+ slots: {
5
+ root: "vif-accordion",
6
+ item: "vif-accordion__item",
7
+ header: "vif-accordion__header",
8
+ trigger: "vif-accordion__trigger",
9
+ content: "vif-accordion__content",
10
+ body: "vif-accordion__body",
11
+ icon: "vif-accordion__icon"
12
+ },
13
+ variants: {
14
+ variant: {
15
+ default: {},
16
+ bordered: {
17
+ root: "vif-accordion--bordered"
18
+ },
19
+ shadow: {
20
+ root: "vif-accordion--shadow"
21
+ },
22
+ flat: {
23
+ root: "vif-accordion--flat"
24
+ }
25
+ },
26
+ size: {
27
+ sm: {
28
+ root: "vif-accordion--sm"
29
+ },
30
+ md: {},
31
+ lg: {
32
+ root: "vif-accordion--lg"
33
+ }
34
+ }
35
+ },
36
+ defaultVariants: {
37
+ variant: "default",
38
+ size: "md"
39
+ }
40
+ });
41
+
42
+ export { accordionVariants };
@@ -0,0 +1,15 @@
1
+ export { default as AccordionRoot } from './accordion-root.vue';
2
+ export { default as AccordionItem } from './accordion-item.vue';
3
+ export { default as AccordionHeader } from './accordion-header.vue';
4
+ export { default as AccordionTrigger } from './accordion-trigger.vue';
5
+ export { default as AccordionContent } from './accordion-content.vue';
6
+ export { default as AccordionIndicator } from './accordion-indicator.vue';
7
+ export { default as AccordionBody } from './accordion-body.vue';
8
+ export { accordionVariants, type AccordionVariantProps } from './accordion.styles';
9
+ export type { AccordionItemProps } from './accordion-item.vue';
10
+ export type { AccordionRootProps } from './accordion-root.vue';
11
+ export type { AccordionHeaderProps } from './accordion-header.vue';
12
+ export type { AccordionTriggerProps } from './accordion-trigger.vue';
13
+ export type { AccordionContentProps } from './accordion-content.vue';
14
+ export type { AccordionIndicatorProps } from './accordion-indicator.vue';
15
+ export type { AccordionBodyProps } from './accordion-body.vue';
@@ -0,0 +1,8 @@
1
+ export { default as AccordionRoot } from './accordion-root.vue.js';
2
+ export { default as AccordionItem } from './accordion-item.vue.js';
3
+ export { default as AccordionHeader } from './accordion-header.vue.js';
4
+ export { default as AccordionTrigger } from './accordion-trigger.vue.js';
5
+ export { default as AccordionContent } from './accordion-content.vue.js';
6
+ export { default as AccordionIndicator } from './accordion-indicator.vue.js';
7
+ export { default as AccordionBody } from './accordion-body.vue.js';
8
+ export { accordionVariants } from './accordion.styles.js';
@@ -0,0 +1,16 @@
1
+ import { type PrimitiveProps } from "reka-ui";
2
+ import { type Slot } from "vue";
3
+ export interface AlertBodyProps extends PrimitiveProps {
4
+ class?: string;
5
+ }
6
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<AlertBodyProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AlertBodyProps> & Readonly<{}>, {
7
+ as: import("reka-ui").AsTag | import("vue").Component;
8
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
9
+ default: Slot;
10
+ }>;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
@@ -0,0 +1,54 @@
1
+ import { defineComponent, inject, ref, computed, createBlock, openBlock, Transition, withCtx, withDirectives, createVNode, unref, mergeProps, renderSlot, vShow } from 'vue';
2
+ import { useForwardProps, Primitive } from 'reka-ui';
3
+ import { alertVariants } from './alert.styles.js';
4
+
5
+ var _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "alert-body",
7
+ props: {
8
+ class: { type: String, required: false },
9
+ asChild: { type: Boolean, required: false },
10
+ as: { type: null, required: false, default: "div" }
11
+ },
12
+ setup(__props) {
13
+ const props = __props;
14
+ const contentContext = inject("alertContentContext", {
15
+ collapsible: false,
16
+ collapsed: ref(false)
17
+ });
18
+ const collapsed = computed(() => contentContext.collapsed.value);
19
+ const delegatedProps = computed(() => {
20
+ const { as, asChild } = props;
21
+ return { as, asChild };
22
+ });
23
+ const forwardedProps = useForwardProps(delegatedProps);
24
+ const classes = computed(
25
+ () => alertVariants({
26
+ class: props.class
27
+ })
28
+ );
29
+ return (_ctx, _cache) => {
30
+ return openBlock(), createBlock(Transition, {
31
+ name: "vif-collapse",
32
+ persisted: ""
33
+ }, {
34
+ default: withCtx(() => [
35
+ withDirectives(createVNode(unref(Primitive), mergeProps(unref(forwardedProps), {
36
+ class: classes.value.contentBody()
37
+ }), {
38
+ default: withCtx(() => [
39
+ renderSlot(_ctx.$slots, "default")
40
+ ]),
41
+ _: 3
42
+ /* FORWARDED */
43
+ }, 16, ["class"]), [
44
+ [vShow, !collapsed.value]
45
+ ])
46
+ ]),
47
+ _: 3
48
+ /* FORWARDED */
49
+ });
50
+ };
51
+ }
52
+ });
53
+
54
+ export { _sfc_main as default };
@@ -0,0 +1,5 @@
1
+ import _sfc_main from './alert-body.vue.js';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
@@ -0,0 +1,12 @@
1
+ export interface AlertCloseProps {
2
+ class?: string;
3
+ }
4
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<AlertCloseProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AlertCloseProps> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
5
+ default?: (props: {}) => any;
6
+ }>;
7
+ export default _default;
8
+ type __VLS_WithSlots<T, S> = T & {
9
+ new (): {
10
+ $slots: S;
11
+ };
12
+ };
@@ -0,0 +1,38 @@
1
+ import { defineComponent, computed, createBlock, openBlock, resolveDynamicComponent, unref, normalizeClass, withCtx, renderSlot, createVNode } from 'vue';
2
+ import { Icon } from '@iconify/vue';
3
+ import { alertVariants } from './alert.styles.js';
4
+ import _sfc_main$1 from '../button/button.vue.js';
5
+
6
+ var _sfc_main = /* @__PURE__ */ defineComponent({
7
+ __name: "alert-close",
8
+ props: {
9
+ class: { type: String, required: false }
10
+ },
11
+ setup(__props) {
12
+ const props = __props;
13
+ const classes = computed(
14
+ () => alertVariants({
15
+ class: props.class
16
+ })
17
+ );
18
+ return (_ctx, _cache) => {
19
+ return openBlock(), createBlock(resolveDynamicComponent(unref(_sfc_main$1)), {
20
+ "icon-only": "",
21
+ class: normalizeClass(classes.value.close()),
22
+ size: "sm",
23
+ color: "neutral",
24
+ variant: "ghost"
25
+ }, {
26
+ default: withCtx(() => [
27
+ renderSlot(_ctx.$slots, "default", {}, () => [
28
+ createVNode(unref(Icon), { icon: "lucide:x" })
29
+ ])
30
+ ]),
31
+ _: 3
32
+ /* FORWARDED */
33
+ }, 8, ["class"]);
34
+ };
35
+ }
36
+ });
37
+
38
+ export { _sfc_main as default };
@@ -0,0 +1,5 @@
1
+ import _sfc_main from './alert-close.vue.js';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
@@ -0,0 +1,28 @@
1
+ import { type PrimitiveProps } from 'reka-ui';
2
+ import { type Slot } from 'vue';
3
+ export interface AlertContentProps extends PrimitiveProps {
4
+ /**
5
+ * Makes the content collapsible (header becomes trigger)
6
+ */
7
+ collapsible?: boolean;
8
+ class?: string;
9
+ }
10
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<AlertContentProps & {
11
+ collapsed?: boolean;
12
+ }, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {
13
+ "update:collapsed": (value: boolean) => any;
14
+ }, string, import("vue").PublicProps, Readonly<AlertContentProps & {
15
+ collapsed?: boolean;
16
+ }> & Readonly<{
17
+ "onUpdate:collapsed"?: ((value: boolean) => any) | undefined;
18
+ }>, {
19
+ as: import("reka-ui").AsTag | import("vue").Component;
20
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
21
+ default: Slot;
22
+ }>;
23
+ export default _default;
24
+ type __VLS_WithSlots<T, S> = T & {
25
+ new (): {
26
+ $slots: S;
27
+ };
28
+ };
@@ -0,0 +1,54 @@
1
+ import { defineComponent, mergeModels, computed, useModel, provide, createBlock, openBlock, unref, mergeProps, withCtx, renderSlot } from 'vue';
2
+ import { useForwardProps, Primitive } from 'reka-ui';
3
+ import { alertVariants } from './alert.styles.js';
4
+
5
+ var _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "alert-content",
7
+ props: /* @__PURE__ */ mergeModels({
8
+ collapsible: { type: Boolean, required: false },
9
+ class: { type: String, required: false },
10
+ asChild: { type: Boolean, required: false },
11
+ as: { type: null, required: false, default: "div" }
12
+ }, {
13
+ "collapsed": { type: Boolean, ...{ default: false } },
14
+ "collapsedModifiers": {}
15
+ }),
16
+ emits: ["update:collapsed"],
17
+ setup(__props) {
18
+ const props = __props;
19
+ const delegatedProps = computed(() => {
20
+ const {
21
+ as,
22
+ asChild
23
+ } = props;
24
+ return { as, asChild };
25
+ });
26
+ const forwardedProps = useForwardProps(delegatedProps);
27
+ const classes = computed(
28
+ () => alertVariants({
29
+ class: props.class
30
+ })
31
+ );
32
+ const collapsed = useModel(__props, "collapsed");
33
+ provide("alertContentContext", {
34
+ collapsible: props.collapsible,
35
+ collapsed,
36
+ toggle: () => {
37
+ collapsed.value = !collapsed.value;
38
+ }
39
+ });
40
+ return (_ctx, _cache) => {
41
+ return openBlock(), createBlock(unref(Primitive), mergeProps(unref(forwardedProps), {
42
+ class: classes.value.content()
43
+ }), {
44
+ default: withCtx(() => [
45
+ renderSlot(_ctx.$slots, "default")
46
+ ]),
47
+ _: 3
48
+ /* FORWARDED */
49
+ }, 16, ["class"]);
50
+ };
51
+ }
52
+ });
53
+
54
+ export { _sfc_main as default };
@@ -0,0 +1,5 @@
1
+ import _sfc_main from './alert-content.vue.js';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
@@ -0,0 +1,16 @@
1
+ import { type PrimitiveProps } from 'reka-ui';
2
+ import { type Slot } from 'vue';
3
+ export interface AlertDescriptionProps extends PrimitiveProps {
4
+ class?: string;
5
+ }
6
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<AlertDescriptionProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AlertDescriptionProps> & Readonly<{}>, {
7
+ as: import("reka-ui").AsTag | import("vue").Component;
8
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
9
+ default: Slot;
10
+ }>;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };
@@ -0,0 +1,41 @@
1
+ import { defineComponent, computed, createBlock, openBlock, unref, mergeProps, withCtx, renderSlot } from 'vue';
2
+ import { useForwardProps, Primitive } from 'reka-ui';
3
+ import { alertVariants } from './alert.styles.js';
4
+
5
+ var _sfc_main = /* @__PURE__ */ defineComponent({
6
+ __name: "alert-description",
7
+ props: {
8
+ class: { type: String, required: false },
9
+ asChild: { type: Boolean, required: false },
10
+ as: { type: null, required: false, default: "div" }
11
+ },
12
+ setup(__props) {
13
+ const props = __props;
14
+ const delegatedProps = computed(() => {
15
+ const {
16
+ as,
17
+ asChild
18
+ } = props;
19
+ return { as, asChild };
20
+ });
21
+ const forwardedProps = useForwardProps(delegatedProps);
22
+ const classes = computed(
23
+ () => alertVariants({
24
+ class: props.class
25
+ })
26
+ );
27
+ return (_ctx, _cache) => {
28
+ return openBlock(), createBlock(unref(Primitive), mergeProps(unref(forwardedProps), {
29
+ class: classes.value.contentHeaderDescription()
30
+ }), {
31
+ default: withCtx(() => [
32
+ renderSlot(_ctx.$slots, "default")
33
+ ]),
34
+ _: 3
35
+ /* FORWARDED */
36
+ }, 16, ["class"]);
37
+ };
38
+ }
39
+ });
40
+
41
+ export { _sfc_main as default };
@@ -0,0 +1,5 @@
1
+ import _sfc_main from './alert-description.vue.js';
2
+
3
+
4
+
5
+ export { _sfc_main as default };
@@ -0,0 +1,16 @@
1
+ import { type PrimitiveProps } from "reka-ui";
2
+ import { type Slot } from "vue";
3
+ export interface AlertFooterProps extends PrimitiveProps {
4
+ class?: string;
5
+ }
6
+ declare const _default: __VLS_WithSlots<import("vue").DefineComponent<AlertFooterProps, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<AlertFooterProps> & Readonly<{}>, {
7
+ as: import("reka-ui").AsTag | import("vue").Component;
8
+ }, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>, {
9
+ default: Slot;
10
+ }>;
11
+ export default _default;
12
+ type __VLS_WithSlots<T, S> = T & {
13
+ new (): {
14
+ $slots: S;
15
+ };
16
+ };