@inkeep/cxkit-react 0.5.37 → 0.5.38

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 (100) hide show
  1. package/dist/_virtual/index.cjs +1 -0
  2. package/dist/_virtual/index.js +4 -0
  3. package/dist/_virtual/use-sync-external-store-shim.development.cjs +1 -0
  4. package/dist/_virtual/use-sync-external-store-shim.development.js +5 -0
  5. package/dist/_virtual/use-sync-external-store-shim.production.cjs +1 -0
  6. package/dist/_virtual/use-sync-external-store-shim.production.js +5 -0
  7. package/dist/components/embedded-search-and-chat.impl.cjs +1 -1
  8. package/dist/components/embedded-search.cjs +1 -1
  9. package/dist/components/embedded-search.js +29 -28
  10. package/dist/node_modules/.pnpm/@radix-ui_primitive@1.1.1/node_modules/@radix-ui/primitive/dist/index.cjs +1 -0
  11. package/dist/node_modules/.pnpm/@radix-ui_primitive@1.1.1/node_modules/@radix-ui/primitive/dist/index.js +9 -0
  12. package/dist/node_modules/.pnpm/@radix-ui_react-compose-refs@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-compose-refs/dist/index.cjs +1 -0
  13. package/dist/node_modules/.pnpm/@radix-ui_react-compose-refs@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-compose-refs/dist/index.js +29 -0
  14. package/dist/node_modules/.pnpm/@radix-ui_react-context@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-context/dist/index.cjs +1 -0
  15. package/dist/node_modules/.pnpm/@radix-ui_react-context@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-context/dist/index.js +68 -0
  16. package/dist/node_modules/.pnpm/@radix-ui_react-dialog@1.1.4_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19.0._ucun7uecgispdhq4vhr26lovum/node_modules/@radix-ui/react-dialog/dist/index.cjs +5 -0
  17. package/dist/node_modules/.pnpm/@radix-ui_react-dialog@1.1.4_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19.0._ucun7uecgispdhq4vhr26lovum/node_modules/@radix-ui/react-dialog/dist/index.js +253 -0
  18. package/dist/node_modules/.pnpm/@radix-ui_react-dismissable-layer@1.1.3_@types_react-dom@19.0.3_@types_react@19.0.10__@types__v2z2flytqizqloot5tnzsv72ca/node_modules/@radix-ui/react-dismissable-layer/dist/index.cjs +1 -0
  19. package/dist/node_modules/.pnpm/@radix-ui_react-dismissable-layer@1.1.3_@types_react-dom@19.0.3_@types_react@19.0.10__@types__v2z2flytqizqloot5tnzsv72ca/node_modules/@radix-ui/react-dismissable-layer/dist/index.js +127 -0
  20. package/dist/node_modules/.pnpm/@radix-ui_react-focus-guards@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-focus-guards/dist/index.cjs +1 -0
  21. package/dist/node_modules/.pnpm/@radix-ui_react-focus-guards@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-focus-guards/dist/index.js +17 -0
  22. package/dist/node_modules/.pnpm/@radix-ui_react-focus-scope@1.1.1_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@_jnpeo7zp526zce4fsmzkscleui/node_modules/@radix-ui/react-focus-scope/dist/index.cjs +1 -0
  23. package/dist/node_modules/.pnpm/@radix-ui_react-focus-scope@1.1.1_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@_jnpeo7zp526zce4fsmzkscleui/node_modules/@radix-ui/react-focus-scope/dist/index.js +136 -0
  24. package/dist/node_modules/.pnpm/@radix-ui_react-id@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-id/dist/index.cjs +1 -0
  25. package/dist/node_modules/.pnpm/@radix-ui_react-id@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-id/dist/index.js +13 -0
  26. package/dist/node_modules/.pnpm/@radix-ui_react-portal@1.1.3_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19.0._k6mvjumazun2buzo2dcp22wl2y/node_modules/@radix-ui/react-portal/dist/index.cjs +1 -0
  27. package/dist/node_modules/.pnpm/@radix-ui_react-portal@1.1.3_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19.0._k6mvjumazun2buzo2dcp22wl2y/node_modules/@radix-ui/react-portal/dist/index.js +15 -0
  28. package/dist/node_modules/.pnpm/@radix-ui_react-presence@1.1.2_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19._ceqn6mtlqa4vrghvmtsw5zpqya/node_modules/@radix-ui/react-presence/dist/index.cjs +1 -0
  29. package/dist/node_modules/.pnpm/@radix-ui_react-presence@1.1.2_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19._ceqn6mtlqa4vrghvmtsw5zpqya/node_modules/@radix-ui/react-presence/dist/index.js +70 -0
  30. package/dist/node_modules/.pnpm/@radix-ui_react-primitive@2.0.1_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19_zjcik7jr4zh3druglzeqejtmrq/node_modules/@radix-ui/react-primitive/dist/index.cjs +1 -0
  31. package/dist/node_modules/.pnpm/@radix-ui_react-primitive@2.0.1_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19_zjcik7jr4zh3druglzeqejtmrq/node_modules/@radix-ui/react-primitive/dist/index.js +35 -0
  32. package/dist/node_modules/.pnpm/@radix-ui_react-primitive@2.0.2_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19_xmwzi2lpk7e4iscy4hlhgpd4fu/node_modules/@radix-ui/react-primitive/dist/index.cjs +1 -0
  33. package/dist/node_modules/.pnpm/@radix-ui_react-primitive@2.0.2_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19_xmwzi2lpk7e4iscy4hlhgpd4fu/node_modules/@radix-ui/react-primitive/dist/index.js +31 -0
  34. package/dist/node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-slot/dist/index.cjs +1 -0
  35. package/dist/node_modules/.pnpm/@radix-ui_react-slot@1.1.1_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-slot/dist/index.js +47 -0
  36. package/dist/node_modules/.pnpm/@radix-ui_react-slot@1.1.2_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-slot/dist/index.cjs +1 -0
  37. package/dist/node_modules/.pnpm/@radix-ui_react-slot@1.1.2_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-slot/dist/index.js +43 -0
  38. package/dist/node_modules/.pnpm/@radix-ui_react-use-callback-ref@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-callback-ref/dist/index.cjs +1 -0
  39. package/dist/node_modules/.pnpm/@radix-ui_react-use-callback-ref@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-callback-ref/dist/index.js +10 -0
  40. package/dist/node_modules/.pnpm/@radix-ui_react-use-escape-keydown@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-escape-keydown/dist/index.cjs +1 -0
  41. package/dist/node_modules/.pnpm/@radix-ui_react-use-escape-keydown@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-escape-keydown/dist/index.js +14 -0
  42. package/dist/node_modules/.pnpm/@radix-ui_react-use-layout-effect@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-layout-effect/dist/index.cjs +1 -0
  43. package/dist/node_modules/.pnpm/@radix-ui_react-use-layout-effect@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-use-layout-effect/dist/index.js +6 -0
  44. package/dist/node_modules/.pnpm/aria-hidden@1.2.4/node_modules/aria-hidden/dist/es2015/index.cjs +1 -0
  45. package/dist/node_modules/.pnpm/aria-hidden@1.2.4/node_modules/aria-hidden/dist/es2015/index.js +52 -0
  46. package/dist/node_modules/.pnpm/get-nonce@1.0.1/node_modules/get-nonce/dist/es2015/index.cjs +1 -0
  47. package/dist/node_modules/.pnpm/get-nonce@1.0.1/node_modules/get-nonce/dist/es2015/index.js +7 -0
  48. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll-bar/dist/es2015/component.cjs +38 -0
  49. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll-bar/dist/es2015/component.js +72 -0
  50. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll-bar/dist/es2015/constants.cjs +1 -0
  51. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll-bar/dist/es2015/constants.js +8 -0
  52. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll-bar/dist/es2015/utils.cjs +1 -0
  53. package/dist/node_modules/.pnpm/react-remove-scroll-bar@2.3.8_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll-bar/dist/es2015/utils.js +26 -0
  54. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/Combination.cjs +1 -0
  55. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/Combination.js +12 -0
  56. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/SideEffect.cjs +4 -0
  57. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/SideEffect.js +113 -0
  58. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/UI.cjs +1 -0
  59. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/UI.js +32 -0
  60. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.cjs +1 -0
  61. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js +17 -0
  62. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/handleScroll.cjs +1 -0
  63. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/handleScroll.js +65 -0
  64. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/medium.cjs +1 -0
  65. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/medium.js +6 -0
  66. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/sidecar.cjs +1 -0
  67. package/dist/node_modules/.pnpm/react-remove-scroll@2.6.3_@types_react@19.0.10_react@19.0.0/node_modules/react-remove-scroll/dist/es2015/sidecar.js +8 -0
  68. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.0.10_react@19.0.0/node_modules/react-style-singleton/dist/es2015/component.cjs +1 -0
  69. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.0.10_react@19.0.0/node_modules/react-style-singleton/dist/es2015/component.js +12 -0
  70. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.0.10_react@19.0.0/node_modules/react-style-singleton/dist/es2015/hook.cjs +1 -0
  71. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.0.10_react@19.0.0/node_modules/react-style-singleton/dist/es2015/hook.js +16 -0
  72. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.0.10_react@19.0.0/node_modules/react-style-singleton/dist/es2015/singleton.cjs +1 -0
  73. package/dist/node_modules/.pnpm/react-style-singleton@2.2.3_@types_react@19.0.10_react@19.0.0/node_modules/react-style-singleton/dist/es2015/singleton.js +31 -0
  74. package/dist/node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.cjs +1 -0
  75. package/dist/node_modules/.pnpm/tslib@2.8.1/node_modules/tslib/tslib.es6.js +28 -0
  76. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.0.10_react@19.0.0/node_modules/use-callback-ref/dist/es2015/assignRef.cjs +1 -0
  77. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.0.10_react@19.0.0/node_modules/use-callback-ref/dist/es2015/assignRef.js +7 -0
  78. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.0.10_react@19.0.0/node_modules/use-callback-ref/dist/es2015/useMergeRef.cjs +1 -0
  79. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.0.10_react@19.0.0/node_modules/use-callback-ref/dist/es2015/useMergeRef.js +27 -0
  80. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.0.10_react@19.0.0/node_modules/use-callback-ref/dist/es2015/useRef.cjs +1 -0
  81. package/dist/node_modules/.pnpm/use-callback-ref@1.3.3_@types_react@19.0.10_react@19.0.0/node_modules/use-callback-ref/dist/es2015/useRef.js +26 -0
  82. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.0.10_react@19.0.0/node_modules/use-sidecar/dist/es2015/exports.cjs +1 -0
  83. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.0.10_react@19.0.0/node_modules/use-sidecar/dist/es2015/exports.js +19 -0
  84. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.0.10_react@19.0.0/node_modules/use-sidecar/dist/es2015/medium.cjs +1 -0
  85. package/dist/node_modules/.pnpm/use-sidecar@1.1.3_@types_react@19.0.10_react@19.0.0/node_modules/use-sidecar/dist/es2015/medium.js +68 -0
  86. package/dist/node_modules/.pnpm/use-sync-external-store@1.4.0_react@19.0.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.cjs +9 -0
  87. package/dist/node_modules/.pnpm/use-sync-external-store@1.4.0_react@19.0.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.development.js +68 -0
  88. package/dist/node_modules/.pnpm/use-sync-external-store@1.4.0_react@19.0.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.cjs +9 -0
  89. package/dist/node_modules/.pnpm/use-sync-external-store@1.4.0_react@19.0.0/node_modules/use-sync-external-store/cjs/use-sync-external-store-shim.production.js +56 -0
  90. package/dist/node_modules/.pnpm/use-sync-external-store@1.4.0_react@19.0.0/node_modules/use-sync-external-store/shim/index.cjs +1 -0
  91. package/dist/node_modules/.pnpm/use-sync-external-store@1.4.0_react@19.0.0/node_modules/use-sync-external-store/shim/index.js +8 -0
  92. package/dist/packages/primitives/src/atoms/cmdk/command-score.cjs +1 -0
  93. package/dist/packages/primitives/src/atoms/cmdk/command-score.js +46 -0
  94. package/dist/packages/primitives/src/atoms/cmdk/index.cjs +1 -0
  95. package/dist/packages/primitives/src/atoms/cmdk/index.js +519 -0
  96. package/dist/packages/primitives/src/atoms/shadow/context.cjs +1 -0
  97. package/dist/packages/primitives/src/atoms/shadow/context.js +8 -0
  98. package/dist/packages/primitives/src/constants/search.cjs +1 -0
  99. package/dist/packages/primitives/src/constants/search.js +5 -0
  100. package/package.json +4 -4
@@ -0,0 +1,519 @@
1
+ import { jsxs as Z, jsx as g } from "react/jsx-runtime";
2
+ import { Root as Se, Portal as Ee, Overlay as Ce, Content as we } from "../../../../../node_modules/.pnpm/@radix-ui_react-dialog@1.1.4_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19.0._ucun7uecgispdhq4vhr26lovum/node_modules/@radix-ui/react-dialog/dist/index.js";
3
+ import * as c from "react";
4
+ import { useCallback as le, useMemo as ye } from "react";
5
+ import { commandScore as Ie } from "./command-score.js";
6
+ import { Primitive as k } from "../../../../../node_modules/.pnpm/@radix-ui_react-primitive@2.0.2_@types_react-dom@19.0.3_@types_react@19.0.10__@types_react@19_xmwzi2lpk7e4iscy4hlhgpd4fu/node_modules/@radix-ui/react-primitive/dist/index.js";
7
+ import { useId as F } from "../../../../../node_modules/.pnpm/@radix-ui_react-id@1.1.0_@types_react@19.0.10_react@19.0.0/node_modules/@radix-ui/react-id/dist/index.js";
8
+ import { s as Re } from "../../../../../node_modules/.pnpm/use-sync-external-store@1.4.0_react@19.0.0/node_modules/use-sync-external-store/shim/index.js";
9
+ import { ASK_AI_TRIGGER_VALUE as xe } from "../../constants/search.js";
10
+ import { useShadow as ke } from "../shadow/context.js";
11
+ const D = '[cmdk-group=""]', X = '[cmdk-group-items=""]', Ae = '[cmdk-group-heading=""]', ae = '[cmdk-item=""]', ue = `${ae}:not([aria-disabled="true"])`, Y = "cmdk-item-select", M = "data-value", _e = (t, n, r) => Ie(t, n, r ?? []), de = c.createContext(void 0), G = () => c.useContext(de), fe = c.createContext(void 0), ee = () => c.useContext(fe), me = c.createContext(void 0), ve = c.forwardRef((t, n) => {
12
+ const r = P(() => /* @__PURE__ */ new Set()), i = P(() => /* @__PURE__ */ new Map()), a = P(() => /* @__PURE__ */ new Map()), f = P(() => /* @__PURE__ */ new Set()), s = he(t), {
13
+ label: v,
14
+ children: d,
15
+ value: S,
16
+ onValueChange: C,
17
+ filter: y,
18
+ shouldFilter: w,
19
+ loop: I,
20
+ disablePointerSelection: L = !1,
21
+ vimBindings: B = !0,
22
+ defaultSearch: te,
23
+ ...N
24
+ } = t, h = P(() => ({
25
+ /** Value of the search query. */
26
+ search: te ?? "",
27
+ /** Currently selected item value. */
28
+ value: t.value ?? t.defaultValue ?? "",
29
+ /** Currently selected item id. */
30
+ selectedItemId: void 0,
31
+ filtered: {
32
+ /** The count of all visible items. */
33
+ count: 0,
34
+ /** Map from visible item id to its search score. */
35
+ items: /* @__PURE__ */ new Map(),
36
+ /** Set of groups with at least one visible item. */
37
+ groups: /* @__PURE__ */ new Set()
38
+ }
39
+ })), U = F(), $ = F(), b = F(), R = c.useRef(null), x = Be();
40
+ _(() => {
41
+ if (S !== void 0) {
42
+ const e = S.trim();
43
+ h.current.value = e, E.emit();
44
+ }
45
+ }, [S]), _(() => {
46
+ x(6, ne);
47
+ }, []);
48
+ const pe = ke(), E = c.useMemo(() => ({
49
+ subscribe: (e) => (f.current.add(e), () => f.current.delete(e)),
50
+ snapshot: () => h.current,
51
+ setState: (e, l, o) => {
52
+ if (!Object.is(h.current[e], l)) {
53
+ if (h.current[e] = l, e === "search")
54
+ H(), q(), x(1, z);
55
+ else if (e === "value" && (pe?.shadowHost?.shadowRoot?.activeElement?.hasAttribute("cmdk-input") || x(1, () => {
56
+ A()?.focus();
57
+ }), x(7, () => {
58
+ h.current.selectedItemId = A()?.id, E.emit();
59
+ }), o || x(5, ne), s.current?.value !== void 0)) {
60
+ const p = l ?? "";
61
+ s.current.onValueChange?.(p);
62
+ return;
63
+ }
64
+ E.emit();
65
+ }
66
+ },
67
+ emit: () => {
68
+ f.current.forEach((e) => e());
69
+ }
70
+ }), []), j = c.useMemo(
71
+ () => ({
72
+ // Keep id → {value, keywords} mapping up-to-date
73
+ value: (e, l, o) => {
74
+ l !== a.current.get(e)?.value && (a.current.set(e, { value: l, keywords: o }), h.current.filtered.items.set(e, re(l, o)), x(2, () => {
75
+ q(), E.emit();
76
+ }));
77
+ },
78
+ // Track item lifecycle (mount, unmount)
79
+ item: (e, l) => (r.current.add(e), l && (i.current.has(l) ? i.current?.get(l)?.add(e) : i.current.set(l, /* @__PURE__ */ new Set([e]))), x(3, () => {
80
+ H(), q(), h.current.value || z(), E.emit();
81
+ }), () => {
82
+ a.current.delete(e), r.current.delete(e), h.current.filtered.items.delete(e);
83
+ const o = A();
84
+ x(4, () => {
85
+ H(), o?.getAttribute("id") === e && z(), E.emit();
86
+ });
87
+ }),
88
+ // Track group lifecycle (mount, unmount)
89
+ group: (e) => (i.current.has(e) || i.current.set(e, /* @__PURE__ */ new Set()), () => {
90
+ a.current.delete(e), i.current.delete(e);
91
+ }),
92
+ filter: () => !!s.current.shouldFilter,
93
+ label: v || t["aria-label"] || "",
94
+ getDisablePointerSelection: () => !!s.current.disablePointerSelection,
95
+ listId: U,
96
+ inputId: b,
97
+ labelId: $,
98
+ listInnerRef: R
99
+ }),
100
+ []
101
+ );
102
+ function re(e, l) {
103
+ const o = s.current?.filter ?? _e;
104
+ return e ? o?.(e, h.current.search, l) : 0;
105
+ }
106
+ function q() {
107
+ if (!h.current.search || // Explicitly false, because true | undefined is the default
108
+ s.current.shouldFilter === !1)
109
+ return;
110
+ const e = h.current.filtered.items, l = [];
111
+ h.current.filtered.groups.forEach((u) => {
112
+ const m = i.current.get(u);
113
+ let p = 0;
114
+ m.forEach((Q) => {
115
+ const be = e.get(Q);
116
+ p = Math.max(be, p);
117
+ }), l.push([u, p]);
118
+ });
119
+ const o = R.current;
120
+ T().sort((u, m) => {
121
+ const p = u.getAttribute("id"), Q = m.getAttribute("id");
122
+ return (e.get(Q) ?? 0) - (e.get(p) ?? 0);
123
+ }).forEach((u) => {
124
+ const m = u.closest(X);
125
+ if (m) {
126
+ const p = u.parentElement === m ? u : u.closest(`${X} > *`);
127
+ p && m.appendChild(p);
128
+ } else {
129
+ const p = u.parentElement === o ? u : u.closest(`${X} > *`);
130
+ p && o?.appendChild(p);
131
+ }
132
+ }), l.sort((u, m) => m[1] - u[1]).forEach((u) => {
133
+ const m = R.current?.querySelector(
134
+ `${D}[${M}="${encodeURIComponent(u[0])}"]`
135
+ );
136
+ m?.parentElement?.appendChild(m);
137
+ });
138
+ }
139
+ function z() {
140
+ const l = T().find(
141
+ (o) => o.getAttribute("aria-disabled") !== "true" && o.getAttribute("data-value") !== xe
142
+ )?.getAttribute(M);
143
+ E.setState("value", l || void 0);
144
+ }
145
+ function H() {
146
+ if (!h.current.search || // Explicitly false, because true | undefined is the default
147
+ s.current.shouldFilter === !1) {
148
+ h.current.filtered.count = r.current.size;
149
+ return;
150
+ }
151
+ h.current.filtered.groups = /* @__PURE__ */ new Set();
152
+ let e = 0;
153
+ for (const l of r.current) {
154
+ const o = a.current.get(l)?.value ?? "", u = a.current.get(l)?.keywords ?? [], m = re(o, u);
155
+ h.current.filtered.items.set(l, m), m > 0 && e++;
156
+ }
157
+ for (const [l, o] of i.current)
158
+ for (const u of o) {
159
+ const m = h.current.filtered.items.get(u);
160
+ if (m && m > 0) {
161
+ h.current.filtered.groups.add(l);
162
+ break;
163
+ }
164
+ }
165
+ h.current.filtered.count = e;
166
+ }
167
+ function ne() {
168
+ const e = A();
169
+ e && (e.parentElement?.firstChild === e && e.closest(D)?.querySelector(Ae)?.scrollIntoView({ block: "nearest" }), e.scrollIntoView({ block: "nearest" }));
170
+ }
171
+ function A() {
172
+ return R.current?.querySelector(`${ae}[aria-selected="true"]`);
173
+ }
174
+ function T() {
175
+ return Array.from(R.current?.querySelectorAll(ue) || []);
176
+ }
177
+ function W(e) {
178
+ const o = T()[e];
179
+ o && E.setState("value", o.getAttribute(M));
180
+ }
181
+ function J(e) {
182
+ const l = A(), o = T(), u = o.findIndex((p) => p === l);
183
+ let m = o[u + e];
184
+ s.current?.loop && (m = u + e < 0 ? o[o.length - 1] : u + e === o.length ? o[0] : o[u + e]), m && E.setState("value", m.getAttribute(M));
185
+ }
186
+ function oe(e) {
187
+ let o = A()?.closest(D), u;
188
+ for (; o && !u; )
189
+ o = e > 0 ? Ge(o, D) : Ke(o, D), u = o?.querySelector(ue);
190
+ u ? E.setState("value", u.getAttribute(M)) : J(e);
191
+ }
192
+ const ce = () => W(T().length - 1), se = (e) => {
193
+ e.preventDefault(), e.metaKey ? ce() : e.altKey ? oe(1) : J(1);
194
+ }, ie = (e) => {
195
+ e.preventDefault(), e.metaKey ? W(0) : e.altKey ? oe(-1) : J(-1);
196
+ };
197
+ return /* @__PURE__ */ Z(
198
+ k.div,
199
+ {
200
+ ref: n,
201
+ tabIndex: -1,
202
+ ...N,
203
+ "cmdk-root": "",
204
+ onKeyDown: (e) => {
205
+ if (N.onKeyDown?.(e), !e.defaultPrevented)
206
+ switch (e.key) {
207
+ case "n":
208
+ case "j": {
209
+ B && e.ctrlKey && se(e);
210
+ break;
211
+ }
212
+ case "ArrowDown": {
213
+ se(e);
214
+ break;
215
+ }
216
+ case "p":
217
+ case "k": {
218
+ B && e.ctrlKey && ie(e);
219
+ break;
220
+ }
221
+ case "ArrowUp": {
222
+ ie(e);
223
+ break;
224
+ }
225
+ case "Home": {
226
+ e.preventDefault(), W(0);
227
+ break;
228
+ }
229
+ case "End": {
230
+ e.preventDefault(), ce();
231
+ break;
232
+ }
233
+ case "Enter":
234
+ if (!e.nativeEvent.isComposing && e.keyCode !== 229) {
235
+ e.preventDefault();
236
+ const l = A();
237
+ if (l) {
238
+ const o = new Event(Y);
239
+ l.dispatchEvent(o);
240
+ }
241
+ }
242
+ }
243
+ },
244
+ style: {
245
+ display: "contents"
246
+ },
247
+ children: [
248
+ /* @__PURE__ */ g(
249
+ "label",
250
+ {
251
+ "cmdk-label": "",
252
+ htmlFor: j.inputId,
253
+ id: j.labelId,
254
+ style: Ue,
255
+ children: v
256
+ }
257
+ ),
258
+ K(t, (e) => /* @__PURE__ */ g(fe.Provider, { value: E, children: /* @__PURE__ */ g(de.Provider, { value: j, children: e }) }))
259
+ ]
260
+ }
261
+ );
262
+ }), Le = c.forwardRef((t, n) => {
263
+ const { id: r } = t, i = c.useRef(null), a = c.useContext(me), f = G(), s = he(t), v = s.current?.forceMount ?? a?.forceMount;
264
+ _(() => {
265
+ if (!v)
266
+ return f.item(r, a?.id);
267
+ }, [v]);
268
+ const d = ge(r, i, [t.value, t.children, i], t.keywords), S = ee(), C = V((b) => b.value && b.value === d.current), y = V(
269
+ (b) => v || f.filter() === !1 ? !0 : b.search ? b.filtered.items.get(r) > 0 : !0
270
+ );
271
+ c.useEffect(() => {
272
+ const b = i.current;
273
+ if (!b || t.disabled) return;
274
+ const R = () => I("keyboard");
275
+ return b.addEventListener(Y, R), () => b.removeEventListener(Y, R);
276
+ }, [y, t.onSelect, t.disabled]);
277
+ const w = le(() => {
278
+ S.setState("value", d.current, !0);
279
+ }, [S, d]), I = le(
280
+ (b = "click") => {
281
+ w(), s.current.onSelect?.({ value: d.current, trigger: b });
282
+ },
283
+ [w, s, d]
284
+ );
285
+ if (!y) return null;
286
+ const { disabled: L, value: B, onSelect: te, forceMount: N, keywords: h, ...U } = t, $ = ye(() => O([i, n]), [i, n]);
287
+ return /* @__PURE__ */ g(
288
+ k.div,
289
+ {
290
+ ref: $,
291
+ ...U,
292
+ id: r,
293
+ "cmdk-item": "",
294
+ role: "option",
295
+ "aria-disabled": !!L,
296
+ "aria-selected": !!C,
297
+ "data-disabled": !!L,
298
+ "data-selected": !!C,
299
+ onPointerMove: L || f.getDisablePointerSelection() ? void 0 : w,
300
+ onClick: L ? void 0 : I,
301
+ onFocus: L ? void 0 : w,
302
+ children: t.children
303
+ }
304
+ );
305
+ }), Me = c.forwardRef((t, n) => {
306
+ const { heading: r, children: i, forceMount: a, ...f } = t, s = F(), v = c.useRef(null), d = c.useRef(null), S = F(), C = G(), y = V(
307
+ (I) => a || C.filter() === !1 ? !0 : I.search ? I.filtered.groups.has(s) : !0
308
+ );
309
+ _(() => C.group(s), []), ge(s, v, [t.value, t.heading, d]);
310
+ const w = c.useMemo(() => ({ id: s, forceMount: a }), [a]);
311
+ return /* @__PURE__ */ Z(
312
+ k.div,
313
+ {
314
+ ref: O([v, n]),
315
+ ...f,
316
+ "cmdk-group": "",
317
+ role: "presentation",
318
+ hidden: y ? void 0 : !0,
319
+ children: [
320
+ r && /* @__PURE__ */ g("div", { ref: d, "cmdk-group-heading": "", "aria-hidden": !0, id: S, children: r }),
321
+ K(t, (I) => (
322
+ // biome-ignore lint/a11y/useSemanticElements: <explanation>
323
+ /* @__PURE__ */ g("div", { "cmdk-group-items": "", role: "group", "aria-labelledby": r ? S : void 0, children: /* @__PURE__ */ g(me.Provider, { value: w, children: I }) })
324
+ ))
325
+ ]
326
+ }
327
+ );
328
+ }), Pe = c.forwardRef((t, n) => {
329
+ const { alwaysRender: r, ...i } = t, a = c.useRef(null), f = V((s) => !s.search);
330
+ return !r && !f ? null : /* @__PURE__ */ g(
331
+ k.div,
332
+ {
333
+ ref: O([a, n]),
334
+ ...i,
335
+ "cmdk-separator": "",
336
+ role: "separator"
337
+ }
338
+ );
339
+ }), Ve = c.forwardRef((t, n) => {
340
+ const { onValueChange: r, ...i } = t, a = t.value != null, f = ee(), s = V((d) => d.search), v = G();
341
+ return c.useEffect(() => {
342
+ t.value != null && f.setState("search", t.value);
343
+ }, [t.value]), /* @__PURE__ */ g(
344
+ k.input,
345
+ {
346
+ ref: n,
347
+ ...i,
348
+ "cmdk-input": "",
349
+ autoComplete: "off",
350
+ autoCorrect: "off",
351
+ spellCheck: !1,
352
+ "aria-autocomplete": "list",
353
+ role: "combobox",
354
+ "aria-expanded": !0,
355
+ "aria-controls": v.listId,
356
+ "aria-labelledby": v.labelId,
357
+ id: v.inputId,
358
+ type: "text",
359
+ value: a ? t.value : s,
360
+ onChange: (d) => {
361
+ a || f.setState("search", d.target.value), r?.(d.target.value);
362
+ }
363
+ }
364
+ );
365
+ }), Te = c.forwardRef((t, n) => {
366
+ const { children: r, label: i = "Suggestions", ...a } = t, f = c.useRef(null), s = c.useRef(null), v = G();
367
+ return c.useEffect(() => {
368
+ if (s.current && f.current) {
369
+ const d = s.current, S = f.current;
370
+ let C;
371
+ const y = new ResizeObserver(() => {
372
+ C = requestAnimationFrame(() => {
373
+ const w = d.offsetHeight;
374
+ S.style.setProperty("--cmdk-list-height", w.toFixed(1) + "px");
375
+ });
376
+ });
377
+ return y.observe(d), () => {
378
+ cancelAnimationFrame(C), y.unobserve(d);
379
+ };
380
+ }
381
+ }, []), /* @__PURE__ */ g(
382
+ k.div,
383
+ {
384
+ ref: O([f, n]),
385
+ ...a,
386
+ "cmdk-list": "",
387
+ tabIndex: -1,
388
+ "aria-label": i,
389
+ id: v.listId,
390
+ children: K(t, (d) => /* @__PURE__ */ g("div", { ref: O([s, v.listInnerRef]), "cmdk-list-sizer": "", children: d }))
391
+ }
392
+ );
393
+ }), De = c.forwardRef((t, n) => {
394
+ const { open: r, onOpenChange: i, overlayClassName: a, contentClassName: f, container: s, ...v } = t;
395
+ return /* @__PURE__ */ g(Se, { open: r, onOpenChange: i, children: /* @__PURE__ */ Z(Ee, { container: s, children: [
396
+ /* @__PURE__ */ g(Ce, { "cmdk-overlay": "", className: a }),
397
+ /* @__PURE__ */ g(we, { "aria-label": t.label, "cmdk-dialog": "", className: f, children: /* @__PURE__ */ g(ve, { ref: n, ...v }) })
398
+ ] }) });
399
+ }), Fe = c.forwardRef((t, n) => V((i) => i.filtered.count === 0) ? /* @__PURE__ */ g(k.div, { ref: n, ...t, "cmdk-empty": "", role: "presentation" }) : null), Oe = c.forwardRef((t, n) => {
400
+ const { progress: r, children: i, label: a = "Loading...", ...f } = t;
401
+ return /* @__PURE__ */ g(
402
+ k.div,
403
+ {
404
+ ref: n,
405
+ ...f,
406
+ "cmdk-loading": "",
407
+ role: "progressbar",
408
+ "aria-valuenow": r,
409
+ "aria-valuemin": 0,
410
+ "aria-valuemax": 100,
411
+ "aria-label": a,
412
+ children: K(t, (s) => /* @__PURE__ */ g("div", { "aria-hidden": !0, children: s }))
413
+ }
414
+ );
415
+ });
416
+ Object.assign(ve, {
417
+ List: Te,
418
+ Item: Le,
419
+ Input: Ve,
420
+ Group: Me,
421
+ Separator: Pe,
422
+ Dialog: De,
423
+ Empty: Fe,
424
+ Loading: Oe
425
+ });
426
+ function Ge(t, n) {
427
+ let r = t.nextElementSibling;
428
+ for (; r; ) {
429
+ if (r.matches(n)) return r;
430
+ r = r.nextElementSibling;
431
+ }
432
+ }
433
+ function Ke(t, n) {
434
+ let r = t.previousElementSibling;
435
+ for (; r; ) {
436
+ if (r.matches(n)) return r;
437
+ r = r.previousElementSibling;
438
+ }
439
+ }
440
+ function he(t) {
441
+ const n = c.useRef(t);
442
+ return _(() => {
443
+ n.current = t;
444
+ }), n;
445
+ }
446
+ const _ = typeof window > "u" ? c.useEffect : c.useLayoutEffect;
447
+ function P(t) {
448
+ const n = c.useRef(void 0);
449
+ return n.current === void 0 && (n.current = t()), n;
450
+ }
451
+ function O(t) {
452
+ return (n) => {
453
+ t.forEach((r) => {
454
+ typeof r == "function" ? r(n) : r != null && (r.current = n);
455
+ });
456
+ };
457
+ }
458
+ function V(t) {
459
+ const n = ee(), r = () => t(n.snapshot());
460
+ return Re.useSyncExternalStore(n.subscribe, r, r);
461
+ }
462
+ function ge(t, n, r, i = []) {
463
+ const a = c.useRef(void 0), f = G();
464
+ return _(() => {
465
+ const s = (() => {
466
+ for (const d of r) {
467
+ if (typeof d == "string")
468
+ return d.trim();
469
+ if (typeof d == "object" && "current" in d)
470
+ return d.current ? d.current.textContent?.trim() : a.current;
471
+ }
472
+ })(), v = i.map((d) => d.trim());
473
+ f.value(t, s, v), n.current?.setAttribute(M, s), a.current = s;
474
+ }), a;
475
+ }
476
+ const Be = () => {
477
+ const [t, n] = c.useState(), r = P(() => /* @__PURE__ */ new Map());
478
+ return _(() => {
479
+ r.current.forEach((i) => i()), r.current = /* @__PURE__ */ new Map();
480
+ }, [t]), (i, a) => {
481
+ r.current.set(i, a), n({});
482
+ };
483
+ };
484
+ function Ne(t) {
485
+ const n = t.type;
486
+ return typeof n == "function" ? n(t.props) : "render" in n ? n.render(t.props) : t;
487
+ }
488
+ function K({ asChild: t, children: n }, r) {
489
+ return t && c.isValidElement(n) ? c.cloneElement(
490
+ Ne(n),
491
+ { ref: n.ref },
492
+ // biome-ignore lint/suspicious/noExplicitAny: <explanation>
493
+ r(n.props.children)
494
+ ) : r(n);
495
+ }
496
+ const Ue = {
497
+ position: "absolute",
498
+ width: "1px",
499
+ height: "1px",
500
+ padding: "0",
501
+ margin: "-1px",
502
+ overflow: "hidden",
503
+ clip: "rect(0, 0, 0, 0)",
504
+ whiteSpace: "nowrap",
505
+ borderWidth: "0"
506
+ };
507
+ export {
508
+ De as CommandDialog,
509
+ Fe as CommandEmpty,
510
+ Ve as CommandInput,
511
+ Le as CommandItem,
512
+ Te as CommandList,
513
+ Oe as CommandLoading,
514
+ ve as CommandRoot,
515
+ Pe as CommandSeparator,
516
+ _e as defaultFilter,
517
+ V as useCommandState,
518
+ ee as useCommandStore
519
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});require("react/jsx-runtime");const e=require("react"),t=e.createContext(void 0),o=()=>e.useContext(t);exports.ShadowContext=t;exports.useShadow=o;
@@ -0,0 +1,8 @@
1
+ "use client";
2
+ import "react/jsx-runtime";
3
+ import { useContext as t, createContext as o } from "react";
4
+ const e = o(void 0), s = () => t(e);
5
+ export {
6
+ e as ShadowContext,
7
+ s as useShadow
8
+ };
@@ -0,0 +1 @@
1
+ "use client";"use strict";Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const _="__ask_ai__";exports.ASK_AI_TRIGGER_VALUE=_;
@@ -0,0 +1,5 @@
1
+ "use client";
2
+ const _ = "__ask_ai__";
3
+ export {
4
+ _ as ASK_AI_TRIGGER_VALUE
5
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inkeep/cxkit-react",
3
- "version": "0.5.37",
3
+ "version": "0.5.38",
4
4
  "description": "",
5
5
  "license": "Inkeep, Inc. Customer License (IICL) v1.1",
6
6
  "homepage": "",
@@ -21,7 +21,7 @@
21
21
  "sideEffects": false,
22
22
  "dependencies": {
23
23
  "@radix-ui/react-use-controllable-state": "^1.1.0",
24
- "@inkeep/cxkit-styled": "0.5.37"
24
+ "@inkeep/cxkit-styled": "0.5.38"
25
25
  },
26
26
  "devDependencies": {
27
27
  "@biomejs/biome": "1.9.4",
@@ -44,8 +44,8 @@
44
44
  "typescript": "5.7.3",
45
45
  "vite": "5.4.11",
46
46
  "vite-plugin-dts": "4.4.0",
47
- "@inkeep/cxkit-color-mode": "0.5.37",
48
- "@inkeep/cxkit-types": "0.5.37"
47
+ "@inkeep/cxkit-color-mode": "0.5.38",
48
+ "@inkeep/cxkit-types": "0.5.38"
49
49
  },
50
50
  "module": "dist/index.js",
51
51
  "types": "dist/index.d.ts",