@kakadu/components 6.1.1 → 6.3.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 (128) hide show
  1. package/build/components/aria-text.d.ts +2 -1
  2. package/build/components/box.d.ts +2 -1
  3. package/build/components/button-tooltip.d.ts +2 -1
  4. package/build/components/button.d.ts +3 -3
  5. package/build/components/button.js +1 -1
  6. package/build/components/button.mjs +27 -25
  7. package/build/components/card.d.ts +2 -2
  8. package/build/components/click-ripples.d.ts +2 -2
  9. package/build/components/click-ripples.js +1 -1
  10. package/build/components/click-ripples.mjs +50 -45
  11. package/build/components/collapsible.d.ts +2 -2
  12. package/build/components/combobox.d.ts +2 -2
  13. package/build/components/combobox.js +1 -1
  14. package/build/components/combobox.mjs +161 -159
  15. package/build/components/copy-icon-button.d.ts +2 -1
  16. package/build/components/datum.d.ts +2 -2
  17. package/build/components/dot.d.ts +2 -2
  18. package/build/components/flex.d.ts +2 -1
  19. package/build/components/footer.d.ts +2 -2
  20. package/build/components/gauge.d.ts +2 -1
  21. package/build/components/header.d.ts +2 -1
  22. package/build/components/hover-gradient.d.ts +2 -2
  23. package/build/components/hover-gradient.js +1 -1
  24. package/build/components/hover-gradient.mjs +48 -35
  25. package/build/components/icon-button.d.ts +2 -2
  26. package/build/components/input.d.ts +3 -3
  27. package/build/components/input.js +2 -2
  28. package/build/components/input.mjs +21 -21
  29. package/build/components/logos/akt-logo.d.ts +2 -2
  30. package/build/components/logos/amedia-logo.d.ts +2 -2
  31. package/build/components/logos/bankaxept-logo.d.ts +2 -2
  32. package/build/components/logos/bankid-logo.d.ts +2 -2
  33. package/build/components/logos/dnb-logo.d.ts +2 -2
  34. package/build/components/logos/entur-logo.d.ts +2 -2
  35. package/build/components/logos/gjensidige-logo.d.ts +2 -2
  36. package/build/components/logos/kakadu-academy-logo.d.ts +2 -2
  37. package/build/components/logos/kakadu-guide-icon.d.ts +2 -1
  38. package/build/components/logos/kakadu-guide-logo.d.ts +3 -3
  39. package/build/components/logos/kakadu-index-logo.d.ts +2 -2
  40. package/build/components/logos/kakadu-logo.d.ts +2 -2
  41. package/build/components/logos/kakadu-play-logo.d.ts +2 -2
  42. package/build/components/logos/kolumbus-logo.d.ts +2 -2
  43. package/build/components/logos/nordea-logo.d.ts +2 -2
  44. package/build/components/logos/norsk-tipping-logo.d.ts +2 -2
  45. package/build/components/logos/ruter-logo.d.ts +2 -2
  46. package/build/components/logos/senteret-for-et-aldersvennlig-norge-logo.d.ts +2 -2
  47. package/build/components/logos/sparebank1-logo.d.ts +2 -2
  48. package/build/components/logos/sparebanken-norge-logo.d.ts +2 -2
  49. package/build/components/logos/sto-logo.d.ts +2 -2
  50. package/build/components/logos/storebrand-logo.d.ts +2 -2
  51. package/build/components/modal.d.ts +6 -6
  52. package/build/components/modal.js +1 -1
  53. package/build/components/modal.mjs +86 -85
  54. package/build/components/moving-gradients.js +1 -1
  55. package/build/components/moving-gradients.mjs +80 -70
  56. package/build/components/moving-stars.js +1 -1
  57. package/build/components/moving-stars.mjs +77 -74
  58. package/build/components/notice.d.ts +2 -2
  59. package/build/components/notification.d.ts +8 -6
  60. package/build/components/notification.js +1 -1
  61. package/build/components/notification.mjs +87 -71
  62. package/build/components/popover-menu.d.ts +3 -3
  63. package/build/components/popover-menu.js +1 -1
  64. package/build/components/popover-menu.mjs +131 -129
  65. package/build/components/popover.d.ts +4 -4
  66. package/build/components/popover.js +1 -1
  67. package/build/components/popover.mjs +82 -73
  68. package/build/components/revealer.d.ts +2 -2
  69. package/build/components/select.d.ts +2 -2
  70. package/build/components/separator.d.ts +5 -5
  71. package/build/components/skeleton.d.ts +3 -2
  72. package/build/components/spinner.d.ts +3 -2
  73. package/build/components/text-button.d.ts +2 -2
  74. package/build/components/text.d.ts +9 -8
  75. package/build/components/theme-setter.d.ts +2 -2
  76. package/build/components/veil.d.ts +2 -1
  77. package/build/components/wrapper.d.ts +2 -2
  78. package/build/components.css +1 -1
  79. package/build/hooks/use-is-document-focused.js +1 -1
  80. package/build/hooks/use-is-document-focused.mjs +30 -14
  81. package/build/icons/anchor-down.d.ts +2 -2
  82. package/build/icons/anchor-up.d.ts +2 -2
  83. package/build/icons/arrow-down.d.ts +2 -2
  84. package/build/icons/arrow-left.d.ts +2 -2
  85. package/build/icons/arrow-right.d.ts +2 -2
  86. package/build/icons/arrow-up.d.ts +2 -2
  87. package/build/icons/caret-down.d.ts +2 -2
  88. package/build/icons/caret-left.d.ts +2 -2
  89. package/build/icons/caret-right.d.ts +2 -2
  90. package/build/icons/caret-up.d.ts +2 -2
  91. package/build/icons/check.d.ts +2 -2
  92. package/build/icons/chevron-down.d.ts +2 -2
  93. package/build/icons/chevron-left.d.ts +2 -2
  94. package/build/icons/chevron-right.d.ts +2 -2
  95. package/build/icons/chevron-up.d.ts +2 -2
  96. package/build/icons/chrome-browser-logo.d.ts +2 -2
  97. package/build/icons/cog.d.ts +2 -2
  98. package/build/icons/copy.d.ts +2 -2
  99. package/build/icons/document.d.ts +2 -2
  100. package/build/icons/dots.d.ts +2 -2
  101. package/build/icons/drag.d.ts +2 -2
  102. package/build/icons/edge-browser-logo.d.ts +2 -2
  103. package/build/icons/edit.d.ts +2 -2
  104. package/build/icons/exclamation-triangle.d.ts +2 -2
  105. package/build/icons/external.d.ts +2 -2
  106. package/build/icons/eye.d.ts +2 -2
  107. package/build/icons/icon.d.ts +2 -2
  108. package/build/icons/information.d.ts +2 -2
  109. package/build/icons/kakadu-guide-glyph.d.ts +2 -2
  110. package/build/icons/kakadu-guide-icon.d.ts +2 -2
  111. package/build/icons/menu.d.ts +2 -2
  112. package/build/icons/package.d.ts +2 -2
  113. package/build/icons/plus.d.ts +2 -2
  114. package/build/icons/select.d.ts +2 -2
  115. package/build/icons/share.d.ts +2 -2
  116. package/build/icons/sparkle.d.ts +2 -2
  117. package/build/icons/test.d.ts +2 -2
  118. package/build/icons/times.d.ts +2 -2
  119. package/build/icons/trash.d.ts +2 -2
  120. package/build/icons/trend-up.d.ts +2 -2
  121. package/build/index.d.ts +2 -0
  122. package/build/index.js +1 -1
  123. package/build/index.mjs +19 -17
  124. package/build/theme.d.ts +2 -1
  125. package/build/utilities/listeners.d.ts +5 -0
  126. package/build/utilities/listeners.js +1 -0
  127. package/build/utilities/listeners.mjs +16 -0
  128. package/package.json +16 -22
@@ -1,5 +1,6 @@
1
+ import React from 'react';
1
2
  import { type AtomElementType, type AtomProperties } from './atom';
2
3
  export declare const ariaTextStyles: string;
3
4
  type AriaTextProperties<Type extends AtomElementType = 'span'> = AtomProperties<Type>;
4
- export default function AriaText<Type extends AtomElementType = 'span'>({ as, className, ...properties }: AriaTextProperties<Type>): import("react/jsx-runtime").JSX.Element;
5
+ export default function AriaText<Type extends AtomElementType = 'span'>({ as, className, ...properties }: AriaTextProperties<Type>): React.JSX.Element;
5
6
  export {};
@@ -1,4 +1,5 @@
1
+ import React from 'react';
1
2
  import { type DefaultAtomElementType, type AtomElementType, type AtomProperties } from './atom';
2
3
  type BoxProperties<Type extends AtomElementType = DefaultAtomElementType> = AtomProperties<Type>;
3
- export default function Box<Type extends AtomElementType = DefaultAtomElementType>({ as, className, ...properties }: BoxProperties<Type>): import("react/jsx-runtime").JSX.Element;
4
+ export default function Box<Type extends AtomElementType = DefaultAtomElementType>({ as, className, ...properties }: BoxProperties<Type>): React.JSX.Element;
4
5
  export {};
@@ -1,3 +1,4 @@
1
+ import React from 'react';
1
2
  export declare const buttonTooltipPositions: readonly ["top", "bottom"];
2
3
  export type ButtonTooltipPosition = (typeof buttonTooltipPositions)[number];
3
4
  export type ButtonTooltipProperties = {
@@ -6,4 +7,4 @@ export type ButtonTooltipProperties = {
6
7
  readonly position?: ButtonTooltipPosition;
7
8
  readonly className?: string;
8
9
  };
9
- export default function ButtonTooltip({ id, label, position, className, }: ButtonTooltipProperties): import("react/jsx-runtime").JSX.Element;
10
+ export default function ButtonTooltip({ id, label, position, className, }: ButtonTooltipProperties): React.JSX.Element;
@@ -1,11 +1,11 @@
1
- import { type ReactNode, type HTMLProps } from 'react';
1
+ import React, { type ReactNode, type HTMLProps } from 'react';
2
2
  import { type IconType } from '../icons/icon';
3
3
  import { type ButtonTooltipPosition } from './button-tooltip';
4
4
  export declare function ButtonLoader({ isLoading, size, className, }: {
5
5
  readonly isLoading?: boolean;
6
6
  readonly size?: number;
7
7
  readonly className?: string;
8
- }): import("react/jsx-runtime").JSX.Element;
8
+ }): React.JSX.Element;
9
9
  export declare const buttonVariants: readonly ["primary", "secondary", "warning", "danger"];
10
10
  export type ButtonVariant = (typeof buttonVariants)[number];
11
11
  export declare const buttonSecondaryStyles: string;
@@ -33,5 +33,5 @@ export type ButtonProperties = BaseButtonProperties & ({
33
33
  children?: never;
34
34
  label: string;
35
35
  });
36
- export default function Button({ ref, type, variant, href, target, rel, disabled, className, children, label, tooltip, tooltipPosition, iconLeft, iconRight, isLoading, isSkeleton, isSkeletonAnimated, hasMovingGradients, movingGradientsCount, hasMovingStars, movingStarsCount, ...properties }: ButtonProperties): import("react/jsx-runtime").JSX.Element;
36
+ export default function Button({ ref, type, variant, href, target, rel, disabled, className, children, label, tooltip, tooltipPosition, iconLeft, iconRight, isLoading, isSkeleton, isSkeletonAnimated, hasMovingGradients, movingGradientsCount, hasMovingStars, movingStarsCount, ...properties }: ButtonProperties): React.JSX.Element;
37
37
  export {};
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../jsx-runtime-BB_1_6y_.js"),R=require("react"),c=require("@kuma-ui/core"),b=require("../theme.js"),$=require("../icons/icon.js"),C=require("./spinner.js"),F=require("./moving-gradients.js"),O=require("./moving-stars.js"),P=require("./theme-setter.js"),H=require("./click-ripples.js"),f=require("./hover-gradient.js"),J=require("./button-tooltip.js"),K=require("./aria-text.js"),Q=require("./atom.js"),U=require("./skeleton.js");function v({isLoading:t,size:a,className:s}){return e.jsxRuntimeExports.jsx("div",{className:c.cx("kakadu-components-2832510379",t&&"kakadu-components-4114685569",s),children:e.jsxRuntimeExports.jsx("div",{className:"kakadu-components-920467642",children:e.jsxRuntimeExports.jsx(C.RevealSpinner,{isVisible:t,size:a})})})}const X=["primary","secondary","warning","danger"];function E({icon:t,variant:a="primary",className:s,...r}){return e.jsxRuntimeExports.jsx("div",{...r,className:c.cx("kakadu-components-2658660333",a==="secondary"&&"kakadu-components-3469662110",s),children:typeof t=="string"?e.jsxRuntimeExports.jsx($.default,{width:14,height:14,type:t}):t})}const S="kakadu-components-2550769169",Y="kakadu-components-1998774084",q="kakadu-components-2945752235",h="kakadu-components-1546692192";function Z({ref:t,type:a,variant:s="primary",href:r,target:g,rel:_,disabled:N,className:B,children:n,label:w,tooltip:i,tooltipPosition:T,iconLeft:m,iconRight:x,isLoading:l,isSkeleton:u,isSkeletonAnimated:D=!0,hasMovingGradients:I=!1,movingGradientsCount:p=4,hasMovingStars:M=!1,movingStarsCount:k=10,...G}){const j=R.useId(),y=R.useRef(null),V=P.useIsDarkTheme(y),z=a??"button",A=I&&p>0,W=M&&k>0,o=r!==void 0&&!u,d=!!N||!!l||!!u;return e.jsxRuntimeExports.jsxs("div",{className:"kakadu-components-3559664923",children:[e.jsxRuntimeExports.jsxs(Q.default,{...G,reference:t,as:o?"a":"button",type:o?void 0:z,href:o?r:void 0,target:o?g:void 0,rel:o?_:void 0,"aria-describedby":i?j:void 0,disabled:o?void 0:d,inert:o?d:void 0,className:c.cx(b.effectStyles,b.overlayEffectStyles,"kakadu-components-2514848457",!!m&&"kakadu-components-2735110382",!n&&"kakadu-components-3621693630",s==="secondary"&&S,s==="warning"&&q,s==="danger"&&h,u&&"kakadu-components-2662775151",B),children:[m?e.jsxRuntimeExports.jsx(E,{variant:s,icon:m,className:n?"kakadu-components-136489413":void 0}):null,n?e.jsxRuntimeExports.jsx("div",{ref:y,className:"kakadu-components-207477259",children:n}):e.jsxRuntimeExports.jsx(K.default,{children:w}),x?e.jsxRuntimeExports.jsx(E,{variant:s,icon:x,className:n?"kakadu-components-3631501803":void 0}):null,e.jsxRuntimeExports.jsx(v,{isLoading:l}),A&&e.jsxRuntimeExports.jsx(F.default,{opacity:V?.5:.4,maximumGradientsCount:p,className:c.cx("kakadu-components-2055737617",s==="secondary"&&"kakadu-components-2972748387")}),W&&e.jsxRuntimeExports.jsx(O.default,{maximumStarsCount:k,className:"kakadu-components-1226008615"}),d?null:e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(H.default,{size:n?void 0:50}),e.jsxRuntimeExports.jsx(f.default,{size:n?void 0:50,className:s==="secondary"?f.normalBlendStyles:void 0})]}),i?e.jsxRuntimeExports.jsx(J.default,{id:j,label:i,position:T}):null]}),u?e.jsxRuntimeExports.jsx("div",{className:"kakadu-components-3422055155",children:e.jsxRuntimeExports.jsx(U.SkeletonInstance,{width:"100%",height:"100%",isAnimated:D})}):null]})}exports.ButtonLoader=v;exports.buttonDangerStyles=h;exports.buttonSecondaryStyles=S;exports.buttonSuccessStyles=Y;exports.buttonVariants=X;exports.buttonWarningStyles=q;exports.default=Z;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const e=require("../jsx-runtime-BB_1_6y_.js"),b=require("react"),c=require("@kuma-ui/core"),f=require("../theme.js"),$=require("../icons/icon.js"),C=require("./spinner.js"),F=require("./moving-gradients.js"),O=require("./moving-stars.js"),P=require("./theme-setter.js"),H=require("./click-ripples.js"),v=require("./hover-gradient.js"),J=require("./button-tooltip.js"),K=require("./aria-text.js"),Q=require("./atom.js"),U=require("./skeleton.js");function h({isLoading:t,size:a,className:s}){return e.jsxRuntimeExports.jsx("div",{className:c.cx("kakadu-components-2832510379",t&&"kakadu-components-4114685569",s),children:e.jsxRuntimeExports.jsx("div",{className:"kakadu-components-920467642",children:e.jsxRuntimeExports.jsx(C.RevealSpinner,{isVisible:t,size:a})})})}const X=["primary","secondary","warning","danger"];function S({icon:t,variant:a="primary",className:s,...r}){return e.jsxRuntimeExports.jsx("div",{...r,className:c.cx("kakadu-components-2658660333",a==="secondary"&&"kakadu-components-3469662110",s),children:typeof t=="string"?e.jsxRuntimeExports.jsx($.default,{width:14,height:14,type:t}):t})}const q="kakadu-components-2550769169",Y="kakadu-components-1998774084",g="kakadu-components-2945752235",N="kakadu-components-1546692192";function Z({ref:t,type:a,variant:s="primary",href:r,target:_,rel:B,disabled:w,className:T,children:n,label:D,tooltip:i,tooltipPosition:I,iconLeft:m,iconRight:l,isLoading:x,isSkeleton:u,isSkeletonAnimated:M=!0,hasMovingGradients:G=!1,movingGradientsCount:p=4,hasMovingStars:V=!1,movingStarsCount:k=10,...z}){const j=b.useId(),y=b.useRef(null),A=P.useIsDarkTheme(y),W=a??"button",R=G&&p>0,E=V&&k>0,o=r!==void 0&&!u,d=!!w||!!x||!!u;return e.jsxRuntimeExports.jsxs("div",{className:"kakadu-components-3559664923",children:[e.jsxRuntimeExports.jsxs(Q.default,{...z,reference:t,as:o?"a":"button",type:o?void 0:W,href:o?r:void 0,target:o?_:void 0,rel:o?B:void 0,"aria-describedby":i?j:void 0,disabled:o?void 0:d,inert:o?d:void 0,className:c.cx(f.effectStyles,f.overlayEffectStyles,"kakadu-components-2514848457",!!m&&"kakadu-components-2735110382",!n&&"kakadu-components-3621693630",s==="secondary"&&q,s==="warning"&&g,s==="danger"&&N,u&&"kakadu-components-2662775151",T),children:[m?e.jsxRuntimeExports.jsx(S,{variant:s,icon:m,className:n?"kakadu-components-136489413":void 0}):null,n?e.jsxRuntimeExports.jsx("div",{ref:y,className:"kakadu-components-207477259",children:n}):e.jsxRuntimeExports.jsx(K.default,{children:D}),l?e.jsxRuntimeExports.jsx(S,{variant:s,icon:l,className:n?"kakadu-components-3631501803":void 0}):null,e.jsxRuntimeExports.jsx(h,{isLoading:x}),R||E?e.jsxRuntimeExports.jsxs("div",{className:"kakadu-components-2836016662",children:[R&&e.jsxRuntimeExports.jsx(F.default,{opacity:A?.5:.4,maximumGradientsCount:p,className:c.cx("kakadu-components-1191635212",s==="secondary"&&"kakadu-components-3653612936")}),E&&e.jsxRuntimeExports.jsx(O.default,{maximumStarsCount:k,className:"kakadu-components-2551727666"})]}):null,d?null:e.jsxRuntimeExports.jsxs(e.jsxRuntimeExports.Fragment,{children:[e.jsxRuntimeExports.jsx(H.default,{size:n?void 0:50}),e.jsxRuntimeExports.jsx(v.default,{size:n?void 0:50,className:s==="secondary"?v.normalBlendStyles:void 0})]}),i?e.jsxRuntimeExports.jsx(J.default,{id:j,label:i,position:I}):null]}),u?e.jsxRuntimeExports.jsx("div",{className:"kakadu-components-3422055155",children:e.jsxRuntimeExports.jsx(U.SkeletonInstance,{width:"100%",height:"100%",isAnimated:M})}):null]})}exports.ButtonLoader=h;exports.buttonDangerStyles=N;exports.buttonSecondaryStyles=q;exports.buttonSuccessStyles=Y;exports.buttonVariants=X;exports.buttonWarningStyles=g;exports.default=Z;
@@ -15,61 +15,63 @@ import U from "./atom.mjs";
15
15
  import { SkeletonInstance as X } from "./skeleton.mjs";
16
16
  function Y({
17
17
  isLoading: n,
18
- size: a,
18
+ size: t,
19
19
  className: s
20
20
  }) {
21
- return /* @__PURE__ */ o.jsx("div", { className: c("kakadu-components-2832510379", n && "kakadu-components-4114685569", s), children: /* @__PURE__ */ o.jsx("div", { className: "kakadu-components-920467642", children: /* @__PURE__ */ o.jsx(F, { isVisible: n, size: a }) }) });
21
+ return /* @__PURE__ */ o.jsx("div", { className: c("kakadu-components-2832510379", n && "kakadu-components-4114685569", s), children: /* @__PURE__ */ o.jsx("div", { className: "kakadu-components-920467642", children: /* @__PURE__ */ o.jsx(F, { isVisible: n, size: t }) }) });
22
22
  }
23
23
  const fo = ["primary", "secondary", "warning", "danger"];
24
- function j({
24
+ function b({
25
25
  icon: n,
26
- variant: a = "primary",
26
+ variant: t = "primary",
27
27
  className: s,
28
28
  ...r
29
29
  }) {
30
- return /* @__PURE__ */ o.jsx("div", { ...r, className: c("kakadu-components-2658660333", a === "secondary" && "kakadu-components-3469662110", s), children: typeof n == "string" ? /* @__PURE__ */ o.jsx(V, { width: 14, height: 14, type: n }) : n });
30
+ return /* @__PURE__ */ o.jsx("div", { ...r, className: c("kakadu-components-2658660333", t === "secondary" && "kakadu-components-3469662110", s), children: typeof n == "string" ? /* @__PURE__ */ o.jsx(V, { width: 14, height: 14, type: n }) : n });
31
31
  }
32
32
  const Z = "kakadu-components-2550769169", xo = "kakadu-components-1998774084", _ = "kakadu-components-2945752235", $ = "kakadu-components-1546692192";
33
33
  function yo({
34
34
  ref: n,
35
- type: a,
35
+ type: t,
36
36
  variant: s = "primary",
37
37
  href: r,
38
- target: v,
39
- rel: b,
40
- disabled: h,
41
- className: N,
38
+ target: h,
39
+ rel: N,
40
+ disabled: g,
41
+ className: S,
42
42
  children: e,
43
- label: g,
43
+ label: B,
44
44
  tooltip: d,
45
- tooltipPosition: S,
45
+ tooltipPosition: w,
46
46
  iconLeft: i,
47
47
  iconRight: l,
48
48
  isLoading: p,
49
49
  isSkeleton: m,
50
- isSkeletonAnimated: B = !0,
51
- hasMovingGradients: w = !1,
50
+ isSkeletonAnimated: I = !0,
51
+ hasMovingGradients: T = !1,
52
52
  movingGradientsCount: k = 4,
53
- hasMovingStars: I = !1,
53
+ hasMovingStars: A = !1,
54
54
  movingStarsCount: f = 10,
55
- ...T
55
+ ...D
56
56
  }) {
57
- const x = R(), y = z(null), A = q(y), D = a ?? "button", M = w && k > 0, G = I && f > 0, t = r !== void 0 && !m, u = !!h || !!p || !!m;
57
+ const x = R(), y = z(null), M = q(y), G = t ?? "button", j = T && k > 0, v = A && f > 0, a = r !== void 0 && !m, u = !!g || !!p || !!m;
58
58
  return /* @__PURE__ */ o.jsxs("div", { className: "kakadu-components-3559664923", children: [
59
- /* @__PURE__ */ o.jsxs(U, { ...T, reference: n, as: t ? "a" : "button", type: t ? void 0 : D, href: t ? r : void 0, target: t ? v : void 0, rel: t ? b : void 0, "aria-describedby": d ? x : void 0, disabled: t ? void 0 : u, inert: t ? u : void 0, className: c(C, E, "kakadu-components-2514848457", !!i && "kakadu-components-2735110382", !e && "kakadu-components-3621693630", s === "secondary" && Z, s === "warning" && _, s === "danger" && $, m && "kakadu-components-2662775151", N), children: [
60
- i ? /* @__PURE__ */ o.jsx(j, { variant: s, icon: i, className: e ? "kakadu-components-136489413" : void 0 }) : null,
61
- e ? /* @__PURE__ */ o.jsx("div", { ref: y, className: "kakadu-components-207477259", children: e }) : /* @__PURE__ */ o.jsx(Q, { children: g }),
62
- l ? /* @__PURE__ */ o.jsx(j, { variant: s, icon: l, className: e ? "kakadu-components-3631501803" : void 0 }) : null,
59
+ /* @__PURE__ */ o.jsxs(U, { ...D, reference: n, as: a ? "a" : "button", type: a ? void 0 : G, href: a ? r : void 0, target: a ? h : void 0, rel: a ? N : void 0, "aria-describedby": d ? x : void 0, disabled: a ? void 0 : u, inert: a ? u : void 0, className: c(C, E, "kakadu-components-2514848457", !!i && "kakadu-components-2735110382", !e && "kakadu-components-3621693630", s === "secondary" && Z, s === "warning" && _, s === "danger" && $, m && "kakadu-components-2662775151", S), children: [
60
+ i ? /* @__PURE__ */ o.jsx(b, { variant: s, icon: i, className: e ? "kakadu-components-136489413" : void 0 }) : null,
61
+ e ? /* @__PURE__ */ o.jsx("div", { ref: y, className: "kakadu-components-207477259", children: e }) : /* @__PURE__ */ o.jsx(Q, { children: B }),
62
+ l ? /* @__PURE__ */ o.jsx(b, { variant: s, icon: l, className: e ? "kakadu-components-3631501803" : void 0 }) : null,
63
63
  /* @__PURE__ */ o.jsx(Y, { isLoading: p }),
64
- M && /* @__PURE__ */ o.jsx(H, { opacity: A ? 0.5 : 0.4, maximumGradientsCount: k, className: c("kakadu-components-2055737617", s === "secondary" && "kakadu-components-2972748387") }),
65
- G && /* @__PURE__ */ o.jsx(W, { maximumStarsCount: f, className: "kakadu-components-1226008615" }),
64
+ j || v ? /* @__PURE__ */ o.jsxs("div", { className: "kakadu-components-2836016662", children: [
65
+ j && /* @__PURE__ */ o.jsx(H, { opacity: M ? 0.5 : 0.4, maximumGradientsCount: k, className: c("kakadu-components-1191635212", s === "secondary" && "kakadu-components-3653612936") }),
66
+ v && /* @__PURE__ */ o.jsx(W, { maximumStarsCount: f, className: "kakadu-components-2551727666" })
67
+ ] }) : null,
66
68
  u ? null : /* @__PURE__ */ o.jsxs(o.Fragment, { children: [
67
69
  /* @__PURE__ */ o.jsx(J, { size: e ? void 0 : 50 }),
68
70
  /* @__PURE__ */ o.jsx(K, { size: e ? void 0 : 50, className: s === "secondary" ? O : void 0 })
69
71
  ] }),
70
- d ? /* @__PURE__ */ o.jsx(P, { id: x, label: d, position: S }) : null
72
+ d ? /* @__PURE__ */ o.jsx(P, { id: x, label: d, position: w }) : null
71
73
  ] }),
72
- m ? /* @__PURE__ */ o.jsx("div", { className: "kakadu-components-3422055155", children: /* @__PURE__ */ o.jsx(X, { width: "100%", height: "100%", isAnimated: B }) }) : null
74
+ m ? /* @__PURE__ */ o.jsx("div", { className: "kakadu-components-3422055155", children: /* @__PURE__ */ o.jsx(X, { width: "100%", height: "100%", isAnimated: I }) }) : null
73
75
  ] });
74
76
  }
75
77
  export {
@@ -1,4 +1,4 @@
1
- import { type HTMLProps } from 'react';
1
+ import React, { type HTMLProps } from 'react';
2
2
  import { type IconType } from '../icons/icon';
3
3
  export type CardProperties = HTMLProps<HTMLButtonElement> & {
4
4
  readonly icon?: IconType;
@@ -6,4 +6,4 @@ export type CardProperties = HTMLProps<HTMLButtonElement> & {
6
6
  readonly description: string;
7
7
  readonly action: string;
8
8
  };
9
- export default function Card({ ref, icon, title, description, action, href, target, rel, className, ...properties }: CardProperties): import("react/jsx-runtime").JSX.Element;
9
+ export default function Card({ ref, icon, title, description, action, href, target, rel, className, ...properties }: CardProperties): React.JSX.Element;
@@ -1,4 +1,4 @@
1
- import { type HTMLProps } from 'react';
1
+ import React, { type HTMLProps } from 'react';
2
2
  export default function ClickRipples({ isActive, size, className, ...properties }: HTMLProps<HTMLDivElement> & {
3
3
  readonly isActive?: boolean;
4
- }): import("react/jsx-runtime").JSX.Element;
4
+ }): React.JSX.Element;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const m=require("../jsx-runtime-BB_1_6y_.js"),s=require("react"),v=require("@kuma-ui/core"),y=require("../hooks/use-is-in-view.js");function b({id:n,x:o,y:i,onEnd:r}){return s.useEffect(()=>{const t=setTimeout(()=>{r(n)},370);return()=>{clearTimeout(t)}},[r,n]),m.jsxRuntimeExports.jsx("div",{style:{top:i,left:o},className:"kakadu-components-3828473824"})}function g({isActive:n=!0,size:o=150,className:i,...r}){const t=s.useRef(null),u=y.default(t),[w,c]=s.useState([]);s.useEffect(()=>{if(!n||!u){c([]);return}const e=l=>{if(t.current){const d=t.current.getBoundingClientRect(),{clientX:a,clientY:f}=l,{left:x,right:k,top:p,bottom:E}=d;a>x&&a<k&&f>p&&f<E&&c(R=>[...R,{id:Date.now()+Math.random()*1e3,x:a-x,y:f-p}])}};return window.addEventListener("pointerdown",e),()=>{window.removeEventListener("pointerdown",e)}},[n,u]);const j=s.useCallback(e=>{c(l=>l.filter(d=>d.id!==e))},[]);return m.jsxRuntimeExports.jsx("div",{...r,ref:t,style:{"--size":`${o}px`},className:v.cx("kakadu-components-4189236582",i),children:u?w.map(e=>m.jsxRuntimeExports.jsx(b,{id:e.id,x:e.x,y:e.y,onEnd:j},e.id)):null})}exports.default=g;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const f=require("../jsx-runtime-BB_1_6y_.js"),r=require("react"),R=require("@kuma-ui/core"),v=require("../hooks/use-is-in-view.js"),q=require("../utilities/listeners.js");function y({id:e,x:o,y:u,onEnd:i}){return r.useEffect(()=>{const n=setTimeout(()=>{i(e)},370);return()=>{clearTimeout(n)}},[i,e]),f.jsxRuntimeExports.jsx("div",{style:{top:u,left:o},className:"kakadu-components-3828473824"})}const b=q.default(e=>{window.addEventListener("pointerdown",e,{passive:!0})},e=>{window.removeEventListener("pointerdown",e)});function g({isActive:e=!0,size:o=150,className:u,...i}){const n=r.useRef(null),c=v.default(n),[x,l]=r.useState([]);r.useEffect(()=>{if(!e||!c){l([]);return}return b(t=>{if(n.current){const a=n.current.getBoundingClientRect(),{clientX:s,clientY:d}=t,{left:m,right:j,top:p,bottom:k}=a;s>m&&s<j&&d>p&&d<k&&l(E=>[...E,{id:Date.now()+Math.random()*1e3,x:s-m,y:d-p}])}})},[e,c]);const w=r.useCallback(t=>{l(a=>a.filter(s=>s.id!==t))},[]);return f.jsxRuntimeExports.jsx("div",{...i,ref:n,style:{"--size":`${o}px`},className:R.cx("kakadu-components-4189236582",u),children:c?x.map(t=>f.jsxRuntimeExports.jsx(y,{id:t.id,x:t.x,y:t.y,onEnd:w},t.id)):null})}exports.default=g;
@@ -1,65 +1,70 @@
1
1
  import { j as m } from "../jsx-runtime-B4hRZ52C.mjs";
2
- import { useRef as R, useState as h, useEffect as x, useCallback as v } from "react";
3
- import { cx as C } from "@kuma-ui/core";
4
- import b from "../hooks/use-is-in-view.mjs";
5
- function g({
6
- id: n,
7
- x: r,
8
- y: s,
2
+ import { useRef as y, useState as E, useEffect as p, useCallback as R } from "react";
3
+ import { cx as h } from "@kuma-ui/core";
4
+ import C from "../hooks/use-is-in-view.mjs";
5
+ import L from "../utilities/listeners.mjs";
6
+ function b({
7
+ id: e,
8
+ x: s,
9
+ y: i,
9
10
  onEnd: o
10
11
  }) {
11
- return x(() => {
12
- const t = setTimeout(() => {
13
- o(n);
12
+ return p(() => {
13
+ const n = setTimeout(() => {
14
+ o(e);
14
15
  }, 370);
15
16
  return () => {
16
- clearTimeout(t);
17
+ clearTimeout(n);
17
18
  };
18
- }, [o, n]), /* @__PURE__ */ m.jsx("div", { style: {
19
- top: s,
20
- left: r
19
+ }, [o, e]), /* @__PURE__ */ m.jsx("div", { style: {
20
+ top: i,
21
+ left: s
21
22
  }, className: "kakadu-components-3828473824" });
22
23
  }
24
+ const g = L((e) => {
25
+ window.addEventListener("pointerdown", e, {
26
+ passive: !0
27
+ });
28
+ }, (e) => {
29
+ window.removeEventListener("pointerdown", e);
30
+ });
23
31
  function V({
24
- isActive: n = !0,
25
- size: r = 150,
26
- className: s,
32
+ isActive: e = !0,
33
+ size: s = 150,
34
+ className: i,
27
35
  ...o
28
36
  }) {
29
- const t = R(null), i = b(t), [w, c] = h([]);
30
- x(() => {
31
- if (!n || !i) {
32
- c([]);
37
+ const n = y(null), c = C(n), [x, u] = E([]);
38
+ p(() => {
39
+ if (!e || !c) {
40
+ u([]);
33
41
  return;
34
42
  }
35
- const e = (u) => {
36
- if (t.current) {
37
- const l = t.current.getBoundingClientRect(), {
38
- clientX: a,
39
- clientY: d
40
- } = u, {
41
- left: f,
42
- right: j,
43
- top: p,
44
- bottom: y
45
- } = l;
46
- a > f && a < j && d > p && d < y && c((E) => [...E, {
43
+ return g((t) => {
44
+ if (n.current) {
45
+ const a = n.current.getBoundingClientRect(), {
46
+ clientX: r,
47
+ clientY: l
48
+ } = t, {
49
+ left: d,
50
+ right: k,
51
+ top: f,
52
+ bottom: j
53
+ } = a;
54
+ r > d && r < k && l > f && l < j && u((v) => [...v, {
47
55
  id: Date.now() + Math.random() * 1e3,
48
- x: a - f,
49
- y: d - p
56
+ x: r - d,
57
+ y: l - f
50
58
  }]);
51
59
  }
52
- };
53
- return window.addEventListener("pointerdown", e), () => {
54
- window.removeEventListener("pointerdown", e);
55
- };
56
- }, [n, i]);
57
- const k = v((e) => {
58
- c((u) => u.filter((l) => l.id !== e));
60
+ });
61
+ }, [e, c]);
62
+ const w = R((t) => {
63
+ u((a) => a.filter((r) => r.id !== t));
59
64
  }, []);
60
- return /* @__PURE__ */ m.jsx("div", { ...o, ref: t, style: {
61
- "--size": `${r}px`
62
- }, className: C("kakadu-components-4189236582", s), children: i ? w.map((e) => /* @__PURE__ */ m.jsx(g, { id: e.id, x: e.x, y: e.y, onEnd: k }, e.id)) : null });
65
+ return /* @__PURE__ */ m.jsx("div", { ...o, ref: n, style: {
66
+ "--size": `${s}px`
67
+ }, className: h("kakadu-components-4189236582", i), children: c ? x.map((t) => /* @__PURE__ */ m.jsx(b, { id: t.id, x: t.x, y: t.y, onEnd: w }, t.id)) : null });
63
68
  }
64
69
  export {
65
70
  V as default
@@ -1,6 +1,6 @@
1
- import { type ElementType } from 'react';
1
+ import React, { type ElementType } from 'react';
2
2
  import { type AtomProperties } from './atom';
3
3
  export default function Collapsible<Type extends ElementType = 'div'>({ as, isCollapsed, transitionDuration, children, className, ...properties }: AtomProperties<Type> & {
4
4
  readonly isCollapsed?: boolean;
5
5
  readonly transitionDuration?: number;
6
- }): import("react/jsx-runtime").JSX.Element | null;
6
+ }): React.JSX.Element | null;
@@ -1,4 +1,4 @@
1
- import { type ChangeEvent, type HTMLProps, type ReactNode } from 'react';
1
+ import React, { type ChangeEvent, type HTMLProps, type ReactNode } from 'react';
2
2
  import { type InputType, type InputLabelControllerProperties } from './input';
3
3
  export type ComboboxOption<Type = string> = {
4
4
  readonly value: Type;
@@ -25,4 +25,4 @@ export type ComboboxProperties<Type = string> = Omit<InputLabelControllerPropert
25
25
  readonly onChange?: (value: string, event?: ChangeEvent<InputType>) => void;
26
26
  readonly onSelect?: (value?: Type) => void;
27
27
  };
28
- export default function Combobox<Type = string>({ isLoading, shouldFilterOptions, label, options, error, warning, information, footnote, className, onChange, onSelect, ...properties }: ComboboxProperties<Type>): import("react/jsx-runtime").JSX.Element;
28
+ export default function Combobox<Type = string>({ isLoading, shouldFilterOptions, label, options, error, warning, information, footnote, className, onChange, onSelect, ...properties }: ComboboxProperties<Type>): React.JSX.Element;
@@ -1 +1 @@
1
- "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("../jsx-runtime-BB_1_6y_.js"),e=require("react"),M=require("@kuma-ui/core"),se=require("../hooks/use-synchronized-value.js"),ne=require("../icons/icon.js"),oe=require("../icons/chevron-up.js"),ae=require("../utilities/search.js"),re=require("./input.js"),B=require("./text.js"),X=require("./flex.js"),ue=require("./skeleton.js");function Y(){const{value:n,setValue:p}=se.default("isKeyboardNavigating");return e.useMemo(()=>({isKeyboardNavigating:n,setIsKeyboardNavigating:p}),[n,p])}function O(n){return"text"in n?n.text:n.label}const D="kakadu-components-1144794361",T="kakadu-components-2911184744";function ce({isSelected:n,id:p,value:k,label:a,onSelect:h,onHover:j}){const{isKeyboardNavigating:b}=Y(),g=e.useCallback(()=>{h(k)},[h,k]),l=e.useCallback(f=>{b||f.movementX===0&&f.movementY===0||j(k)},[b,j,k]),r=e.useRef(null);return e.useEffect(()=>{const f=r.current;n&&f&&b&&setTimeout(()=>{f.scrollIntoView({behavior:"smooth",block:"nearest"})},0)},[n,b]),i.jsxRuntimeExports.jsx("li",{ref:r,id:p,role:"option","aria-selected":n,tabIndex:-1,className:M.cx(D,"kakadu-components-4130497639",b?"kakadu-components-962373561":"kakadu-components-1109598791"),onClick:g,onMouseMove:l,children:i.jsxRuntimeExports.jsx(B.Span,{className:M.cx(T,typeof a=="string"&&"kakadu-components-154286052"),children:a})})}function ie({isLoading:n,id:p,activeOptionId:k,selectedValue:a,options:h,onSelect:j,onHover:b}){const g=e.useRef(null);return e.useEffect(()=>{const l=g.current;l&&l.scrollIntoView({behavior:"smooth",block:"nearest"})},[]),i.jsxRuntimeExports.jsxs("ul",{ref:g,id:p,role:"listbox","aria-label":"Options",tabIndex:-1,className:"kakadu-components-3718330689",children:[h.length===0?n?null:i.jsxRuntimeExports.jsxs(X.default,{"aria-atomic":!0,as:"li",role:"status","aria-live":"polite",direction:"row",preset:"start",gap:.5,className:D,children:[i.jsxRuntimeExports.jsx(ne.default,{size:15,type:"exclamationTriangle"}),i.jsxRuntimeExports.jsx(B.Span,{className:T,children:"No results."})]}):h.map((l,r)=>i.jsxRuntimeExports.jsx(ce,{...l,id:l.value===a?k:void 0,isSelected:l.value===a,onSelect:j,onHover:b},O(l)+r)),n?i.jsxRuntimeExports.jsx(X.default,{as:"li",alignment:"center",className:D,children:i.jsxRuntimeExports.jsx(B.Span,{className:M.cx(T,"kakadu-components-2015848015"),children:i.jsxRuntimeExports.jsx(ue.SkeletonInstance,{width:"100%",height:"1.3em"})})}):null]})}function le({isLoading:n,shouldFilterOptions:p=!0,label:k,options:a,error:h,warning:j,information:b,footnote:g,className:l,onChange:r,onSelect:f,...F}){const S=e.useRef(null),H=e.useId(),P=e.useId(),[w,L]=e.useState(!1),$=e.useCallback(()=>{L(!0)},[]),G=e.useCallback(t=>{var s;(s=S.current)!=null&&s.contains(t.relatedTarget)||L(!1)},[]),[y,u]=e.useState(!1);e.useEffect(()=>{u(w)},[w]);const[A,I]=e.useState(""),{value:v}=F,[m,N]=e.useState(v),[q,J]=e.useState(v),z=e.useRef(q),c=e.useCallback(t=>{J(t),z.current=t},[]);e.useEffect(()=>{N(v),c(v)},[v,c]),e.useEffect(()=>{const t=a.find(s=>s.value===v);t?I(O(t)):v===void 0&&I("")},[a,v]);const Q=e.useCallback(()=>{m&&(I(""),c(void 0))},[m,c]),W=e.useCallback((t,s)=>{I(t),r==null||r(t,s),u(!0),N(void 0)},[r]),Z=e.useCallback(t=>{var s;(s=S.current)!=null&&s.contains(t.target)&&u(!0)},[]),E=e.useCallback(t=>{const s=t==null?void 0:t.value;c(s),t?I(O(t)):(I(""),r==null||r("")),f==null||f(s)},[c,r,f]),ee=e.useCallback(t=>{const s=a.find(x=>x.value===t);E(s),N(t),u(!1)},[a,E]),te=e.useCallback(t=>{c(t)},[c]),C=e.useDeferredValue(A),d=e.useMemo(()=>!p||m?a:ae.default(C,a,O),[p,m,a,C]);e.useEffect(()=>{!m&&C.length>0&&d.length>0&&!d.some(t=>q===t.value)&&c(d[0].value)},[m,C,d,q,c]);const{setIsKeyboardNavigating:V}=Y();return e.useEffect(()=>{if(!w)return;const t=s=>{s.movementX===0&&s.movementY===0||V(!1)};return window.addEventListener("mousemove",t,{capture:!0}),()=>{window.removeEventListener("mousemove",t,{capture:!0})}},[w,V]),e.useEffect(()=>{if(!w)return;const t=s=>{var U;let x;const _=d.length,K=d.findIndex(o=>o.value===z.current),R=()=>{s.preventDefault(),s.stopPropagation(),s.stopImmediatePropagation()};switch(s.key){case"Enter":{const o=d[K];o&&(R(),V(!0),u(!1),E(o),N(o.value));break}case"Escape":{if(y)R(),m?c(void 0):E(void 0),u(!1);else if(m)R(),u(!0),E(void 0);else{R(),L(!1);const o=document.activeElement;o instanceof HTMLElement&&((U=S.current)!=null&&U.contains(o))&&o.blur()}return}case"ArrowDown":{x=K+1,u(!0);break}case"ArrowUp":{x=K-1,u(!0),x<0&&(x=_-1);break}case"Home":{u(!0),x=0;break}case"End":{u(!0),x=_-1;break}case"Backspace":{d.some(o=>o.value===m)&&(R(),E(void 0),u(!0));break}}if(x!==void 0&&(R(),V(!0),_>0)){const o=d[x%_];o&&c(o.value)}};return window.addEventListener("keydown",t,{capture:!0}),()=>{window.removeEventListener("keydown",t,{capture:!0})}},[w,d,V,u,E,N,y,m,c]),i.jsxRuntimeExports.jsx(re.default,{...F,ref:S,role:"combobox",autoComplete:"off","aria-controls":H,"aria-expanded":y,"aria-activedescendant":y?P:void 0,label:k,value:A,error:h,warning:j,information:b,footnote:g,attachments:y?i.jsxRuntimeExports.jsx(ie,{isLoading:n,id:H,activeOptionId:P,selectedValue:q,options:d,onSelect:ee,onHover:te}):null,className:M.cx(l,"kakadu-components-879486679"),onMouseDown:Z,onChange:W,onBeforeInput:Q,onFocus:$,onBlur:G,children:i.jsxRuntimeExports.jsx(oe.default,{width:14,height:14,className:"kakadu-components-158931186"})})}exports.default=le;exports.getComboboxOptionString=O;
1
+ "use strict";Object.defineProperties(exports,{__esModule:{value:!0},[Symbol.toStringTag]:{value:"Module"}});const i=require("../jsx-runtime-BB_1_6y_.js"),t=require("react"),_=require("@kuma-ui/core"),se=require("../hooks/use-synchronized-value.js"),ne=require("../icons/icon.js"),oe=require("../icons/chevron-up.js"),ae=require("../utilities/search.js"),X=require("../utilities/listeners.js"),re=require("./input.js"),K=require("./text.js"),U=require("./flex.js"),ue=require("./skeleton.js"),ce=X.default(s=>{window.addEventListener("mousemove",s,{capture:!0})},s=>{window.removeEventListener("mousemove",s,{capture:!0})}),ie=X.default(s=>{window.addEventListener("keydown",s,{capture:!0})},s=>{window.removeEventListener("keydown",s,{capture:!0})});function Y(){const{value:s,setValue:x}=se.default("isKeyboardNavigating");return t.useMemo(()=>({isKeyboardNavigating:s,setIsKeyboardNavigating:x}),[s,x])}function O(s){return"text"in s?s.text:s.label}const B="kakadu-components-1144794361",D="kakadu-components-2911184744";function le({isSelected:s,id:x,value:b,label:a,onSelect:k,onHover:E}){const{isKeyboardNavigating:p}=Y(),j=t.useCallback(()=>{k(b)},[k,b]),l=t.useCallback(f=>{p||f.movementX===0&&f.movementY===0||E(b)},[p,E,b]),r=t.useRef(null);return t.useEffect(()=>{const f=r.current;s&&f&&p&&setTimeout(()=>{f.scrollIntoView({behavior:"smooth",block:"nearest"})},0)},[s,p]),i.jsxRuntimeExports.jsx("li",{ref:r,id:x,role:"option","aria-selected":s,tabIndex:-1,className:_.cx(B,"kakadu-components-4130497639",p?"kakadu-components-962373561":"kakadu-components-1109598791"),onClick:j,onMouseMove:l,children:i.jsxRuntimeExports.jsx(K.Span,{className:_.cx(D,typeof a=="string"&&"kakadu-components-154286052"),children:a})})}function de({isLoading:s,id:x,activeOptionId:b,selectedValue:a,options:k,onSelect:E,onHover:p}){const j=t.useRef(null);return t.useEffect(()=>{const l=j.current;l&&l.scrollIntoView({behavior:"smooth",block:"nearest"})},[]),i.jsxRuntimeExports.jsxs("ul",{ref:j,id:x,role:"listbox","aria-label":"Options",tabIndex:-1,className:"kakadu-components-3718330689",children:[k.length===0?s?null:i.jsxRuntimeExports.jsxs(U.default,{"aria-atomic":!0,as:"li",role:"status","aria-live":"polite",direction:"row",preset:"start",gap:.5,className:B,children:[i.jsxRuntimeExports.jsx(ne.default,{size:15,type:"exclamationTriangle"}),i.jsxRuntimeExports.jsx(K.Span,{className:D,children:"No results."})]}):k.map((l,r)=>i.jsxRuntimeExports.jsx(le,{...l,id:l.value===a?b:void 0,isSelected:l.value===a,onSelect:E,onHover:p},O(l)+r)),s?i.jsxRuntimeExports.jsx(U.default,{as:"li",alignment:"center",className:B,children:i.jsxRuntimeExports.jsx(K.Span,{className:_.cx(D,"kakadu-components-2015848015"),children:i.jsxRuntimeExports.jsx(ue.SkeletonInstance,{width:"100%",height:"1.3em"})})}):null]})}function fe({isLoading:s,shouldFilterOptions:x=!0,label:b,options:a,error:k,warning:E,information:p,footnote:j,className:l,onChange:r,onSelect:f,...T}){const S=t.useRef(null),F=t.useId(),H=t.useId(),[g,C]=t.useState(!1),$=t.useCallback(()=>{C(!0)},[]),G=t.useCallback(e=>{var n;(n=S.current)!=null&&n.contains(e.relatedTarget)||C(!1)},[]),[y,u]=t.useState(!1);t.useEffect(()=>{u(g)},[g]);const[P,w]=t.useState(""),{value:v}=T,[m,N]=t.useState(v),[q,J]=t.useState(v),A=t.useRef(q),c=t.useCallback(e=>{J(e),A.current=e},[]);t.useEffect(()=>{N(v),c(v)},[v,c]),t.useEffect(()=>{const e=a.find(n=>n.value===v);e?w(O(e)):v===void 0&&w("")},[a,v]);const Q=t.useCallback(()=>{m&&(w(""),c(void 0))},[m,c]),W=t.useCallback((e,n)=>{w(e),r==null||r(e,n),u(!0),N(void 0)},[r]),Z=t.useCallback(e=>{var n;(n=S.current)!=null&&n.contains(e.target)&&u(!0)},[]),h=t.useCallback(e=>{const n=e==null?void 0:e.value;c(n),e?w(O(e)):(w(""),r==null||r("")),f==null||f(n)},[c,r,f]),ee=t.useCallback(e=>{const n=a.find(I=>I.value===e);h(n),N(e),u(!1)},[a,h]),te=t.useCallback(e=>{c(e)},[c]),M=t.useDeferredValue(P),d=t.useMemo(()=>!x||m?a:ae.default(M,a,O),[x,m,a,M]);t.useEffect(()=>{!m&&M.length>0&&d.length>0&&!d.some(e=>q===e.value)&&c(d[0].value)},[m,M,d,q,c]);const{setIsKeyboardNavigating:V}=Y();return t.useEffect(()=>{if(g)return ce(e=>{e.movementX===0&&e.movementY===0||V(!1)})},[g,V]),t.useEffect(()=>{if(g)return ie(e=>{var z;let n;const I=d.length,L=d.findIndex(o=>o.value===A.current),R=()=>{e.preventDefault(),e.stopPropagation(),e.stopImmediatePropagation()};switch(e.key){case"Enter":{const o=d[L];o&&(R(),V(!0),u(!1),h(o),N(o.value));break}case"Escape":{if(y)R(),m?c(void 0):h(void 0),u(!1);else if(m)R(),u(!0),h(void 0);else{R(),C(!1);const o=document.activeElement;o instanceof HTMLElement&&((z=S.current)!=null&&z.contains(o))&&o.blur()}return}case"ArrowDown":{n=L+1,u(!0);break}case"ArrowUp":{n=L-1,u(!0),n<0&&(n=I-1);break}case"Home":{u(!0),n=0;break}case"End":{u(!0),n=I-1;break}case"Backspace":{d.some(o=>o.value===m)&&(R(),h(void 0),u(!0));break}}if(n!==void 0&&(R(),V(!0),I>0)){const o=d[n%I];o&&c(o.value)}})},[g,d,V,u,h,N,y,m,c]),i.jsxRuntimeExports.jsx(re.default,{...T,ref:S,role:"combobox",autoComplete:"off","aria-controls":F,"aria-expanded":y,"aria-activedescendant":y?H:void 0,label:b,value:P,error:k,warning:E,information:p,footnote:j,attachments:y?i.jsxRuntimeExports.jsx(de,{isLoading:s,id:F,activeOptionId:H,selectedValue:q,options:d,onSelect:ee,onHover:te}):null,className:_.cx(l,"kakadu-components-879486679"),onMouseDown:Z,onChange:W,onBeforeInput:Q,onFocus:$,onBlur:G,children:i.jsxRuntimeExports.jsx(oe.default,{width:14,height:14,className:"kakadu-components-158931186"})})}exports.default=fe;exports.getComboboxOptionString=O;