@n8n/design-system 2.40.1 → 2.41.0

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 (45) hide show
  1. package/dist/components/N8nActionDropdown/ActionDropdown.types.d.ts +1 -0
  2. package/dist/components/N8nBadge/Badge.type.d.ts +13 -0
  3. package/dist/components/N8nBadge/Badge.vue.d.ts +10 -13
  4. package/dist/components/N8nBreadcrumbs/Breadcrumbs.vue.d.ts +1 -1
  5. package/dist/components/N8nButtonList/ButtonList.types.d.ts +2 -0
  6. package/dist/components/N8nButtonList/ButtonList.vue.d.ts +1 -0
  7. package/dist/components/N8nButtonList/index.d.ts +1 -1
  8. package/dist/components/N8nChatInput/ChatInput.vue.d.ts +2 -0
  9. package/dist/components/N8nContextMenu/ContextMenu.constants.d.ts +4 -0
  10. package/dist/components/N8nContextMenu/ContextMenu.types.d.ts +105 -0
  11. package/dist/components/N8nContextMenu/ContextMenu.utils.d.ts +5 -0
  12. package/dist/components/N8nContextMenu/ContextMenu.vue.d.ts +25 -0
  13. package/dist/components/N8nContextMenu/ContextMenuBody.vue.d.ts +23 -0
  14. package/dist/components/N8nContextMenu/ContextMenuItem.vue.d.ts +23 -0
  15. package/dist/components/N8nContextMenu/ContextMenuItemContent.vue.d.ts +26 -0
  16. package/dist/components/N8nContextMenu/ContextMenuNodes.vue.d.ts +21 -0
  17. package/dist/components/N8nContextMenu/index.d.ts +3 -0
  18. package/dist/components/N8nDialog/Dialog.vue.d.ts +1 -0
  19. package/dist/components/N8nDropdownMenu/DropdownMenu.types.d.ts +28 -0
  20. package/dist/components/N8nDropdownMenu/DropdownMenu.vue.d.ts +2 -0
  21. package/dist/components/N8nDropdownMenu/DropdownMenuItem.vue.d.ts +2 -1
  22. package/dist/components/N8nDropdownMenu/DropdownMenuItems.vue.d.ts +2 -1
  23. package/dist/components/N8nDropdownMenu/DropdownMenuSearchableContent.vue.d.ts +6 -2
  24. package/dist/components/N8nDropdownMenu/index.d.ts +1 -1
  25. package/dist/components/N8nIcon/icons.d.ts +3 -0
  26. package/dist/components/N8nMarkdownEditor/MarkdownEditor.types.d.ts +2 -0
  27. package/dist/components/N8nMarkdownEditor/MarkdownEditor.vue.d.ts +1 -0
  28. package/dist/components/N8nMarkdownEditor/MarkdownEditorExpandedViewButton.vue.d.ts +18 -0
  29. package/dist/components/N8nMarkdownEditor/MarkdownEditorToolbar.vue.d.ts +4 -0
  30. package/dist/components/N8nSelect/Select.vue.d.ts +2 -2
  31. package/dist/components/N8nSelectedItemsInfo/SelectedItemsInfo.vue.d.ts +22 -0
  32. package/dist/components/N8nSelectedItemsInfo/index.d.ts +3 -0
  33. package/dist/components/N8nTimeAgo/TimeAgo.vue.d.ts +12 -0
  34. package/dist/components/N8nTimeAgo/index.d.ts +3 -0
  35. package/dist/components/index.d.ts +12 -4
  36. package/dist/css/mixins/motion.scss +10 -0
  37. package/dist/{en-BVSQYf2U.js → en-CY7wsD9g.js} +11 -1
  38. package/dist/index.js +6517 -5220
  39. package/dist/style.css +1 -1
  40. package/dist/theme.css +1 -1
  41. package/dist/types/index.d.ts +0 -1
  42. package/package.json +7 -5
  43. package/dist/components/N8nActionPill/ActionPill.vue.d.ts +0 -32
  44. package/dist/types/badge.d.ts +0 -3
  45. /package/dist/components/{PreviewTag/PreviewTag.vue.d.ts → PreviewBadge/PreviewBadge.vue.d.ts} +0 -0
@@ -14,4 +14,5 @@ export interface ActionDropdownProps<T extends string = string> {
14
14
  maxHeight?: string | number;
15
15
  width?: string;
16
16
  modal?: boolean;
17
+ suppressCloseAutoFocus?: boolean;
17
18
  }
@@ -0,0 +1,13 @@
1
+ import { IconName } from '../N8nIcon';
2
+ export declare const BADGE_VARIANT: readonly ["filled", "primary", "secondary", "subtle", "outline", "ghost", "warning", "danger", "success", "info"];
3
+ export type BadgeVariant = (typeof BADGE_VARIANT)[number];
4
+ export interface BadgeProps {
5
+ variant?: BadgeVariant;
6
+ size?: BadgeSize;
7
+ clickable?: boolean;
8
+ disabled?: boolean;
9
+ leadingIcon?: IconName;
10
+ trailingIcon?: IconName;
11
+ }
12
+ export declare const BADGE_SIZE: readonly ["xxsmall", "xsmall", "small", "medium", "large", "xlarge"];
13
+ export type BadgeSize = (typeof BADGE_SIZE)[number];
@@ -1,19 +1,16 @@
1
- import { TextSize, BadgeTheme } from '../../types';
2
- interface BadgeProps {
3
- theme?: BadgeTheme;
4
- size?: TextSize;
5
- bold?: boolean;
6
- showBorder?: boolean;
7
- }
8
- declare var __VLS_7: {};
1
+ import { BadgeProps } from './Badge.type';
2
+ declare var __VLS_13: {}, __VLS_21: {}, __VLS_23: {};
9
3
  type __VLS_Slots = {} & {
10
- default?: (props: typeof __VLS_7) => any;
4
+ leading?: (props: typeof __VLS_13) => any;
5
+ } & {
6
+ default?: (props: typeof __VLS_21) => any;
7
+ } & {
8
+ trailing?: (props: typeof __VLS_23) => any;
11
9
  };
12
10
  declare const __VLS_base: import('vue').DefineComponent<BadgeProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<BadgeProps> & Readonly<{}>, {
13
- bold: boolean;
14
- size: TextSize;
15
- theme: BadgeTheme;
16
- showBorder: boolean;
11
+ size: import('./Badge.type').BadgeSize;
12
+ variant: import('./Badge.type').BadgeVariant;
13
+ clickable: boolean;
17
14
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
18
15
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
19
16
  declare const _default: typeof __VLS_export;
@@ -37,8 +37,8 @@ declare const __VLS_base: import('vue').DefineComponent<Props, {}, {}, {}, {}, i
37
37
  onItemDrop?: ((item: PathItem) => any) | undefined;
38
38
  }>, {
39
39
  theme: "small" | "medium";
40
- showBorder: boolean;
41
40
  separator: string;
41
+ showBorder: boolean;
42
42
  hiddenItems: PathItem[] | Promise<PathItem[]>;
43
43
  loadingSkeletonRows: number;
44
44
  highlightLastItem: boolean;
@@ -1,4 +1,6 @@
1
1
  export type ButtonListOrientation = 'horizontal' | 'vertical';
2
+ export type ButtonListVariant = 'default' | 'toolbar';
2
3
  export type ButtonListProps = {
3
4
  orientation?: ButtonListOrientation;
5
+ variant?: ButtonListVariant;
4
6
  };
@@ -4,6 +4,7 @@ type __VLS_Slots = {} & {
4
4
  default?: (props: typeof __VLS_1) => any;
5
5
  };
6
6
  declare const __VLS_base: import('vue').DefineComponent<ButtonListProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {}, string, import('vue').PublicProps, Readonly<ButtonListProps> & Readonly<{}>, {
7
+ variant: import('./ButtonList.types').ButtonListVariant;
7
8
  orientation: import('./ButtonList.types').ButtonListOrientation;
8
9
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
9
10
  declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
@@ -1,3 +1,3 @@
1
1
  import { default as N8nButtonList } from './ButtonList.vue';
2
- export type { ButtonListOrientation, ButtonListProps } from './ButtonList.types';
2
+ export type { ButtonListOrientation, ButtonListProps, ButtonListVariant } from './ButtonList.types';
3
3
  export default N8nButtonList;
@@ -22,6 +22,7 @@ export interface N8nChatInputProps {
22
22
  stopButtonTestId?: string;
23
23
  }
24
24
  declare function focusInput(options?: FocusOptions): void;
25
+ declare function getInputElement(): HTMLTextAreaElement | undefined;
25
26
  declare var __VLS_8: {}, __VLS_16: {}, __VLS_18: {}, __VLS_20: {}, __VLS_22: {}, __VLS_32: {};
26
27
  type __VLS_Slots = {} & {
27
28
  leading?: (props: typeof __VLS_8) => any;
@@ -38,6 +39,7 @@ type __VLS_Slots = {} & {
38
39
  };
39
40
  declare const __VLS_base: import('vue').DefineComponent<N8nChatInputProps, {
40
41
  focusInput: typeof focusInput;
42
+ getInputElement: typeof getInputElement;
41
43
  }, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
42
44
  focus: (event: FocusEvent) => any;
43
45
  stop: () => any;
@@ -0,0 +1,4 @@
1
+ export declare const COLLISION_PADDING_PX = 8;
2
+ export declare const ITEMS_PADDING_PX = 4;
3
+ export declare const SUBMENU_ALIGN_OFFSET_PX: number;
4
+ export declare const SUBMENU_SIDE_OFFSET_PX = 1;
@@ -0,0 +1,105 @@
1
+ import { ClassValue } from 'clsx';
2
+ import { ComputedRef, InjectionKey } from 'vue';
3
+ import { KeyboardShortcut } from '../../types/keyboardshortcut';
4
+ import { IconOrEmoji } from '../N8nIconPicker/types';
5
+ export type ContextMenuId = string;
6
+ type ContextMenuLeafBase<T extends ContextMenuId = ContextMenuId> = {
7
+ id: T;
8
+ label: string;
9
+ icon?: IconOrEmoji;
10
+ shortcut?: KeyboardShortcut;
11
+ disabled?: boolean;
12
+ class?: ClassValue;
13
+ };
14
+ type ContextMenuSectionBase<T extends ContextMenuId = ContextMenuId> = {
15
+ id: T;
16
+ label?: string;
17
+ class?: ClassValue;
18
+ };
19
+ export type ContextMenuItem<T extends ContextMenuId = ContextMenuId> = ContextMenuLeafBase<T> & {
20
+ type: 'item';
21
+ keepOpen?: boolean;
22
+ variant?: 'default' | 'destructive';
23
+ };
24
+ export type ContextMenuRadio<T extends ContextMenuId = ContextMenuId> = ContextMenuLeafBase<T> & {
25
+ type: 'radio';
26
+ };
27
+ export type ContextMenuCheckbox<T extends ContextMenuId = ContextMenuId> = ContextMenuLeafBase<T> & {
28
+ type: 'checkbox';
29
+ };
30
+ export type ContextMenuGroup<T extends ContextMenuId = ContextMenuId> = ContextMenuSectionBase<T> & {
31
+ type: 'group';
32
+ children: Array<ContextMenuNode<T>>;
33
+ };
34
+ export type ContextMenuSubmenu<T extends ContextMenuId = ContextMenuId> = ContextMenuLeafBase<T> & {
35
+ type: 'submenu';
36
+ children: Array<ContextMenuNode<T>>;
37
+ loading?: boolean;
38
+ loadingItemCount?: number;
39
+ };
40
+ export type ContextMenuRadioGroup<T extends ContextMenuId = ContextMenuId> = ContextMenuSectionBase<T> & {
41
+ type: 'radio-group';
42
+ children: Array<ContextMenuRadio<T>>;
43
+ };
44
+ export type ContextMenuNode<T extends ContextMenuId = ContextMenuId> = ContextMenuItem<T> | ContextMenuCheckbox<T> | ContextMenuGroup<T> | ContextMenuSubmenu<T> | ContextMenuRadioGroup<T>;
45
+ export type ContextMenuLeaf<T extends ContextMenuId = ContextMenuId> = ContextMenuItem<T> | ContextMenuRadio<T> | ContextMenuCheckbox<T> | ContextMenuSubmenu<T>;
46
+ export type ContextMenuProps<T extends ContextMenuId = ContextMenuId> = {
47
+ id?: string;
48
+ items: Array<ContextMenuNode<T>>;
49
+ selectedValues?: T[];
50
+ defaultSelectedValues?: T[];
51
+ disabled?: boolean;
52
+ loading?: boolean;
53
+ loadingItemCount?: number;
54
+ contentClass?: ClassValue;
55
+ modal?: boolean;
56
+ };
57
+ export type ContextMenuEmits<T extends ContextMenuId = ContextMenuId> = {
58
+ (e: 'update:open', open: boolean): void;
59
+ (e: 'update:selectedValues', value: T[]): void;
60
+ (e: 'select', value: T): void;
61
+ (e: 'submenu:toggle', itemId: T, open: boolean): void;
62
+ (e: 'close-auto-focus', event: Event): void;
63
+ };
64
+ type SlotUiProps = {
65
+ class: string;
66
+ };
67
+ export type ContextMenuSlots<T extends ContextMenuId = ContextMenuId> = {
68
+ trigger: () => void;
69
+ item?: (props: {
70
+ item: ContextMenuLeaf<T>;
71
+ }) => void;
72
+ ['item-leading']?: (props: {
73
+ item: ContextMenuLeaf<T>;
74
+ ui: SlotUiProps;
75
+ }) => void;
76
+ ['item-label']?: (props: {
77
+ item: ContextMenuLeaf<T>;
78
+ ui: SlotUiProps;
79
+ }) => void;
80
+ ['item-trailing']?: (props: {
81
+ item: ContextMenuLeaf<T>;
82
+ ui: SlotUiProps;
83
+ }) => void;
84
+ loading?: () => void;
85
+ empty?: () => void;
86
+ };
87
+ export type ContextMenuItemProps<T extends ContextMenuId = ContextMenuId> = {
88
+ item: ContextMenuLeaf<T>;
89
+ };
90
+ export type ContextMenuItemEmits<T extends ContextMenuId = ContextMenuId> = {
91
+ (e: 'select', value: T): void;
92
+ (e: 'toggle-checkbox', id: T): void;
93
+ (e: 'submenu:toggle', open: boolean): void;
94
+ };
95
+ export type ContextMenuItemSlots<T extends ContextMenuId = ContextMenuId> = Pick<ContextMenuSlots<T>, 'item' | 'item-leading' | 'item-label' | 'item-trailing' | 'empty'>;
96
+ export type ContextMenuState = {
97
+ selectedValues: Pick<ComputedRef<readonly string[]>, 'value'>;
98
+ contentClass: Pick<ComputedRef<ClassValue | undefined>, 'value'>;
99
+ onSelect(id: string): void;
100
+ onToggleCheckbox(id: string): void;
101
+ onSelectRadio(groupId: string, radioId: string): void;
102
+ onSubmenuToggle(itemId: string, open: boolean): void;
103
+ };
104
+ export declare const contextMenuStateKey: InjectionKey<ContextMenuState>;
105
+ export {};
@@ -0,0 +1,5 @@
1
+ import { ContextMenuId, ContextMenuNode, ContextMenuRadioGroup } from './ContextMenu.types';
2
+ export declare function findRadioGroup<T extends ContextMenuId>(nodes: Array<ContextMenuNode<T>>, groupId: T): ContextMenuRadioGroup<T> | undefined;
3
+ export declare function applyRadioSelection<T extends ContextMenuId>(selected: T[], radioIdsInGroup: T[], radioId: T): T[];
4
+ export declare function applyCheckboxToggle<T extends ContextMenuId>(selected: T[], id: T): T[];
5
+ export declare function radioGroupValue<T extends ContextMenuId>(group: ContextMenuRadioGroup<T>, selected: readonly string[]): T | undefined;
@@ -0,0 +1,25 @@
1
+ import { ContextMenuEmits, ContextMenuId, ContextMenuProps, ContextMenuSlots } from './ContextMenu.types';
2
+ declare const __VLS_export: <T extends ContextMenuId = ContextMenuId>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
+ props: import('vue').PublicProps & __VLS_PrettifyLocal<ContextMenuProps<T> & {
4
+ onSelect?: ((value: T) => any) | undefined;
5
+ "onUpdate:open"?: ((open: boolean) => any) | undefined;
6
+ "onSubmenu:toggle"?: ((itemId: T, open: boolean) => any) | undefined;
7
+ "onClose-auto-focus"?: ((event: Event) => any) | undefined;
8
+ "onUpdate:selectedValues"?: ((value: T[]) => any) | undefined;
9
+ }> & (typeof globalThis extends {
10
+ __VLS_PROPS_FALLBACK: infer P;
11
+ } ? P : {});
12
+ expose: (exposed: {}) => void;
13
+ attrs: any;
14
+ slots: ContextMenuSlots<T>;
15
+ emit: ContextMenuEmits<T>;
16
+ }>) => import('vue').VNode & {
17
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
18
+ };
19
+ declare const _default: typeof __VLS_export;
20
+ export default _default;
21
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
22
+ [K in keyof T]: T[K];
23
+ } : {
24
+ [K in keyof T as K]: T[K];
25
+ }) & {};
@@ -0,0 +1,23 @@
1
+ import { ContextMenuId, ContextMenuNode, ContextMenuSlots } from './ContextMenu.types';
2
+ declare const __VLS_export: <T extends ContextMenuId = ContextMenuId>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
+ props: import('vue').PublicProps & __VLS_PrettifyLocal<{
4
+ nodes: Array<ContextMenuNode<T>>;
5
+ loading?: boolean;
6
+ loadingItemCount?: number;
7
+ }> & (typeof globalThis extends {
8
+ __VLS_PROPS_FALLBACK: infer P;
9
+ } ? P : {});
10
+ expose: (exposed: {}) => void;
11
+ attrs: any;
12
+ slots: Omit<ContextMenuSlots<T>, "trigger">;
13
+ emit: {};
14
+ }>) => import('vue').VNode & {
15
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
16
+ };
17
+ declare const _default: typeof __VLS_export;
18
+ export default _default;
19
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
20
+ [K in keyof T]: T[K];
21
+ } : {
22
+ [K in keyof T as K]: T[K];
23
+ }) & {};
@@ -0,0 +1,23 @@
1
+ import { ContextMenuId, ContextMenuItemEmits, ContextMenuItemProps, ContextMenuItemSlots } from './ContextMenu.types';
2
+ declare const __VLS_export: <T extends ContextMenuId = ContextMenuId>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
+ props: import('vue').PublicProps & __VLS_PrettifyLocal<ContextMenuItemProps<T> & {
4
+ onSelect?: ((value: T) => any) | undefined;
5
+ "onSubmenu:toggle"?: ((open: boolean) => any) | undefined;
6
+ "onToggle-checkbox"?: ((id: T) => any) | undefined;
7
+ }> & (typeof globalThis extends {
8
+ __VLS_PROPS_FALLBACK: infer P;
9
+ } ? P : {});
10
+ expose: (exposed: {}) => void;
11
+ attrs: any;
12
+ slots: ContextMenuItemSlots<T>;
13
+ emit: ContextMenuItemEmits<T>;
14
+ }>) => import('vue').VNode & {
15
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
16
+ };
17
+ declare const _default: typeof __VLS_export;
18
+ export default _default;
19
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
20
+ [K in keyof T]: T[K];
21
+ } : {
22
+ [K in keyof T as K]: T[K];
23
+ }) & {};
@@ -0,0 +1,26 @@
1
+ import { ContextMenuId, ContextMenuItemSlots, ContextMenuLeaf } from './ContextMenu.types';
2
+ import { IconColor } from '../../types/icon';
3
+ import { TextColor } from '../../types/text';
4
+ declare const __VLS_export: <T extends ContextMenuId = ContextMenuId>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
5
+ props: import('vue').PublicProps & __VLS_PrettifyLocal<{
6
+ item: ContextMenuLeaf<T>;
7
+ textColor?: TextColor;
8
+ iconColor: IconColor | (string & {});
9
+ title?: string;
10
+ }> & (typeof globalThis extends {
11
+ __VLS_PROPS_FALLBACK: infer P;
12
+ } ? P : {});
13
+ expose: (exposed: {}) => void;
14
+ attrs: any;
15
+ slots: Pick<ContextMenuItemSlots<T>, "item-leading" | "item-label" | "item-trailing">;
16
+ emit: {};
17
+ }>) => import('vue').VNode & {
18
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
19
+ };
20
+ declare const _default: typeof __VLS_export;
21
+ export default _default;
22
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
23
+ [K in keyof T]: T[K];
24
+ } : {
25
+ [K in keyof T as K]: T[K];
26
+ }) & {};
@@ -0,0 +1,21 @@
1
+ import { ContextMenuId, ContextMenuItemSlots, ContextMenuNode } from './ContextMenu.types';
2
+ declare const __VLS_export: <T extends ContextMenuId = ContextMenuId>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
+ props: import('vue').PublicProps & __VLS_PrettifyLocal<{
4
+ nodes: Array<ContextMenuNode<T>>;
5
+ }> & (typeof globalThis extends {
6
+ __VLS_PROPS_FALLBACK: infer P;
7
+ } ? P : {});
8
+ expose: (exposed: {}) => void;
9
+ attrs: any;
10
+ slots: ContextMenuItemSlots<T>;
11
+ emit: {};
12
+ }>) => import('vue').VNode & {
13
+ __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
14
+ };
15
+ declare const _default: typeof __VLS_export;
16
+ export default _default;
17
+ type __VLS_PrettifyLocal<T> = (T extends any ? {
18
+ [K in keyof T]: T[K];
19
+ } : {
20
+ [K in keyof T as K]: T[K];
21
+ }) & {};
@@ -0,0 +1,3 @@
1
+ export { default as N8nContextMenu } from './ContextMenu.vue';
2
+ export { default as N8nContextMenuItem } from './ContextMenuItem.vue';
3
+ export type { ContextMenuId, ContextMenuItem, ContextMenuRadio, ContextMenuCheckbox, ContextMenuGroup, ContextMenuSubmenu, ContextMenuRadioGroup, ContextMenuNode, ContextMenuLeaf, ContextMenuProps, ContextMenuEmits, ContextMenuSlots, ContextMenuItemProps, ContextMenuItemEmits, ContextMenuItemSlots, } from './ContextMenu.types';
@@ -13,6 +13,7 @@ export interface DialogProps {
13
13
  header?: string;
14
14
  description?: string;
15
15
  stacked?: boolean;
16
+ containerClass?: string;
16
17
  }
17
18
  export interface DialogEmits {
18
19
  escapeKeyDown: [event: KeyboardEvent];
@@ -1,12 +1,34 @@
1
+ import { DropdownMenuContentProps } from 'reka-ui';
1
2
  import { InjectionKey, Ref } from 'vue';
2
3
  import { IconOrEmoji } from '../N8nIconPicker/types';
3
4
  export declare const DropdownMenuPortalTargetKey: InjectionKey<Ref<string | HTMLElement | undefined>>;
4
5
  export declare const DropdownMenuSubMaxHeightKey: InjectionKey<Ref<string | undefined>>;
6
+ export declare const DropdownMenuWidthKey: InjectionKey<Ref<string>>;
7
+ export interface DropdownMenuExternalNavigationController {
8
+ handleExternalKeydown: (event: KeyboardEvent) => boolean;
9
+ highlightFirstItem: () => void;
10
+ getActiveDescendantId: () => string | undefined;
11
+ }
12
+ export interface DropdownMenuExternalNavigationContext {
13
+ register: (controller: DropdownMenuExternalNavigationController) => () => void;
14
+ activate: (controller: DropdownMenuExternalNavigationController) => void;
15
+ focusTarget: () => void;
16
+ syncActiveDescendant: () => void;
17
+ }
18
+ export declare const DropdownMenuExternalNavigationKey: InjectionKey<DropdownMenuExternalNavigationContext>;
5
19
  type VueCssClass = undefined | string | Record<string, boolean> | Array<string | VueCssClass>;
6
20
  export type DropdownMenuPlacement = 'top' | 'top-start' | 'top-end' | 'bottom' | 'bottom-start' | 'bottom-end' | 'left' | 'left-start' | 'left-end' | 'right' | 'right-start' | 'right-end';
7
21
  export type DropdownMenuSide = 'top' | 'bottom' | 'left' | 'right';
8
22
  export type DropdownMenuAlign = 'start' | 'end' | 'center';
9
23
  export type DropdownMenuTrigger = 'click' | 'hover';
24
+ export type DropdownMenuSearchMode = 'internal' | 'external';
25
+ export interface DropdownMenuExposed {
26
+ open: () => void;
27
+ close: () => void;
28
+ highlightFirstItem: () => void;
29
+ handleExternalKeydown: (event: KeyboardEvent) => boolean;
30
+ focusTrigger: () => void;
31
+ }
10
32
  export type DropdownMenuItemProps<T = string, D = never> = {
11
33
  id: T;
12
34
  testId?: string;
@@ -16,6 +38,7 @@ export type DropdownMenuItemProps<T = string, D = never> = {
16
38
  divided?: boolean;
17
39
  checked?: boolean;
18
40
  keepOpen?: boolean;
41
+ suppressCloseAutoFocus?: boolean;
19
42
  header?: boolean;
20
43
  checkbox?: boolean;
21
44
  class?: VueCssClass;
@@ -23,6 +46,7 @@ export type DropdownMenuItemProps<T = string, D = never> = {
23
46
  loading?: boolean;
24
47
  loadingItemCount?: number;
25
48
  searchable?: boolean;
49
+ selectable?: boolean;
26
50
  searchPlaceholder?: string;
27
51
  highlighted?: boolean;
28
52
  subMenuOpen?: boolean;
@@ -33,7 +57,9 @@ export interface DropdownMenuProps<T = string, D = never> {
33
57
  id?: string;
34
58
  contentTestId?: string;
35
59
  portalTarget?: string | HTMLElement;
60
+ reference?: DropdownMenuContentProps['reference'];
36
61
  modal?: boolean;
62
+ suppressCloseAutoFocus?: boolean;
37
63
  items: Array<DropdownMenuItemProps<T, D>>;
38
64
  modelValue?: boolean;
39
65
  defaultOpen?: boolean;
@@ -50,6 +76,8 @@ export interface DropdownMenuProps<T = string, D = never> {
50
76
  extraPopperClass?: string;
51
77
  dataTestId?: string;
52
78
  searchable?: boolean;
79
+ searchMode?: DropdownMenuSearchMode;
80
+ externalFocusTarget?: HTMLInputElement | HTMLTextAreaElement | null;
53
81
  searchPlaceholder?: string;
54
82
  searchDebounce?: number;
55
83
  emptyText?: string;
@@ -13,6 +13,8 @@ declare const __VLS_export: <T = string, D = never>(__VLS_props: NonNullable<Awa
13
13
  open: () => void;
14
14
  close: () => void;
15
15
  highlightFirstItem: () => void;
16
+ handleExternalKeydown: (event: KeyboardEvent) => boolean;
17
+ focusTrigger: () => void;
16
18
  }>) => void;
17
19
  attrs: any;
18
20
  slots: DropdownMenuSlots<T, D>;
@@ -1,9 +1,10 @@
1
- import { DropdownMenuItemProps, DropdownMenuItemSlots } from './DropdownMenu.types';
1
+ import { DropdownMenuItemProps, DropdownMenuItemSlots, DropdownMenuSearchMode } from './DropdownMenu.types';
2
2
  declare const __VLS_export: <T = string, D = never>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
3
  props: import('vue').PublicProps & __VLS_PrettifyLocal<(DropdownMenuItemProps<T, D> & {
4
4
  htmlId?: string;
5
5
  disablePointerFocus?: boolean;
6
6
  closeOnSelect?: boolean;
7
+ searchMode?: DropdownMenuSearchMode;
7
8
  }) & {
8
9
  onSearch?: ((searchTerm: string, itemId: T) => any) | undefined;
9
10
  onSelect?: ((value: T) => any) | undefined;
@@ -1,4 +1,4 @@
1
- import { DropdownMenuItemProps, DropdownMenuSlots } from './DropdownMenu.types';
1
+ import { DropdownMenuItemProps, DropdownMenuSearchMode, DropdownMenuSlots } from './DropdownMenu.types';
2
2
  declare const __VLS_export: <T = string, D = never>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
3
  props: import('vue').PublicProps & __VLS_PrettifyLocal<{
4
4
  items: Array<DropdownMenuItemProps<T, D>>;
@@ -10,6 +10,7 @@ declare const __VLS_export: <T = string, D = never>(__VLS_props: NonNullable<Awa
10
10
  getItemDomId?: (index: number) => string;
11
11
  onItemHover?: (index: number) => void;
12
12
  disablePointerFocus?: boolean;
13
+ searchMode?: DropdownMenuSearchMode;
13
14
  } & {
14
15
  onSearch?: ((searchTerm: string, itemId: T) => any) | undefined;
15
16
  onSelect?: ((value: T) => any) | undefined;
@@ -1,15 +1,19 @@
1
- import { DropdownMenuItemProps, DropdownMenuSlots } from './DropdownMenu.types';
1
+ import { DropdownMenuItemProps, DropdownMenuSearchMode, DropdownMenuSlots } from './DropdownMenu.types';
2
2
  declare const __VLS_export: <T = string, D = never>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
3
3
  props: import('vue').PublicProps & __VLS_PrettifyLocal<{
4
4
  open: boolean;
5
5
  items: Array<DropdownMenuItemProps<T, D>>;
6
6
  searchPlaceholder?: string;
7
7
  searchDebounce?: number;
8
+ searchMode?: DropdownMenuSearchMode;
9
+ isSubMenu?: boolean;
10
+ highlightFirstItemOnOpen?: boolean;
8
11
  } & {
9
12
  onSearch?: ((searchTerm: string, itemId?: T | undefined) => any) | undefined;
10
13
  onSelect?: ((value: T) => any) | undefined;
11
14
  onClose?: (() => any) | undefined;
12
15
  "onSubmenu:toggle"?: ((itemId: T, open: boolean) => any) | undefined;
16
+ onBack?: (() => any) | undefined;
13
17
  }> & (typeof globalThis extends {
14
18
  __VLS_PROPS_FALLBACK: infer P;
15
19
  } ? P : {});
@@ -28,7 +32,7 @@ declare const __VLS_export: <T = string, D = never>(__VLS_props: NonNullable<Awa
28
32
  getItemDomId: (index: number) => string;
29
33
  }) => void;
30
34
  };
31
- emit: ((evt: "search", searchTerm: string, itemId?: T | undefined) => void) & ((evt: "select", value: T) => void) & ((evt: "close") => void) & ((evt: "submenu:toggle", itemId: T, open: boolean) => void);
35
+ emit: ((evt: "search", searchTerm: string, itemId?: T | undefined) => void) & ((evt: "select", value: T) => void) & ((evt: "close") => void) & ((evt: "submenu:toggle", itemId: T, open: boolean) => void) & ((evt: "back") => void);
32
36
  }>) => import('vue').VNode & {
33
37
  __ctx?: NonNullable<Awaited<typeof __VLS_setup>>;
34
38
  };
@@ -1,4 +1,4 @@
1
1
  export { default as N8nDropdownMenu } from './DropdownMenu.vue';
2
2
  export { default as N8nDropdownMenuItem } from './DropdownMenuItem.vue';
3
3
  export { useDropdownSearch } from './composables/useDropdownSearch';
4
- export type { DropdownMenuProps, DropdownMenuItemProps, DropdownMenuSlots, DropdownMenuItemSlots, DropdownMenuEmits, DropdownMenuTrigger, DropdownMenuPlacement, } from './DropdownMenu.types';
4
+ export type { DropdownMenuProps, DropdownMenuItemProps, DropdownMenuSlots, DropdownMenuItemSlots, DropdownMenuEmits, DropdownMenuExposed, DropdownMenuSearchMode, DropdownMenuTrigger, DropdownMenuPlacement, } from './DropdownMenu.types';
@@ -20,6 +20,7 @@ export declare const deprecatedIconSet: {
20
20
  readonly linear: string;
21
21
  readonly telegram: string;
22
22
  readonly discord: string;
23
+ readonly teams: string;
23
24
  readonly spinner: string;
24
25
  readonly xmark: import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
25
26
  readonly mcp: string;
@@ -236,6 +237,7 @@ export declare const updatedIconSet: {
236
237
  readonly linear: string;
237
238
  readonly telegram: string;
238
239
  readonly discord: string;
240
+ readonly teams: string;
239
241
  readonly spinner: string;
240
242
  readonly 'node-dirty': string;
241
243
  readonly 'node-ellipsis': string;
@@ -270,6 +272,7 @@ export declare const updatedIconSet: {
270
272
  readonly bold: import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
271
273
  readonly book: import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
272
274
  readonly 'book-open': import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
275
+ readonly bookmark: import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
273
276
  readonly bot: import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
274
277
  readonly box: import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
275
278
  readonly brain: import('vue').FunctionalComponent<import('vue').SVGAttributes, {}, any, {}>;
@@ -10,6 +10,8 @@ export type N8nMarkdownEditorProps = {
10
10
  showToolbar?: MarkdownEditorToolbarMode;
11
11
  maxHeight?: string | number;
12
12
  isCollapsible?: boolean;
13
+ allowExpandedView?: boolean;
14
+ expandedViewToolbarMode?: MarkdownEditorToolbarMode;
13
15
  extensions?: Extension[];
14
16
  editorProps?: EditorOptions['editorProps'];
15
17
  containerClass?: string;
@@ -33,6 +33,7 @@ declare const __VLS_export: import('vue').DefineComponent<N8nMarkdownEditorProps
33
33
  containerClass: string;
34
34
  showToolbar: import('./MarkdownEditor.types').MarkdownEditorToolbarMode;
35
35
  isCollapsible: boolean;
36
+ allowExpandedView: boolean;
36
37
  }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
37
38
  declare const _default: typeof __VLS_export;
38
39
  export default _default;
@@ -0,0 +1,18 @@
1
+ import { ButtonVariant } from '../../types/button';
2
+ import { IconSize } from '../../types/icon';
3
+ type __VLS_Props = {
4
+ isExpandedView?: boolean;
5
+ variant?: ButtonVariant;
6
+ iconSize?: IconSize;
7
+ };
8
+ declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
9
+ toggle: () => any;
10
+ }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
11
+ onToggle?: (() => any) | undefined;
12
+ }>, {
13
+ variant: ButtonVariant;
14
+ iconSize: IconSize;
15
+ isExpandedView: boolean;
16
+ }, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
17
+ declare const _default: typeof __VLS_export;
18
+ export default _default;
@@ -6,11 +6,15 @@ type __VLS_Props = {
6
6
  isRawMode?: boolean;
7
7
  mode: Exclude<MarkdownEditorToolbarMode, 'never'>;
8
8
  variant: MarkdownEditorVariant;
9
+ allowExpandedView?: boolean;
10
+ isExpandedView?: boolean;
9
11
  };
10
12
  declare const __VLS_export: import('vue').DefineComponent<__VLS_Props, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
11
13
  "update:isRawMode": (value: boolean) => any;
14
+ "toggle-expanded-view": () => any;
12
15
  }, string, import('vue').PublicProps, Readonly<__VLS_Props> & Readonly<{
13
16
  "onUpdate:isRawMode"?: ((value: boolean) => any) | undefined;
17
+ "onToggle-expanded-view"?: (() => any) | undefined;
14
18
  }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
15
19
  declare const _default: typeof __VLS_export;
16
20
  export default _default;
@@ -128,7 +128,7 @@ declare const __VLS_base: import('vue').DefineComponent<import('vue').ExtractPro
128
128
  type: PropType<string | import('vue').Component<any, any, any, import('vue').ComputedOptions, import('vue').MethodOptions, {}, any> | undefined>;
129
129
  };
130
130
  tagType: {
131
- type: PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "info" | "success" | "warning" | "danger", unknown> | undefined>;
131
+ type: PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "info" | "danger" | "success" | "warning", unknown> | undefined>;
132
132
  };
133
133
  remoteShowSuffix: {
134
134
  type: PropType<boolean | undefined>;
@@ -255,7 +255,7 @@ declare const __VLS_base: import('vue').DefineComponent<import('vue').ExtractPro
255
255
  type: PropType<string | import('vue').Component<any, any, any, import('vue').ComputedOptions, import('vue').MethodOptions, {}, any> | undefined>;
256
256
  };
257
257
  tagType: {
258
- type: PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "info" | "success" | "warning" | "danger", unknown> | undefined>;
258
+ type: PropType<import('element-plus/es/utils/index.mjs').EpPropMergeType<StringConstructor, "" | "info" | "danger" | "success" | "warning", unknown> | undefined>;
259
259
  };
260
260
  remoteShowSuffix: {
261
261
  type: PropType<boolean | undefined>;
@@ -0,0 +1,22 @@
1
+ export interface SelectedItemsInfoProps {
2
+ selectedCount: number;
3
+ }
4
+ declare var __VLS_1: {};
5
+ type __VLS_Slots = {} & {
6
+ actions?: (props: typeof __VLS_1) => any;
7
+ };
8
+ declare const __VLS_base: import('vue').DefineComponent<SelectedItemsInfoProps, {}, {}, {}, {}, import('vue').ComponentOptionsMixin, import('vue').ComponentOptionsMixin, {
9
+ deleteSelected: () => any;
10
+ clearSelection: () => any;
11
+ }, string, import('vue').PublicProps, Readonly<SelectedItemsInfoProps> & Readonly<{
12
+ onDeleteSelected?: (() => any) | undefined;
13
+ onClearSelection?: (() => any) | undefined;
14
+ }>, {}, {}, {}, {}, string, import('vue').ComponentProvideOptions, false, {}, any>;
15
+ declare const __VLS_export: __VLS_WithSlots<typeof __VLS_base, __VLS_Slots>;
16
+ declare const _default: typeof __VLS_export;
17
+ export default _default;
18
+ type __VLS_WithSlots<T, S> = T & {
19
+ new (): {
20
+ $slots: S;
21
+ };
22
+ };
@@ -0,0 +1,3 @@
1
+ import { default as N8nSelectedItemsInfo } from './SelectedItemsInfo.vue';
2
+ export default N8nSelectedItemsInfo;
3
+ export type { SelectedItemsInfoProps } from './SelectedItemsInfo.vue';