@kjun-ui/native 0.9.0 → 0.10.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.
@@ -11,14 +11,21 @@ export interface KjunPopoverProps {
11
11
  focusOnOpen?: boolean;
12
12
  ariaLabel?: string;
13
13
  placement?: "top" | "bottom" | "left" | "right";
14
+ /** Fixed header above the body; only the body scrolls and maxHeight covers both. */
15
+ header?: ReactNode;
16
+ /** false stops confining screen readers to the panel; Native has no Tab order to release. */
17
+ modal?: boolean;
14
18
  trigger: ReactNode | ((open: boolean) => ReactNode);
15
19
  children: ReactNode | ((close: () => void) => ReactNode);
16
20
  }
17
- export declare function KjunPopover({ noPadding, open: controlled, onOpenChange, manualTrigger, matchTriggerWidth, maxHeight, flip, focusOnOpen, ariaLabel, placement, trigger, children, }: KjunPopoverProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function KjunPopover({ noPadding, open: controlled, onOpenChange, manualTrigger, matchTriggerWidth, maxHeight, flip, focusOnOpen, ariaLabel, placement, header, modal, trigger, children, }: KjunPopoverProps): import("react/jsx-runtime").JSX.Element;
18
22
  export interface KjunTooltipProps extends Pick<PressableProps, "onPress" | "disabled"> {
19
23
  content?: string;
20
24
  placement?: "top" | "bottom" | "left" | "right";
21
25
  delay?: number;
26
+ /** Controlled visibility; omit to let hover and focus drive it. */
27
+ open?: boolean;
28
+ onOpenChange?: (open: boolean) => void;
22
29
  children: ReactNode;
23
30
  }
24
- export declare function KjunTooltip({ content: message, placement, delay, children, onPress, disabled, }: KjunTooltipProps): import("react/jsx-runtime").JSX.Element;
31
+ export declare function KjunTooltip({ content: message, placement, delay, children, onPress, disabled, open: controlled, onOpenChange, }: KjunTooltipProps): import("react/jsx-runtime").JSX.Element;
@@ -11,14 +11,21 @@ export interface KjunPopoverProps {
11
11
  focusOnOpen?: boolean;
12
12
  ariaLabel?: string;
13
13
  placement?: "top" | "bottom" | "left" | "right";
14
+ /** Fixed header above the body; only the body scrolls and maxHeight covers both. */
15
+ header?: ReactNode;
16
+ /** false stops confining screen readers to the panel; Native has no Tab order to release. */
17
+ modal?: boolean;
14
18
  trigger: ReactNode | ((open: boolean) => ReactNode);
15
19
  children: ReactNode | ((close: () => void) => ReactNode);
16
20
  }
17
- export declare function KjunPopover({ noPadding, open: controlled, onOpenChange, manualTrigger, matchTriggerWidth, maxHeight, flip, focusOnOpen, ariaLabel, placement, trigger, children, }: KjunPopoverProps): import("react/jsx-runtime").JSX.Element;
21
+ export declare function KjunPopover({ noPadding, open: controlled, onOpenChange, manualTrigger, matchTriggerWidth, maxHeight, flip, focusOnOpen, ariaLabel, placement, header, modal, trigger, children, }: KjunPopoverProps): import("react/jsx-runtime").JSX.Element;
18
22
  export interface KjunTooltipProps extends Pick<PressableProps, "onPress" | "disabled"> {
19
23
  content?: string;
20
24
  placement?: "top" | "bottom" | "left" | "right";
21
25
  delay?: number;
26
+ /** Controlled visibility; omit to let hover and focus drive it. */
27
+ open?: boolean;
28
+ onOpenChange?: (open: boolean) => void;
22
29
  children: ReactNode;
23
30
  }
24
- export declare function KjunTooltip({ content: message, placement, delay, children, onPress, disabled, }: KjunTooltipProps): import("react/jsx-runtime").JSX.Element;
31
+ export declare function KjunTooltip({ content: message, placement, delay, children, onPress, disabled, open: controlled, onOpenChange, }: KjunTooltipProps): import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,3 @@
1
+ export type AlertLive = "assertive" | "polite" | "off";
2
+ /** Alert announcement role: `live` overrides the tone default (danger interrupts, others are polite); off announces nothing. */
3
+ export declare function alertRole(tone: string, live?: AlertLive): "alert" | "status" | undefined;
@@ -0,0 +1,3 @@
1
+ export type AlertLive = "assertive" | "polite" | "off";
2
+ /** Alert announcement role: `live` overrides the tone default (danger interrupts, others are polite); off announces nothing. */
3
+ export declare function alertRole(tone: string, live?: AlertLive): "alert" | "status" | undefined;
@@ -0,0 +1,4 @@
1
+ /** Joins space-separated id lists, keeping each id once; empty input gives undefined so the attribute is omitted. */
2
+ export declare function mergeIds(...lists: (string | null | undefined)[]): string | undefined;
3
+ /** Joins hint and error text for platforms that announce one accessibility hint string. */
4
+ export declare function joinHints(...parts: (string | null | undefined)[]): string | undefined;
@@ -0,0 +1,4 @@
1
+ /** Joins space-separated id lists, keeping each id once; empty input gives undefined so the attribute is omitted. */
2
+ export declare function mergeIds(...lists: (string | null | undefined)[]): string | undefined;
3
+ /** Joins hint and error text for platforms that announce one accessibility hint string. */
4
+ export declare function joinHints(...parts: (string | null | undefined)[]): string | undefined;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kjun-ui/native",
3
- "version": "0.9.0",
3
+ "version": "0.10.0",
4
4
  "license": "MIT",
5
5
  "homepage": "https://ui.kjun.dev",
6
6
  "repository": {
@@ -47,8 +47,8 @@
47
47
  "./package.json": "./package.json"
48
48
  },
49
49
  "dependencies": {
50
- "@kjun-ui/tokens": "0.9.0",
51
- "@kjun-ui/icons": "0.9.0"
50
+ "@kjun-ui/tokens": "0.10.0",
51
+ "@kjun-ui/icons": "0.10.0"
52
52
  },
53
53
  "peerDependencies": {
54
54
  "react": "^19.2.3",