@aivenio/aquarium 6.1.1 → 6.2.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 (33) hide show
  1. package/dist/_variables.scss +1 -1
  2. package/dist/atoms.cjs +8 -6
  3. package/dist/atoms.mjs +8 -6
  4. package/dist/charts.cjs +3 -3
  5. package/dist/charts.mjs +3 -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/molecules/CommandPalette/CommandPalette.d.ts +12 -4
  10. package/dist/src/molecules/CommandPalette/CommandPalette.js +17 -5
  11. package/dist/src/molecules/CommandPalette/CommandPaletteProvider.js +86 -22
  12. package/dist/src/molecules/CommandPalette/findSubCommands.d.ts +13 -0
  13. package/dist/src/molecules/CommandPalette/findSubCommands.js +65 -0
  14. package/dist/src/molecules/CommandPalette/types.d.ts +31 -1
  15. package/dist/src/molecules/CommandPalette/types.js +10 -1
  16. package/dist/src/molecules/Popover/Popover.d.ts +3 -0
  17. package/dist/src/molecules/Popover/Popover.js +1 -1
  18. package/dist/src/molecules/Section/Section.d.ts +9 -0
  19. package/dist/src/molecules/Section/Section.js +13 -6
  20. package/dist/src/molecules/SegmentedControl/SegmentedControl.js +3 -3
  21. package/dist/src/molecules/Table/Table.d.ts +3 -0
  22. package/dist/src/molecules/Table/Table.js +4 -1
  23. package/dist/src/molecules/TagLabel/TagLabel.d.ts +1 -1
  24. package/dist/src/molecules/TagLabel/TagLabel.js +1 -1
  25. package/dist/src/molecules/Typography/Typography.d.ts +3 -0
  26. package/dist/src/molecules/Typography/Typography.js +1 -1
  27. package/dist/src/tokens/tokens.json +3 -3
  28. package/dist/styles.css +40 -28
  29. package/dist/system.cjs +820 -671
  30. package/dist/system.mjs +773 -622
  31. package/dist/tokens.json +3 -3
  32. package/dist/tsconfig.module.tsbuildinfo +1 -1
  33. package/package.json +1 -1
@@ -181,7 +181,7 @@ $background-color-backdrop: rgb(from $colors-grey-100 r g b / 70%);
181
181
  $background-color-muted: $colors-grey-5;
182
182
  $background-color-medium: $colors-grey-10;
183
183
  $background-color-intense: $colors-grey-30;
184
- $background-color-primary-default: $colors-primary-0;
184
+ $background-color-primary-default: $colors-primary-5;
185
185
  $background-color-primary-graphic: $colors-primary-30;
186
186
  $background-color-primary-inverse: $colors-primary-60;
187
187
  $background-color-primary-active: $colors-primary-0;
package/dist/atoms.cjs CHANGED
@@ -738,8 +738,8 @@ var tokens_default = {
738
738
  medium: "rgba(235,235,235,1)",
739
739
  intense: "rgba(181,181,183,1)",
740
740
  primary: {
741
- muted: "rgba(240,254,254,1)",
742
- default: "rgba(240,254,254,1)",
741
+ muted: "rgba(217,249,248,1)",
742
+ default: "rgba(217,249,248,1)",
743
743
  graphic: "rgba(46,208,205,1)",
744
744
  intense: "rgba(0,128,124,1)",
745
745
  inverse: "rgba(0,128,124,1)",
@@ -783,7 +783,7 @@ var tokens_default = {
783
783
  inverse: "rgba(198,42,42,1)"
784
784
  },
785
785
  status: {
786
- announcement: "rgba(240,254,254,1)",
786
+ announcement: "rgba(217,249,248,1)",
787
787
  info: "rgba(233,249,253,1)",
788
788
  warning: "rgba(255,249,230,1)",
789
789
  danger: "rgba(255,241,241,1)",
@@ -3178,7 +3178,7 @@ var choiceChipClasses = (0, import_tailwind_variants10.tv)({
3178
3178
  label: "Aquarium-ChoiceChip inline-flex cursor-pointer",
3179
3179
  input: "peer appearance-none",
3180
3180
  chip: [
3181
- "inline-flex items-center border rounded-full transition whitespace-nowrap hover:bg-primary-hover",
3181
+ "inline-flex items-center border rounded-full transition whitespace-nowrap hover:bg-primary-active",
3182
3182
  "peer-focus-visible:ring-2 peer-focus-visible:ring-info-default peer-focus-visible:ring-offset-1",
3183
3183
  "peer-disabled:cursor-not-allowed peer-disabled:text-inactive peer-disabled:bg-muted peer-disabled:hover:bg-muted"
3184
3184
  ]
@@ -3190,7 +3190,7 @@ var choiceChipClasses = (0, import_tailwind_variants10.tv)({
3190
3190
  },
3191
3191
  dense: {
3192
3192
  true: { chip: "typography-small py-2 px-3 gap-x-2" },
3193
- false: { chip: "typography-small py-3 px-5 gap-x-3" }
3193
+ false: { chip: "typography-default py-3 px-5 gap-x-3" }
3194
3194
  }
3195
3195
  },
3196
3196
  defaultVariants: {
@@ -3240,7 +3240,9 @@ var commandPaletteStyles = (0, import_tailwind_variants11.tv)({
3240
3240
  searchContainer: "flex items-center gap-x-3 p-5 border-b border-muted",
3241
3241
  searchInput: "outline-none grow bg-transparent [&::-webkit-search-cancel-button]:hidden",
3242
3242
  itemIcon: "text-muted group-data-[focused]:text-default",
3243
- emptyState: "p-6 text-center text-muted typography-default"
3243
+ emptyState: "p-6 text-center text-muted typography-default",
3244
+ breadcrumbHeader: "typography-small font-semibold",
3245
+ breadcrumbBackButton: "text-muted"
3244
3246
  }
3245
3247
  });
3246
3248
  var EmptyState = ({ className, children, ...rest }) => {
package/dist/atoms.mjs CHANGED
@@ -646,8 +646,8 @@ var tokens_default = {
646
646
  medium: "rgba(235,235,235,1)",
647
647
  intense: "rgba(181,181,183,1)",
648
648
  primary: {
649
- muted: "rgba(240,254,254,1)",
650
- default: "rgba(240,254,254,1)",
649
+ muted: "rgba(217,249,248,1)",
650
+ default: "rgba(217,249,248,1)",
651
651
  graphic: "rgba(46,208,205,1)",
652
652
  intense: "rgba(0,128,124,1)",
653
653
  inverse: "rgba(0,128,124,1)",
@@ -691,7 +691,7 @@ var tokens_default = {
691
691
  inverse: "rgba(198,42,42,1)"
692
692
  },
693
693
  status: {
694
- announcement: "rgba(240,254,254,1)",
694
+ announcement: "rgba(217,249,248,1)",
695
695
  info: "rgba(233,249,253,1)",
696
696
  warning: "rgba(255,249,230,1)",
697
697
  danger: "rgba(255,241,241,1)",
@@ -3086,7 +3086,7 @@ var choiceChipClasses = tv10({
3086
3086
  label: "Aquarium-ChoiceChip inline-flex cursor-pointer",
3087
3087
  input: "peer appearance-none",
3088
3088
  chip: [
3089
- "inline-flex items-center border rounded-full transition whitespace-nowrap hover:bg-primary-hover",
3089
+ "inline-flex items-center border rounded-full transition whitespace-nowrap hover:bg-primary-active",
3090
3090
  "peer-focus-visible:ring-2 peer-focus-visible:ring-info-default peer-focus-visible:ring-offset-1",
3091
3091
  "peer-disabled:cursor-not-allowed peer-disabled:text-inactive peer-disabled:bg-muted peer-disabled:hover:bg-muted"
3092
3092
  ]
@@ -3098,7 +3098,7 @@ var choiceChipClasses = tv10({
3098
3098
  },
3099
3099
  dense: {
3100
3100
  true: { chip: "typography-small py-2 px-3 gap-x-2" },
3101
- false: { chip: "typography-small py-3 px-5 gap-x-3" }
3101
+ false: { chip: "typography-default py-3 px-5 gap-x-3" }
3102
3102
  }
3103
3103
  },
3104
3104
  defaultVariants: {
@@ -3148,7 +3148,9 @@ var commandPaletteStyles = tv11({
3148
3148
  searchContainer: "flex items-center gap-x-3 p-5 border-b border-muted",
3149
3149
  searchInput: "outline-none grow bg-transparent [&::-webkit-search-cancel-button]:hidden",
3150
3150
  itemIcon: "text-muted group-data-[focused]:text-default",
3151
- emptyState: "p-6 text-center text-muted typography-default"
3151
+ emptyState: "p-6 text-center text-muted typography-default",
3152
+ breadcrumbHeader: "typography-small font-semibold",
3153
+ breadcrumbBackButton: "text-muted"
3152
3154
  }
3153
3155
  });
3154
3156
  var EmptyState = ({ className, children, ...rest }) => {
package/dist/charts.cjs CHANGED
@@ -219,8 +219,8 @@ var tokens_default = {
219
219
  medium: "rgba(235,235,235,1)",
220
220
  intense: "rgba(181,181,183,1)",
221
221
  primary: {
222
- muted: "rgba(240,254,254,1)",
223
- default: "rgba(240,254,254,1)",
222
+ muted: "rgba(217,249,248,1)",
223
+ default: "rgba(217,249,248,1)",
224
224
  graphic: "rgba(46,208,205,1)",
225
225
  intense: "rgba(0,128,124,1)",
226
226
  inverse: "rgba(0,128,124,1)",
@@ -264,7 +264,7 @@ var tokens_default = {
264
264
  inverse: "rgba(198,42,42,1)"
265
265
  },
266
266
  status: {
267
- announcement: "rgba(240,254,254,1)",
267
+ announcement: "rgba(217,249,248,1)",
268
268
  info: "rgba(233,249,253,1)",
269
269
  warning: "rgba(255,249,230,1)",
270
270
  danger: "rgba(255,241,241,1)",
package/dist/charts.mjs CHANGED
@@ -79,8 +79,8 @@ var tokens_default = {
79
79
  medium: "rgba(235,235,235,1)",
80
80
  intense: "rgba(181,181,183,1)",
81
81
  primary: {
82
- muted: "rgba(240,254,254,1)",
83
- default: "rgba(240,254,254,1)",
82
+ muted: "rgba(217,249,248,1)",
83
+ default: "rgba(217,249,248,1)",
84
84
  graphic: "rgba(46,208,205,1)",
85
85
  intense: "rgba(0,128,124,1)",
86
86
  inverse: "rgba(0,128,124,1)",
@@ -124,7 +124,7 @@ var tokens_default = {
124
124
  inverse: "rgba(198,42,42,1)"
125
125
  },
126
126
  status: {
127
- announcement: "rgba(240,254,254,1)",
127
+ announcement: "rgba(217,249,248,1)",
128
128
  info: "rgba(233,249,253,1)",
129
129
  warning: "rgba(255,249,230,1)",
130
130
  danger: "rgba(255,241,241,1)",
@@ -17,7 +17,7 @@ const choiceChipClasses = tv({
17
17
  label: 'Aquarium-ChoiceChip inline-flex cursor-pointer',
18
18
  input: 'peer appearance-none',
19
19
  chip: [
20
- 'inline-flex items-center border rounded-full transition whitespace-nowrap hover:bg-primary-hover',
20
+ 'inline-flex items-center border rounded-full transition whitespace-nowrap hover:bg-primary-active',
21
21
  'peer-focus-visible:ring-2 peer-focus-visible:ring-info-default peer-focus-visible:ring-offset-1',
22
22
  'peer-disabled:cursor-not-allowed peer-disabled:text-inactive peer-disabled:bg-muted peer-disabled:hover:bg-muted',
23
23
  ],
@@ -29,7 +29,7 @@ const choiceChipClasses = tv({
29
29
  },
30
30
  dense: {
31
31
  true: { chip: 'typography-small py-2 px-3 gap-x-2' },
32
- false: { chip: 'typography-small py-3 px-5 gap-x-3' },
32
+ false: { chip: 'typography-default py-3 px-5 gap-x-3' },
33
33
  },
34
34
  },
35
35
  defaultVariants: {
@@ -48,4 +48,4 @@ export const ChoiceChip = (_a) => {
48
48
  React.createElement("input", { type: selectionMode, name: name, value: value, className: input(), checked: selected, onChange: handleChange, disabled: disabled }),
49
49
  React.createElement("span", { className: chip() }, children)));
50
50
  };
51
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hvaWNlQ2hpcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hdG9tcy9DaG9pY2VDaGlwL0Nob2ljZUNoaXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUMzQixLQUFLLEVBQUU7UUFDTCxLQUFLLEVBQUUsZ0RBQWdEO1FBQ3ZELEtBQUssRUFBRSxzQkFBc0I7UUFDN0IsSUFBSSxFQUFFO1lBQ0osa0dBQWtHO1lBQ2xHLGlHQUFpRztZQUNqRyxrSEFBa0g7U0FDbkg7S0FDRjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxpRUFBaUUsRUFBRTtZQUNqRixLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsbUNBQW1DLEVBQUU7U0FDckQ7UUFDRCxLQUFLLEVBQUU7WUFDTCxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsb0NBQW9DLEVBQUU7WUFDcEQsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLG9DQUFvQyxFQUFFO1NBQ3REO0tBQ0Y7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsS0FBSztRQUNmLEtBQUssRUFBRSxLQUFLO0tBQ2I7Q0FDRixDQUFDLENBQUM7QUEwRUgsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUE4QixDQUFDLEVBWXJELEVBQUUsRUFBRTtRQVppRCxFQUNwRCxRQUFRLEVBQ1IsS0FBSyxFQUNMLGFBQWEsR0FBRyxVQUFVLEVBQzFCLGNBQWMsR0FBRyxLQUFLLEVBQ3RCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsSUFBSSxFQUNKLEtBQUssRUFDTCxRQUFRLEVBQ1IsWUFBWSxFQUFFLFNBQVMsT0FFeEIsRUFESSxJQUFJLGNBWDZDLDBIQVlyRCxDQURRO0lBRVAsTUFBTSxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3RGLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLGlCQUFpQixDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFFdEUsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFO1FBQ3hCLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3pCLENBQUMsQ0FBQztJQUVGLE9BQU8sQ0FDTCw2Q0FBTyxTQUFTLEVBQUUsS0FBSyxFQUFFLGdCQUFjLFNBQVMsSUFBTSxJQUFJO1FBQ3hELCtCQUNFLElBQUksRUFBRSxhQUFhLEVBQ25CLElBQUksRUFBRSxJQUFJLEVBQ1YsS0FBSyxFQUFFLEtBQUssRUFDWixTQUFTLEVBQUUsS0FBSyxFQUFFLEVBQ2xCLE9BQU8sRUFBRSxRQUFRLEVBQ2pCLFFBQVEsRUFBRSxZQUFZLEVBQ3RCLFFBQVEsRUFBRSxRQUFRLEdBQ2xCO1FBQ0YsOEJBQU0sU0FBUyxFQUFFLElBQUksRUFBRSxJQUFHLFFBQVEsQ0FBUSxDQUNwQyxDQUNULENBQUM7QUFDSixDQUFDLENBQUMifQ==
51
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ2hvaWNlQ2hpcC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9hdG9tcy9DaG9pY2VDaGlwL0Nob2ljZUNoaXAudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxrQkFBa0IsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQzFELE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxNQUFNLGlCQUFpQixHQUFHLEVBQUUsQ0FBQztJQUMzQixLQUFLLEVBQUU7UUFDTCxLQUFLLEVBQUUsZ0RBQWdEO1FBQ3ZELEtBQUssRUFBRSxzQkFBc0I7UUFDN0IsSUFBSSxFQUFFO1lBQ0osbUdBQW1HO1lBQ25HLGlHQUFpRztZQUNqRyxrSEFBa0g7U0FDbkg7S0FDRjtJQUNELFFBQVEsRUFBRTtRQUNSLFFBQVEsRUFBRTtZQUNSLElBQUksRUFBRSxFQUFFLElBQUksRUFBRSxpRUFBaUUsRUFBRTtZQUNqRixLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsbUNBQW1DLEVBQUU7U0FDckQ7UUFDRCxLQUFLLEVBQUU7WUFDTCxJQUFJLEVBQUUsRUFBRSxJQUFJLEVBQUUsb0NBQW9DLEVBQUU7WUFDcEQsS0FBSyxFQUFFLEVBQUUsSUFBSSxFQUFFLHNDQUFzQyxFQUFFO1NBQ3hEO0tBQ0Y7SUFDRCxlQUFlLEVBQUU7UUFDZixRQUFRLEVBQUUsS0FBSztRQUNmLEtBQUssRUFBRSxLQUFLO0tBQ2I7Q0FDRixDQUFDLENBQUM7QUEwRUgsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUE4QixDQUFDLEVBWXJELEVBQUUsRUFBRTtRQVppRCxFQUNwRCxRQUFRLEVBQ1IsS0FBSyxFQUNMLGFBQWEsR0FBRyxVQUFVLEVBQzFCLGNBQWMsR0FBRyxLQUFLLEVBQ3RCLE9BQU8sRUFDUCxRQUFRLEVBQ1IsSUFBSSxFQUNKLEtBQUssRUFDTCxRQUFRLEVBQ1IsWUFBWSxFQUFFLFNBQVMsT0FFeEIsRUFESSxJQUFJLGNBWDZDLDBIQVlyRCxDQURRO0lBRVAsTUFBTSxDQUFDLFFBQVEsRUFBRSxXQUFXLENBQUMsR0FBRyxrQkFBa0IsQ0FBQyxPQUFPLEVBQUUsY0FBYyxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3RGLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxHQUFHLGlCQUFpQixDQUFDLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUM7SUFFdEUsTUFBTSxZQUFZLEdBQUcsR0FBRyxFQUFFO1FBQ3hCLFdBQVcsQ0FBQyxDQUFDLFFBQVEsQ0FBQyxDQUFDO0lBQ3pCLENBQUMsQ0FBQztJQUVGLE9BQU8sQ0FDTCw2Q0FBTyxTQUFTLEVBQUUsS0FBSyxFQUFFLGdCQUFjLFNBQVMsSUFBTSxJQUFJO1FBQ3hELCtCQUNFLElBQUksRUFBRSxhQUFhLEVBQ25CLElBQUksRUFBRSxJQUFJLEVBQ1YsS0FBSyxFQUFFLEtBQUssRUFDWixTQUFTLEVBQUUsS0FBSyxFQUFFLEVBQ2xCLE9BQU8sRUFBRSxRQUFRLEVBQ2pCLFFBQVEsRUFBRSxZQUFZLEVBQ3RCLFFBQVEsRUFBRSxRQUFRLEdBQ2xCO1FBQ0YsOEJBQU0sU0FBUyxFQUFFLElBQUksRUFBRSxJQUFHLFFBQVEsQ0FBUSxDQUNwQyxDQUNULENBQUM7QUFDSixDQUFDLENBQUMifQ==
@@ -8,6 +8,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
8
8
  searchContainer?: import("tailwind-merge").ClassNameValue;
9
9
  searchInput?: import("tailwind-merge").ClassNameValue;
10
10
  itemIcon?: import("tailwind-merge").ClassNameValue;
11
+ breadcrumbHeader?: import("tailwind-merge").ClassNameValue;
12
+ breadcrumbBackButton?: import("tailwind-merge").ClassNameValue;
11
13
  };
12
14
  };
13
15
  } | {
@@ -19,6 +21,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
19
21
  searchContainer?: import("tailwind-merge").ClassNameValue;
20
22
  searchInput?: import("tailwind-merge").ClassNameValue;
21
23
  itemIcon?: import("tailwind-merge").ClassNameValue;
24
+ breadcrumbHeader?: import("tailwind-merge").ClassNameValue;
25
+ breadcrumbBackButton?: import("tailwind-merge").ClassNameValue;
22
26
  };
23
27
  };
24
28
  } | {}, {
@@ -28,6 +32,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
28
32
  searchInput: string;
29
33
  itemIcon: string;
30
34
  emptyState: string;
35
+ breadcrumbHeader: string;
36
+ breadcrumbBackButton: string;
31
37
  }, undefined, import("tailwind-variants/dist/config").TVConfig<unknown, {
32
38
  [key: string]: {
33
39
  [key: string]: import("tailwind-merge").ClassNameValue | {
@@ -37,6 +43,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
37
43
  searchContainer?: import("tailwind-merge").ClassNameValue;
38
44
  searchInput?: import("tailwind-merge").ClassNameValue;
39
45
  itemIcon?: import("tailwind-merge").ClassNameValue;
46
+ breadcrumbHeader?: import("tailwind-merge").ClassNameValue;
47
+ breadcrumbBackButton?: import("tailwind-merge").ClassNameValue;
40
48
  };
41
49
  };
42
50
  } | {}>, {
@@ -48,6 +56,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
48
56
  searchContainer?: import("tailwind-merge").ClassNameValue;
49
57
  searchInput?: import("tailwind-merge").ClassNameValue;
50
58
  itemIcon?: import("tailwind-merge").ClassNameValue;
59
+ breadcrumbHeader?: import("tailwind-merge").ClassNameValue;
60
+ breadcrumbBackButton?: import("tailwind-merge").ClassNameValue;
51
61
  };
52
62
  };
53
63
  } | {}, {
@@ -57,6 +67,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
57
67
  searchInput: string;
58
68
  itemIcon: string;
59
69
  emptyState: string;
70
+ breadcrumbHeader: string;
71
+ breadcrumbBackButton: string;
60
72
  }, import("tailwind-variants").TVReturnType<unknown, {
61
73
  modal: string;
62
74
  dialog: string;
@@ -64,6 +76,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
64
76
  searchInput: string;
65
77
  itemIcon: string;
66
78
  emptyState: string;
79
+ breadcrumbHeader: string;
80
+ breadcrumbBackButton: string;
67
81
  }, undefined, import("tailwind-variants/dist/config").TVConfig<unknown, {
68
82
  [key: string]: {
69
83
  [key: string]: import("tailwind-merge").ClassNameValue | {
@@ -73,6 +87,8 @@ export declare const commandPaletteStyles: import("tailwind-variants").TVReturnT
73
87
  searchContainer?: import("tailwind-merge").ClassNameValue;
74
88
  searchInput?: import("tailwind-merge").ClassNameValue;
75
89
  itemIcon?: import("tailwind-merge").ClassNameValue;
90
+ breadcrumbHeader?: import("tailwind-merge").ClassNameValue;
91
+ breadcrumbBackButton?: import("tailwind-merge").ClassNameValue;
76
92
  };
77
93
  };
78
94
  } | {}>, unknown, unknown, undefined>>;
@@ -20,6 +20,8 @@ export const commandPaletteStyles = tv({
20
20
  searchInput: 'outline-none grow bg-transparent [&::-webkit-search-cancel-button]:hidden',
21
21
  itemIcon: 'text-muted group-data-[focused]:text-default',
22
22
  emptyState: 'p-6 text-center text-muted typography-default',
23
+ breadcrumbHeader: 'typography-small font-semibold',
24
+ breadcrumbBackButton: 'text-muted',
23
25
  },
24
26
  });
25
27
  const EmptyState = (_a) => {
@@ -30,4 +32,4 @@ const EmptyState = (_a) => {
30
32
  export const CommandPalette = {
31
33
  EmptyState,
32
34
  };
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvQ29tbWFuZFBhbGV0dGUvQ29tbWFuZFBhbGV0dGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxlQUFlO0FBRWYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0lBQ3JDLEtBQUssRUFBRTtRQUNMLEtBQUssRUFBRSwyQkFBMkI7UUFDbEMsTUFBTSxFQUFFLDhEQUE4RDtRQUN0RSxlQUFlLEVBQUUscURBQXFEO1FBQ3RFLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsUUFBUSxFQUFFLDhDQUE4QztRQUN4RCxVQUFVLEVBQUUsK0NBQStDO0tBQzVEO0NBQ0YsQ0FBQyxDQUFDO0FBTUgsTUFBTSxVQUFVLEdBQXVCLENBQUMsRUFBZ0MsRUFBRSxFQUFFO1FBQXBDLEVBQUUsU0FBUyxFQUFFLFFBQVEsT0FBVyxFQUFOLElBQUksY0FBOUIseUJBQWdDLENBQUY7SUFDcEUsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLENBQUM7SUFDOUMsT0FBTyxDQUNMLDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsS0FDaEQsUUFBUSxJQUFJLG9CQUFvQixDQUM3QixDQUNQLENBQUM7QUFDSixDQUFDLENBQUM7QUFRRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQWdDO0lBQ3pELFVBQVU7Q0FDWCxDQUFDIn0=
35
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvYXRvbXMvQ29tbWFuZFBhbGV0dGUvQ29tbWFuZFBhbGV0dGUudHN4Il0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsT0FBTyxLQUFLLE1BQU0sT0FBTyxDQUFDO0FBQzFCLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUV2QyxlQUFlO0FBRWYsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsRUFBRSxDQUFDO0lBQ3JDLEtBQUssRUFBRTtRQUNMLEtBQUssRUFBRSwyQkFBMkI7UUFDbEMsTUFBTSxFQUFFLDhEQUE4RDtRQUN0RSxlQUFlLEVBQUUscURBQXFEO1FBQ3RFLFdBQVcsRUFBRSwyRUFBMkU7UUFDeEYsUUFBUSxFQUFFLDhDQUE4QztRQUN4RCxVQUFVLEVBQUUsK0NBQStDO1FBQzNELGdCQUFnQixFQUFFLGdDQUFnQztRQUNsRCxvQkFBb0IsRUFBRSxZQUFZO0tBQ25DO0NBQ0YsQ0FBQyxDQUFDO0FBTUgsTUFBTSxVQUFVLEdBQXVCLENBQUMsRUFBZ0MsRUFBRSxFQUFFO1FBQXBDLEVBQUUsU0FBUyxFQUFFLFFBQVEsT0FBVyxFQUFOLElBQUksY0FBOUIseUJBQWdDLENBQUY7SUFDcEUsTUFBTSxFQUFFLFVBQVUsRUFBRSxHQUFHLG9CQUFvQixFQUFFLENBQUM7SUFDOUMsT0FBTyxDQUNMLDZDQUFTLElBQUksSUFBRSxTQUFTLEVBQUUsVUFBVSxDQUFDLEVBQUUsU0FBUyxFQUFFLENBQUMsS0FDaEQsUUFBUSxJQUFJLG9CQUFvQixDQUM3QixDQUNQLENBQUM7QUFDSixDQUFDLENBQUM7QUFRRixNQUFNLENBQUMsTUFBTSxjQUFjLEdBQWdDO0lBQ3pELFVBQVU7Q0FDWCxDQUFDIn0=
@@ -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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiQ29tbWFuZFBhbGV0dGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvbW9sZWN1bGVzL0NvbW1hbmRQYWxldHRlL0NvbW1hbmRQYWxldHRlLnRzeCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7OztBQUFBLE9BQU8sS0FBSyxFQUFFLEVBQUUsU0FBUyxFQUFFLE1BQU0sT0FBTyxDQUFDO0FBQ3pDLE9BQU8sRUFDTCxVQUFVLElBQUksY0FBYyxFQUM1QixrQkFBa0IsRUFDbEIsTUFBTSxJQUFJLFVBQVUsRUFDcEIsUUFBUSxJQUFJLFlBQVksRUFFeEIsV0FBVyxJQUFJLGVBQWUsR0FFL0IsTUFBTSx1QkFBdUIsQ0FBQztBQUMvQixPQUFPLEVBQUUsS0FBSyxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFFMUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHlCQUF5QixDQUFDO0FBRXJELE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLHlDQUF5QyxDQUFDO0FBQy9FLE9BQU8sRUFBRSx1QkFBdUIsRUFBRSxzQkFBc0IsRUFBRSxNQUFNLHFDQUFxQyxDQUFDO0FBRXRHLE9BQU8sWUFBWSxNQUFNLHdCQUF3QixDQUFDO0FBRWxELE9BQU8sRUFDTCxzQkFBc0IsRUFHdEIsaUJBQWlCLEVBQ2pCLHNCQUFzQixFQUN0Qiw0QkFBNEIsR0FDN0IsTUFBTSwwQkFBMEIsQ0FBQztBQUNsQyxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sbUJBQW1CLENBQUM7QUFDcEQsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzlDLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLGtCQUFrQixFQUFFLE1BQU0sU0FBUyxDQUFDO0FBVTNFLE1BQU0sUUFBUSxHQUE0QixDQUFDLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTtJQUN6RCxNQUFNLEVBQUUsR0FBRyxLQUFLLEVBQUUsQ0FBQztJQUNuQixNQUFNLENBQUMsRUFBRSxRQUFRLENBQUMsR0FBRyw0QkFBNEIsRUFBRSxDQUFDO0lBRXBELFNBQVMsQ0FBQyxHQUFHLEVBQUU7UUFDYixRQUFRLENBQUMsRUFBRSxJQUFJLEVBQUUsV0FBVyxDQUFDLFFBQVEsRUFBRSxZQUFZLEVBQUUsRUFBRSxFQUFFLEVBQUUsUUFBUSxFQUFFLEVBQUUsQ0FBQyxDQUFDO1FBQ3pFLE9BQU8sR0FBRyxFQUFFO1lBQ1YsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxVQUFVLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQztRQUNqRCxDQUFDLENBQUM7UUFDRixvRUFBb0U7UUFDcEUsMkNBQTJDO1FBQzNDLHVEQUF1RDtJQUN6RCxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUM7SUFFUCxTQUFTLENBQUMsR0FBRyxFQUFFO1FBQ2IsUUFBUSxDQUFDLEVBQUUsSUFBSSxFQUFFLFdBQVcsQ0FBQyxNQUFNLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxFQUFFLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN6RSxDQUFDLEVBQUUsQ0FBQyxRQUFRLEVBQUUsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFFN0IsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDLENBQUM7QUFFRixRQUFRLENBQUMsV0FBVyxHQUFHLHlCQUF5QixDQUFDO0FBU2pELE1BQU0sT0FBTyxHQUFHLENBQW1CLEVBQXFELEVBQUUsRUFBRTtRQUF6RCxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsUUFBUSxPQUE2QixFQUF4QixLQUFLLGNBQWxDLDhCQUFvQyxDQUFGO0lBQ25FLE1BQU0sV0FBVyxHQUFHLHVCQUF1QixFQUFFLENBQUM7SUFDOUMsTUFBTSxLQUFLLEdBQUcsc0JBQXNCLEVBQUUsQ0FBQztJQUV2QyxNQUFNLFdBQVcsR0FBRyxDQUFDLE9BQXdCLEVBQUUsRUFBRSxDQUFDLENBQ2hELG9CQUFDLGVBQWUsa0JBQUMsU0FBUyxFQUFFLFdBQVcsQ0FBQyxJQUFJLENBQUMsRUFBRSxTQUFTLEVBQUUsaUNBQWlDLEVBQUUsQ0FBQyxJQUFNLEtBQUs7UUFDdEcsS0FBSyxJQUFJLG9CQUFDLFVBQVUsSUFBQyxTQUFTLEVBQUUsV0FBVyxDQUFDLEtBQUssRUFBRSxJQUFHLEtBQUssQ0FBYztRQUN6RSxPQUFPLENBQ1EsQ0FDbkIsQ0FBQztJQUVGLGtHQUFrRztJQUNsRyxJQUFJLEtBQUssSUFBSSxPQUFPLFFBQVEsS0FBSyxVQUFVLEVBQUUsQ0FBQztRQUM1QyxPQUFPLFdBQVcsQ0FDaEIsS0FBSyxDQUFDLENBQUMsQ0FBQyxvQkFBQyxjQUFjLElBQUMsS0FBSyxFQUFFLEtBQUssSUFBRyxRQUFRLENBQWtCLENBQUMsQ0FBQyxDQUFDLG9CQUFDLGNBQWMsUUFBRSxRQUFRLENBQWtCLENBQ2hILENBQUM7SUFDSixDQUFDO0lBRUQsSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBQ1gsT0FBTyxXQUFXLENBQUMsb0JBQUMsY0FBYyxRQUFFLFFBQVEsQ0FBa0IsQ0FBQyxDQUFDO0lBQ2xFLENBQUM7SUFFRCxNQUFNLE1BQU0sR0FBRyxZQUFZLENBQUMsUUFBUSxFQUFFLEtBQUssRUFBRSxPQUFPLENBQUMsQ0FBQztJQUN0RCxJQUFJLE1BQU0sQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFLENBQUM7UUFDeEIsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBQ0QsT0FBTyxXQUFXLENBQUMsb0JBQUMsY0FBYyxRQUFFLE1BQU0sQ0FBa0IsQ0FBQyxDQUFDO0FBQ2hFLENBQUMsQ0FBQztBQUVGLE9BQU8sQ0FBQyxXQUFXLEdBQUcsd0JBQXdCLENBQUM7QUFpQy9DLE1BQU0sT0FBTyxHQUFHLENBQUMsRUFTRixFQUFFLEVBQUU7UUFURixFQUNmLFNBQVMsRUFDVCxJQUFJLEVBQ0osS0FBSyxFQUNMLFFBQVEsRUFDUixRQUFRLEVBQ1IsTUFBTSxFQUFFLFFBQVEsRUFDaEIsY0FBYyxFQUFFLGVBQWUsT0FFbEIsRUFEVixLQUFLLGNBUk8sa0ZBU2hCLENBRFM7SUFFUixNQUFNLE1BQU0sR0FBRyxvQkFBb0IsRUFBRSxDQUFDO0lBQ3RDLG9GQUFvRjtJQUNwRix1RkFBdUY7SUFDdkYsZ0ZBQWdGO0lBQ2hGLE1BQU0sUUFBUSxHQUFHLE9BQU8sS0FBSyxDQUFDLFFBQVEsS0FBSyxVQUFVLElBQUksZUFBZSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztJQUN6RixNQUFNLFNBQVMsR0FBRyxLQUFLLENBQUMsU0FBUyxJQUFJLEtBQUssQ0FBQztJQUMzQyxpRkFBaUY7SUFDakYsbUZBQW1GO0lBQ25GLE1BQU0saUJBQWlCLEdBQUcsQ0FBQyxTQUFTLEVBQUUsR0FBRyxDQUFDLFFBQVEsYUFBUixRQUFRLGNBQVIsUUFBUSxHQUFJLEVBQUUsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsQ0FBQztJQUNqRyxxRkFBcUY7SUFDckYsdUZBQXVGO0lBQ3ZGLGtGQUFrRjtJQUNsRixNQUFNLEVBQUUsUUFBUSxFQUFFLFNBQVMsRUFBRSxRQUFRLEVBQUUsZ0JBQWdCLEtBQW1CLEtBQUssRUFBbkIsU0FBUyxVQUFLLEtBQUssRUFBekUsd0JBQWlFLENBQVEsQ0FBQztJQUNoRixNQUFNLFNBQVMsR0FBRyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLGlDQUFNLFNBQVMsS0FBRSxRQUFRLEVBQUUsZ0JBQWdCLEdBQUUsQ0FBQztJQUN0RixPQUFPLENBQ0wsb0JBQUMsWUFBWSxrQkFDWCxTQUFTLEVBQUUsQ0FBQyxNQUFNLEVBQUUsRUFBRSxDQUNwQixzQkFBc0IsaUNBQU0sTUFBTSxLQUFFLFNBQVMsRUFBRSxDQUFDLDhCQUE4QixFQUFFLFNBQVMsQ0FBQyxJQUFHLEVBRS9GLFNBQVMsRUFBRSxRQUFRLENBQUMsQ0FBQyxDQUFDLEdBQUcsa0JBQWtCLEdBQUcsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUMsaUJBQWlCLEVBQ3JGLFVBQVUsRUFBRSxRQUFRLElBQ2hCLFNBQVMsR0FFWixrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FDdkU7UUFDRyxJQUFJLElBQUksb0JBQUMsVUFBVSxJQUFDLElBQUksRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLE1BQU0sQ0FBQyxRQUFRLEVBQUUsR0FBSTtRQUNqRSw4QkFBTSxTQUFTLEVBQUMsTUFBTSxJQUFFLEtBQUssSUFBSSxRQUFRLENBQVE7UUFDaEQsUUFBUSxJQUFJLG9CQUFDLFVBQVUsSUFBQyxJQUFJLEVBQUUsWUFBWSxFQUFFLFNBQVMsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLEdBQUksQ0FDNUUsQ0FDSixDQUFDLENBQ1csQ0FDaEIsQ0FBQztBQUNKLENBQUMsQ0FBQztBQUVGLE9BQU8sQ0FBQyxXQUFXLEdBQUcsd0JBQXdCLENBQUM7QUFXL0MsTUFBTSxDQUFDLE1BQU0sY0FBYyxHQUE0QjtJQUNyRCxRQUFRLEVBQUUsc0JBQXNCO0lBQ2hDLFFBQVE7SUFDUixPQUFPO0lBQ1AsT0FBTztDQUNSLENBQUM7QUFFRixPQUFPLEVBQUUsaUJBQWlCLEVBQUUsQ0FBQyJ9
@@ -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;