mirror of
https://github.com/bulwarkmail/webmail.git
synced 2026-10-31 16:13:15 +00:00
- Add Combobox component supporting single and multiselect modes, search filtering, and clear button - Implement floating dropdown bridge and host slot portal so dropdown renders cleanly outside plugin iframe - Fix clear button and chip removals to not unexpectedly open the dropdown - Add comprehensive unit tests covering Combobox options, clear behavior, multiselect, and bridge communication
23 lines
810 B
TypeScript
23 lines
810 B
TypeScript
// `@plugin-host/ui`: the module plugins require for the app's controls.
|
|
// See components.tsx. Adding an export is a plugin API change: list it in
|
|
// KIT_EXPORTS below (the plugins repo's docs and fake API read that list).
|
|
|
|
import * as components from './components';
|
|
import { DialogButtons, useSlotProps } from './dialog-buttons';
|
|
|
|
export * from './components';
|
|
export { DialogButtons, SlotPropsContext, useSlotProps } from './dialog-buttons';
|
|
export type { DialogButtonSpec } from './dialog-buttons';
|
|
|
|
/** Bumped when a component is added or its props change in a way plugins can see. */
|
|
export const KIT_VERSION = 2;
|
|
|
|
export const pluginUiKit = Object.freeze({
|
|
...components,
|
|
DialogButtons,
|
|
useSlotProps,
|
|
KIT_VERSION,
|
|
});
|
|
|
|
export const KIT_EXPORTS = Object.freeze(Object.keys(pluginUiKit).sort());
|