@sfxcode/nuxt-ui-formkit 1.2.9 → 1.2.11

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 (40) hide show
  1. package/dist/module.json +2 -2
  2. package/dist/runtime/components/output/FUIcon.d.vue.ts +11 -0
  3. package/dist/runtime/components/output/FUIcon.vue +17 -0
  4. package/dist/runtime/components/output/FUIcon.vue.d.ts +11 -0
  5. package/dist/runtime/components/output/FUOutputBadge.d.vue.ts +4 -1
  6. package/dist/runtime/components/output/FUOutputBadge.vue +3 -1
  7. package/dist/runtime/components/output/FUOutputBadge.vue.d.ts +4 -1
  8. package/dist/runtime/components/output/FUOutputBoolean.d.vue.ts +6 -1
  9. package/dist/runtime/components/output/FUOutputBoolean.vue +13 -1
  10. package/dist/runtime/components/output/FUOutputBoolean.vue.d.ts +6 -1
  11. package/dist/runtime/components/output/FUOutputDate.d.vue.ts +4 -1
  12. package/dist/runtime/components/output/FUOutputDate.vue +3 -1
  13. package/dist/runtime/components/output/FUOutputDate.vue.d.ts +4 -1
  14. package/dist/runtime/components/output/FUOutputLink.d.vue.ts +4 -1
  15. package/dist/runtime/components/output/FUOutputLink.vue +3 -1
  16. package/dist/runtime/components/output/FUOutputLink.vue.d.ts +4 -1
  17. package/dist/runtime/components/output/FUOutputList.d.vue.ts +4 -1
  18. package/dist/runtime/components/output/FUOutputList.vue +3 -1
  19. package/dist/runtime/components/output/FUOutputList.vue.d.ts +4 -1
  20. package/dist/runtime/components/output/FUOutputNumber.d.vue.ts +4 -1
  21. package/dist/runtime/components/output/FUOutputNumber.vue +3 -1
  22. package/dist/runtime/components/output/FUOutputNumber.vue.d.ts +4 -1
  23. package/dist/runtime/components/output/FUOutputProgress.d.vue.ts +4 -1
  24. package/dist/runtime/components/output/FUOutputProgress.vue +3 -1
  25. package/dist/runtime/components/output/FUOutputProgress.vue.d.ts +4 -1
  26. package/dist/runtime/components/output/FUOutputRating.d.vue.ts +4 -1
  27. package/dist/runtime/components/output/FUOutputRating.vue +3 -1
  28. package/dist/runtime/components/output/FUOutputRating.vue.d.ts +4 -1
  29. package/dist/runtime/components/output/FUOutputText.d.vue.ts +4 -1
  30. package/dist/runtime/components/output/FUOutputText.vue +3 -1
  31. package/dist/runtime/components/output/FUOutputText.vue.d.ts +4 -1
  32. package/dist/runtime/components/output/FUOutputUser.d.vue.ts +4 -1
  33. package/dist/runtime/components/output/FUOutputUser.vue +3 -1
  34. package/dist/runtime/components/output/FUOutputUser.vue.d.ts +4 -1
  35. package/dist/runtime/formkit/definitions/output.js +10 -10
  36. package/dist/runtime/formkit/definitions/output.mjs +10 -10
  37. package/dist/runtime/plugin.js +3 -1
  38. package/dist/runtime/utils/useFormKitOutput.d.ts +3 -0
  39. package/dist/runtime/utils/useFormKitOutput.js +14 -0
  40. package/package.json +17 -17
package/dist/module.json CHANGED
@@ -4,9 +4,9 @@
4
4
  "compatibility": {
5
5
  "nuxt": ">=4.0.0"
6
6
  },
7
- "version": "1.2.9",
7
+ "version": "1.2.11",
8
8
  "builder": {
9
- "@nuxt/module-builder": "1.0.2",
9
+ "@nuxt/module-builder": "1.0.3",
10
10
  "unbuild": "3.6.1"
11
11
  }
12
12
  }
@@ -1,9 +1,11 @@
1
1
  import type { PropType } from 'vue';
2
+ import type { TooltipProps } from '#ui/components/Tooltip.vue';
2
3
  export interface FormKitIconProps {
3
4
  onIconClicked?: () => void;
4
5
  onLeadingIconClicked?: () => void;
5
6
  onTrailingIconClicked?: () => void;
6
7
  }
8
+ export type FUIconTooltip = Omit<TooltipProps, 'class'>;
7
9
  declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
8
10
  name: {
9
11
  type: PropType<string>;
@@ -17,6 +19,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
17
19
  type: StringConstructor;
18
20
  default: string;
19
21
  };
22
+ tooltip: {
23
+ type: PropType<FUIconTooltip>;
24
+ default: undefined;
25
+ };
20
26
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
27
  name: {
22
28
  type: PropType<string>;
@@ -30,9 +36,14 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
30
36
  type: StringConstructor;
31
37
  default: string;
32
38
  };
39
+ tooltip: {
40
+ type: PropType<FUIconTooltip>;
41
+ default: undefined;
42
+ };
33
43
  }>> & Readonly<{}>, {
34
44
  onClick: () => void;
35
45
  iconClass: string;
46
+ tooltip: FUIconTooltip;
36
47
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
37
48
  declare const _default: typeof __VLS_export;
38
49
  export default _default;
@@ -1,4 +1,5 @@
1
1
  <script setup>
2
+ defineOptions({ inheritAttrs: false });
2
3
  defineProps({
3
4
  name: {
4
5
  type: String,
@@ -8,13 +9,29 @@ defineProps({
8
9
  iconClass: {
9
10
  type: String,
10
11
  default: ""
12
+ },
13
+ tooltip: {
14
+ type: Object,
15
+ default: void 0
11
16
  }
12
17
  });
13
18
  </script>
14
19
 
15
20
  <template>
21
+ <UTooltip
22
+ v-if="tooltip"
23
+ v-bind="tooltip"
24
+ >
25
+ <UIcon
26
+ :name="name"
27
+ v-bind="$attrs"
28
+ @click="onClick"
29
+ />
30
+ </UTooltip>
16
31
  <UIcon
32
+ v-else
17
33
  :name="name"
34
+ v-bind="$attrs"
18
35
  @click="onClick"
19
36
  />
20
37
  </template>
@@ -1,9 +1,11 @@
1
1
  import type { PropType } from 'vue';
2
+ import type { TooltipProps } from '#ui/components/Tooltip.vue';
2
3
  export interface FormKitIconProps {
3
4
  onIconClicked?: () => void;
4
5
  onLeadingIconClicked?: () => void;
5
6
  onTrailingIconClicked?: () => void;
6
7
  }
8
+ export type FUIconTooltip = Omit<TooltipProps, 'class'>;
7
9
  declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractPropTypes<{
8
10
  name: {
9
11
  type: PropType<string>;
@@ -17,6 +19,10 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
17
19
  type: StringConstructor;
18
20
  default: string;
19
21
  };
22
+ tooltip: {
23
+ type: PropType<FUIconTooltip>;
24
+ default: undefined;
25
+ };
20
26
  }>, {}, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<import("vue").ExtractPropTypes<{
21
27
  name: {
22
28
  type: PropType<string>;
@@ -30,9 +36,14 @@ declare const __VLS_export: import("vue").DefineComponent<import("vue").ExtractP
30
36
  type: StringConstructor;
31
37
  default: string;
32
38
  };
39
+ tooltip: {
40
+ type: PropType<FUIconTooltip>;
41
+ default: undefined;
42
+ };
33
43
  }>> & Readonly<{}>, {
34
44
  onClick: () => void;
35
45
  iconClass: string;
46
+ tooltip: FUIconTooltip;
36
47
  }, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>;
37
48
  declare const _default: typeof __VLS_export;
38
49
  export default _default;
@@ -1,17 +1,20 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputBadgeProps {
6
6
  badgeIcon?: string;
7
7
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
12
14
  square?: boolean;
13
15
  trailing?: boolean;
14
16
  trailingIcon?: string;
17
+ trailingIconTooltip?: FUIconTooltip;
15
18
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
16
19
  ui?: FormKitOutputUi;
17
20
  }
@@ -20,7 +20,7 @@ const badgeVariant = computed(() => {
20
20
  return "soft";
21
21
  return variant;
22
22
  });
23
- const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = useFormKitOutput(props.context);
23
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip, ui } = useFormKitOutput(props.context);
24
24
  </script>
25
25
 
26
26
  <template>
@@ -33,6 +33,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
33
33
  v-if="leadingIconName"
34
34
  :name="leadingIconName"
35
35
  :class="iconClass"
36
+ :tooltip="leadingTooltip"
36
37
  :on-click="context?.onLeadingIconClicked"
37
38
  />
38
39
 
@@ -50,6 +51,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
50
51
  v-if="trailingIconName"
51
52
  :name="trailingIconName"
52
53
  :class="iconClass"
54
+ :tooltip="trailingTooltip"
53
55
  :on-click="context?.onTrailingIconClicked"
54
56
  />
55
57
  </div>
@@ -1,17 +1,20 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputBadgeProps {
6
6
  badgeIcon?: string;
7
7
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
12
14
  square?: boolean;
13
15
  trailing?: boolean;
14
16
  trailingIcon?: string;
17
+ trailingIconTooltip?: FUIconTooltip;
15
18
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
16
19
  ui?: FormKitOutputUi;
17
20
  }
@@ -1,18 +1,23 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
3
3
  import type { PropType } from 'vue';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputBooleanProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  falseIcon?: string;
8
+ falseIconTooltip?: FUIconTooltip;
8
9
  falseValue?: string;
9
10
  icon?: string;
11
+ iconTooltip?: FUIconTooltip;
10
12
  leading?: boolean;
11
13
  leadingIcon?: string;
14
+ leadingIconTooltip?: FUIconTooltip;
12
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
13
16
  trailing?: boolean;
14
17
  trailingIcon?: string;
18
+ trailingIconTooltip?: FUIconTooltip;
15
19
  trueIcon?: string;
20
+ trueIconTooltip?: FUIconTooltip;
16
21
  trueValue?: string;
17
22
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
18
23
  ui?: FormKitOutputUi;
@@ -24,7 +24,16 @@ const booleanIcon = computed(() => {
24
24
  }
25
25
  return void 0;
26
26
  });
27
- const { containerClass, iconClass, leadingIconName, trailingIconName } = useFormKitOutput(props.context);
27
+ const booleanIconTooltip = computed(() => {
28
+ if (booleanValue.value && props.context.trueIconTooltip) {
29
+ return props.context.trueIconTooltip;
30
+ }
31
+ if (!booleanValue.value && props.context.falseIconTooltip) {
32
+ return props.context.falseIconTooltip;
33
+ }
34
+ return void 0;
35
+ });
36
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip } = useFormKitOutput(props.context);
28
37
  </script>
29
38
 
30
39
  <template>
@@ -37,12 +46,14 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
37
46
  v-if="leadingIconName"
38
47
  :name="leadingIconName"
39
48
  :class="iconClass"
49
+ :tooltip="leadingTooltip"
40
50
  :on-click="context?.onLeadingIconClicked"
41
51
  />
42
52
  <FUIcon
43
53
  v-if="booleanIcon"
44
54
  :name="booleanIcon"
45
55
  :class="iconClass"
56
+ :tooltip="booleanIconTooltip"
46
57
  :on-click="context?.onIconClicked"
47
58
  />
48
59
  <span>{{ displayValue }}</span>
@@ -50,6 +61,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
50
61
  v-if="trailingIconName"
51
62
  :name="trailingIconName"
52
63
  :class="iconClass"
64
+ :tooltip="trailingTooltip"
53
65
  :on-click="context?.onTrailingIconClicked"
54
66
  />
55
67
  </div>
@@ -1,18 +1,23 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
3
3
  import type { PropType } from 'vue';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputBooleanProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  falseIcon?: string;
8
+ falseIconTooltip?: FUIconTooltip;
8
9
  falseValue?: string;
9
10
  icon?: string;
11
+ iconTooltip?: FUIconTooltip;
10
12
  leading?: boolean;
11
13
  leadingIcon?: string;
14
+ leadingIconTooltip?: FUIconTooltip;
12
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
13
16
  trailing?: boolean;
14
17
  trailingIcon?: string;
18
+ trailingIconTooltip?: FUIconTooltip;
15
19
  trueIcon?: string;
20
+ trueIconTooltip?: FUIconTooltip;
16
21
  trueValue?: string;
17
22
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
18
23
  ui?: FormKitOutputUi;
@@ -1,19 +1,22 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputDateProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  dateStyle?: 'short' | 'medium' | 'long' | 'full';
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  locale?: string;
12
14
  relative?: boolean;
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  timeStyle?: 'short' | 'medium' | 'long';
15
17
  trailing?: boolean;
16
18
  trailingIcon?: string;
19
+ trailingIconTooltip?: FUIconTooltip;
17
20
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
18
21
  ui?: FormKitOutputUi;
19
22
  }
@@ -18,7 +18,7 @@ const dateValue = computed(() => {
18
18
  return void 0;
19
19
  }
20
20
  });
21
- const { containerClass, iconClass, leadingIconName, trailingIconName } = useFormKitOutput(props.context);
21
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip } = useFormKitOutput(props.context);
22
22
  </script>
23
23
 
24
24
  <template>
@@ -31,6 +31,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
31
31
  v-if="leadingIconName"
32
32
  :name="leadingIconName"
33
33
  :class="iconClass"
34
+ :tooltip="leadingTooltip"
34
35
  :on-click="context?.onLeadingIconClicked"
35
36
  />
36
37
  <NuxtTime
@@ -46,6 +47,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
46
47
  v-if="trailingIconName"
47
48
  :name="trailingIconName"
48
49
  :class="iconClass"
50
+ :tooltip="trailingTooltip"
49
51
  :on-click="context?.onTrailingIconClicked"
50
52
  />
51
53
  </div>
@@ -1,19 +1,22 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputDateProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  dateStyle?: 'short' | 'medium' | 'long' | 'full';
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  locale?: string;
12
14
  relative?: boolean;
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  timeStyle?: 'short' | 'medium' | 'long';
15
17
  trailing?: boolean;
16
18
  trailingIcon?: string;
19
+ trailingIconTooltip?: FUIconTooltip;
17
20
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
18
21
  ui?: FormKitOutputUi;
19
22
  }
@@ -1,15 +1,18 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputLinkProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  icon?: string;
8
+ iconTooltip?: FUIconTooltip;
8
9
  leading?: boolean;
9
10
  leadingIcon?: string;
11
+ leadingIconTooltip?: FUIconTooltip;
10
12
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
11
13
  trailing?: boolean;
12
14
  trailingIcon?: string;
15
+ trailingIconTooltip?: FUIconTooltip;
13
16
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
14
17
  target?: '_blank' | '_self' | '_parent' | '_top';
15
18
  rel?: string;
@@ -28,7 +28,7 @@ const linkRel = computed(() => {
28
28
  const displayValue = computed(() => {
29
29
  return linkUrl;
30
30
  });
31
- const { containerClass, iconClass, leadingIconName, trailingIconName } = useFormKitOutput(props.context);
31
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip } = useFormKitOutput(props.context);
32
32
  const linkClass = computed(() => {
33
33
  const classes = [
34
34
  containerClass.value
@@ -47,6 +47,7 @@ const linkClass = computed(() => {
47
47
  v-if="leadingIconName"
48
48
  :name="leadingIconName"
49
49
  :class="iconClass"
50
+ :tooltip="leadingTooltip"
50
51
  :on-click="context?.onLeadingIconClicked"
51
52
  />
52
53
  <ULink
@@ -72,6 +73,7 @@ const linkClass = computed(() => {
72
73
  v-if="trailingIconName"
73
74
  :name="trailingIconName"
74
75
  :class="iconClass"
76
+ :tooltip="trailingTooltip"
75
77
  :on-click="context?.onTrailingIconClicked"
76
78
  />
77
79
  </div>
@@ -1,15 +1,18 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputLinkProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  icon?: string;
8
+ iconTooltip?: FUIconTooltip;
8
9
  leading?: boolean;
9
10
  leadingIcon?: string;
11
+ leadingIconTooltip?: FUIconTooltip;
10
12
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
11
13
  trailing?: boolean;
12
14
  trailingIcon?: string;
15
+ trailingIconTooltip?: FUIconTooltip;
13
16
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
14
17
  target?: '_blank' | '_self' | '_parent' | '_top';
15
18
  rel?: string;
@@ -1,18 +1,21 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputListProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  icon?: string;
8
+ iconTooltip?: FUIconTooltip;
8
9
  itemClass?: string;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  listType?: 'span' | 'div' | 'ul' | 'ol' | 'comma' | 'semicolon' | 'pipe' | 'dash' | 'space' | 'badge';
12
14
  separator?: string;
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  trailing?: boolean;
15
17
  trailingIcon?: string;
18
+ trailingIconTooltip?: FUIconTooltip;
16
19
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
17
20
  ui?: FormKitOutputUi;
18
21
  }
@@ -44,7 +44,7 @@ const badgeVariant = computed(() => {
44
44
  if (variant === "ghost" || variant === "none") return "soft";
45
45
  return variant;
46
46
  });
47
- const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = useFormKitOutput(props.context);
47
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip, ui } = useFormKitOutput(props.context);
48
48
  </script>
49
49
 
50
50
  <template>
@@ -57,6 +57,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
57
57
  v-if="leadingIconName"
58
58
  :name="leadingIconName"
59
59
  :class="iconClass"
60
+ :tooltip="leadingTooltip"
60
61
  :on-click="context?.onLeadingIconClicked"
61
62
  />
62
63
 
@@ -138,6 +139,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
138
139
  v-if="trailingIconName"
139
140
  :name="trailingIconName"
140
141
  :class="iconClass"
142
+ :tooltip="trailingTooltip"
141
143
  :on-click="context?.onTrailingIconClicked"
142
144
  />
143
145
  </div>
@@ -1,18 +1,21 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputListProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  icon?: string;
8
+ iconTooltip?: FUIconTooltip;
8
9
  itemClass?: string;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  listType?: 'span' | 'div' | 'ul' | 'ol' | 'comma' | 'semicolon' | 'pipe' | 'dash' | 'space' | 'badge';
12
14
  separator?: string;
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  trailing?: boolean;
15
17
  trailingIcon?: string;
18
+ trailingIconTooltip?: FUIconTooltip;
16
19
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
17
20
  ui?: FormKitOutputUi;
18
21
  }
@@ -1,17 +1,20 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputNumberProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  formatOptions?: Intl.NumberFormatOptions;
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  locale?: string;
12
14
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
13
15
  trailing?: boolean;
14
16
  trailingIcon?: string;
17
+ trailingIconTooltip?: FUIconTooltip;
15
18
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
16
19
  ui?: FormKitOutputUi;
17
20
  }
@@ -26,7 +26,7 @@ const displayValue = computed(() => {
26
26
  return String(numberValue.value);
27
27
  }
28
28
  });
29
- const { containerClass, iconClass, leadingIconName, trailingIconName } = useFormKitOutput(props.context);
29
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip } = useFormKitOutput(props.context);
30
30
  </script>
31
31
 
32
32
  <template>
@@ -39,6 +39,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
39
39
  v-if="leadingIconName"
40
40
  :name="leadingIconName"
41
41
  :class="iconClass"
42
+ :tooltip="leadingTooltip"
42
43
  :on-click="context?.onLeadingIconClicked"
43
44
  />
44
45
  <span>{{ displayValue }}</span>
@@ -46,6 +47,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
46
47
  v-if="trailingIconName"
47
48
  :name="trailingIconName"
48
49
  :class="iconClass"
50
+ :tooltip="trailingTooltip"
49
51
  :on-click="context?.onTrailingIconClicked"
50
52
  />
51
53
  </div>
@@ -1,17 +1,20 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputNumberProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  formatOptions?: Intl.NumberFormatOptions;
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  locale?: string;
12
14
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
13
15
  trailing?: boolean;
14
16
  trailingIcon?: string;
17
+ trailingIconTooltip?: FUIconTooltip;
15
18
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
16
19
  ui?: FormKitOutputUi;
17
20
  }
@@ -1,19 +1,22 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputProgressProps {
6
6
  animation?: 'carousel' | 'carousel-inverse' | 'swing' | 'elastic';
7
7
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  max?: number;
12
14
  orientation?: 'horizontal' | 'vertical';
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  status?: boolean;
15
17
  trailing?: boolean;
16
18
  trailingIcon?: string;
19
+ trailingIconTooltip?: FUIconTooltip;
17
20
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
18
21
  ui?: FormKitOutputUi;
19
22
  }
@@ -17,7 +17,7 @@ const progressValue = computed(() => {
17
17
  const progressSizeClass = computed(() => {
18
18
  return props.context.orientation === "vertical" ? "min-h-32" : "min-w-32 flex-1";
19
19
  });
20
- const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = useFormKitOutput(props.context);
20
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip, ui } = useFormKitOutput(props.context);
21
21
  </script>
22
22
 
23
23
  <template>
@@ -30,6 +30,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
30
30
  v-if="leadingIconName"
31
31
  :name="leadingIconName"
32
32
  :class="iconClass"
33
+ :tooltip="leadingTooltip"
33
34
  :on-click="context?.onLeadingIconClicked"
34
35
  />
35
36
 
@@ -49,6 +50,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
49
50
  v-if="trailingIconName"
50
51
  :name="trailingIconName"
51
52
  :class="iconClass"
53
+ :tooltip="trailingTooltip"
52
54
  :on-click="context?.onTrailingIconClicked"
53
55
  />
54
56
  </div>
@@ -1,19 +1,22 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputProgressProps {
6
6
  animation?: 'carousel' | 'carousel-inverse' | 'swing' | 'elastic';
7
7
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  max?: number;
12
14
  orientation?: 'horizontal' | 'vertical';
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  status?: boolean;
15
17
  trailing?: boolean;
16
18
  trailingIcon?: string;
19
+ trailingIconTooltip?: FUIconTooltip;
17
20
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
18
21
  ui?: FormKitOutputUi;
19
22
  }
@@ -1,18 +1,21 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputRatingProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  emptyIcon?: string;
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  length?: number;
12
14
  orientation?: 'horizontal' | 'vertical';
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  trailing?: boolean;
15
17
  trailingIcon?: string;
18
+ trailingIconTooltip?: FUIconTooltip;
16
19
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
17
20
  ui?: FormKitOutputUi;
18
21
  }
@@ -14,7 +14,7 @@ const ratingValue = computed(() => {
14
14
  return void 0;
15
15
  return Number(value);
16
16
  });
17
- const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = useFormKitOutput(props.context);
17
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip, ui } = useFormKitOutput(props.context);
18
18
  </script>
19
19
 
20
20
  <template>
@@ -27,6 +27,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
27
27
  v-if="leadingIconName"
28
28
  :name="leadingIconName"
29
29
  :class="iconClass"
30
+ :tooltip="leadingTooltip"
30
31
  :on-click="context?.onLeadingIconClicked"
31
32
  />
32
33
 
@@ -53,6 +54,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
53
54
  v-if="trailingIconName"
54
55
  :name="trailingIconName"
55
56
  :class="iconClass"
57
+ :tooltip="trailingTooltip"
56
58
  :on-click="context?.onTrailingIconClicked"
57
59
  />
58
60
  </div>
@@ -1,18 +1,21 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputRatingProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  emptyIcon?: string;
8
8
  icon?: string;
9
+ iconTooltip?: FUIconTooltip;
9
10
  leading?: boolean;
10
11
  leadingIcon?: string;
12
+ leadingIconTooltip?: FUIconTooltip;
11
13
  length?: number;
12
14
  orientation?: 'horizontal' | 'vertical';
13
15
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
14
16
  trailing?: boolean;
15
17
  trailingIcon?: string;
18
+ trailingIconTooltip?: FUIconTooltip;
16
19
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
17
20
  ui?: FormKitOutputUi;
18
21
  }
@@ -1,15 +1,18 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputTextProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  icon?: string;
8
+ iconTooltip?: FUIconTooltip;
8
9
  leading?: boolean;
9
10
  leadingIcon?: string;
11
+ leadingIconTooltip?: FUIconTooltip;
10
12
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
11
13
  trailing?: boolean;
12
14
  trailingIcon?: string;
15
+ trailingIconTooltip?: FUIconTooltip;
13
16
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
14
17
  outputType?: 'text' | 'email' | 'url' | 'tel' | 'color' | 'duration' | 'i18n';
15
18
  ui?: FormKitOutputUi;
@@ -56,7 +56,7 @@ const colorStyle = computed(() => {
56
56
  }
57
57
  return " ";
58
58
  });
59
- const { containerClass, iconClass, leadingIconName, trailingIconName } = useFormKitOutput(props.context);
59
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip } = useFormKitOutput(props.context);
60
60
  </script>
61
61
 
62
62
  <template>
@@ -70,6 +70,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
70
70
  :name="leadingIconName"
71
71
  :class="iconClass"
72
72
  :style="colorStyle"
73
+ :tooltip="leadingTooltip"
73
74
  :on-click="context?.onLeadingIconClicked"
74
75
  />
75
76
 
@@ -94,6 +95,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName } = useForm
94
95
  :name="trailingIconName"
95
96
  :class="iconClass"
96
97
  :style="colorStyle"
98
+ :tooltip="trailingTooltip"
97
99
  :on-click="context?.onTrailingIconClicked"
98
100
  />
99
101
  </div>
@@ -1,15 +1,18 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputTextProps {
6
6
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
7
7
  icon?: string;
8
+ iconTooltip?: FUIconTooltip;
8
9
  leading?: boolean;
9
10
  leadingIcon?: string;
11
+ leadingIconTooltip?: FUIconTooltip;
10
12
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
11
13
  trailing?: boolean;
12
14
  trailingIcon?: string;
15
+ trailingIconTooltip?: FUIconTooltip;
13
16
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
14
17
  outputType?: 'text' | 'email' | 'url' | 'tel' | 'color' | 'duration' | 'i18n';
15
18
  ui?: FormKitOutputUi;
@@ -1,7 +1,7 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputUserAvatar {
6
6
  src?: string;
7
7
  alt?: string;
@@ -17,12 +17,15 @@ export interface FormKitOutputUserProps {
17
17
  chip?: boolean | Record<string, unknown>;
18
18
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
19
19
  icon?: string;
20
+ iconTooltip?: FUIconTooltip;
20
21
  leading?: boolean;
21
22
  leadingIcon?: string;
23
+ leadingIconTooltip?: FUIconTooltip;
22
24
  orientation?: 'horizontal' | 'vertical';
23
25
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
24
26
  trailing?: boolean;
25
27
  trailingIcon?: string;
28
+ trailingIconTooltip?: FUIconTooltip;
26
29
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
27
30
  ui?: FormKitOutputUi;
28
31
  }
@@ -9,7 +9,7 @@ const props = defineProps({
9
9
  }
10
10
  });
11
11
  const userValue = computed(() => props.context._value);
12
- const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = useFormKitOutput(props.context);
12
+ const { containerClass, iconClass, leadingIconName, trailingIconName, leadingTooltip, trailingTooltip, ui } = useFormKitOutput(props.context);
13
13
  </script>
14
14
 
15
15
  <template>
@@ -22,6 +22,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
22
22
  v-if="leadingIconName"
23
23
  :name="leadingIconName"
24
24
  :class="iconClass"
25
+ :tooltip="leadingTooltip"
25
26
  :on-click="context?.onLeadingIconClicked"
26
27
  />
27
28
 
@@ -39,6 +40,7 @@ const { containerClass, iconClass, leadingIconName, trailingIconName, ui } = use
39
40
  v-if="trailingIconName"
40
41
  :name="trailingIconName"
41
42
  :class="iconClass"
43
+ :tooltip="trailingTooltip"
42
44
  :on-click="context?.onTrailingIconClicked"
43
45
  />
44
46
  </div>
@@ -1,7 +1,7 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
2
  import type { PropType } from 'vue';
3
3
  import type { FormKitOutputUi } from '../../utils/useFormKitOutput.js';
4
- import type { FormKitIconProps } from './FUIcon.vue.js';
4
+ import type { FormKitIconProps, FUIconTooltip } from './FUIcon.vue.js';
5
5
  export interface FormKitOutputUserAvatar {
6
6
  src?: string;
7
7
  alt?: string;
@@ -17,12 +17,15 @@ export interface FormKitOutputUserProps {
17
17
  chip?: boolean | Record<string, unknown>;
18
18
  color?: 'primary' | 'secondary' | 'success' | 'info' | 'warning' | 'error' | 'neutral';
19
19
  icon?: string;
20
+ iconTooltip?: FUIconTooltip;
20
21
  leading?: boolean;
21
22
  leadingIcon?: string;
23
+ leadingIconTooltip?: FUIconTooltip;
22
24
  orientation?: 'horizontal' | 'vertical';
23
25
  size?: 'xs' | 'sm' | 'md' | 'lg' | 'xl';
24
26
  trailing?: boolean;
25
27
  trailingIcon?: string;
28
+ trailingIconTooltip?: FUIconTooltip;
26
29
  variant?: 'outline' | 'soft' | 'subtle' | 'ghost' | 'none';
27
30
  ui?: FormKitOutputUi;
28
31
  }
@@ -10,42 +10,42 @@ import FUOutputRating from "../../../runtime/components/output/FUOutputRating.vu
10
10
  import FUOutputUser from "../../../runtime/components/output/FUOutputUser.vue";
11
11
  import FUOutputBadge from "../../../runtime/components/output/FUOutputBadge.vue";
12
12
  export const nuxtUIOutputTextDefinition = createInput(FUOutputText, {
13
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "outputType", "ui"],
13
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "outputType", "ui"],
14
14
  family: "NuxtUIOutput"
15
15
  });
16
16
  export const nuxtUIOutputBooleanDefinition = createInput(FUOutputBoolean, {
17
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "trueValue", "falseValue", "trueIcon", "falseIcon", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
17
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "trueValue", "falseValue", "trueIcon", "trueIconTooltip", "falseIcon", "falseIconTooltip", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
18
18
  family: "NuxtUIOutput"
19
19
  });
20
20
  export const nuxtUIOutputDateDefinition = createInput(FUOutputDate, {
21
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "dateStyle", "timeStyle", "locale", "relative", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
21
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "dateStyle", "timeStyle", "locale", "relative", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
22
22
  family: "NuxtUIOutput"
23
23
  });
24
24
  export const nuxtUIOutputLinkDefinition = createInput(FUOutputLink, {
25
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "target", "rel", "underline", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
25
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "target", "rel", "underline", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
26
26
  family: "NuxtUIOutput"
27
27
  });
28
28
  export const nuxtUIOutputNumberDefinition = createInput(FUOutputNumber, {
29
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "locale", "formatOptions", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
29
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "locale", "formatOptions", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
30
30
  family: "NuxtUIOutput"
31
31
  });
32
32
  export const nuxtUIOutputListDefinition = createInput(FUOutputList, {
33
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "listType", "separator", "itemClass", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
33
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "listType", "separator", "itemClass", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
34
34
  family: "NuxtUIOutput"
35
35
  });
36
36
  export const nuxtUIOutputProgressDefinition = createInput(FUOutputProgress, {
37
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "max", "status", "orientation", "animation", "ui"],
37
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "max", "status", "orientation", "animation", "ui"],
38
38
  family: "NuxtUIOutput"
39
39
  });
40
40
  export const nuxtUIOutputRatingDefinition = createInput(FUOutputRating, {
41
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "length", "emptyIcon", "orientation", "ui"],
41
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "length", "emptyIcon", "orientation", "ui"],
42
42
  family: "NuxtUIOutput"
43
43
  });
44
44
  export const nuxtUIOutputUserDefinition = createInput(FUOutputUser, {
45
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "orientation", "chip", "ui"],
45
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "orientation", "chip", "ui"],
46
46
  family: "NuxtUIOutput"
47
47
  });
48
48
  export const nuxtUIOutputBadgeDefinition = createInput(FUOutputBadge, {
49
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "badgeIcon", "square", "ui"],
49
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "badgeIcon", "square", "ui"],
50
50
  family: "NuxtUIOutput"
51
51
  });
@@ -10,42 +10,42 @@ import FUOutputRating from "../../../runtime/components/output/FUOutputRating.vu
10
10
  import FUOutputUser from "../../../runtime/components/output/FUOutputUser.vue";
11
11
  import FUOutputBadge from "../../../runtime/components/output/FUOutputBadge.vue";
12
12
  export const nuxtUIOutputTextDefinition = createInput(FUOutputText, {
13
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "outputType", "ui"],
13
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "outputType", "ui"],
14
14
  family: "NuxtUIOutput"
15
15
  });
16
16
  export const nuxtUIOutputBooleanDefinition = createInput(FUOutputBoolean, {
17
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "trueValue", "falseValue", "trueIcon", "falseIcon", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
17
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "trueValue", "falseValue", "trueIcon", "trueIconTooltip", "falseIcon", "falseIconTooltip", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
18
18
  family: "NuxtUIOutput"
19
19
  });
20
20
  export const nuxtUIOutputDateDefinition = createInput(FUOutputDate, {
21
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "dateStyle", "timeStyle", "locale", "relative", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
21
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "dateStyle", "timeStyle", "locale", "relative", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
22
22
  family: "NuxtUIOutput"
23
23
  });
24
24
  export const nuxtUIOutputLinkDefinition = createInput(FUOutputLink, {
25
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "target", "rel", "underline", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
25
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "target", "rel", "underline", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
26
26
  family: "NuxtUIOutput"
27
27
  });
28
28
  export const nuxtUIOutputNumberDefinition = createInput(FUOutputNumber, {
29
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "locale", "formatOptions", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
29
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "locale", "formatOptions", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
30
30
  family: "NuxtUIOutput"
31
31
  });
32
32
  export const nuxtUIOutputListDefinition = createInput(FUOutputList, {
33
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "listType", "separator", "itemClass", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
33
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "listType", "separator", "itemClass", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "ui"],
34
34
  family: "NuxtUIOutput"
35
35
  });
36
36
  export const nuxtUIOutputProgressDefinition = createInput(FUOutputProgress, {
37
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "max", "status", "orientation", "animation", "ui"],
37
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "max", "status", "orientation", "animation", "ui"],
38
38
  family: "NuxtUIOutput"
39
39
  });
40
40
  export const nuxtUIOutputRatingDefinition = createInput(FUOutputRating, {
41
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "length", "emptyIcon", "orientation", "ui"],
41
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "length", "emptyIcon", "orientation", "ui"],
42
42
  family: "NuxtUIOutput"
43
43
  });
44
44
  export const nuxtUIOutputUserDefinition = createInput(FUOutputUser, {
45
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "orientation", "chip", "ui"],
45
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "orientation", "chip", "ui"],
46
46
  family: "NuxtUIOutput"
47
47
  });
48
48
  export const nuxtUIOutputBadgeDefinition = createInput(FUOutputBadge, {
49
- props: ["size", "color", "variant", "icon", "leadingIcon", "trailingIcon", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "badgeIcon", "square", "ui"],
49
+ props: ["size", "color", "variant", "icon", "iconTooltip", "leadingIcon", "leadingIconTooltip", "trailingIcon", "trailingIconTooltip", "leading", "trailing", "onIconClicked", "onLeadingIconClicked", "onTrailingIconClicked", "badgeIcon", "square", "ui"],
50
50
  family: "NuxtUIOutput"
51
51
  });
@@ -1,7 +1,9 @@
1
1
  import { defineNuxtPlugin } from "#app";
2
- import { UButton, UIcon, UTabs } from "#components";
2
+ import { UButton, UIcon, UTabs, UTooltip, UUser } from "#components";
3
3
  export default defineNuxtPlugin((_nuxtApp) => {
4
4
  _nuxtApp.vueApp.component("UButton", UButton);
5
5
  _nuxtApp.vueApp.component("UIcon", UIcon);
6
6
  _nuxtApp.vueApp.component("UTabs", UTabs);
7
+ _nuxtApp.vueApp.component("UUser", UUser);
8
+ _nuxtApp.vueApp.component("UTooltip", UTooltip);
7
9
  });
@@ -1,4 +1,5 @@
1
1
  import type { FormKitFrameworkContext } from '@formkit/core';
2
+ import type { FUIconTooltip } from '../components/output/FUIcon.vue.js';
2
3
  export interface FormKitOutputUi {
3
4
  /** Merged into `containerClass` - Output components have no themeable Nuxt UI root to forward to. */
4
5
  root?: string;
@@ -21,6 +22,8 @@ export declare function useFormKitOutput(context: FormKitFrameworkContext): {
21
22
  iconClass: import("vue").ComputedRef<string>;
22
23
  leadingIconName: import("vue").ComputedRef<string | null>;
23
24
  trailingIconName: import("vue").ComputedRef<string | null>;
25
+ leadingTooltip: import("vue").ComputedRef<FUIconTooltip | undefined>;
26
+ trailingTooltip: import("vue").ComputedRef<FUIconTooltip | undefined>;
24
27
  ui: import("vue").Ref<{
25
28
  root?: string
26
29
  /** Merged into `iconClass`, applied to every `FUIcon` an Output component renders. */
@@ -76,6 +76,18 @@ export function useFormKitOutput(context) {
76
76
  const icon = context.icon;
77
77
  return trailingIcon || trailing && icon || null;
78
78
  });
79
+ const leadingTooltip = computed(() => {
80
+ const leadingIconTooltip = context.leadingIconTooltip;
81
+ const leading = context.leading;
82
+ const iconTooltip = context.iconTooltip;
83
+ return leadingIconTooltip || leading && iconTooltip || void 0;
84
+ });
85
+ const trailingTooltip = computed(() => {
86
+ const trailingIconTooltip = context.trailingIconTooltip;
87
+ const trailing = context.trailing;
88
+ const iconTooltip = context.iconTooltip;
89
+ return trailingIconTooltip || trailing && iconTooltip || void 0;
90
+ });
79
91
  return {
80
92
  colorClass,
81
93
  sizeClass,
@@ -84,6 +96,8 @@ export function useFormKitOutput(context) {
84
96
  iconClass,
85
97
  leadingIconName,
86
98
  trailingIconName,
99
+ leadingTooltip,
100
+ trailingTooltip,
87
101
  ui
88
102
  };
89
103
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sfxcode/nuxt-ui-formkit",
3
- "version": "1.2.9",
3
+ "version": "1.2.11",
4
4
  "description": "FormKit integration for Nuxt UI - Seamlessly connect FormKit form handling with Nuxt UI components",
5
5
  "author": {
6
6
  "name": "Tom",
@@ -88,8 +88,8 @@
88
88
  "docs:preview": "vitepress preview docs"
89
89
  },
90
90
  "dependencies": {
91
- "@formkit/addons": "^2.1.0",
92
- "@formkit/nuxt": "^2.1.0",
91
+ "@formkit/addons": "^2.1.2",
92
+ "@formkit/nuxt": "^2.1.2",
93
93
  "@nuxt/ui": "^4.10.0",
94
94
  "@standard-schema/spec": "^1.1.0",
95
95
  "@vue/compiler-dom": "^3.5.40"
@@ -98,25 +98,25 @@
98
98
  "@codemirror/lang-json": "^6.0.2",
99
99
  "@codemirror/state": "^6.7.1",
100
100
  "@codemirror/theme-one-dark": "^6.1.3",
101
- "@codemirror/view": "^6.43.6",
101
+ "@codemirror/view": "^6.43.7",
102
102
  "@iconify-json/heroicons": "^1.2.3",
103
- "@iconify-json/lucide": "^1.2.118",
104
- "@iconify-json/simple-icons": "^1.2.91",
105
- "@nuxt/devtools": "4.0.0-alpha.7",
103
+ "@iconify-json/lucide": "^1.2.121",
104
+ "@iconify-json/simple-icons": "^1.2.93",
105
+ "@nuxt/devtools": "4.0.0-alpha.9",
106
106
  "@nuxt/eslint-config": "^1.16.0",
107
- "@nuxt/kit": "^4.5.0",
108
- "@nuxt/module-builder": "^1.0.2",
109
- "@nuxt/schema": "^4.5.0",
110
- "@nuxt/test-utils": "^4.0.3",
107
+ "@nuxt/kit": "^4.5.1",
108
+ "@nuxt/module-builder": "^1.0.3",
109
+ "@nuxt/schema": "^4.5.1",
110
+ "@nuxt/test-utils": "^4.1.0",
111
111
  "@types/node": "latest",
112
112
  "@vitejs/plugin-vue": "^6.0.8",
113
113
  "@vue/test-utils": "^2.4.11",
114
114
  "changelogen": "^0.6.2",
115
115
  "codemirror": "^6.0.2",
116
- "eslint": "^10.7.0",
117
- "jsdom": "^29.1.1",
116
+ "eslint": "^10.8.0",
117
+ "jsdom": "^30.0.1",
118
118
  "mkdist": "^2.4.1",
119
- "nuxt": "^4.5.0",
119
+ "nuxt": "^4.5.1",
120
120
  "sass-embedded": "^1.100.0",
121
121
  "typescript": "~6.0.3",
122
122
  "unbuild": "^3.6.1",
@@ -124,9 +124,9 @@
124
124
  "vitepress": "2.0.0-alpha.17",
125
125
  "vitest": "^4.1.10",
126
126
  "vue": "^3.5.40",
127
- "vue-i18n": "^11.4.7",
128
- "vue-tsc": "^3.3.7",
127
+ "vue-i18n": "^11.4.8",
128
+ "vue-tsc": "^3.3.9",
129
129
  "zod": "^4.4.3"
130
130
  },
131
- "packageManager": "pnpm@11.1.2+sha512.415a1cc25974731e75455c1468371be74c5aa5fb7621b50d4056d222451609f11412f23fd602e6169f1e060466641f798597e1be961a10688836a67b16569499"
131
+ "packageManager": "pnpm@11.17.0+sha512.cca3cea332ad254bb84145f966d19f4879615210346fc92c79a047f23a0d7b3cca3c3792f0076ba1f1831d277efbcf0a9119b31a9a60eca7fb3d6231f331ef72"
132
132
  }