@aivenio/aquarium 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 (43) hide show
  1. package/dist/_variables.scss +2 -1
  2. package/dist/atoms.cjs +200 -134
  3. package/dist/atoms.mjs +112 -46
  4. package/dist/charts.cjs +4 -3
  5. package/dist/charts.mjs +4 -3
  6. package/dist/src/atoms/ChoiceChip/ChoiceChip.js +3 -3
  7. package/dist/src/atoms/CommandPalette/CommandPalette.d.ts +16 -0
  8. package/dist/src/atoms/CommandPalette/CommandPalette.js +3 -1
  9. package/dist/src/atoms/DataList/DataList.js +1 -1
  10. package/dist/src/atoms/Modal/Modal.d.ts +73 -3
  11. package/dist/src/atoms/Modal/Modal.js +48 -41
  12. package/dist/src/atoms/Timeline/Timeline.d.ts +3 -2
  13. package/dist/src/atoms/Timeline/Timeline.js +2 -2
  14. package/dist/src/molecules/CommandPalette/CommandPalette.d.ts +12 -4
  15. package/dist/src/molecules/CommandPalette/CommandPalette.js +17 -5
  16. package/dist/src/molecules/CommandPalette/CommandPaletteProvider.js +86 -22
  17. package/dist/src/molecules/CommandPalette/findSubCommands.d.ts +13 -0
  18. package/dist/src/molecules/CommandPalette/findSubCommands.js +65 -0
  19. package/dist/src/molecules/CommandPalette/types.d.ts +31 -1
  20. package/dist/src/molecules/CommandPalette/types.js +10 -1
  21. package/dist/src/molecules/Modal/Modal.js +2 -2
  22. package/dist/src/molecules/Popover/Popover.d.ts +3 -0
  23. package/dist/src/molecules/Popover/Popover.js +1 -1
  24. package/dist/src/molecules/Section/Section.d.ts +9 -0
  25. package/dist/src/molecules/Section/Section.js +13 -6
  26. package/dist/src/molecules/SegmentedControl/SegmentedControl.js +3 -3
  27. package/dist/src/molecules/Table/Table.d.ts +3 -0
  28. package/dist/src/molecules/Table/Table.js +4 -1
  29. package/dist/src/molecules/TagLabel/TagLabel.d.ts +1 -1
  30. package/dist/src/molecules/TagLabel/TagLabel.js +1 -1
  31. package/dist/src/molecules/Timeline/Timeline.d.ts +3 -2
  32. package/dist/src/molecules/Timeline/Timeline.js +16 -4
  33. package/dist/src/molecules/Typography/Typography.d.ts +3 -0
  34. package/dist/src/molecules/Typography/Typography.js +1 -1
  35. package/dist/src/tokens/tokens.json +4 -3
  36. package/dist/src/utils/useScrollFade.d.ts +17 -0
  37. package/dist/src/utils/useScrollFade.js +44 -0
  38. package/dist/styles.css +59 -34
  39. package/dist/system.cjs +950 -730
  40. package/dist/system.mjs +906 -684
  41. package/dist/tokens.json +4 -3
  42. package/dist/tsconfig.module.tsbuildinfo +1 -1
  43. package/package.json +1 -1
@@ -12,38 +12,7 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  import React from 'react';
13
13
  import { tv } from 'tailwind-variants';
14
14
  import { Typography } from '../../../src/atoms/Typography/Typography';
15
- const bodyMaskClasses = tv({
16
- variants: {
17
- position: {
18
- before: [
19
- 'before:content-[""]',
20
- 'before:pointer-events-none',
21
- 'before:sticky',
22
- 'before:top-0',
23
- 'before:left-0',
24
- 'before:h-5',
25
- 'before:flex-shrink-0',
26
- 'before:bg-gradient-to-b',
27
- 'before:from-overlay',
28
- 'before:to-transparent',
29
- 'before:z-10',
30
- ],
31
- after: [
32
- 'after:content-[""]',
33
- 'after:pointer-events-none',
34
- 'after:sticky',
35
- 'after:bottom-3',
36
- 'after:left-0',
37
- 'after:h-5',
38
- 'after:flex-shrink-0',
39
- 'after:bg-gradient-to-t',
40
- 'after:from-overlay',
41
- 'after:to-transparent',
42
- 'after:z-10',
43
- ],
44
- },
45
- },
46
- });
15
+ import { useScrollFade } from '../../../src/utils/useScrollFade';
47
16
  export const modalStyles = tv({
48
17
  slots: {
49
18
  overlay: 'inset-0 overflow-y-auto z-modal fixed',
@@ -55,11 +24,7 @@ export const modalStyles = tv({
55
24
  title: '',
56
25
  subtitle: 'max-w-[700px]',
57
26
  closeButtonContainer: 'absolute top-[24px] right-[28px]',
58
- body: [
59
- 'grow overflow-y-auto text-default flex flex-col outline-none',
60
- bodyMaskClasses({ position: 'before' }),
61
- bodyMaskClasses({ position: 'after' }),
62
- ],
27
+ body: 'grow overflow-y-auto text-default flex flex-col outline-none',
63
28
  bodyContent: 'px-7 grow',
64
29
  footer: 'px-7 pt-4 pb-6',
65
30
  actions: 'flex gap-3 justify-end',
@@ -104,9 +69,47 @@ export const modalStyles = tv({
104
69
  headerImage: 'bg-medium',
105
70
  },
106
71
  },
72
+ showTopFade: {
73
+ true: {
74
+ body: [
75
+ 'before:content-[""]',
76
+ 'before:pointer-events-none',
77
+ 'before:sticky',
78
+ 'before:top-0',
79
+ 'before:left-0',
80
+ 'before:h-5',
81
+ 'before:-mb-5',
82
+ 'before:flex-shrink-0',
83
+ 'before:bg-gradient-to-b',
84
+ 'before:from-overlay',
85
+ 'before:to-transparent',
86
+ 'before:z-10',
87
+ ],
88
+ },
89
+ },
90
+ showBottomFade: {
91
+ true: {
92
+ body: [
93
+ 'after:content-[""]',
94
+ 'after:pointer-events-none',
95
+ 'after:sticky',
96
+ 'after:bottom-0',
97
+ 'after:left-0',
98
+ 'after:h-[60px]',
99
+ 'after:-mt-[60px]',
100
+ 'after:flex-shrink-0',
101
+ 'after:bg-gradient-to-t',
102
+ 'after:from-overlay',
103
+ 'after:to-transparent',
104
+ 'after:z-10',
105
+ ],
106
+ },
107
+ },
107
108
  },
108
109
  defaultVariants: {
109
110
  isResponsive: true,
111
+ showTopFade: false,
112
+ showBottomFade: false,
110
113
  },
111
114
  compoundVariants: [
112
115
  {
@@ -217,12 +220,16 @@ Modal.TitleContainer = (_a) => {
217
220
  const { titleContainer } = modalStyles();
218
221
  return (React.createElement("div", Object.assign({}, rest, { className: titleContainer({ className }) }), children));
219
222
  };
220
- Modal.Body = (_a) => {
223
+ const ModalBody = (_a) => {
221
224
  var { children, className, noFooter = false, maxHeight, style, size } = _a, rest = __rest(_a, ["children", "className", "noFooter", "maxHeight", "style", "size"]);
222
225
  const { body, bodyContent } = modalStyles({ size });
223
- return (React.createElement("div", Object.assign({}, rest, { className: body({ className }), style: Object.assign({ maxHeight }, style) }),
224
- React.createElement("div", { className: bodyContent({ noFooter }) }, children)));
226
+ const { containerRef, topSentinelRef, bottomSentinelRef, showTopFade, showBottomFade } = useScrollFade();
227
+ return (React.createElement("div", Object.assign({}, rest, { ref: containerRef, className: body({ className, showTopFade, showBottomFade }), style: Object.assign({ maxHeight }, style) }),
228
+ React.createElement("div", { ref: topSentinelRef, "aria-hidden": "true", className: "h-1px" }),
229
+ React.createElement("div", { className: bodyContent({ noFooter }) }, children),
230
+ React.createElement("div", { ref: bottomSentinelRef, "aria-hidden": "true", className: "h-1px -mt-1px" })));
225
231
  };
232
+ Modal.Body = ModalBody;
226
233
  Modal.Footer = (_a) => {
227
234
  var { children, className } = _a, rest = __rest(_a, ["children", "className"]);
228
235
  const { footer } = modalStyles();
@@ -233,4 +240,4 @@ Modal.Actions = (_a) => {
233
240
  const { actions } = modalStyles();
234
241
  return (React.createElement("div", Object.assign({}, rest, { className: actions({ className }) }), children));
235
242
  };
236
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvTW9kYWwvTW9kYWwudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFpQyxNQUFNLE9BQU8sQ0FBQztBQUN0RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBd0M3RCxNQUFNLGVBQWUsR0FBRyxFQUFFLENBQUM7SUFDekIsUUFBUSxFQUFFO1FBQ1IsUUFBUSxFQUFFO1lBQ1IsTUFBTSxFQUFFO2dCQUNOLHFCQUFxQjtnQkFDckIsNEJBQTRCO2dCQUM1QixlQUFlO2dCQUNmLGNBQWM7Z0JBQ2QsZUFBZTtnQkFDZixZQUFZO2dCQUNaLHNCQUFzQjtnQkFDdEIseUJBQXlCO2dCQUN6QixxQkFBcUI7Z0JBQ3JCLHVCQUF1QjtnQkFDdkIsYUFBYTthQUNkO1lBQ0QsS0FBSyxFQUFFO2dCQUNMLG9CQUFvQjtnQkFDcEIsMkJBQTJCO2dCQUMzQixjQUFjO2dCQUNkLGdCQUFnQjtnQkFDaEIsY0FBYztnQkFDZCxXQUFXO2dCQUNYLHFCQUFxQjtnQkFDckIsd0JBQXdCO2dCQUN4QixvQkFBb0I7Z0JBQ3BCLHNCQUFzQjtnQkFDdEIsWUFBWTthQUNiO1NBQ0Y7S0FDRjtDQUNGLENBQUMsQ0FBQztBQUVILE1BQU0sQ0FBQyxNQUFNLFdBQVcsR0FBRyxFQUFFLENBQUM7SUFDNUIsS0FBSyxFQUFFO1FBQ0wsT0FBTyxFQUFFLHVDQUF1QztRQUNoRCxRQUFRLEVBQUUsK0NBQStDO1FBQ3pELE1BQU0sRUFBRSw4REFBOEQ7UUFDdEUsTUFBTSxFQUFFLGtEQUFrRDtRQUMxRCxXQUFXLEVBQUUsZ0NBQWdDO1FBQzdDLGNBQWMsRUFBRSxvQkFBb0I7UUFDcEMsS0FBSyxFQUFFLEVBQUU7UUFDVCxRQUFRLEVBQUUsZUFBZTtRQUN6Qixv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
243
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTW9kYWwuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvTW9kYWwvTW9kYWwudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFpQyxNQUFNLE9BQU8sQ0FBQztBQUN0RCxPQUFPLEVBQUUsRUFBRSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFdkMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBRTdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQXdDeEQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLEVBQUUsQ0FBQztJQUM1QixLQUFLLEVBQUU7UUFDTCxPQUFPLEVBQUUsdUNBQXVDO1FBQ2hELFFBQVEsRUFBRSwrQ0FBK0M7UUFDekQsTUFBTSxFQUFFLDhEQUE4RDtRQUN0RSxNQUFNLEVBQUUsa0RBQWtEO1FBQzFELFdBQVcsRUFBRSxnQ0FBZ0M7UUFDN0MsY0FBYyxFQUFFLG9CQUFvQjtRQUNwQyxLQUFLLEVBQUUsRUFBRTtRQUNULFFBQVEsRUFBRSxlQUFlO1FBQ3pCLG9CQUFvQixFQUFFLGtDQUFrQztRQUN4RCxJQUFJLEVBQUUsOERBQThEO1FBQ3BFLFdBQVcsRUFBRSxXQUFXO1FBQ3hCLE1BQU0sRUFBRSxnQkFBZ0I7UUFDeEIsT0FBTyxFQUFFLHdCQUF3QjtLQUNsQztJQUNELFFBQVEsRUFBRTtRQUNSLElBQUksRUFBRTtZQUNKLE1BQU0sRUFBRTtnQkFDTixPQUFPLEVBQUUsa0NBQWtDO2dCQUMzQyxNQUFNLEVBQUUsVUFBVTthQUNuQjtZQUNELE1BQU0sRUFBRTtnQkFDTixPQUFPLEVBQUUsbUJBQW1CO2dCQUM1QixNQUFNLEVBQUUsaUJBQWlCO2dCQUN6QixLQUFLLEVBQUUsbURBQW1EO2FBQzNEO1NBQ0Y7UUFDRCxJQUFJLEVBQUU7WUFDSixFQUFFLEVBQUUsRUFBRTtZQUNOLEVBQUUsRUFBRSxFQUFFO1lB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
@@ -1,6 +1,7 @@
1
1
  import React from 'react';
2
- type DivProps = React.HTMLProps<HTMLDivElement>;
3
- type ComposedTimelineProps = React.FC<DivProps> & {
2
+ type DivProps = React.HTMLAttributes<HTMLDivElement>;
3
+ type LiProps = React.LiHTMLAttributes<HTMLLIElement>;
4
+ type ComposedTimelineProps = React.FC<LiProps> & {
4
5
  Separator: typeof Separator;
5
6
  Content: typeof Content;
6
7
  LineContainer: typeof LineContainer;
@@ -13,7 +13,7 @@ import React from 'react';
13
13
  import { clsx } from 'clsx';
14
14
  export const Timeline = (_a) => {
15
15
  var { className } = _a, rest = __rest(_a, ["className"]);
16
- return (React.createElement("div", Object.assign({}, rest, { className: clsx('grid grid-cols-[16px_1fr] gap-x-4', className) })));
16
+ return (React.createElement("li", Object.assign({}, rest, { className: clsx('grid grid-cols-[16px_1fr] gap-x-4', className) })));
17
17
  };
18
18
  const Content = (_a) => {
19
19
  var { className } = _a, rest = __rest(_a, ["className"]);
@@ -40,4 +40,4 @@ LineContainer.Line = Line;
40
40
  Timeline.Separator = Separator;
41
41
  Timeline.LineContainer = LineContainer;
42
42
  Timeline.Content = Content;
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZWxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvVGltZWxpbmUvVGltZWxpbmUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFVNUIsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUEwQixDQUFDLEVBQXNCLEVBQUUsRUFBRTtRQUExQixFQUFFLFNBQVMsT0FBVyxFQUFOLElBQUksY0FBcEIsYUFBc0IsQ0FBRjtJQUFPLE9BQUEsQ0FDekUsNkNBQVMsSUFBSSxJQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsbUNBQW1DLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FDbkYsQ0FBQTtDQUFBLENBQUM7QUFFRixNQUFNLE9BQU8sR0FBdUIsQ0FBQyxFQUFzQixFQUFFLEVBQUU7UUFBMUIsRUFBRSxTQUFTLE9BQVcsRUFBTixJQUFJLGNBQXBCLGFBQXNCLENBQUY7SUFBTyxPQUFBLDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFBO0NBQUEsQ0FBQztBQUV0SCxNQUFNLFNBQVMsR0FBNkMsQ0FBQyxFQUFzQixFQUFFLEVBQUU7UUFBMUIsRUFBRSxTQUFTLE9BQVcsRUFBTixJQUFJLGNBQXBCLGFBQXNCLENBQUY7SUFBTyxPQUFBLENBQ3RGLDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLDBDQUEwQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQzFGLENBQUE7Q0FBQSxDQUFDO0FBRUYsTUFBTSxhQUFhLEdBQStDLENBQUMsRUFBc0IsRUFBRSxFQUFFO1FBQTFCLEVBQUUsU0FBUyxPQUFXLEVBQU4sSUFBSSxjQUFwQixhQUFzQixDQUFGO0lBQU8sT0FBQSxDQUM1Riw2Q0FBUyxJQUFJLElBQUUsU0FBUyxFQUFFLElBQUksQ0FBQywwQkFBMEIsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUMxRSxDQUFBO0NBQUEsQ0FBQztBQUVGLE1BQU0sSUFBSSxHQUF1QixDQUFDLEVBQXNCLEVBQUUsRUFBRTtRQUExQixFQUFFLFNBQVMsT0FBVyxFQUFOLElBQUksY0FBcEIsYUFBc0IsQ0FBRjtJQUFPLE9BQUEsQ0FDM0QsNkNBQVMsSUFBSSxJQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsMENBQTBDLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FDMUYsQ0FBQTtDQUFBLENBQUM7QUFFRixNQUFNLEdBQUcsR0FBdUIsQ0FBQyxFQUFzQixFQUFFLEVBQUU7UUFBMUIsRUFBRSxTQUFTLE9BQVcsRUFBTixJQUFJLGNBQXBCLGFBQXNCLENBQUY7SUFBTyxPQUFBLENBQzFELDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLG9DQUFvQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQ3BGLENBQUE7Q0FBQSxDQUFDO0FBRUYsU0FBUyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7QUFDcEIsYUFBYSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7QUFFMUIsUUFBUSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7QUFDL0IsUUFBUSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7QUFDdkMsUUFBUSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMifQ==
43
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVGltZWxpbmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvVGltZWxpbmUvVGltZWxpbmUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFXNUIsTUFBTSxDQUFDLE1BQU0sUUFBUSxHQUEwQixDQUFDLEVBQXNCLEVBQUUsRUFBRTtRQUExQixFQUFFLFNBQVMsT0FBVyxFQUFOLElBQUksY0FBcEIsYUFBc0IsQ0FBRjtJQUFPLE9BQUEsQ0FDekUsNENBQVEsSUFBSSxJQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsbUNBQW1DLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FDbEYsQ0FBQTtDQUFBLENBQUM7QUFFRixNQUFNLE9BQU8sR0FBdUIsQ0FBQyxFQUFzQixFQUFFLEVBQUU7UUFBMUIsRUFBRSxTQUFTLE9BQVcsRUFBTixJQUFJLGNBQXBCLGFBQXNCLENBQUY7SUFBTyxPQUFBLDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLE1BQU0sRUFBRSxTQUFTLENBQUMsSUFBSSxDQUFBO0NBQUEsQ0FBQztBQUV0SCxNQUFNLFNBQVMsR0FBNkMsQ0FBQyxFQUFzQixFQUFFLEVBQUU7UUFBMUIsRUFBRSxTQUFTLE9BQVcsRUFBTixJQUFJLGNBQXBCLGFBQXNCLENBQUY7SUFBTyxPQUFBLENBQ3RGLDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLDBDQUEwQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQzFGLENBQUE7Q0FBQSxDQUFDO0FBRUYsTUFBTSxhQUFhLEdBQStDLENBQUMsRUFBc0IsRUFBRSxFQUFFO1FBQTFCLEVBQUUsU0FBUyxPQUFXLEVBQU4sSUFBSSxjQUFwQixhQUFzQixDQUFGO0lBQU8sT0FBQSxDQUM1Riw2Q0FBUyxJQUFJLElBQUUsU0FBUyxFQUFFLElBQUksQ0FBQywwQkFBMEIsRUFBRSxTQUFTLENBQUMsSUFBSSxDQUMxRSxDQUFBO0NBQUEsQ0FBQztBQUVGLE1BQU0sSUFBSSxHQUF1QixDQUFDLEVBQXNCLEVBQUUsRUFBRTtRQUExQixFQUFFLFNBQVMsT0FBVyxFQUFOLElBQUksY0FBcEIsYUFBc0IsQ0FBRjtJQUFPLE9BQUEsQ0FDM0QsNkNBQVMsSUFBSSxJQUFFLFNBQVMsRUFBRSxJQUFJLENBQUMsMENBQTBDLEVBQUUsU0FBUyxDQUFDLElBQUksQ0FDMUYsQ0FBQTtDQUFBLENBQUM7QUFFRixNQUFNLEdBQUcsR0FBdUIsQ0FBQyxFQUFzQixFQUFFLEVBQUU7UUFBMUIsRUFBRSxTQUFTLE9BQVcsRUFBTixJQUFJLGNBQXBCLGFBQXNCLENBQUY7SUFBTyxPQUFBLENBQzFELDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsSUFBSSxDQUFDLG9DQUFvQyxFQUFFLFNBQVMsQ0FBQyxJQUFJLENBQ3BGLENBQUE7Q0FBQSxDQUFDO0FBRUYsU0FBUyxDQUFDLEdBQUcsR0FBRyxHQUFHLENBQUM7QUFDcEIsYUFBYSxDQUFDLElBQUksR0FBRyxJQUFJLENBQUM7QUFFMUIsUUFBUSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7QUFDL0IsUUFBUSxDQUFDLGFBQWEsR0FBRyxhQUFhLENBQUM7QUFDdkMsUUFBUSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUMifQ==
@@ -13,7 +13,7 @@ declare const Section: {
13
13
  <T extends object>({ title, items, children, ...props }: SectionProps<T>): React.JSX.Element | null;
14
14
  displayName: string;
15
15
  };
16
- export type CommandProps = Omit<AriaMenuItemProps, 'className'> & {
16
+ export type CommandProps = Omit<AriaMenuItemProps, 'className' | 'onAction'> & {
17
17
  /**
18
18
  * The text label displayed for this command. Also used as the default search text.
19
19
  *
@@ -30,11 +30,19 @@ export type CommandProps = Omit<AriaMenuItemProps, 'className'> & {
30
30
  /** When true, this command is always visible regardless of the search query. Useful for loading indicators or status messages. */
31
31
  static?: boolean;
32
32
  className?: string;
33
- /** Callback fired when the command is selected. */
34
- onAction: () => void;
33
+ /**
34
+ * Callback fired when a leaf command is selected. Omit on parent commands — they open
35
+ * a sub-level instead of firing an action.
36
+ */
37
+ onAction?: () => void;
38
+ /**
39
+ * Placeholder text for the search input of the sub-level this command opens.
40
+ * Only meaningful on parent commands (those with nested `<Command>` children).
41
+ */
42
+ subPlaceholder?: string;
35
43
  };
36
44
  declare const Command: {
37
- ({ className, icon, label, keywords, disabled, static: isStatic, ...props }: CommandProps): React.JSX.Element;
45
+ ({ className, icon, label, keywords, disabled, static: isStatic, subPlaceholder: _subPlaceholder, ...props }: CommandProps): React.JSX.Element;
38
46
  displayName: string;
39
47
  };
40
48
  type CommandPaletteComponent = {
@@ -15,7 +15,9 @@ import { useId } from '@react-aria/utils';
15
15
  import { InlineIcon } from '../../../src/molecules/Icon/Icon';
16
16
  import { commandPaletteStyles } from '../../../src/atoms/CommandPalette/CommandPalette';
17
17
  import { dropdownMenuGroupStyles, dropdownMenuItemStyles } from '../../../src/atoms/DropdownMenu/DropdownMenu';
18
+ import chevronRight from '../../../src/icons/chevronRight';
18
19
  import { CommandPaletteProvider, useCommandPalette, useCommandPaletteQuery, useCommandPaletteRootContext, } from './CommandPaletteProvider';
20
+ import { containsCommand } from './findSubCommands';
19
21
  import { rankChildren } from './rankCommands';
20
22
  import { ActionTypes, FIELD_SEPARATOR, STATIC_ITEM_MARKER } from './types';
21
23
  const Commands = ({ children }) => {
@@ -58,15 +60,25 @@ const Section = (_a) => {
58
60
  };
59
61
  Section.displayName = 'CommandPalette.Section';
60
62
  const Command = (_a) => {
61
- var { className, icon, label, keywords, disabled, static: isStatic } = _a, props = __rest(_a, ["className", "icon", "label", "keywords", "disabled", "static"]);
63
+ var { className, icon, label, keywords, disabled, static: isStatic, subPlaceholder: _subPlaceholder } = _a, props = __rest(_a, ["className", "icon", "label", "keywords", "disabled", "static", "subPlaceholder"]);
62
64
  const styles = commandPaletteStyles();
63
- const textValue = props.textValue || label || (typeof props.children === 'string' ? props.children : undefined);
65
+ // Walk `children` for nested `<Command>` elements if any exist, this is a parent,
66
+ // and its children will be rendered as a separate level instead of inline. Render-prop
67
+ // children (functions) are not introspectable; they can't declare sub-commands.
68
+ const isParent = typeof props.children !== 'function' && containsCommand(props.children);
69
+ const textValue = props.textValue || label;
64
70
  // Join label and keywords with FIELD_SEPARATOR so the Autocomplete predicate can
65
71
  // rank them as distinct fields (prevents subsequences from crossing the boundary).
66
72
  const resolvedTextValue = [textValue, ...(keywords !== null && keywords !== void 0 ? keywords : [])].filter(Boolean).join(FIELD_SEPARATOR);
67
- return (React.createElement(AriaMenuItem, Object.assign({ className: (values) => dropdownMenuItemStyles(Object.assign(Object.assign({}, values), { className: ['Aquarium-CommandPalette.Item', className] })), textValue: isStatic ? `${STATIC_ITEM_MARKER}${resolvedTextValue}` : resolvedTextValue, isDisabled: disabled }, props), composeRenderProps(props.children, (children) => (React.createElement(React.Fragment, null,
73
+ // Strip children (nested <Command>s are looked up on push, not rendered inline) and,
74
+ // for parents, also strip any consumer-provided onAction — selection on a parent means
75
+ // "push a new level" and is handled centrally by the overlay's AriaMenu onAction.
76
+ const { children: _children, onAction: consumerOnAction } = props, restProps = __rest(props, ["children", "onAction"]);
77
+ const ariaProps = isParent ? restProps : Object.assign(Object.assign({}, restProps), { onAction: consumerOnAction });
78
+ return (React.createElement(AriaMenuItem, Object.assign({ className: (values) => dropdownMenuItemStyles(Object.assign(Object.assign({}, values), { className: ['Aquarium-CommandPalette.Item', className] })), textValue: isStatic ? `${STATIC_ITEM_MARKER}${resolvedTextValue}` : resolvedTextValue, isDisabled: disabled }, ariaProps), composeRenderProps(isParent ? undefined : props.children, (children) => (React.createElement(React.Fragment, null,
68
79
  icon && React.createElement(InlineIcon, { icon: icon, className: styles.itemIcon() }),
69
- React.createElement("span", { className: "grow" }, label || children))))));
80
+ React.createElement("span", { className: "grow" }, label || children),
81
+ isParent && React.createElement(InlineIcon, { icon: chevronRight, className: styles.itemIcon() }))))));
70
82
  };
71
83
  Command.displayName = 'CommandPalette.Command';
72
84
  export const CommandPalette = {
@@ -76,4 +88,4 @@ export const CommandPalette = {
76
88
  Command,
77
89
  };
78
90
  export { useCommandPalette };
79
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9sZWN1bGVzL0NvbW1hbmRQYWxldHRlL0NvbW1hbmRQYWxldHRlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxVQUFVLElBQUksY0FBYyxFQUM1QixrQkFBa0IsRUFDbEIsTUFBTSxJQUFJLFVBQVUsRUFDcEIsUUFBUSxJQUFJLFlBQVksRUFFeEIsV0FBVyxJQUFJLGVBQWUsR0FFL0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRHLE9BQU8sRUFDTCxzQkFBc0IsRUFHdEIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0Qiw0QkFBNEIsR0FDN0IsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsWUFBWSxFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDOUMsT0FBTyxFQUFFLFdBQVcsRUFBRSxlQUFlLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFVM0UsTUFBTSxRQUFRLEdBQTRCLENBQUMsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO0lBQ3pELE1BQU0sRUFBRSxHQUFHLEtBQUssRUFBRSxDQUFDO0lBQ25CLE1BQU0sQ0FBQyxFQUFFLFFBQVEsQ0FBQyxHQUFHLDRCQUE0QixFQUFFLENBQUM7SUFFcEQsU0FBUyxDQUFDLEdBQUcsRUFBRTtRQUNiLFFBQVEs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
91
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9sZWN1bGVzL0NvbW1hbmRQYWxldHRlL0NvbW1hbmRQYWxldHRlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxVQUFVLElBQUksY0FBYyxFQUM1QixrQkFBa0IsRUFDbEIsTUFBTSxJQUFJLFVBQVUsRUFDcEIsUUFBUSxJQUFJLFlBQVksRUFFeEIsV0FBVyxJQUFJLGVBQWUsR0FFL0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRHLE9BQU8sWUFBWSxNQUFNLHdCQUF3QixDQUFDO0FBRWxELE9BQU8sRUFDTCxzQkFBc0IsRUFHdEIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0Qiw0QkFBNEIsR0FDN0IsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBVTNFLE1BQU0sUUFBUSxHQUE0QixDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTtJQUN6RCxNQUFNLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUNuQixNQUFNLENB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
@@ -1,12 +1,15 @@
1
- import React, { createContext, useCallback, useContext, useEffect, useReducer, useRef, useState, } from 'react';
2
- import { Autocomplete as AriaAutocomplete, Dialog as AriaDialog, Input as AriaInput, Menu as AriaMenu, Modal as AriaModal, ModalOverlay as AriaModalOverlay, SearchField as AriaSearchField, } from 'react-aria-components';
1
+ import React, { createContext, useCallback, useContext, useEffect, useMemo, useReducer, useRef, } from 'react';
2
+ import { Autocomplete as AriaAutocomplete, Dialog as AriaDialog, Input as AriaInput, Menu as AriaMenu, MenuItem as AriaMenuItem, MenuSection as AriaMenuSection, Modal as AriaModal, ModalOverlay as AriaModalOverlay, SearchField as AriaSearchField, } from 'react-aria-components';
3
3
  import { isCtrlKeyPressed } from '@react-aria/utils';
4
+ import { InlineIcon } from '../../../src/molecules/Icon/Icon';
4
5
  import { CommandPalette as Base, commandPaletteStyles } from '../../../src/atoms/CommandPalette/CommandPalette';
5
- import { dropdownMenuStyles } from '../../../src/atoms/DropdownMenu/DropdownMenu';
6
+ import { dropdownMenuItemStyles, dropdownMenuStyles } from '../../../src/atoms/DropdownMenu/DropdownMenu';
6
7
  import { Modal as BaseModal, modalStyles } from '../../../src/atoms/Modal/Modal';
7
8
  import { SearchIcon } from '../../../src/utils/form/InputAdornment/InputAdornment';
9
+ import chevronLeft from '../../../src/icons/chevronLeft';
10
+ import { containsCommand, findCommandInRegistrations, findSubCommands } from './findSubCommands';
8
11
  import { autocompleteFilter } from './rankCommands';
9
- import { ActionTypes } from './types';
12
+ import { ActionTypes, ROOT_LEVEL, STATIC_ITEM_MARKER } from './types';
10
13
  // -- Reducer --
11
14
  const reducer = (state, action) => {
12
15
  switch (action.type) {
@@ -23,7 +26,30 @@ const reducer = (state, action) => {
23
26
  case ActionTypes.Open:
24
27
  return Object.assign(Object.assign({}, state), { isOpen: true });
25
28
  case ActionTypes.Close:
26
- return Object.assign(Object.assign({}, state), { isOpen: false });
29
+ // Closing always resets navigation to the root so the next open starts fresh.
30
+ return Object.assign(Object.assign({}, state), { isOpen: false, levelStack: [ROOT_LEVEL] });
31
+ case ActionTypes.PushLevel:
32
+ return Object.assign(Object.assign({}, state), { levelStack: [
33
+ ...state.levelStack,
34
+ {
35
+ parentId: action.parentId,
36
+ parentLabel: action.parentLabel,
37
+ placeholder: action.placeholder,
38
+ query: '',
39
+ },
40
+ ] });
41
+ case ActionTypes.PopLevel:
42
+ return state.levelStack.length > 1 ? Object.assign(Object.assign({}, state), { levelStack: state.levelStack.slice(0, -1) }) : state;
43
+ case ActionTypes.PopToIndex:
44
+ // Keep entries 0..index (inclusive); ignore if index is out of range.
45
+ if (action.index < 0 || action.index >= state.levelStack.length - 1) {
46
+ return state;
47
+ }
48
+ return Object.assign(Object.assign({}, state), { levelStack: state.levelStack.slice(0, action.index + 1) });
49
+ case ActionTypes.SetQuery: {
50
+ const top = state.levelStack.length - 1;
51
+ return Object.assign(Object.assign({}, state), { levelStack: state.levelStack.map((lvl, i) => (i === top ? Object.assign(Object.assign({}, lvl), { query: action.query }) : lvl)) });
52
+ }
27
53
  default:
28
54
  throw new Error('Unsupported action type.');
29
55
  }
@@ -51,7 +77,7 @@ export const useCommandPaletteQuery = () => useContext(CommandPaletteQueryContex
51
77
  export { CommandPaletteQueryContext };
52
78
  const DEFAULT_SHORTCUT = { key: 'k', metaKey: true };
53
79
  export const CommandPaletteProvider = ({ children, shortcut = DEFAULT_SHORTCUT, marginTop = '100px', placeholder = 'Search commands...', emptyState, isDisabled = false, onOpenChange, onInputChange, }) => {
54
- const [state, dispatch] = useReducer(reducer, { registrations: [], isOpen: false });
80
+ const [state, dispatch] = useReducer(reducer, { registrations: [], isOpen: false, levelStack: [ROOT_LEVEL] });
55
81
  const guardedDispatch = useCallback((action) => {
56
82
  if (isDisabled && action.type === ActionTypes.Open) {
57
83
  return;
@@ -89,42 +115,80 @@ export const CommandPaletteProvider = ({ children, shortcut = DEFAULT_SHORTCUT,
89
115
  children,
90
116
  !isDisabled && (React.createElement(CommandPaletteOverlay, { marginTop: marginTop, placeholder: placeholder, emptyState: emptyState, onInputChange: onInputChange }))));
91
117
  };
118
+ const BackMenuItem = ({ label, onBack }) => {
119
+ const styles = commandPaletteStyles();
120
+ return (React.createElement(AriaMenuItem, { id: "__command-palette-back", textValue: `${STATIC_ITEM_MARKER}Back`, className: (values) => dropdownMenuItemStyles(Object.assign(Object.assign({}, values), { className: styles.breadcrumbHeader() })), onAction: onBack },
121
+ React.createElement(InlineIcon, { icon: chevronLeft, className: styles.breadcrumbBackButton() }),
122
+ React.createElement("span", null, label)));
123
+ };
92
124
  const CommandPaletteOverlay = ({ marginTop, placeholder, emptyState, onInputChange, }) => {
125
+ var _a;
93
126
  const [state, dispatch] = useCommandPaletteRootContext();
94
- const [query, setQuery] = useState('');
95
127
  const styles = commandPaletteStyles();
96
128
  const { overlay, dialog } = modalStyles({ kind: 'dialog' });
97
- // Clear the query on every close so the next open starts fresh — regardless of
98
- // whether the close came from Escape, backdrop click, action selection, or Cmd+K.
99
- useEffect(() => {
100
- if (!state.isOpen) {
101
- setQuery('');
129
+ const depth = state.levelStack.length - 1;
130
+ const currentLevel = state.levelStack[depth];
131
+ const levelPlaceholder = (_a = currentLevel.placeholder) !== null && _a !== void 0 ? _a : placeholder;
132
+ // Memoize the rendered items so Autocomplete/Menu see a stable child tree across
133
+ // SetQuery dispatches (which fire on every keystroke). React.ReactNode technically
134
+ // unions Promise<React.Node>; eslint's promise rule misfires here.
135
+ // eslint-disable-next-line @typescript-eslint/promise-function-async
136
+ const menuChildren = useMemo(() => {
137
+ if (currentLevel.parentId === null) {
138
+ return state.registrations.map((registration) => (React.createElement(React.Fragment, { key: registration.id }, registration.children)));
102
139
  }
103
- }, [state.isOpen]);
140
+ return findSubCommands(state.registrations, currentLevel.parentId);
141
+ }, [state.registrations, currentLevel.parentId]);
104
142
  const handleOpenChange = (isOpen) => {
143
+ if (!isOpen && depth > 0) {
144
+ // When we're in a sub-level, a "dismiss" (Escape or backdrop click) means go back
145
+ // one level instead of closing the palette entirely.
146
+ dispatch({ type: ActionTypes.PopLevel });
147
+ return;
148
+ }
105
149
  dispatch(isOpen ? { type: ActionTypes.Open } : { type: ActionTypes.Close });
106
150
  };
107
- const handleAction = () => {
151
+ // AriaMenu fires this for any item selection (parent or leaf). Parents push a new level
152
+ // and don't close; leaves close the palette. A leaf's consumer-provided `onAction` is
153
+ // wired directly on the `<AriaMenuItem>` and fires independently.
154
+ const handleMenuAction = (key) => {
155
+ if (key === '__command-palette-back') {
156
+ return;
157
+ }
158
+ const element = findCommandInRegistrations(state.registrations, String(key));
159
+ if (element !== null && containsCommand(element.props.children)) {
160
+ const props = element.props;
161
+ dispatch({
162
+ type: ActionTypes.PushLevel,
163
+ parentId: String(key),
164
+ parentLabel: props.label,
165
+ placeholder: props.subPlaceholder,
166
+ });
167
+ return;
168
+ }
108
169
  dispatch({ type: ActionTypes.Close });
109
170
  };
110
171
  const handleSearchChange = (value) => {
111
- setQuery(value);
172
+ dispatch({ type: ActionTypes.SetQuery, query: value });
112
173
  onInputChange === null || onInputChange === void 0 ? void 0 : onInputChange(value);
113
174
  };
114
175
  if (!state.isOpen) {
115
176
  return null;
116
177
  }
117
- return (React.createElement(CommandPaletteQueryContext.Provider, { value: query },
178
+ return (React.createElement(CommandPaletteQueryContext.Provider, { value: currentLevel.query },
118
179
  React.createElement(AriaModalOverlay, { isOpen: state.isOpen, onOpenChange: handleOpenChange, isDismissable: true, className: overlay({ className: 'Aquarium-CommandPalette items-start' }) },
119
180
  React.createElement(BaseModal.BackDrop, null),
120
181
  React.createElement(AriaModal, { className: styles.modal(), style: marginTop ? { marginTop } : undefined },
121
182
  React.createElement(AriaDialog, { "aria-label": "Command palette", className: dialog({ className: styles.dialog() }) },
122
- React.createElement(AriaAutocomplete, { filter: autocompleteFilter },
123
- React.createElement(AriaSearchField, { autoFocus: true, "aria-label": "Search commands", className: styles.searchContainer(), onChange: handleSearchChange },
183
+ React.createElement(AriaAutocomplete, { key: depth, filter: autocompleteFilter, defaultInputValue: currentLevel.query, onInputChange: handleSearchChange },
184
+ React.createElement(AriaSearchField, { autoFocus: true, "aria-label": "Search commands", className: styles.searchContainer() },
124
185
  React.createElement(SearchIcon, { "aria-hidden": true }),
125
- React.createElement(AriaInput, { placeholder: placeholder, className: styles.searchInput() })),
126
- React.createElement(AriaMenu, { onAction: handleAction, className: dropdownMenuStyles({
186
+ React.createElement(AriaInput, { placeholder: levelPlaceholder, className: styles.searchInput() })),
187
+ React.createElement(AriaMenu, { onAction: handleMenuAction, className: dropdownMenuStyles({
127
188
  className: 'Aquarium-CommandPalette.List flex-1 min-h-0 p-3 overflow-y-auto',
128
- }), renderEmptyState: () => React.createElement(Base.EmptyState, null, emptyState) }, state.registrations.map((registration) => (React.createElement(React.Fragment, { key: registration.id }, registration.children))))))))));
189
+ }), renderEmptyState: () => React.createElement(Base.EmptyState, null, emptyState) },
190
+ depth > 0 && currentLevel.parentLabel && (React.createElement(AriaMenuSection, null,
191
+ React.createElement(BackMenuItem, { label: currentLevel.parentLabel, onBack: () => dispatch({ type: ActionTypes.PopLevel }) }))),
192
+ menuChildren)))))));
129
193
  };
130
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGVQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvQ29tbWFuZFBhbGV0dGUvQ29tbWFuZFBhbGV0dGVQcm92aWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFDWixhQUFhLEVBRWIsV0FBVyxFQUNYLFVBQVUsRUFDVixTQUFTLEVBQ1QsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEdBQ1QsTUFBTSxPQUFPLENBQUM7QUFDZixPQUFPLEVBQ0wsWUFBWSxJQUFJLGdCQUFnQixFQUNoQyxNQUFNLElBQUksVUFBVSxFQUNwQixLQUFLLElBQUksU0FBUyxFQUNsQixJQUFJLElBQUksUUFBUSxFQUNoQixLQUFLLElBQUksU0FBUyxFQUNsQixZQUFZLElBQUksZ0JBQWdCLEVBQ2hDLFdBQVcsSUFBSSxlQUFlLEdBQy9CLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFckQsT0FBTyxFQUFFLGNBQWMsSUFBSSxJQUFJLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx5Q0FBeUMsQ0FBQztBQUN2RyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUN6RSxPQUFPLEVBQUUsS0FBSyxJQUFJLFNBQVMsRUFBRSxXQUFXLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUV4RSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sOENBQThDLENBQUM7QUFFMUUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFDcEQsT0FBTyxFQUFnQixXQUFXLEVBQWMsTUFBTSxTQUFTLENBQUM7QUFFaEUsZ0JBQWdCO0FBRWhCLE1BQU0sT0FBTyxHQUFHLENBQUMsS0FBWSxFQUFFLE1BQWUsRUFBUyxFQUFFO0lBQ3ZELFFBQVEsTUFBTSxDQUFDLElBQUks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
194
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGVQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9tb2xlY3VsZXMvQ29tbWFuZFBhbGV0dGUvQ29tbWFuZFBhbGV0dGVQcm92aWRlci50c3giXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLEVBQUUsRUFDWixhQUFhLEVBRWIsV0FBVyxFQUNYLFVBQVUsRUFDVixTQUFTLEVBQ1QsT0FBTyxFQUNQLFVBQVUsRUFDVixNQUFNLEdBQ1AsTUFBTSxPQUFPLENBQUM7QUFDZixPQUFPLEVBQ0wsWUFBWSxJQUFJLGdCQUFnQixFQUNoQyxNQUFNLElBQUksVUFBVSxFQUNwQixLQUFLLElBQUksU0FBUyxFQUNsQixJQUFJLElBQUksUUFBUSxFQUNoQixRQUFRLElBQUksWUFBWSxFQUN4QixXQUFXLElBQUksZUFBZSxFQUM5QixLQUFLLElBQUksU0FBUyxFQUNsQixZQUFZLElBQUksZ0JBQWdCLEVBQ2hDLFdBQVcsSUFBSSxlQUFlLEdBQy9CLE1BQU0sdUJBQXVCLENBQUM7QUFDL0IsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFckQsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJELE9BQU8sRUFBRSxjQUFjLElBQUksSUFBSSxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUNBQXlDLENBQUM7QUFDdkcsT0FBTyxFQUFFLHNCQUFzQixFQUFFLGtCQUFrQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDakcsT0FBTyxFQUFFLEtBQUssSUFBSSxTQUFTLEVBQUUsV0FBVyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFeEUsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhDQUE4QyxDQUFDO0FBRTFFLE9BQU8sV0FBVyxNQUFNLHVCQUF1QixDQUFDO0FBRWhELE9BQU8sRUFBRSxlQUFlLEVBQUUsMEJBQTBCLEVBQUUsZUFBZSxFQUFF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
@@ -0,0 +1,13 @@
1
+ import React from 'react';
2
+ import type { CommandPaletteRegistration } from './types';
3
+ /**
4
+ * Returns the children (raw React nodes) of the Command with the given `parentId`,
5
+ * searched across every registration. `null` when the parent is not found.
6
+ *
7
+ * Callers render the result as the contents of the sub-level.
8
+ */
9
+ export declare const findSubCommands: (registrations: CommandPaletteRegistration[], parentId: string) => React.ReactNode;
10
+ /** Returns the Command element (across all registrations) with the given `id`, or null. */
11
+ export declare const findCommandInRegistrations: (registrations: CommandPaletteRegistration[], id: string) => React.ReactElement | null;
12
+ /** True when `children` contains at least one Command element (directly or nested). */
13
+ export declare const containsCommand: (children: React.ReactNode) => boolean;
@@ -0,0 +1,65 @@
1
+ import React from 'react';
2
+ /** Match by displayName to avoid a circular import with CommandPalette.tsx. */
3
+ const isCommand = (el) => typeof el.type !== 'string' && el.type.displayName === 'CommandPalette.Command';
4
+ /**
5
+ * Depth-first walk that returns the Command element whose `props.id === id`, or null.
6
+ * Descends through Fragments and Sections; stops at the matching Command (does NOT
7
+ * recurse into its descendants once matched).
8
+ */
9
+ const findCommandById = (node, id) => {
10
+ for (const child of React.Children.toArray(node)) {
11
+ if (!React.isValidElement(child)) {
12
+ continue;
13
+ }
14
+ if (isCommand(child) && child.props.id === id) {
15
+ return child;
16
+ }
17
+ const nested = findCommandById(child.props.children, id);
18
+ if (nested !== null) {
19
+ return nested;
20
+ }
21
+ }
22
+ return null;
23
+ };
24
+ /**
25
+ * Returns the children (raw React nodes) of the Command with the given `parentId`,
26
+ * searched across every registration. `null` when the parent is not found.
27
+ *
28
+ * Callers render the result as the contents of the sub-level.
29
+ */
30
+ export const findSubCommands = (registrations, parentId) => {
31
+ var _a;
32
+ const match = findCommandInRegistrations(registrations, parentId);
33
+ if (match === null) {
34
+ return null;
35
+ }
36
+ return (_a = match.props.children) !== null && _a !== void 0 ? _a : null;
37
+ };
38
+ /** Returns the Command element (across all registrations) with the given `id`, or null. */
39
+ export const findCommandInRegistrations = (registrations, id) => {
40
+ for (const reg of registrations) {
41
+ const match = findCommandById(reg.children, id);
42
+ if (match !== null) {
43
+ return match;
44
+ }
45
+ }
46
+ return null;
47
+ };
48
+ /** True when `children` contains at least one Command element (directly or nested). */
49
+ export const containsCommand = (children) => findFirstCommand(children) !== null;
50
+ const findFirstCommand = (node) => {
51
+ for (const child of React.Children.toArray(node)) {
52
+ if (!React.isValidElement(child)) {
53
+ continue;
54
+ }
55
+ if (isCommand(child)) {
56
+ return child;
57
+ }
58
+ const nested = findFirstCommand(child.props.children);
59
+ if (nested !== null) {
60
+ return nested;
61
+ }
62
+ }
63
+ return null;
64
+ };
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmluZFN1YkNvbW1hbmRzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL21vbGVjdWxlcy9Db21tYW5kUGFsZXR0ZS9maW5kU3ViQ29tbWFuZHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBSTFCLCtFQUErRTtBQUMvRSxNQUFNLFNBQVMsR0FBRyxDQUFDLEVBQXNCLEVBQVcsRUFBRSxDQUNwRCxPQUFPLEVBQUUsQ0FBQyxJQUFJLEtBQUssUUFBUSxJQUFLLEVBQUUsQ0FBQyxJQUFpQyxDQUFDLFdBQVcsS0FBSyx3QkFBd0IsQ0FBQztBQUVoSDs7OztHQUlHO0FBQ0gsTUFBTSxlQUFlLEdBQUcsQ0FBQyxJQUFxQixFQUFFLEVBQVUsRUFBNkIsRUFBRTtJQUN2RixLQUFLLE1BQU0sS0FBSyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxTQUFTO1FBQ1gsQ0FBQztRQUNELElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxJQUFLLEtBQUssQ0FBQyxLQUF5QixDQUFDLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztZQUNuRSxPQUFPLEtBQUssQ0FBQztRQUNmLENBQUM7UUFDRCxNQUFNLE1BQU0sR0FBRyxlQUFlLENBQUUsS0FBSyxDQUFDLEtBQXdDLENBQUMsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQzdGLElBQUksTUFBTSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3BCLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFFRjs7Ozs7R0FLRztBQUNILE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLGFBQTJDLEVBQUUsUUFBZ0IsRUFBbUIsRUFBRTs7SUFDaEgsTUFBTSxLQUFLLEdBQUcsMEJBQTBCLENBQUMsYUFBYSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ2xFLElBQUksS0FBSyxLQUFLLElBQUksRUFBRSxDQUFDO1FBQ25CLE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQztJQUNELE9BQU8sTUFBQyxLQUFLLENBQUMsS0FBd0MsQ0FBQyxRQUFRLG1DQUFJLElBQUksQ0FBQztBQUMxRSxDQUFDLENBQUM7QUFFRiwyRkFBMkY7QUFDM0YsTUFBTSxDQUFDLE1BQU0sMEJBQTBCLEdBQUcsQ0FDeEMsYUFBMkMsRUFDM0MsRUFBVSxFQUNpQixFQUFFO0lBQzdCLEtBQUssTUFBTSxHQUFHLElBQUksYUFBYSxFQUFFLENBQUM7UUFDaEMsTUFBTSxLQUFLLEdBQUcsZUFBZSxDQUFDLEdBQUcsQ0FBQyxRQUFRLEVBQUUsRUFBRSxDQUFDLENBQUM7UUFDaEQsSUFBSSxLQUFLLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDbkIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO0lBQ0gsQ0FBQztJQUNELE9BQU8sSUFBSSxDQUFDO0FBQ2QsQ0FBQyxDQUFDO0FBRUYsdUZBQXVGO0FBQ3ZGLE1BQU0sQ0FBQyxNQUFNLGVBQWUsR0FBRyxDQUFDLFFBQXlCLEVBQVcsRUFBRSxDQUFDLGdCQUFnQixDQUFDLFFBQVEsQ0FBQyxLQUFLLElBQUksQ0FBQztBQUUzRyxNQUFNLGdCQUFnQixHQUFHLENBQUMsSUFBcUIsRUFBNkIsRUFBRTtJQUM1RSxLQUFLLE1BQU0sS0FBSyxJQUFJLEtBQUssQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7UUFDakQsSUFBSSxDQUFDLEtBQUssQ0FBQyxjQUFjLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNqQyxTQUFTO1FBQ1gsQ0FBQztRQUNELElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxFQUFFLENBQUM7WUFDckIsT0FBTyxLQUFLLENBQUM7UUFDZixDQUFDO1FBQ0QsTUFBTSxNQUFNLEdBQUcsZ0JBQWdCLENBQUUsS0FBSyxDQUFDLEtBQXdDLENBQUMsUUFBUSxDQUFDLENBQUM7UUFDMUYsSUFBSSxNQUFNLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDcEIsT0FBTyxNQUFNLENBQUM7UUFDaEIsQ0FBQztJQUNILENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUMsQ0FBQyJ9