@lumx/vue 4.6.0 → 4.7.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.
@@ -0,0 +1,7 @@
1
+ import { ChipGroupProps as UIProps } from '@lumx/core/js/components/Chip/ChipGroup';
2
+ import { VueToJSXProps } from '../../utils/VueToJSX';
3
+ export type ChipGroupProps = VueToJSXProps<UIProps, never>;
4
+ declare const ChipGroup: import('vue').DefineSetupFnComponent<ChipGroupProps, {}, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children"> & {
5
+ class?: string;
6
+ } & {}, import('vue').PublicProps>;
7
+ export default ChipGroup;
@@ -0,0 +1,12 @@
1
+ declare const _default: {
2
+ component: any;
3
+ args: Partial<import('@lumx/core/js/components/Chip/ChipGroup').ChipGroupProps>;
4
+ title: string;
5
+ };
6
+ export default _default;
7
+ export declare const Default: {
8
+ render: () => import("vue/jsx-runtime").JSX.Element;
9
+ };
10
+ export declare const Small: {
11
+ render: () => import("vue/jsx-runtime").JSX.Element;
12
+ };
@@ -1 +1,2 @@
1
1
  export { default as Chip, type ChipProps } from './Chip';
2
+ export { default as ChipGroup, type ChipGroupProps } from './ChipGroup';
@@ -26,8 +26,16 @@ declare const _default: {
26
26
  handleClose?: (() => void) | undefined;
27
27
  className?: string | undefined;
28
28
  theme?: import('../..').Theme | undefined;
29
+ closeMode?: "hide" | "unmount" | undefined;
29
30
  };
30
31
  argTypes: {
32
+ closeMode: {
33
+ control: {
34
+ type: "select" | "inline-radio";
35
+ };
36
+ options: string[];
37
+ mapping: Record<string, string> | undefined;
38
+ };
31
39
  isOpen: {
32
40
  control: string;
33
41
  };
@@ -14,3 +14,13 @@ export default _default;
14
14
  export declare const TestUpdatingChildrenAndMovingAnchor: {
15
15
  render(): import("vue/jsx-runtime").JSX.Element;
16
16
  };
17
+ /** Test: closeMode="hide" keeps the popover in the DOM but hidden when closed */
18
+ export declare const TestCloseModeHide: {
19
+ render: () => () => import("vue/jsx-runtime").JSX.Element;
20
+ play({ userEvent }: any): Promise<void>;
21
+ };
22
+ /** Test: closeMode="unmount" removes the popover from the DOM when closed (default) */
23
+ export declare const TestCloseModeUnmount: {
24
+ render: () => () => import("vue/jsx-runtime").JSX.Element;
25
+ play({ userEvent }: any): Promise<void>;
26
+ };
@@ -8,6 +8,13 @@ declare const _default: {
8
8
  };
9
9
  tags: string[];
10
10
  argTypes: {
11
+ closeMode: {
12
+ control: {
13
+ type: "select" | "inline-radio";
14
+ };
15
+ options: string[];
16
+ mapping: Record<string, string> | undefined;
17
+ };
11
18
  anchorRef: {
12
19
  control: boolean;
13
20
  };
@@ -65,6 +65,30 @@ export declare const TestCloseEscapeWithTooltip: {
65
65
  };
66
66
  play({ userEvent }: any): Promise<void>;
67
67
  };
68
+ /** Test: closeMode="hide" — focus is trapped within the popover dialog */
69
+ export declare const TestTrapFocusCloseModeHide: {
70
+ args: {
71
+ label: string;
72
+ closeMode: "hide";
73
+ };
74
+ play({ userEvent }: any): Promise<void>;
75
+ };
76
+ /** Test: closeMode="hide" — escape closes the dialog and restores focus to trigger */
77
+ export declare const TestCloseOnEscapeCloseModeHide: {
78
+ args: {
79
+ label: string;
80
+ closeMode: "hide";
81
+ };
82
+ play({ userEvent }: any): Promise<void>;
83
+ };
84
+ /** Test: closeMode="hide" — closing via the Close button restores focus to trigger */
85
+ export declare const TestCloseExternallyCloseModeHide: {
86
+ args: {
87
+ label: string;
88
+ closeMode: "hide";
89
+ };
90
+ play({ userEvent }: any): Promise<void>;
91
+ };
68
92
  /** Test: heading level context is reset inside the popover dialog */
69
93
  export declare const TestHeadingLevelReset: {
70
94
  render({ children, ...args }: any): () => import("vue/jsx-runtime").JSX.Element;
@@ -0,0 +1,21 @@
1
+ import { RawInputTextProps as UIProps } from '@lumx/core/js/components/TextField/RawInputText';
2
+ import { VueToJSXProps } from '../../utils/VueToJSX';
3
+ export type RawInputTextProps = VueToJSXProps<UIProps>;
4
+ export declare const emitSchema: {
5
+ change: (value: string, _name?: string, _event?: Event) => boolean;
6
+ };
7
+ /**
8
+ * Raw input text component.
9
+ * (input element without any decoration)
10
+ *
11
+ * @param props Component props.
12
+ * @return Vue element.
13
+ */
14
+ declare const RawInputText: import('vue').DefineSetupFnComponent<RawInputTextProps, {
15
+ change: (value: string, _name?: string, _event?: Event) => boolean;
16
+ }, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children"> & {
17
+ class?: string;
18
+ } & {
19
+ onChange?: ((value: string, _name?: string | undefined, _event?: Event | undefined) => any) | undefined;
20
+ }, import('vue').PublicProps>;
21
+ export default RawInputText;
@@ -0,0 +1,13 @@
1
+ declare const _default: {
2
+ component: any;
3
+ args: Partial<import('@lumx/core/js/components/TextField/RawInputText').RawInputTextProps>;
4
+ decorators: ((story: any, context: any) => any)[];
5
+ title: string;
6
+ };
7
+ export default _default;
8
+ export declare const Default: {};
9
+ export declare const WithPlaceholder: {
10
+ args: {
11
+ placeholder: string;
12
+ };
13
+ };
@@ -0,0 +1,21 @@
1
+ import { RawInputTextareaProps as UIProps } from '@lumx/core/js/components/TextField/RawInputTextarea';
2
+ import { VueToJSXProps } from '../../utils/VueToJSX';
3
+ export type RawInputTextareaProps = VueToJSXProps<UIProps>;
4
+ export declare const emitSchema: {
5
+ change: (value: string, _name?: string, _event?: Event) => boolean;
6
+ };
7
+ /**
8
+ * Raw input textarea component.
9
+ * (textarea element without any decoration)
10
+ *
11
+ * @param props Component props.
12
+ * @return Vue element.
13
+ */
14
+ declare const RawInputTextarea: import('vue').DefineSetupFnComponent<RawInputTextareaProps, {
15
+ change: (value: string, _name?: string, _event?: Event) => boolean;
16
+ }, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children"> & {
17
+ class?: string;
18
+ } & {
19
+ onChange?: ((value: string, _name?: string | undefined, _event?: Event | undefined) => any) | undefined;
20
+ }, import('vue').PublicProps>;
21
+ export default RawInputTextarea;
@@ -0,0 +1,18 @@
1
+ declare const _default: {
2
+ component: any;
3
+ args: Partial<import('@lumx/core/js/components/TextField/RawInputTextarea').RawInputTextareaProps>;
4
+ decorators: ((story: any, context: any) => any)[];
5
+ title: string;
6
+ };
7
+ export default _default;
8
+ export declare const Default: {};
9
+ export declare const WithPlaceholder: {
10
+ args: {
11
+ placeholder: string;
12
+ };
13
+ };
14
+ export declare const WithMinimumRows: {
15
+ args: {
16
+ rows: number;
17
+ };
18
+ };
@@ -0,0 +1,2 @@
1
+ export { default as RawInputText, type RawInputTextProps } from './RawInputText';
2
+ export { default as RawInputTextarea, type RawInputTextareaProps } from './RawInputTextarea';
@@ -0,0 +1,5 @@
1
+ import { Ref } from 'vue';
2
+ /**
3
+ * Fit textarea rows to its content.
4
+ */
5
+ export declare function useFitRowsToContent(minimumRows: Ref<number>, textareaRef: Ref<HTMLTextAreaElement | null>, value: Ref<string | undefined>): Ref<number>;
package/index.d.ts CHANGED
@@ -21,6 +21,7 @@ export * from './components/progress';
21
21
  export * from './components/radio-button';
22
22
  export * from './components/skeleton';
23
23
  export * from './components/switch';
24
+ export * from './components/text-field';
24
25
  export * from './components/table';
25
26
  export * from './components/text';
26
27
  export * from './components/thumbnail';