@lumx/vue 4.9.0-next.8 → 4.9.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.
- package/_internal/{DCsEMm-b.js → BqMObS2T.js} +40 -37
- package/_internal/BqMObS2T.js.map +1 -0
- package/components/button/Button.d.ts +3 -5
- package/components/button/IconButton.d.ts +3 -5
- package/components/combobox/Combobox.stories.d.ts +152 -0
- package/components/combobox/Combobox.test.stories.d.ts +112 -0
- package/components/combobox/ComboboxButton.d.ts +44 -0
- package/components/combobox/ComboboxInput.d.ts +68 -0
- package/components/combobox/ComboboxList.d.ts +15 -0
- package/components/combobox/ComboboxOption.d.ts +29 -0
- package/components/combobox/ComboboxOptionAction.d.ts +20 -0
- package/components/combobox/ComboboxOptionMoreInfo.d.ts +29 -0
- package/components/combobox/ComboboxOptionSkeleton.d.ts +14 -0
- package/components/combobox/ComboboxPopover.d.ts +20 -0
- package/components/combobox/ComboboxProvider.d.ts +16 -0
- package/components/combobox/ComboboxSection.d.ts +14 -0
- package/components/combobox/ComboboxState.d.ts +14 -0
- package/components/combobox/context/ComboboxContext.d.ts +23 -0
- package/components/combobox/context/ComboboxListContext.d.ts +14 -0
- package/components/combobox/context/ComboboxOptionContext.d.ts +16 -0
- package/components/combobox/context/useComboboxEvent.d.ts +7 -0
- package/components/combobox/context/useComboboxOpen.d.ts +7 -0
- package/components/combobox/index.d.ts +112 -0
- package/components/expansion-panel/ExpansionPanel.d.ts +39 -0
- package/components/expansion-panel/ExpansionPanel.stories.d.ts +54 -0
- package/components/expansion-panel/index.d.ts +1 -0
- package/components/image-block/ImageBlock.d.ts +19 -0
- package/components/image-block/ImageBlock.stories.d.ts +178 -0
- package/components/image-block/ImageCaption.d.ts +18 -0
- package/components/image-block/index.d.ts +1 -0
- package/components/list/ListSection.stories.d.ts +21 -23
- package/components/mosaic/Mosaic.d.ts +30 -0
- package/components/mosaic/Mosaic.stories.d.ts +93 -0
- package/components/mosaic/index.d.ts +1 -0
- package/components/text-field/RawInputText.d.ts +3 -0
- package/components/text-field/RawInputTextarea.d.ts +3 -0
- package/components/text-field/TextField.d.ts +11 -0
- package/composables/useWatchDisposable.d.ts +19 -0
- package/index.d.ts +4 -0
- package/index.js +8264 -6242
- package/index.js.map +1 -1
- package/package.json +4 -5
- package/stories/decorators/withValueOnChange.d.ts +4 -4
- package/utils/VueToJSX.d.ts +7 -0
- package/utils/index.js +2 -2
- package/_internal/DCsEMm-b.js.map +0 -1
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { ComboboxOptionMoreInfoProps as UIProps, ComboboxOptionMoreInfoPropsToOverride, COMPONENT_NAME, CLASSNAME } from '@lumx/core/js/components/Combobox/ComboboxOptionMoreInfo';
|
|
2
|
+
import { VueToJSXProps } from '../../utils/VueToJSX';
|
|
3
|
+
export type ComboboxOptionMoreInfoProps = VueToJSXProps<UIProps, ComboboxOptionMoreInfoPropsToOverride | 'onMouseEnter' | 'onMouseLeave' | 'buttonProps'> & {
|
|
4
|
+
/** Callback when the popover opens or closes. */
|
|
5
|
+
onToggle?: (isOpen: boolean) => void;
|
|
6
|
+
};
|
|
7
|
+
/**
|
|
8
|
+
* Combobox.OptionMoreInfo component.
|
|
9
|
+
*
|
|
10
|
+
* Displays an info icon button on a combobox option that shows a popover with additional details.
|
|
11
|
+
* The popover opens on mouse hover over the icon or when the parent option is keyboard-highlighted.
|
|
12
|
+
*
|
|
13
|
+
* Must be placed in the `after` slot of a `Combobox.Option`.
|
|
14
|
+
*
|
|
15
|
+
* @param props Component props.
|
|
16
|
+
* @return Vue element.
|
|
17
|
+
*/
|
|
18
|
+
declare const ComboboxOptionMoreInfo: import('vue').DefineSetupFnComponent<ComboboxOptionMoreInfoProps, {
|
|
19
|
+
toggle: (isOpen: boolean) => boolean;
|
|
20
|
+
}, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | "onMouseEnter" | "onMouseLeave" | "buttonProps" | ComboboxOptionMoreInfoPropsToOverride> & {
|
|
21
|
+
class?: string;
|
|
22
|
+
} & {
|
|
23
|
+
/** Callback when the popover opens or closes. */
|
|
24
|
+
onToggle?: (isOpen: boolean) => void;
|
|
25
|
+
} & {
|
|
26
|
+
onToggle?: ((isOpen: boolean) => any) | undefined;
|
|
27
|
+
}, import('vue').PublicProps>;
|
|
28
|
+
export { COMPONENT_NAME, CLASSNAME };
|
|
29
|
+
export default ComboboxOptionMoreInfo;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ComboboxOptionSkeletonProps as UIProps, ComboboxOptionSkeletonPropsToOverride, COMPONENT_NAME, CLASSNAME } from '@lumx/core/js/components/Combobox/ComboboxOptionSkeleton';
|
|
2
|
+
import { VueToJSXProps } from '../../utils/VueToJSX';
|
|
3
|
+
export type ComboboxOptionSkeletonProps = VueToJSXProps<UIProps, ComboboxOptionSkeletonPropsToOverride>;
|
|
4
|
+
/**
|
|
5
|
+
* Combobox.OptionSkeleton component — renders skeleton placeholder(s) inside a combobox list.
|
|
6
|
+
*
|
|
7
|
+
* @param props Component props.
|
|
8
|
+
* @return Vue element.
|
|
9
|
+
*/
|
|
10
|
+
declare const ComboboxOptionSkeleton: import('vue').DefineSetupFnComponent<ComboboxOptionSkeletonProps, {}, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | ComboboxOptionSkeletonPropsToOverride> & {
|
|
11
|
+
class?: string;
|
|
12
|
+
} & {}, import('vue').PublicProps>;
|
|
13
|
+
export { COMPONENT_NAME, CLASSNAME };
|
|
14
|
+
export default ComboboxOptionSkeleton;
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { ComboboxPopoverProps as UIProps, COMPONENT_NAME, CLASSNAME } from '@lumx/core/js/components/Combobox/ComboboxPopover';
|
|
2
|
+
import { VueToJSXProps } from '../../utils/VueToJSX';
|
|
3
|
+
import { PopoverProps } from '../popover/Popover';
|
|
4
|
+
/**
|
|
5
|
+
* Props type extends the core ComboboxPopover props (via VueToJSXProps) with additional
|
|
6
|
+
* Popover passthrough props. The core type only declares props it explicitly uses;
|
|
7
|
+
* extra Popover props flow through the core template's `...forwardedProps` spread.
|
|
8
|
+
*/
|
|
9
|
+
export type ComboboxPopoverProps = VueToJSXProps<UIProps, 'isOpen' | 'anchorRef'> & Partial<Omit<PopoverProps, 'isOpen' | 'anchorRef' | 'onClose' | 'class'>>;
|
|
10
|
+
/**
|
|
11
|
+
* Combobox.Popover component - renders a Popover connected to the combobox context.
|
|
12
|
+
*
|
|
13
|
+
* @param props Component props.
|
|
14
|
+
* @return Vue element.
|
|
15
|
+
*/
|
|
16
|
+
declare const ComboboxPopover: import('vue').DefineSetupFnComponent<ComboboxPopoverProps, {}, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "isOpen" | "anchorRef"> & {
|
|
17
|
+
class?: string;
|
|
18
|
+
} & Partial<Omit<PopoverProps, "class" | "isOpen" | "onClose" | "anchorRef">> & {}, import('vue').PublicProps>;
|
|
19
|
+
export { COMPONENT_NAME, CLASSNAME };
|
|
20
|
+
export default ComboboxPopover;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Defines the props of the component.
|
|
3
|
+
*/
|
|
4
|
+
export interface ComboboxProviderProps {
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Combobox.Provider component.
|
|
8
|
+
*
|
|
9
|
+
* Provides shared context to sub-components. The vanilla JS combobox handle is
|
|
10
|
+
* created by the trigger sub-component (Combobox.Input or Combobox.Button) on mount.
|
|
11
|
+
*
|
|
12
|
+
* @param props Component props.
|
|
13
|
+
* @return Vue element.
|
|
14
|
+
*/
|
|
15
|
+
declare const ComboboxProvider: import('vue').DefineSetupFnComponent<ComboboxProviderProps, {}, {}, ComboboxProviderProps & {}, import('vue').PublicProps>;
|
|
16
|
+
export default ComboboxProvider;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ComboboxSectionProps as UIProps, ComboboxSectionPropsToOverride, COMPONENT_NAME, CLASSNAME } from '@lumx/core/js/components/Combobox/ComboboxSection';
|
|
2
|
+
import { VueToJSXProps } from '../../utils/VueToJSX';
|
|
3
|
+
export type ComboboxSectionProps = VueToJSXProps<UIProps, ComboboxSectionPropsToOverride | 'hidden' | 'aria-hidden'>;
|
|
4
|
+
/**
|
|
5
|
+
* Combobox.Section component - groups Combobox.Option items under a labelled section.
|
|
6
|
+
*
|
|
7
|
+
* @param props Component props.
|
|
8
|
+
* @return Vue element.
|
|
9
|
+
*/
|
|
10
|
+
declare const ComboboxSection: import('vue').DefineSetupFnComponent<ComboboxSectionProps, {}, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "hidden" | "aria-hidden"> & {
|
|
11
|
+
class?: string;
|
|
12
|
+
} & {}, import('vue').PublicProps>;
|
|
13
|
+
export { COMPONENT_NAME, CLASSNAME };
|
|
14
|
+
export default ComboboxSection;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ComboboxStateProps as UIProps, COMPONENT_NAME, CLASSNAME } from '@lumx/core/js/components/Combobox/ComboboxState';
|
|
2
|
+
import { VueToJSXProps } from '../../utils/VueToJSX';
|
|
3
|
+
export type ComboboxStateProps = VueToJSXProps<UIProps, 'state'>;
|
|
4
|
+
/**
|
|
5
|
+
* Combobox.State component - displays empty and error states for the combobox list.
|
|
6
|
+
*
|
|
7
|
+
* @param props Component props.
|
|
8
|
+
* @return Vue element.
|
|
9
|
+
*/
|
|
10
|
+
declare const ComboboxState: import('vue').DefineSetupFnComponent<ComboboxStateProps, {}, {}, Omit<UIProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "state"> & {
|
|
11
|
+
class?: string;
|
|
12
|
+
} & {}, import('vue').PublicProps>;
|
|
13
|
+
export { COMPONENT_NAME, CLASSNAME };
|
|
14
|
+
export default ComboboxState;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Ref, ShallowRef } from 'vue';
|
|
2
|
+
import { ComboboxHandle } from '@lumx/core/js/components/Combobox/types';
|
|
3
|
+
/** Context value shared between Combobox sub-components. */
|
|
4
|
+
export interface ComboboxContextValue {
|
|
5
|
+
/** The current ComboboxHandle (set by the trigger sub-component). */
|
|
6
|
+
handle: ShallowRef<ComboboxHandle | null>;
|
|
7
|
+
/** Setter for the handle (called by trigger on mount/unmount). */
|
|
8
|
+
setHandle: (handle: ComboboxHandle | null) => void;
|
|
9
|
+
/** The ID of the listbox element. */
|
|
10
|
+
listboxId: string;
|
|
11
|
+
/** Reference to the anchor element for popover positioning. */
|
|
12
|
+
anchorRef: Ref<HTMLElement | null>;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Provides the combobox context to sub-components.
|
|
16
|
+
*/
|
|
17
|
+
export declare function provideComboboxContext(value: ComboboxContextValue): void;
|
|
18
|
+
/**
|
|
19
|
+
* Hook to access the Combobox context.
|
|
20
|
+
* @throws Error if used outside of a Combobox component.
|
|
21
|
+
* @returns The combobox context value.
|
|
22
|
+
*/
|
|
23
|
+
export declare function useComboboxContext(): ComboboxContextValue;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/** Context value for the Combobox.List sub-tree. */
|
|
2
|
+
export interface ComboboxListContextValue {
|
|
3
|
+
/** The popup type. "grid" enables 2D keyboard navigation and action buttons on options. */
|
|
4
|
+
type: 'listbox' | 'grid';
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Provides the combobox list context.
|
|
8
|
+
*/
|
|
9
|
+
export declare function provideComboboxListContext(value: ComboboxListContextValue): void;
|
|
10
|
+
/**
|
|
11
|
+
* Hook to access the Combobox.List context (provides the `type`).
|
|
12
|
+
* @returns The list context value.
|
|
13
|
+
*/
|
|
14
|
+
export declare function useComboboxListContext(): ComboboxListContextValue;
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** Context value provided by Combobox.Option to its `after` slot children. */
|
|
2
|
+
export interface ComboboxOptionContextValue {
|
|
3
|
+
/** The ID of the parent option element (matches the aria-activedescendant value when highlighted). */
|
|
4
|
+
optionId: string;
|
|
5
|
+
}
|
|
6
|
+
/**
|
|
7
|
+
* Provides the combobox option context.
|
|
8
|
+
*/
|
|
9
|
+
export declare function provideComboboxOptionContext(value: ComboboxOptionContextValue): void;
|
|
10
|
+
/**
|
|
11
|
+
* Hook to access the Combobox.Option context.
|
|
12
|
+
* Must be used within a Combobox.Option's `after` slot.
|
|
13
|
+
* @throws Error if used outside of a Combobox.Option.
|
|
14
|
+
* @returns The option context value.
|
|
15
|
+
*/
|
|
16
|
+
export declare function useComboboxOptionContext(): ComboboxOptionContextValue;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { Ref } from 'vue';
|
|
2
|
+
import { ComboboxEventMap } from '@lumx/core/js/components/Combobox/types';
|
|
3
|
+
/**
|
|
4
|
+
* Composable to subscribe to a combobox event via the handle's subscriber system.
|
|
5
|
+
* Re-subscribes when the handle changes (e.g. trigger mount/unmount).
|
|
6
|
+
*/
|
|
7
|
+
export declare function useComboboxEvent<K extends keyof ComboboxEventMap>(event: K, initialValue: ComboboxEventMap[K]): Ref<ComboboxEventMap[K]>;
|
|
@@ -0,0 +1,112 @@
|
|
|
1
|
+
export type { ComboboxProviderProps } from './ComboboxProvider';
|
|
2
|
+
export type { ComboboxListProps } from './ComboboxList';
|
|
3
|
+
export type { ComboboxPopoverProps } from './ComboboxPopover';
|
|
4
|
+
export type { ComboboxButtonProps } from './ComboboxButton';
|
|
5
|
+
export type { ComboboxInputProps } from './ComboboxInput';
|
|
6
|
+
export type { ComboboxOptionProps } from './ComboboxOption';
|
|
7
|
+
export type { ComboboxOptionActionProps } from './ComboboxOptionAction';
|
|
8
|
+
export type { ComboboxOptionMoreInfoProps } from './ComboboxOptionMoreInfo';
|
|
9
|
+
export type { ComboboxOptionSkeletonProps } from './ComboboxOptionSkeleton';
|
|
10
|
+
export type { ComboboxSectionProps } from './ComboboxSection';
|
|
11
|
+
export type { ComboboxStateProps } from './ComboboxState';
|
|
12
|
+
export type { ComboboxButtonLabelDisplayMode } from '@lumx/core/js/components/Combobox/ComboboxButton';
|
|
13
|
+
export type { ComboboxListType } from '@lumx/core/js/components/Combobox/ComboboxList';
|
|
14
|
+
export type { ComboboxHandle, ComboboxCallbacks } from '@lumx/core/js/components/Combobox/types';
|
|
15
|
+
/**
|
|
16
|
+
* Combobox compound component namespace.
|
|
17
|
+
*/
|
|
18
|
+
export declare const Combobox: {
|
|
19
|
+
/** Provides shared combobox context (handle, listbox ID, anchor ref) to all sub-components. */
|
|
20
|
+
Provider: import('vue').DefineSetupFnComponent<import('./ComboboxProvider').ComboboxProviderProps, {}, {}, import('./ComboboxProvider').ComboboxProviderProps & {}, import('vue').PublicProps>;
|
|
21
|
+
/** Button trigger for select-only combobox mode with keyboard navigation and typeahead. */
|
|
22
|
+
Button: import('vue').DefineSetupFnComponent<import('./ComboboxButton').ComboboxButtonProps, {
|
|
23
|
+
select: (option: {
|
|
24
|
+
value: string;
|
|
25
|
+
}) => true;
|
|
26
|
+
}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxButton').ComboboxButtonProps, "className" | "label" | import('@lumx/core/js/types').PropsToOverride | "children"> & {
|
|
27
|
+
class?: string;
|
|
28
|
+
} & {
|
|
29
|
+
label: string;
|
|
30
|
+
value?: string;
|
|
31
|
+
labelDisplayMode?: import('@lumx/core/js/components/Combobox/ComboboxButton').ComboboxButtonLabelDisplayMode;
|
|
32
|
+
onSelect?: (option: {
|
|
33
|
+
value: string;
|
|
34
|
+
}) => void;
|
|
35
|
+
} & {
|
|
36
|
+
onSelect?: ((option: {
|
|
37
|
+
value: string;
|
|
38
|
+
}) => any) | undefined;
|
|
39
|
+
}, import('vue').PublicProps>;
|
|
40
|
+
/** Text input trigger for autocomplete combobox mode with optional toggle button and filtering. */
|
|
41
|
+
Input: import('vue').DefineSetupFnComponent<import('./ComboboxInput').ComboboxInputProps, {
|
|
42
|
+
select: (option: {
|
|
43
|
+
value: string;
|
|
44
|
+
}) => true;
|
|
45
|
+
change: (value: string, _name?: string, _event?: Event) => boolean;
|
|
46
|
+
focus: (_event?: FocusEvent) => true;
|
|
47
|
+
blur: (_event?: FocusEvent) => true;
|
|
48
|
+
clear: (_event?: MouseEvent) => true;
|
|
49
|
+
}, {}, Omit<import('../text-field').TextFieldProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "inputRef" | "textFieldRef"> & {
|
|
50
|
+
class?: string;
|
|
51
|
+
} & {
|
|
52
|
+
toggleButtonProps?: Pick<import('../button').IconButtonProps, "label"> & Partial<Omit<import('../button').IconButtonProps, "label">>;
|
|
53
|
+
onSelect?: (option: {
|
|
54
|
+
value: string;
|
|
55
|
+
}) => void;
|
|
56
|
+
autoFilter?: boolean;
|
|
57
|
+
} & {
|
|
58
|
+
onSelect?: ((option: {
|
|
59
|
+
value: string;
|
|
60
|
+
}) => any) | undefined;
|
|
61
|
+
onBlur?: ((_event?: FocusEvent | undefined) => any) | undefined;
|
|
62
|
+
onChange?: ((value: string, _name?: string | undefined, _event?: Event | undefined) => any) | undefined;
|
|
63
|
+
onFocus?: ((_event?: FocusEvent | undefined) => any) | undefined;
|
|
64
|
+
onClear?: ((_event?: MouseEvent | undefined) => any) | undefined;
|
|
65
|
+
}, import('vue').PublicProps>;
|
|
66
|
+
/** Listbox container that registers with the combobox handle and tracks loading state. */
|
|
67
|
+
List: import('vue').DefineSetupFnComponent<import('./ComboboxList').ComboboxListProps, {}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxList').ComboboxListProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "aria-label" | "id" | "aria-busy"> & {
|
|
68
|
+
class?: string;
|
|
69
|
+
} & {}, import('vue').PublicProps>;
|
|
70
|
+
/** Selectable option item with filtering and keyboard navigation support. */
|
|
71
|
+
Option: import('vue').DefineSetupFnComponent<import('./ComboboxOption').ComboboxOptionProps, {}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxOption').ComboboxOptionProps, "className" | import('@lumx/core/js/types').PropsToOverride | "hidden" | "id" | "descriptionId" | "isGrid" | import('@lumx/core/js/components/Combobox/ComboboxOption').ComboboxOptionPropsToOverride> & {
|
|
72
|
+
class?: string;
|
|
73
|
+
} & {
|
|
74
|
+
tooltipProps?: Partial<import('../tooltip').TooltipProps>;
|
|
75
|
+
onClick?: () => void;
|
|
76
|
+
actionProps?: Record<string, any>;
|
|
77
|
+
} & {}, import('vue').PublicProps>;
|
|
78
|
+
/** Secondary action button within a grid-mode option row, rendered as an independent gridcell. */
|
|
79
|
+
OptionAction: import('vue').DefineSetupFnComponent<import('./ComboboxOptionAction').ComboboxOptionActionProps, {}, {}, Pick<import('../../utils/VueToJSX').VueToJSXProps<import('@lumx/core/js/components/Combobox/ComboboxOptionAction').ComboboxOptionActionProps>, "isDisabled" | "class"> & {
|
|
80
|
+
onClick?: (evt: MouseEvent) => void;
|
|
81
|
+
} & {}, import('vue').PublicProps>;
|
|
82
|
+
/** Info button on an option that shows a popover on hover or keyboard highlight. */
|
|
83
|
+
OptionMoreInfo: import('vue').DefineSetupFnComponent<import('./ComboboxOptionMoreInfo').ComboboxOptionMoreInfoProps, {
|
|
84
|
+
toggle: (isOpen: boolean) => boolean;
|
|
85
|
+
}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxOptionMoreInfo').ComboboxOptionMoreInfoProps, "className" | import('@lumx/core/js/types').PropsToOverride | "onMouseEnter" | "onMouseLeave" | "buttonProps" | import('@lumx/core/js/components/Combobox/ComboboxOptionMoreInfo').ComboboxOptionMoreInfoPropsToOverride> & {
|
|
86
|
+
class?: string;
|
|
87
|
+
} & {
|
|
88
|
+
onToggle?: (isOpen: boolean) => void;
|
|
89
|
+
} & {
|
|
90
|
+
onToggle?: ((isOpen: boolean) => any) | undefined;
|
|
91
|
+
}, import('vue').PublicProps>;
|
|
92
|
+
/** Loading placeholder skeleton(s) that auto-register loading state with the combobox handle. */
|
|
93
|
+
OptionSkeleton: import('vue').DefineSetupFnComponent<import('./ComboboxOptionSkeleton').ComboboxOptionSkeletonProps, {}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxOptionSkeleton').ComboboxOptionSkeletonProps, "className" | import('@lumx/core/js/types').PropsToOverride | import('@lumx/core/js/components/Combobox/ComboboxOptionSkeleton').ComboboxOptionSkeletonPropsToOverride> & {
|
|
94
|
+
class?: string;
|
|
95
|
+
} & {}, import('vue').PublicProps>;
|
|
96
|
+
/** Floating popover container that auto-binds to the combobox anchor and open/close state. */
|
|
97
|
+
Popover: import('vue').DefineSetupFnComponent<import('./ComboboxPopover').ComboboxPopoverProps, {}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxPopover').ComboboxPopoverProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "isOpen" | "anchorRef"> & {
|
|
98
|
+
class?: string;
|
|
99
|
+
} & Partial<Omit<import('../popover').PopoverProps, "class" | "isOpen" | "onClose" | "anchorRef">> & {}, import('vue').PublicProps>;
|
|
100
|
+
/** Labelled group of options that auto-hides when all its child options are filtered out. */
|
|
101
|
+
Section: import('vue').DefineSetupFnComponent<import('./ComboboxSection').ComboboxSectionProps, {}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxSection').ComboboxSectionProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "hidden" | "aria-hidden"> & {
|
|
102
|
+
class?: string;
|
|
103
|
+
} & {}, import('vue').PublicProps>;
|
|
104
|
+
/** Displays empty, error, and loading state messages for the combobox list. */
|
|
105
|
+
State: import('vue').DefineSetupFnComponent<import('./ComboboxState').ComboboxStateProps, {}, {}, Omit<import('@lumx/core/js/components/Combobox/ComboboxState').ComboboxStateProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children" | "state"> & {
|
|
106
|
+
class?: string;
|
|
107
|
+
} & {}, import('vue').PublicProps>;
|
|
108
|
+
/** Visual separator between option groups (alias for ListDivider). Purely decorative — invisible to screen readers. */
|
|
109
|
+
Divider: import('vue').DefineSetupFnComponent<import('../list').ListDividerProps, {}, {}, Omit<import('@lumx/core/js/components/List/ListDivider').ListDividerProps, "className" | import('@lumx/core/js/types').PropsToOverride | "children"> & {
|
|
110
|
+
class?: string;
|
|
111
|
+
} & {}, import('vue').PublicProps>;
|
|
112
|
+
};
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import { ExpansionPanelProps as UIProps, CLASSNAME, COMPONENT_NAME, DEFAULT_PROPS, ExpansionPanelPropsToOverride } from '@lumx/core/js/components/ExpansionPanel';
|
|
2
|
+
import { VueToJSXProps } from '../../utils/VueToJSX';
|
|
3
|
+
export type ExpansionPanelProps = VueToJSXProps<UIProps, ExpansionPanelPropsToOverride> & {
|
|
4
|
+
/** Props to pass to the toggle button (minus those already set by the ExpansionPanel). */
|
|
5
|
+
toggleButtonProps?: {
|
|
6
|
+
label: string;
|
|
7
|
+
[key: string]: any;
|
|
8
|
+
};
|
|
9
|
+
};
|
|
10
|
+
export declare const emitSchema: {
|
|
11
|
+
open: (event: MouseEvent) => boolean;
|
|
12
|
+
close: (event: MouseEvent) => boolean;
|
|
13
|
+
toggleOpen: (shouldOpen: boolean, event: MouseEvent) => boolean;
|
|
14
|
+
};
|
|
15
|
+
export { CLASSNAME, COMPONENT_NAME, DEFAULT_PROPS };
|
|
16
|
+
/**
|
|
17
|
+
* ExpansionPanel component.
|
|
18
|
+
*
|
|
19
|
+
* @param props Component props.
|
|
20
|
+
* @return Vue element.
|
|
21
|
+
*/
|
|
22
|
+
declare const ExpansionPanel: import('vue').DefineSetupFnComponent<ExpansionPanelProps, {
|
|
23
|
+
open: (event: MouseEvent) => boolean;
|
|
24
|
+
close: (event: MouseEvent) => boolean;
|
|
25
|
+
toggleOpen: (shouldOpen: boolean, event: MouseEvent) => boolean;
|
|
26
|
+
}, {}, Omit<UIProps, "className" | "footer" | "ref" | "handleClick" | "handleChange" | "handleInput" | "handleKeyPress" | "handleClose" | "handleFocus" | "handleBeforeClick" | "handleAfterClick" | "handleMouseEnter" | "handleMouseLeave" | "handleKeyDown" | "children" | "content" | "IconButton" | "toggleButtonProps" | "handleOpen" | "handleToggleOpen" | "wrapperRef" | "headerProps" | "headerContent" | "dragHandle" | "isChildrenVisible"> & {
|
|
27
|
+
class?: string;
|
|
28
|
+
} & {
|
|
29
|
+
/** Props to pass to the toggle button (minus those already set by the ExpansionPanel). */
|
|
30
|
+
toggleButtonProps?: {
|
|
31
|
+
label: string;
|
|
32
|
+
[key: string]: any;
|
|
33
|
+
};
|
|
34
|
+
} & {
|
|
35
|
+
onClose?: ((event: MouseEvent) => any) | undefined;
|
|
36
|
+
onOpen?: ((event: MouseEvent) => any) | undefined;
|
|
37
|
+
onToggleOpen?: ((shouldOpen: boolean, event: MouseEvent) => any) | undefined;
|
|
38
|
+
}, import('vue').PublicProps>;
|
|
39
|
+
export default ExpansionPanel;
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
component: any;
|
|
3
|
+
render: ({ children, ...args }: any) => import("vue/jsx-runtime").JSX.Element;
|
|
4
|
+
args: {
|
|
5
|
+
'toggleButtonProps.label': string;
|
|
6
|
+
label: string;
|
|
7
|
+
hasBackground?: boolean | undefined;
|
|
8
|
+
hasHeaderDivider?: boolean | undefined;
|
|
9
|
+
isOpen?: boolean | undefined;
|
|
10
|
+
handleOpen?: ((event: any) => void) | undefined;
|
|
11
|
+
handleClose?: ((event: any) => void) | undefined;
|
|
12
|
+
toggleButtonProps?: any;
|
|
13
|
+
handleToggleOpen?: ((shouldOpen: boolean, event: any) => void) | undefined;
|
|
14
|
+
children?: import('react').ReactNode;
|
|
15
|
+
ref?: import('../..').CommonRef;
|
|
16
|
+
wrapperRef?: import('../..').CommonRef;
|
|
17
|
+
headerProps?: import('../..').GenericProps | undefined;
|
|
18
|
+
headerContent?: import('react').ReactNode;
|
|
19
|
+
dragHandle?: import('react').ReactNode;
|
|
20
|
+
content?: import('react').ReactNode;
|
|
21
|
+
footer?: import('react').ReactNode;
|
|
22
|
+
IconButton?: any;
|
|
23
|
+
isChildrenVisible?: boolean | undefined;
|
|
24
|
+
className?: string | undefined;
|
|
25
|
+
closeMode?: "hide" | "unmount" | undefined;
|
|
26
|
+
theme?: import('../..').Theme | undefined;
|
|
27
|
+
};
|
|
28
|
+
decorators: ((story: any, context: any) => any)[];
|
|
29
|
+
title: string;
|
|
30
|
+
};
|
|
31
|
+
export default _default;
|
|
32
|
+
export declare const Default: {};
|
|
33
|
+
export declare const HasBackground: {
|
|
34
|
+
args: {
|
|
35
|
+
hasBackground: boolean;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
export declare const HasHeaderDivider: {
|
|
39
|
+
args: {
|
|
40
|
+
isOpen: boolean;
|
|
41
|
+
hasBackground: boolean;
|
|
42
|
+
hasHeaderDivider: boolean;
|
|
43
|
+
};
|
|
44
|
+
};
|
|
45
|
+
export declare const Nested: {
|
|
46
|
+
args: {};
|
|
47
|
+
render: ({ children, isOpen, ...args }: any) => import("vue/jsx-runtime").JSX.Element;
|
|
48
|
+
};
|
|
49
|
+
export declare const HideChildren: {
|
|
50
|
+
args: {
|
|
51
|
+
hasBackground: boolean;
|
|
52
|
+
closeMode: string;
|
|
53
|
+
};
|
|
54
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as ExpansionPanel, type ExpansionPanelProps } from './ExpansionPanel';
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ImageBlockProps as UIProps, CLASSNAME, COMPONENT_NAME, DEFAULT_PROPS, ImageBlockCaptionPosition, ImageBlockPropsToOverride } from '@lumx/core/js/components/ImageBlock';
|
|
2
|
+
import { VueToJSXProps } from '../../utils/VueToJSX';
|
|
3
|
+
import { ThumbnailProps } from '../thumbnail';
|
|
4
|
+
export type ImageBlockProps = Omit<VueToJSXProps<UIProps, ImageBlockPropsToOverride>, never> & {
|
|
5
|
+
/** Props to pass to the thumbnail (minus those already set by the ImageBlock props). */
|
|
6
|
+
thumbnailProps?: Omit<ThumbnailProps, 'image' | 'size' | 'theme' | 'align' | 'fillHeight' | 'alt'>;
|
|
7
|
+
};
|
|
8
|
+
export { CLASSNAME, COMPONENT_NAME, DEFAULT_PROPS, ImageBlockCaptionPosition };
|
|
9
|
+
/**
|
|
10
|
+
* ImageBlock component.
|
|
11
|
+
*
|
|
12
|
+
* @param props Component props.
|
|
13
|
+
* @return Vue element.
|
|
14
|
+
*/
|
|
15
|
+
declare const ImageBlock: import('vue').DefineSetupFnComponent<ImageBlockProps, {}, {}, Omit<VueToJSXProps<UIProps, ImageBlockPropsToOverride>, never> & {
|
|
16
|
+
/** Props to pass to the thumbnail (minus those already set by the ImageBlock props). */
|
|
17
|
+
thumbnailProps?: Omit<ThumbnailProps, "image" | "size" | "theme" | "align" | "fillHeight" | "alt">;
|
|
18
|
+
} & {}, import('vue').PublicProps>;
|
|
19
|
+
export default ImageBlock;
|
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
declare const _default: {
|
|
2
|
+
component: any;
|
|
3
|
+
argTypes: {
|
|
4
|
+
size: {
|
|
5
|
+
control: {
|
|
6
|
+
type: "select" | "inline-radio";
|
|
7
|
+
};
|
|
8
|
+
options: ("xl" | "xxl")[];
|
|
9
|
+
mapping: Record<string, "xl" | "xxl"> | undefined;
|
|
10
|
+
};
|
|
11
|
+
image: {
|
|
12
|
+
control: {
|
|
13
|
+
type: "select" | "inline-radio";
|
|
14
|
+
};
|
|
15
|
+
options: string[];
|
|
16
|
+
mapping: Record<string, string> | undefined;
|
|
17
|
+
};
|
|
18
|
+
captionPosition: {
|
|
19
|
+
control: {
|
|
20
|
+
type: "select" | "inline-radio";
|
|
21
|
+
};
|
|
22
|
+
options: ("over" | "below")[];
|
|
23
|
+
mapping: Record<string, "over" | "below"> | undefined;
|
|
24
|
+
};
|
|
25
|
+
'thumbnailProps.aspectRatio': {
|
|
26
|
+
control: {
|
|
27
|
+
type: "select" | "inline-radio";
|
|
28
|
+
};
|
|
29
|
+
options: ("vertical" | "horizontal" | "original" | "panoramic" | "wide" | "square" | "free")[];
|
|
30
|
+
mapping: Record<string, "vertical" | "horizontal" | "original" | "panoramic" | "wide" | "square" | "free"> | undefined;
|
|
31
|
+
};
|
|
32
|
+
align: {
|
|
33
|
+
control: {
|
|
34
|
+
type: "select" | "inline-radio";
|
|
35
|
+
};
|
|
36
|
+
options: ("center" | "right" | "left")[];
|
|
37
|
+
mapping: Record<string, "center" | "right" | "left"> | undefined;
|
|
38
|
+
};
|
|
39
|
+
tags: {
|
|
40
|
+
control: boolean;
|
|
41
|
+
};
|
|
42
|
+
actions: {
|
|
43
|
+
control: boolean;
|
|
44
|
+
};
|
|
45
|
+
};
|
|
46
|
+
args: {
|
|
47
|
+
image: string;
|
|
48
|
+
actions?: import('react').ReactNode;
|
|
49
|
+
align?: import('../..').HorizontalAlignment | undefined;
|
|
50
|
+
alt?: string | undefined;
|
|
51
|
+
captionPosition?: import('../..').ImageBlockCaptionPosition | undefined;
|
|
52
|
+
fillHeight?: boolean | undefined;
|
|
53
|
+
size?: import('@lumx/core/js/components/ImageBlock').ImageBlockSize | undefined;
|
|
54
|
+
thumbnailProps?: import('../..').GenericProps | undefined;
|
|
55
|
+
ref?: import('../..').CommonRef;
|
|
56
|
+
Thumbnail?: any;
|
|
57
|
+
ImageCaption?: any;
|
|
58
|
+
className?: string | undefined;
|
|
59
|
+
theme?: import('../..').Theme | undefined;
|
|
60
|
+
title?: string | undefined;
|
|
61
|
+
description?: import('react').ReactNode | {
|
|
62
|
+
__html: string;
|
|
63
|
+
};
|
|
64
|
+
titleProps?: import('../..').GenericProps | undefined;
|
|
65
|
+
descriptionProps?: import('../..').GenericProps | undefined;
|
|
66
|
+
tags?: import('react').ReactNode;
|
|
67
|
+
captionStyle?: import('../..').GenericProps | undefined;
|
|
68
|
+
};
|
|
69
|
+
decorators: ((story: any, context: any) => any)[];
|
|
70
|
+
title: string;
|
|
71
|
+
};
|
|
72
|
+
export default _default;
|
|
73
|
+
export declare const WithCaptionBelow: {
|
|
74
|
+
args: {
|
|
75
|
+
captionPosition: "below";
|
|
76
|
+
size: "xxl";
|
|
77
|
+
title: string;
|
|
78
|
+
description: string;
|
|
79
|
+
};
|
|
80
|
+
};
|
|
81
|
+
export declare const WithCaptionOver: {
|
|
82
|
+
args: {
|
|
83
|
+
captionPosition: "over";
|
|
84
|
+
size: "xxl";
|
|
85
|
+
title: string;
|
|
86
|
+
description: string;
|
|
87
|
+
};
|
|
88
|
+
};
|
|
89
|
+
export declare const WithAlign: {
|
|
90
|
+
args: {
|
|
91
|
+
image: string;
|
|
92
|
+
size: undefined;
|
|
93
|
+
align: "center";
|
|
94
|
+
captionPosition: "below";
|
|
95
|
+
title: string;
|
|
96
|
+
description: string;
|
|
97
|
+
};
|
|
98
|
+
};
|
|
99
|
+
export declare const WithTags: {
|
|
100
|
+
render: ({ tags, ...args }: any) => import("vue/jsx-runtime").JSX.Element;
|
|
101
|
+
args: {
|
|
102
|
+
size: "xxl";
|
|
103
|
+
};
|
|
104
|
+
};
|
|
105
|
+
export declare const WithActions: {
|
|
106
|
+
render: ({ actions, ...args }: any) => import("vue/jsx-runtime").JSX.Element;
|
|
107
|
+
args: {
|
|
108
|
+
size: "xxl";
|
|
109
|
+
};
|
|
110
|
+
};
|
|
111
|
+
export declare const WithFocusPointHorizontal: {
|
|
112
|
+
args: {
|
|
113
|
+
size: "xxl";
|
|
114
|
+
'thumbnailProps.aspectRatio': "vertical";
|
|
115
|
+
'thumbnailProps.focusPoint.x': number;
|
|
116
|
+
'thumbnailProps.focusPoint.y': number;
|
|
117
|
+
};
|
|
118
|
+
argTypes: {
|
|
119
|
+
'thumbnailProps.focusPoint.x': {
|
|
120
|
+
control: {
|
|
121
|
+
type: string;
|
|
122
|
+
min: number;
|
|
123
|
+
max: number;
|
|
124
|
+
step: number;
|
|
125
|
+
};
|
|
126
|
+
};
|
|
127
|
+
'thumbnailProps.focusPoint.y': {
|
|
128
|
+
control: {
|
|
129
|
+
type: string;
|
|
130
|
+
min: number;
|
|
131
|
+
max: number;
|
|
132
|
+
step: number;
|
|
133
|
+
};
|
|
134
|
+
};
|
|
135
|
+
};
|
|
136
|
+
};
|
|
137
|
+
export declare const WithFocusPointVertical: {
|
|
138
|
+
args: {
|
|
139
|
+
size: "xxl";
|
|
140
|
+
image: string;
|
|
141
|
+
'thumbnailProps.aspectRatio': "horizontal";
|
|
142
|
+
'thumbnailProps.focusPoint.x': number;
|
|
143
|
+
'thumbnailProps.focusPoint.y': number;
|
|
144
|
+
};
|
|
145
|
+
argTypes: {
|
|
146
|
+
'thumbnailProps.focusPoint.x': {
|
|
147
|
+
control: {
|
|
148
|
+
type: string;
|
|
149
|
+
min: number;
|
|
150
|
+
max: number;
|
|
151
|
+
step: number;
|
|
152
|
+
};
|
|
153
|
+
};
|
|
154
|
+
'thumbnailProps.focusPoint.y': {
|
|
155
|
+
control: {
|
|
156
|
+
type: string;
|
|
157
|
+
min: number;
|
|
158
|
+
max: number;
|
|
159
|
+
step: number;
|
|
160
|
+
};
|
|
161
|
+
};
|
|
162
|
+
};
|
|
163
|
+
};
|
|
164
|
+
export declare const FullFeatured: {
|
|
165
|
+
render: ({ tags, actions, ...args }: any) => import("vue/jsx-runtime").JSX.Element;
|
|
166
|
+
args: {
|
|
167
|
+
image: string;
|
|
168
|
+
size: undefined;
|
|
169
|
+
align: "center";
|
|
170
|
+
captionPosition: "below";
|
|
171
|
+
title: string;
|
|
172
|
+
description: string;
|
|
173
|
+
'thumbnailProps.aspectRatio': "horizontal";
|
|
174
|
+
'thumbnailProps.focusPoint.x': number;
|
|
175
|
+
'thumbnailProps.focusPoint.y': number;
|
|
176
|
+
};
|
|
177
|
+
decorators: ((story: any, context: any) => any)[];
|
|
178
|
+
};
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { HorizontalAlignment, Theme } from '@lumx/core/js/constants';
|
|
2
|
+
type ImageCaptionProps = {
|
|
3
|
+
as?: 'div' | 'figcaption';
|
|
4
|
+
align?: HorizontalAlignment;
|
|
5
|
+
baseClassName?: string;
|
|
6
|
+
captionStyle?: Record<string, any>;
|
|
7
|
+
class?: string;
|
|
8
|
+
description?: any;
|
|
9
|
+
descriptionProps?: Record<string, any>;
|
|
10
|
+
tags?: any;
|
|
11
|
+
theme?: Theme;
|
|
12
|
+
title?: string;
|
|
13
|
+
titleProps?: Record<string, any>;
|
|
14
|
+
truncate?: boolean;
|
|
15
|
+
};
|
|
16
|
+
/** Internal component used to render image captions */
|
|
17
|
+
declare const ImageCaption: import('vue').DefineSetupFnComponent<ImageCaptionProps, {}, {}, ImageCaptionProps & {}, import('vue').PublicProps>;
|
|
18
|
+
export default ImageCaption;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { default as ImageBlock, type ImageBlockProps, ImageBlockCaptionPosition } from './ImageBlock';
|